当前位置: 主页 > PLC控制

有没有从有顺序的各个UDT中,每个UDT取出一位放到一个字中的程序或指令

有没有从有顺序各个UDT中,每个UDT取出一位放到一个字中的程序或指令

最佳答案

假设是udt1,里面包含10个字,要的是他的第0位,然后在db1里调用他5次,db1里就成了dbx0.0-dbx9.9是第一个udt,dbx10.0-dbx19.9是第二个udt,总共5组,最终要放在db1.dbx100.0开始以此类推,接下来编程
OPNDB1//打开bd1
LAR1P#0.0//把db1.dbx0.0放在地址寄存器1
LAR2P#100.0//把db1.dbx100.0放在地址寄存器2
L5//总共要循环5次
XH:TMW0
ADBX[AR1,P#0.0]//取出位(db1.dbx0.0)
=DBW[AR2,P#0.0]//放在db1.dbx100.0里
+AR1P#10.0//每次都给AR1偏移10.0
+AR2P#0.1//每次都给AR2偏移0.1
LMW0
LOOPXH//LOOP的标准格式,每次都给mw0减1,直到0,也就是循环5次
这样,你在db1.dbw100或dbb100里就可以看到了,db1.dbx100.0里就是第一个udt1里的第0位,db1.dbx100.1就是第二个udt1里的第0位,以此类推
如可用,请采纳

提问者对于答案的评价:
根据1楼的兄弟所说我也写了一个,和你写的基本一致,并验证通过,非常感谢你的指导。

  • 关注微信

猜你喜欢

微信公众号