电气电工
级别: 探索解密
精华主题: 0
发帖数量: 65 个
工控威望: 114 点
下载积分: 6465 分
在线时间: 45(小时)
注册时间: 2024-02-28
最后登录: 2024-09-19
查看电气电工的 主题 / 回贴
楼主  发表于: 2024-06-04 09:52
现在工控机做上位机,使用VB编程,PLC使用200smart。两者通过modbus-RTU与PLC的串口进行通讯。

好不容易把读PLC数据的程序写完了,然后发现给PLC写数据有很大局限性。

查手册发现只能给Q输出线圈和V保持寄存器写值。之前习惯是PLC里通过多个M0.0、M0.1这种互相配合,来控制1个Q的输出。但是RTU没法直接写入M值,我就想用V0.0来代替一下,但是写值到保存寄存器里是直接写入一个字的,一个字16位,可以有16个V0.0,但是只想写入其中某一个位而不改变其他的位,是没办法直接做到的。总不能先读一遍然后再写吧,这样很影响效率。再换个方式,如果把这1个字里只使用一个位其他不用,又太浪费了。

想请教下大佬们用工控机和smart通讯都是咋做的,可否指点下?


厮守那段伤
级别: 正式会员
精华主题: 0
发帖数量: 40 个
工控威望: 86 点
下载积分: 278 分
在线时间: 9(小时)
注册时间: 2024-06-11
最后登录: 2024-08-02
查看厮守那段伤的 主题 / 回贴
1楼  发表于: 86天前
上位机为什么选择工控机呢,使用上位软件不好么。