SCL 置复位问题

最近在学习S7-1200,无意中看到找答案的一个问题,http://www.ad.siemens.com.cn/Service/answer/solution.aspx?Q_ID=123134&cid=1072&F=
看了半天没看明白,感觉楼主的程序没什么问题啊,为什么输出结果不同呢?
“我心飞翔”大师解释说:
FC块中必须对任何情况下的OUT赋值,所以建议使用INOUT代替OUT。这句话没理解。
为什么改为INOUT的类型就可以用,在本量中,作为OUT与INOUT区别在哪。
谢谢!

最佳答案

这其实是使用临时变量的问题,其实是第二个块的输出与第一个块的输出在被调用时分配的临时变量的地址是一样的,所以导致了第二个块也有输出了。
使用INOUT代替OUT,因为INOUT会先检测其输入状态,然后在根据块程序输出逻辑或运算结果。对于第二块来讲,先检测M0.5状态为0,程序执行后也是为0。所以输出正常。

提问者对于答案的评价:
谢谢各位大师的回复!
是不是这样理解:在FC中,OUT变量是临时变量。第一次调用时和第二次调用时所分配的地址是一样的,所以出现这种情况,而如果改用IN_OUT,分配的地址就是单独。
那如果把这程序写在FB中,还是定义OUT变量的话,输出结果是不是就具有保持功能,可以正常执行了?

最佳答案作者回复:
恭喜,看来是明白了。

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc163651.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2017年6月9日 下午6:06
下一篇 2017年6月9日 下午6:07

相关推荐

  • step 7 v11可以打开v10写的软件吗

    如题~如果可以,怎么打开?如果不可以,那有没有什么方法补救? 最佳答案 可以,高版本可以打开低版本软件。 提问者对于答案的评价:谢谢~那低版本怎么打开高版本写的软件呢?比如,v10…

    SIMATIC S7-1200 2017年11月12日
  • S71200 RS485/RS422接口问题

    S71200的241-1CH32-0XB0 RS485/RS422通讯模块的9针引脚模块是怎样定义的,在当做485通讯时应该怎样接? 最佳答案 1脚:逻辑接地或通讯接地2…

    SIMATIC S7-1200 2017年8月24日
  • S7-1200能不能用step7-200编程?

    请问大侠,能不能用Step7-200对S1200进行编程,谢谢! 最佳答案 不可以的,1200必须使用博图请在官方下载安装使用,系统最好用WIN7的兼容性最好Updates&nbs…

    SIMATIC S7-1200 2017年6月1日
  • S71200 MODBUS通讯

    在S71200PLC中,多次调用MB_Master时,每次使用的背景数据块可以相同吗? 最佳答案 不可以。每次的背景数据块都是不同的!如果相同就乱了。 提问者对于答案的评价:谢谢。…

    SIMATIC S7-1200 2017年8月24日
  • 西门子1200s7通信协议

    西门子1200PLC与触摸屏以太网通信除modbus tcp外都是使用的s7协议么,如果不是还会有哪些通信协议,怎么设置让其使用s7通信,博途里面可以设置么?一连串的问题…

    SIMATIC S7-1200 2017年5月29日
  • QU => <操作数> QU := <操作数>

    QU => <操作数>  QU := <操作数>有什么区别? 最佳答案 分别是输出接口变量…

    SIMATIC S7-1200 2017年6月3日
  • s7-1200接线

    s7-1200模块需要单独购买40针前连接器吗?如果需要的话,型号是什么?谢谢 问题补充:编程电缆的型号是什么,我做了采购单,麻烦大虾们帮我看看少什么,或者型号不对的,谢谢 图片说…

    2017年11月4日
  • 1200与200进行MODBUS通讯

    1200与200进行MODBUS通讯,1200作为Master,200作为从站;现1200需读写200的I/O,200作为从站,除了编写对MODBUS从站的初始化和调用外,还需要编…

    SIMATIC S7-1200 2017年11月19日
  • s71200 CPU1214 有多少个高速输出

    s71200 CPU1214  有多少个高速输出,本身集成了2个高速输出,但是我看它有扩展模块SB1222 是200kHz 4个输…

    SIMATIC S7-1200 2017年11月13日
  • 高速计数不工作

    旋转编码器接s7-1200作高速计数,接入I0.0,I0.1两个点,HSC1高速计数,OB40里的M110.0没有工作,监控ID1000没有值,我用的是V13版本,和V12不同,请…

    2017年8月3日