湛藍小爾
工控交流 Q703935819
級別: 家園?

精華主題: 0
發(fā)帖數(shù)量: 349 個
工控威望: 642 點
下載積分: 2101 分
在線時間: 80(小時)
注冊時間: 2014-03-03
最后登錄: 2024-07-10
查看湛藍小爾的 主題 / 回貼
樓主  發(fā)表于: 2021-03-30 08:30
如題所示,1200帶CM1241 RS485模塊讀取儀表參數(shù)

1200-modbus rtu讀取電量.pdf (676 K) 下载次数:719   
本帖最近評分記錄:
  • 下載積分:+1(simon896) 好貼好貼!
  • 專心搞錢
    Q群943838323   博圖
    Q群703935819   昆侖通態(tài)
    phoenixyqc
    級別: 探索解密
    精華主題: 0
    發(fā)帖數(shù)量: 12 個
    工控威望: 141 點
    下載積分: 622 分
    在線時間: 10(小時)
    注冊時間: 2013-05-16
    最后登錄: 2022-12-28
    查看phoenixyqc的 主題 / 回貼
    1樓  發(fā)表于: 2021-07-20 11:10
    西門子的數(shù)據(jù)存儲是低字高位,所以通常而言,浮點數(shù)是不需要高低位對換的,你這個項目居然要對換,所以我往上看了下。呃,不出意外的話,西門子對應(yīng)MODBUSRTU的首地址,應(yīng)該是40001對應(yīng)0,那么你讀取的首地址,應(yīng)該是40007才對,而你讀了40006。。。我覺得你應(yīng)該回頭看看這個項目了。
    畢竟因為浮點數(shù)的計算方法,你對換以后,6 8 10這種主要數(shù)據(jù)位可以保證符號位指數(shù)位和主要數(shù)據(jù)部分沒有問題,但是精度一定會受影響。220.123456789對應(yīng)43 5C 1F 9A,380.123456789對應(yīng)43 BE 0F CD,你讀取了7.8然后對換得到的是43 BE 1F 9A,這個數(shù)是380.24688720703125。差別很小,但是你的做法確實不正確。如果你讀的不是電壓電流功率這種相對恒定的變量而是讀了有功總電能的話,累加越大,誤差會越大。
    數(shù)據(jù)首地址+1,無需對換高低位。回頭有空還是去看下吧。
    [ 此帖被phoenixyqc在2021-07-20 11:38重新編輯 ]