Autor
|
Thema: EAPuffer (386 mal gelesen)
|
Diosito Mitglied
Beiträge: 17 Registriert: 20.05.2005
|
erstellt am: 08. Jun. 2005 13:28 <-- editieren / zitieren --> Unities abgeben:
Hallo, ich habe mal wieder ein kleines Problem. Ich habe einen Regalgang definiert. Aus diesem Sollen nun Fahrzeuge herausfahren und sich entweder in eine komplett andere Richtung bewegen oder in einen Puffer eintreten und auf ein bestimmtes Ereignis warten (waituntil). Tritt dieses ein, dann soll das wartende Fahrzeug wieder in den Gang zurückkehren, d.h. den Puffer verlassen. Das läuft auch alles soweit ok. Mein Problem tritt auf, wenn bspw. 2 oder mehr Fahrzeuge in den Puffer eintreten und abwarten (es rufen alle die gleiche Methode beim PufferAusgang auf , in der es eine waituntil Anweisung gibt). Ich möchte nun, das bei Eintritt des Ereignisses (waituntil Anweisung), das jeweils letzte Fahrzeug als erstes wieder in den gang eintritt. Deshalb habe ich den Puffer mit Hilfe eines EAPuffers modelliert und als Pufferstrategie Stapel (LIFO-Prinzip) gewählt. Trotzdem tritt nun immer das Fahrzeug als erstes in den Gang ein, dass auch als erstes in den Puffer eingetreten war. Es wäre nett, wenn mal jemand etwas über den EAPuffer und mein spezifisches Problem schreiben könnte
Gruß
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ex-Mitglied
|
erstellt am: 08. Jun. 2005 18:04 <-- editieren / zitieren -->
Hmmm, ich habe mir das mal angeschaut mit dem EA-Puffer.
Fragen hierzu : Wo rufst Du die Waituntil.. Anweisung auf (EIngansgsteuerung/Ausgangssteuerung ?) Wie sperrst/entsperrst Du den Austritt der Be´s im EA-Puffer ? Gruss
------------------ DER SIMULATOR |
Diosito Mitglied
Beiträge: 17 Registriert: 20.05.2005
|
erstellt am: 09. Jun. 2005 12:17 <-- editieren / zitieren --> Unities abgeben:
Hallo Simulator, ich rufe die waituntil Anweisung in der Ausgangssteuerung auf. Ich habe eine boolische Variable im Gang definiert. Diese wird bei einem bestimmten Ereignis umgelegt und dann können die Fahrzeuge im Puffer wieder den Gang betreten ( über den Befhel umlagern). Ich glaube auch, dass ich weiss, wo mein Problem liegt. Ich denke, dass das erste Fahrzeug, das in den Puffer eintritt versucht wieder in den Gang einzutreten und dabei die Ausgangssteueurung aufruft. Hier stopt ihn dann die waituntil-Anweisung. Nun kommt das nächste Fahrzeug in den Puffer und macht das gleiche. Wenn jetzt die Variable, die in der waituntil Anweisung jeweils abgefragt wird, umgelegt wird, d.h. nun ist der Eingang frei, dann springt das Programm natürlich erst in die waituntil Anweisung vom zuerst einegtretenen Fahrzeug, da diese auch als erstes ausgesetzt wurde. Also geht das erste Fahrzeug nun in den Gang ( Befehl umlagern nach waituntil). Erst jetzt kommt das 2. Fahrzeug zum Zuge und geht in den Gang. So ist es also egal, welche Startegie ich im EAPuffer definiere, da in jedem Fall First In First OUT ausgefürht wird. Hast du eine Idee, wie ich das ändern könnte? Gruß Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ex-Mitglied
|
erstellt am: 09. Jun. 2005 12:35 <-- editieren / zitieren -->
Hi, ich glaube, wir denken da schon beide in die selbe Richtung. Gut so! Wenn sich noch kein Stapel gebildet hat, wird natürlich das 1 bzw. einzige Fzg., dass sich im Puffer befindet, gleich weiterbefördert. So was ähnliches hatten wir schonmal mit dem Sortierer. s. http://ww3.cad.de/foren/ubb/Forum262/HTML/000025.shtml Damit die Stapel-Strategie greift, muss auch ein Stapel vorhanden ein. Beim Sortierer haben wir einfach einen Füllgrad festgelegt s.o., sodass sich immer eine Warteschlange/Stapel aufbauen konnte. Du kannst vielleicht mal die Verweilzeit/Bearbeitungszeit versuchsweise erhöhen und so einen Stapel "künstlich" erzeugen. In diesem Fall werde ich noch mal checken, ob es mit dem Füllgrad funktioniert. Gruss ------------------ DER SIMULATOR
[Diese Nachricht wurde von Simulator am 09. Jun. 2005 editiert.] |
Ex-Mitglied
|
erstellt am: 09. Jun. 2005 13:48 <-- editieren / zitieren -->
Hi, versuchs mal so Gruss
------------------ DER SIMULATOR |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
|