西门子S7-200PLC带参数调用的子程序运行为什么异常?

   2024-09-15 建材之家370
核心提示:西门子S7-200PLC两个子程序的局部变量和程序完全相同(见下面的右图),运行时发现I0.0为1时Q0.0和Q1.0同时变为1。将置位指令改为对L0.1的赋值(线圈)指令后运行正常,将OUT参数“输出”改为IN_OUT参数运行也正常。为什么?1.出错的原因S线圈(置位指令)断开时,L0.1的值保持不变。从子程序的局部变量表可以看出,输入参数IN和输出参数OUT均用L区的局部变量保存。这两个
西门子S7-200PLC两个子程序的局部变量和程序完全相同(见下面的右图),运行时发现I0.0为1时Q0.0和Q1.0同时变为1。将置位指令改为对L0.1的赋值(线圈)指令后运行正常,将OUT参数“输出”改为IN_OUT参数运行也正常。为什么?
1.出错的原因
S线圈(置位指令)断开时,L0.1的值保持不变。
从子程序的局部变量表可以看出,输入参数IN和输出参数OUT均用L区的局部变量保存。这两个子程序属于同一级,它们的局部变量使用同一片物理存储区。换句话说,两个子程序的L0.1先后使用同一个物理存储器位。
OB1中的I0.0为1时, 子程序SBR_0中的L0.1和它的实参Q0.0被置位。在执行SBR_1时,因为两个子程序的L0.1先后使用同一个物理存储器位,SBR_1的L0.1仍然为1,使它的实参Q1.0也变为1。Q1.0变为1不是因为程序的作用,而是两个子程序的L0.1共用同一个物理存储器位引起的。
2.将OUT参数改为IN_OUT参数未出错的原因
在Q1.0为0,I0.0为1时,L0.1因为是IN_OUT参数,刚开始执行SBR_1时,L0.1的输入值为0,与SBR_0执行后L0.1的值无关。因为I1.0为0,SBR_1执行完后,L0.1的值不变,仍然为0。所以Q1.0的值为0,不会变为1。
3.置位指令改为赋值指令(线圈)未出错的原因
假设I0.0为1时,I1.0为0,执行SBR_1的程序时,L0.0的触点断开,使L0.1的线圈断电,所以Q1.0为0。
4.同样的程序为什么S7-300不会出错
S7-300的功能(FC)和S7-200的子程序差不多,S7-300的FC1和FC2中同样的置位程序运行时不会出错。这是因为S7-300和S7-200保存IN、OUT参数的方法不一样。S7-300同一级的FC的临时局部变量(TEMP)使用同一片物理存储区,它们的IN、OUT参数没有标出L区的地址,与临时变量的保存方法不同。因此同样的程序S7-300不会出错。
 
【温馨提示】本文内容和观点为作者所有,本站只提供信息存储空间服务,如有涉嫌抄袭/侵权/违规内容请联系QQ:727533600 删除!
 
举报收藏 0打赏 0评论 0

上一篇:西门子S7-300 PLC过程映像的“陷阱”

众所周知,在SIMATIC Manager的HW Config窗口,可组态配置当前所连接的硬件设备,包括硬件模块、通信连接等。如果组态有误的话,“Save and Compile”将无法通过。但在知识大爆炸的今天,如果还认为S7-300系列PLC的过程映像区是固定的,那么您可能“OUT”了,以下的这则小故事或许对工程师有所益处。 某客户使用...

下一篇:如何更新step7配置文件

如果用的是315-2dp,但在硬件配置文件中找不到货号为315-2AH14-0AB0的CPU,也有时找不到其他模块,下载时就下不了。该怎样更新step7的配置文件?首先按照如下方法更新:1.下载最新HSP,解压之后,使用HW Update更新,最新HSP是2011年3月,链接地址中有安装指导。2.在线硬件更新:1).打开你的STEP7软件,再进入HW Config...
 
更多>同类水电电工
推荐图文
推荐水电电工
点击排行
申请链接  |  更多> 友情链接
管材水电黄金广告位赞助商链接,购买请点击进入
网站首页  |  关于建材之家  |  联系我们  |  加入建材之家  |  隐私政策  |  使用协议  |  财务相关  |  城市分站  |  招商加盟  |  建材群站  |  网站地图  |  排名推广  |  广告服务  |  网站留言  |  违规举报  |  粤ICP备14017808号  |  粤公网安备 44030402000745号
陶瓷头条 | 空调头条 | 卫浴头条 | 洁具头条 | 油漆头条 | 涂料头条 | 地板头条 | 吊顶头条 | 衣柜头条 | 家居头条 | 老姚之家 | 灯饰之家 | 电气之家 | 全景头条 | 照明之家 | 防水之家 | 防盗之家 | 区快洞察 | 深圳建材 | 香港建材 | 佛山建材 | 广州建材 | 东莞建材 | 惠州建材 | 南宁建材 | 崇左建材 | 来宾建材 | 河池建材 | 贺州建材 | 百色建材 | 玉林建材 | 贵港建材 | 钦州建材 | 防城港建材 | 北海建材 | 梧州建材 | 桂林建材 | 柳州建材 | 建材 | 720全景 | 企业之家 |