摘 要:隨著計算機技術的不斷發展,單片機技術在當今的信息社會中起著越來越重要的作用。然而,由于其工作環境大多比較惡劣,經常會受到嚴重的干擾,影響其穩定性及可靠性,嚴重時會導致系統癱瘓。所以,提高其抗干擾的能力非常重要。文章分析了單片機干擾的種類,從硬件及軟件兩方面給出了具體的對策。
關鍵詞:單片機;干擾;對策
中圖分類號:TP368.12 文獻標識碼:A 文章編號:1674-7712 (2012) 12-0109-01
伴隨著計算機和電子技術的飛速發展,進一步促進了微電腦控制技術普及與快速發展。單片機控制系統是自動化系統的核心組成部分,現已被廣泛應用于現代工業和各種家用電器及小型設備中。作為工業控制裝置的核心,單片機本身就具有一定的抗干擾能力,但由于各種工業控制設備的工作環境及場所往往比較差,周圍存在大量的干擾源,對系統的可靠性和安全性構成嚴重威脅,造成很多工控設備不能正常工作。因此,單片機應用系統的抗干擾問題,在設計中已成為一個重要的課題。
一、單片機的主要干擾源
(一)電源線的高頻干擾。在實際操作過程中,晶閘管的通斷,強電設備、高頻電源及交流電源產生的電火花甚至雷電,都能夠產生電磁波,而這些電磁波就成為電磁干擾的噪聲來源。如果距離較近,電磁波就會通過分布電容和電感耦合到信號回路而產生電磁干擾;如果距離較遠,就會以輻射的形式形成干擾。
(二)感性負載的瞬變噪聲干擾。在單片機系統中,一些常用的元件及設備,比如:電動機、繼電器、電磁閥等都有較大電感量,如果電感回路的電流被切斷,就會產生非常大的反電勢,從而形成噪聲干擾。這種干擾除了能產生電磁場外,甚至可以擊穿電路中晶體管。
(三)噪聲電壓干擾。直流電源的回路,其負載的變化也能引起電源的噪聲,比如:數字電路中從一個狀態轉為另一種狀態時,會在電源線上形成一個很大的尖峰電流,產生瞬變噪聲電壓。
(四)其他因素的干擾。除了以上幾種常見的干擾源以外,無線電設施的射頻、數字電路本身門電路頻繁的通斷、單片機內的晶振電路、各種電子設備開關通斷時急劇變化的電流等等也都是單片機重要的干擾源。
二、硬件抗干擾的對策
單片機控制系統受到干擾后,要使其能可靠地工作,就必須切斷外界干擾源,使其不能進入到單片機控制系統。硬件抗干擾是一種主動抗干擾措施,主要包括下面幾個方面:
(一)接地。對于低頻電路,其地線盡量用單點并聯接地,對于高頻電路,盡量用多點串聯接地。同時,加粗接地線條,使通過印刷電路板上的允許電流達到3倍,與此同時,使數據傳遞的方向與電源線及地線的走向保持一致,可以增強抗噪聲的能力。盡量使用45度的折線,不使用90度折線,以此減少高頻信號對外的發射及耦合,減少互感的振蕩。
(二)屏蔽。使用金屬盒、金屬網或者金屬板構成的屏蔽體,可以有效對付電磁波的干擾。屏蔽體通過反射及吸收的方式削弱電磁波,形成對電磁波的屏蔽。選用高導磁材料做成的屏蔽體防止低頻電磁波的干擾,這樣當電磁波經屏蔽體的低磁阻磁路通過,不會影響到屏蔽體內的電路。一般采用銅、鋁、鋼等材料作屏蔽體來屏蔽電場或輻射場,選擇坡莫合金、磁鋼等材料作屏蔽體,屏蔽低頻磁場,選擇銅、鋁等導電率高的材料來屏蔽高頻磁場。另外,還要注意屏蔽體的一點接地問題。
(三)隔離。隔離主要包括物理和光電隔離兩種方式。物理隔離是指對小信號低電平的隔離,其信號連線要盡量遠離高電平大功率的導線。在同一設備內部時,要將這兩類導線分開走線。當遠距離走線時,要把功率電纜和信號電纜分開,保持一定的距離,甚至可以使用鋼管把它們分別套起來,以此增加屏蔽的效果。
(四)濾波。利用電容、電感等儲能元件可以抑制因負載變化而產生的噪聲電壓,可在電源線的接入端并聯兩只50μF和0.01μF的電容,大電容用來抑制電源噪聲中的低頻分量,小電容用來抑制電源噪聲中的高頻分量,為了取得更好的效果可在電容的前面加上一個電感。
(五)抑制反電勢。在單片機系統中,對于負載較大電感量的元件或設備,為抑制其產生的反電勢,可以在線圈的兩端并聯電容、電阻、穩壓管和二極管。線圈通直流電的時候,可以并聯二極管和穩壓管或者電容和電阻組成的旁路;當線圈通交流電的時候,可以并聯電阻和電容組成的旁路。
三、軟件抗干擾的對策
(一)開機自檢。開機自檢程序通常包括對RAM、ROM、I/O接口狀態等的檢測。在程序編制中,可將RAM或ROM區中重要內容分區存放,在程序運行的初始或中間過程中經常對這些數據進行比較檢查,如發現數據出錯,則重寫這些數據。
(二)軟件陷阱。在程序存儲器的未使用區域中,加上若干條空操作和無條件跳轉指令,無條件跳轉指令指向復位入口地址。如果程序跳轉到這些未用區域,就通過強行執行無條件跳轉指令,轉到復位入口地址。
(三)指令冗余。指令冗余的一般做法是在十幾條正常的指令后填充2-3個NOP空指令,尤其是在一些跳轉和子程序調用指令的前面,加上幾條NOP空指令可以對程序的正確流向起到一定的保護作用。
(四)軟件濾波。為了提高系統對數據采集的精度,可使用軟件濾波的方法。此方法可以減少系統隨機干擾對數據采集的影響,減少錯誤的概率,對周期性的干擾有比較好的效果。
(五)軟件看門狗。軟件看門狗一般要占用單片機系統中的定時器。在主程序中,根據定時器的溢出周期對定時器進行初始化,一旦程序受到干擾跑飛,則在中斷子程序里設置一條出錯跳轉指令,使程序從頭執行。
(六)數據備份。為了提高系統的可靠性,可以采用數據備份的方法。輸入單片機中的重要數據,可使用掉電保護的措施,但這些數據仍受到干擾的影響,不排除個別數據造成破壞。此時,可對重要數據進行備份,實行自我檢查和恢復。
四、結束語
單片機應用系統中,系統的可靠性越來越受到關注。在實際應用中,要結合各種類型的單片機控制系統的特點、被控的對象的性質以及現場工業環境,充分考慮各種因素的影響,在設計中采取必要的硬件和軟件抗干擾措施,使系統既滿足既定的要求,也能保證其長期、穩定、可靠的工作。
參考文獻:
[1]秦臻,田宏偉.單片機應用系統電磁干擾技術研究[J].機械管理開發,2011,5
[2]魏澤鼎,韓提文.單片機系統干擾研究[J].機械與電子,2008,5