登录
首页
PLC论坛
台达PLC
回帖
发帖
正文
主题:IEEE-754在PLC中如何处理?
点击:4338 回复: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
上一页
下一页
工控新闻
禾望电气上半年净利润同比增长56.79%
博世力士乐再次入选宁德时代设备元件优先推荐品牌
美的工业技术旗下合康新能与国核签订 联合开发协议
Arm Zena CSS 助力车厂提前一年推出 AI 定义汽车
创维光伏发布“羲寰”生态平台 构建智慧能源新生态
施耐德电气四款能源管理产品通过“国际领先”“国际先进”鉴定
上海:加快推动“AI+制造”发展,加快机器人应用
测试技术巅峰盛会@你,抢先解锁博世力士乐精彩看点
更多新闻资讯