集团概览

当前位置: 主页 > 集团服务

你必须了解的西门子PLC子程序

时间:2018-07-06 关注:200 作者:HAIRUILANG.COM 来源:未知
STEP7-Micro/Win在程序编辑器窗口里为每个POU提供一个独立的页。主程序总是第1页,后面是子程序或中断程序。因为各个程序在编辑器窗口里被分开,编译时在程序结束的地方自动加入无条件结束指令或无条件关注指令,用户程序只能使用条件结束和条件关注指令。
 
通常将具有特定功能且多次使用的程序段作为子程序。子程序可以递归调用(自己调用自己),还可以多次被调用,也可以嵌套(最多8层)。子程序调用指令用在主程序或其他调用子程序的程序中,子程序的无条件关注指令在子程序的最后网络段。子程序有子程序调用和子程序关注两大类指令,子程序关注又分条件关注和无条件关注。梯形图指令系统能够自动生成子程序的无条件关注指令,用户无需输入。
 

 
子程序的调用是有条件的,未调用它时不会执行子程序中的指令,因此使用子程序可以减少扫描时间,同时可使整个程序功能清晰,易于查错和维护,还能减少存储空间。为了移植子程序,应避免使用全局符号和变量,例如V存储区中的绝对地址。
 
子程序可能有要传递的参数(变量和数据),这时可以在子程序调用指令中包含相应参数,它可以在子程序与调用程序之间传送。参数(变量和数据)必须有符号名(最多8个字符)、变量和数据类型等内容。子程序最多可传递16个参数。传递的参数在子程序局部变量表中定义。局部变量表中的变量有IN、OUT、IN/OUT和TEMP等四种类型。
 
在编程软件的程序数据窗口的下方有主程序(OBI)、子程序(SUB0)、中断服务程序(INT0) 的标签,点击子程序标签即可进入SUB0子程序显示区。也可以通过指令树的项目进入子程序SUB0显示区。添加一个子程序时,可以用编辑菜单的插入项增加一个子程序,子程序编号n从0开始自动向上生成。用鼠标右键点击指令树中的子程序或中断程序的图标,在弹出的菜单中选择“重新命名”,可以修改它们的名称。
 
●TEMP类型:局部存储器只能用作子程序内部的暂时存储器,不能用来传递参数。
 
●OUT类型:是子程序的结果值(数据),它被关注给调用它的POU。常数和地址值不允许作为输出参数。
 
●IN类型:将指定位置的参数传入子程序。参数的寻址方式可以是直接寻址(如VB10)、间接寻址(如*ACl)或立即数(如1234)。也可以将数据的地址值传入子程序(&VB100)。
 
●IN/OUT类型:将指定位置的参数传到子程序,从子程序来的结果值被关注到同样的地址。常数和地址值不允许作为输出参数。
 
在局部变量表输入变量名称、变量类型、数据类型等参数以后,双击指令树中的子程序(或选择点击方框快捷按钮,在弹出的菜单中选择子程序项),在梯形图显示区显示出带参数的子程序调用指令盒。
 
局部变量表的数据类型可以是能流、布尔(位)、字节、字、双字、整数、双整数和实数型。能流是指仅允许对位输入操作的布尔能流(布尔型),梯形图表达形式为用触点(位输入)将电源母线和指令盒连接起来。
 
局部变量表变量类型的修改方法是,用光标选中变量类型区,点击鼠标右键得到一个下拉菜单,选择插入项,弹出一个下拉子菜单,点击选中的类型,在变量类型区光标所在处即可得到选中的类型。
 
子程序调用时,输入参数被拷贝到局部存储器。子程序完成时,从局部存储器拷贝输出参数到指定的输出参数地址。
 
给予程序传递参数时,它们放在子程序的局部存储器(L)中,局部变量表最左列是每个被传递参数的局部存储器地址。
分享到:
联系我们 商务资讯:15999510394 客服热线:18038197969 在线咨询:3400906972 Email:3400906972@qq.com
Powered by 龙8国际app下载集团   粤ICP备16078983号 Copyright 2005-2018 All rights reserved
aha-italia.com的SEO综合查询 - 站长工具