山東建筑大學信息與電氣工程學院(山東濟南250101) 姚慶梅 趙 琦 孔建飛
山東電力集團公司(山東 濟南250001) 曹麗霞
在變電站系統中,通信管理機收集各測量、繼電保護下位機(或稱前端機)的數據,對它們進行處理后傳送到上位機監控系統(SCADA)和通過RTU(Remote Terminal Unit遠程終端控制系統)送到遠方調度控制中心,同時也把SCADA和RTU的命令、數據等分發給各下位機。通信管理機起著上下聯絡的作用,它是變電站綜合自動化系統信息管理和流通的中樞,且具有通用接口,可以滿足不同廠商IED(Intelligent Electronic Device)裝置進行互聯,因此通信接口的設計也就顯得尤為重要。
在目前通信管理機的設計中,大部分使用工業控制計算機,安裝特定軟件來實現。本文整體方案采用ARM7處理器,開發相應軟件,以嵌入式方式實現。同前述方案相比,具有成本較低、可靠性較高的優點,且采用專用方案實現,所以在接口上可以實現多樣化;如果能夠采用合適的開發工具,這種方案軟件的可維護性也是比較好的。通信管理機結構示意圖如圖1所示。

圖1 通信管理機結構示意圖
本文主要介紹CAN總線接口及RS232總線接口電路的設計及軟件實現,采用模塊化設計思想,即把每種通信接口都作為一個模塊進行設計,便于檢修及系統升級。設計中,通信管理機通過CAN總線使用CAN規約與下位機保護裝置通信,通過RS232總線使用CDT(Cycle Distance Transmission)循環式遠動規約(以下簡稱CDT規約)與上位機監控系統通信。
CAN總線是一種用于控制與測試儀器之間數據交換而開發的串行數據通信多主總線系統。總線上最多可連110個節點,通信速率可達1Mbps。CAN協議廢除了傳統的站地址編碼,而代之以對通信數據塊進行編碼。采用這種方法的優點是可使網絡內的節點個數在理論上不受限制,數據塊的標識碼可由11位(CAN2.0A協議)或29位(CAN2.0B協議)二進制數組成。這種按數據塊編碼的方式,還可使不同的節點同時接收到相同的數據,這一點在分布式控制系統中非常有用。數據段長度最多為8個字節,可滿足通常工業領域中控制命令、工作狀態及測試數據的一般要求。同時,8個字節不會占用總線時間過長,從而保證了通信的實時性。CAN協議采用CRC檢驗并可提供相應的錯誤處理功能,保證了數據通信的可靠性。CAN總線的這種極高的可靠性和獨特的設計,特別適合工業過程監控設備的互連[1]。

圖2 CAN接口電路連接圖
CAN接口電路利用CAN規約實現了通信管理機和下位機保護裝置的可靠通信。通信管理機接收保護裝置上傳的數據,并把上位機的命令數據轉發給保護裝置,從而控制各個保護裝置的動作。CAN接口電路連接圖如圖2所示。
其中CPU采用ARM7微處理器LPC2292芯片。該芯片包含2個CAN模塊,可同時支持多個CAN總線的操作,使器件可用作設計中多個CAN總線的路由器。因此該部分不再使用CAN控制器,而是通過CPU內部的CAN控制器及CAN收發器PCA82C250連接到CAN總線上。從CPU接出的TD和RD并不是直接與PCA82C250的TXD和RXD相連,而是分別通過高速光耦6N137后與PCA82C250相連,這樣可很好地實現總線上各CAN節點間的電氣隔離。
PCA82C250與CAN總線的接口部分采用了一定的安全和抗干擾措施。CANH和CANL引腳各通過一個5歐的電阻與CAN總線相連,電阻可起到一定的限流作用,保護PCA82C250免受過流的沖擊。CANH和CANL與地之間并聯了兩個30pF的小電容,可以起到濾除總線上的高頻干擾并具有一定的防電磁輻射的能力。由于CAN總線采用的是總線形式,節省了大量信號線的使用,加之CAN總線成熟、通用的協議,保證了數據信號傳輸的準確性和及時性。其中CAN口的接收和發送端口連接到CPU內部控制器。
RS232總線是目前最常用的一種串行通信接口。RS232通信接口實現了通信管理機和PC上位機的通信。該部分的通信使用了CDT規約,通信管理機把收集到的保護裝置的數據通過CDT規約發送給PC機。該部分電路連接圖如圖3所示。如果要使用UART0與RS232接口的設備進行基本的通信,那就需要一個RS232轉換器將TTL電平轉換成RS232電平。該部分使用的MAX3232芯片可以連接PC機的串口和主控制芯片,它可以接兩路串口,在調試過程中只使用一路串口。

圖3 RS232接口電路連接圖
通信管理機的開發主要采用ads1.2軟件進行編程,并移植了!COS操作系統,該設計整體采用了模塊化設計的思想。CAN模塊和UART模塊分別作為一個單獨的模塊進行編程,在本文軟件設計中,主要介紹了CAN規約和CAN模塊的通信以及串口模塊CDT規約的通信實現過程。
RS232接口使用CDT通信規約。本規約采用可變幀長度、多種幀類別循環傳送和變位遙信優先傳送,重要遙測更新循環時間較短,區分循環量、隨機量和插入量采用不同形式傳送信息,以滿足電網調度安全監控系統對遠動信息的實時性和可靠性的要求。
3.1.1 CDT規約
CDT的報文是按幀來傳送的,每個幀都以同步字開頭,并有控制字,除少數幀外均有信息字。幀結構如圖4所示。

圖4 幀結構
幀類別在上行信息中有重要遙測、次要遙測、一般遙測、遙信狀態、電能脈沖記數值和事件順序記錄,并由不同的代碼來表示。重要遙測安排在A幀傳送,循環時間不大于3s;次要遙測安排在B幀傳送,循環時間一般不大于6s;一般遙測安排在C幀傳送,循環時間不大于20s;遙信狀態信息在D1幀定時傳送;遙脈信息在D2幀定時傳送。因此,傳送A、B、C、D1及D2幀要采用固定循環傳送。
變位遙信、子站工作狀態變化信息插入傳送,要求在1s內送到主站。變位遙信最先傳送,如果本幀不夠,則插入下一個遙信幀。SOE幀可以在每幀前插入,每幀長度為6,一個變位SOE信息字80H、81H連傳三遍。
CDT規約采用CRC(冗余循環)校驗,在信息碼后隨信息一起發出,在接收端用同樣方法產生循環冗余校驗碼,最后將這兩個校驗碼比較,若一致,則信息無誤;不一致則有差錯,要求發送端再傳輸。關于信息字的詳細內容可參考CDT規約文獻,此處不再贅述。
3.1.2 CDT規約通信的實現
RS232接口利用CDT規約實現了通信管理機和后臺遠方監控系統的通信。當通信管理機將數據上行傳送到后臺時,通信管理機將所發送的信息進行編碼按規約傳送給上位機系統;當后臺裝置將命令下行發送給通信管理機時,此時通信管理機對收到的信息解碼后再傳遞給保護裝置等,使其動作。因此,在該部分的軟件設計中,要分別考慮上行命令傳送和下行命令傳送程序的編寫。
上行命令需要編碼信息。設計中,我們指定一個數組用于存儲各種幀類別的組態方式,軟件實現過程中,定義一個15個字節的緩沖區來代替數組,關于CDT幀的傳送方式已經在前面描述,在實現過程中將按其方式發送,CDT規約上行傳送數據流程圖見圖5。

圖5 CDT規約上行傳送數據流程圖

圖6 CDT規約下行命令流程圖
下行命令需要解碼信息。按CDT規約接收數據的程序流程圖如圖6所示。
CAN接口利用CAN規約實現了通信管理機和下位機保護裝置的通信。CAN規約是通信管理機與保護裝置進行一問一答式的數據傳送規約。
3.2.1 CAN規約
CAN規約將系統結構分為三層:物理層、數據鏈路層和應用層。其中物理層和數據鏈路層由CAN控制器和CAN總線收發器實現,應用層由軟件實現[2]。發送時,應用層的事務處理子層將信息內容填寫好后交由網絡驅動層,加上CAN報文標識符和CAN幀格式信息發往CAN總線。接收時網絡驅動子層將接收的信息內容轉交事務處理子層。
3.2.2 CAN規約通信的實現
CAN口通信的軟件流程主要包括三個模塊:CAN控制器的初始化,發送報文,接收報文。正常的通信即從總線上發送數據和從總線上接收數據,但在正常通信之前必須對CAN控制器進行初始化,以便讓控制器的工作方式、總線波特率等各個功能與實際的工作相符。
報文發送稱查詢方式,報文傳輸由CAN控制器完成。CAN控制器必須將要發送的數據按特定格式組合成一幀報文傳輸到發送緩沖器,然后啟動CAN控制器發送即可,但是否發送成功還應配合發送中斷來判斷。報文發送流程圖如圖7所示。
報文接收也稱為中斷方式,CAN總線上的節點成功接受到報文后,回送確認報文,發送節點如果在規定時間內沒有接受到確認報文,重發報文,確保通信成功[1]。報文接受流程圖如圖8所示。

圖7 報文發送流程圖

圖8 報文接收流程圖
通信管理機接口電路的設計,成功地實現了通信功能。從現場調試結果看,RS232接口實現了通信管理機與上位機監控系統的可靠通信,通信管理機可以正確接收上位機系統發送來的報文數據,同時也可以正確的把數據發送給上位PC機。CAN接口的設計實現了通信管理機與保護裝置的問答式數據傳輸,通過報文過濾實現了點對點和點對多點的通信且無須調度,還具有傳輸時間短,抗干擾效果好的特點,從而滿足了變電站自動化系統中安全可靠的系統要求。
[1]曹海歐,鄭建勇.基于CAN總線變電站綜合自動化通信系統的研究[J].電力系統及其自動化學報,2002,(6):24~25
[2]周立功.ARM與嵌入式系統基礎教程 [M].廣東:廣州周立功單片機發展有限公司出版