蔣有燦 張毅
(重慶理工大學(xué),重慶 400054)
主題詞:未來工況預(yù)測 純電動汽車 機(jī)器學(xué)習(xí) 數(shù)字地圖 實車在環(huán)
目前,汽車行業(yè)正由傳統(tǒng)的內(nèi)燃機(jī)汽車向新能源汽車發(fā)展[1]。然而,消費者對于電動汽車仍存在諸多顧慮,如電池技術(shù)不夠成熟、動力不足、續(xù)駛里程焦慮等[2]。針對電動汽車?yán)m(xù)駛里程焦慮問題,可以通過實時在線預(yù)測未來行駛工況并預(yù)估電池荷電狀態(tài)(State Of Charge,SOC)來判別剩余續(xù)駛里程是否滿足出行需要,緩解里程焦慮。部分學(xué)者針對車輛未來行駛工況預(yù)測開展了研究:盤朝奉等[3]使用視頻檢測系統(tǒng)獲取路況信息,根據(jù)馬爾可夫滾動預(yù)測方法預(yù)測未來工況;李玉芳等[4]設(shè)計了基于工況特征的車輛行駛工況預(yù)測方法,通過建立道路和交通特征模型保證了預(yù)測的普適性和準(zhǔn)確性。部分學(xué)者對電池SOC 預(yù)測進(jìn)行了研究:Sun 等[5]采用卡爾曼濾波法建立電池SOC 模型,對系統(tǒng)狀態(tài)進(jìn)行最優(yōu)估計;韓忠華等[6]應(yīng)用擴(kuò)展卡爾曼濾波算法并結(jié)合神經(jīng)網(wǎng)絡(luò)算法進(jìn)行SOC估計,能夠?qū)㈩A(yù)測誤差控制在一定范圍內(nèi),但是對動力電池模型的準(zhǔn)確性和計算能力要求較高;劉光明等[7]基于最小二乘法辨識車輛能耗參數(shù),提高了預(yù)測精度。
雖然目前已有多種方法可以通過預(yù)測車輛工況計算出電動汽車的SOC,但多數(shù)預(yù)測算法并未考慮到車流狀況對單車能耗及SOC 預(yù)測的影響,且大多數(shù)方法僅通過軟件模型仿真來檢驗預(yù)測結(jié)果是否準(zhǔn)確?;诖耍疚睦脭?shù)字地圖的應(yīng)用程序接口(Application Programming Interface,API)獲取實時車流信息,通過云端服務(wù)器進(jìn)行在線預(yù)測并進(jìn)行實車道路試驗驗證。
如圖1a 所示,試驗采用純電動汽車逸動EV460。試驗涉及的硬件設(shè)備如圖1b所示,主要包括GPS模塊、USB 轉(zhuǎn)CAN 模塊、4G LTE 上網(wǎng)卡以及上位機(jī)電腦。上位機(jī)通過USB 轉(zhuǎn)CAN 模塊獲取上述整車實時數(shù)據(jù),由GPS模塊定位車輛位置并將相關(guān)信息通過4G LTE網(wǎng)絡(luò)傳輸?shù)皆贫朔?wù)器。試驗車輛相關(guān)配置參數(shù)如表1 所示。在互聯(lián)網(wǎng)分布式實車在環(huán)仿真平臺上進(jìn)行試驗[8],實車在環(huán)平臺通過車載診斷系統(tǒng)(On-Board Diagnosis,OBD)接口與車載CAN總線建立連接,通過向車載電子控制器單元(Electronic Control Unit,ECU)發(fā)送特定請求實現(xiàn)車輛狀態(tài)數(shù)據(jù)實時采集。采集的數(shù)據(jù)包括:車速、油門踏板位置、整車驅(qū)動功率、電機(jī)輸入功率。
表1 測試車輛參數(shù)
圖1 實車在環(huán)子系統(tǒng)
為解決測試車輛車載電池的SOC 估算精度不高的問題,本文在云端服務(wù)器建立SOC仿真模型。該模型可根據(jù)車輛實時上傳的驅(qū)動功率,通過安時積分法計算對應(yīng)SOC的變化量。圖2所示為電池等效電路模型,該模型將理想電壓源與內(nèi)部等效電阻串聯(lián)。其中,開路電壓Voc和等效內(nèi)阻Rin與電池SOC 有關(guān)。圖3所示為充放電試驗得到的某型號磷酸鐵鋰電池的開路電壓與等效內(nèi)阻在不同SOC下的相應(yīng)數(shù)據(jù)[9]。
圖2 電池等效電路
圖3 電池開路電壓與等效內(nèi)阻對應(yīng)數(shù)據(jù)
根據(jù)圖2所示的模型和圖3中的Voc和Rin數(shù)據(jù),使用安時法可以求得SOC的變化量ΔSSOC:
式中,Qbattery為電池電量,即電池額定容量;Pbattery為電池輸入的電功率,由車輛驅(qū)動功率計算得到[9],放電為正值,充電為負(fù)值。
互聯(lián)網(wǎng)分布式實車在環(huán)仿真平臺如圖4 所示[8],本文仿真對象(即純電動汽車)的驅(qū)動系統(tǒng)部分(包括電動機(jī)和傳動系統(tǒng))和儲能系統(tǒng)部分(鋰離子動力電池)分別由位于實際行駛道路的實車硬件在環(huán)系統(tǒng)和位于云端的鋰電池軟件仿真模型進(jìn)行協(xié)同仿真,實車硬件在環(huán)系統(tǒng)與云端服務(wù)器之間通過4G LTE網(wǎng)絡(luò)通信實現(xiàn)數(shù)據(jù)耦合。此外,本文提出的實車工況在線預(yù)測算法試驗同樣基于此平臺展開,以實現(xiàn)基于實車的道路試驗驗證。
圖4 互聯(lián)網(wǎng)分布式實車在環(huán)仿真平臺
本文的研究對象為在預(yù)定路線上行駛的車輛,如通勤車輛和公交車輛。如圖5所示,試驗行駛路線預(yù)先選定為重慶理工大學(xué)附近的一段市區(qū)道路,其中不含高速公路。行駛路線全長約20.6 km,行駛時間約50 min。通過在晚高峰時段(17:30~19:30)進(jìn)行數(shù)據(jù)采集,相關(guān)車流數(shù)據(jù)可包括從通暢(南濱路)到嚴(yán)重?fù)矶拢ㄆ溆嗦范危┑亩喾N工況,具有典型性。同時為了避免駕駛員的駕駛習(xí)慣對試驗產(chǎn)生影響,要求駕駛員在保證安全的前提下,應(yīng)盡可能跟隨車流行駛。
圖5 試驗路線
為優(yōu)化數(shù)據(jù)處理,并提高數(shù)據(jù)的可靠性和穩(wěn)定性,根據(jù)路段特征(如十字路口和紅綠燈)將行駛路線(即采集的數(shù)據(jù))分割成16個部分。圖5中的定位點即為各路段的分割點,部分子路段被稱為“微行程”。根據(jù)已有的研究[10],一組經(jīng)過良好分割的“微行程”可以方便數(shù)據(jù)處理,增強魯棒性。
圖6 展示了通過OBD 接口采集的實車歷史數(shù)據(jù)。對采集的數(shù)據(jù)進(jìn)行整理,提取到反映行車規(guī)律的幾種特征參數(shù)如表2所示,包括平均車速、平均加速度、平均減速度等,該類特征參數(shù)提取的樣本數(shù)據(jù)將用于后續(xù)機(jī)器學(xué)習(xí)算法的訓(xùn)練。OBD 記錄的數(shù)據(jù)在處理過程中已去除停車等待時間,即速度、加/減速度等特征參數(shù)的計算并不包括停車等待時間段的數(shù)據(jù),停車等待時間僅參與單位行駛距離時間消耗的計算。
表2 用于聚類的特征參數(shù)-車輛OBD
圖6 車輛OBD行駛數(shù)據(jù)
如圖7所示為從百度地圖API 獲取的車流數(shù)據(jù),由百度地圖的實時路況查詢服務(wù)接口(Traffic API)和批量算路服務(wù)接口(RouteMatrix API)獲得。利用實時路況查詢服務(wù),開發(fā)者可以查詢指定道路區(qū)域的實時擁堵情況和擁堵趨勢,其優(yōu)勢在于更新頻率快,可確保開發(fā)者獲取最新的實時路況;利用批量算路服務(wù)可以確定起點和終點,批量計算路線規(guī)劃距離和行駛時間。
圖7 百度地圖API數(shù)據(jù)
通過百度地圖API 獲取的車流信息主要有3 種類型,如表3 所示。其中擁堵狀況、擁堵方向參數(shù)來自實時路況查詢服務(wù),而車流速度參數(shù)則來自批量算路服務(wù)。具體而言,擁堵狀況是對道路進(jìn)行的劃分,包括未知(0)、暢通(1)、緩行(2)、擁堵(3)、嚴(yán)重?fù)矶拢?)等,如果出現(xiàn)擁堵,則擁堵方向表示為同向(1)或反向(-1),即相同行駛方向的擁堵會產(chǎn)生影響,相反行駛方向的擁堵不會造成影響。車流速度為行駛里程與行駛時間之比。因為此處的行駛時間包括了車流中的停車等待時間,即車流速度為行駛距離與行駛時間的比值,行駛時間中包括停車等待的時間。
表3 用于聚類的特征參數(shù)-百度地圖API
完成訓(xùn)練的機(jī)器學(xué)習(xí)算法使用百度地圖API 提供的實時車流數(shù)據(jù)對未來實車工況進(jìn)行在線預(yù)測,進(jìn)而預(yù)測電池電量變化情況。
預(yù)測算法流程如圖8 所示。首先,使用K 均值(KMeans)聚類算法對歷史數(shù)據(jù)(包括表2中的單車信息和表3 的車流信息)進(jìn)行聚類分析,并根據(jù)工況的差異程度將其聚類為6個子工況。然后,將聚類得到的樣本數(shù)據(jù)作為訓(xùn)練樣本用于訓(xùn)練徑向基函數(shù)(Radial Basis Function,RBF)神經(jīng)網(wǎng)絡(luò)分類器。最后,使用訓(xùn)練好的RBF 分類器作為未來行駛工況的預(yù)測工具在實車道路試驗中使用。
圖8 預(yù)測算法流程框架
車輛工況預(yù)測算法需要強大的計算能力和存儲空間,而車載控制器難以滿足條件,車聯(lián)網(wǎng)與云計算可以有效解決上述問題。如圖9 所示,首先,通過OBD 和百度地圖API獲取單車歷史數(shù)據(jù)和車流歷史數(shù)據(jù),并存儲于云端服務(wù)器,基于此數(shù)據(jù)集對本文算法進(jìn)行訓(xùn)練。其次,在實車試驗中,云端服務(wù)器使用訓(xùn)練后的預(yù)測算法,結(jié)合百度地圖API 提供的實時車流數(shù)據(jù)對剩余電量進(jìn)行在線預(yù)測。最后,將預(yù)測結(jié)果發(fā)送到測試車輛。
圖9 車聯(lián)網(wǎng)與云計算影響機(jī)理
聚類分析是根據(jù)數(shù)據(jù)中的描述對象及其關(guān)系信息進(jìn)行無監(jiān)督分類的分析方法。K-Means 算法是基于劃分的聚類算法,其利用質(zhì)心來定義簇的原型。其中,質(zhì)心即為數(shù)據(jù)的均值,通過計算樣本點到質(zhì)心的距離來判定相似程度,距離越遠(yuǎn),越不相似。K-Means 算法流程如圖10 所示,指定k個初始的質(zhì)心,距離質(zhì)心近的點分別形成簇。簇的質(zhì)心會隨著樣本點的指派發(fā)生變化,通過不斷迭代計算更新簇的質(zhì)心,直到數(shù)據(jù)簇質(zhì)心不再發(fā)生較大變化時結(jié)束計算。圖11 所示為基于歷史數(shù)據(jù)(包括通過OBD獲取的實車數(shù)據(jù)和通過百度地圖API獲取的車流數(shù)據(jù))聚類后的6種典型車輛行駛工況。
圖10 K-Means算法流程
圖11 聚類分析結(jié)果示例
圖12 和圖13 所示為聚類后的6 種行駛工況的能耗、時耗概率分布直方圖。結(jié)合各工況能耗、時耗可以發(fā)現(xiàn):工況2 的能耗相對工況1 較低,兩者時耗在100~200 s/km 范圍內(nèi)的概率較高,意味著這2 種工況有較大概率在低時耗區(qū)間;工況3 時耗較低,但能耗最高;工況4 時耗較高,能耗最低;工況5 時耗最低,能耗較高;工況6時耗最高,能耗也較高。可以利用這6種工況的數(shù)據(jù)樣本訓(xùn)練神經(jīng)網(wǎng)絡(luò)分類器,以便對實時工況進(jìn)行預(yù)測。
圖12 能耗概率直方圖
圖13 時耗概率直方圖
基于聚類后的行駛數(shù)據(jù)和百度地圖API數(shù)據(jù)訓(xùn)練人工智能神經(jīng)網(wǎng)絡(luò),使其可以實現(xiàn)車輛行駛工況的在線分類。
圖14所示為一個局部逼近的3層RBF神經(jīng)網(wǎng)絡(luò)。類似于神經(jīng)元接收信號,輸入層的輸入是數(shù)據(jù)的特征參數(shù)。隱含層使用徑向基函數(shù)中的高斯函數(shù)作為傳輸函數(shù):
圖14 RBF神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
式中,x為樣本數(shù)據(jù)特征參數(shù)的向量,本文涉及來自百度地圖API 的3 個參數(shù),即擁堵狀況、擁堵方向和車流速度;σj、cj分別為第j個隱含層神經(jīng)元的方差、中心向量,即上述K-Means 算法確定的聚類中心,試驗共分為6種工況,即存在6個中心向量。
最終,輸出層第i個輸出量的結(jié)果為隱含層結(jié)果的加權(quán)和:
式中,wij為第j個隱含層變量與第i個輸出量之間的連接權(quán)重;wi為第i個輸出量的偏置權(quán)重。
選取yi值最大的工況類型作為最終分類的結(jié)果。訓(xùn)練完成后,該RBF 神經(jīng)網(wǎng)絡(luò)分類器即可根據(jù)百度地圖API 提供的實時車流信息進(jìn)行未來行駛工況的在線預(yù)測。例如:在車輛出發(fā)前通過百度地圖API獲取某一段具體路徑的實時車流數(shù)據(jù),然后使用訓(xùn)練后的RBF神經(jīng)網(wǎng)絡(luò)分類器根據(jù)車流數(shù)據(jù)預(yù)測這段路徑未來的行駛工況(包括能耗或時耗)。
使用互聯(lián)網(wǎng)分布式實車在環(huán)仿真平臺對該機(jī)器學(xué)習(xí)預(yù)測算法進(jìn)行實車道路測試,以驗證其預(yù)測精度。試驗路線為重慶理工大學(xué)花溪校區(qū)周邊市區(qū)道路,與2.4節(jié)中用于采集歷史數(shù)據(jù)的路線相同,見圖5。為保證車輛有充足的電量完成試驗,電池初始電量設(shè)置為0.7;為保證同時包括擁堵與通暢路況,使其更具有代表性,設(shè)置出發(fā)時間在17:30左右(晚高峰時段),試驗相關(guān)參數(shù)如表4所示。
表4 試驗條件
實車道路試驗的空間域與時間域結(jié)果如圖15 所示。兩者的數(shù)據(jù)相同,選取不同坐標(biāo)軸表示。本文在空間域進(jìn)行預(yù)測,并根據(jù)空間域結(jié)果推算時間域結(jié)果,使試驗結(jié)果更直觀。對比圖15a與圖15b可知,在時間域中非線性能耗波動較大,導(dǎo)致SOC曲線較陡,故基于時間域的預(yù)測相對困難。而在空間域中,SOC曲線較為平緩且呈線性,預(yù)測相對容易,故選擇在空間域中預(yù)測更合理。
圖15 實車道路試驗結(jié)果與預(yù)測結(jié)果
由圖15a 可以看出,不同路況的平均速度不同,分別對應(yīng)擁堵路況與暢通路況,因此本文路況滿足多樣性要求,能夠充分檢驗算法的預(yù)測性能。其中,SOC 預(yù)測值曲線由圖12 典型工況能耗的數(shù)學(xué)期望值得到,SOC預(yù)測值的上/下限是借助拉依達(dá)準(zhǔn)則對圖12中能耗的概率分布處理得到的。此準(zhǔn)則適用于正態(tài)或近似于正態(tài)分布的數(shù)據(jù)集。計算數(shù)據(jù)的標(biāo)準(zhǔn)偏差,進(jìn)而根據(jù)一定概率確定誤差區(qū)間。本文取數(shù)值分布在(μ-σ,μ+σ)中的概率為0.682 7,其中μ為均值,σ為方差。當(dāng)偏差超過此區(qū)間(1σ范圍)時,認(rèn)為此次預(yù)測不合格。由圖15a中SOC曲線可以發(fā)現(xiàn),預(yù)測曲線在上/下限之間且較平緩,與實際曲線吻合度高,結(jié)果預(yù)測準(zhǔn)確度高。
SOC預(yù)測結(jié)果的誤差如表5所示,具體數(shù)據(jù)分別對應(yīng)試驗路線中劃分的16 個子路段(見圖5)的預(yù)測結(jié)果。參考表5 中的數(shù)據(jù),初始誤差在較小的范圍內(nèi),但隨著預(yù)測路段延后,誤差不斷累積,最大誤差為3%左右,預(yù)測算法可靠性高。
表5 預(yù)測值與實際值誤差
本文基于機(jī)器學(xué)習(xí)算法,結(jié)合數(shù)字地圖歷史車流數(shù)據(jù)和歷史單車數(shù)據(jù),訓(xùn)練出位于云端的分類器。使用由數(shù)字地圖API 提供的實時車流數(shù)據(jù)預(yù)測電動汽車未來行駛路況,并基于互聯(lián)網(wǎng)分布式實車在環(huán)仿真平臺對提出的預(yù)測算法進(jìn)了實車道路試驗。結(jié)果表明,預(yù)測值和實際值誤差保持在5%以內(nèi),且大部分小于2%,算法能夠準(zhǔn)確預(yù)測未來工況。