魏雅,杜云
(陜西工業(yè)職業(yè)技術(shù)學(xué)院陜西咸陽712000)
工業(yè)控制是計(jì)算機(jī)的一個(gè)重要應(yīng)用領(lǐng)域,隨著微機(jī)測(cè)量和控制技術(shù)的迅速發(fā)展與廣泛應(yīng)用,以單片機(jī)為核心的溫度采集與控制應(yīng)用系統(tǒng)的研發(fā)與應(yīng)用在很大程度上提高了生產(chǎn)生活中對(duì)溫度的控制水平[1],并用在不同的工業(yè)控制中。那么在溫度控制應(yīng)用系統(tǒng)中如何提高抗干擾能力,以使其在不同的惡劣環(huán)境下更好的服務(wù),本文就基于單片機(jī)的溫度控制抗干擾問題加以討論,以提高溫度控制系統(tǒng)的廣泛應(yīng)用。
本系統(tǒng)是一種以AT89S52單片機(jī)為主控制單元,以DS18B20為溫度傳感器的溫度控制系統(tǒng)。該控制系統(tǒng)可以實(shí)時(shí)采集并存儲(chǔ)相關(guān)的溫度數(shù)據(jù)并記錄當(dāng)前的時(shí)間。如果實(shí)時(shí)監(jiān)測(cè)的溫度超出了設(shè)置的溫度范圍,蜂鳴器進(jìn)行報(bào)警,并通過控制繼電器的通斷進(jìn)行加熱升溫或通過LN298控制風(fēng)扇轉(zhuǎn)動(dòng)進(jìn)行降溫,使之恢復(fù)到設(shè)置的溫度范圍。其主要包括:電源模塊、溫度采集模塊、按鍵處理模塊、實(shí)時(shí)時(shí)鐘模塊、數(shù)據(jù)存儲(chǔ)模塊、LCD顯示模塊、溫度處理模塊、通訊模塊以及單片機(jī)最小系統(tǒng)。系統(tǒng)總體框架如圖1所示。
圖1 系統(tǒng)設(shè)計(jì)框架Fig.1 The system design framework
干擾的來源[2]是多方面的,主要來自外部和內(nèi)部。外部干擾的主要來源有:電源電網(wǎng)電壓的波動(dòng),高壓設(shè)備和電磁開關(guān)的電磁輻射,大型用電設(shè)備(如電爐、電梯、照明燈、電機(jī)、電焊機(jī))啟停,傳輸電纜的共模干擾等。內(nèi)部干擾則是由系統(tǒng)的結(jié)構(gòu)布局、制造工藝所引入的。如分布電容、分布電感引起的耦合感應(yīng),電磁場(chǎng)輻射感應(yīng),長線傳輸造成的波反射;多點(diǎn)接地造成的電位差引入的干擾;裝置及設(shè)備中各種寄生振蕩引入的干擾以及熱噪聲、閃變?cè)肼?、尖峰噪聲等引入的干擾;甚至元器件產(chǎn)生的噪聲等。
單片機(jī)應(yīng)用系統(tǒng)的抗干擾技術(shù)非常重要,往往一個(gè)應(yīng)用系統(tǒng)抗干擾問題解決不好,設(shè)計(jì)的應(yīng)用系統(tǒng)無法投入生產(chǎn)運(yùn)行。只有解決好系統(tǒng)抗干擾問題,加強(qiáng)抗干擾措施,應(yīng)用系統(tǒng)適應(yīng)現(xiàn)場(chǎng)工業(yè)環(huán)境后,系統(tǒng)在工業(yè)現(xiàn)場(chǎng)才能正常運(yùn)行。單片機(jī)應(yīng)用系統(tǒng)的抗干擾技術(shù)通常有硬件抗干擾和軟件抗干擾兩方面。
對(duì)于單片機(jī)應(yīng)用系統(tǒng)來說,最嚴(yán)重的干擾來源于電源[3]。由于任何電源及輔電線都存在內(nèi)阻、分布電容和電感等,正是這些因素引發(fā)了電源的噪聲干擾。
電源的設(shè)計(jì)取決于系統(tǒng)所要求的供電方式,如是采用單電源方案,還是多電源方案,系統(tǒng)的功耗有無特殊規(guī)定等。在本設(shè)計(jì)中由于系統(tǒng)所選用的單片機(jī)是AT89S52,它的標(biāo)準(zhǔn)工作電壓為+5 V,采集所用的發(fā)光二極管和光敏三極管等電路它們的工作電壓都是+5 V,因此在本設(shè)計(jì)中采用單電源方案,單電源方案的優(yōu)點(diǎn)是系統(tǒng)簡(jiǎn)單、工作可靠。由于溫度控制電路中用到LN298,根據(jù)LN298的要求,需要一個(gè)+2.5~+46 V之間的一個(gè)電壓源,考慮到用電安全及設(shè)計(jì)方便等因素,將其設(shè)定在+15 V。因此我們的目標(biāo)是設(shè)計(jì)出一個(gè)能夠提供+5 V與+15 V的電源,其電路如圖2所示。
由上圖可以得知,此電源電路可以將220 V的交流電轉(zhuǎn)換為+15 V和+5 V直流電進(jìn)行輸出。從原理上看,首先將220 V交流電通過變壓器轉(zhuǎn)換為24 V交流電,然后采用二極管橋式整流電路并通過濾波電容C11對(duì)其進(jìn)行整流,獲得略低于24 V的直流輸出,經(jīng)過C13濾除紋波電壓后進(jìn)入集成穩(wěn)壓源L7815產(chǎn)生+15 V直流電壓提供給外圍電路使用,同時(shí)此電壓又作為MC7805的輸入電壓,通過MC7805產(chǎn)生+5 V電壓供系統(tǒng)邏輯電路和各模塊使用。在交流電源的輸入端,接一個(gè)低通濾波器,它可以濾除電網(wǎng)中高于50 Hz的高次諧波干擾信號(hào),保證50 Hz的工頻信號(hào)無衰減地通過,這種做法的好處是只使用一個(gè)變壓器,降低了成本,同時(shí)還減小了+5 V直流電源的紋波電壓,這樣不會(huì)因某塊穩(wěn)壓電源出故障而使整個(gè)系統(tǒng)遭到破壞。同時(shí)也減少了公共阻抗的相互耦合,大大提高了供電的可靠性,也有利于電源的散熱。
圖2 電源電路Fig.2 Power supply circuit
經(jīng)測(cè)試,整流后的信號(hào)已經(jīng)基本接近直流,最大值與最小值之間只差0.02,滿足要求。
輸入輸出通道是單片機(jī)與外設(shè)、被控對(duì)象進(jìn)行信息交換的渠道。由輸入輸出通道引起的干擾主要由公共地線引發(fā),其次是受到靜電噪聲和電磁波干擾。本系統(tǒng)中用雙絞線作長線傳輸,能有效地抑制共模噪聲及電磁場(chǎng)干擾。對(duì)于溫度傳感器后級(jí)的升溫部分主要采用弱電控制強(qiáng)電,通過對(duì)繼電器導(dǎo)通和斷開的控制,來實(shí)現(xiàn)升溫的效果。繼電器是通常應(yīng)用于自動(dòng)化的控制電路中,它實(shí)際上是用小電流去控制大電流運(yùn)作的一種“自動(dòng)開關(guān)”。故在電路中起著自動(dòng)調(diào)節(jié)、安全保護(hù)、轉(zhuǎn)換電路、抗干擾能力強(qiáng)等作用。本設(shè)計(jì)中采用的繼電氣控制電路如圖3所示。
圖3 繼電器控制電路Fig.3 Control relay circuit
在做印制電路板[3]時(shí),將強(qiáng)、弱電路嚴(yán)格分開,放在不同印制電路扳上。電源線的走向基本與數(shù)據(jù)傳輸方向一致。電源的地線盡量加粗,一般超過3 mm。
由于有的溫度采集的地方環(huán)境較惡劣,各種干擾源很多,如環(huán)境溫度、電磁場(chǎng)等,使單片機(jī)系統(tǒng)采集到的數(shù)據(jù)信號(hào),雖經(jīng)硬件電路的濾波處理,但仍會(huì)混有隨機(jī)干擾。因此,為了提高系統(tǒng)性能,達(dá)到準(zhǔn)確的測(cè)量與控制,一般情況下還需要進(jìn)行數(shù)字濾波[4]。
數(shù)字濾波[5],就是計(jì)算機(jī)系統(tǒng)對(duì)輸入信號(hào)采樣多次,然后用某種計(jì)算方法進(jìn)行數(shù)字處理,以削弱或?yàn)V除干擾噪聲造成的隨機(jī)誤差,從而獲得一個(gè)真實(shí)信號(hào)的過程。這種濾波方法只是根據(jù)預(yù)定的濾波算法編制相應(yīng)的程序,實(shí)質(zhì)上是一種程序?yàn)V波。數(shù)字濾波與硬件電路RC濾波相比有很多優(yōu)點(diǎn):1)無須增加任何硬件設(shè)備,只要在程序進(jìn)入數(shù)據(jù)處理和控制算法之前,附加一段數(shù)字濾波程序即可。2)由于數(shù)字濾波器不需增加硬件設(shè)備,所以系統(tǒng)可靠性高,不存在阻抗匹配問題。3)對(duì)于模擬濾波器,通常是各通道專用的,而對(duì)于數(shù)字濾波器來說,則可多通道共享,從而降低了成本。4)可對(duì)頻率很低(如0.01 Hz)的信號(hào)進(jìn)行濾波,而模擬濾波器由于受電容容量的限制,頻率不可能太低。5)使用靈活、方便,可根據(jù)需要選擇不同的濾波方法或改變?yōu)V波器的參數(shù)。
總之,數(shù)字濾波與硬件濾波器相比優(yōu)點(diǎn)很多,因此得到了普遍的應(yīng)用。常用的數(shù)字濾波方法有:程序判斷濾波(限幅、限速)、中值濾波、算術(shù)平均濾波、加權(quán)平均濾波、滑動(dòng)平均濾波、RC低通數(shù)字濾波和復(fù)合數(shù)字濾波等。本系統(tǒng)采用限幅濾波法。
限幅濾波[6]就是把兩次相鄰的采樣值相減,求其增量的絕對(duì)值,再與兩次采樣所允許的最大差值ΔY進(jìn)行比較,如果小于或等于ΔY,表示本次(第K次)采樣值Y(k)是真實(shí)的,則取Y(k)為有效采樣值;反之,Y(k)是不真實(shí)的,則取上次采樣值Y(k-1)作為本次有效采樣值。
使用時(shí)關(guān)鍵問題是最大允許誤差ΔY的選取。ΔY太大,各種干擾信號(hào)將“乘機(jī)而入”,使系統(tǒng)誤差增大;ΔY太小,又會(huì)使某些有用信號(hào)被“拒之門外”,使單片機(jī)采樣效率變低。因此,門限值ΔY的選取是非常重要的。本系統(tǒng)的門限值ΔY=02H。上一次采樣值存入DATA0單元,本次采樣值存入DATA1單元。
在限幅濾波程序中先求出本次采樣值與上一次采樣值的差值。若差值為正,則直接進(jìn)行限幅判斷;若差值為負(fù),則求絕對(duì)值后再進(jìn)行限幅判斷。限幅判斷采用加法進(jìn)行,即差值+FDH(02H的反碼)。若有進(jìn)位,則超限;若無進(jìn)位,則未超限。
溫度采集時(shí)的具體的限幅濾波程序如下:
ORG 0100H
LIMIT:MOV DATA0,DATA1;本次采樣值送DATA0
ACALL TOAD;本次采樣值存入A
MOV DATA1,A;暫存于DATA1中
CLR C
SUBB A,DATA0;求差值
JNC LIMIT1;若差值為正,轉(zhuǎn)LIMIT1
CPL A;若差值為負(fù),則求絕對(duì)值
INC A
LIMIT1:ADD A,#0FDH;超限判斷
JNC LIMIT2;若不超限,則本次采樣值有效
MOV DATA1,DATA0;若超限,則上次采樣
值送DATA1
LIMIT2:RET
TOAD:;采樣子程序(由于篇幅問題未給出)
:
:
END
DATA0 EQU 60H
DATA1 EQU 61H
以上程序的出口條件是,濾波后的采樣值在A中。
為了提高溫度采集的可靠性,本文綜合從硬件和軟件等采用不同的方法對(duì)硬件電路和采集的溫度信號(hào)進(jìn)行處理,經(jīng)實(shí)踐證明,該方法能夠達(dá)到抗干擾的目的,提高了系統(tǒng)的可靠性,經(jīng)過濾波后,采集到的溫度數(shù)據(jù)最大誤差為0.02,滿足控制系統(tǒng)的要求。
[1] 潘勇,孟慶斌.基于DS18B20的多點(diǎn)溫度測(cè)量系統(tǒng)設(shè)計(jì)[J].電子測(cè)量技術(shù),2008,31(9):91-93.PAN Yong,MENG Qing-bin.Design of multipoint temperature measurement system based on DS18B20[J].Electronic Measurement Technology,2008,31(9):91-93.
[2] 高保泰,張莉娟.濾波技術(shù)在PLC控制飼料配料系統(tǒng)中的應(yīng)用[J].寧夏工程技術(shù),2011,10(2):131-133 GAO Bao-tai,ZHANG Li-juan.The control system of quench press for railway bearing design based on the control of PLC and touch-screen[J].Ningxia Engineering Technology,2011,10(2):131-133.
[3] 張秀紅.單片機(jī)控制系統(tǒng)的抗干擾技術(shù)探討[J].機(jī)電產(chǎn)品開發(fā)與創(chuàng)新,2009,22(1):135-137.ZHANG Xiu-hong.The discussion about dealing withAntiinterference of Single-chip microprocessor[J].The Development of Mechanical and Electrical Products and Innovative,2009,22(1):135-137.
[4] 丁向榮.單片機(jī)應(yīng)用系統(tǒng)軟件中抗干擾技術(shù)的探討[J].電腦編程技巧與維護(hù),2012(10):8-10.DING Xiang-rong.On microcomputer application system software discussion of antijamming technoly[J].Computer Programming Skills and Maintenance,2012(10):8-10.
[5] 郟東耀,楊雷,丁天懷.數(shù)字濾波抗干擾技術(shù)在A/D轉(zhuǎn)換中的應(yīng)用[J].半導(dǎo)體技術(shù),2003(8):120-123.JIA Dong-yao,YANG Lei,DING Tian-huai.Application of anti interference technology of digital filtering in the A/D conversionin[J].Semiconductor Technology,2003(8):120-123.
[6] 張超,楊志義,馬峻巖.限幅濾波算法在WSN數(shù)據(jù)預(yù)處理的中應(yīng)用[J].科學(xué)技術(shù)與工程,2011,11(6):1207-1213 ZHANG Chao,YANG Zhi-yi,MA Jun-yan.Application of amplitude limiting filtering alaoritlm for WSN data preprocessing[J].Science Technology and Engineering,2011,11(6):1207-1213.