林仲景
【摘 要】本文簡要分析了單片機(jī)應(yīng)用系統(tǒng)受干擾的來源及被干擾的后果,分別從軟件、硬件兩方面,探討關(guān)于此系統(tǒng)的抗干擾設(shè)計技術(shù),望能為此領(lǐng)域研究有所借鑒。
【關(guān)鍵詞】單片機(jī);軟件;硬件;抗干擾技術(shù)
單片機(jī)憑借其自身優(yōu)良的性價比,在多領(lǐng)域得到廣泛應(yīng)用。針對通訊、醫(yī)療器械及工業(yè)控制等領(lǐng)域,對單片機(jī)可靠性有著越來越高的要求。而伴隨單片機(jī)應(yīng)用途徑及種類的日益增多,其功能也變得越發(fā)完善,硬件設(shè)計日益簡單。在實驗室中設(shè)計的控制系統(tǒng),其在完成安裝與調(diào)試后,與設(shè)計要求相符,但若將其用于現(xiàn)場,系統(tǒng)經(jīng)常難以正常、穩(wěn)定的工作。造成此狀況的原因有許多,而主要原因使各種電磁干擾與現(xiàn)場環(huán)境復(fù)雜等,因此,應(yīng)重視單片機(jī)應(yīng)用系統(tǒng)的抗干擾技術(shù)設(shè)計。
一、干擾的來源及后果
在各種工業(yè)現(xiàn)場環(huán)境中,干擾乃是以脈沖方式進(jìn)至單片機(jī)系統(tǒng)的,歸結(jié)其渠道,主要有3條,分別為過程通道干擾、供電系統(tǒng)干擾與空間干擾。針對空間干擾來講,在高頻電磁場、大電流及高電壓附近比較多見,多經(jīng)電磁感應(yīng)、靜電感應(yīng)而侵入到系統(tǒng)內(nèi)部;針對供電系統(tǒng)感染而言,其主要通過電源的噪聲干擾所致;而對于過程通道干擾,從本質(zhì)上來講,就是干擾經(jīng)后向或前向通道進(jìn)系統(tǒng)。另外,如果所配置的接地系統(tǒng)運作不可靠,同樣會形成干擾;輸入、輸出線路的絕緣損壞,也易引入干擾。干擾所造成的后果為:(1)增大數(shù)據(jù)采集誤差。若單片機(jī)系統(tǒng)的前向通道有干擾侵入,并且疊加于信號上,便會增大數(shù)據(jù)采集誤差,尤其是前向通道設(shè)置的是小電壓信號輸入的傳感器接口,受干擾現(xiàn)象便會更為嚴(yán)重。(2)程序運行失常。首先,控制狀態(tài)失靈。在整個單片機(jī)系統(tǒng)體系中,因有加入有干擾,因而會增大輸出的誤差,導(dǎo)致邏輯狀態(tài)出現(xiàn)異常性改變,最終造成控制失常。其次,死機(jī)。如果單片機(jī)受到的是強(qiáng)干擾,那么會改變程序計數(shù)器的PC值,進(jìn)而對程序的正常運行造成破壞。(3)系統(tǒng)被控對象出現(xiàn)誤操作。單片機(jī)內(nèi)部程序指針指向了其它方向,運行錯誤程序;在RAM中,部分?jǐn)?shù)據(jù)會被沖亂,或者是一些特殊寄存器的值被異常性改變,使得程序計算出并不準(zhǔn)確的結(jié)果。
二、系統(tǒng)硬件抗干擾設(shè)計
(1)供電系統(tǒng)。其一,避免干擾從電源系統(tǒng)進(jìn)入,可以根據(jù)實際情況,采取交流穩(wěn)壓器,以此來確保供電的整體穩(wěn)定性,避免電源出現(xiàn)欠壓、過壓等情況。另外,還可以運用隔離變壓器,將高頻噪過濾掉,另用低通濾波器,將工頻干擾濾掉。其二,運用開關(guān)電源為系統(tǒng)提供充足功率余量,在主機(jī)部分,可專門設(shè)置穩(wěn)壓電路,還可以采用DC-DC模塊將輸入、輸出供電隔離,最大程度避免各部分之間的干擾。(2)輸入、輸出干擾的抑制。其一,輸入、輸出信號加裝光電耦合器用于隔離,可把前向通道、后向通道與主機(jī)部分之間的電路聯(lián)系部分切斷,這樣便能夠一定程度的預(yù)防干擾進(jìn)至主機(jī)系統(tǒng)。其二,終端阻抗與雙絞線傳輸匹配。當(dāng)數(shù)字信號需要進(jìn)行長線傳輸時,通過雙絞線的利用,能夠較好的抑制噪聲干擾。還可以聯(lián)用于光電耦合器。于接收與發(fā)送信號端,需要設(shè)置有末端電阻,雙絞線需匹配于阻抗。(3)屏蔽。針對易被干擾或會產(chǎn)生干擾的部件,可用金屬盒施加屏蔽,促使干擾電磁波能夠短路接地。(4)提升器件驅(qū)動能力。通常情況下,1個TTL能夠推動10幾個CMOS或者是8個TTL,而1個CMOS則可以推動20多個CMOS或者1~2個TTL。若存在過重的輸出負(fù)載,那么會使輸出電平降低,使電平低于被驅(qū)動器件的輸入門檻電平,進(jìn)而導(dǎo)致系統(tǒng)不穩(wěn)。(5)提升元器件可靠性。首先,運用質(zhì)量好、可靠度高的電子元件,并開展嚴(yán)格、系統(tǒng)化測試與篩選。其次,在實際設(shè)計中,所設(shè)計的元件技術(shù)參數(shù)需有一定余量。最后,提升組裝與印制板質(zhì)量。(6)運用雙機(jī)冗余設(shè)計。對于嚴(yán)格要求控制系統(tǒng)可靠性的場合,可以選用雙機(jī)冗余,這能夠一定橫渡提升系統(tǒng)抗干擾能力。所謂雙機(jī)冗余,從本質(zhì)上來講,即為執(zhí)行同一控制任務(wù),可以由2個單片機(jī)來進(jìn)行,分別是從機(jī)與主機(jī)。通常,主機(jī)控制三總線,并控制整個系統(tǒng),此時,從機(jī)保持待機(jī)狀態(tài),若主機(jī)因某種原因出現(xiàn)誤動作狀況,此時的仲裁器便會立即判別條件,如果認(rèn)定是主機(jī)程序混亂,那么會將主機(jī)總線控制權(quán)及時切斷,喚醒從機(jī),進(jìn)而替代主機(jī),實施處理與控制操作。
三、軟件的抗干擾設(shè)計
(1)數(shù)據(jù)采集誤差的軟件措施。其一,運用軟件濾波算法,可以將從輸入信號干擾而造成的部分輸出控制錯誤給過濾掉。常用方法有中值法、比較舍取法、算數(shù)平均值法等。在實際運用中,究竟選何種方法,須依據(jù)信號實際變化情況,酌情予以選擇。其二,對于那些關(guān)鍵數(shù)據(jù),則可選用軟件冗余技術(shù),也就是給數(shù)據(jù)增加冗余位,檢錯與糾錯數(shù)據(jù)。一般選用的方法為循環(huán)碼校驗、海明碼及奇偶校驗等。(2)程序運行失控的軟件策略。首先,指令冗余。針對MCS-51系列單片機(jī)來講,其多為單字節(jié)指令,如果在其上有出錯的程序,此時出錯的程序便能夠自動轉(zhuǎn)入正規(guī);如果落于多字節(jié)指令的操作數(shù),那么此時的程序便會繼續(xù)出錯,因此,在對程序流向起到關(guān)鍵性作用的指令前,將2條NOP指令插入,恢復(fù)被彈飛的指令。其次,設(shè)置程序指令陷阱。通過設(shè)置軟件陷阱,能夠及時捕獲出錯的程序,且將出錯程序強(qiáng)行引入。在安排軟件陷阱時,可將其設(shè)置在如下地方:①還沒有使用的中斷向量區(qū)。干擾能夠開放沒有使用的中斷,并且將其激活,而通過將軟件陷阱設(shè)置在此些地方,便能夠及時對錯誤中斷進(jìn)行捕獲。②還未曾使用的ROM空間。將陷阱分隔設(shè)置其中,可以捕獲彈飛于此區(qū)域的出錯程序。③表格。將軟件陷阱安裝于EPROM中的表格后,能夠較好的預(yù)防軟件彈飛。④程序區(qū)。針對一般性程序而言,其無法任意安排軟件陷阱,但如在正常程序當(dāng)中,會存在一些跳轉(zhuǎn)指令,而將軟件陷阱設(shè)置在此些指令后,便能夠?qū)楋w至跳轉(zhuǎn)指令的操作數(shù)上的出錯程序捕獲到。
四、結(jié)語
綜上,在整個單片機(jī)應(yīng)用系統(tǒng)中,抗干擾技術(shù)設(shè)計為其重要構(gòu)成,通過軟件與硬件抗干擾技術(shù)的高質(zhì)量、合理化運用,能夠最大限度的避免系統(tǒng)受外界干擾,即使受到外界干擾,但干擾后仍能使系統(tǒng)恢復(fù)至原先正常運行狀態(tài),因而能夠保障系統(tǒng)長久、高質(zhì)量工作。
【參考文獻(xiàn)】
[1]吳興純, 趙金燕, 楊秀蓮,等. 單片機(jī)運用系統(tǒng)的軟件抗干擾技術(shù)研究與分析[J]. 電子設(shè)計工程, 2011, 19(16):34-37.
[2]孫夢穎, 曹俊江. 軟件抗干擾技術(shù)在單片機(jī)系統(tǒng)設(shè)計中的應(yīng)用[J]. 信息與電腦, 2017(11):38-39.
[3]王會海, 曹建, 趙巖. 基于AT89C52單片機(jī)的平板硫化機(jī)測控系統(tǒng)的抗干擾設(shè)計和研究[J]. 制造業(yè)自動化, 2004, 26(6):42-45.