登录
首页
PLC论坛
台达PLC
回帖
发帖
正文
主题:IEEE-754在PLC中如何处理?
点击:3969 回复:14
楼主
编辑
引用
管理
305456779
买了一个上海托克的电压表,PLC中读出的数据为D123=64,D124=236,D125=204,D126=205,转换成16进制为40ECCCCD,实际电压表显示7.4,请问在PLC中要如何处理才能得到这个数据。说明书上写着用IEEE-754
现在已经想的头晕了,请师傅们帮帮忙啊!!!
最后修改:
2015/11/10 15:51:59
15-11-10 14:59
1楼
编辑
引用
管理
346953791
走的是485通讯吗?
15-11-10 15:18
2楼
编辑
引用
管理
305456779
对的!
15-11-10 15:49
3楼
编辑
引用
管理
305456779
是的!
15-11-10 15:49
4楼
编辑
引用
管理
mjinbao
仿真试验了一下,H40ECCCCD是浮点数7.4的十六进制表达,看需如何利用这个数据;
编程软件查看的话,可试按浮点数形式显示。
最后修改:
2015/11/10 16:08:24
15-11-10 16:01
5楼
编辑
引用
管理
教主
你说明书写的是754那你就用西门子直接的浮点处理撒。不过要看看源数据排序和传输顺序,再看看PLC传输过来是按什么顺序放但寄存器,的如果不符合浮点指令要求的寄存器排序你自己排一下不就好了。
15-11-10 16:04
6楼
编辑
引用
管理
305456779
4 0 E C C C C D
0100 0000 1110 1100 1100 1100 1100 1101
我现在找到的规律就是把40EC的最高1位去掉,然后变成100 0000 111=7*1=7,这是整数位数,小数位数比较麻烦0 1100=0.03125*12=0.375,CCCD是小数的后面数据,忽略。
现在就是把高位那位去掉,不知道怎么去!!!
15-11-11 11:35
7楼
编辑
引用
管理
305456779
问题是用的台达PLC,DVP60ES2
15-11-11 11:39
8楼
编辑
引用
管理
mjinbao
二进制浮点数取整数部分,可以使用INT指令。
不知小数部分需如何处理,是要得到一个小数值、还是整数值,或其他。
或者说,需要用读到的数值做何运算、或何种用途。
最后修改:
2015/11/11 13:31:57
15-11-11 13:28
9楼
编辑
引用
管理
305456779
读过来的数据有4个,是分开的,整数位还要从二进制那边转,直接用INT貌似读不出来!
15-11-11 14:31
上一页
下一页
工控新闻
强强联手!华为大模型强势赋能宝钢,钢铁行业迎来史诗级变革
西门子将亮相2024工博会,全景呈现数实融合的工业未来
“魏”联万物 创赢未来 ——魏德米勒工业网物联网解决方案助力数智升级
华工科技 × 汇川技术战略合作,共启数智新篇章
ABB与威腾电气携手成立新合资公司
“量体裁衣”破局转型难题!广域铭岛助力智转数改跑出加速度
2024 西门子 EDA 技术峰会:开启系统设计新时代
富士康打造数字孪生机器人工厂,提高自动化工业效率
更多新闻资讯