leonhuang
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 59 個
工控威望: 202 點
下載積分: 3933 分
在線時間: 37(小時)
注冊時間: 2013-06-27
最后登錄: 2023-11-09
查看leonhuang的 主題 / 回貼
樓主  發(fā)表于: 2014-04-26 14:39
        本人做一個項目用到了Q64AD智能模塊,使有GX works2 軟件;智能模塊(4~20mA開關設置),(平均處理 50次、參數(shù)),(自動刷新數(shù)據(jù)輸出D11)都設好了。測溫用PT100,溫度輸入范圍-99.99~199.99 對應PLC:0~4000;我寫了個小程序:27度時D11輸出是1698;199.99度時D11輸出4000;99.99度D11輸出0  ;溫度是用信號發(fā)生器輸入的。如果溫度是熱電阻輸入輸出4~20mA信號,如何把“0,1698,4000”等PLC中的時實數(shù)據(jù)轉換為實際的溫度,并顯示在GT2000的觸摸屏上!
    我在網(wǎng)絡上查了一個公式:Dv=[(Osh-Osl )*(Iv-Isl)/(Ish-Isl)]+Osl
         Dv:換算結果     Osh:換算結果高限  Osl:換算結果低限 Iv:換算對象  Ish:換算對象高限 Isl:換算對象低限
    如我實際溫度是27度約等于[199.99-(-99.99)]*(1698-0)/(4000-0)+(-99.99)
    實際溫度范圍如果有兩種,壓力有一種,如何實現(xiàn)公式中的數(shù)據(jù)轉換。
    這個公式能否用?我用這個公式寫了一段程序,好像存在二進制和實數(shù)運算出錯的問題!寫程序是用二進制浮點運算還是用BIN運算!

如果用GX WORKS2寫成FB程序,或結構化程序怎樣做!或者最簡單的梯形圖程序員!請高手指教!
可加我微信leonhuang2326 謝謝!
edwingan47
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 101 個
工控威望: 236 點
下載積分: 21813 分
在線時間: 216(小時)
注冊時間: 2014-03-10
最后登錄: 2019-01-27
查看edwingan47的 主題 / 回貼
1樓  發(fā)表于: 2014-04-27 12:09
簡化你的方程式:
-100~200 對應PLC:0~4000

Dv (*1000) = 300000/4000*D11-100000= 75*D11-100000;
當D11= 1698; Dv(*1000) = 27350 (27.350度)

---> MUL K75 D11 D100
---> DSUB D100 K100000 D20

如果不需小數(shù)點, 就除于1000吧
---> DDIV D20 k1000 D22
edwingan47
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 101 個
工控威望: 236 點
下載積分: 21813 分
在線時間: 216(小時)
注冊時間: 2014-03-10
最后登錄: 2019-01-27
查看edwingan47的 主題 / 回貼
2樓  發(fā)表于: 2014-04-27 12:10
Q PLC 程式:
---> * K75 D11 D100
--->  D- D100 K100000 D20

如果不需小數(shù)點, 就除于1000吧
---> D/ D20 k1000 D22