这个加法怎样做(2)?

见截图1、2,在完全没有负载时,Index=2,我对程序的理解跟动态监测差别很大请大侠帮我分析分析,谢谢!

图片说明:

这个加法怎样做(2)?    这个加法怎样做(2)?   

最佳答案

分析的基本正确,AR1=64转换为指针常数为P#8.0,所以L  DID[AR1,P#4.0]其实就是地址DID12,下面的是DID8。最终就是将DID12传递给DID8。下一个循环应该是DID16传递给DID12,这样就可以把#Buffer[25]存入到数组中了。

提问者对于答案的评价:
我挺不解的是,没看出哪句程序是把#Buffer[25]装入到DID[AR1,P#4.0]的,而且,为什么要把地址传来传去的呢,作用是什么?在实际监测中,看到当Index=2时,在(31)程序段,在没有指明是DI数据块之前,AR2=8400000,是不是针对FB功能块,就是这样的?谢谢,希望能得到继续指导!

最佳答案作者回复:
你这是不是FB块中的程序啊,尽量不要使用AR2,这是表示起始地址。
当第二次执行程序时,就把第一次采集的值放到了#Buffer[24],新采集的值在#Buffer[25],以此类推。这样取平均数或是其他计算得数准确。

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2017年11月6日 下午7:08
下一篇 2017年11月12日 上午10:06

相关推荐