Autor
|
Thema: Entladen eines Fahrzeuges mit 9 Nachfolgestation (716 mal gelesen)
|
Zwisto Mitglied
Beiträge: 35 Registriert: 12.10.2012
|
erstellt am: 15. Nov. 2012 14:09 <-- editieren / zitieren --> Unities abgeben:
Hallo Community, habe hier ein Problem bei dem ich einfach keinen Ansatz finde es zu lösen... Es geht darum ein Fahrzeug mit 8 Plätzen zu entladen. Das Problem ist hierbei das es 9 verschiedene Nachfolger gibt. (Alle Puffer mit Kapazität 1) Auf die Puffer folgen Förderbänder mit eine Kapazität von 3. Nun soll geprüft werden ob die Förderbänder voll sind oder ob noch Platz frei ist und je nachdem soll auf den entsprechenden Puffer umgelagert werden. Wenn das Fahrzeug also ankommt und das erste Förderband ist voll (wobei der vorgelagerte Puffer leer ist) soll auf den 2ten Puffer umgelagert werden falls auf dem 2ten Förderband noch Platz ist. Falls nicht soll auf den 3ten Puffer umgelagert werden, falls das 3te Förderband nicht voll ist....etc Ich dachte mir, dass ich alles durch if Schleifen lösen kann aber bekomme langsam das Gefühl das dies nicht zum gewünschten Erfolg führt. Freue mich über jede Idee wie ich das Problem lösen kann. Eventuell brauche ich einen ganz neuen Ansatz.. Grüße Zwisto Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Bon Simul Mitglied Simulant
Beiträge: 1250 Registriert: 08.08.2011 Plant Simulation 10.1, 11 ff Professional
|
erstellt am: 15. Nov. 2012 15:01 <-- editieren / zitieren --> Unities abgeben: Nur für Zwisto
Sie können das durch eine if-Abfrage lösen: Code:
if fb1.anzahlBEs < 3 then @.inhalt.umlagern(puffer1); elseif fb2.anzahlBEs < 3 then @.inhalt.umlagern(puffer2); --usw. end;
[Diese Nachricht wurde von Bon Simul am 15. Nov. 2012 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Zwisto Mitglied
Beiträge: 35 Registriert: 12.10.2012
|
erstellt am: 15. Nov. 2012 19:10 <-- editieren / zitieren --> Unities abgeben:
Danke! Es funktioniert jetzt im Ansatz, allerdings gibt es weiterhin ein kleines Problem. Kommt das Fahrzeug mit z.B. 2 Fördergütern an, und es ist jeweils ein Platz auf fb1 und fb2 frei, dann wird nur ein Fördergut vom Fahrzeug auf Puffer1 geladen und das Fahrzeug fährt mit dem zweiten Fördergut weiter. Ich hätte aber gern, dass das zweite Fördergut dann auf Puffer2 umgelagert wird. Habe versucht die einzelnen Plätze anzusteuern aber leider funktioniert es trotz allem nicht. Meine Methode sieht bisher folgendermaßen aus:
Code:
is i : integer; do for i:=1 to 8 loop if FB1.AnzahlBEs < 3 then @[1,i].inhalt.umlagern(Puffer1) elseif FB2.AnzahlBEs < 3 then @[1,i].inhalt.umlagern(Puffer2) elseif FB3.AnzahlBEs < 3 then @[1,i].inhalt.umlagern(Puffer3) . . etc
Grüße Zwisto Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Bon Simul Mitglied Simulant
Beiträge: 1250 Registriert: 08.08.2011 Plant Simulation 10.1, 11 ff Professional
|
erstellt am: 15. Nov. 2012 19:20 <-- editieren / zitieren --> Unities abgeben: Nur für Zwisto
am Besten immer mit Inhalt auf die Teile zugreifen... Wenn immer genügend freie Kapa da ist, könnte folgendes klappen: Code:
while(@.belegt) loop if FB1.AnzahlBEs < 3 then @.inhalt.umlagern(Puffer1); elseif FB2.AnzahlBEs < 3 then @.inhalt.umlagern(Puffer2); elseif FB3.AnzahlBEs < 3 then @.inhalt.umlagern(Puffer3); -- usw. end; wait(10);--umladezeit end;
[Diese Nachricht wurde von Bon Simul am 15. Nov. 2012 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Zwisto Mitglied
Beiträge: 35 Registriert: 12.10.2012
|
erstellt am: 15. Nov. 2012 19:26 <-- editieren / zitieren --> Unities abgeben:
|