李輝
(新奧科技發(fā)展有限公司,河北廊坊,065001)
單片機(jī)作用系統(tǒng)的軟件抗干擾技術(shù)研究與分析
李輝
(新奧科技發(fā)展有限公司,河北廊坊,065001)
單片機(jī)小巧、靈活、廉價、功能強(qiáng)大、使用方便在工作中被得到普遍應(yīng)用,成為當(dāng)今電子行業(yè)控制設(shè)備的流行產(chǎn)品。如此受歡迎也對單片機(jī)的可靠度產(chǎn)生更高的要求,影響可靠力的其中一個要素便是抗干擾程度。單片機(jī)別名微控制器,將多種組件結(jié)合在一起組成的微型計(jì)算機(jī),會在特定地區(qū)運(yùn)行受到區(qū)域環(huán)境的影響,考慮好系統(tǒng)的兼容性,克服干擾帶來的一系列副影響。
單片機(jī)作用系統(tǒng);軟件抗干擾;干擾因素
人們生活越來越智能化,單片機(jī)應(yīng)用到日常生活、智能機(jī)器、通訊設(shè)備、工業(yè)領(lǐng)域等區(qū)域里。有些惡劣環(huán)境對單片機(jī)運(yùn)行存在著嚴(yán)重的干擾,要得到精準(zhǔn)度更高的產(chǎn)品,我們就要解決干擾所帶來的一系列問題,提高我們的抗干擾技術(shù)??垢蓴_技術(shù)分為硬件抗干擾和軟件抗干擾技術(shù),硬件抗干擾是整個系統(tǒng)的基礎(chǔ),且目前在此研究已有很大的發(fā)現(xiàn)和拓展。雖然我們研究出了一系列硬件抗干擾舉措,但干擾多種多樣,硬件技術(shù)的發(fā)展不能從根本上解決問題,還是要研究發(fā)展軟件抗干擾技術(shù),軟件抗干擾技術(shù)方便簡潔、可靠程度相對有所提高,把握好干擾產(chǎn)生的原因,分析干擾對系統(tǒng)及人們生活的影響,加強(qiáng)抗干擾研究分析,兩者相互結(jié)合,相輔相成會達(dá)到超乎預(yù)料的效果。我們從軟件抗干擾的角度了解分析抗干擾技術(shù),爭取做到事半功倍的效果。
單片機(jī)系統(tǒng)的作用受外界內(nèi)部各種因素的影響,在組合中,配合不當(dāng),選取的元件有誤差,后面工藝步驟影響都會是系統(tǒng)受到或多或少的影響。干擾系統(tǒng)的主要因素有干擾源、傳播路徑和敏感元件。干擾源即產(chǎn)生干擾的源頭,產(chǎn)生干擾的元件、摩擦或周圍環(huán)境亦或信號影響。傳播路徑即傳播的路線,有傳播介質(zhì)像空氣、水、機(jī)油等,從干擾源經(jīng)過介質(zhì)傳播到機(jī)器的通道。敏感元件只易受干擾的元件,每個元件性質(zhì)不同,所受影響的因素也會不同,在單片機(jī)中如A/D、D/A轉(zhuǎn)換器、弱信號放大器很易受外界影響。干擾可按找不同分類方式進(jìn)行多種分類。也有直接耦合、電磁感應(yīng)耦合、公共阻抗耦合等多種耦合方式。
干擾對系統(tǒng)或多或少都存在影響,日積月累自然問題變多。要早早解決,時刻進(jìn)步。首先,干擾會造成數(shù)據(jù)檢查時誤差范圍加大,干擾信號在單片機(jī)運(yùn)行及檢測時跳動影響或疊加都會有誤差存在,使精準(zhǔn)度減??;控制系統(tǒng)癱瘓死機(jī)狀態(tài),在工業(yè)操作環(huán)境中,這種干擾存在是要出現(xiàn)為零的,工業(yè)機(jī)器不同于普通的機(jī)器,一刻存在就可能造成一條人命,系統(tǒng)失靈不受控制引入別的不正確信號,可能會造成無法預(yù)知的損失;對存儲存在影響,RAM與ROM存儲的數(shù)據(jù)有幾率受到外界信號的變化而變化,避免數(shù)據(jù)損失,也要降低干擾。
抗干擾性能作為單片機(jī)功能大小的一個主要指標(biāo),抗干擾技術(shù)的研究是需要不斷進(jìn)步的一個重要步驟。上面也都提到了干擾的因素,我們從干擾源和傳播路徑出發(fā),阻絕他們對單片機(jī)的影響。從源頭上進(jìn)行隔絕就是抑制噪音的產(chǎn)生,可以采用數(shù)字濾波器的相關(guān)方法原理;程序安裝自己檢測功能,在程序開機(jī)時間生產(chǎn)時,自動檢測機(jī)器有沒有發(fā)生故障,有問題的程序自動轉(zhuǎn)入檢查修復(fù)列,節(jié)省資本;軟件使用過程中出現(xiàn)的因干擾而發(fā)生的“跑飛”現(xiàn)象,可以設(shè)定攔截程序讓其自動停止或者復(fù)原本該繼續(xù)的動作指令。
單片機(jī)如果受到強(qiáng)烈干擾會對其RAM存儲產(chǎn)生一定的影響,防止其內(nèi)部數(shù)據(jù)丟失,我們來探討軟件抗干擾方法。
4.1 采用軟件冗余技術(shù)
指令冗余通常用于程序區(qū)內(nèi),單片機(jī)受到干擾后往往將錯誤的代碼誤認(rèn)為實(shí)行的代碼來操作,引起整個程序的跑飛混亂現(xiàn)象,假設(shè)跑飛到某一單字節(jié)指令上,我們將單字節(jié)指令設(shè)置,其會自動回歸正確指令跑道;而遇見兩節(jié)或三節(jié)指令時還處于混亂狀態(tài)。將正常指令后輸入NOP指令是混亂的指令帶回正軌,我們將此稱為指令冗余。
4.2 采用開機(jī)自檢技術(shù)
開機(jī)自檢在開機(jī)運(yùn)行時對單片機(jī)的系統(tǒng)、元件、指令進(jìn)行檢測,檢測出不正常立刻進(jìn)行處理。檢查隨機(jī)存儲器讀寫是否正常,輸入什么改讀寫什么;檢查只讀內(nèi)存的程序單元內(nèi)容的校驗(yàn)和,看是否與輸入相對應(yīng),不對應(yīng)應(yīng)有錯誤提示;檢查輸入輸出口狀態(tài),看其是否待機(jī)正常。
4.3 采用軟件陷阱技術(shù)
與指令冗余相反,它作用在未作用的程序段內(nèi)。將沒用的程序單元作為陷阱,引入混亂的程序,將其無條件的引到專門對錯誤程序段進(jìn)行處理的區(qū)域,恢復(fù)系統(tǒng)的正常使用??稍诔绦驔]用過的單元內(nèi)設(shè)置空指令及無條件操作指令,將其引入專門通道進(jìn)行改善;還可以在程序單元格間或者頁末處添加指令,不要跑偏節(jié)奏,不能在單元間隨意安排,避免將正確指令誤認(rèn)為錯誤的刪除的情況。軟件缺陷中指令的安排大都在正常指令無法到達(dá)的地方所以對計(jì)算機(jī)的正確運(yùn)行不會有什么影響。
4.4 采用“看門狗”策略
當(dāng)程序因干擾嚴(yán)重癱瘓死機(jī)時,必將對系統(tǒng)產(chǎn)生破壞的影響。在軟件某些部位設(shè)置標(biāo)志不斷檢查測試,監(jiān)視程序操作運(yùn)行時間,超過預(yù)定時間就可以對系統(tǒng)自動調(diào)整使其正常運(yùn)行,避免程序跑飛癱瘓?jiān)斐傻牟槐匾拇鎯?shù)據(jù)丟失、破壞。在每一段運(yùn)行中設(shè)置固定時間信號傳送到看門狗中,超出時間未接收到指令,就運(yùn)行看門狗提前設(shè)置的中斷或恢復(fù)正常軌道的指令,讓程序作用下去。我們可以選擇特定的看門狗軟件或單片機(jī)。
4.5 采用數(shù)字濾波辦法
數(shù)字濾波無需依靠其靠系統(tǒng),是一種計(jì)算過程,對其他系統(tǒng)的影響小,比較可選。數(shù)字濾波也有多種算法,如限幅濾波算法、中值濾波算法、算術(shù)平均濾波算法等。
在單片機(jī)運(yùn)行過程中,遇到本文里闡述的需要軟件抗干擾的問題可以綜合解決辦法來靈活解決,但也有些可能上面的策略不適用,這需要我們在實(shí)際中不斷挖掘探索。對于干擾程度較為復(fù)雜的地區(qū),也可以結(jié)合以上辦法將其找到合適的安排位置,盡最大努力消除干擾源、阻斷干擾路徑,保障系統(tǒng)即使受到干擾也可以恢復(fù)到正軌,是破壞降到最小或沒有。
[1]張秀紅.單片機(jī)控制系統(tǒng)的抗干擾技術(shù)探討;機(jī)電產(chǎn)品開發(fā)與創(chuàng)新;2009年1期.
[2]周遐,曹云川,鐘思佳.單片機(jī)控制系統(tǒng)抗干擾技術(shù)應(yīng)用方案;昆明冶金高等??茖W(xué)校學(xué)報;2009年3期.
Research and analysis of software anti jamming technology of single chip microcomputer system
Li Hui
(Xin Ao Science and Technology Development Co.,Ltd.,Langfang Hebei,065001)
Single chip compact, flexible, cheap, powerful, easy to use in the work has been widely used, has become a popular electronic control equipment industry So popular also has a higher demand for the reliability of SCM, one of the factors that affect the reliability is the degree of anti-interference Single chip micro controller will be a variety of alias, combining components in a microcomputer together, will be affected by the regional environment running in a particular area, considering the compatibility of the system, overcome a series of side effects caused by the interference
single chip microcomputer system; software anti-interference; interference factors