Seite 1 von 1

Logik in RoboPro Programm

Verfasst: 02 Dez 2019, 13:23
von jomifa
Hallo zusammen,
ich habe eine generelle Frage zu einem Programmablauf (siehe Anhang).

In dem gezeigten Unterprogramm kommen 3 weitere Unterprogramme:

- VSG Position Z
- VSG Position Y
- VSG Position X

parallel zur Ausführung.

Die Anweisung " Warten auf ..." soll solange warten bis alle Unterprogramme abgearbeitet worden sind bevor die Kontrolle an die aufrufende Routine
übergeben wird.

M.E: kann das nur geschehen, wenn die Unterprogramme VSG Position Z und Y nach dem Unterprogramm VSG Position X enden. Ansonsten
liegt an der UND Bedingung nicht der Wert "1" an und die "Warten auf ..." Bedingung ist nicht erfüllt, da sie noch nicht ausgeführt wird, obwohl alle Unterprogramme ausgeführt worden sind.
Streng genommen müsste nur ein Unterprogramm VSG Position Z oder Y nach dem Unterprogramm VSG Position X zu ende gehen, damit die UND Bedingung wahr ist und die "Warten auf ..." Bedingung ebenfalls wahr würde. Voraussetzung ist, dass VSG Position Z und Y natürlich beendet wurden.

Sehe ich das richtig?!?

Grüße
Joachim

Re: Logik in RoboPro Programm

Verfasst: 04 Dez 2019, 01:08
von vleeuwen
Dies wird nicht immer gut funktionieren, siehe:
This will not always work well, see:
viewtopic.php?f=8&t=5672

Re: Logik in RoboPro Programm

Verfasst: 04 Dez 2019, 10:52
von jomifa
Hallo,
schön, dass dieses Problem bereits bekannt ist. Dann sollte ft dieses in seiner vorhandene Programmlogik berücksichtigen.

M.E. würde folgende Änderung des Programms genügen, damit das Unterprogramm 'Postion 1' nur dann endet, wenn alle Funktionsaufrufe X,Y und Z beendet worden sind.