李翀,黃眾,覃事東,侯波
(中車株洲電力機車有限公司,湖南 株洲 412000)
隨著干線鐵路和城市軌道交通的快速發展,機車車輛運營規模不斷擴大。監測和記錄車輛運行數據對于提高車輛運行安全性和可靠性更為重要。目前新造機車車輛大多安裝有車載無線傳輸裝置(WTD),可通過移動通信網絡或者Wi-Fi方式向地面發送車載數據。為使目前與之相適應的地面監控系統的數據實時性和可視化程度,以及多終端適配性能更好地滿足現實需求。本文采用內存對象緩存技術、數據可視化框架和H5技術,很好解決了上述問題,適應不同的場景需求。
無線傳輸地面監控系統主要由地面接收程序RemoteServer、MySQL數據庫、Memcached緩存服務器、應用平臺四部分組成。車輛通過WTD采集車輛及其子系統的狀態數據和故障數據,通過移動通信網絡或者Wi-Fi將數據發送至地面接收程序RemoteServer。RemoteServer按照通信協議將數據報文解析成JSON文本后存入Memcached服務器,同時將解析后的數據存入MySQL數據庫。頁面展示客戶端通過訪問Memcached服務器獲取車輛實時數據并在頁面刷新,通過訪問數據庫進行故障和歷史數據分析。圖1顯示了系統工作原理。
機車車輛品種繁多,包括了機車、動車組、地鐵、有軌電車、磁浮等。每個類別面向用戶需求存在具體的產品型號,這導致車輛構型、通信協議、數據定義和頁面顯示都存在差異。為實現車型差異化適配,采用以下解決方案:產品型號與無線傳輸數據協議對應;數據庫記錄以產品型號區分;采用JSON格式頁面顯示定義文件區別不同產品顯示方案。

圖1 地面監控系統工作原理
車輛實時監測數據量大,而且要求很高的刷新頻率。頻繁訪問MySQL數據庫方式,在面對大流量、高并發量的數據時,硬件的讀寫速度從某種角度講較大程度上限制了數據庫的性能,采用Memcached內存對象緩存技術正好解決了上述問題。將數據分布式地緩存到多臺服務器的物理內存中,查詢訪問不再涉及數據操作,節省了連接數據庫、解析SQL、執行查詢等的開銷,可以非常有效的提高查詢的訪問效率。RemoteServer對報文解析后將數據按照規定的JSON格式存儲在Memcached服務端,同一車號的最新數據將覆蓋上一次數據,保證Memcached服務端存儲每列車最新數據。
數據可視化是一種通過將數據編碼為可視對象如點、線、顏色、位置關系、動態效果等,并將對象組成圖形來傳遞數據信息的技術。其目的是以清晰且高效的方式將信息傳遞給用戶,是利用人眼的感知能力對數據進行交互的可視化表達以增強數據認知的技術。車輛地面監控系統顯著的特點就是數據量大、實時性強,因此對于數據可視化要求很高。系統采用了ECarts可視化庫,可提供豐富的可視化類型,由數據驅動,數據的改變驅動圖表展現的改變,并提供多維數據的支持以及豐富的視覺編碼手段。
系統應用場景多樣化,用戶角色差異化。例如面向車輛運營商存在監控、調度與檢修需求,面向產品制造商存在監測、調試試驗和售后維護等需求。以上應用場景的終端設備也存在差異,可能是大屏、Windows PC、Mac PC、Pad、手機等。為適應上述需求,系統采用B/S架構,可以使用戶在不同的設備通過瀏覽器訪問一致性服務。采用H5技術,可以很好提升移動終端用戶體驗,適配不同終端顯示屏。
RemoteServer采用C語言開發,接受并解析來自WTD通過無線網絡發送的UDP報文。將報文解析成JSON格式數據,存入Memcached服務器。將數字量和模擬量的車輛事件寫入數據記錄表。所有事件記錄拼接成一個字段,用特定符號分割,每個事件記錄在該字段的位置和通信協議的位偏移對應。這樣大大減少數據量記錄。故障則先比對,再更新數據庫:RemoteServer根據故障代碼將該故障最新狀態與數據庫記錄進行比對,如果是新產生故障,則直接插入;如果故障狀態發生改變(如故障消失),則更新,否則不更新。
應用平臺采用J2EE技術,運用了SSH2框架,實現應用平臺模型、邏輯和視圖層的分離。前臺頁面顯示使用HTML5、CSS3和JavaScript技術,運用了Bootstrap前端開發框架。
(1)運行監控。運行監控實現列車激活后狀態的實時監測。包括列車運行狀態數據,如網壓、速度、總風壓力;各子系統狀態,如車門開關門狀態、空調壓縮機啟動狀態;累計數據的顯示,如總能耗、運行里程等;當前故障信息,如ATC通信故障、車門嚴重故障等。圖2顯示了某有軌電車實時狀態監測。
(2)位置追蹤。位置追蹤基于GPS定位和百度地圖API,功能包括了全網線路跟蹤和單列跟蹤。車輛上傳的經緯度數據經過轉換后實現車輛位置在地圖顯示并刷新。同時根據列車運行軌跡可以繪制線路圖,根據列車速度曲線確定站點位置。
(3)故障查詢與分析。根據故障等級、故障發生系統或部件、故障當前狀態以及時間查詢車輛當前及歷史故障。
通過故障分析,可以獲取列車故障類型統計分析報表,獲取每個子系統或部件的故障數據,用于車輛可靠性分析。
(4)數據分析。數據分析提供列車單個和多個參數的時域分析。分析的數據為車輛全量數據,包括狀態參數、故障信息和環境參數等。支持一定周期內車輛運行記錄分析以及子部件狀態分析,以及針對某個故障的原因分析。圖3顯示了某儲能有軌電車周期內電壓變化曲線,用于儲能電源模塊故障分析。

圖3 某儲能式有軌電車模組電壓時域分析
本文采用內存對象緩存技術提升系統數據刷新性能,通過H5技術和數據可視化框架滿足了多終端數據顯示需求,能夠應對不同用戶和場景的需求。但是目前對于車輛數據分析仍然停留在傳統的邏輯分析層面,缺乏有效的數據挖掘手段。后續將通過對接大數據平臺,實現車輛數據挖掘,用于車輛狀態分析,故障診斷和預測,實現車輛的基于狀態維修。