星載單片機(jī)系統(tǒng)抗干擾技術(shù)
摘要:單片機(jī)系統(tǒng)在星載儀器中往往擔(dān)負(fù)著非常重要的任務(wù),由于單片機(jī)對干擾屬于敏感器件,容易受到干擾影響,導(dǎo)致整個系統(tǒng)癱瘓,因此在系統(tǒng)設(shè)計上應(yīng)充分考慮抗干擾問題,以提高系統(tǒng)的可靠性。根據(jù)干擾產(chǎn)生的原因,結(jié)合實(shí)踐,從硬件和軟件兩方面介紹了星載儀器中單片機(jī)系統(tǒng)抗干擾措施。
本文引用地址:http://m.butianyuan.cn/article/80825.htm關(guān)鍵詞:單片機(jī),抗干擾,硬件,軟件
1引言
目前,單片機(jī)系統(tǒng)在星載儀器中擔(dān)負(fù)著非常重要的任務(wù),星載儀器往往處于復(fù)雜的空間環(huán)境之中,存在著大量的干擾源,如高能帶電粒子主要通過單粒子效應(yīng)對單片機(jī)系統(tǒng)構(gòu)成影響,使其發(fā)生單粒子翻轉(zhuǎn)事件,將導(dǎo)致程序走向混亂,使系統(tǒng)無法正常工作。因此,在系統(tǒng)設(shè)計上充分考慮抗干擾設(shè)計,提高系統(tǒng)的可靠性尤為重要。對于單片機(jī)系統(tǒng)而言,干擾有兩種,一是來源于系統(tǒng)外部環(huán)境和其它電氣設(shè)備產(chǎn)生的干擾,通過傳導(dǎo)和輻射等途徑影響單片機(jī)系統(tǒng)正常工作;二是來源于系統(tǒng)內(nèi)部,由系統(tǒng)結(jié)構(gòu)、制造工藝等決定以及內(nèi)部元器件在工作時產(chǎn)生干擾,通過地址、電源線、信號線、分布電容等傳輸,影響系統(tǒng)工作狀態(tài)。單片機(jī)系統(tǒng)抗干擾措施主要從硬件、軟件兩個方面展開避錯、容錯設(shè)計,以提高系統(tǒng)的可靠性。
2干擾產(chǎn)生的原因
2.1干擾源
干擾源是指產(chǎn)生干擾的元件、設(shè)備或信號。產(chǎn)生的干擾包括:
(1)電磁干擾,如繼電器開關(guān)啟動、靜電放電、電網(wǎng)電壓波動等都可能引起不同程度的瞬變浪涌電壓,會造成IC和半導(dǎo)體器件PN結(jié)燒毀、氧化層擊穿等。
(2)人為干擾,如機(jī)械振動、繼電器觸點(diǎn)抖動、元器件安裝和電路板布線引起的電磁耦合、接插件接觸不良、虛焊、放大器自激、電源紋波等。
(3)環(huán)境因素干擾,如噪聲和環(huán)境溫濕度、以及太陽黑子的變化,空間粒子輻射等。
2.2干擾傳輸途徑
干擾對單片機(jī)系統(tǒng)的影響主要通過三種途徑傳輸,包括:
(1)輸入系統(tǒng)。一般情況下,星載儀器的檢測對象往往是微弱物理信號,通過放大的運(yùn)放電路和高精度A/D轉(zhuǎn)換電路組成。如串入干擾,會使輸入的模擬信號失真,數(shù)字信號出錯,從而導(dǎo)致采集的數(shù)據(jù)誤差增大。
(2)輸出系統(tǒng)。一旦受到干擾,將使各輸出信號混亂,不能正常反應(yīng)單片機(jī)系統(tǒng)的真實(shí)輸出。但一般單片機(jī)輸出電路都具有較高的電平,不易受到干擾,需要注意的是其對其他電路的干擾影響。
(3)CPU系統(tǒng)。該干擾主要是由CPU內(nèi)部時鐘和噪聲引起的,它可使單片機(jī)系統(tǒng)總線上的數(shù)字信號錯亂,CPU得到錯誤的地址信號,使程序跑飛或死循環(huán),導(dǎo)致輸出錯誤,并將這個錯誤一直傳遞,造成系統(tǒng)失敗。
2.3敏感器件
在星載儀器單片機(jī)系統(tǒng)中,通常會用到一些如A/D、D/A變換器、弱信號放大器等容易被干擾的器件,也是產(chǎn)生干擾的重要原因。
3單片機(jī)常用抗干擾技術(shù)
抗干擾就是針對干擾產(chǎn)生的性質(zhì)、傳播途徑、侵入位置和侵入形式等,采取相應(yīng)的方法來消除干擾源,抑制傳播途徑,減弱電路或元器件對噪聲干擾的敏感性,使單片機(jī)系統(tǒng)能正常穩(wěn)定地運(yùn)行。
3.1抑制干擾源的干擾作用
針對不同的干擾源采取相應(yīng)的措施,抑制干擾作用。
(1) 繼電器線圈增加續(xù)流二極管,消除斷開線圈時產(chǎn)生的反電動勢干擾。
(2) 在繼電器接點(diǎn)兩端并接火花抑制電路,一般是RC串聯(lián)電路,電阻一般選幾K到幾十K,電容選0.01uF,減少電火花影響。
(3) 盡可能將干擾源(與電機(jī)、繼電器)與敏感器件(單片機(jī))遠(yuǎn)離。
3.2硬件干擾抑制技術(shù)
硬件抗干擾具有效率高的特點(diǎn),只要合理布置與選擇有關(guān)參數(shù),適當(dāng)?shù)挠布垢蓴_措施就能抑制系統(tǒng)的絕大部分干擾。
3.2.1電源抗干擾設(shè)計
單片機(jī)系統(tǒng)對電源噪聲很敏感,電源的通斷、瞬時短路及電網(wǎng)串進(jìn)來的干擾脈沖都會造成單片機(jī)誤動作。主要措施為給電源加濾波電路和穩(wěn)壓器,以減少干擾。
3.2.2屏蔽干擾技術(shù)
在空間環(huán)境中,由于受空間帶電粒子輻射,會造成抗輻射能力較低的器件發(fā)生翻轉(zhuǎn)或鎖定,嚴(yán)重時會使器件失效??刹捎娩X皮或鉭皮遮擋,進(jìn)行屏蔽加固。
星載儀器中,高靈敏的弱信號探測探頭引線應(yīng)用屏蔽線,避免外界信號的干擾。將可能產(chǎn)生電磁脈沖的部件如高壓電源,以及靈敏度較高的部件如前置放大器等用金屬罩屏蔽,以減少干擾。
3.2.3隔離抗干擾技術(shù)
隔離一方面可把外來的干擾通道切斷,從而達(dá)到隔離現(xiàn)場干擾的目的。另一方面可將兩條信號線隔開,使彼此的串?dāng)_盡可能小,常用的隔離方式有光電隔離、變壓器隔離、繼電器隔離等。
a.光電隔離使用光電耦合器來完成,光電耦合器其輸入端和輸出端的電信號是以光為媒介進(jìn)行間接耦合的,因而具有較高的電氣隔離和干擾抑制能力,除此之外它還能起到很好的安全保障作用,因?yàn)樵谳斎胼敵龌芈烽g有很高的耐壓值。
b.脈沖變壓器可實(shí)現(xiàn)數(shù)字信號隔離,脈沖變壓器匝數(shù)少,且一次和二次繞組分別纏繞在鐵氧體磁心的兩側(cè),分布電容僅有幾pF,所以可作為脈沖信號的隔離器件。
c.繼電器的線圈和觸點(diǎn)之間沒有電氣上的聯(lián)系,故可利用繼電器的線圈接受電氣信號,利用觸點(diǎn)發(fā)送和輸出信號,避免弱電和強(qiáng)電信號間的直接接觸,實(shí)現(xiàn)干擾隔離。
3.2.4印制板PCB抗干擾設(shè)計
隨著技術(shù)的飛速發(fā)展,PCB密度越來越高,PCB設(shè)計好壞對單片機(jī)系統(tǒng)影響很大。
a.設(shè)計時盡量選擇多層PCB板,其中一層為地層,一層為電源層,這種選擇能形成良好的退耦電路,并加入地線的屏蔽,可防止產(chǎn)生低電位差和元件之間的耦合。
b.晶振與單片機(jī)引腳盡量靠近,引線越短越好,用地線把時鐘區(qū)隔離起來,晶振外殼接地并固定。
c.電源線,地線應(yīng)盡量加粗,除減小壓降外,還能降低耦合噪聲。
d.TTL,CMOS器件的地線要呈輻射網(wǎng)狀,避免環(huán)形。兩種器件接口應(yīng)考慮電平匹配。
e.印制板布線時,將微弱信號電路與易產(chǎn)生噪聲污染的電路分開布線,信號線與強(qiáng)電控制線路、電源線路分開走線,且相互間保持一定的距離。配線時應(yīng)區(qū)分交流線、直流穩(wěn)壓電源線、數(shù)字信號線、模擬信號線、數(shù)字地、模擬地等。配線間隔越大,配線越短,則噪聲越小。信號線應(yīng)盡量遠(yuǎn)離高壓線路,如受條件限制,信號線不能與高壓線離得足夠遠(yuǎn),就要采用信號線接電容等各種抑制電磁感應(yīng)噪聲的措施。用地線將數(shù)字與模擬區(qū)隔離,數(shù)字地與模擬地分離,最后在一點(diǎn)接于電源地。交流地和信號地不能共用。
f.布線時避免90°折線,減少高頻噪聲發(fā)射。盡量減少回路環(huán)面積,以降低感應(yīng)噪聲。
g.元件面與焊接面應(yīng)采用垂直、斜交或彎曲走線,避免相互平行以減小寄生耦合,避免相鄰導(dǎo)線平行段過長。
h.單片機(jī)和大功率器件要單獨(dú)接地,大功率器件盡可能放在電路板邊緣。
i.信號頻率過高的信號線,要加終端匹配電阻。為提高干擾抑制能力,探測器連接電纜可采用金屬網(wǎng)狀屏蔽線抑制靜電感應(yīng),采用雙絞屏蔽線抑制電磁感應(yīng)。
j.高頻電路應(yīng)就近多點(diǎn)接地,以避免地線間耦合,低頻電路應(yīng)一點(diǎn)接地,以減少地線造成的地環(huán)路。
3.2.5EFT抗干擾技術(shù)
振蕩電路的正弦波信號受到外界干擾時,其波形上會疊加一些毛刺。以施密特電路對其整形時,這種毛刺會成為觸發(fā)信號干擾正常的時鐘信號,交替使用施密特電路和RC濾波可使這種毛刺不起作用,這就是EFT抗干擾技術(shù)。
3.2.6減少敏感元件的干擾性
a.根據(jù)電路參數(shù)選擇合理器件,盡量選用集成度高、溫漂小、抗干擾性能好以及功耗小的器件。
b.對單片機(jī)閑置的I/O口,不能懸空,應(yīng)接地或電源。其它IC的閑置端,在不改變系統(tǒng)邏輯的情況下,接地或電源。
c.在速度能滿足要求的前提下,盡量降低單片機(jī)晶振和選用低速數(shù)字電路。
d.電路板上每個IC都要在VCC與地間并接一個0.01uF~0.1uF去耦電容,起到濾波的作用。注意電容的布線,連線應(yīng)靠近電源端并盡量粗短,否則,等于增大了電容的等效串聯(lián)電阻,會影響濾波效果。
e.對單片機(jī)使用電源監(jiān)控和看門狗電路。
f.單片機(jī)的標(biāo)準(zhǔn)退耦電路是一只100uF的電容并聯(lián)一只0.1uF的高頻電容,這兩只電容應(yīng)盡量靠近V/V的地方,以減少環(huán)路效應(yīng)。
g.單片機(jī)數(shù)據(jù)總線、地址總線和控制總線是單片機(jī)與外界進(jìn)行信息交換的唯一通道,為提高總線的可靠性,可為總線配置總線驅(qū)動器,以及配置總線上拉電阻。
3.3軟件干擾抑制技術(shù)
硬件抗干擾措施往往并不能完全消除干擾,單片機(jī)系統(tǒng)仍會受到侵害,軟件抗干擾技術(shù)可進(jìn)一步減小各種干擾的影響。
3.3.1指令冗余技術(shù)
以MCS-51為例,CPU取指令過程是先取操作碼,再取操作數(shù),當(dāng)CPU受到干擾后,往往將一些操作數(shù)當(dāng)作操作碼來執(zhí)行,引起程序混亂。為了使“跑飛”的程序迅速回到正軌,應(yīng)多用單字節(jié)指令,并在關(guān)鍵地方插入兩個字節(jié)以上的單字節(jié)NOP指令,通常是在雙字節(jié)和3字節(jié)指令之后插入。以及在一些對程序流向起決定作用的指令(如RET、RETI、LCALL、SJMP等)前插入兩條NOP指令,以保證程序迅速納入正軌,或?qū)⒂行е噶钪貙?,保證指令正確執(zhí)行,這便是指令冗余。
3.3.2軟件陷阱技術(shù)
當(dāng)程序“跑飛”到非程序區(qū)時,指令冗余將無法解決問題。此時可設(shè)置軟件陷阱,截斷跑飛的程序,將其引向指定位置,在進(jìn)行出錯處理。如MCS-51,假設(shè)出錯處理程序的入口地址為ERROR,可在適應(yīng)的地方如下設(shè)置指令:
NOP
NOP
LJMP ERROR
軟件陷阱主要安排在未使用的中斷區(qū),未使用的程序空間以及非程序空間,程序運(yùn)行區(qū)及中斷服務(wù)程序區(qū)。
3.3.3軟件看門狗技術(shù)
當(dāng)失控的程序進(jìn)入“死循環(huán)”,冗余指令和軟件陷阱也無能為力,通常采用“看門狗”技術(shù)。“看門狗”技術(shù)分為硬件和軟件兩種,這里主要介紹軟件看門狗。如MCS-51,它有兩個定時器T0和T1,可用這兩個定時器對主程序進(jìn)行監(jiān)控。用定時器T0監(jiān)視定時器T1,用定時器T1監(jiān)視主程序,主程序監(jiān)視定時器T0,“看門狗”根據(jù)程序運(yùn)行指定時間間隔內(nèi)未進(jìn)行操作,來判斷程序運(yùn)行出錯。采用這種環(huán)形結(jié)構(gòu)的軟件“看門狗”,具有良好的抗干擾性能。
3.3.4軟件濾波技術(shù)
干擾對單片機(jī)的輸入會造成輸入信號瞬間采樣的誤差或誤讀,為消除干擾影響,可采用軟件濾波方法。常用的軟件濾波方法有:
a.中位值平均濾波法。對重要信號進(jìn)行多次N個采樣,去除最大和最小值,取剩余的N-2個A/D轉(zhuǎn)換值的平均值。此方法可消除由于偶然出現(xiàn)的脈沖干擾引起的采樣值偏差。
b.程序判斷濾波法。根據(jù)經(jīng)驗(yàn)確定出兩次采樣的最大偏差值⊿Y,若兩次采樣信號相減數(shù)值大于⊿Y,表明為干擾信號,應(yīng)去除。用上次采樣值與本次采樣值比較,若小于或等于⊿Y,表明沒有受到干擾,此時采樣值有效,這種方法可濾去隨機(jī)干擾和由傳感器不穩(wěn)定引起的誤差。
c.遞推平均濾波法。把連續(xù)N個采樣值看成一個隊列,隊列的長度固定,每次采到的新值放入隊尾,去掉原隊首數(shù)據(jù),將隊列中N個數(shù)據(jù)進(jìn)行算術(shù)平均,可獲得新的濾波結(jié)果。本方法對周期性干擾有良好的抑制作用。
3.3.5輸出端口抗干擾技術(shù)
由于外圍器件動作時,常會產(chǎn)生電磁脈沖,對輸出信號造成影響。對輸出通道的干擾,可采用在程序中周期性的添加輸出端口刷新指令的方法,以降低干擾。在程序指定RAM單元,存儲輸出口當(dāng)時應(yīng)處的狀態(tài),在程序運(yùn)行時根據(jù)這些RAM單元的內(nèi)容刷新I/O口。也可采用多次重復(fù)寫控制命令的方式,重復(fù)周期盡量短,這樣輸出設(shè)備得到一個干擾還來不及響應(yīng)時,正確信號到來,可以防止誤動作的發(fā)生。
4結(jié)束語
抗干擾技術(shù)是單片機(jī)系統(tǒng)設(shè)計過程中重要的環(huán)節(jié),合理的使用軟件、硬件抗干擾技術(shù),可使系統(tǒng)最大限度地避免干擾的產(chǎn)生和使系統(tǒng)恢復(fù)正常,以保證系統(tǒng)穩(wěn)定的工作。在以往的星載儀器設(shè)計中,根據(jù)系統(tǒng)實(shí)際情況,均采用了上述相應(yīng)的幾種方法相結(jié)合的抗干擾措施,實(shí)踐證明,上述抗干擾方法是有效的。航天工程要求高可靠、高質(zhì)量的產(chǎn)品,因此只有針對不同情況,采取相應(yīng)措施,將干擾影響降到最低,才能保證儀器長期穩(wěn)定、可靠、安全的運(yùn)行。
參考文獻(xiàn)
[1]王幸之,王雷等. 單片機(jī)應(yīng)用系統(tǒng)抗干擾技術(shù)[M]. 北京:北京航空航天大學(xué)出版社,2001.
[2]何立民. 單片機(jī)應(yīng)用系統(tǒng)設(shè)計[M]. 北京:北京航空航天大學(xué)出版社,1998.11.
[3]王立瑩,晉小莉. 微型計算機(jī)系統(tǒng)抗干擾技術(shù)[J]. 現(xiàn)代電子技術(shù),2006,(5):108-110.
[4]張軍,彭宣戈. 嵌入式系統(tǒng)硬件抗干擾技術(shù)[J]. 微計算機(jī)信息,2006,5(2):16-17.
評論