//启动循环程序
CYCLIC
//电机1运行
IF (NOT Fault_Detected) AND (NOT Switch_Flag) AND (Motor1_RunTime <= Motor2_RunTime) AND (Motor1_RunTime <= Motor3_RunTime)
THEN
//启动电机1
Motor1_Start();
//电机运行时间加1
Motor1_RunTime := Motor1_RunTime + 1;
END_IF
//电机2运行
IF (NOT Fault_Detected) AND (NOT Switch_Flag) AND (Motor2_RunTime < Motor1_RunTime) AND (Motor2_RunTime <= Motor3_RunTime)
THEN
//启动电机2
Motor2_Start();
//电机运行时间加1
Motor2_RunTime := Motor2_RunTime + 1;
END_IF
//电机3运行
IF (NOT Fault_Detected) AND (NOT Switch_Flag) AND (Motor3_RunTime < Motor1_RunTime) AND (Motor3_RunTime < Motor2_RunTime)
THEN
//启动电机3
Motor3_Start();
//电机运行时间加1
Motor3_RunTime := Motor3_RunTime + 1;
END_IF
//备用电机运行
IF Fault_Detected OR Switch_Flag
THEN
//启动备用电机
BackupMotor_Start();
//备用电机运行时间加1
BackupMotor_RunTime := BackupMotor_RunTime + 1;
END_IF