csq663347
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 65 個
工控威望: 205 點
下載積分: 1775 分
在線時間: 162(小時)
注冊時間: 2014-04-14
最后登錄: 2024-09-15
查看csq663347的 主題 / 回貼
樓主  發(fā)表于: 2022-05-17 20:38
各位老大!ADPRW指令 ADPRW  H1  H4  H2  H2   D1000  M100 這條指令把數(shù)據(jù)讀回來放在了D1000 和D1001里面了,我要如何轉換成32位浮點數(shù)?

                      D1000=4028    (16進制)  D1001=C16E   (16進制)      
[ 此帖被csq663347在2022-05-17 20:52重新編輯 ]
夢雨天涯
微信hui530527   &
級別: 網(wǎng)絡英雄
精華主題: 0
發(fā)帖數(shù)量: 4178 個
工控威望: 7545 點
下載積分: 14643 分
在線時間: 2828(小時)
注冊時間: 2016-10-31
最后登錄: 2024-11-05
查看夢雨天涯的 主題 / 回貼
1樓  發(fā)表于: 2022-05-18 07:33
他就是浮點了吧。。
微信hui530527      b站賬號,非標自動化譚工
請不要隨意加我,不會隨便通過。QQ群942493953
csq663347
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 65 個
工控威望: 205 點
下載積分: 1775 分
在線時間: 162(小時)
注冊時間: 2014-04-14
最后登錄: 2024-09-15
查看csq663347的 主題 / 回貼
2樓  發(fā)表于: 2022-05-18 07:44
返回的數(shù)據(jù)不知道如何處理???還望大神指點
gxtmdb82164
級別: 論壇先鋒
精華主題: 0
發(fā)帖數(shù)量: 743 個
工控威望: 1121 點
下載積分: 344 分
在線時間: 585(小時)
注冊時間: 2019-09-22
最后登錄: 2024-11-05
查看gxtmdb82164的 主題 / 回貼
3樓  發(fā)表于: 2022-05-18 09:37
要看你讀的源頭是什么格式的,你這個數(shù)據(jù)隨便找個在線的浮點數(shù)轉換器驗證了一下已經是合法的浮點數(shù),如果格式符合你的邀請那么直接用就行了.

你這個數(shù)據(jù)簡單驗證了一下是-14.9,如果數(shù)值是對的,那么后面就可以直接用PLC的浮點運算指令去操作了,實際上你在PLC里面監(jiān)控的時候也可以切換一下顯示格式以浮點格式顯示,這樣可以直接看到讀進來的數(shù)值.

modbus浮點數(shù)傳輸需要注意的只有一個大小端問題,就是ABCD還是CDAB,或者有變態(tài)的是BADC或者DCBA這種的,但是要驗證也是很簡單的,一共就那么幾種組合.
csq663347
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 65 個
工控威望: 205 點
下載積分: 1775 分
在線時間: 162(小時)
注冊時間: 2014-04-14
最后登錄: 2024-09-15
查看csq663347的 主題 / 回貼
4樓  發(fā)表于: 2022-05-18 13:58
假設 D1000=3F7E  D1001=40A7  用浮點數(shù)轉換工具等于0.993174  這兩個16位寄存器如何轉換成32位浮點數(shù)。請大師幫忙解答一下謝謝!
夢雨天涯
微信hui530527   &
級別: 網(wǎng)絡英雄
精華主題: 0
發(fā)帖數(shù)量: 4178 個
工控威望: 7545 點
下載積分: 14643 分
在線時間: 2828(小時)
注冊時間: 2016-10-31
最后登錄: 2024-11-05
查看夢雨天涯的 主題 / 回貼
5樓  發(fā)表于: 2022-05-18 16:33
兩個組合就是浮點了吧……轉什么轉
微信hui530527      b站賬號,非標自動化譚工
請不要隨意加我,不會隨便通過。QQ群942493953