-> Hier kostenlos registrieren
Hallo russkinemez,
mal sehen, ob ich dir konkret helfen kann.
Erklärung meiner Gedanken:
Du organisiert dir einen DB mit 11 Worten (DW 0..10). DW0 fungiert als Zeiger, DW1 bis 10 enthalten die Ziele, die abgeholt werden wollen, im Extremfall sind es ja 10.
Das Struktogramm gibt nun die Vorgehensweise vor:
1. Hinterlegen der Abholpositionen.
Ich gehe mal davon aus, dass an den 10 Zinkbädern irgend jemand eine SE-Zeit startet, die dann irgendwann abgelaufen ist, der Timer also 1-Signal liefert. Hieraus machst du für jeden Timer einen Zykluswischer und fragst alle der Reihe nach ab (siehe Struktogramm). Liegt ein Zykluswischer vor, suchst du
1. den nächsten freien Speicherplatz im DB (der eine 0 enthält) und schreibst
2. Die Nummer des Timers(=Platznummer) in dieses DW.
Weil die Suche immer das Gleiche macht, empfielt sich hierfür eine aufrufbare Extra-FC.
Als Nächstes folgt die Steuerung des Abholers.
Sollte dein Wägelchen gerade unterwegs sein, ist das in einem Tätigkeitsbit hinterlegt. Falls dieses Bit 1-Signal hat, erfolgt kein weiteres auslesen von Daten.
Ist der Abholer fertig (wann und wo das ist, kannst nur du wissen), wird das Tätigkeitsbit auf 0 zurückgesetzt. Daraufhin wird im nächsten Zyklus der neue Zielpunkt aus dem DW1 entnommen und das Spielchen beginnt von vorn.
Anbei ein Struktogramm, welches diese Strategie nochmals verdeutlicht. Ich hoffe es hilft. Allerdings, mach dich auf weitere "hilfreiche" Kommentare in diesem Forum gefasst.
PS: Ob die Grafik bei dir ankommt, weiss ich nicht. Bei mir sehe ich jedenfalls Nichts. Es handelt sich um eine .bmp-Datei.
mal sehen, ob ich dir konkret helfen kann.
Erklärung meiner Gedanken:
Du organisiert dir einen DB mit 11 Worten (DW 0..10). DW0 fungiert als Zeiger, DW1 bis 10 enthalten die Ziele, die abgeholt werden wollen, im Extremfall sind es ja 10.
Das Struktogramm gibt nun die Vorgehensweise vor:
1. Hinterlegen der Abholpositionen.
Ich gehe mal davon aus, dass an den 10 Zinkbädern irgend jemand eine SE-Zeit startet, die dann irgendwann abgelaufen ist, der Timer also 1-Signal liefert. Hieraus machst du für jeden Timer einen Zykluswischer und fragst alle der Reihe nach ab (siehe Struktogramm). Liegt ein Zykluswischer vor, suchst du
1. den nächsten freien Speicherplatz im DB (der eine 0 enthält) und schreibst
2. Die Nummer des Timers(=Platznummer) in dieses DW.
Weil die Suche immer das Gleiche macht, empfielt sich hierfür eine aufrufbare Extra-FC.
Als Nächstes folgt die Steuerung des Abholers.
Sollte dein Wägelchen gerade unterwegs sein, ist das in einem Tätigkeitsbit hinterlegt. Falls dieses Bit 1-Signal hat, erfolgt kein weiteres auslesen von Daten.
Ist der Abholer fertig (wann und wo das ist, kannst nur du wissen), wird das Tätigkeitsbit auf 0 zurückgesetzt. Daraufhin wird im nächsten Zyklus der neue Zielpunkt aus dem DW1 entnommen und das Spielchen beginnt von vorn.
Anbei ein Struktogramm, welches diese Strategie nochmals verdeutlicht. Ich hoffe es hilft. Allerdings, mach dich auf weitere "hilfreiche" Kommentare in diesem Forum gefasst.
PS: Ob die Grafik bei dir ankommt, weiss ich nicht. Bei mir sehe ich jedenfalls Nichts. Es handelt sich um eine .bmp-Datei.