leonhuang
級別: 略有小成
|
本人做一個項目用到了Q64AD智能模塊,使有GX works2 軟件;智能模塊(4~20mA開關設置),(平均處理 50次、參數),(自動刷新數據輸出D11)都設好了。測溫用PT100,溫度輸入范圍-99.99~199.99 對應PLC:0~4000;我寫了個小程序:27度時D11輸出是1698;199.99度時D11輸出4000;99.99度D11輸出0 ;溫度是用信號發生器輸入的。如果溫度是熱電阻輸入輸出4~20mA信號,如何把“0,1698,4000”等PLC中的時實數據轉換為實際的溫度,并顯示在GT2000的觸摸屏上! 我在網絡上查了一個公式: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) 實際溫度范圍如果有兩種,壓力有一種,如何實現公式中的數據轉換。 這個公式能否用?我用這個公式寫了一段程序,好像存在二進制和實數運算出錯的問題!寫程序是用二進制浮點運算還是用BIN運算! 如果用GX WORKS2寫成FB程序,或結構化程序怎樣做!或者最簡單的梯形圖程序員!請高手指教! 可加我微信leonhuang2326 謝謝! |
---|---|
|
edwingan47
級別: 略有小成
|
簡化你的方程式: -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 如果不需小數點, 就除于1000吧 ---> DDIV D20 k1000 D22 |
---|---|
|
edwingan47
級別: 略有小成
|
Q PLC 程式: ---> * K75 D11 D100 ---> D- D100 K100000 D20 如果不需小數點, 就除于1000吧 ---> D/ D20 k1000 D22 |
---|---|
|