我們進行模擬量計算和編程之前,首先要清楚一些概念和計算依據(jù)即轉(zhuǎn)換公式,搞清楚這些我們才能順暢的進行編程。下文以200CPU模擬量輸入為例進行介紹。
1、概念說明
工程值即為變送器對應(yīng)的實際工程量,如壓力值、溫度值、流量值等。
信號值即為通過萬用表檢測到的電流值、電壓值。
通道讀數(shù)即為CPU所讀取通道的數(shù)值。
2、轉(zhuǎn)換公
對于CPU讀取或輸出的模擬量數(shù)值,可讀性差,一般需要工程轉(zhuǎn)換,轉(zhuǎn)換成工程值便于分析和利用??赏ㄟ^下面的公式1(該公式收集于網(wǎng)絡(luò))對其進行轉(zhuǎn)換:
公式1 Ov = [(Osh - Osl)*(Iv - Isl)/(Ish - Isl)] + Osl
其中:
Ov:換算結(jié)果 Iv:換算對象 Osh:換算結(jié)果的高限 Osl:換算結(jié)果的低限
Ish:換算對象的高限 Isl:換算對象的低限
3、轉(zhuǎn)換實例
以一電流型的變送器為例,對上述公式進行講解。變送器輸出為電流型,電流范圍為4到20mA,對應(yīng)的工程值為0到100KPa。由此可以得出:4到20mA對應(yīng)0到100KPa,對應(yīng)6400到32000.即4mA對應(yīng)0KPa對應(yīng)6400,三者的關(guān)系是線性的。對應(yīng)上述公式:Ov=壓力值;Iv=CPU模擬量通道讀數(shù);Osh=100KPa;Osl=0KPa;Ish=32000;Isl=6400。當CPU模擬量通道讀數(shù)為N,對應(yīng)的壓力為P,代入上述公式:P=(100-0)*(N-6400)/(32000-6400)+0.同樣利用該公式我們可以算出CPU模擬量通道讀數(shù)為N時對應(yīng)的電流值I:I=(20-4)*(N-6400)/(32000-6400)+4.已知模擬量輸入信號值(如檢測到的電流值)、模擬量通道讀數(shù)、工程值其中的一項,通過上述公式可以很方便的計算出另外兩項的值。
4 編程實例
可通過兩種方式對模擬量數(shù)據(jù)進行處理,調(diào)用封裝好的庫文件或手動編寫程序。調(diào)用庫文件適用于模擬數(shù)據(jù)較多時,可直接調(diào)用庫文件;手頭沒有庫文件,模擬量數(shù)據(jù)較少時可采用手動編程。推薦前者,簡潔、快速。
(1)Scale庫應(yīng)用
通過調(diào)用庫文件,可以很方便對模擬量數(shù)據(jù)經(jīng)行處理。選用的庫為Scale。Scale庫有三個子項,S_ITR即整數(shù)轉(zhuǎn)換成實數(shù),模擬量輸入數(shù)據(jù)處理用的比較多;S_RTR即實數(shù)轉(zhuǎn)換成實數(shù),PID數(shù)據(jù)處理用的較多;S_RTI即實數(shù)轉(zhuǎn)換成整數(shù),模擬量輸出數(shù)據(jù)處理用的較多。
該庫是根據(jù)公式1進行編寫的,引腳定義與公式1類似,不同的是Ov代碼改成Output,Iv代碼改成Input。
上個例子中,模擬量通道為AIW0,計算后的數(shù)據(jù)即VD0與實際值有偏差時,可以引用偏差VD4,兩者相加得到與實際值較為接近的數(shù)值VD8.程序示例見圖1.
圖1 庫文件調(diào)用
(2)手動編寫轉(zhuǎn)換程序
為了保證精度,手動編寫程序的原則是先乘后除。程序示例見圖2.
圖2 轉(zhuǎn)換程序
計算后的數(shù)據(jù)即VD12與實際值有偏差時,可以引用偏差VD16,兩者相加得到與實際值較為接近的數(shù)值VD20.
5 說明
(1)200的庫文件同樣適用于模擬量輸出編程;
(2)300的模擬量輸入計算可調(diào)用FC105,輸出計算可調(diào)用;
(3)以電流為例,300模塊采集到的變送器信號,0-20mA或4-20mA,通道數(shù)據(jù)字對應(yīng)皆為0-27648,需要注意的是通道硬件組態(tài)要設(shè)置正確;
(4)RTD和TC模塊通道讀數(shù)為實際溫度的10倍,不需要轉(zhuǎn)換計算,例通道讀數(shù)為500,對應(yīng)的實際溫度為50.0℃。(轉(zhuǎn)發(fā)暗號:億維公司口號:信賴,源自品質(zhì);信任,鑄就品牌)
歡迎關(guān)注億維微信訂閱號(unimat2004),即時分享工控新技術(shù)!