恭喜,你发布的帖子
发布于 2023-12-04 16:59:35
9楼
可能存在的问题。计时器在分支前已经调用了,并且没有复位,导致进入分支后,计时器仍在以原先的参数运行,建议在进入分支的时候关闭计时器进行初始化,
添加一个Step_record用来确认是否初次进入进入当前步,
150: //16.Wait for Gap Control to trigger (Lifting Unit not free to move)
#o_StepString := 'Check Gap Control A1 , WPC detected';
#IEC_Timer_150(IN := #Step = #Step_record,
PT := #GapControlAlarm);
#Step_record := #Step;
IF #IEC_Timer_150.Q THEN
#o_Error := TRUE;
#o_Status := 1001;
#o_StatusString := 'i_GapControlSensorA1 alarm-Conveyor fault';
#runing := FALSE;
END_IF;
//
IF #i_GapControlSensorA1 AND NOT #IEC_Timer_150.Q THEN
#Step := 160;
#Step_record := 0;
END_IF;
这样写看看
请填写推广理由:
分享
只看
楼主