Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de
  TM - Plant Simulation
  Wieder Mal.. Je nach BE Attribut mit Werker umladen

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
Autor Thema:  Wieder Mal.. Je nach BE Attribut mit Werker umladen (2697 mal gelesen)
Leibchen
Mitglied
Student


Sehen Sie sich das Profil von Leibchen an!   Senden Sie eine Private Message an Leibchen  Schreiben Sie einen Gästebucheintrag für Leibchen

Beiträge: 29
Registriert: 07.02.2014

erstellt am: 13. Feb. 2014 14:21    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


Screenshot.png

 
Hallo ihr Lieben.....

Folgende Situation. Ich habe 6 unterschiedliche BE's die ich durch meine Anlage schleuse.
Ursprünglich wollte ich das Ganze mittels Arbeitsplan machen (was auch eig das Schönste wäre) und habe mich da an der Hilfe entlanggehangelt. Problem dabei war dann aber, dass sich die Teile gebeamt haben und ich auch jede Förderstrecke mit in den Arbeitsplan übernehmen musste.
Gibt es da einen Trick das entsprechen anzupassen?

Da die Teile eben nicht alle über die selben Maschinen laufen werden sie an der Position x vom Werker entsprechend verteilt und bearbeitet. Da ich das mit dem Arbeitsplan nicht hinbekommen habe (siehe oben) habe ich das Bsp von Bangsow genommen und versucht auf meine Anforderungen anzupassen. Müsste dann entsprechend bei jeder Station eine If.. then.. Bedingung für jedes BE machen.

Habe es jetzt fürs erste BE mal probiert und bekomme aber eine Fehlermeldung. Anbei ein Screenshot.

Ich vermute das es für euch eine Kleinigkeit ist.
Ich habe bisher leider nur sehr viel mit VBA programmiert und bin mir mit SimTalk noch mehr als nur unsicher....

Danke euch!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Leibchen
Mitglied
Student


Sehen Sie sich das Profil von Leibchen an!   Senden Sie eine Private Message an Leibchen  Schreiben Sie einen Gästebucheintrag für Leibchen

Beiträge: 29
Registriert: 07.02.2014

erstellt am: 13. Feb. 2014 14:43    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Ich schon wieder 
Ok... das untere mit der If... then... hab ich gelöst... Musste nur das Materialfluss entfernen....

Falls ihr ne Idee zu der Geschichte mit dem Arbeitsplan habt würde mich freuen 

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Bon Simul
Mitglied
Simulant


Sehen Sie sich das Profil von Bon Simul an!   Senden Sie eine Private Message an Bon Simul  Schreiben Sie einen Gästebucheintrag für Bon Simul

Beiträge: 1250
Registriert: 08.08.2011

Plant Simulation 10.1, 11 ff Professional

erstellt am: 13. Feb. 2014 18:24    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Leibchen 10 Unities + Antwort hilfreich

Für den Arbeitsplan könnten Sie eine verschachtelte Tabelle verwenden.

Fügen Sie eine Tabelle in das Netzwerk ein und lassen Sie den Zeilenindex anzeigen. Tragen Sie in den Zeilenindex die Namen der BEs ein.
Formatieren Sie die erste Spalte als Datentyp table.
Formatieren Sie die Subtabelle: erste Spalte object.
Tragen Sie etwas in die Haupttabelle in die Spalte mit dem Datentyp table und drücken Sie dann F2 (Subtabelle öffnet sich). Tragen Sie hier den Arbeitsplan als Abfolge von Maschinen ein.


Legen Sie in allen BEs ein Attribut op (integer, Anfangswert 1) an.

In der Ausgangssteuerung der Maschinen erhöhen Sie die op der Teile um eins und lesen das nächste Ziel aus dem Arbeitsplan:

Code:

@.op:=@.op+1;
@.zielort:=arbeitsplan[1,@.name][1,@.op];

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Leibchen
Mitglied
Student


Sehen Sie sich das Profil von Leibchen an!   Senden Sie eine Private Message an Leibchen  Schreiben Sie einen Gästebucheintrag für Leibchen

Beiträge: 29
Registriert: 07.02.2014

erstellt am: 13. Feb. 2014 18:33    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


Screenshot2.png

 
Hallo Bon Simul,

vielen Dank für die Antwort 
Muss hier an der Stelle auch mal ein Kompliment aussprechen, dass man zu fast jeder Suche einen Beitrag von dir findet 

Ich zeige hier nochmal wie ich es mal gemacht hatte (mit der Hilfe).
Denke das ist ein sehr ähnlicher Ansatz.

Die Ausgangssteuerung dann in allen Stationen einfügen.
Das hat dann aber zu 2 Problemen geführt:
1. Jeder Förderstrecke musste mit in den AP
2. Das Tragen durch Werker ist weggefallen, da sich die Teile einfach gebeamt haben.

Grüße aus Mainz

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Bon Simul
Mitglied
Simulant


Sehen Sie sich das Profil von Bon Simul an!   Senden Sie eine Private Message an Bon Simul  Schreiben Sie einen Gästebucheintrag für Bon Simul

Beiträge: 1250
Registriert: 08.08.2011

Plant Simulation 10.1, 11 ff Professional

erstellt am: 13. Feb. 2014 18:45    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Leibchen 10 Unities + Antwort hilfreich

Sie können das denke ich gut kombinieren mit der Programmierung aus Ihrem ersten Beitrag; einfach nur das Attribut @.zielort auf die nächste Station im Arbeitspan setzen und die OP hochsetzen. In dem Fall ruft @.umlagern den Werker (Ausgangsverhalten Teil wegtragen). Ich würde dann nur die Stationen in den Arbeitsplan aufnehmen, die durch den Werker beschickt werden.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Leibchen
Mitglied
Student


Sehen Sie sich das Profil von Leibchen an!   Senden Sie eine Private Message an Leibchen  Schreiben Sie einen Gästebucheintrag für Leibchen

Beiträge: 29
Registriert: 07.02.2014

erstellt am: 13. Feb. 2014 19:01    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Danke!
Dann hoffe ich mal das ich das so umgesetzt bekomme   

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Leibchen
Mitglied
Student


Sehen Sie sich das Profil von Leibchen an!   Senden Sie eine Private Message an Leibchen  Schreiben Sie einen Gästebucheintrag für Leibchen

Beiträge: 29
Registriert: 07.02.2014

erstellt am: 17. Feb. 2014 12:26    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


Methode.png

 
Hallo,

ich habe es umgesetzt bekommen, habe aber eine Verständnisfrage.
Einfach gesagt... 3 Mal die "selbe Steuerung" mit minimalsten Modifikationen und dabei bekomme ich 3 unterschiedlichste Ergebnisse...

Vlt kann mich jemand aufklären 

Wenn ich mit der Methode als seperates Modul arbeite und Heck aktiviere, bekomme ich die Fehlermeldung "Kein gültiges Ziel", negiere ich die Frage betreffs anhalten der Simulation erreicht das BE sein gewünschtes Ziel.

Aktiviere ich Bug, überspringt das BE eine Station, also wird "Position....." doppelt hochgezählt.

Lege ich das Ganze in einer "self.OnExit" Steuerung ab funktioniert es wunderbar.

In erster Linie bin ich froh das es funktioniert, würde mich aber trotzdem interessieren warum das so ist, falls es nicht zu viel Aufwand ist.

Danke  und eine gute Woche euch allen!!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Bon Simul
Mitglied
Simulant


Sehen Sie sich das Profil von Bon Simul an!   Senden Sie eine Private Message an Bon Simul  Schreiben Sie einen Gästebucheintrag für Bon Simul

Beiträge: 1250
Registriert: 08.08.2011

Plant Simulation 10.1, 11 ff Professional

erstellt am: 17. Feb. 2014 21:54    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Leibchen 10 Unities + Antwort hilfreich

Hecksteuerung: die wird erst aufgerufen, wenn das Teil die Maschine schon verlassen hat. In Ihrem Fall wird dann das Ziel aus dem Tab Ausgangsverhalten ausgelesen. Wenn da nichts vernünftiges steht, kommt es zur Fehlermeldung.

Warum es als externe Methode nicht richtig funktioniert, kann ich Ihnen auch nicht sagen.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Leibchen
Mitglied
Student


Sehen Sie sich das Profil von Leibchen an!   Senden Sie eine Private Message an Leibchen  Schreiben Sie einen Gästebucheintrag für Leibchen

Beiträge: 29
Registriert: 07.02.2014

erstellt am: 20. Feb. 2014 15:13    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


Screenshot.png

 
Ich habe das Gefühl das ich langsam den Verstand verliere.... -.-

Habe festgestellt das ich mich selbst betrogen habe und die Steuerung in nur einer Station eingesetzt hatte. Nachdem ich Sie jetzt überall einsetzen wollte ist es wieder schief gegangen.

Ich habe den Eindruck die Steuerung wird 2Mal ausgeführt.
Die BE's kommen mit Position 2 in die Station. Habe den Haltepunkt gesetzt. Wie man dann sieht wird es auf 3 gesetzt und das richtige Ziel (Pressen) eingetragen. Drücke ich dann auf Einzelschritt zählt es auf 4 hoch und es geht zur übernächsten Station.

Bin ich einfach nur doof, oder werde ich hier auf die Schippe genommen??
Ich dachte eig, dass ich SimTalk langsam aber sicher halbwegs verstanden hätte  

Mein Gefühl hat mich nicht getäuscht. Die Methode wird 2Mal hintereinander ausgeführt.... aber warum ?

[Diese Nachricht wurde von Leibchen am 20. Feb. 2014 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Leibchen
Mitglied
Student


Sehen Sie sich das Profil von Leibchen an!   Senden Sie eine Private Message an Leibchen  Schreiben Sie einen Gästebucheintrag für Leibchen

Beiträge: 29
Registriert: 07.02.2014

erstellt am: 20. Feb. 2014 17:45    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Jetzt benutze ich die Steuerung wie im Screenshot als Hecksteuerung.
In der Konsole kommt die Fehlermeldung "Sie haben kein gültiges Ziel/BE-Ziel für die Trageoperation des BEs MU '.BEs.Flipper_Boden:5' eingetragen." aber geht trotzdem direkt weiter und genau so wie es eig soll....

Das "Problem" konnte ich auch beseitigen indem ich am Arbeitsplatz eine Aufladezeit gesetzt habe.
Ich weiss nicht genau warum, aber es funktioniert   

[Diese Nachricht wurde von Leibchen am 20. Feb. 2014 editiert.]

[Diese Nachricht wurde von Leibchen am 20. Feb. 2014 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Bon Simul
Mitglied
Simulant


Sehen Sie sich das Profil von Bon Simul an!   Senden Sie eine Private Message an Bon Simul  Schreiben Sie einen Gästebucheintrag für Bon Simul

Beiträge: 1250
Registriert: 08.08.2011

Plant Simulation 10.1, 11 ff Professional

erstellt am: 21. Feb. 2014 10:15    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Leibchen 10 Unities + Antwort hilfreich

kleiner Nachtrag zu umlagern:

umlagern wird hier immer zwei mal aufgerufen. Beim ersten mal wird false zurückgegeben (Werker wird gerufen) und beim zweiten Mal (Umlagerung auf den Werker) wird true zurückgegeben.
In Ihrem Fall müssten Sie das Hochzählen der Position im Arbeitsplan abhängig machen vom Rückgabewert der umlagern Methode:

Code:

if @.umlagern=true then
  @.positionImArbeitsplan:=@.positionImArbeitsPlan+1;
end;


Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2025 CAD.de | Impressum | Datenschutz