qq134157
级别: *
精华主题: * 篇
发帖数量: * 个
工控威望: * 点
下载积分: * 分
在线时间: (小时)
注册时间: *
最后登录: *
查看qq134157的 主题 / 回贴
楼主  发表于: 2017-12-04 17:59
通讯读取出的字符串如:
地址       16进制    ASCLL码
D80       3030          00
D81       3030           00
D82       2E36           .6
D83       3134           14



怎样把 数据转换成0000.614并保存到D200

  三菱 FX5U PLC
何启海
级别: 略有小成
精华主题: 0
发帖数量: 263 个
工控威望: 383 点
下载积分: 1358 分
在线时间: 139(小时)
注册时间: 2017-02-20
最后登录: 2024-05-16
查看何启海的 主题 / 回贴
1楼  发表于: 2017-12-04 18:41
你需要把数据拆分,然后再组合,再转
john42tw
级别: 网络英雄
精华主题: 0
发帖数量: 1276 个
工控威望: 6107 点
下载积分: 52046 分
在线时间: 1120(小时)
注册时间: 2012-04-24
最后登录: 2024-03-06
查看john42tw的 主题 / 回贴
2楼  发表于: 2017-12-05 07:54
FX5U 沒用過,但基本因該是(如果沒特殊指令)

D80 轉BIN => D90     轉實數 => D100   *100  ==>D110
D81 轉BIN => D92     轉實數 => D102   *1      ==>D112
D80 轉BIN => D94     轉實數 => D104   *0.1?  ==>D114
D80 轉BIN => D96     轉實數 => D106   *0.01  ==>D116

D110+D112+D114+D116 =D200
zmrs163
级别: 略有小成
精华主题: 0
发帖数量: 343 个
工控威望: 491 点
下载积分: 1403 分
在线时间: 311(小时)
注册时间: 2017-06-12
最后登录: 2024-05-17
查看zmrs163的 主题 / 回贴
3楼  发表于: 2017-12-05 17:14
思路如下,将各个寄存器的高低位分开,首先判断小数点在哪里,然后就可以根据这一个进行数据转换,用ST写应该会比较简单
john42tw
级别: 网络英雄
精华主题: 0
发帖数量: 1276 个
工控威望: 6107 点
下载积分: 52046 分
在线时间: 1120(小时)
注册时间: 2012-04-24
最后登录: 2024-03-06
查看john42tw的 主题 / 回贴
4楼  发表于: 2017-12-06 08:05
图片:
Q  參考看
周家大少
辛辛苦苦也不过是为了养家糊口!
级别: 工控侠客
精华主题: 0
发帖数量: 1160 个
工控威望: 3078 点
下载积分: 1775 分
在线时间: 150(小时)
注册时间: 2015-09-10
最后登录: 2024-04-12
查看周家大少的 主题 / 回贴
5楼  发表于: 2017-12-06 09:30
二楼的思路是正确的。
QQ:611369538
微信:ZMF2KXL