Guten Tag alle miteinander
ich sitze gerade an einer Simulation und stecke gerade etwas fest, vielleicht kann mir jemand helfen.
Das BE kommt aus der Quelle und läuft über die Förderstrecke bis hin zum Sensor 1 (roter Strich). An dieser Stelle soll das BE angehalten werden und die Steuerung des Sensors gestartet werden. Diese soll zunächst gucken welche der beiden Stationen, M1 oder M2 frei ist und das BE an diese Stelle beamen. Sind beide belegt, soll es an dieser Stelle warten. Ist die Bearbeitungszeit der Anlage abgelaufen, soll das BE über die Ausgangssteuerung der jeweiligen Anlage wieder an dem Sensor (kurz dahinter, damit die Steuerung des Sensors nicht nochmal ausgelöst wird) abgelegt werden, so dass es einfach weiter auf dem Förderband bis zur Senke verfährt.
Meine aktuelle Steuerung für den Sensor sieht wie folgt aus..
if M1.belegt and M2.belegt = true --Abfrage Anlagen belegt
@.angehalten := true -- BE wird am Sensor angehalten
else
if M1.belegt = true -- Abfrage welche der Anlagen frei ist
@.move(M2) -- M2 ist frei (Ausschlussverfahren)
else
@.move(M1) -- M1 ist frei (Ausschlussverfahren)
end
end
Bis jetzt..
Die Teile werden erfolgreich and die Stationen gebeamt und auch wieder zurück auf die Förderstrecke gelegt aber das dritte BE bleibt am Sensor liegen, weil die Steuerung nicht nochmal aufgerufen wird.
Ich habe auch schon eine while-Schleife versucht aber hier bin ich mehr als kläglich gescheitert, da es immer in einer Endlosschleife geendet ist und der Debugger das Programm letztendlich gestoppt hat.
Hier noch die Ausgangssteuerung der beiden Anlagen..
@.umlagern(Förderstrecke)
Zusammenfassung meiner Fragen:
Wie muss ich meinen Code anpassen damit der Code als eine Schleife immer wieder abgefragt wird und der oben beschriebene Ablauf funktioniert?
Wie muss die Ausgangssteuerung der Anlagen aussehen damit die BEs nach der Bearbeitung knapp hinter dem Sensor abgelegt werden? (mein Versuch war hier "@.umlagern(Förderstrecke.ID)", dass hat aber nicht geklappt (offensichtlich )
Vielen Dank schonmal im Voraus.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP