登录
首页 PLC论坛 西门子SIEMENS
回帖 发帖
正文

主题:实数转字符串问题

点击:1236 回复:4

各位大神
   我有一台设备通过相机获取坐标,发送到另一台设备上,用西门子300通过profinet通信,用的是博途。现在我获取的坐标值需要转成字符发送到目标设备上,但是过程中遇到一个问题,例如我获得的坐标是50.055,需要发送到目标设备是‘5’‘0’‘.’‘0’‘5’‘5’。通过实数转字符串,得到是指数形式,小数点不好弄。我把它小数点前后拆分,但是055前面这个0在取整的时候又没了,大家有什么好的方法没。
20-08-25 09:34
用浮点数,32位就4个字节,你发4个字节过去,再重新组成一个浮点数就对了;如果一定要转成字符,就把每个字节拆成两个ASCII码、高4位与低4位这样就是8个ASCII码,对方收到后再把16个字符还原成一个浮点数的4个字节
20-08-25 09:55
主要是那台设备只能接受字符型命令,我这边要逐个字节输出字符
20-08-26 09:22
ASIIC码吗
20-08-26 10:19
我看了下有专门的指令VAL_STRG这种可以不是指数形式。
最后修改:2020/9/4 9:45:33
20-08-29 16:46

工控新闻

更多新闻资讯