FC调用(两程序区别)

DB1.DBW20 运算出10 为什么程序段2仍然是0 而用MW50就没有问题

图片说明:

FC调用(两程序区别)    FC调用(两程序区别)   

最佳答案

FC是一个没有存储空间的逻辑块。FC的临时变量存储在本地的数据堆栈中,这些数据在FC执行完毕后将会丢失。为了永久的保存数据,FC可以使用共享数据块。
    由于FC没有自己的存储空间,所以必须指定实参给他的参数(这就是FC的输入输出引脚必须填写参数的原因)。FC的临时变量(位于本地数据堆栈中)是无法指定初始值的(由于本地数据堆栈是由系统自动动态使用的)。对于FC的输出变量,必须要在每次执行FC时给一个确定值,否则会有可能输出一个随即值。
    如果没有数据被写到FC的 OUT参数,FC将会输出一个随机的数值!对于FB,因为其可以使用背景数据块来存储OUT参数的数值,即使再次调用没有对OUT参数进行写操作,OUT参数依然可以输出上一次的旧值

提问者对于答案的评价:
谢谢

专家置评

检查程序,参照左传的示例。

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2018年12月2日 下午3:24
下一篇 2018年12月2日 下午3:24

相关推荐