作為工業自動化核心部件的稱重儀表,不同于商用衡器,往往面臨更復雜的工況。對于拌和站電磁環境比較惡劣的情況下,一些大規模集成電路常常會受到干擾,導致不能正常工作或在錯誤狀態下運行,造成的后果往往是很嚴重的。因此對抗干擾性能的了解是稱量儀表選型的關鍵。我們在對珠海市長陸工業自動控制系統有限公司生產的UNI800與TR600和其它同類廠家產品進行反復比較過程中,獲得了一個好單片機系統(稱重儀表)應具備的抗干擾性能方面的分析經驗。在此與同行分享,希望以此促進行業技術水平的提高。儀表電磁兼容性(EMC)是一項重要指標,它包含系統的發射和敏感度兩方面的問題。如果一個單片機系統符條件合下面三個條件,則該系統是電磁兼容的:
1.對其他系統不產生干擾;
2.對其他系統的發射不敏感;
3.對系統本身不產生干擾;
假若干擾不能*消除,但也要使干擾減少到小。干擾的產生不是直接的(通過導體、公共阻抗耦合等),就是間接的(通過串擾或輻射耦合)。電磁干擾的產生是通過導體和通過輻射,很多磁電發射源、如光照、繼電器、DC電機和日光燈都可以引起干擾;AC電源線、互連電纜、金屬電纜和子系統的內部電路也都可能產生輻射或接收到不希望的信號。在高速單片機系統中,時鐘電路通常是寬帶噪聲的產生源,這些電路可產生高達300MHz的諧波失真,在系統中應該把他們去掉。另外,在單片機系統中容易受影響的是復位線,中斷線和控制線。
1.干擾的耦合方式
(1)傳導性EMI
一種明顯而往往被忽略的能引起電路中噪聲的路徑是經過導體。一條穿過噪聲環境的導線可檢拾噪聲并把噪聲送到其他電路引起干擾。設計人員必須避免導線檢拾噪聲和在噪聲引起干擾前用去耦辦法去除噪聲。普通的例子是噪聲通過電源進入電路。若電源本身或連接到電源的其他電路是干擾源,則在電源線進入電路之前必須對其去耦。
(2)公共阻抗耦合
當來自兩個不同電路的電流流經一個公共阻抗時就會產生共阻抗耦合。阻抗上的壓降由兩個電路決定,來自兩個電路的地電流流過共地阻抗。電路a的地電位被電流b調制,噪聲信號或DC補償經共地阻抗從電路b耦合到電路a。
(3)輻射耦合
經輻射的耦合通稱串擾。串擾發生在電流流經導體時產生電磁場,而電磁場在鄰近的導體中感應瞬態電流。
(4)輻射發射
輻射發射有兩種基本類型;差分模式(DM)和共模(CM)。共模輻射或單極天線輻射是由無意的壓降引起的,它使電路中所有地連接抬高到系統電地位之上。就電場大小而言,CM輻射是比DM輻射更為嚴重的問題。為使CM輻射小,必須用切合實際的設計使共模電流降到零。
2.影響EMC的因數
(1)電壓。電源電壓越高,意味著電壓振幅越大,發射就更多,而低電源電壓影響敏感度。
(2)頻率。高頻產生更多的發射,周期性信號產生更多的發射。在高頻單片機系統中,當器件開關時產生電流尖峰信號;在模擬系統中,當負載電流變化時產生電流尖峰信號。
(3)接地。在所有EMC問題中,主要問題是不適當的接地引起的。有三種信號接地方法:單點、多點和混合。在頻率低于1MHz時,可采用單點接地方法,但不適宜高頻;在高頻應用中,采用多點接地?;旌辖拥厥堑皖l用單點接地,而高頻用多點接地的方法。地線布局是關鍵,高頻數字電路和低電平模擬電路的接地電路絕不能混合。
(4)PCB設計。適當的印刷電路板(PCB)布線對防止EMI是至關重要的。
(5)電源去耦。 當器件開關時,在電源線上會產生瞬態電流,必須衰減和濾掉這些瞬態電流。來自高di/dt源的瞬態電流導致地和線跡“發射”電壓,高di/dt產生大范圍的高頻電流,激勵部件和線纜輻射。流經導線的電流變化和電感會導致壓降,減小電感或電流隨時間的變化可使該壓降小。
3.稱量儀表對抗干擾與復雜工況處理的硬件要求
在硬件上 我們要求儀表廠家必須具有以下措施:
(1) PCB及電路抗干擾措施
印刷電路板的抗干擾設計與具體電路有著密切的關系,這里僅就PCB抗干擾設計的幾項常用措施作一些說明。
① 電源線設計
根據印刷線路板電流的大小,盡量加粗電源線寬度,減少環路電阻;同時,使電源線、地線的走向和數據傳遞的方向一致,這樣有助于增強抗噪聲能力。
② 地線設計
在單片機系統設計中,接地是控制干擾的重要方法。如能將接地和屏蔽正確結合來使用,可解決大部分干擾問題。單片機系統中地線結構大致有系統地、機殼地(屏蔽地)、數字地(邏輯地)和模擬地等。
在地線設計中應注意以下幾點:
a.正確選擇單點接地與多點接地。在低頻電路中,信號的工作頻率小于1MHz,它的布線和器件間的電感影響較小,而接地電路形成的環流對干擾影響較大,因而采用一點接地的方式。當信號工作頻率大于10MHz,地線阻抗變得很大,此時應盡量降低地線阻抗,應采用就近多點接地。當工作頻率在1~10MHz時,如果采用一點接地,其地線長度不應超過波長的1/20,否則應采用多點接地法。
b. 數字地與模擬地分開。電路板上既有高速邏輯電路,又有線性電路,應使它們盡量分開,而兩者的地線不要相混,分別與電源端地線相連。低頻電路的地應盡量采用單點并聯接地,實際布線有困難時可部分串聯后再并聯接地;高頻元件周圍盡量用柵格狀大面積地箔,要盡量加大線性電路的接地面積。
C.接地線應盡量加粗。若接地線用很細的線條,則接地電位會隨電流的變化而變化,致使電子產品的定時信號電平不穩,抗噪聲性能降低。因此應將接地線盡量加粗,使它能通過三倍于印刷電路板的允許電流。如有可能,接地線的寬度應大于3 mm。
d.接地線構成閉環路。設計只由數字電路組成的印刷電路板的地線系統時,將接地線做成閉路可以明顯地提高抗噪聲能力。其原因在于:印刷電路板上有很多集成電路元件,尤其遇有耗電多的元件時,因受接地線粗細的限制,會在地線上產生較大的電位差,引起抗噪聲能力下降;若將接地線構成環路,則會縮小電位差值,提高電子設備的抗噪聲能力。
③ 退耦電容配置
PCB設計的常規做法之一,是在印刷板的各個關鍵部位配置適當的退耦電容。退耦電容的一般配置原則是:
a.電源輸入端跨接10~100μF的電解電容器。如有可能,接100μF以上的更好。
b.原則上每個集成電路芯片都應布置一個0.01pF的瓷片電容。如遇印刷板空隙不夠,可每4~8個芯片布置一個1~10pF的鉭電容。
c.對于抗噪聲能力弱、關斷時電源變化大的器件,如RAM、ROM存儲器件,應在芯片的電源線和地線之間直接接入退耦電容。
d.電容引線不能太長,尤其是高頻旁路電容不能有引線。
此外,還應注意以下兩點:
a.在印刷板中有接觸器、繼電器、按鈕等元件時,操作它們時均會產生較大火花放電,必須采用RC電路來吸收放電電流。一般R取1~2kΩ,C取2.2~47μF。
b.CMOS的輸入阻抗很高,且易受感應,因此在使用時,對不用端要接地或接正電源。
輸入/輸出的電磁兼容性設計
在單片機系統中輸入/輸出也是干擾源的傳導線,和接收射頻干擾信號的拾檢源,稱重儀表設計時一般要采取有效的措施:
①.采用必要的共模/差模抑制電路,同時也要采取一定的濾波和防電磁屏蔽措施以減小干擾的進入。
②.在條件許可的情況下盡可能采取各種隔離措施(如光電隔離或者磁電隔離),從而阻斷干擾的傳播。
(3)單片機復位電路的設計
在單片機系統中,看門狗系統對整個單片機的運行起著特別重要的作用,因為所有的干擾源不可能全部被隔離或去除,一旦進入CPU干擾程序的正常運行,那么復位系統結合軟件處理措施就成了一道有效的糾錯防御的屏障了。常用的復位系統有以下兩種:
①.外部復位系統。外部“看門狗”電路可以自己設計也可以用專門的“看門狗”芯片來搭建。然而,他們各有優缺點,大部分 “看門狗”芯片對低頻“喂狗”信號不能響應,而高頻“喂狗”信號都能響應,使其在低頻“喂狗”信號下產生復位動作而在高頻的“喂狗”信號下不產生復位動作,這樣,如果程序系統陷入一個死循環,而該循環中恰巧有著“喂狗”信號的話,那么該復位電路就無法實現它的應有的功能了。然而,我們自己可以設計一個具有帶通的“喂狗”電路和其他復位電路構成的系統就是一個很有效外部監控系統了。
②.現在越來越多的單片機都帶有自己的片上復位系統,這樣用戶就可以很方便的使用其內部的復位定時器了,但是,有一些型號的單片機它的復位指令太過于簡單,這樣也會存在象上述死循環那樣的“喂狗”指令,使其失去監控作用。有一些單片機的片上復位指令就做的比較好,一般他們把“喂狗”信號做成固定格式的多條指令依順序來執行,如果有一定錯誤則該“喂狗”操作無效,這樣就大大提高了復位電路的可靠性。
(4)振蕩器
大部分的單片機都有一個耦合于外部晶體或陶瓷諧振器的振蕩器電路。在PCB上,要求外接是電容、晶體或陶瓷諧振器的引線越短越好。RC振蕩器對干擾信號有潛在的敏感性,它能產生很短的時鐘周期,因而選晶體或陶瓷諧振器。另外,石英晶體的外殼要接地。
(5)防雷擊措施
室外使用的單片機系統或從室外架空引入室內的電源線、信號線,要考慮系統的防雷擊問題。常用的防雷擊器件有:氣體放電管、TVS(Transient Voltage Suppression)等。氣體放電管是當電源的電壓大于某一數值時,通常為數十V或數百V,氣體擊穿放電,將電源線上強沖擊脈沖導入大地。TVS可以看成兩個并聯且方向相反的齊納二極管,當兩端電壓高于某一值時導通。其特點是可以瞬態通過數百乃上千A的電流。
(6)電源系統抗干擾
由于工業電源特別是攪拌設備的電源工況復雜,因此如何在不穩定電源場合確保儀表工作穩定尤為重要。
常用的開關電源與線性電源相比各有優缺點:開關電源作為恒功率器件,外部供電電壓高則輸出電流小,電壓低則輸出電流大,從而維持輸入到儀表內部的功率恒定,從而減少儀表內部溫度差,更不會因過熱造成元件損壞。而線性電源在電壓升高時,電流將增大,特別是電壓運行高于240VAC時,內部溫升加快,會造成變壓器或三端穩壓器等損壞,在低于220VAC時,會造成運行不可靠或停止運行。所以一般工業控制采用開關電源方式,而試驗或商用設備采用線性電源較為合理。由于電源波動會造成儀表輸出的激勵電壓波動,因此稱量值會隨之變化,故應采用較為保險的多級穩壓方案。UNI800與TR600均采用二級穩壓,當外部電壓波動,對儀表讀數影響甚??;而有些儀表采用一級穩壓,稱重數值隨外部電壓波動而異常變化根本無法滿足要求。
(7)模擬信號輸出
有些稱重儀表廠家為降低成本,往往采用12位脈寬調制方法輸出模擬信號,這有幾個壞處:①由于脈沖來自單片機系統,占用晶振資源,往往造成輸出模擬值滯后儀表讀數很多;②低位數的脈寬調制往往在重復性、線性上較差,再加上信號給上位機進行A/D轉換又有精度損失,故此方案用于配料 精度高場合不可行。UNI800及TR600由于采用16位DA轉換輸出模擬信號而成為較佳的選擇。
(8)來自稱體的干擾
由于秤體的結構變化或物料的粘附等造成稱重數值漂移,因此必須在啟動配料時須有自動清零功能,UNI800與TR600的此功能確保每次配料的準確性。
(9)信號輸入范圍
很多添加量較小的材料因秤體自重較重,零位信號較高,放大信號也由于使用3mv/v傳感器而接近30mv,對于此要求很多儀表由于放大器設計所限只能接受25m號而導致不能調校,只能通過加高精度電阻下拉信號電壓,但這往往對于野外作業的工地是個難題。因此有合理的適合攪拌系統使用信號輸入范圍也應成為選型要求之一。UNI800及TR600產品,零位可調電壓在0-15mv,放大可調至35mv,非常適合瀝青秤、外加劑秤使用。
4.對干擾措施的軟件處理方法
電磁干擾源所產生的干擾信號在一些特定的情況下(比如在一些電磁環境比較惡劣的情況下)是無法*消除的,終將會進入CPU處理的的核心單元,這樣在一些大規模集成電路常常會受到干擾,導致不能正常工作或在錯誤狀態下工作。特別是像RAM這種利用雙穩態進行存儲的器件,往往會在強干擾下發生翻轉,使原來存儲的“0”變為“1”,或者“1”變為“0”;一些串行傳輸的時序及數據會因干擾而發生改變;更嚴重的會破壞一些重要的數據參數等;造成的后果往往是很嚴重的。在這種情況下軟件設計的好壞直接影響到整個系統的抗干擾能力的高低。
⑴ 程序會因為電磁干擾大致會一下幾種情況:
①程序跑飛。
這種情況是常見的干擾結果,一般來說有一個好的復位系統或軟件幀測系統即可,對整個運行系統的不會產生太大的影響。
② 死循環或不正常程序代碼運行。
當然這種死循環和不正常程序代碼并非設計人員有意寫入的,我們知道程序的指令是由字節組成的,有的是單字節指令而有的是多字節指令,當干擾產生后使得PC指針發生變化,從而使原來的程序代碼發生了重組產生了不可預測的可執行的程序代碼,那么,這種錯誤是致命的,它會有可能會去修改重要的數據參數,有可能產生不可預測的控制輸出等一系列錯誤狀態。
⑵ 對重要參數儲存的措施
一般情況下,我們可以采用錯誤檢測與糾正來有效地減少或避免這種情況的出現。根據檢錯、糾錯的原理,主要思想是在數據寫入時,根據寫入的數據生成一定位數的校驗碼,與相應的數據一起保存起來;當讀出時,同時也將校驗碼讀出,進行判決。如果出現一位錯誤則自動糾正,將正確的數據送出,并同時將改正以后的數據回寫覆蓋原來錯誤的數據;如果出現兩位錯誤則產生中斷報告,通知CPU進行異常處理。所有這一切動作都是靠軟件設計自動完成的,具有實時性和自動完成的特點。通過這樣的設計,能大大提高系統的抗干擾能力,從而提高系統的可靠性。
檢錯與糾錯原理:
首先來看看檢錯和糾錯的基本原理。進行差錯控制的基本思想是在信息碼組中以一定規則加入不同方式的冗余碼,以便在信息讀出的時候依靠多余的監督碼或校碼碼來發現或自動糾正錯誤。
針對誤碼發生的特點,即錯誤發生的隨機性和小概率性,它幾乎總是隨機地影響某個字節中的某一位(bit),因此,如果能夠設計自動糾正一位錯誤,而檢查兩位錯誤的編碼方式。就可以大大提高系統的可靠性。
⑵ 對RAM和FLASH(ROM)的檢測
在編制程序時我們是寫入一些檢測程序來測試RAM和FLASH(ROM)的數據代碼,看有無發生錯誤,一旦發生要立即糾正,糾正不了的要及時給出錯誤指示,以便用戶去處理。
另外,在編制程序時加入程序冗余是*的。在一定的地方加入三條或三條以上NOP指令對程序的重組有著很有效防止作用。同時,在程序的運行狀態中要引入標志數據和檢測狀態,從而及時發現和糾正錯誤產生。