如何批量循环把PIB和传动到IB区或QB到PQB

LAR1  P#0.0
      LAR2  P#0.0
      L     #Lenght
M001: T     #Lenght_TempI
      L     PIB [AR1,P#500.0]
      T     IB [AR2,P#500.0]
      +AR1  P#1.0
      +AR2  P#1.0
      L     #Lenght_TempI
      LOOP  M001


这个循环在仿真器中可以实现想要的功能,但是在实际PLC中可能实现不了,哪里有问题,该如何做,如何修改,请大神指正,多谢了!
项目是AS-I 通讯 点位不少,也考虑过扩展过程映像,但是修改过程映像后,保存编译总是出错 ,也不知道哪里的问题, 附图

图片说明:

如何批量循环把PIB和传动到IB区或QB到PQB   

钻石用户推荐最佳答案

如你所给出的程序要在实际PLC中运行,必须注意:
1、注意地址范围:
  L     PIB [AR1,P#500.0]
  T     IB [AR2,P#500.0]
上述语句在你所给出的程序中,第一次循环相当于:
 L     PIB500
  T     IB500
PIB500与 IB500,这样的地址是在你的实际PLC中允许的范围之内吗?换言之,你的在实际PLC中和PIB500及IB500相对应的硬件吗?
如果在你的实际PLC中没有和PIB500及IB500相对应的硬件,则为非法地址,会引起系统报错或停机的。
2、 变量#Lenght必须有实际的值。因为 #Lenght是用于循环计数的,所以变量#Lenght的值。必须考虑指针变址后的地址范围。即,必须在你的实际PLC中允许的地址范围之内。

提问者对于答案的评价:

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月5日 上午12:14
下一篇 2021年7月5日 上午12:15

相关推荐

发表回复

登录后才能评论