西门子6ES7222-1HH32-0xB0数字输出模块
西门子6ES7222-1HH32-0xB0数字输出模块
STEP7-Micro/Win在程序编辑器窗口里为每个POU提供一个独立的页。主程序总是第1页,后面是子程序或中断程序。因为各个程序在编辑器窗口里被分开,编译时在程序结束的地方自动加入无条件结束指令或无条件返回指令,用户程序只能使用条件结束和条件返回指令。
通常将具有特定功能且多次使用的程序段作为子程序。子程序可以多次被调用,也可以嵌套(最多8层),还可以递归调用(自己调用自己)。子程序有子程序调用和子程序返回两大类指令,子程序返回又分条件返回和无条件返回。子程序调用指令用在主程序或其他调用子程序的程序中,子程序的无条件返回指令在子程序的最后网络段。梯形图指令系统能够自动生成子程序的无条件返回指令,用户无需输入。
子程序的调用是有条件的,未调用它时不会执行子程序中的指令,因此使用子程序可以减少扫描时间,同时可使整个程序功能清晰,易于查错和维护,还能减少存储空间。为了移植子程序,应避免使用全局符号和变量,例如V存储区中的绝对地址。
在编程软件的程序数据窗口的下方有主程序(OBI)、子程序(SUB0)、中断服务程序(INT0) 的标签,点击子程序标签即可进入SUB0子程序显示区。也可以通过指令树的项目进入子程序SUB0显示区。添加一个子程序时,可以用编辑菜单的插入项增加一个子程序,子程序编号n从0开始自动向上生成。用鼠标右键点击指令树中的子程序或中断程序的图标,在弹出的菜单中选择“重新命名”,可以修改它们的名称。
子程序可能有要传递的参数(变量和数据),这时可以在子程序调用指令中包含相应参数,它可以在子程序与调用程序之间传送。参数(变量和数据)必须有符号名(最多8个字符)、变量和数据类型等内容。子程序最多可传递16个参数。传递的参数在子程序局部变量表中定义。局部变量表中的变量有IN、OUT、IN/OUT和TEMP等四种类型。