金海軍,田 蓓,許曉夢,徐 碩,劉志剛
(北京交通大學(xué) 電氣工程學(xué)院,北京 100044)
城市軌道交通供電系統(tǒng)為城軌車輛的運行提供電力,是城市軌道交通運輸系統(tǒng)安全可靠運行的關(guān)鍵設(shè)備和重要保障,所以監(jiān)控其運行參數(shù)并實時掌握其工作狀態(tài)非常重要?;谀芰糠答伿綘恳╇娤到y(tǒng)的綜合監(jiān)控系統(tǒng),是目前國內(nèi)較為先進的交流傳動的監(jiān)控方法之一[1]。該監(jiān)控系統(tǒng)基于新型牽引供電系統(tǒng)的特性,采用以太網(wǎng)通訊技術(shù)和虛擬儀器技術(shù),并使用ARM及C#語言,通過虛擬儀器界面取代過去的監(jiān)控方式,實現(xiàn)了對新型能饋式牽引供電系統(tǒng)的可靠實時監(jiān)控。
文中研究的能饋式牽引供電系統(tǒng)綜合監(jiān)控技術(shù)可以保障牽引供電系統(tǒng)的正常運行,對能饋式牽引供電系統(tǒng)動態(tài)過程中的各個電氣參數(shù),溫度值及開關(guān)量等進行測量、傳輸、顯示、存儲及故障診斷,方便用戶觀察分析數(shù)據(jù)??朔藗鹘y(tǒng)的儀表測量帶來的不良影響,如干擾PWM整流器的正常運行、危及操作人員的人身安全,測試過程繁瑣程序復(fù)雜等問題。該能饋式牽引供電系統(tǒng)的綜合監(jiān)控技術(shù)的主要特征是,具有強大的控制、存儲、運算、邏輯判斷能力,及自動操作等新能力,并且在監(jiān)控的準確度、靈敏度、自動化程度、使用能力及解決監(jiān)控技術(shù)問題的深度和廣度方面有很大提升。
能饋式供電系統(tǒng)的綜合監(jiān)控主要是由外圍數(shù)據(jù)源設(shè)備、底層ARM數(shù)據(jù)采集部分、串行通信接口轉(zhuǎn)換模塊,PC上位機監(jiān)控軟件,數(shù)據(jù)庫存儲5個模塊組成。
其中,底層ARM系統(tǒng)負責對于監(jiān)控設(shè)備的實時數(shù)據(jù)采集,經(jīng)過串行接口轉(zhuǎn)換模塊與PC機通信接口相連。上位機基于C#語言的監(jiān)控系統(tǒng)使用串口和以太網(wǎng)協(xié)議將所有采集數(shù)據(jù)匯總進行顯示以及分析等,同時從數(shù)據(jù)采集卡接收數(shù)據(jù)波形,利用外圍數(shù)據(jù)庫進行數(shù)據(jù)存儲,便于調(diào)用分析,進而完成對整個系統(tǒng)的綜合監(jiān)控以及故障診斷。
本監(jiān)控系統(tǒng)底層處理器采用了TI公司推出的AM3359微處理器。AM3359在圖像、圖形處理、外設(shè)和諸如EtherCAT和 PROFIBUS的工業(yè)接口選項方面進行了增強,支持通用存儲器(NAND,NOR,SRAM,等)支持高達 16 位 ECC,支持最多2個端口的10/100/1000以太網(wǎng)交換機,串口包括:2個控制器局域網(wǎng)端口 (CAN)6個 UART,2個 McASPI,2個 McSPI和3個I2C端口,具有良好的通信功能。
綜合監(jiān)控系統(tǒng)平臺中以AM3359微處理器為核心,移植了Ubuntu Linux操作系統(tǒng)作為下位機,采用LabVIEW作為監(jiān)控界面的PC作為上位機,通過數(shù)據(jù)采集結(jié)點采集能饋式牽引供電系統(tǒng)相應(yīng)的數(shù)據(jù)量和模擬量,以ARM板中NAND Flash作為存儲單元存貯采集到的數(shù)據(jù),并通過串口和網(wǎng)口傳輸以上數(shù)據(jù)到上位機進行處理和故障診斷,從而實現(xiàn)了對于管軌牽引供電系統(tǒng)的實時監(jiān)控。綜合監(jiān)控系統(tǒng)的總體架構(gòu)如圖1所示。
圖1 綜合監(jiān)控系統(tǒng)總體架構(gòu)Fig.1 Overall architecture of integrated monitoring systems
AM3359處理器針對工控領(lǐng)域產(chǎn)品對多串口,多網(wǎng)卡應(yīng)用有針對性的優(yōu)化和增強。支持6個串口,2個以太網(wǎng),并能方便對網(wǎng)口和串口的擴展。串行接口是計算機與外圍數(shù)據(jù)源設(shè)備之間進行數(shù)據(jù)交換的重要介質(zhì)。本平臺中的核心處理器AM3359采用的是USB調(diào)試串口,是由USB信號線先經(jīng)過USB2412集線控制IC再經(jīng)過串口接口IC FT2232L轉(zhuǎn)換成UART信號。
本監(jiān)控系統(tǒng)中ARM芯片應(yīng)用TI公司的Cortex-A8系列AM3359芯片設(shè)計了一個嵌入式Linux系統(tǒng)。串口通信設(shè)計了4路RS232,2路RS485,實現(xiàn)兩臺PC間的安全穩(wěn)定通信。監(jiān)控系統(tǒng)通過主控單元采集變流器各監(jiān)控量信息,并通過SPI串口通信的方式以1 s的周期傳輸給ARM處理器,從而完成短距離、周期性的監(jiān)控數(shù)據(jù)的傳輸。
監(jiān)控平臺的以太網(wǎng)通信以TCP/IP為通訊協(xié)議,將從控制單元得到的電壓,電流等數(shù)據(jù)通過以太網(wǎng)的方式傳送給上位機的監(jiān)控界面。TCP網(wǎng)絡(luò)沒變成是目前比較通用的方式,主要采用C/S模式,即服務(wù)器(S)、客戶端(C)模式,服務(wù)器模式創(chuàng)建一個服務(wù)程序,等待客戶端用戶的連接,接收到用戶的連接請求后,根據(jù)用戶的請求進行處理;客戶端模式則根據(jù)目的服務(wù)器的地址和端口進行連接,向服務(wù)器發(fā)送請求并對服務(wù)器的響應(yīng)進行數(shù)據(jù)處理[2-3]。本文中ARM充當客戶端的角色,對上位機進行訪問。具體的TCP/IP通信流程圖如圖2所示。
圖2 TCP/IP通信流程圖Fig.2 TCP/IPcommunication flow chart
綜合監(jiān)控技術(shù)的核心為上位機軟件設(shè)計,通過串口和以太網(wǎng)接口與數(shù)據(jù)采集通信,完成設(shè)備實時數(shù)據(jù)的接收,然后做適當數(shù)據(jù)處理和分析后,進行各個功能的正常工作。本上位機軟件是在Windows操作系統(tǒng)下Visual Studio 2005.NET編程環(huán)境中使用C#語言編程完成。
C#語言是一種安全、穩(wěn)定、簡單的,由C和C++衍生出來的面向?qū)ο蟮木幊陶Z言。它在繼承C和C++強大功能的同時去掉了一些它們的復(fù)雜特性(例如沒有宏以及不允許多重繼承)。C#綜合了VB簡單的可視化操作和C++的高運行效率,以其強大的操作能力、優(yōu)雅的語法風(fēng)格、創(chuàng)新的語言特性和便捷的面向組件編程的支持成為.NET開發(fā)的首選語言[4-5]。
本文使用C#編程環(huán)境中的Serial Port類來實現(xiàn)串口通信功能,使用Thread類來完成多線程編程,數(shù)據(jù)庫模塊采用廣泛使用的SQL Server 2000來存儲數(shù)據(jù)。Serial Port類為應(yīng)用程序提供了通過串口收發(fā)數(shù)據(jù)的簡便方法,具有功能強大、通信快速、實時性好等特點[6]。圖3為監(jiān)控軟件的系統(tǒng)結(jié)構(gòu)流程圖。
本監(jiān)控系統(tǒng)中根據(jù)數(shù)據(jù)類型的不同及數(shù)據(jù)的多少主要由串口和以太網(wǎng)進行底層ARM和上位機的通信。串口通信協(xié)議根據(jù)連接的具體設(shè)備進行不同的選取,本設(shè)計中主要有MODBUS協(xié)議和制定的串口協(xié)議。以太網(wǎng)協(xié)議則使用經(jīng)典的TCP/IP,實現(xiàn)服務(wù)器和客戶端之間的通信。
圖3 監(jiān)控軟件系統(tǒng)流程圖Fig.3 Flow chart of the monitoring software system
后臺數(shù)據(jù)庫選用 Microsoft SQL 2000,SQL Server是由Microsoft開發(fā)和推廣的關(guān)系數(shù)據(jù)庫管理系統(tǒng)(DBMS),它是基于5QL客戶/服務(wù)器(C/S)模式的數(shù)據(jù)庫系統(tǒng)。圖形化的界面使數(shù)據(jù)庫管理更加簡潔、靈活,同時又具有豐富的編程接口,為用戶從事程序開發(fā)提供了更多的方便。
本監(jiān)控系統(tǒng)在SQL數(shù)據(jù)庫中主要存儲中間計算量及故障數(shù)據(jù)量,在其中共建立了7個數(shù)據(jù)表,分別為SCADA接口數(shù)據(jù)表、查詢數(shù)據(jù)、告警記錄、故障顯示、通道設(shè)置、信號記錄及用戶,這些表中的信息與前端顯示界面中的數(shù)據(jù)相互對應(yīng),整個數(shù)據(jù)庫的大小可達到10G。在需要調(diào)用數(shù)據(jù)進行分析時,可實時對SQL進行訪問,讀取數(shù)據(jù)庫中的值,上層界面也可根據(jù)數(shù)據(jù)庫中數(shù)據(jù)的分析結(jié)果對底層進行相應(yīng)的控制。
1)運行狀態(tài)
2)波形顯示
3)控制設(shè)置(模擬參數(shù))
圖4 串口制定協(xié)議結(jié)構(gòu)Fig.4 Serial protocol architecture
圖5 MODBUS協(xié)議結(jié)構(gòu)Fig.5 MODBUSprotocol architecture
圖6 SQL數(shù)據(jù)庫故障顯示數(shù)據(jù)表Fig.6 The failure display data sheet in SQL database
圖7 運行狀態(tài)Fig.7 Running state
圖8 波形顯示Fig.8 Waveform display
圖9 波形回放Fig.9 Waveform playback
4)控制設(shè)置(狀態(tài)參數(shù))
圖10 參數(shù)設(shè)置Fig.10 Parameter setting
5)故障顯示
圖11 故障顯示Fig.11 Fault display
文中介紹了基于ARM和C#進行的能饋式牽引供電裝置監(jiān)控軟件的設(shè)計過程,實現(xiàn)了多目標、多功能和多選項卡的圖形用戶界面,用戶可以在界面上完成數(shù)據(jù)輸入、運行狀態(tài)監(jiān)控、波形顯示、控制設(shè)置以及故障顯示等全部工作。軟件具有用戶界面友好、軟件性能強、運行速度快、易于移植、開發(fā)研制的周期短等優(yōu)點。通過對軟件平臺,具體功能以及通信協(xié)議的介紹,體現(xiàn)了軟件的整體設(shè)計思想以及突出優(yōu)勢。
[1]王磊,劉志剛,趙雷廷,等.新型城軌牽引供電系統(tǒng)監(jiān)測平臺研究[J].電測與儀表,2009,46(8):50-55.WANG Lei,LIU Zhi-gang,ZHAO Lei-ting,et al.Research on a novel monitoring platform for traction supply of urban rail transportation system[J].Electrical Measurement&Instrumentation,2009,46(8):50-55.
[2]宋敬彬,孫海濱.Linux網(wǎng)絡(luò)編程[M].1版.北京:清華大學(xué)出版社,2010:202-207.
[3]范鵬.基于MPC8260的嵌入式網(wǎng)絡(luò)通信平臺的研究[D].天津:天津大學(xué),2004.
[4]李葉妮,江小霞,林少芬.基于C#技術(shù)的船舶監(jiān)控管理系統(tǒng)的設(shè)計[J].船舶工程,2008,30(2):42-44.LI Ye-ni,JIANG Xiao-xia,LIN Shao-fen.Design of the marine monitoring and management system based on C#technology[J].Marine engineering,2008,30(2):42-44.
[5]陳建華.一種基于C#的SQL服務(wù)器安全的監(jiān)控方法[J].重慶工商大學(xué)學(xué)報:自然科學(xué)版,2012,29(5):73-75.CHEN Jian-hua.A SQL server security monitoring method based on C#[J].Chongqing Technol Business Univ:Nat Sci Ed,2012,29(5):73-75.
[6]張立香.C#語言中方法的參數(shù)[J].中國科技縱橫,2011(1):83-83.ZHANG Li-xiang.Method parameters in c#language[J].Science and Technology of China,2011(1):83-83.