汪方
(安徽工業(yè)大學(xué),安徽 馬鞍山 243032)
為實(shí)現(xiàn)我國(guó)“碳達(dá)峰”和“碳中和”目標(biāo),發(fā)展氫能產(chǎn)業(yè)是工業(yè)、交通等難以脫碳領(lǐng)域?qū)崿F(xiàn)低碳化的有效措施。隨著氫燃料電池技術(shù)商業(yè)化不斷提速,氫能在交通領(lǐng)域的需求更加凸顯[1]。氫能智慧平臺(tái)是推動(dòng)氫能工業(yè)信息化、智能化建設(shè)的典型應(yīng)用。
目前氫能智慧平臺(tái)大多基于大數(shù)據(jù)技術(shù)、物聯(lián)網(wǎng)技術(shù)以及機(jī)器學(xué)習(xí)等。湯曉棟等人[2]提出一種加氫站運(yùn)營(yíng)管理云服務(wù)平臺(tái),研究一種數(shù)據(jù)采集軟網(wǎng)關(guān),以解決現(xiàn)有站控系統(tǒng)對(duì)外接口單一、難以實(shí)現(xiàn)多站點(diǎn)并發(fā)通信的問(wèn)題;同時(shí)開(kāi)發(fā)加氫站運(yùn)營(yíng)管理云服務(wù)平臺(tái),實(shí)現(xiàn)站內(nèi)設(shè)備管理與安全生產(chǎn)監(jiān)管。大數(shù)據(jù)技術(shù)在其他領(lǐng)域也有廣泛應(yīng)用,李春彬[3]提出一種基于Spark 的公路管理和預(yù)警平臺(tái),實(shí)現(xiàn)公路信息管理、應(yīng)急事務(wù)管理、路網(wǎng)運(yùn)行監(jiān)測(cè)等功能,提升了公路管理部門路網(wǎng)運(yùn)行管理和應(yīng)對(duì)突發(fā)事件的能力。
加氫站是氫能交通商業(yè)化應(yīng)用的中樞,目前處于高速發(fā)展中,截至2022 年3 月,我國(guó)已建成加氫站264 座并計(jì)劃2025 年建成1 000 座[4]。但是當(dāng)前企業(yè)管理加氫站面臨諸多問(wèn)題:企業(yè)總部難以實(shí)時(shí)查看旗下全體加氫站的設(shè)備運(yùn)行狀態(tài);不能通過(guò)充分挖掘海量的設(shè)備數(shù)據(jù)與運(yùn)營(yíng)數(shù)據(jù)背后的商業(yè)價(jià)值為企業(yè)的管理與決策提供有力的支持;缺乏設(shè)備運(yùn)行數(shù)據(jù)前瞻性預(yù)測(cè)來(lái)減少安全事故發(fā)生的風(fēng)險(xiǎn);缺乏運(yùn)營(yíng)訂單相關(guān)數(shù)據(jù)前瞻性預(yù)測(cè)來(lái)助力企業(yè)制定運(yùn)營(yíng)策略等。為解決上述問(wèn)題,本文提出一種結(jié)合工業(yè)大數(shù)據(jù)技術(shù)、物聯(lián)網(wǎng)技術(shù)及預(yù)測(cè)算法的氫能智慧平臺(tái),實(shí)現(xiàn)企業(yè)實(shí)時(shí)管理旗下加氫站以及根據(jù)平臺(tái)統(tǒng)計(jì)分析和預(yù)測(cè)結(jié)果制定運(yùn)營(yíng)策略。
氫能智慧平臺(tái)基于工業(yè)大數(shù)據(jù)技術(shù)、物聯(lián)網(wǎng)技術(shù)以及預(yù)測(cè)模型算法開(kāi)發(fā),提供了從數(shù)據(jù)采集、數(shù)據(jù)處理、分析預(yù)測(cè)到具體應(yīng)用整套技術(shù)方案。架構(gòu)上由數(shù)據(jù)采集層、數(shù)據(jù)緩沖層、數(shù)據(jù)處理層、數(shù)據(jù)儲(chǔ)存層及大數(shù)據(jù)應(yīng)用層組成。其中數(shù)據(jù)采集層實(shí)現(xiàn)工業(yè)設(shè)備網(wǎng)關(guān)數(shù)據(jù)實(shí)時(shí)采集、站控系統(tǒng)日志數(shù)據(jù)采集、數(shù)據(jù)庫(kù)數(shù)據(jù)同步;數(shù)據(jù)緩沖層發(fā)揮數(shù)據(jù)緩存、流量控制作用,在數(shù)據(jù)流量突發(fā)情況下發(fā)揮流量削峰的作用,保障平臺(tái)的穩(wěn)定性;數(shù)據(jù)處理層實(shí)現(xiàn)數(shù)據(jù)清洗、分流、統(tǒng)計(jì)分析等核心計(jì)算功能;數(shù)據(jù)儲(chǔ)存層實(shí)現(xiàn)海量工業(yè)設(shè)備數(shù)據(jù)與運(yùn)營(yíng)數(shù)據(jù)的存儲(chǔ)與檢索,同時(shí)提供數(shù)據(jù)緩存服務(wù);大數(shù)據(jù)應(yīng)用層提供企業(yè)實(shí)時(shí)監(jiān)管旗下加氫站的客戶端,包含如設(shè)備運(yùn)行數(shù)據(jù)大屏展示、運(yùn)營(yíng)數(shù)據(jù)實(shí)時(shí)大屏展示等功能。其架構(gòu)如圖1 所示。
圖1 大數(shù)據(jù)平臺(tái)架構(gòu)
數(shù)據(jù)采集層實(shí)現(xiàn)工業(yè)網(wǎng)關(guān)數(shù)據(jù)采集、日志數(shù)據(jù)采集與數(shù)據(jù)庫(kù)數(shù)據(jù)采集。根據(jù)團(tuán)體標(biāo)準(zhǔn)《加氫站站控系統(tǒng)技術(shù)要求》(T/CSTE 0012—2019)[5]中關(guān)于采集數(shù)據(jù)的要求,工業(yè)網(wǎng)關(guān)數(shù)據(jù)采集模塊負(fù)責(zé)實(shí)時(shí)采集加氫機(jī)、氫氣壓縮機(jī)、儲(chǔ)氫瓶組設(shè)備、卸氣設(shè)備、火氣監(jiān)測(cè)儀器的運(yùn)行數(shù)據(jù)。日志數(shù)據(jù)采集與數(shù)據(jù)庫(kù)數(shù)據(jù)采集模塊負(fù)責(zé)采集運(yùn)營(yíng)訂單信息等數(shù)據(jù)。
工業(yè)網(wǎng)關(guān)數(shù)據(jù)采集模塊用于站內(nèi)設(shè)備數(shù)據(jù)實(shí)時(shí)采集。網(wǎng)關(guān)數(shù)據(jù)采集模塊架構(gòu)如圖2 所示。
圖2 工業(yè)網(wǎng)關(guān)數(shù)據(jù)采集模塊
加氫機(jī)、氫壓機(jī)、儲(chǔ)氫瓶組、卸氣設(shè)備、火氣監(jiān)測(cè)儀器采用RS 485/RS 422 協(xié)議傳輸數(shù)據(jù),設(shè)備接入采集網(wǎng)關(guān)后,借助配置工具對(duì)網(wǎng)關(guān)進(jìn)行IP 地址配置、設(shè)備信息備注等,接著配置設(shè)備與網(wǎng)關(guān)間的參數(shù),必須保證設(shè)備地址、波特率、校驗(yàn)方式等與網(wǎng)關(guān)一致。
在上位機(jī)使用工控組態(tài)軟件采集數(shù)據(jù)網(wǎng)關(guān)中數(shù)據(jù),如WinCC、Kingview 等,通過(guò)以太網(wǎng)接口讀取網(wǎng)關(guān)數(shù)據(jù)。工控組態(tài)軟件采集的數(shù)據(jù)按照OPC 協(xié)議標(biāo)準(zhǔn)轉(zhuǎn)換后,通過(guò)OPC服務(wù)軟件發(fā)送至網(wǎng)關(guān)數(shù)據(jù)采集與轉(zhuǎn)換模塊,該模塊將數(shù)據(jù)轉(zhuǎn)換為JSON 數(shù)據(jù)格式,再使用log4j 將數(shù)據(jù)處理成實(shí)時(shí)流日志。大數(shù)據(jù)平臺(tái)對(duì)接網(wǎng)關(guān)數(shù)據(jù)采集與轉(zhuǎn)換模塊,通過(guò)Flume 實(shí)時(shí)采集數(shù)據(jù),以上述方式實(shí)現(xiàn)網(wǎng)關(guān)數(shù)據(jù)實(shí)時(shí)采集。
日志數(shù)據(jù)采集模塊負(fù)責(zé)實(shí)時(shí)采集加氫站管理信息系統(tǒng)中的運(yùn)營(yíng)數(shù)據(jù)日志、設(shè)備儀器運(yùn)行日志。該模塊采用Flume 日志采集系統(tǒng),該系統(tǒng)具有可靠性高、采集效率高、易管理和擴(kuò)展性強(qiáng)特點(diǎn)[6],滿足本平臺(tái)高效采集日志的需求。
數(shù)據(jù)庫(kù)數(shù)據(jù)采集模塊負(fù)責(zé)采集加氫站管理信息系統(tǒng)中數(shù)據(jù)庫(kù)中的運(yùn)營(yíng)數(shù)據(jù),對(duì)于數(shù)據(jù)庫(kù)數(shù)據(jù)采集使用兩種方式:實(shí)時(shí)數(shù)據(jù)庫(kù)數(shù)據(jù)采集方式和離線數(shù)據(jù)庫(kù)數(shù)據(jù)同步方式。實(shí)時(shí)數(shù)據(jù)庫(kù)數(shù)據(jù)采集方式采用Maxwell 框架。離線數(shù)據(jù)庫(kù)數(shù)據(jù)同步采用DataX 同步工具,并采用朱永波[7]提出的改進(jìn)意見(jiàn)提升DataX 的性能,實(shí)現(xiàn)同步不同加氫站的站控系統(tǒng)數(shù)據(jù)庫(kù)至氫能智慧平臺(tái)數(shù)據(jù)儲(chǔ)存層的Elasticsearch 集群中。
數(shù)據(jù)緩沖層采用Kafka 消息隊(duì)列。在吞吐量上Kafka 達(dá)到每秒17.3 萬(wàn)條。在海量、實(shí)時(shí)、異構(gòu)的工業(yè)設(shè)備數(shù)據(jù)緩沖處理場(chǎng)景下,Kafka 具有高吞吐量、低延時(shí)、高可靠和分布式特性[7-8]。架構(gòu)中數(shù)據(jù)緩沖層由3 臺(tái)及以上服務(wù)器構(gòu)成Kafka 集群,具備超高吞吐量和低延時(shí),能夠有效提升本平臺(tái)數(shù)據(jù)計(jì)算處理效率和保證數(shù)據(jù)零丟失。
數(shù)據(jù)處理層由實(shí)時(shí)數(shù)據(jù)流分流模塊、統(tǒng)計(jì)分析模塊、預(yù)測(cè)預(yù)警模塊構(gòu)成。數(shù)據(jù)處理層采用Spark Streaming流式計(jì)算框架。Spark Streaming 是在大數(shù)據(jù)領(lǐng)域廣泛使用的框架,其集群具有強(qiáng)大的計(jì)算能力和存儲(chǔ)容量,由于基于內(nèi)存計(jì)算,其速度約為Hadoop 的100 倍[9]。
加氫站主要有加氫工藝流程和儲(chǔ)氫工藝流程[10]。通過(guò)卸氣設(shè)備獲得氫氣后,經(jīng)氫壓機(jī)壓縮進(jìn)入儲(chǔ)氫瓶組儲(chǔ)存,最后通過(guò)加氫機(jī)為氫燃料電池汽車進(jìn)行加注。氫壓機(jī)、儲(chǔ)氫瓶組、加氫機(jī)是加氫站三大核心設(shè)備。
實(shí)時(shí)數(shù)據(jù)流分流模塊將數(shù)據(jù)緩沖隊(duì)列中的設(shè)備數(shù)據(jù)按照加氫工藝流程、儲(chǔ)氫工藝流程以及火氣監(jiān)測(cè)數(shù)據(jù)進(jìn)行分流,分流后的數(shù)據(jù)經(jīng)過(guò)清洗處理再次存入Kafka 消息隊(duì)列對(duì)應(yīng)主題中,數(shù)據(jù)處理層再次讀取對(duì)應(yīng)主題數(shù)據(jù)并實(shí)時(shí)存入Elasticsearch 集群中。
統(tǒng)計(jì)分析模塊用于加氫站設(shè)備運(yùn)行數(shù)據(jù)統(tǒng)計(jì)、氫氣儲(chǔ)量統(tǒng)計(jì)、運(yùn)營(yíng)訂單數(shù)據(jù)統(tǒng)計(jì)。該模塊周期性統(tǒng)計(jì)分析上述數(shù)據(jù)并提供企業(yè)分析報(bào)告,企業(yè)能夠基于運(yùn)營(yíng)分析報(bào)告,發(fā)掘數(shù)據(jù)背后商業(yè)價(jià)值,制定運(yùn)營(yíng)策略。
預(yù)測(cè)預(yù)警模塊提供設(shè)備運(yùn)行狀態(tài)預(yù)測(cè)預(yù)警和運(yùn)營(yíng)數(shù)據(jù)預(yù)測(cè)功能。設(shè)備運(yùn)行狀態(tài)預(yù)測(cè)預(yù)警實(shí)現(xiàn)了實(shí)時(shí)展示預(yù)測(cè)值,并判斷預(yù)測(cè)值是否超過(guò)標(biāo)準(zhǔn)范圍,若超過(guò)標(biāo)準(zhǔn)范圍則觸發(fā)預(yù)警程序,該程序?qū)⒃摋l數(shù)據(jù)入庫(kù)并及時(shí)提醒工作人員。運(yùn)營(yíng)數(shù)據(jù)預(yù)測(cè)功能基于往期運(yùn)營(yíng)數(shù)據(jù)預(yù)測(cè)未來(lái)運(yùn)營(yíng)情況,幫助企業(yè)制定運(yùn)營(yíng)策略。
數(shù)據(jù)存儲(chǔ)層用于存儲(chǔ)設(shè)備運(yùn)行數(shù)據(jù)、統(tǒng)計(jì)分析數(shù)據(jù)、預(yù)測(cè)數(shù)據(jù)和設(shè)備異常數(shù)據(jù)、設(shè)備預(yù)警數(shù)據(jù)等,由Elasticsearch搜索引擎和Redis 數(shù)據(jù)庫(kù)組成。ElasticSearch 的突出特點(diǎn)是在提供海量存儲(chǔ)的同時(shí)提供近乎實(shí)時(shí)的搜索服務(wù),保證平臺(tái)的實(shí)時(shí)性。采用Redis 作為數(shù)據(jù)處理層與應(yīng)用層的數(shù)據(jù)緩存,Redis 具備極快的讀寫速度,應(yīng)用層可直接從Redis 讀取實(shí)時(shí)數(shù)據(jù),降低數(shù)據(jù)展示時(shí)延。
大數(shù)據(jù)應(yīng)用層是客戶端,提供設(shè)備運(yùn)行數(shù)據(jù)大屏實(shí)時(shí)展示、統(tǒng)計(jì)分析數(shù)據(jù)管理功能、設(shè)備異常數(shù)據(jù)管理功能、運(yùn)營(yíng)單數(shù)據(jù)實(shí)時(shí)展示與查詢功能、設(shè)備運(yùn)行數(shù)據(jù)預(yù)測(cè)功能與運(yùn)營(yíng)訂單數(shù)據(jù)預(yù)測(cè)功能,幫助企業(yè)實(shí)時(shí)管理總體運(yùn)營(yíng)和具體加氫站運(yùn)營(yíng)。在技術(shù)上,采取Spring Boot 結(jié)合前端Vue.js 框架進(jìn)行前后端分離式系統(tǒng)開(kāi)發(fā),其中Spring Boot 作為目前主流開(kāi)發(fā)框架,具有開(kāi)發(fā)過(guò)程簡(jiǎn)便、易部署等諸多優(yōu)點(diǎn)。
氫能智慧平臺(tái)結(jié)合ARIMA 算法實(shí)現(xiàn)了加氫站設(shè)備運(yùn)行數(shù)據(jù)實(shí)時(shí)預(yù)測(cè),前瞻性發(fā)現(xiàn)設(shè)備潛在的安全風(fēng)險(xiǎn)。
ARIMA 是一種基于時(shí)間序列數(shù)據(jù)分析和預(yù)測(cè)的模型,廣泛適用于時(shí)間序列預(yù)測(cè),由Box 和Jenkin 在20 世紀(jì)70 年代提出,該模型對(duì)非平穩(wěn)時(shí)間序列進(jìn)行差分計(jì)算使其轉(zhuǎn)換為平穩(wěn)序列,再基于平穩(wěn)序列調(diào)用ARMA 模型實(shí)現(xiàn)預(yù)測(cè)[11]。該模型適合預(yù)測(cè)設(shè)備運(yùn)行數(shù)據(jù),在短期內(nèi)準(zhǔn)確率較高。
ARMA 模型由自回歸模型(AR)和移動(dòng)平均模型(MA)組成。
自回歸模型(AR)描述當(dāng)前值與歷史值之間的關(guān)系,公式為:
式中:yt為當(dāng)前值;μ為常數(shù)項(xiàng);p為階數(shù);γi為自相關(guān)系數(shù);yt-i表示往期的值;εt為誤差。
移動(dòng)平均模型(MA)用于描述自回歸模型中的累計(jì)誤差,公式為:
式中:yt為當(dāng)前值;μ為常數(shù)項(xiàng);q為階數(shù);θi為自相關(guān)系數(shù);εt表示誤差序列。
ARMA 模型由式(1)與式(2)組合而成,p為自回歸階數(shù),q為移動(dòng)平均階數(shù),記為:
ARIMA 模型是先對(duì)非平穩(wěn)數(shù)據(jù)進(jìn)行d階差分,將差分后的平穩(wěn)數(shù)據(jù)導(dǎo)入ARMA 模型進(jìn)行計(jì)算得到預(yù)測(cè)值。
ARIMA 模型需要確定p、d、q三個(gè)關(guān)鍵參數(shù),p為AR 公式階數(shù),d為差分運(yùn)算的階數(shù),q為MA 公式的階數(shù)。ARMA 模型要求輸入序列是平穩(wěn)的,采用單位根檢測(cè)法(Augmented Dickey Fuller, ADF)判斷序列的平穩(wěn)性。先假設(shè)序列不平穩(wěn)(存在單位根),根據(jù)單位根檢測(cè)法得到ADF檢驗(yàn)表。根據(jù)檢驗(yàn)表中p值判斷差分階數(shù)d,若p<0.05,此時(shí)對(duì)應(yīng)的差分階數(shù)就是模型中的d值。在確定序列具有平穩(wěn)性后進(jìn)行p和q值的參數(shù)估計(jì)。繪制輸入序列的自相關(guān)函數(shù)(Autocorrelation Function, ACF)和偏自相關(guān)函數(shù)(Partial Autocorrelation Function, PACF)的圖,按照表1 準(zhǔn)則確定參數(shù)p、q。
表1 ARMA(p,q)模型識(shí)別準(zhǔn)則
自相關(guān)函數(shù)(ACF)用于判斷序列中不同時(shí)間取值之間是否相關(guān),根據(jù)以下公式計(jì)算:
式中:n為序列數(shù);xt是序列中的具體值。
偏自相關(guān)函數(shù)(PACF)用于判斷長(zhǎng)度為k的序列首尾兩個(gè)值,即x(t)和x(t-k)兩個(gè)變量是否具有相關(guān)性。
以預(yù)測(cè)加氫機(jī)加注流量為實(shí)驗(yàn)案例,預(yù)測(cè)效果如圖3所示。
圖3 加氫機(jī)加注流量預(yù)測(cè)
圖3 為加氫機(jī)即將結(jié)束加氫過(guò)程中的數(shù)據(jù)預(yù)測(cè),預(yù)測(cè)趨勢(shì)與實(shí)際趨勢(shì)相同,預(yù)測(cè)方差為0.059,準(zhǔn)確率約為93%。
以預(yù)測(cè)加氫機(jī)出口壓力為實(shí)驗(yàn)案例,預(yù)測(cè)效果如圖4所示。
圖4 加氫機(jī)出口壓力預(yù)測(cè)
圖4 為加氫機(jī)平穩(wěn)加氫時(shí)出口壓力數(shù)據(jù)預(yù)測(cè),預(yù)測(cè)趨勢(shì)與實(shí)際趨勢(shì)相同,預(yù)測(cè)方差為0.1,準(zhǔn)確率約為86%。
由此可知,采用ARIMA 模型預(yù)測(cè)設(shè)備運(yùn)行數(shù)據(jù)效果良好且預(yù)測(cè)速度快,滿足實(shí)時(shí)預(yù)測(cè)要求。
本文提出一種從設(shè)備數(shù)據(jù)采集、數(shù)據(jù)處理、數(shù)據(jù)存儲(chǔ)、分析預(yù)測(cè)到應(yīng)用的氫能智慧平臺(tái),同時(shí)將ARIMA 模型算法應(yīng)用于加氫站各類設(shè)備運(yùn)行數(shù)據(jù)實(shí)時(shí)預(yù)測(cè)中,有效地解決了企業(yè)管理旗下加氫站的諸多問(wèn)題,發(fā)掘運(yùn)營(yíng)數(shù)據(jù)商業(yè)價(jià)值,助力氫能應(yīng)用發(fā)展。