基于plc的流量計(jì)量的應(yīng)用
1 引言
本文引用地址:http://www.ex-cimer.com/article/160945.htm目前,plc(可編程邏輯控制器)已經(jīng)廣泛應(yīng)用于鋼鐵、石油、化工、電力、建材、機(jī)械制造、汽車、輕紡、交通運(yùn)輸、環(huán)保及文化娛樂(lè)等各個(gè)行業(yè)。它具有高可靠性、抗干擾能力強(qiáng)、功能強(qiáng)大、靈活、易學(xué)易用、體積小、重量輕、價(jià)格便宜的特點(diǎn),在流量計(jì)量方面也有著廣泛的用途,在用于流量累積時(shí)又有其編程的獨(dú)特之處。下面進(jìn)行詳細(xì)的分析和論述,包括在西門子s7-200 cpu上編程的例子。
流量計(jì)輸出的信號(hào)一般是脈沖信號(hào)或4-20ma電流信號(hào),這兩種信號(hào)輸出的都是瞬時(shí)流量(也有用繼電器輸出累積量信號(hào),原理一樣,不再贅述),我們的目的是在plc中計(jì)算和顯示瞬時(shí)流量值和計(jì)算累積量值,當(dāng)輸入信號(hào)是脈沖信號(hào)時(shí),在計(jì)算瞬時(shí)流量的時(shí)候,必須按照嚴(yán)格的時(shí)間間隔計(jì)算才能保證瞬時(shí)流量的準(zhǔn)確性。因此,計(jì)算瞬時(shí)流量的時(shí)候必須用定時(shí)中斷來(lái)進(jìn)行,而且,在plc系統(tǒng)中只能運(yùn)行這一個(gè)中斷程序,不允許再產(chǎn)生其它中斷(即使是低優(yōu)先級(jí)的中斷也不允許運(yùn)行),以防止干擾定時(shí)中斷的時(shí)間間隔的準(zhǔn)確性,計(jì)算瞬時(shí)流量就是將這個(gè)時(shí)間段的累計(jì)脈沖個(gè)數(shù)換算成累計(jì)流量,再除以時(shí)間就是瞬時(shí)流量。對(duì)于4-20ma輸入只需按照其對(duì)應(yīng)的量程進(jìn)行換算就可以直接得到瞬時(shí)流量,而累積流量就是將每個(gè)時(shí)間段內(nèi)的累積流量累加起來(lái),在實(shí)際使用plc編程的過(guò)程中必須注意以下幾個(gè)問(wèn)題:
(1) 輸入脈沖頻率范圍是否超出plc的接收范圍;
(2) plc高速計(jì)數(shù)器在達(dá)到最大計(jì)數(shù)值時(shí)如何保證計(jì)算正確;
(3) 如何保證定時(shí)中斷不受干擾;
(4) 如何避免計(jì)算累積量的誤差;
(5) 累積量的最大累積位數(shù);
(6) 如何復(fù)位累積量。
下面就最關(guān)鍵的2、4、6問(wèn)題進(jìn)行詳細(xì)的敘述,以西門子s7-200 cpu224為例,s7-200的cpu224具有6個(gè)單相最大30khz的高速計(jì)數(shù)器,但plc內(nèi)部沒(méi)有提供相應(yīng)的算法來(lái)計(jì)算頻率,需要使用者自行編程計(jì)算,這就需要在plc高速計(jì)數(shù)器在達(dá)到最大計(jì)數(shù)值時(shí)要保證計(jì)算的正確性。實(shí)際編程時(shí),對(duì)高速計(jì)數(shù)器初始化以后就使之連續(xù)計(jì)數(shù),不再對(duì)其進(jìn)行任何干預(yù),其高速計(jì)數(shù)器的初始化程序如圖1所示(此段程序應(yīng)放到plc第一個(gè)掃描周期執(zhí)行的程序中執(zhí)行)。
圖1 高速計(jì)數(shù)器的初始化程序
評(píng)論