恭喜,你发布的帖子
发布于 2017-07-05 18:46:28
1楼
三个电机各自写成标准块,并且每个标准块都有自己电机速度位置,还有就是各电机完成自己动作后动作完成后的标志位,接口有启动引脚,启动各自电机完成自己全部动作。
HMI上第一步是那个电机#Step1MotorNum,第二步是哪个电机#Ste2MotorNum,第三步是哪个电机#Step3MotorNum;三步都对应一个INT变量,不同值对应不同电机。
上层架构程序如下:
CASE #AutoStep OF
10://第一步动作的电机
#MotorStart[#Step1MotorNum] := TRUE;//启动相应电机
IF #MotorPosDone[#Step1MotorNum] THEN//判断相应电机是否定位完成
#AutoStep := 20;
END_IF;
20://第二步动作的电机
#MotorStart[#Step2MotorNum] := TRUE;
IF #MotorPosDone[#Step2MotorNum] THEN
#AutoStep := 30;
END_IF;
30://第三步动作的电机
#MotorStart[#Step3MotorNum] := TRUE;
IF #MotorPosDone[#Step3MotorNum] THEN
#AutoStep := 40;
END_IF;
40://完成
FOR #i := 1 TO 3 DO
#MotorStart[#i] := false;
END_FOR;
END_CASE;
请填写推广理由:
分享
只看
楼主