回复:S7-200局部变量先赋值后使用,具体怎么操作

芳季

西门子1847工业学习平台

  • 帖子

    15785
  • 精华

    102
  • 被关注

    985

论坛等级:至圣

注册时间:2007-08-03

钻石 钻石 如何晋级?

发布于 2015-05-12 12:36:11

9楼

在子程序中,对out的赋值有两种方法。
方法一:使用线圈指令。例如= L0.0。但是此线圈指令必须被扫描到。(被跳转的就是没有扫描到)
方法二:使用其他指令。例如置位复位指令S;R,加一指令inc等等。但是此指令必须被on能流执行至少一次(后者决定最终值)。off能流和被跳转的情况视为无效。
楼主顶楼提到的<建立IN类型局部变量赋值给OUT类型变量吗>无非就是上述两种方法。但是我并没有理会你的数据源是什么来源。
另外。in/out变量就变味了。是另外一回事了。out变量是无中生有。in/out变量是改造。
out变量。如果你的子程序定义了一个out变量,而子程序中并没有对这个变量有任何操作。那么这个out变量在退出子程序的时候还是要还给你一个值,不会欠你的。可是这是个什么值的话,就不由得你了。这一点是最难理解的一点。跟违反上面的方法二的做法有关。
先赋值在使用就是必须先经过上述两种方法对L写入值。再供以后进行读取。先写后读。
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200

共有33300条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
X 图片
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。