mubaixd
级别: 正式会员
精华主题: 0
发帖数量: 16 个
工控威望: 62 点
下载积分: 372 分
在线时间: 9(小时)
注册时间: 2024-08-01
最后登录: 2025-01-13
查看mubaixd的 主题 / 回贴
楼主  发表于: 8天前
图片:
图片:
图片:
在C#内可以读写PLC内的VW类型数据,但是读不到v,VD,VB类型的数据  跪求各位大佬来指点  已经研究好久了
liuweiplc
级别: 论坛先锋
精华主题: 0
发帖数量: 9 个
工控威望: 1364 点
下载积分: 689 分
在线时间: 6(小时)
注册时间: 2021-07-13
最后登录: 2025-01-18
查看liuweiplc的 主题 / 回贴
1楼  发表于: 7天前
方法一:如果需要VD可以将二个VW拆分成byte,然后将四个字节合并获取到VD,上代码:
                int[] RM = rtuMc.ReadHoldingRegisters(0,12);                                      //读保持寄存器
                byte[] bytes1 = BitConverter.GetBytes(RM[0]);
                byte[] bytes2 = BitConverter.GetBytes(RM[1]);
                byte[] Data0 = new byte[] { bytes2[0], bytes2[1], bytes1[0], bytes1[1] };  
                float Float0 = BitConverter.ToSingle(Data0, 0);  //输出浮点数;