Untitled
unknown
plain_text
a year ago
1.3 kB
7
Indexable
PROGRAM PLC_PRG VAR Aplus:BOOL; Bplus:BOOL; Aminus:BOOL; Bminus:BOOL;; stepPos:INT; switch:BOOL; //limit Angle:REAL; control:StepMotorControl; END_VAR //current position A+ IF control.stepPos <> control.prevPos THEN IF control.stepPos=0 AND control.prevPos=3 THEN stepPos:=stepPos+1; ELSE IF control.stepPos=0 AND control.prevPos=1 THEN stepPos:=stepPos-1; END_IF END_IF END_IF //Current position Bplus IF control.stepPos <> control.prevPos THEN IF control.stepPos=1 AND control.prevPos=0 THEN stepPos:=stepPos+1; ELSE IF control.stepPos=1 AND control.prevPos=2 THEN stepPos:=stepPos-1; END_IF END_IF END_IF //Current position Aminus IF control.stepPos <> control.prevPos THEN IF control.stepPos=2 AND control.prevPos=1 THEN stepPos:=stepPos+1; ELSE IF control.stepPos=2 AND control.prevPos=3 THEN stepPos:=stepPos-1; END_IF END_IF END_IF //current position Bminus IF control.stepPos <> control.prevPos THEN IF control.stepPos=3 AND control.prevPos=2 THEN stepPos:=stepPos+1; ELSE IF control.stepPos=3 AND control.prevPos=0 THEN stepPos:=stepPos-1; END_IF END_IF END_IF IF stepPos <= 0 THEN switch := TRUE; ELSE switch := FALSE; END_IF Angle:=0.36*stepPos;
Editor is loading...
Leave a Comment