《單片機(jī)系統(tǒng)設(shè)計(jì)及工程應(yīng)用》課件第9章_第1頁
《單片機(jī)系統(tǒng)設(shè)計(jì)及工程應(yīng)用》課件第9章_第2頁
《單片機(jī)系統(tǒng)設(shè)計(jì)及工程應(yīng)用》課件第9章_第3頁
《單片機(jī)系統(tǒng)設(shè)計(jì)及工程應(yīng)用》課件第9章_第4頁
《單片機(jī)系統(tǒng)設(shè)計(jì)及工程應(yīng)用》課件第9章_第5頁
已閱讀5頁,還剩72頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

9.1干擾源分析9.2硬件抗干擾技術(shù)9.3軟件抗干擾技術(shù)9.4電源抗干擾技術(shù)9.5系統(tǒng)接地技術(shù)9.6I/O通道抗干擾技術(shù)習(xí)題99.1干擾源分析單片機(jī)控制系統(tǒng)的工作環(huán)境比較復(fù)雜,一般都存在自然因素或人為因素產(chǎn)生的電磁干擾。各種干擾通過一定的途徑進(jìn)入單片機(jī)控制系統(tǒng)或測量通道,就會(huì)對單片機(jī)控制系統(tǒng)產(chǎn)生干擾,通常將上述影響正常工作的各種干擾信號(hào)稱為噪聲。在單片機(jī)控制系統(tǒng)中,如果出現(xiàn)干擾,就會(huì)影響指令的正常執(zhí)行,造成事故或控制失靈;如果在測量通道中存在干擾,

就會(huì)產(chǎn)生測量誤差,計(jì)數(shù)器受到干擾可能造成記數(shù)不準(zhǔn),電壓的沖擊有可能使系統(tǒng)無法正常運(yùn)行甚至損壞。

凡是能產(chǎn)生一定能量,可以影響到周圍電路正常工作的信號(hào)都可認(rèn)為是干擾源。干擾有的來自外部,有的來自系統(tǒng)內(nèi)部。一般來說,干擾源可分為以下3類:

(1)自然界的宇宙射線,太陽黑子活動(dòng),大氣污染及雷電因素造成的干擾信號(hào)。

(2)物質(zhì)固有的,即電子元器件本身的熱噪聲和散粒噪聲。

(3)人為造成的,主要是由電氣和電子設(shè)備引起的干擾。這些干擾在系統(tǒng)工作的環(huán)境中廣泛存在,包括動(dòng)力電網(wǎng)的電暈量放電,絕緣不良的弧光放電,交流接觸器、繼電器

接點(diǎn)引起的電火花,照明燈管所引起的放電,變壓器、電焊機(jī)等大功率設(shè)備啟動(dòng)浪涌,可控硅開關(guān)造成的瞬間尖峰,都會(huì)對交流電網(wǎng)產(chǎn)生影響,通過電源系統(tǒng)影響單片機(jī)系統(tǒng)的正常運(yùn)行。另外,像大功率廣播、電視、通信、雷達(dá)、導(dǎo)航、高頻設(shè)備以及大功率設(shè)備所發(fā)出的空間電磁干擾,系統(tǒng)本身電路的過渡過程,電路在狀態(tài)轉(zhuǎn)換時(shí)引起的尖峰電流,電感或電容所產(chǎn)生的瞬間電壓和瞬變電流也會(huì)對系統(tǒng)工作產(chǎn)生干擾。印制電路板布局不合理、布線不規(guī)則、排列不合理、粗細(xì)不均勻等使電路板自身產(chǎn)生相互影響;系統(tǒng)安裝布線不合理,強(qiáng)弱電走線沒有分開,都會(huì)對系統(tǒng)造成干擾。圖9.1單片機(jī)控制系統(tǒng)主要干擾途徑噪聲干擾的頻譜很寬,干擾噪聲可以是直流、交流、脈沖等形式。從噪聲進(jìn)入控制系統(tǒng)的途徑來講,主要有3種干擾通道,如圖9.1所示。

空間電磁干擾(場干擾)通過電磁波輻射進(jìn)入系統(tǒng);I/O通道干擾通過和主機(jī)系統(tǒng)相連接的輸入通道、輸出通道及與其他主機(jī)系統(tǒng)相連的通信端口進(jìn)入單片機(jī)系統(tǒng);電源系統(tǒng)干擾,主要是指通過供電系統(tǒng)的直流電源線路或地線進(jìn)入系統(tǒng)。在一般環(huán)境下,空間干擾在強(qiáng)度上遠(yuǎn)小于其他兩種渠道進(jìn)入系統(tǒng)的干擾,而且空間干擾可用良好的屏蔽與正確的接地,或采用加高頻濾波器的方法解決。因此,我們研究抗干擾設(shè)計(jì)的重點(diǎn)應(yīng)放在盡可能減少由供電系統(tǒng)和I/O通道所引起的干擾。9.2.1元器件選用

系統(tǒng)硬件是由單片機(jī)及外圍電路等許多元器件組成的,只有保證每個(gè)元器件都能可靠地工作,才能確保系統(tǒng)的可靠性。根據(jù)系統(tǒng)設(shè)計(jì)需要,可以選擇的元器件種類很多。將這些元器件應(yīng)用于系統(tǒng)之前,首先要對元器件進(jìn)行性能測試和功率老化試驗(yàn),并隨時(shí)測試其性能指標(biāo)是否符合系統(tǒng)要求。9.2硬件抗干擾技術(shù)一般情況下,元器件在出廠前都進(jìn)行了測試。通常在應(yīng)用時(shí)不再進(jìn)行測試,而是直接將元器件用于電路中加電運(yùn)行考驗(yàn),發(fā)現(xiàn)問題直接替換,這樣對整個(gè)系統(tǒng)的考機(jī)就必

須認(rèn)真進(jìn)行。依照可靠性理論,芯片在通電使用初期故障率較高,系統(tǒng)裝調(diào)完成后,應(yīng)盡量模擬實(shí)際運(yùn)行環(huán)境加電考機(jī),盡可能將問題解決在這一階段,這樣考機(jī)合格的設(shè)備

出廠后就能穩(wěn)定運(yùn)行了。9.2.2接插件選擇

單片機(jī)控制系統(tǒng)通常由一塊或幾塊印制電路板組成,各板之間以及各板與電源之間采用接插件連接。在接插件的插針之間易造成干擾,這些干擾與接插件插針之間的距離以及插針與地線之間的距離都有關(guān)系。因此,在設(shè)計(jì)和選用接插件時(shí)要注意以下幾點(diǎn):

(1)合理地設(shè)置接插件。

電源接插件與信號(hào)接插件要盡量遠(yuǎn)離,主要信號(hào)的接插件外面最好帶有屏蔽網(wǎng)層。

(2)接插件上要增加接地針數(shù)。

在安排插針信號(hào)時(shí),將一部分插針作為接地線,均勻分布于各信號(hào)針之間起到隔離作用,以減小針與針間信號(hào)的互相干擾。單從抗干擾方面來講,最好每一信號(hào)針兩側(cè)都是

接地針,信號(hào)針與接地針理想的比例為1∶1。當(dāng)然,在系統(tǒng)設(shè)計(jì)時(shí)要根據(jù)實(shí)際情況,兼顧各方面的因素綜合考慮。

(3)信號(hào)針盡量分散配置,增大彼此之間的距離。

(4)設(shè)計(jì)時(shí)要考慮信號(hào)的頻率,把不同時(shí)刻翻轉(zhuǎn)的信號(hào)插針盡量遠(yuǎn)離,因信號(hào)同時(shí)翻轉(zhuǎn)會(huì)使干擾疊加。

(5)選用接插件時(shí),要選用不同機(jī)械結(jié)構(gòu)或不同針數(shù)的接插件。原則上一塊電路板上不要有兩個(gè)或兩個(gè)以上結(jié)構(gòu)和尺寸都相同的接插件,以免誤插造成損壞。

(6)插座信號(hào)排列時(shí),要考慮到插頭有插反的可能,要求即使插頭插反也不至于損壞電源或器件。9.2.3印制電路板抗干擾技術(shù)

印制電路板是器件、信號(hào)線、電源線的高密度集合體,但決不是器件、線路的簡單密集排列,布線和布局好壞對可靠性影響很大。

印制電路板設(shè)計(jì)時(shí)應(yīng)注意以下幾點(diǎn):

(1)印制電路板總體布局原則。

①印制電路板大小要適中。板面過大和印制線路太長,都會(huì)阻抗增加,成本也高;板子太小,板間相互連線增加,易造成干擾。②印制電路板元件布局時(shí)相關(guān)元件應(yīng)盡量靠近。如晶振、時(shí)鐘發(fā)生器及CPU時(shí)鐘輸入端要相互靠近,大電流電路元器件要遠(yuǎn)離主板,或另做一塊驅(qū)動(dòng)板。

③考慮電路板在機(jī)箱內(nèi)的位置,發(fā)熱大的元器件應(yīng)放置在易通風(fēng)散熱的位置。

(2)電源線和地線與數(shù)據(jù)線傳輸方向一致,有助于增強(qiáng)抗干擾能力。接地線要環(huán)繞印制板一周安排,各器件盡可能就近接地。

(3)地線盡量加寬,數(shù)字地、模擬地要分開,根據(jù)實(shí)際情況考慮一點(diǎn)或多點(diǎn)接地。

(4)配置必要的去耦電容。在印制電路板的各個(gè)關(guān)鍵部位配置必要的去耦電容是十分必要的。

①電源進(jìn)線端跨接100μF以上的電解電容,以便吸收電源進(jìn)線引入的脈沖干擾。

②一般情況下,可在每個(gè)集成電路芯片上都設(shè)計(jì)一個(gè)103或104的小瓷片電容,以便吸收高頻干擾。

③電容引線不能太長,高頻旁路電容不能帶引線。9.2.4執(zhí)行機(jī)構(gòu)抗干擾技術(shù)

在單片機(jī)控制系統(tǒng)的輸出電路中,存在著執(zhí)行開關(guān)、驅(qū)動(dòng)線圈等功率器件,這些器件動(dòng)作時(shí)可能造成回饋干擾。特別是感性負(fù)載,電機(jī)電樞的反電動(dòng)勢會(huì)損壞元器件,甚

至?xí)茐挠?jì)算機(jī)系統(tǒng)或干擾程序的正常執(zhí)行,為防止由于電感負(fù)載的瞬間通、斷造成的干擾,通常采用以下措施:

(1)觸點(diǎn)兩端并聯(lián)阻容吸收電路,控制觸點(diǎn)間放電,如圖9.2(a)所示。

(2)電感負(fù)載兩端并聯(lián)反向二極管,形成反電動(dòng)勢放電回路,保護(hù)設(shè)備安全,如圖9.2(b)所示。在繼電器線圈兩端并接二極管,當(dāng)開關(guān)斷開時(shí),感應(yīng)電動(dòng)勢通過二極管放電,防止擊穿電源及開關(guān)。圖9.2輸出回路抗干擾措施(a)觸點(diǎn)并接阻容吸收電路;(b)線圈并接反向二極管9.3.1設(shè)置軟件陷阱

由于系統(tǒng)干擾可能破壞程序指針PC,一旦PC失控程序就會(huì)“亂飛”,可能進(jìn)入非程序區(qū),造成系統(tǒng)運(yùn)行錯(cuò)誤。設(shè)置軟件陷阱,可防止程序“亂飛”。

設(shè)置軟件陷阱可以采用在ROM或RAM中,每隔一些指令,就把連續(xù)幾個(gè)單元設(shè)置成空操作(所謂陷阱)。當(dāng)失控的程序掉入“陷阱”,連續(xù)執(zhí)行幾個(gè)空操作后,程序自動(dòng)恢

復(fù)正常,繼續(xù)執(zhí)行后面的程序。將程序芯片沒有被程序指令字節(jié)使用的部分全部置成空操作或返回指令代碼,一旦程序飛出到非程序區(qū),能夠順利跳回到程序初始狀態(tài),重新執(zhí)行程序,不至于因此造成程序死循環(huán)。9.3軟件抗干擾技術(shù)9.3.2軟件看門狗

利用設(shè)置軟件陷阱雖在一定程度上解決了程序“亂飛”的失控問題,但在程序執(zhí)行過程中若進(jìn)入死循環(huán),無法撞上陷阱,就會(huì)使程序長時(shí)間運(yùn)行不正常。因此,設(shè)置陷阱的辦法并不能徹底有效地解決死循環(huán)問題。

設(shè)置程序監(jiān)視器(Watchdog,即看門狗)可比較有效地解決死循環(huán)問題。程序監(jiān)視器系統(tǒng)有的采用軟件解決,大部分都是采用軟、硬件相結(jié)合的辦法。下面以兩種解決辦法來分

析其原理。

1.利用單片機(jī)內(nèi)部定時(shí)器進(jìn)行監(jiān)視

在程序的大循環(huán)中,一開始就啟動(dòng)定時(shí)器工作,在主程序中增設(shè)定時(shí)器賦值指令,使該定時(shí)器維持在非溢出工作狀態(tài)。定時(shí)時(shí)間要稍大于程序循環(huán)一次的執(zhí)行時(shí)間。程序

正常循環(huán)執(zhí)行一次給定時(shí)器送一次初值,重新開始計(jì)數(shù)而不會(huì)產(chǎn)生溢出。但若程序失控,沒能按時(shí)給定時(shí)器賦初值,定時(shí)器就會(huì)產(chǎn)生溢出中斷,在中斷服務(wù)程序中使主程序回到

初始狀態(tài)。例如,設(shè)89C51單片機(jī)晶振頻率為6MHz,選定時(shí)器T0定時(shí)監(jiān)視程序。程序如下:

ORG0000H

START: LJMPMAIN

ORG000BH

LJMPSTART

ORG0060HMAIN:SETBEA

SETBIE0

SETBTR0

;其他初始化程序

LOOP: MOVTMOD,#01H;設(shè)置T0為定時(shí)器方式1

MOVTHO,#datah;設(shè)置定時(shí)器初值

MOVTL0,#datal

LJMPLOOP ;循環(huán)程序中設(shè)定T0為16位定時(shí)器工作方式,時(shí)間常數(shù)datah,datal要根據(jù)用戶程序的長短以及所使用的6MHz晶振頻率計(jì)算,實(shí)際選用值要比計(jì)算出的值略小些,使定時(shí)復(fù)位時(shí)間略長于程序的正常循環(huán)執(zhí)行時(shí)間。這種方法是利用單片機(jī)內(nèi)部的硬件資源定時(shí)器達(dá)到防止程序死循環(huán)的目的。

2.利用單穩(wěn)態(tài)觸發(fā)器構(gòu)成程序監(jiān)視器

利用單穩(wěn)態(tài)觸發(fā)器構(gòu)成程序監(jiān)視器的電路很多。利用軟件經(jīng)常訪問單穩(wěn)電路,一旦程序有問題,CPU就不能正常訪問,單穩(wěn)電路則產(chǎn)生翻轉(zhuǎn)脈沖使單片機(jī)復(fù)位,強(qiáng)制程序重

新開始執(zhí)行。圖9.3是利用單片機(jī)本身的ALE信號(hào)經(jīng)分頻器分頻后,作為系統(tǒng)的強(qiáng)制復(fù)位信號(hào)。當(dāng)程序正常運(yùn)行時(shí),每隔一段時(shí)間P1.0端口輸出一個(gè)清0信號(hào),RST端不會(huì)有復(fù)位脈沖,就不會(huì)強(qiáng)行復(fù)位。一旦出現(xiàn)程序“亂飛”或死循環(huán),P1.0端就不再輸出清0信號(hào),系統(tǒng)便會(huì)強(qiáng)行復(fù)位。(也可以采用系統(tǒng)的某一方波信號(hào)作為系統(tǒng)看門狗的時(shí)鐘源,但一旦該信號(hào)出現(xiàn)問題,就起不到看門狗的作用了。)圖9.3系統(tǒng)看門狗電路9.3.3軟件冗余技術(shù)

軟件冗余技術(shù)就是多次使用同一功能的軟件指令,以保證指令執(zhí)行的可靠性??蓮囊韵聨讉€(gè)方面考慮:

(1)采取多次讀入法,確保開關(guān)量輸入正確無誤。

重要的輸入信息利用軟件多次讀入,比較幾次結(jié)果一致后再讓其參與運(yùn)算。對于按鈕和開關(guān)狀態(tài)讀入時(shí),要配合軟件延時(shí)消除抖動(dòng)。

(2)不斷查詢輸出狀態(tài)寄存器,及時(shí)糾正輸出狀態(tài)。

設(shè)置輸出狀態(tài)寄存器,利用軟件不斷查詢,當(dāng)發(fā)現(xiàn)其和輸出的正確狀態(tài)不一致時(shí),及時(shí)糾正,防止由于干擾引起的輸出量變化導(dǎo)致設(shè)備錯(cuò)誤動(dòng)作。

(3)對于條件控制系統(tǒng),把對控制條件的一次性采樣、處理控制輸出改為循環(huán)采樣、處理。這種方法對于慣性較大的控制系統(tǒng)具有良好的抗隨機(jī)干擾作用。

(4)為防止計(jì)算錯(cuò)誤,可采用兩組計(jì)算程序,分別計(jì)算,然后將兩組計(jì)算結(jié)果進(jìn)行比較,如兩次計(jì)算結(jié)果相同,則將結(jié)果輸出。如果出現(xiàn)偏差,則再進(jìn)行運(yùn)算,重新比較,直到結(jié)果相同,才認(rèn)為計(jì)算結(jié)果正確。

軟件冗余技術(shù)是提高軟件可靠性,防止干擾造成誤差,保證控制系統(tǒng)正常運(yùn)行的有力措施。至于在什么地方采用冗余技術(shù),要根據(jù)在軟件設(shè)計(jì)過程中的薄弱環(huán)節(jié)和在硬件上

易受干擾部位來決定。9.3.4軟件抗干擾設(shè)計(jì)

軟件設(shè)計(jì)功能靈活,修改方便,在提高系統(tǒng)可靠性方面更具有其優(yōu)點(diǎn)。尤其是進(jìn)入現(xiàn)場調(diào)試后,設(shè)備安裝就緒,再改動(dòng)硬件,既花時(shí)間又耗費(fèi)資金,若采用軟件可靠性

措施,再與硬件相互配合,則可以使許多干擾得到抑制和消除。

1.軟件抗干擾能力

在軟件設(shè)計(jì)時(shí)采用如下措施,可以有效提高系統(tǒng)的抗干擾能力。

(1)增加系統(tǒng)信息管理模塊。與硬件相配合,對系統(tǒng)信息進(jìn)行保護(hù)。其中包括防止信息被破壞,出故障時(shí)保護(hù)信息,故障排除之后恢復(fù)信息等。

(2)防止信息在輸入/輸出過程中出錯(cuò)。如對關(guān)鍵數(shù)據(jù)采用多種校驗(yàn)方式,對信息采用重復(fù)傳送校驗(yàn)技術(shù),從而保證信息的正確性。

(3)編制診斷程序,及時(shí)發(fā)現(xiàn)故障,查找出故障位置,以便及時(shí)檢修或啟用冗余設(shè)備。

(4)軟件進(jìn)行系統(tǒng)調(diào)度,包括出現(xiàn)故障時(shí)保護(hù)現(xiàn)場,迅速啟用備用設(shè)備,將故障設(shè)備切換成備用狀態(tài)進(jìn)行維修。在環(huán)境條件發(fā)生變化時(shí),采取應(yīng)急措施,故障排除后,迅速恢復(fù)系統(tǒng),繼續(xù)投入運(yùn)行等。

2.提高軟件自身的可靠性

通常要編制一個(gè)可靠運(yùn)行的應(yīng)用軟件,應(yīng)考慮采用以下幾項(xiàng)措施。

1)程序分段和采用層次結(jié)構(gòu)

程序設(shè)計(jì)時(shí),將程序分成若干個(gè)具有獨(dú)立功能的子程序模塊。各個(gè)程序模塊可以單獨(dú)使用,也可與其他程序模塊共同使用。各程序模塊之間可通過固定的通信區(qū)和一些指定的單元進(jìn)行信息傳遞。每個(gè)程序模塊都可單獨(dú)進(jìn)行調(diào)整和修改,不會(huì)影響其他程序模塊。

2)采用可測試性設(shè)計(jì)

在編制軟件過程中會(huì)出現(xiàn)一些錯(cuò)誤。為便于查出錯(cuò)誤,提高軟件開發(fā)效率,可采用以下3種方法:

(1)明確軟件規(guī)格,使測試易于進(jìn)行。

(2)將測試設(shè)計(jì)的程序段作為軟件開發(fā)的一部分。

(3)把程序結(jié)構(gòu)本身構(gòu)造成便于測試的形式。

3)對軟件進(jìn)行測試

軟件測試的基本方法是,給軟件一個(gè)典型的輸入,觀測輸出是否符合要求。發(fā)現(xiàn)錯(cuò)誤進(jìn)行修改,直至消除錯(cuò)誤,實(shí)現(xiàn)正常功能。

測試軟件可按以下步驟進(jìn)行:

(1)模塊測試,即對每個(gè)程序模塊單獨(dú)進(jìn)行測試。

(2)局部或系統(tǒng)測試,即對多個(gè)程序模塊組成的局部或系統(tǒng)程序進(jìn)行測試,以發(fā)現(xiàn)程序模塊間的連接錯(cuò)誤。

(3)系統(tǒng)功能測試,按功能對軟件進(jìn)行測試,如控制功能、顯示功能、通信功能、管理功能、報(bào)警功能等。

(4)現(xiàn)場測試,即硬件安裝調(diào)試完成后再結(jié)合軟件進(jìn)行測試,以便對整個(gè)控制系統(tǒng)的功能及性能做一評價(jià)。9.3.5軟件自診斷技術(shù)

軟件診斷技術(shù)主要有兩個(gè)方面,一方面是對系統(tǒng)硬件和通道的自診斷,另一方面是對軟件本身進(jìn)行診斷和故障排除。1.硬件系統(tǒng)診斷

硬件系統(tǒng)診斷包含兩個(gè)方面:一方面指確定硬件電路是否存在故障,即故障測試;另一方面指出故障的確切位置,給維護(hù)提供指導(dǎo),即故障定位。有的單片機(jī)控制系統(tǒng)配備有系統(tǒng)測試程序,在系統(tǒng)上電時(shí),首先對系統(tǒng)的主要部件以及外設(shè)I/O端口進(jìn)行測試,以確認(rèn)系統(tǒng)硬件工作是否正常。對接口故障的測試,主要是檢測接口中元器件的故障,故在進(jìn)行接口電路設(shè)計(jì)時(shí)要考慮以下3個(gè)因素:

(1)在端口設(shè)計(jì)時(shí),除考慮接口的功能外,還要考慮提供檢測的寄存器或緩沖器,以便檢測使用。

(2)將接口劃分成若干個(gè)檢測區(qū),在每一檢測區(qū)將檢測點(diǎn)逐一編號(hào),進(jìn)行測試。

(3)將測試點(diǎn)按順序及故障類型編制成故障字典,以便按測試結(jié)果給出故障部位,進(jìn)行故障定位。

2.軟件自診斷

軟件自診斷的辦法很多,尤其在運(yùn)行過程中,為了防止程序突然“亂飛”或進(jìn)入死循環(huán),需要采取一些有效措施,前面曾介紹過的設(shè)置陷阱和使用程序監(jiān)視器就是解決

軟件自身故障的有效辦法。另外,也可采取時(shí)間冗余法。

所謂時(shí)間冗余法,就是通過消耗時(shí)間資源來提高軟件可靠性。時(shí)間冗余法通常采用指令復(fù)執(zhí)和程序卷回兩種方式實(shí)現(xiàn)。

1)指令復(fù)執(zhí)技術(shù)

重復(fù)執(zhí)行已發(fā)現(xiàn)錯(cuò)誤的指令,如故障是瞬時(shí)的,在指令復(fù)執(zhí)期間,有可能不再出現(xiàn),程序可繼續(xù)執(zhí)行。

所謂復(fù)執(zhí),就是程序中的每條指令都是一個(gè)重新啟動(dòng)點(diǎn),一旦發(fā)現(xiàn)錯(cuò)誤,就重新執(zhí)行被錯(cuò)誤破壞的現(xiàn)行指令。指令復(fù)執(zhí)既可用編制程序來實(shí)現(xiàn),也可用硬件控制來實(shí)現(xiàn),

基本的實(shí)現(xiàn)方法有:

(1)當(dāng)發(fā)現(xiàn)錯(cuò)誤時(shí),能準(zhǔn)確保留現(xiàn)行指令的地址,以便重新取出執(zhí)行。

(2)現(xiàn)行指令使用的數(shù)據(jù)必須保留,以便重新取出執(zhí)行時(shí)使用。指令復(fù)執(zhí)類似于程序中斷,但又有所區(qū)別。二者都要保護(hù)現(xiàn)場,不同的是,程序中斷時(shí),機(jī)器一般沒有故障,執(zhí)行完當(dāng)前指令后保留現(xiàn)場;但指令復(fù)執(zhí),不能讓當(dāng)前指令

執(zhí)行完,否則會(huì)保留錯(cuò)誤結(jié)果。因此在傳送執(zhí)行結(jié)果之前就停止執(zhí)行現(xiàn)行指令,以保存上一條指令執(zhí)行的結(jié)果,且PC要后退一步。指令復(fù)執(zhí)通常采用次數(shù)控制和時(shí)間控制兩種方式,如果在規(guī)定的復(fù)執(zhí)次數(shù)或時(shí)間內(nèi)故障沒有消失,則稱之復(fù)執(zhí)失敗。

2)程序卷回技術(shù)

程序卷回不是某一條指令的重復(fù)執(zhí)行,而是一小段程序的重復(fù)執(zhí)行。為了實(shí)現(xiàn)卷回,也要保留現(xiàn)場。程序卷回技術(shù)的要點(diǎn)是:

(1)將程序分成若干小段,卷回時(shí)也要卷回一小段,不是卷回到程序起點(diǎn)。

(2)在第n段末,將當(dāng)時(shí)各寄存器、程序計(jì)數(shù)器及其他有關(guān)內(nèi)容移入內(nèi)存存檔,并將內(nèi)存中被第n段所更改的單元又在內(nèi)存中另開辟一塊區(qū)域保存起來。若在第n+1段中不出問題,則將第n+1段現(xiàn)場存檔,并撤消第n段所存內(nèi)容。

(3)如在第n+1段出現(xiàn)錯(cuò)誤,就把第n段的現(xiàn)場送給機(jī)器的有關(guān)部分,然后從第n+1段起點(diǎn)開始重復(fù)執(zhí)行第n+1段程序。

卷回方法可卷回若干次,直到故障排除或顯示故障狀態(tài)為止。9.4.1電源系統(tǒng)干擾源

單片機(jī)控制系統(tǒng)通常工作在工業(yè)生產(chǎn)環(huán)境中,強(qiáng)電干擾比較嚴(yán)重。尤其是一些用電量較大的企業(yè),如軋鋼機(jī)工作時(shí)甚至?xí)陔娋W(wǎng)50Hz正弦波上出現(xiàn)幾百伏的尖峰脈沖,這些尖峰來源于軋鋼機(jī)的強(qiáng)大電流。在某些接有大功率用電設(shè)備的電網(wǎng)中,甚至可以檢測到在50Hz電源上疊加了上千伏的尖峰脈沖電壓。這些干擾通過電源進(jìn)入單片機(jī)控制系統(tǒng),不但使控制系統(tǒng)產(chǎn)生隨機(jī)誤差和跳動(dòng)誤差,甚至?xí){系統(tǒng)的安全,影響控制系統(tǒng)的可靠運(yùn)行。9.4電源抗干擾技術(shù)用Δt表示電源電壓變化的持續(xù)時(shí)間,那么根據(jù)Δt的大小可把供電系統(tǒng)干擾分為:

(1)過壓、欠壓、停電,Δt>1s。

(2)浪涌、下陷,1s>Δt>10ms。

(3)尖峰電壓,Δt為微秒級。

(4)射頻干擾,Δt為毫微秒級。

(5)其他,半周內(nèi)的停電或過欠壓。過壓、欠壓、停電的危害是顯而易見的,解決的辦法是使用各種穩(wěn)壓器和不間斷電源UPS。

但浪涌和下陷是電壓的快速變化,會(huì)在這些電壓變化點(diǎn)附近產(chǎn)生振蕩,使電壓忽高忽低,致使單片機(jī)控制系統(tǒng)受其影響無法工作。這種干擾可采用快速響應(yīng)的交流電壓調(diào)壓器或?yàn)V波器來解決。

尖峰電壓持續(xù)時(shí)間很短,但對單片機(jī)系統(tǒng)危害較大,可能會(huì)造成邏輯功能紊亂、沖掉程序等。這種干擾可使用具有噪聲抑制能力的交流穩(wěn)壓器、隔離變壓器或采用相應(yīng)濾波器等來濾除。

射頻干擾對單片機(jī)系統(tǒng)的影響不大,利用低通濾波器即可解決。9.4.2電源抗干擾措施

為了防止電源系統(tǒng)竄入干擾,影響單片機(jī)控制系統(tǒng)的正常工作,整個(gè)控制系統(tǒng)的電源可從以下幾方面考慮:

(1)交流進(jìn)線端加交流濾波器,可濾掉高頻干擾,如電網(wǎng)上大功率設(shè)備啟/停造成的瞬間干擾。濾波器有一級、二級濾波之分,安裝時(shí)外殼要加屏蔽并使其良好接地,進(jìn)出線要分開,防止感應(yīng)和輻射耦合。低通濾波器僅允許50Hz交流通過,對高頻和中頻干擾有很好的衰減作用。

(2)對于電源干擾較多、電壓不穩(wěn)的場所可采用交流穩(wěn)壓器。

(3)采用具有靜電屏蔽和抗電磁干擾的隔離變壓器。

(4)采用集成穩(wěn)壓塊兩級穩(wěn)壓。目前市場上集成穩(wěn)壓塊有許多種,如提供正電源的78系列以及提供負(fù)電壓的79系列穩(wěn)壓塊,它們內(nèi)部是多級穩(wěn)壓電路,比分離元件穩(wěn)壓效果好,且體積小,可靠性高,安裝使用方便。直流電源采用兩級穩(wěn)壓,效果更好。

(5)主電路板采取獨(dú)立供電,其余部分分散供電,避免一處電源有故障引起整個(gè)系統(tǒng)故障。如圖9.4所示為一種系統(tǒng)供電配置方案。

(6)直流電源輸出接口采用大容量電解電容濾波。

(7)線間對地增設(shè)小電容濾波消除高頻干擾。

(8)交流電源線與其他線盡量分開,減少耦合干擾。如濾波器的輸出線上干擾已減少,應(yīng)使其與電源進(jìn)線及濾波器外殼保持一定距離,交流電源與直流電源及信號(hào)線分別走線,以減少相互干擾。

(9)盡量提高接口器件的電源電壓,提高接口的抗干擾能力。例如,采用光電耦合器輸出端驅(qū)動(dòng)直流繼電器。

(10)可采用交、直流兩用電源為系統(tǒng)供電,直流電瓶不僅能提供直流電源,而且具有穩(wěn)壓作用。圖9.4系統(tǒng)供電配置原理框圖9.5.1系統(tǒng)地線分類

單片機(jī)控制系統(tǒng)中地線有許多類型,總的來說可分為保護(hù)接地和工作接地兩大類。

保護(hù)接地主要是為了避免因設(shè)備絕緣損壞或性能下降、工作人員遭受觸電危險(xiǎn)和保證設(shè)備的安全;而工作接地主要是保證控制系統(tǒng)穩(wěn)定可靠運(yùn)行,防止地環(huán)路引起的干擾。9.5系統(tǒng)接地技術(shù)在單片機(jī)控制系統(tǒng)中,地線大致分為以下幾類:

(1)數(shù)字地:也叫邏輯地,它是數(shù)字電路的零電位。

(2)模擬地:是放大器、采樣保持器以及A/D轉(zhuǎn)換器和比較器等的零電位。

(3)功率地:大電流網(wǎng)絡(luò)元件、功放器件的零電位。

(4)信號(hào)地:傳感器件的地電平。

(5)交流地:指交流電源的地線。

(6)直流地:指直流電源的地線。

(7)屏蔽地:一般同機(jī)殼相連,是為防止靜電感應(yīng)和磁場感應(yīng)而設(shè)置的,常和大地相接。9.5.2地線的處理原則

不同的地線有不同的處理方法。這里只給出一些原則,讀者可根據(jù)系統(tǒng)的實(shí)際情況具體分析。

1.一點(diǎn)接地和多點(diǎn)接地

在低頻電路中,布線和元件之間的電感不會(huì)產(chǎn)生太大影響,常采用一點(diǎn)接地,若采用多點(diǎn)接地,則容易形成地環(huán)路。而在高頻電路中,寄生電容和電感影響較大,宜采用多點(diǎn)接地。通常頻率小于1MHz時(shí),采用一點(diǎn)接地,而高于10MHz時(shí)采用多點(diǎn)接地。介于兩者之間,可根據(jù)具體情況靈活掌握。

2.數(shù)字地和模擬地

數(shù)字地和模擬地一般要分開。即使像A/D、D/A這種轉(zhuǎn)換器,一個(gè)芯片上的兩種地也最好分開,僅在系統(tǒng)中一點(diǎn)上把兩種地連接起來。

3.交流地與信號(hào)地

交流地與信號(hào)地不能共用。在電源地線的兩端會(huì)有數(shù)毫伏,甚至幾伏電壓,這個(gè)電壓對低電平電路會(huì)產(chǎn)生嚴(yán)重的干擾,因此交流地與信號(hào)地不能相通。

4.浮地和接地

系統(tǒng)浮地是將系統(tǒng)電路的各個(gè)部分地線不與大地相連。這種接法有一定抗干擾作用。但系統(tǒng)與地的絕緣電阻不能小于50MΩ,一旦絕緣下降,便會(huì)帶來干擾。也可采用系統(tǒng)浮地,機(jī)殼接地,可提高抗干擾能力,保證系統(tǒng)的安全可靠。5.印制電路板地線布局

(1)TTL、CMOS器件的地線要呈輻射網(wǎng)狀,其他地線不要形成環(huán)路。

(2)地線盡量加寬,以減小接地電阻,線寬最好不要小于3mm。

(3)旁路電容地線不宜太長。

(4)大規(guī)模集成電路最好跨越平行的地線和電源線,以消除干擾。

(5)集成塊電源與地之間最好跨接一瓷片電容器。

6.傳感器信號(hào)地

由于傳感器和機(jī)殼之間易引起共模干擾,因此為提高抗共模干擾能力,特別要注意接地方法。一般A/D轉(zhuǎn)換器的模擬地采用浮空隔離,并可采用三線采樣雙層屏蔽浮地技術(shù),即將地線和信號(hào)線同時(shí)采樣求取差值,可有效地抑制共模干擾。9.6.1開關(guān)信號(hào)的抗干擾措施

開關(guān)量輸入/輸出過程中,其控制對象如繼電器線圈、電磁鐵線圈等都會(huì)對通道產(chǎn)生很大影響。因此,在設(shè)計(jì)時(shí)要十分注意抗干擾問題。

1.開關(guān)量的電平轉(zhuǎn)換

提高開關(guān)量電平進(jìn)行開關(guān)信號(hào)傳輸,可以提高信號(hào)傳輸?shù)目垢蓴_能力,而輸入到單片機(jī)中的電平一般都是TTL電平,因此存在一個(gè)電平轉(zhuǎn)換問題,這可采用如圖9.5所示的

電路提高開關(guān)量電平。若提高開關(guān)量輸出的電平可參考圖9.6所示的電路。圖9.5和圖9.6中+V一般采用+12V或+24V電源。9.6I/O通道抗干擾技術(shù)圖9.5開關(guān)量輸入電平轉(zhuǎn)換電路

圖9.6開關(guān)量輸出電平轉(zhuǎn)換電路

2.采用隔離技術(shù)

(1)對啟/停負(fù)荷不大、響應(yīng)速度不太高的設(shè)備,一般采用繼電器隔離更直接。繼電器能直接控制動(dòng)力電路,而繼電器一般要用三極管驅(qū)動(dòng),并在繼電器線圈兩端接保護(hù)二極管,以保證驅(qū)動(dòng)電路正常工作,如圖9.7所示。圖9.7繼電器隔離開關(guān)輸出電路

(2)對交流啟/停負(fù)荷較大的負(fù)載,大負(fù)荷觸點(diǎn)在接通或斷開時(shí),所產(chǎn)生的火花和電弧具有十分強(qiáng)烈的干擾作用,可采用固態(tài)繼電器(內(nèi)部有兩個(gè)對接的可控硅代替交流接觸器,它們的控制極由小繼電器的一個(gè)觸點(diǎn)控制,觸點(diǎn)接通,兩個(gè)可控硅輪流導(dǎo)通;觸點(diǎn)斷開,兩個(gè)可控硅完全關(guān)斷),起消抖作用。

(3)光電隔離可控硅驅(qū)動(dòng)電路。與繼電器相比光電耦合器響應(yīng)速度快,可用于耦合驅(qū)動(dòng)要求快速響應(yīng)的直流負(fù)載,如圖9.8所示。當(dāng)開關(guān)輸出為“1”時(shí),發(fā)光二極管導(dǎo)通,

三極管V截止,可控硅導(dǎo)通,直流負(fù)載通電,反之?dāng)嚯?。圖9.8光電隔離可控硅驅(qū)動(dòng)電路快速驅(qū)動(dòng)交流負(fù)載的光電耦合驅(qū)動(dòng)類似于直流負(fù)載的光電耦合驅(qū)動(dòng),將單向可控硅改為雙向可控硅,將原接口驅(qū)動(dòng)直流電源改為交流橋式整流和濾波產(chǎn)生直流供電電源。9.6.2模擬通道的抗干擾設(shè)計(jì)

在模擬信號(hào)采集、傳輸過程中,由于信號(hào)大都是mA級,甚至是μA級,很容易受到外界干擾。因此在輸入通道設(shè)計(jì)時(shí),要采取必要的抗干擾措施。

1.硬件措施

1)模擬量輸入回路

在輸入電路中加入RC濾波器,以減小工頻干擾信號(hào)對輸入信號(hào)的影響,如圖9.9所示。圖9.9模擬信號(hào)輸入通道濾波電路

2)光電耦合器隔離

由于光電耦合器隔斷了傳感器信號(hào)和主機(jī)在電氣上的直接聯(lián)系,可有效地抑制瞬間尖峰及其他噪聲的干擾。光電耦合器有如下特點(diǎn):

(1)光電耦合器的輸入阻抗很小,一般為100Ω~1kΩ之間,由于干擾源內(nèi)阻較大,通常為100kΩ~100MΩ,因此分壓到光電耦合器上的干擾分量很小。

(2)干擾噪聲雖尖峰較高,但能量較小,只能造成微弱電流。由于光電耦合器工作在電流狀態(tài),因此干擾電流不會(huì)對其造成大的影響。

(3)光電耦合是在器件內(nèi)部密封條件下傳輸?shù)?,不?huì)受到外界環(huán)境及條件的影響。

(4)輸入和輸出之間分布電容很小,僅為0.5~2pF,且絕緣電阻很大,通常為1011~1012Ω。輸入干擾信號(hào)難于饋送到輸出。

圖9.10是采用光電隔離的模擬信號(hào)輸入、輸出通道組成框圖。圖9.10光電隔離模擬通道組成框圖

3)選用適當(dāng)?shù)腁/D轉(zhuǎn)換芯片

在干擾較嚴(yán)重的場合,可選用雙積分式A/D轉(zhuǎn)換器。這種轉(zhuǎn)換器采用的是平均值,瞬間干擾和高頻干擾,對轉(zhuǎn)換結(jié)果影響較小,可補(bǔ)償非線性誤差,動(dòng)態(tài)特性較好。但這種

雙積分式A/D轉(zhuǎn)換器轉(zhuǎn)換速度較慢,對于要求轉(zhuǎn)換速度快的場合,要選用逐次逼近方式的A/D轉(zhuǎn)換器。

2.軟件措施

用軟件對輸入量的濾波處理是消除低頻干擾的有效措施之一,常用的濾波算法有以下幾種:

(1)限幅濾波:

規(guī)定在相鄰兩次采樣信號(hào)之間的差值不得超過一個(gè)固定數(shù)值。若超過此值,就認(rèn)為本次采樣值是虛假的,要重新采樣或取上次采樣值使用。

(2)中值濾波:

每獲得一個(gè)采樣數(shù)據(jù)就連續(xù)采樣3次,找出3個(gè)采樣值中一個(gè)居中的值作為本次采樣值。

(3)算術(shù)平均值濾波:

對于周期性的干擾信號(hào),可采用這種算術(shù)平均值濾波,對抑制干擾效果較好。其方法是連續(xù)記錄幾次采

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論