基于A(yíng)RM的開(kāi)關(guān)量信號采集模板的設計
O 引言
本文設計的開(kāi)關(guān)量信號采集模板是一款嵌入式SCADA系統的一種插件,稱(chēng)為智能數字量采集板(IntelligentBinary Input Board,簡(jiǎn)稱(chēng)B板)。該裝置主要用于電力系統等工業(yè)過(guò)程控制領(lǐng)域的實(shí)時(shí)數據采集與控制。
在絕大多數工業(yè)測控系統中都不可避免地會(huì )涉及開(kāi)關(guān)量采集的問(wèn)題,開(kāi)關(guān)量信號采樣的準確可靠性對于整個(gè)測控系統能否正常穩定地工作,起著(zhù)重要的作用。從以往的工作經(jīng)驗來(lái)看,開(kāi)關(guān)量信號采集的關(guān)鍵問(wèn)題就是去抖動(dòng),避免錯誤的開(kāi)關(guān)量變位信號困擾系統的使用者。所謂開(kāi)關(guān)量信號抖動(dòng)就是由于開(kāi)關(guān)量信號的采樣通道受到干擾后裝置采集到了錯誤的開(kāi)關(guān)狀態(tài)并上報給主站系統,產(chǎn)生許多莫須有的告警信息,讓系統的使用者難以辨別事件的真偽,影響系統的實(shí)用性。在電力系統自動(dòng)化行業(yè),開(kāi)關(guān)量的事件順序記錄分辨率的指標要求是1~2ms,繁瑣的硬件去抖動(dòng)電路和軟件延時(shí)去抖動(dòng)算法會(huì )破壞系統的實(shí)時(shí)性指標。為此,本文提出了一種快速的去抖動(dòng)算法,與模板上硬件去抖動(dòng)濾波電路配合,較好地解決的上述問(wèn)題。
本文主要就B板的軟硬件設計原理與實(shí)現方法以及去抖動(dòng)算法進(jìn)行介紹。
1 硬件設計
1.1 總體設計
B板以Philips LPC2138 32位ARM微控制器為核心,完成16通道開(kāi)關(guān)量的數據采集。作為嵌入式SCADA系統的一種插件,板上設計了一路RS422異步串行通信接口,通過(guò)該接口與裝置的通信與管理模板(Communication andManagement Board,簡(jiǎn)稱(chēng)M板)通信,將采集生成的實(shí)時(shí)開(kāi)關(guān)量信息上報給M板。由于M板要通過(guò)RS422總線(xiàn)管理多塊II0板工作,M板采用主從方式實(shí)現與II0板的通信連接,為此各IIO板都設計了ID標識地址進(jìn)行身份確定。B板的ID標識地址采用8位雙排跳線(xiàn)器設置,標識地址范圍為0lH~FFH。此外,模板還設計了一路為RS232接口,用于模板的檢測與調試,以及LPC2138的軟件下載。調試RS232接口是一個(gè)標準的VTl00超級終端接口,通過(guò)該接口可以與PC機進(jìn)行通信連接,使用Windows的超級終端仿真軟件可以十分方便地對該模板進(jìn)行調試和檢測。同時(shí)該串口也是LPC2138軟件的下載接口,將跳線(xiàn)JPl02和JPl03跳接上,即可通過(guò)專(zhuān)用軟件將編譯連接生成的軟件下載到LPC2138的FLASH存儲器。
板上開(kāi)關(guān)量過(guò)程通道包括BI回路信號調理與濾波電路、光電隔離電路、開(kāi)關(guān)量狀態(tài)訪(fǎng)問(wèn)電路。由于LPC2138的I/0引腳的數量有限,硬件設計時(shí)采用部分I/O引腳作為CS片選信號,部分I/O仿真8位數據總線(xiàn)對外部訪(fǎng)問(wèn)端口進(jìn)行分時(shí)操作。
為了保證模板運行的穩定可靠性,B板設計有硬件看門(mén)狗電路(HWDT),軟件還設計了軟看門(mén)狗定時(shí)監視器(SWDT)。軟硬看門(mén)狗協(xié)同工作,在軟件“走飛”或局部“走死”之后自動(dòng)恢復模板運行。
B板的工作原理如圖1所示。
1.2 LP02138的I/0擴展
LPC2138是一款總線(xiàn)不出芯片的片上系統(SoC),主要通過(guò)I/O引腳對外部電路進(jìn)行訪(fǎng)問(wèn)。本文設計的B板有16路BI輸入狀態(tài)、8位ID標識地址、異步串口和HWDT等都需要使用I/O資源,LPC2138的I/O引腳不夠用。為此,硬件設計時(shí)通過(guò)對LPC2138的I/0引腳進(jìn)行組合使用,實(shí)現了對外部電路的分時(shí)訪(fǎng)問(wèn)。具體實(shí)現方法是,采用部分I/O引腳作為CS信號,再用8個(gè)I/0模仿8位地址總線(xiàn)DBO~7對外部端口進(jìn)行訪(fǎng)問(wèn)。這種方法的優(yōu)點(diǎn)在于既可減少I(mǎi)/0資源的使用,PCB布線(xiàn)也容易許多。采用這種方法進(jìn)行I/O擴展需要注意兩個(gè)方面的問(wèn)題:①由于LPC2138的I/0引腳在啟動(dòng)時(shí)多為低狀態(tài),此時(shí)會(huì )導致CS信號都使能,造成沖突,需要將用做CS信號的I/0引腳上拉;②軟件訪(fǎng)問(wèn)外部電路時(shí),要通過(guò)設置I/O狀態(tài)模擬外部電路的訪(fǎng)問(wèn)時(shí)序。B板LPC2138的I/0擴展如圖2所示。
1.3 開(kāi)關(guān)量輸入過(guò)程設計
開(kāi)關(guān)量輸入過(guò)程通道的設計相對簡(jiǎn)單,首先要根據光偶的驅動(dòng)電流確定輸入電阻的大小,并選擇一個(gè)電容與該輸入電阻構成一個(gè)RC濾波回路,過(guò)濾過(guò)程通道上的毛刺干擾;為了防止用戶(hù)接線(xiàn)時(shí)把外部驅動(dòng)回路的電源極性接反導致光偶燒壞,在回路上反向接入一個(gè)二極管對其進(jìn)行保護;為了適應外部輸入回路多樣性(如有源脈沖信號和無(wú)源干接點(diǎn)信號不能共地),硬件設計時(shí)將16路開(kāi)關(guān)量分為4組,每組一個(gè)公共端。開(kāi)關(guān)量輸入信號與LPC2138的接口采用HC245實(shí)現,軟件設置片選使能,將BI狀態(tài)放入數據總線(xiàn),讀取BI狀態(tài),然后設置片選禁止,完成BI的采集工作。開(kāi)關(guān)量輸入過(guò)程通道如圖3所示。
1.4 硬件看門(mén)狗復位電路
評論