二手工控电器
且行且珍惜
级别: 工控侠客
精华主题: 0
发帖数量: 2830 个
工控威望: 4458 点
下载积分: 215264 分
在线时间: 3186(小时)
注册时间: 2008-02-22
最后登录: 2024-12-28
查看二手工控电器的 主题 / 回贴
楼主  发表于: 2018-03-09 16:58
PLC通讯读取到的数据格式如下:
当前数据如下:
D10=3E2B
D11=312E
D12=3530
D13=3837
需要转换为:
D10=2B31
D11=2E35
D12=3038
D13=37
也就是说需要将D10里面的高位数据“3E”移除,然后D10里面的数据由2B和D11里面的高位数据“31”组成2B31. D11里面的数据由2E和D12里面的高位组成2E35. D12里面的数据由30和D13里面的高位组成3038.最后将D13的底位屏蔽。

最终目标是需要在触摸屏上显示为:+1.5087。因为将:2B312E35303837转换后的结果就是带符号的:+1.5087。
欢迎捧场光临工控自动化小店!供应二手拆机PLC 、伺服、步进、变频器、3相固态调压调功模块、接线端子等等
http://shop115113109.taobao.com/?spm=a1z10.5-c.0.0.L6cazp&v=1
gzcjx555
QQ  296686949
级别: 工控侠客
精华主题: 0
发帖数量: 508 个
工控威望: 4195 点
下载积分: 1693 分
在线时间: 355(小时)
注册时间: 2014-02-15
最后登录: 2024-12-28
查看gzcjx555的 主题 / 回贴
1楼  发表于: 2018-03-09 18:45
不知道是你发错了报文还是什么,我感觉如果是接收报文,如果一般都是第一位,也就是D10寄存器低位是无效的,不知道你的为什么是高位,还有貌似数据位都有点错乱。所有的数据啊ASKII码,按照正常翻译为字符串,应该是从低位数到高位。也就是你的结果排序是312B352E383037,也就是顺序都是错误的。
本帖最近评分记录:
  • 下载积分:+1(魅伤忆)
  • 联系电话15071699246,QQ296686949