01
FOR – NEXT循环
在西门子S7-200SMART的使用中,用户可在FOR和NEXT指令中间分配需要重复执行的程序段。
FOR指令共有4个输入引脚,其中:
EN引脚导通时执行FOR循环;
INDX引脚可显示当前的循环计数值;
INIT和FINAL引脚分别确定循环的起始循环计数和结束循环计数;
NEXT用于标记FOR循环程序段的结束,每条FOR指令都需要一条NEXT指令,Zui大嵌套深度为八层。
02
JUMP(跳转至标号)
JUMP必须和LBL指令搭配使用,LBL指令标记了需要跳转后执行程序段的起始位置,JUMP指令触发则会直接跳转到标号所指的程序段执行分支操作,在主程序、子例程或中断例程中都可以使用JMP指令。
但需要注意,JMP及其对应的LBL指令必须位于与主程序、子例程或中断例程相同的代码段中,不可以跨例程跳转。
03
SCR(顺控继电器)
SCR组指令配合顺控继电器S,可将程序步骤组织到等效的程序段中,从而简单的实现控制程序的逻辑分段完成固定工艺的顺序控制项目。
SCR指令将该指令所引用的S位的值装载到SCR和逻辑堆栈;
SCRT指令标识要启用的SCR位;
SCRE指令终止执行SCR段;
RET指令需搭配子程序使用,用于有条件的终止子例程。
04
END / STOP / WDR
END指令用于有条件的终止当前扫描,但不能在子例程或中断例程中使用;
STOP指令用于将CPU从RUN模式切换到STOP模式来终止程序的执行。如果在中断例程中执行STOP指令,则中断例程将立即终止,所有挂起的中断将被忽略;
WDR指令会将系统扫描的允许时间增加500ms。
05
GET_ERROR
GET_ERROR用于获取非致命错误代码指令,并将CPU的当前非致命错误代码存储在分配给ECODE的位置。而CPU中的非致命错误代码将在存储后清除。部分非致命错误代码如表格所示,更多详细说明请参考系统手册。