說明:上一篇文章,談到了量程轉(zhuǎn)換的初級篇,主要是針對有明確功能用途的使用者,同時要求不高的使用。比較簡單實用。但是在實際使用中,初級篇的內(nèi)容可能滿足不了用戶需求,比如,用戶需要高報警,低報警等功能,如果我們把這些功能集成封裝在一個FB塊或者FC塊中,使用起來會更加方便。為此,本人將以S7-200SMART PLC為原型,詳細介紹模擬量轉(zhuǎn)換的中級內(nèi)容,讀者可以依葫蘆畫瓢,套用在其他PLC上。僅供參考,歡迎指正。 模擬量轉(zhuǎn)換 中級篇 一、課程設(shè)計 本課程詳細講解了S7-200SMART系列模擬量一般轉(zhuǎn)換。在此基礎(chǔ)上新增高報警、低報警功能。 注:本程序以S7-200SMART系列PLC為原型,該系列PLC的局部存儲器有限制,因此程序中未加高高報警和低低報警的相關(guān)功能。讀者可以根據(jù)實際情況,依葫蘆畫瓢,在其他PLC上加上該功能。 二、課程內(nèi)容 在S7-200SMART的編程軟件中,沒有專門用于模擬量量程轉(zhuǎn)換的功能塊,要實現(xiàn)將模擬量模塊通道采集上來數(shù)據(jù)轉(zhuǎn)換為實際工程中的工程量:如0~10MPa。這需要工程師自己做一個量程轉(zhuǎn)換的功能。通常,為了引用的方便,習(xí)慣的把量程轉(zhuǎn)換這樣的功能做出一個子程序,并賦予相應(yīng)的參數(shù),這樣就可以多次方便的對該功能的調(diào)用。 三、S7-200SMART模擬量卡通道描述 1、信號類型:電壓信號或者電流信號,二者選其一; 2、信號范圍:-10v~+10v或者0~20mA; 3、通道極性:雙極性和單極性; 4、極性取值:雙極性取值:-27648~27648;單極性取值:0~27648; 四、程序設(shè)計 在實際工程運用中,我們所常用的模擬量信號為電流信號,信號范圍為4~20mA。本課程設(shè)計以電流信號4~20mA為例子來設(shè)計程序。 因此,在S7-200SMART中0~20mA信號對應(yīng)的取值為0~27648,要將該取值轉(zhuǎn)換為4~20mA時對應(yīng)的取值范圍為:5530~27648。 設(shè):輸入變量為:IN; 數(shù)據(jù)類型:整型 輸出變量為:OUT; 數(shù)據(jù)類型:浮點型 輸入最小值:Imin; 數(shù)據(jù)類型:浮點型(為了簡化程序,輸入時帶上小數(shù),如5530.0即可) 輸入最大值:Imax; 數(shù)據(jù)類型:浮點型(為了簡化程序,輸入時帶上小數(shù),如27648.0即可) 輸出最小值:Omin; 數(shù)據(jù)類型:浮點型 輸出最大值:Omax; 數(shù)據(jù)類型:浮點型 高報設(shè)定:SP_H; 數(shù)據(jù)類型:浮點型 低報設(shè)定:SP_L; 數(shù)據(jù)類型:浮點型 輸出高報:ALM_H; 數(shù)據(jù)類型:布爾型 輸出低報:ALM_L; 數(shù)據(jù)類型:布爾型 計算公式:由線性變換公式得: 公式1 從上述公式并結(jié)合實際工程中的應(yīng)用,在軟件編程中將會使用到的功能塊有: 減法塊、整型轉(zhuǎn)化為雙整型塊、雙整型轉(zhuǎn)浮點型塊、浮點數(shù)乘法塊、浮點數(shù)除法塊,浮點型加法塊。 五、程序編寫 1、利用公式①編寫程序 (1)過程解析:輸入變量IN:將輸入變量轉(zhuǎn)換為雙整型數(shù)據(jù),結(jié)果存放在OUT1中,數(shù)據(jù)類型為雙整型;將OUT1變量轉(zhuǎn)換為實型數(shù)據(jù)存放在變量OUT2中,數(shù)據(jù)類型為實型;將變量OUT2減去Imin結(jié)果存放在OUT3中,數(shù)據(jù)類型為實型;將Omax減去Omin結(jié)果存放在OUT4中,數(shù)據(jù)類型為實型;將OUT3乘以O(shè)UT4結(jié)果存放在變量OUT5中,數(shù)據(jù)類型為實型數(shù)據(jù);將Imax減去Imin的結(jié)果存放在OUT6中,數(shù)據(jù)類型為實型; OUT5除以O(shè)UT6的結(jié)果存在OUT7中,數(shù)據(jù)類型為實型數(shù)據(jù);將OUT7加上Omin的結(jié)果才能存放在OUT中,數(shù)據(jù)類型為實型;OUT為工程單位所需的數(shù)值。 OUT值大于等于高報設(shè)定值SP_H時,輸出高報ALM_H為1;OUT值小于等于低報警設(shè)定值SP_L時,輸出低報ALM_L為1。 在程序編寫過程中,為了保證程序執(zhí)行的可行性和安全性,設(shè)置定數(shù)值時需要保證以下注意事項: ①Imin小于Imax;Omax大于等于Omin; ②SP_H大于等于SP_L; 注明:實型數(shù)據(jù)和浮點型數(shù)據(jù)是一個意思,占用的地址空間和數(shù)據(jù)格式相同。本程序旨在設(shè)計一個工程單位量程轉(zhuǎn)換子程序,可以在主程序中進行調(diào)用,同時使用于西門子PLC全系列。 (2)程序編寫 程序 六、程序結(jié)論 在編寫該系列PLC程序時,如果是子程序同時定義的是局部變量,要主要局部地址的限制,如果在做程序設(shè)計時,變量過多,會在編寫程序是造成調(diào)用局部變量出錯,因為在建立局部變量是,系統(tǒng)會自動為局部變量分配局部地址。對S7-200SMART系列的PLC,局部存儲器地址范圍:LB0~LB63。 |
|