to4ever
級(jí)別: 正式會(huì)員
精華主題: 0
發(fā)帖數(shù)量: 3 個(gè)
工控威望: 94 點(diǎn)
下載積分: 530 分
在線時(shí)間: 8(小時(shí))
注冊(cè)時(shí)間: 2016-06-21
最后登錄: 2017-08-30
查看to4ever的 主題 / 回貼
樓主  發(fā)表于: 2017-02-13 17:10
各位大大們好~

小弟我遇上了一個(gè)問題~

電表MODBUS連線回PLC~

已讀取該值的高低位元~

但該電表只有float的資料型態(tài)~

所以想請(qǐng)教PLC如何將DWORD轉(zhuǎn)換成 FLOAT~

該值須為Float~

我找了好多個(gè)函數(shù)好像沒辦法直接轉(zhuǎn) ~

請(qǐng)問各位先進(jìn)這種狀態(tài)要怎麼處裡比較好?

謝謝

例如:
量測(cè)值為 123.45
PLC讀取DWORD 為 42F6E666
要如何轉(zhuǎn)換到帶正負(fù)號(hào)的REAL或DINT~

我現(xiàn)在是用WAGO的PLC
因?yàn)樗麤]有直轉(zhuǎn) FLOAT的FC
所以想請(qǐng)教若沒有直轉(zhuǎn)的FC
大大會(huì)怎麼做呢~@@
那三菱或是西門子~大大會(huì)怎麼做呢?
謝謝
[ 此帖被to4ever在2017-02-14 12:50重新編輯 ]
yk_schzzn
級(jí)別: 探索解密
精華主題: 0
發(fā)帖數(shù)量: 38 個(gè)
工控威望: 136 點(diǎn)
下載積分: 7772 分
在線時(shí)間: 307(小時(shí))
注冊(cè)時(shí)間: 2016-11-26
最后登錄: 2022-08-12
查看yk_schzzn的 主題 / 回貼
1樓  發(fā)表于: 2017-02-13 17:56
得區(qū)分不同的plc廠家吧,比如西門子的將寄存器定義為real格式就可以直接取值了,也可以用現(xiàn)成的函數(shù)來轉(zhuǎn)換,要注意高,低位數(shù)據(jù)的存放位置可能不同 ,還有你儀表的FLOAT數(shù)據(jù)是不是標(biāo)準(zhǔn)。
[ 此帖被yk_schzzn在2017-02-13 18:01重新編輯 ]
Q183996768
月澤
時(shí)間嘛!就象乳溝,擠一擠總歸還是有的!
級(jí)別: 工控俠客
精華主題: 1 篇
發(fā)帖數(shù)量: 1285 個(gè)
工控威望: 2921 點(diǎn)
下載積分: 4511 分
在線時(shí)間: 642(小時(shí))
注冊(cè)時(shí)間: 2009-03-28
最后登錄: 2024-06-12
查看月澤的 主題 / 回貼
2樓  發(fā)表于: 2017-02-14 08:33
幾十家PLC廠家   你用的是哪一款?
樓主留言:
我現(xiàn)在是用WAGO的PLC
因?yàn)樗麤]有直轉(zhuǎn) FLOAT的FC
所以想請(qǐng)教若沒有直轉(zhuǎn)的FC
大大會(huì)怎麼做呢~@@
那三菱~大大會(huì)怎麼做呢?
謝謝
揭開神秘的工控面紗
QQ:2631001081
Emal:strong20671713@163.com
roy_poon
級(jí)別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 114 個(gè)
工控威望: 237 點(diǎn)
下載積分: 63243 分
在線時(shí)間: 592(小時(shí))
注冊(cè)時(shí)間: 2013-11-09
最后登錄: 2024-11-02
查看roy_poon的 主題 / 回貼
3樓  發(fā)表于: 2017-02-14 10:52
圖片:
H42F6E666 本就是E123.45
樓主留言:
謝謝R大大~
那請(qǐng)問帶正負(fù)號(hào)的要怎麼表示呢?
-123.45
C2F6E666

有ST語法的寫法嗎
感謝
roy_poon
級(jí)別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 114 個(gè)
工控威望: 237 點(diǎn)
下載積分: 63243 分
在線時(shí)間: 592(小時(shí))
注冊(cè)時(shí)間: 2013-11-09
最后登錄: 2024-11-02
查看roy_poon的 主題 / 回貼
4樓  發(fā)表于: 2017-02-14 15:10
圖片:
其值就是FLOAT,你用浮點(diǎn)指令對(duì)地址操作就可以。注意軟件不要有數(shù)據(jù)操作類型識(shí)別。
樓主留言:
謝謝R大大~
若本身沒有轉(zhuǎn)float的指令~
有辦法轉(zhuǎn)換嗎?
roy_poon
級(jí)別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 114 個(gè)
工控威望: 237 點(diǎn)
下載積分: 63243 分
在線時(shí)間: 592(小時(shí))
注冊(cè)時(shí)間: 2013-11-09
最后登錄: 2024-11-02
查看roy_poon的 主題 / 回貼
5樓  發(fā)表于: 2017-02-14 17:15
只要PLC支持 FLOAT及其去算 ,都應(yīng)該可以。
zhanaoshen
級(jí)別: 探索解密
精華主題: 0
發(fā)帖數(shù)量: 11 個(gè)
工控威望: 103 點(diǎn)
下載積分: 686 分
在線時(shí)間: 14(小時(shí))
注冊(cè)時(shí)間: 2017-02-23
最后登錄: 2020-10-23
查看zhanaoshen的 主題 / 回貼
6樓  發(fā)表于: 2017-02-23 14:55
直接用  DWORD_to_REAL就可以了

CodeSYS 的轉(zhuǎn)換語法是   待轉(zhuǎn)換的數(shù)據(jù)類型_to_需轉(zhuǎn)換的數(shù)據(jù)類型