13.3工控機(jī)的抗擾問題
工控機(jī)與可編程邏輯控制器的區(qū)別不在于它們的外形和使用環(huán)境,而在于它們的功能。可編程邏輯控制器來源于以繼電器為特征的電氣邏輯控制,而工控機(jī)則來源于計(jì)算機(jī)。在早期,可編程邏輯控制器只能用于進(jìn)行邏輯運(yùn)算,現(xiàn)在其功能越來越強(qiáng)大了,但就總體來說,還是適合于進(jìn)行以順序控制為主的自動(dòng)化工程,如用來進(jìn)行流程的控制。
工控機(jī)作為控制設(shè)備,主要用在以過程控制為主的自動(dòng)化工程,如化工工業(yè)的生產(chǎn)等領(lǐng)域。
工控機(jī)實(shí)際上是一臺(tái)加固的增強(qiáng)型個(gè)人計(jì)算機(jī)或工業(yè)個(gè)人計(jì)算機(jī),它可以作為一個(gè)工業(yè)控制器在工業(yè)環(huán)境中可靠運(yùn)行。
?
工控機(jī)的主要特點(diǎn)如下:
(1)可靠性。工業(yè)PC具有在粉塵、煙霧、高/低溫、潮濕、震動(dòng)、腐蝕中快速診斷和可維護(hù)性等特點(diǎn),其MTTR(MeanTimetoRepair)一般為5min,MTTF為100000h以上,而普通PC的MTTF僅為10000~15000h。
(2)實(shí)時(shí)性。工控機(jī)對(duì)工業(yè)過程進(jìn)行實(shí)時(shí)在線檢測(cè)與控制,對(duì)工況變化做出快速響應(yīng),及時(shí)進(jìn)行采集和輸出調(diào)節(jié)。遇險(xiǎn)能自復(fù)位(工控機(jī)里看門狗的這種功能是普通個(gè)人計(jì)算機(jī)所不具備的),保證系統(tǒng)正常運(yùn)行。
(3)擴(kuò)充性。工業(yè)PC由于采用底板+CPU卡結(jié)構(gòu),因而具有很強(qiáng)的輸入/輸出功能,最多可擴(kuò)充20個(gè)板卡,能與工業(yè)現(xiàn)場(chǎng)的各種外設(shè)、板卡如與熱流道控制器、視頻監(jiān)控系統(tǒng)、車輛檢測(cè)儀等相連,以完成各種任務(wù)。
(4)系統(tǒng)監(jiān)測(cè)和自復(fù)位功能。能在系統(tǒng)出現(xiàn)故障時(shí)迅速報(bào)警,并在無人干預(yù)的情況下使系統(tǒng)自動(dòng)恢復(fù)運(yùn)行。
(5)軟、硬件的兼容性。能利用ISA和PCI及PICMG資源,并支持各種操作系統(tǒng)、多種編程語言,多任務(wù)操作系統(tǒng),充分利用普通個(gè)人計(jì)算機(jī)所積累的軟件和硬件資源。
13.3.1工控機(jī)使用中的硬件抗擾措施
工控機(jī)使用中的抗干擾問題與前面講到的單片機(jī)和可編程邏輯控制器中使用的抗干擾措施沒有本質(zhì)區(qū)別,所有措施均可沿用,但是工控機(jī)作為一個(gè)工業(yè)現(xiàn)場(chǎng)的控制設(shè)備,遇到的干擾情況可能更加復(fù)雜,電磁干擾可能更強(qiáng),因此有必要再重復(fù)提出以下幾點(diǎn),以強(qiáng)調(diào)其重要性。
1.采用性能優(yōu)良的電源,抑制由電網(wǎng)引入的干擾
在工控機(jī)系統(tǒng)中,電源占有極其重要的地位,電網(wǎng)干擾串入工控機(jī)系統(tǒng),主要是通過工控機(jī)系統(tǒng)中的各控制單元的供電電源、含變送器的供電電源和具有直接電氣連接的儀表供電電源等耦合進(jìn)入的,現(xiàn)在,對(duì)工控機(jī)系統(tǒng)供電的電源,不可能都采用隔離性能較好的電源。例如,變送器供電的電源及直接電氣連接的儀表的供電電源的抗干擾性并沒受到足夠的重視,雖然采取了一定的隔離措施,但如果仍使用分布參數(shù)大、抑制干擾能力差的隔離變壓器,會(huì)串入電磁干擾。所以,對(duì)于變送器和共用信號(hào)儀表供電應(yīng)選擇分布電容小、抑制帶寬的配電設(shè)備,以減少工控機(jī)系統(tǒng)的干擾。
此外,為保證電網(wǎng)供電不被中斷,可采用在線式不間斷供電電源(UPS)供電,以提高主要控制設(shè)備供電的安全可靠性,并且在線式不間斷電源還具有較強(qiáng)的干擾隔離性能,是工控機(jī)系統(tǒng)的理想電源。
2.電纜選擇和敷設(shè)
為了減少動(dòng)力電纜輻射電磁干擾,尤其是變頻裝置饋電電纜,在工程中可采用銅帶鎧裝屏蔽電力電纜。實(shí)踐證明,其抗干擾效果是比較理想的。
為了減少信號(hào)間的電磁干擾,不同信號(hào)應(yīng)該采用不同電纜進(jìn)行傳輸,信號(hào)電纜應(yīng)按傳輸信號(hào)種類分別捆扎、分開敷設(shè),嚴(yán)禁用同一條電纜中的不同導(dǎo)線同時(shí)傳送動(dòng)力電源和信號(hào)。另外,信號(hào)線不能和動(dòng)力電纜靠近及平行敷設(shè),以減少電磁干擾。
3.濾波
信號(hào)在接入工控機(jī)之前,在信號(hào)線上常要進(jìn)行共模濾波,減少共模干擾。具體辦法是:在信號(hào)線接入印制電路板的地方串接一個(gè)100Ω的電阻(或串接一粒磁珠),在電阻的另一端再對(duì)地并接一個(gè)100pF的電容。注意,共模濾波的地與印制電路板里的地通常不連在一起,可單獨(dú)引出,與機(jī)內(nèi)的共用接地點(diǎn)接在一起。
4.完善接地系統(tǒng)
系統(tǒng)的接地方式有浮地、直接接地和電容接地三種方式。對(duì)工控機(jī)控制系統(tǒng)而言,它屬高速低電平的控制裝置,應(yīng)采用直接接地方式。由于信號(hào)電纜分布電容和輸入裝置濾波等因素的影響,裝置之間的信號(hào)交換頻率一般都低于1MHz,所以工控機(jī)控制系統(tǒng)的接地線應(yīng)采用一點(diǎn)接地和有條件地采用串聯(lián)一點(diǎn)接地的方式,集中布置的工控機(jī)系統(tǒng)適用于并聯(lián)一點(diǎn)接地的方式,各裝置的柜體中心接地點(diǎn)以單獨(dú)的接地引向接地極。如果裝置間距較大,可以采用串聯(lián)一點(diǎn)接地方式,要用一根大截面積銅母線(或絕緣電纜)連接各裝置的柜體中心接地點(diǎn),然后將接地母線直接連接至接地極。接地線要采用截面積大于22mm2的銅導(dǎo)線,總母線使用截面積大于60mm2的銅排,接地極的接地電阻要小于2Ω,接地極最好埋在距建筑物10~15m遠(yuǎn)處,而且工控機(jī)系統(tǒng)接地點(diǎn)必須與強(qiáng)電設(shè)備接地點(diǎn)相距10m以上。信號(hào)源接地時(shí),屏蔽層應(yīng)在信號(hào)側(cè)接地,不接地時(shí),應(yīng)在工控機(jī)側(cè)接地,信號(hào)線中間有接頭時(shí),屏蔽層應(yīng)牢固連接并進(jìn)行絕緣處理,一定要避免多點(diǎn)接地,多個(gè)測(cè)點(diǎn)信號(hào)的屏蔽雙絞線與多芯雙絞總屏蔽電纜連接時(shí),各屏蔽層應(yīng)相互連接好,并經(jīng)絕緣處理,選擇適當(dāng)?shù)慕拥靥巻吸c(diǎn)接地。
13.3.2工控機(jī)使用中的軟件抗擾措施
工業(yè)現(xiàn)場(chǎng)各種動(dòng)力設(shè)備在不斷地啟停運(yùn)行。使得現(xiàn)場(chǎng)環(huán)境惡劣,電磁干擾嚴(yán)重。工業(yè)控制計(jì)算機(jī)在這樣的環(huán)境里面臨著巨大的考驗(yàn)??梢哉f我們研制的工業(yè)控制系統(tǒng)能否正常運(yùn)行,并且產(chǎn)生出應(yīng)有的經(jīng)濟(jì)效益,其抗干擾能力是一個(gè)關(guān)鍵的因素。因此,除了整個(gè)系統(tǒng)的結(jié)構(gòu)和每個(gè)具體的工控機(jī)都需要仔細(xì)設(shè)計(jì)硬件抗干擾措施之外,還需要注重軟件抗干擾措施的應(yīng)用。在多年的工業(yè)控制研究中,深感工業(yè)現(xiàn)場(chǎng)意外因素太多并且危害很大。有時(shí)一個(gè)偶然的人為或非人為干擾,例如,并不很強(qiáng)烈的雷擊,就使得我們自認(rèn)為無懈可擊的硬件抗干擾措施無能為力,工控機(jī)死機(jī)了(即程序跑飛了)或者控制出錯(cuò)了(此時(shí)CPU內(nèi)部寄存器內(nèi)容被修改或者RAM和I/O口數(shù)據(jù)被修改)。這在某些重要的工業(yè)環(huán)節(jié)上將造成巨大的事故。使用軟件抗干擾措施就可以在一定程度上避免和減輕這些意外事故的后果。軟件抗干擾技術(shù)就是利用軟件運(yùn)行過程中對(duì)自己進(jìn)行自監(jiān)視和工控網(wǎng)絡(luò)中各機(jī)器間的互監(jiān)視,來監(jiān)督和判斷工控機(jī)是否出錯(cuò)或失效的一個(gè)方法。這是工控系統(tǒng)抗干擾的最后一道屏障。
1.工控機(jī)的系統(tǒng)結(jié)構(gòu)
在不同的工控機(jī)控制系統(tǒng)中,工控系統(tǒng)雖然完成的功能不同,但就其結(jié)構(gòu)來說,一般具有以下特點(diǎn)。
(1)實(shí)時(shí)性。工控機(jī)控制系統(tǒng)中有些事件的發(fā)生具有隨機(jī)性,要求工控軟件能夠及時(shí)地處理隨機(jī)事件。
(2)周期性。工控軟件在完成系統(tǒng)的初始化工作后,隨之進(jìn)入主程序循環(huán),在執(zhí)行主程序的過程中,若有中斷申請(qǐng),則在執(zhí)行完相應(yīng)的中斷服務(wù)程序后,繼續(xù)主程序循環(huán)。
(3)相關(guān)性。工控軟件由多個(gè)任務(wù)模塊組成,各模塊配合工作,相互關(guān)聯(lián),相互依存。
(4)人為性。工控軟件允許操作人員干預(yù)系統(tǒng)的運(yùn)行,調(diào)整系統(tǒng)的工作參數(shù)。
2.電磁干擾對(duì)工控機(jī)系統(tǒng)的影響
在理想情況下,工控軟件可以正常執(zhí)行,但在工業(yè)現(xiàn)場(chǎng)環(huán)境的干擾下,工控軟件的周期性、相關(guān)性及實(shí)時(shí)性受到破壞,程序無法正常執(zhí)行,導(dǎo)致工業(yè)控制系統(tǒng)的失控。
(1)程序計(jì)數(shù)器PC值發(fā)生變化,破壞了程序的正常運(yùn)行。PC值被干擾后的數(shù)據(jù)是隨機(jī)的,因此引起程序執(zhí)行混亂,在PC值的錯(cuò)誤引導(dǎo)下,程序執(zhí)行一系列毫無意義的指令,最后常常進(jìn)入一個(gè)毫無意義的“死循環(huán)”中,使系統(tǒng)失去控制。
(2)輸入/輸出接口狀態(tài)受到干擾,破壞了工控軟件的相關(guān)性和周期性,造成系統(tǒng)資源被某個(gè)任務(wù)模塊獨(dú)占,使系統(tǒng)發(fā)生“死鎖”
(3)數(shù)據(jù)采集誤差加大,干擾侵入系統(tǒng)的前向通道,疊加在信號(hào)上,導(dǎo)致數(shù)據(jù)采集誤
差加大,特別是當(dāng)前向通道的傳感器接口是小電壓信號(hào)輸入時(shí),此現(xiàn)象更加嚴(yán)重。
(4)RAM數(shù)據(jù)區(qū)受到干擾發(fā)生變化。根據(jù)干擾竄入渠道、受干擾數(shù)據(jù)性質(zhì)的不同,系
統(tǒng)受損壞的狀況不同,有的造成數(shù)值誤差,有的使控制失靈,有的改變程序狀態(tài),有的改變
某些部件(如定時(shí)器/計(jì)數(shù)器、串行口等)的工作狀態(tài)等。
(5)控制狀態(tài)失靈。在工控機(jī)控制系統(tǒng)中,控制狀態(tài)的輸出常常是依據(jù)某些條件狀態(tài)
的輸入和條件狀態(tài)的邏輯處理結(jié)果而定,在這些環(huán)節(jié)中,由于干擾的侵入,會(huì)造成條件狀態(tài)
錯(cuò)誤,致使輸出控制誤差加大,甚至控制失常。
3.工控系統(tǒng)的自監(jiān)視
自監(jiān)視法是工業(yè)控制計(jì)算機(jī)自己對(duì)自己的運(yùn)行狀態(tài)的監(jiān)視。
一般的工控機(jī)CPU內(nèi)部具有看門狗定時(shí)器(WatchdogTimer),使用定時(shí)中斷來監(jiān)視程序運(yùn)行狀態(tài)。定時(shí)器的定時(shí)時(shí)間稍大于主程序正常運(yùn)行一個(gè)循環(huán)的時(shí)間,在主程序運(yùn)行過程中執(zhí)行一次定時(shí)器時(shí)間常數(shù)刷新操作。這樣,只要程序正常運(yùn)行,定時(shí)器不會(huì)出現(xiàn)定時(shí)中斷。而當(dāng)程序運(yùn)行失常,不能及時(shí)刷新定時(shí)器時(shí)間常數(shù)而導(dǎo)致定時(shí)中斷,利用定時(shí)中斷服務(wù)程序?qū)⑾到y(tǒng)復(fù)位。在8031應(yīng)用系統(tǒng)中作為軟件抗干擾的一個(gè)事例,具體做法如下。
(1)使用8155的定時(shí)器所產(chǎn)生的“溢出”信號(hào)作為8031的外部中斷源INT1。用555定時(shí)器作為8155中定時(shí)器的外部時(shí)鐘輸入。
(2)8155定時(shí)器的定時(shí)值稍大于主程序的正常循環(huán)時(shí)間。
(3)在主程序中,每循環(huán)一次,對(duì)8155定時(shí)器的定時(shí)常數(shù)進(jìn)行刷新。
(4)在主控程序開始處,對(duì)硬件復(fù)位還是定時(shí)中斷產(chǎn)生的自動(dòng)恢復(fù)進(jìn)行分類判斷處理。然而,這并不等于萬無一失。例如,看門狗電路本身失效;設(shè)置看門狗的指令正好在取指令時(shí)被干擾而讀錯(cuò);看門狗“發(fā)現(xiàn)”程序跑飛之后,其產(chǎn)生的復(fù)位脈沖或者NMI申請(qǐng)信號(hào)正好被干擾而沒奏效,等等。雖然以上導(dǎo)致看門狗失效的因素的概率很小,但總是存在的。另外,還有相當(dāng)數(shù)量的工業(yè)控制計(jì)算機(jī)沒有看門狗電路。
4.軟件自監(jiān)視法
1)隨時(shí)監(jiān)督檢查程序計(jì)數(shù)器PC的值是否超出程序區(qū)
計(jì)算機(jī)正常運(yùn)行時(shí),其PC值一定在程序區(qū)內(nèi),如果PC值跑出程序區(qū),計(jì)算機(jī)肯定已發(fā)生了程序跑飛。檢查程序計(jì)數(shù)器PC值是否在程序區(qū)內(nèi)的方法是在一個(gè)經(jīng)常要產(chǎn)生外部中斷的某個(gè)中斷服務(wù)程序中,讀取轉(zhuǎn)入該中斷時(shí)壓入堆棧的斷點(diǎn)地址。如果該地址在程序區(qū)內(nèi),則認(rèn)為PC值正常,否則一定是程序跑飛了。此時(shí),程序跳轉(zhuǎn)到機(jī)器的重啟動(dòng)入口或復(fù)位入口,機(jī)器重新啟動(dòng),于是機(jī)器自救活。如果沒有一個(gè)合適的中斷源,可以專門設(shè)置一個(gè)定時(shí)中斷或幾個(gè)定時(shí)中斷,在中斷服務(wù)程序中檢查PC值是否合法,一旦發(fā)現(xiàn)不對(duì)就立即轉(zhuǎn)入機(jī)器的重啟動(dòng)入口,定時(shí)器中斷的時(shí)間常數(shù)可視機(jī)器的繁忙程度和重要性設(shè)定,一般從幾毫秒到幾千毫秒都可以。
這個(gè)方法的局限性是不能查出PC值在程序區(qū)內(nèi)的亂跳,即此時(shí)PC值雖受干擾卻并沒有超出程序區(qū),而是由于錯(cuò)位亂拼指令而形成一些莫名其妙的操作或死循環(huán)。
評(píng)論
查看更多