電梯串行通訊系統(tǒng)可靠性設(shè)計
3.1.2 共模干擾
共模干擾是由于微處理器、放大器地和信號源地之間的電位差而產(chǎn)生的干擾,也稱為縱向干擾或共態(tài)干擾。
在平衡傳輸中,對于采用差動輸入結(jié)構(gòu)的接收單元而言,共模干擾不起作用;但是在不平衡傳輸結(jié)構(gòu)中,共模干擾將會轉(zhuǎn)為差模干擾而對接收單元造成影響,而且不平衡程度越大,影響就越嚴(yán)重[1]。
共模干擾的抑制措施主要有如下3種:變壓器隔離、光電隔離和浮地屏蔽。變壓器隔離就是利用變壓器將模擬信號電路與數(shù)字信號電路隔離開來。光電隔離是利用光電耦合器來實現(xiàn)兩個電路系統(tǒng)間的隔離。浮地屏蔽是采用浮地隔離式放大器來抑制共模干擾電壓。相比較而言,光電隔離體積小,成本低,實現(xiàn)比較容易,應(yīng)用廣泛。例如,在采用CANBUS網(wǎng)絡(luò)的電梯串行通訊系統(tǒng)中,CAN控制器PCA82C200與CAN驅(qū)動器PCA82C250之間加接了高速光耦芯片 6N137來實現(xiàn)光電隔離,以提高系統(tǒng)的抗干擾能力.
信號從6N137的輸入端引腳輸入,發(fā)光二極管發(fā)光,經(jīng)片內(nèi)光通道傳送到光敏二極管,反向偏置的光敏管經(jīng)光照后導(dǎo)通,經(jīng)電流—電壓轉(zhuǎn)換后送到與門的有關(guān)輸入端,與門的另一個輸入端為使能端。當(dāng)使能端為高電平時,與門輸出高電平,經(jīng)輸出三極管反向后光電隔離器輸出低電平。當(dāng)輸出信號電源小于觸發(fā)閥值且使能端為低時,輸出高電平,但這個邏輯高是極電集開路的,可針對接收電路加上拉電阻或電壓調(diào)整電路。這樣就實現(xiàn)了CAN總線和CAN控制器之間的隔離,避免了CAN總線上的通訊干擾影響CAN控制器的工作。
3.1.3 長線傳輸干擾
信號在長線傳輸中會遇到3個問題:一是長線傳輸易受到外界干擾,二是具有信號延時,三是高速變化的信號在長線中傳輸時會出現(xiàn)波反射現(xiàn)象。采用終端或始端阻抗匹配,可以消除長線傳輸中的波反射或把它抑制到最低限度,采用雙絞線作為信號線可以部分抑制外界信號干擾。
3.2 接地技術(shù)
接地是抗干擾措施中的關(guān)鍵步驟,因此對接地必須慎重處理。下面針對電梯串行通訊系統(tǒng)的特點并結(jié)合筆者的個人體會,給出一些接地方法。
3.2.1 電路板內(nèi)的信號地
電路板內(nèi)的信號地分為如下兩種情況:
(1)對于采用了諸如模擬放大器、模擬開關(guān)、D/A轉(zhuǎn)換器等高精度模擬器件的電路板,接地必須嚴(yán)格要求。主要有:所有模擬器件(包括可能的輸入/輸出)的接地端必須單點并聯(lián)接地,各地線應(yīng)盡量放寬,絕對避免串聯(lián)接地形成的環(huán)路。
?。?)對于純數(shù)字電路的電路板,各器件可以允許多點接地,但地線應(yīng)盡可能粗,并盡量減少串聯(lián)接地的情況。尤其對于高頻信號器件,電路中應(yīng)采用大面積直接接地,以減少電路間的相互影響。
3.2.2 模擬量輸入信號與屏蔽的接地
(1)如果信號源不接地,差分放大電路端接地,則屏蔽體應(yīng)在放大器端接地,且接地應(yīng)保證從放大器到大地的電阻小于1W。(2)如果信號源端須接地,差分放大器端不接地,則屏蔽體應(yīng)在信號源接地。(3)如果信號源端與差分放大電路端都必須接地,則對信號必須采用變壓器或光電隔離等措施,且屏蔽體在信號源端接地。(4)如果可以選擇在信號源端或放大電路端接地,則可將信號線與屏蔽層在信號源處接地。
4 串行通訊系統(tǒng)軟件的可靠性設(shè)計
4.1 利用軟件提高系統(tǒng)可靠性
電梯串行通訊系統(tǒng)是由硬件和軟件組成的,因此系統(tǒng)的可靠性也分硬件可靠性和軟件可靠性兩個方面。通過提高元器件的質(zhì)量,采用冗余設(shè)計,進行預(yù)防性維護,增設(shè)抗干擾裝置等措施,能夠提高硬件的可靠性。但是,要讓整個系統(tǒng)得到理想的可靠性上述措施還顯不夠,還要利用軟件來進一步提高系統(tǒng)的可靠性。利用軟件提高系統(tǒng)可靠性的措施主要有下面幾種。
4.1.1 設(shè)置自檢程序
系統(tǒng)開機后先對硬件進行自檢,如硬件有故障,系統(tǒng)則停止運行并報警。另外,各節(jié)點微處理器內(nèi)部設(shè)置狀態(tài)標(biāo)志,程序運行時不斷查詢這些狀態(tài)標(biāo)志,及時發(fā)現(xiàn)并糾正錯誤,以保證系統(tǒng)運行的高可靠性。
4.1.2 指令冗余法
微處理器受干擾后,往往會把操作數(shù)當(dāng)操作碼來執(zhí)行,使程序的正確執(zhí)行順序被打亂且亂飛,即程序彈飛。若程序彈飛到某條單字指令上,則可自動納入正軌;當(dāng)程序彈飛到某條雙字節(jié)指令上時,有可能落到其操作數(shù)上,從而繼續(xù)出錯;當(dāng)程序彈飛到3字節(jié)指令上時,因它有2個操作數(shù),出錯的幾率更大。
因此編程時應(yīng)盡量多采用單字節(jié)指令,并在關(guān)鍵的地方人為地插入一些單字節(jié)指令(NOP),或?qū)⒂行巫止?jié)指令重復(fù)書寫,這便是指令冗余。指令冗余無疑會降低微處理器的工作效率,但在絕大多數(shù)情況下,微處理器還不至于忙到不能多執(zhí)行幾條指令的程度。
4.1.3 設(shè)置軟件陷阱
在非程序區(qū)設(shè)置一些陷阱程序。正常運行時不會進入非程序區(qū),當(dāng)程序彈飛時就可能遇到這些陷阱,在陷阱處強令程序進入初始狀態(tài),避免出現(xiàn)“死機”現(xiàn)象。例如對于MC5-51系列單片機,可利用“LJMP #0000H”和“JB bit,aa”指令,在非程序區(qū)反復(fù)用 0200000002000000……H填滿。這樣不論程序計數(shù)器PC失控后指向哪一字節(jié),最后都能讓程序回到復(fù)位狀態(tài)。
4.1.4 看門狗定時復(fù)位技術(shù)(WATCHDOG)
WATCHDOG可這樣設(shè)置:本身獨立工作,基本不依賴于CPU,CPU在1個固定的時間間隔內(nèi)和該系統(tǒng)打1次交道,以表明系統(tǒng)工作正常并封鎖復(fù)位信號。當(dāng)CPU陷入死循環(huán)后,則因超過規(guī)定的時間間隔而啟動復(fù)位信號使系統(tǒng)復(fù)位。此外,前面介紹的監(jiān)視跟蹤定時器也屬于一種WATCHDOG。
4.1.5 輸入輸出信號的抗干擾技術(shù)
電梯串行通訊系統(tǒng)的輸入干擾主要來自于各層呼梯按鈕和轎內(nèi)操縱按鈕,由于干擾信號一般為持續(xù)時間很短的尖脈沖,因此在滿足采樣要求的前提下,將采樣延時一定時間(一般50ms以上),等輸入信號穩(wěn)定后再進行取樣并輸入微處理器,即可消除輸入干擾。因為干擾是隨機的,所以對于輸出干擾,編程時可以采取重復(fù)輸出的辦法加以克服。即在數(shù)據(jù)或控制信號輸出后,以最短的周期重復(fù)輸出原來的信息,這樣當(dāng)電梯控制系統(tǒng)接受到一個被干擾錯誤信息后,還未來得及作出有效的反應(yīng),錯誤信息就已被糾正。當(dāng)然,如果對電梯控制系統(tǒng)的所有輸出信號都進行重復(fù)輸出的話,難免會降低電梯控制系統(tǒng)的效率,但是,對于一些關(guān)鍵的輸出,如起動、開閘、減速、平層、下閘、停車、開關(guān)門等命令,采用重復(fù)輸出將可大大提高電梯控制系統(tǒng)的可靠性和安全性。
4.2 提高軟件的可靠性
雖然利用軟件可提高系統(tǒng)的可靠性,但是由于種種原因,軟件本身也會發(fā)生故障,因此應(yīng)采取措施,提高軟件的可靠性。
4.2.1 程序分段和層次結(jié)構(gòu)
在進行程序結(jié)構(gòu)設(shè)計時,將程序分成若干具有獨立功能的子程序塊。各子程序可單獨也可和其它程序一起使用,各子程序之間通過一個固定的通訊區(qū)和一些指定的單元進行通訊。每個程序塊能分別進行調(diào)整而不影響其它程序塊。這些各自獨立的程序塊在連接時,盡量減少程序之間的依賴關(guān)系,按層次排列,而各程序塊具有獨立功能,結(jié)構(gòu)簡單,易于修改和擴充,故障少。
例如,對于CANBUS通訊程序,就可分成下面3個模塊進行設(shè)計和調(diào)試。①PCA82C200發(fā)送接收數(shù)據(jù)時能否產(chǎn)生中斷。調(diào)試時通過仿真器讀取 PCA82C200中斷寄存器的中斷字即可。②通訊程序能否正常執(zhí)行設(shè)定的命令。這牽涉到設(shè)定命令的具體情況,需分情況作出相應(yīng)的判斷。③通訊程序錯誤處理能力和解決總線沖突能力的測試。這可以通過故意設(shè)置通訊錯誤和頻繁通訊來檢驗。
4.2.2 提高程序的可測試性設(shè)計
軟件故障具有和硬件不同的特點,軟件故障往往是在設(shè)計階段,由人為錯誤或者在運行初期輸入程序時的操作錯誤而引起。這種存在程序中的錯誤,必須通過反復(fù)測試才能發(fā)現(xiàn)。因此,必須進行提高軟件可測試性設(shè)計,使軟件便于測試。
評論