王煥濤 周念 陳俊彥
(1.天府新區(qū)通用航空職業(yè)學院 四川省成都市 620500)
(2.桂林電子科技大學計算機與信息安全學院 廣西壯族自治區(qū)桂林市 541004)
在國家新能源政策的大力支持下,我國已經(jīng)發(fā)展了一批擁有自主核心技術的燃料電池和燃料電池生產(chǎn)企業(yè),并且企業(yè)開始布局燃料電池零部件、制氫、儲運、加氫站等產(chǎn)業(yè)鏈各個環(huán)節(jié)。隨著氫能源有軌電車的大規(guī)模應用,實時監(jiān)測氫軌電車的電池及其發(fā)動機等主要部件的運行狀態(tài)就顯得尤其重要。通過實時監(jiān)測并收集氫軌電車的相關數(shù)據(jù),不僅可以對氫軌電車的動力系統(tǒng)狀態(tài)進行趨勢分析并在維修維護時提供第一手數(shù)據(jù)支撐,同時也提供了在大數(shù)據(jù)分析下對電池組及發(fā)動機的技術改進的數(shù)據(jù)基礎。傳統(tǒng)的監(jiān)測系統(tǒng),通過終端使用內(nèi)置的非易失性存儲器卡進行數(shù)據(jù)記錄與存儲,車輛檢修維護時上傳運行數(shù)據(jù),具有技術成熟、部署簡單等特點。但考慮到氫能源具有發(fā)熱值高、燃燒性能極好等特點,一旦動力單元出現(xiàn)異常而不能及時解決異常的情況,往往會造成災難性事故的發(fā)生。因此傳統(tǒng)監(jiān)控系統(tǒng)并不能完全滿足對于數(shù)據(jù)的實時上傳性、時序性、準確性與安全性的要求。
針對上述問題,本文提出了以時序數(shù)據(jù)庫和分布式消息隊列為核心,配合基于4G/5G 數(shù)據(jù)終端的實時氫能源動力單元監(jiān)控系統(tǒng),以及基于可視化組件的監(jiān)控平臺一體化解決方案,能夠滿足對大規(guī)模運營的氫軌電車運行狀態(tài)進行監(jiān)控的業(yè)務需求。
氫能源動力監(jiān)測系統(tǒng)由車載終端、服務器組、用戶終端及公共資源組成,如圖1所示。車載終端通過CAN 總線實時獲取動力系統(tǒng)控制器的內(nèi)部數(shù)據(jù)和故障狀態(tài),同時采集電池組及發(fā)動機等部件的工作電壓、電流,結合GPS/北斗模塊獲取定位信息和行駛方向及車速,最后,將這些數(shù)據(jù)同步存儲在本地非易失性存儲器中,同時將數(shù)據(jù)通過4G/5G無線網(wǎng)絡發(fā)送到遠程服務器組。用戶通過可以連接到Internet 的終端設備對車輛數(shù)據(jù)進行監(jiān)控、分析以及故障診斷。
圖1:氫能源動力監(jiān)測系統(tǒng)組成
系統(tǒng)的分層功能邏輯架構,從下至上可分為數(shù)據(jù)層、數(shù)據(jù)傳輸層、邏輯規(guī)則層以及應用層四個層次,如圖2所示。
圖2:氫能源動力監(jiān)測系統(tǒng)邏輯功能架構
每個層次的邏輯組成及其相互關系如下所述。
數(shù)據(jù)層。數(shù)據(jù)層為整個數(shù)據(jù)采集與服務系統(tǒng)提供的底層數(shù)據(jù)儲存與管理的支持,它的主要功能就是數(shù)據(jù)的采集、查詢和存儲管理。待更新和發(fā)布的軟件由軟件包和軟件包描述信息兩部分組成,所有的軟件包的描述信息都需要存儲在數(shù)據(jù)庫中,而軟件包物理文件存儲在文件存儲服務器中。動力設備上傳的數(shù)據(jù)則保存在數(shù)據(jù)庫(包括本地暫存和服務器儲存)之中,便于后續(xù)的統(tǒng)計分析處理以及數(shù)據(jù)的復用。
數(shù)據(jù)傳輸層。設備數(shù)據(jù)和軟件包數(shù)據(jù)邏輯上通過數(shù)據(jù)傳輸層向上逐層遞交,最終送達應用層進行處理。軟件包的數(shù)據(jù)包括軟件包自己的屬性信息和軟件包物理文件。設備數(shù)據(jù)包括動力設備具體的運行狀態(tài)實時采樣數(shù)據(jù)與位置、運行診斷狀態(tài)數(shù)據(jù)等。兩者在具體的實現(xiàn)上,根據(jù)數(shù)據(jù)傳輸?shù)奶卣?,分別采用了不同的數(shù)據(jù)傳輸技術,具體細節(jié)將在論文的后續(xù)部分進行描述??傊?,傳輸層主要負責穩(wěn)定無誤的將應用層和數(shù)據(jù)層之間的數(shù)據(jù)進行傳輸。
邏輯規(guī)則層。軟件包的數(shù)據(jù)與動力設備的數(shù)據(jù)經(jīng)過傳輸層傳遞給應用層,需要經(jīng)過邏輯規(guī)則層進行一定的邏輯處理,將符合邏輯的數(shù)據(jù)傳遞給應用層,比如軟件包下載規(guī)則限定了軟件包下載的邏輯,只有符合該邏輯(如只有特定型號、特定批次的平臺,才能進行某項功能的更新)的軟件包才能被下載更新升級。邏輯層保證只將符合規(guī)則的數(shù)據(jù)傳遞給應用層。
應用層。應用層是直接和用戶進行交互的層次。包括了客戶端應用、服務器端應用。需求分析中提出的各種功能需求,都將在應用層進行設計與實現(xiàn)。
車載終端被設計成獨立的應用程序,運行在以STM32 為核心的硬件平臺上,采用uCos 作為嵌入式實時操作系統(tǒng),使用MQTT協(xié)議進行數(shù)據(jù)傳輸,構建數(shù)據(jù)采集應用。
車載終端的主要功能是采集動力模塊的信息上報給服務器,并將服務器下發(fā)的指定傳遞至動力單元,實現(xiàn)數(shù)據(jù)的采集、存儲與發(fā)送。同時為了保證數(shù)據(jù)監(jiān)測系統(tǒng)的可靠性和可用性,車載終端還具備本地數(shù)據(jù)存儲和獨立的電源模塊,可以支持網(wǎng)絡故障/中斷或外部電源故障時能夠正常工作一段時間。
車載終端硬件平臺圍繞MCU,提供了CAN、GPS/北斗模塊、可定制制式的4G 模塊、可選Wi-Fi 模塊等通訊接口,同時提供了板載Flash、板載備用電源、加速度傳感器等硬件資源,此外還支持通過TF卡進行存儲容量的擴展。車載終端的軟件架構如圖3所示。
圖3:車載終端軟件架構
服務器組是實現(xiàn)氫能源監(jiān)測大數(shù)據(jù)系統(tǒng)的核心,由應用接入服務器、時序數(shù)據(jù)庫服務器、MySQL數(shù)據(jù)庫服務器和Web服務器組成,其結構如圖4所示。
圖4:服務器組織結構
應用接入服務器主要負責接入設備的身份驗證、負載均衡、數(shù)據(jù)解析與預處理的工作,并將來自車載終端的數(shù)據(jù)寫入時序數(shù)據(jù)庫之中。
考慮到目前氫能源有軌電車的數(shù)量在萬輛級別,在未來的5 至10年內(nèi)可能增長到10 萬級別,我們在時序數(shù)據(jù)庫的選型中使用了可以支持每秒百萬級別并發(fā)寫入的TDEngine 作為時序數(shù)據(jù)的存儲部件,而摒棄了傳統(tǒng)的Kafka、HDFS/HBase/Spark、Redis大數(shù)據(jù)架構,大大降低了系統(tǒng)的開發(fā)、部署成本。一輛有軌電車由若干節(jié)車廂組成,每節(jié)車廂都搭載了氫能源動力系統(tǒng)。因此,在TDEngine 數(shù)據(jù)庫建模時,選取車輛編號、發(fā)動機編號雙標簽為每類監(jiān)測數(shù)據(jù)建立超級表,可有效的應對后端Web服務器的時序數(shù)據(jù)查詢和聚合查詢。
Web 服務器和MySQL 數(shù)據(jù)庫服務器為大數(shù)據(jù)的可視化展示提供支持。在設計與開發(fā)過程中,本系統(tǒng)采用了ECharts 和百度地圖作為可視化組件,為氫能源監(jiān)測應用進行了定制,實現(xiàn)了運行狀態(tài)、運行路線、能效分析、故障報警及處理等功能的可視化展示與響應。
在實際應用之中,可按系統(tǒng)的負載情況為服務器組分配物理運行平臺。如當在軌運行的電車數(shù)量在10 萬輛以下時,可靈活的將應用接入服務器與時序數(shù)據(jù)庫部署在一臺物理機上,Web 服務器和MySQL 服務器部署在另一臺物理機上,進一步降低系統(tǒng)的部署成本。
該系統(tǒng)目前已經(jīng)在某系列型號的氫燃料動力有軌電車上得到了實際應用?;谝訲DEngine 為核心的時序數(shù)據(jù)庫,大幅簡化了大數(shù)據(jù)平臺的設計,降低了研發(fā)成本和運營成本,提高了系統(tǒng)方案的靈活性和可擴展性,為國家新能源產(chǎn)業(yè)的發(fā)展做了一定的貢獻,有較好的工程應用價值和較為廣泛的應用前景。