威纶通官方论坛

我用宏指令中的GetData函数为什么取不到PLC的数据

[复制链接]
发表于 2011-2-12 16:14:43 | 显示全部楼层 |阅读模式
具体的用法如下:
macro_command main()
   int I
    GetData(I, "Device 1", D_BCD, 100, 1)
    SetData(I, "本机 触摸屏", LW_BCD, 10, 1)                                             


end macro_command
从PLC上取D100内的数据,触摸屏上显示。但怎么显示都是0。
请各位大佬帮解决一下,问题在那里。先谢谢了!
发表于 2012-9-25 10:21:57 | 显示全部楼层
采用宏指令读写数据注意事项
1、读取数据的前提:HMI与所连接设备可以正常通讯。
2、宏指令设置读写数据格式对应。
3、宏指令正确执行。
若HMI与plc通讯正常,写入的数据资料格式正确,宏指令正常执行,即可正常读写数据。
发表于 2011-2-14 21:32:15 | 显示全部楼层
首先,你的宏指令有没有触发啊,这个设置触发后执行才有效的!还有就是检查一下,你PLC的数据格式与显示在HMI上的数据格式是不是一致的!
 楼主| 发表于 2011-2-14 21:32:15 | 显示全部楼层
楼上的回答不能令人满意。不过没关系,我自己解决了,办法就是读两次。
    GetData(I, "Device 1", D_BCD, 100, 1)
    GetData(I, "Device 1", D_BCD, 100, 1)
这样就能读到PLC内的数据了。
发表于 2012-9-24 14:14:50 | 显示全部楼层
楼主啊,我的也读取不了。用GetData(b,"MODBUS RTU",6x,16,1),无法读取。应该读取的该地址下的数据位16383,用你的方法读两次,还是不行。求解决方法
您需要登录后才可以发帖 登录 | 注册

本版积分规则

回复帖子

Archiver|小黑屋|威纶通官网 ( 粤ICP备06054553号 )

GMT+8, 2026-10-11 12:57

Powered by Discuz! X3.4

© 2001-2023 Comsenz Inc.

快速回复 返回顶部 返回列表