愛伊米

提升嵌入式產品設計的10個細節問題

前言

隨著微控制器的發展,微控制器在家用電器、工業自動化、生產過程控制、智慧儀器儀表等領域的應用越來越廣泛。

然而處於同一電力系統中的各種電氣裝置透過電或磁的聯絡彼此緊密相連,相互影響,由於執行方式的改變,故障,開關操作等引起的電磁振盪會波及很多電氣裝置。

這對我們微控制器系統的可靠性與安全性構成了極大的威脅。微控制器測控系統必須長期穩定、可靠執行,否則將導致控制誤差加大,嚴重時會使系統失靈,甚至造成巨大損失。

因此微控制器的抗干擾問題已經成為不容忽視的問題。

一 干擾對微控制器應用系統的影響

1.1測量資料誤差加大

干擾侵入微控制器系統測量單元模擬訊號的輸入通道,疊加在測量訊號上,會使資料採集誤差加大。特別是檢測一些微弱訊號,干擾訊號甚至淹沒測量訊號。

1.2 控制系統失靈

微控制器輸出的控制訊號通常依賴於某些條件的狀態輸入訊號和對這些訊號的邏輯處理結果。若這些輸入的狀態訊號受到干擾,引入虛假狀態資訊,將導致輸出控制誤差加大,甚至控制失靈。

1.3 影響微控制器RAM儲存器和E2PROM等

在微控制器系統中,程式及表格、資料存在程式儲存器EPROM或FLASH中,避免了這些資料受干擾破壞。但是,對於片內RAM、外擴RAM、E2PROM 中的資料都有可能受到外界干擾而變化。

1.4 程式執行失常

外界的干擾有時導致機器頻繁複位而影響程式的正常執行。若外界干擾導致微控制器程式計數器PC值的改變,則破壞了程式的正常執行。

由於受干擾後的PC 值是隨機的,程式將執行一系列毫無意義的指令,最後進入“死迴圈”,這將使輸出嚴重混亂或宕機。

二 如何提高我們裝置的抗干擾能力

2.1 解決來自電源端的干擾

微控制器系統中的各個單元都需要使用直流電源,而直流電源一般是市電電網的交流電經過變壓、整流、濾波、穩壓後產生的,因此

電源上的各種干擾便會引入系統。

提升嵌入式產品設計的10個細節問題

除此之外,由於交流電源共用,各電子裝置之間透過電源也會產生相互干擾,因此抑制電源干擾尤其重要。電源干擾主要有以下幾類:

2.1.1電源線中的高頻干擾(傳導騷擾)

供電電力線相當於一個接受天線,能把雷電、電弧、廣播電臺等輻射的高頻干擾訊號透過電源變壓器初級耦合到次級,形成對微控制器系統的干擾;

解決這種干擾,一般透過介面防護;在介面增加濾波器、或者使用隔離電源模組解決。

2.1.2 感性負載產生的瞬變噪音(EFT)

切斷大容量感性負載時,能產生很大的電流和電壓變化率,從而形成瞬變噪音干擾,成為電磁干擾的主要形式;

解決這種干擾,一般透過遮蔽線與雙膠線,或在電源介面、訊號介面進行濾波處理。

這二種方法都需要在系統接地良好的情況下進行,濾波器、介面濾波電路都必須良好的接地,這樣才能有效的將干擾洩放。

2.2 模擬訊號取樣抗干擾技術

微控制器應用系統中通常要對一個或多個模擬訊號進行取樣,並將其透過A/D轉換成數字訊號進行處理。

為了提高測量精度和穩定性;

1 要保證感測器本身的轉換精度;

2 感測器供電電源的穩定;

3 測量放大器的穩定;

4 A/D轉換基準電壓的穩定;

5 要防止外部電磁感應噪聲的影響;

如果處理不當,

微弱的有用訊號可能完全被無用的噪音訊號淹沒。

在實際工作中,可以採用具有差動輸入的測量放大器,採用遮蔽雙膠線傳輸測量訊號,或將電壓訊號改變為電流訊號,以及採用阻容濾波等技術。

提升嵌入式產品設計的10個細節問題

2.3 數字訊號傳輸通道的抗干擾技術

數字輸出訊號可作為系統被控裝置的驅動訊號(如繼電器等),數字輸入訊號可作為裝置的響應回答和指令訊號(如行程開關、啟動按鈕等)。

數字訊號介面部分是外界干擾進入微控制器系統的主要通道之一。

在工程設計中,對數字訊號的輸入/輸出過程採取的抗干擾措施有:

1 傳輸線的遮蔽技術,如採用遮蔽線、雙膠線等;

2 採用訊號隔離措施;

3 合理接地,由於數字訊號在電平轉換過程中形成公共阻抗干擾,選擇合適的接地點可以有效抑制地線噪聲。

2.4 硬體監控電路

在微控制器系統中,為了保證系統可靠、穩定地執行,增強抗干擾能力,需要配置硬體監控電路,硬體監控電路從功能上包括以下幾個方面:

1 上電覆位:保證系統加電時能正確地啟動;

2 掉電覆位:當電源失效或電壓降到某一電壓值以下時,產生復位訊號對系統進行復位;

3 電源監測:供電電壓出現異常時,給出報警指示訊號或中斷請求訊號;

4 硬體看門狗:當處理器遇到干擾或程式執行混亂產生“死鎖”時,對系統進行復位。

2.5 PCB電路合理佈線

PCB板設計的好壞對抗干擾能力影響很大。因此,在進行PCB 設計時,必須遵守PCB 設計的一般原則,並應符合抗干擾設計的要求。下面著重說明兩點:

2.5.1關鍵器件放置

在器件佈置方面與其它邏輯電路一樣,應把相互有關的器件儘量放得靠近些,這樣可以獲得較好的抗噪聲效果。

1 時鐘發生器、晶振和CPU 的時鐘輸入端都易產生噪聲,要相互靠近些;

2 CPU 復位電路、硬體看門狗電路要儘量靠近CPU相應引腳;

3 易產生噪聲的器件、大電流電路等應儘量遠離邏輯電路。

提升嵌入式產品設計的10個細節問題

2.5.2 D/A、A/D 轉換電路地線的正確連線

D/A、A/D 晶片及取樣晶片均提供了數字地和模擬地,分別有相應的管腳。

線上路設計中,必須將所有器件的數字地和模擬地分別相連,但數字地與模擬地僅在一點上相連。另外,也可以採用遮蔽保護,遮蔽可用來隔離空間輻射。

對噪聲特別大的部件(如變頻電源、開關電源)可以用金屬盒罩起來以減少噪聲源對微控制器的干擾,對容易受干擾的部分,可以增加遮蔽罩並接地,使干擾訊號被短路接地。

提升嵌入式產品設計的10個細節問題

2.6 軟體抗干擾原理及方法

儘管我們採取了硬體抗干擾措施,但由於干擾訊號產生的原因錯綜複雜,且具有很大的隨機性,很難保證系統完全不受干擾。

因此,往往在硬體抗干擾措施的基礎上,採取軟體抗干擾技術加以補充,作為硬體措施的輔助手段。軟體抗干擾方法具有簡單、靈活方便、耗費低等特點,在系統中被廣泛應用。

2.6.1 數字濾波方法

數字濾波是在對模擬訊號多次取樣的基礎上,透過軟體演算法提取最逼近真值資料的過程。數字濾波的的演算法靈活,可選擇許可權引數,其效果往往是硬體濾波電路無法達到的。

2.6.2 輸入訊號重複檢測方法

輸入訊號的干擾是疊加在有效電平訊號上的一系列離散尖脈衝,作用時間很短。

當控制系統存在輸入干擾,又不能用硬體加以有效抑制時,可用軟體重複檢測的方法,達到“去偽存真”的目的,直到連續兩次或連續兩次以上的採集結果完全一致時方為有效。

若訊號總是變化不定,在達到最高次數限額時,則可給出報警訊號。對於來自各類開關型感測器的訊號,如限位開關、行程開關、操作按鈕等,都可採用這種輸入方式。

如果在連續採集資料之間插入延時,則能夠對付較寬的干擾。

2.6.3 輸出埠資料重新整理方法

開關量輸出軟體抗干擾設計,主要是採取重複輸出的方法,這是一種提高輸出介面抗干擾性能的有效措施。對於那些用鎖存器輸出的控制訊號,這些措施很有必要。

在儘可能短的週期內,將資料重複輸出,受干擾影響的裝置在還沒有來得及響應時,正確的資訊又到來,這樣就可以及時防止誤動作的產生。在程式結構的安排上,可為輸出資料建立一個數據緩衝區,在程式的週期性迴圈體內將資料輸出。

對於增量控制型裝置不能這樣重複送數,只有透過檢測通道,從裝置的反饋資訊中判斷資料傳輸的正確與否。在執行重複輸出功能時,對於可程式設計介面晶片,工作方式控制字與輸出狀態字一併重複設定,使輸出模組可靠地工作。

2.6.4 軟體攔截技術

當竄入微控制器系統的干擾作用在CPU 部位時,後果更加嚴重,將使系統失靈。

最典型的故障是破壞程式計數器PC 的狀態,導致程式從一個區域跳轉到另一個區域,或者程式在地址空間內“亂飛”,或者陷入“死迴圈”。

使用軟體攔截技術可以攔截“亂飛”的程式或者使程式擺脫“死迴圈”,並將執行程式納入正軌,轉到指定的程式入口。

2.6.5 “軟體看門狗”技術

PC 受到干擾而失控,引起程式“亂飛”,也可能使程式陷入“死迴圈”。當軟體攔截技術不能使失控的程式擺脫“死迴圈”的困境時,通常採用程式監視技術WDT TIMER(WDT),又稱看門狗技術,使程式脫離“死迴圈”。

WDT 是一種軟、硬體結合的抗程式跑飛措施,其硬體主體是一個用於產生定時T 的計數器或單穩,該計數器或單穩基本獨立執行,其定時輸出端接至CPU 的復位線,而其定時清零則由CPU 控制。

在正常情況下,程式啟動WDT 後,CPU 週期性的將WDT 清零,這樣WDT 的定時溢位就不會發生,如同睡眠一般不起任何作用。在受到干擾的異常情況下,CPU 時序邏輯被破壞,程式執行混亂,不可能週期性的將WDT 清零,這樣當WDT 的定時溢位時,其輸出使系統復位,避免CPU因一時干擾而陷入癱瘓的狀態。

三 總結

隨著微控制器系統的廣泛應用和技術的進步,電磁干擾問題越來越突出,推廣現有的、成熟的抗干擾技術,研究抗干擾的新技術、新方向是微控制器應用技術的當務之急。在微控制器應用系統設計及應用中,只要充分考慮裝置的電磁相容性,並透過各種技術措施來消除干擾,就可以大大提高裝置的穩定性和可靠性。

文章整理自網路,如有侵權,請聯絡刪除

——END——

提升嵌入式產品設計的10個細節問題