netliuhao
級別: *
精華主題: * 篇
發(fā)帖數(shù)量: * 個
工控威望: * 點(diǎn)
下載積分: * 分
在線時間: (小時)
注冊時間: *
最后登錄: *
查看netliuhao的 主題 / 回貼
樓主  發(fā)表于: 2009-06-23 10:18
[轉(zhuǎn)帖]S7-200工程量轉(zhuǎn)換的方法
1、    基本概念

我們生活在一個物質(zhì)的世界中。世間所有的物質(zhì)都包含了化學(xué)和物理特性,我們是通過對物質(zhì)的表觀性質(zhì)來了解和表述物質(zhì)的自有特性和運(yùn)動特性。這些表觀性質(zhì)就是我們常說的質(zhì)量、溫度、速度、壓力、電壓、電流等用數(shù)學(xué)語言表述的物理量,在自控領(lǐng)域稱為工程量。這種表述的優(yōu)點(diǎn)是直觀、容易理解。在電動傳感技術(shù)出現(xiàn)之前,傳統(tǒng)的檢測儀器可以直接顯示被測量的物理量,其中也包括機(jī)械式的電動儀表。

2、標(biāo)準(zhǔn)信號

在電動傳感器時代,中央控制成為可能,這就需要檢測信號的遠(yuǎn)距離傳送。但是紛繁復(fù)雜的物理量信號直接傳送會大大降低儀表的適用性。而且大多傳感器屬于弱信號型,遠(yuǎn)距離傳送很容易出現(xiàn)衰減、干擾的問題。因此才出現(xiàn)了二次變送器和標(biāo)準(zhǔn)的電傳送信號。二次變送器的作用就是將傳感器的信號放大成為符合工業(yè)傳輸標(biāo)準(zhǔn)的電信號,如0-5V、0-10V或4-20mA(其中用得最多的是4-20mA)。而變送器通過對放大器電路的零點(diǎn)遷移以及增益調(diào)整,可以將標(biāo)準(zhǔn)信號準(zhǔn)確的對應(yīng)于物理量的被檢測范圍,如0-100℃或10-100℃等等。這是用硬件電路對物理量進(jìn)行數(shù)學(xué)變換。中央控制室的儀表將這些電信號驅(qū)動機(jī)械式的電壓表、電流表就能顯示被測的物理量。對于不同的量程范圍,只要更換指針后面的刻度盤就可以了。更換刻度盤不會影響儀表的根本性質(zhì),這就給儀表的標(biāo)準(zhǔn)化、通用性和規(guī);a(chǎn)帶來的無可限量的好處。

3、數(shù)字化儀表

到了數(shù)字化時代,指針式顯示表變成了更直觀、更精確的數(shù)字顯示方式。在數(shù)字化儀表中,這種顯示方式實(shí)際上是用純數(shù)學(xué)的方式對標(biāo)準(zhǔn)信號進(jìn)行逆變換,成為大家習(xí)慣的物理量表達(dá)方式。這種變換就是依靠軟件做數(shù)學(xué)運(yùn)算。這些運(yùn)算可能是線性方程,也可能是非線性方程,現(xiàn)在的電腦對這些運(yùn)算是易如反掌。

4、信號變換中的數(shù)學(xué)問題

信號的變換需要經(jīng)過以下過程:物理量-傳感器信號-標(biāo)準(zhǔn)電信號-A/D轉(zhuǎn)換-數(shù)值顯示。

聲明:為簡單起見,我們在此討論的是線性的信號變換。同時略過傳感器的信號變換過程。

假定物理量為A,范圍即為A0-Am,實(shí)時物理量為X;標(biāo)準(zhǔn)電信號是B0-Bm,實(shí)時電信號為Y;A/D轉(zhuǎn)換數(shù)值為C0Cm,實(shí)時數(shù)值為Z。

如此,B0對應(yīng)于A0,Bm對應(yīng)于Am,Y對應(yīng)于X,及Y=f(X)。由于是線性關(guān)系,得出方程式為Y=(BmB0)*(XA0)/(AmA0)+B0。又由于是線性關(guān)系,經(jīng)過A/D轉(zhuǎn)換后的數(shù)學(xué)方程Z=f(X)可以表示為Z=(CmC0)*(XA0)/(AmA0)+C0。那么就很容易得出逆變換的數(shù)學(xué)方程為X=(AmA0)*(ZC0)/(CmC0)+A0。方程中計(jì)算出來的X就可以在顯示器上直接表達(dá)為被檢測的物理量。

5、PLC中逆變換的計(jì)算方法

以S7200和4-20mA為例,經(jīng)A/D轉(zhuǎn)換后,我們得到的數(shù)值是6400-32000,及C0=6400,Cm=32000。于是,X=(AmA0)*(Z6400)/(320006400)+A0。

例如某溫度傳感器和變送器檢測的是10-60℃,用上述的方程表達(dá)為X=70*(Z6400)/2560010。經(jīng)過PLC的數(shù)學(xué)運(yùn)算指令計(jì)算后,HMI可以從結(jié)果寄存器中讀取并直接顯示為工程量。
設(shè)plc輸入植為AIW,實(shí)際顯示的溫度是X,溫度比例系數(shù)(溫度的刻度值);溫度變化范圍是下限A1,上限A2。、
演化計(jì)算方法:溫度刻度值Y=(32000—6400)/(A2—A1)
         AIW=溫度顯示值X * 溫度刻度值Y    +6400
         AIW—6400=溫度顯示值X * 溫度刻度值Y
         溫度顯示值X =(AIW—6400)/ 溫度刻度值Y
         將數(shù)值代入公式
則X=(AIW—6400)*(A2—A1)/25600+A1

6400的由來:因傳感器是0mA—20Ma, plc輸入值范圍是0—32000,所以每mA的刻度值是32000/20mA(也就是1600);但大部分傳感器實(shí)際是4mA—20mA(4mA下沒有電流值),所以要先預(yù)留出4mA的電流值6400


用同樣的原理,我們可以在HMI上輸入工程量,然后由軟件轉(zhuǎn)換成控制系統(tǒng)使用的標(biāo)準(zhǔn)化數(shù)值。

在S7200中,(Z6400)/25600的計(jì)算結(jié)果是非常重要的數(shù)值。這是一個0-1.0(100%)的實(shí)數(shù),可以直接送到PID指令(不是指令向?qū)В┑臋z測值輸入端。PID指令輸出的也是0-1.0的實(shí)數(shù),通過前面的計(jì)算式的反計(jì)算,可以轉(zhuǎn)換成6400-32000,送到D/A端口變成4-20mA輸出。

以上講述的是PLC中工程量轉(zhuǎn)換的基本方法,程序的編寫則因人、因事而異。但是萬變不離其衷。如果大家感興趣,我可以給出自己編寫的程序供大家參考,同時也希望各位網(wǎng)友不吝賜教、互相交流

這是我稍加修改后的帖子,希望能對和我一樣的新人有所幫助。
ywangrui
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 91 個
工控威望: 265 點(diǎn)
下載積分: 775 分
在線時間: 49(小時)
注冊時間: 2009-03-02
最后登錄: 2021-08-15
查看ywangrui的 主題 / 回貼
1樓  發(fā)表于: 2009-06-24 09:08
謝謝樓主,學(xué)習(xí)一下