作者:杜明明,崔立堃,馮緒永,王承祥引 言
隨著純電動(dòng)汽車(chē)迅速發(fā)展,充電樁的發(fā)展也呈快速的發(fā)展趨勢(shì)。2015 年《電動(dòng)汽車(chē)充電基礎(chǔ)設(shè)施發(fā)展規(guī)劃(2015—2020 年)》指出了明確的發(fā)展目標(biāo),2020 年初充電樁被正式納入新基建,有望迎來(lái)新一輪增長(zhǎng)[1]。目前,國(guó)家電網(wǎng)、南方電網(wǎng)、TELD、奧地利集團(tuán)和其他許多國(guó)內(nèi)充電設(shè)備制造商和運(yùn)營(yíng)商大多都是以 104 通訊協(xié)議為基礎(chǔ),并且各個(gè)制造商和運(yùn)營(yíng)商經(jīng)過(guò)對(duì)該協(xié)議進(jìn)行一定程度的篩選和修改后,使該協(xié)議變?yōu)椤鞍腴_(kāi)放”的狀態(tài)進(jìn)行開(kāi)發(fā)使用,這樣形成的封閉協(xié)議代表了它的私有性,如果沒(méi)有相對(duì)應(yīng)的接口和網(wǎng)關(guān),就無(wú)法和其他產(chǎn)品互相通訊。OCPP(Open Charge Point Protocol,開(kāi)放充電通訊協(xié)議)是一個(gè)免費(fèi)提供的開(kāi)放標(biāo)準(zhǔn),是一種通用的開(kāi)放通訊協(xié)議,它用于解決私營(yíng)充電網(wǎng)絡(luò)帶來(lái)的挑戰(zhàn)[1?3],它使供應(yīng)商和網(wǎng)絡(luò)運(yùn)營(yíng)商能夠相互混合以及互相匹配可互操作性的軟件和硬件。統(tǒng)一的標(biāo)準(zhǔn)可防止各種協(xié)調(diào)問(wèn)題,因此對(duì)于整個(gè)電動(dòng)汽車(chē)市場(chǎng)都是一個(gè)優(yōu)勢(shì)。運(yùn)用當(dāng)前在工業(yè)應(yīng)用中占有不可替代作用的 Linux下的 Ubuntu 操作系統(tǒng)[4?6]實(shí)現(xiàn)了 OCPP 特定的功能,并經(jīng)驗(yàn)證各個(gè)功能均可以達(dá)到良好的交互,證明了為解決兩端之間通訊的開(kāi)放性提供了一種方法,擬為后續(xù)汽車(chē)充電樁的發(fā)展模式和管理方式提供一種可行性的交互框架。
1 OCPP 1.6及系統(tǒng)模型
1.1 OCPP 1.6
OCPP 為 CS(充電站)與任何 CSMS(充電站管理系統(tǒng))間提供一種統(tǒng)一的通訊方案。這個(gè)協(xié)議構(gòu)架支持任何充電服務(wù)供應(yīng)商的 CSMS 與所有的 CS 點(diǎn)互相連接[7]。目前,OCPP已經(jīng)成為歐洲和美國(guó)部分地區(qū)充電網(wǎng)絡(luò)通訊領(lǐng)域事實(shí)上的開(kāi)放標(biāo)準(zhǔn)協(xié)議,有 50多個(gè)國(guó)家的充電網(wǎng)絡(luò)運(yùn)營(yíng)商和服務(wù)提供商依靠OCPP管理成千上萬(wàn)個(gè)充電站。
OCPP 1.6 版本是截止目前比較完善的一個(gè)版本,它是在已成功實(shí)施多年的 1.5 版本的基礎(chǔ)之上制定的,并且 OCA(開(kāi)放充電聯(lián)盟)已經(jīng)針對(duì) 1.6 版本規(guī)劃出了一個(gè)官方的認(rèn)證體系。OCPP 1.6 引入了一些新功能,包括智能充電,并在支持 SOAP 格式之后開(kāi)始支持基于Web Sockets 的 JSON 應(yīng)用格式[8]。JSON 格式具有簡(jiǎn)潔和清晰的層次結(jié)構(gòu),易于開(kāi)發(fā)者編寫(xiě)、閱讀和檢查,也易于機(jī)器解析和生成,傳輸速度快等特點(diǎn),因此 JSON 格式正迅速成為Web上最流行的數(shù)據(jù)交換格式之一[9?10]。圖1對(duì)比了兩個(gè)版本的異同,表明 OCPP 1.6 版本比 OCPP1.5版本改善和增加了更多的功能。
1.2 基于 OCPP充電站和充電站管理系統(tǒng)模型
在 OCPP中,CS作為電動(dòng)汽車(chē)充電的物理系統(tǒng),一個(gè)CS 可以有一個(gè)或者多個(gè) EVSE(電動(dòng)汽車(chē)供應(yīng)設(shè)備)。在協(xié)議里面,電動(dòng)汽車(chē)被認(rèn)為是充電站的一部分,在同一時(shí)間,可以為一輛電動(dòng)汽車(chē)提供能源。圖 2 中的連接器就是通常所說(shuō)的能在 CS 上獨(dú)立操作和管理的電源插座,簡(jiǎn)言之,就是對(duì)應(yīng)于單個(gè)物理連接器。在某些情況下,電動(dòng)汽車(chē)可能有多個(gè)物理插座類(lèi)型和連接器,以方便不同類(lèi)型的車(chē)輛(例如四輪電動(dòng)汽車(chē)和電動(dòng)摩托車(chē)),這個(gè)設(shè)置被稱(chēng)為三層模型[11],如圖 2所示。
基于通訊目的的充電基礎(chǔ)設(shè)施并不是強(qiáng)制性地加到物理硬件設(shè)備上,例如,EVSE 可能會(huì)被集成到一個(gè)CS上面,這樣看起來(lái)只是設(shè)備的一部分。
2 充電站管理系統(tǒng)運(yùn)行環(huán)境搭建
2.1 Steve服務(wù)器搭建流程
在 OCPP 1.6 版本中,OCPP 作為 CS 和 CSMS 之間通訊的一種協(xié)議。在進(jìn)行 OCPP 中特定功能實(shí)現(xiàn)時(shí),要同充電站管理系統(tǒng)進(jìn)行交互,進(jìn)而驗(yàn)證所開(kāi)發(fā)的功能是否遵循 OCPP 協(xié)議的要求,同樣驗(yàn)證其功能的實(shí)現(xiàn)是否達(dá)到標(biāo)準(zhǔn)。
采用 Steve 版本的充電站管理系統(tǒng),它完全是遵照OCPP 進(jìn)行開(kāi)發(fā)的,并且是比較穩(wěn)定的一個(gè)系統(tǒng)。兩端通過(guò) Web Socket 方式進(jìn)行信息交互,CSMS 作為 WebSocket 服務(wù)器端,CS 作為 Web Socket 客戶端[11],其總體流程如圖 3所示。
Web Socket協(xié)議是一個(gè)標(biāo)準(zhǔn)的通信協(xié)議,用于服務(wù)器向客戶發(fā)送內(nèi)容,而不需要客戶要求的標(biāo)準(zhǔn)通信協(xié)議;在克服請(qǐng)求超時(shí)問(wèn)題方面,也發(fā)揮了最重要的作用,例如,它允許消息來(lái)回傳遞,同時(shí)保持連接持續(xù)開(kāi)放[12]。
Web Socket 協(xié)議是基于 HTML5 提供的一種在單個(gè)TCP 連接上進(jìn)行全雙工通信的協(xié)議,該協(xié)議本質(zhì)上為通信雙方提供了一個(gè)基于 TCP 連接的雙向通道,所以能夠高效地在雙向通道中實(shí)時(shí)互相發(fā)送信息[12]。如圖 3 所示,在搭建 Steve 服務(wù)器時(shí),所用到的技術(shù)主要利用數(shù)據(jù)庫(kù) 管 理 系 統(tǒng) MySQL 進(jìn) 行 數(shù) 據(jù) 的 訪 問(wèn) 和 管 理[13],利 用Apache?Maven、JDK 等工具進(jìn)行環(huán)境運(yùn)行維護(hù)。
2.2 克隆管理系統(tǒng)及運(yùn)行
搭建的環(huán)境最后要為服務(wù)器的完好運(yùn)行服務(wù)。目前,對(duì)應(yīng)于 OCPP 1.6 版本的服務(wù)器的最穩(wěn)定版本是Steve?3.4.3版本,通過(guò)在 git@github.com:RWTH?i5?IDSG/steve.git 上運(yùn)用 Git 工具來(lái)獲取 Steve?3.4.3 版本,該服務(wù)器是獨(dú)立運(yùn)行的,并不需要 Java Servlet 容器或者 Web服務(wù)器(例如 Apache?Tomcat),故選用 Steve 作為充電站管理系統(tǒng)服務(wù)器[14]。對(duì)服務(wù)器進(jìn)行數(shù)據(jù)庫(kù)的配置、本地到服務(wù)器的 IP 地址的設(shè)置等,根據(jù)終端運(yùn)行成功后所生成的 URL:http://127.0.0.1:8080/ steve/manager/ home在 Google?Chrome 瀏覽器打開(kāi),進(jìn)入到服務(wù)器的登錄界面,證明服務(wù)器端能正常運(yùn)行,為客戶端功能的驗(yàn)證奠定了基礎(chǔ),如圖 4所示。
3 OCPP 特定功能實(shí)現(xiàn)
3.1 通過(guò) RFID 授權(quán)充電站功能
在電動(dòng)汽車(chē)司機(jī)可以啟動(dòng)或停止電動(dòng)汽車(chē)充電之前,第一步要做的就是要對(duì) CS 進(jìn)行授權(quán)操作,在 OCPP 1.6中,支持用 RFID 進(jìn)行授權(quán)操作。當(dāng)司機(jī)要開(kāi)始或停止給電動(dòng)汽車(chē)充電時(shí),出示 RFID 卡,然后 CS 會(huì)將授權(quán)請(qǐng)求發(fā)送給 CSMS 即充電站管理系統(tǒng),收到請(qǐng)求后 CSMS即會(huì)響應(yīng)授權(quán)請(qǐng)求,該響應(yīng)消息會(huì)反映 idToken 是否被CSMS 接收,idToken 是一種用于授權(quán)的標(biāo)識(shí)符。CS 將授權(quán)請(qǐng)求發(fā)送到 CSMS 以請(qǐng)求授權(quán),收到授權(quán)請(qǐng)求后,CSMS 會(huì) 以“ 授 權(quán) 響 應(yīng) ”進(jìn) 行 響 應(yīng) ,該 響 應(yīng) 消 息 指 示idToken是否被 CSMS接收,如圖 5所示。
3.2 啟動(dòng)通知功能
該功能的目的就是使 CS 能夠在 CSMS 上進(jìn)行注冊(cè)并提供正確的狀態(tài)信息。在 CS啟動(dòng)后,首先向 CSMS發(fā)送啟動(dòng)通知請(qǐng)求,提供配置信息如供應(yīng)商、版本等基本信息,在 CSMS收到來(lái)自 CS發(fā)送的請(qǐng)求后,CSMS應(yīng)響應(yīng)指示是否接收 CS。當(dāng) CSMS 響應(yīng)啟動(dòng)請(qǐng)求時(shí),CS 將調(diào)整心跳間隔,根據(jù)間隔來(lái)同步它的內(nèi)部時(shí)鐘與提供的CSMS 的當(dāng)前時(shí)間。CS 信息主要包括:序列號(hào),供應(yīng)商特定的設(shè)備標(biāo)識(shí)符;型號(hào),定義設(shè)備型號(hào);供應(yīng)商名稱(chēng),標(biāo)識(shí)供應(yīng)商(不一定以唯一的方式);固件版本,其中包含 CS 的固件版本等一些關(guān)于 CS 的一些基本信息。詳細(xì)信息如圖 6所示。
3.3 通過(guò) CSMS對(duì) CS的授權(quán)
該功能用例是通過(guò) CSMS 服務(wù)器生成的 idToken 可以在 CS上啟動(dòng)充電會(huì)話,通過(guò)使用應(yīng)用程序向 CSMS發(fā)送啟動(dòng)請(qǐng)求,CSMS 會(huì)確定一個(gè) idToken 并且可以生成一個(gè)唯一的 ID 來(lái)用作充電的 idToken,接著 CSMS 會(huì)向CS 發(fā)送一個(gè)帶有 idToken 的啟動(dòng)充電請(qǐng)求,然后 CS 會(huì)發(fā)送一個(gè)開(kāi)始充電響應(yīng),接受充電請(qǐng)求。具體功能實(shí)現(xiàn)流程如圖 7所示。
3.4 心跳功能
該功能模塊的目的是讓 CSMS 實(shí)時(shí)知道 CS 的狀態(tài)仍然是在連接中,CS 在一個(gè)可配置的時(shí)間間隔后發(fā)送一個(gè)心跳。CS 會(huì)向 CSMS 發(fā)送一個(gè)心跳請(qǐng)求來(lái)確保CSMS 知道 CS 仍然處于活動(dòng)狀態(tài),CSMS 一旦收到心跳請(qǐng)求后,會(huì)響應(yīng)一個(gè)心跳響應(yīng),響應(yīng) CSMS 的當(dāng)前時(shí)間,同樣也可以使用該時(shí)間來(lái)同步其內(nèi)部時(shí)鐘。
4 功能測(cè)試
4.1 驗(yàn)證兩端的連接狀態(tài)
對(duì)于使用 OCPP?J 的 CS 和 CSMS 之間的連接,CSMS充當(dāng) Web Socket服務(wù)器,而充電點(diǎn)充當(dāng) Web Socket客戶端。要啟動(dòng) Web Socket 連接,CS 需要一個(gè) URL 進(jìn)行連接。此后,文中 URL 稱(chēng)為“連接 URL”,連接 URL 特定于某 個(gè) CS。充 電 點(diǎn) 的 連 接 URL 包 含 CS 標(biāo) 識(shí)(文 中NO001),以便 CSMS 知道 Web Socket 連接屬于哪個(gè) CS。首先由客戶端向服務(wù)器端發(fā)送一個(gè) HTTP 請(qǐng)求,即 WebSocket 連接起始于一個(gè) HTTP 請(qǐng)求,該請(qǐng)求頭中會(huì)包含“Upgrade:Web Socket”,這表明瀏覽器端請(qǐng)求將會(huì)通過(guò)HTTP協(xié)議升級(jí)到 Web Socket協(xié)議[15]。
使用 OCPP?J端點(diǎn) URL為:
“ws://127.0.0.1:8080/steve/websocket/Central System Service /NO001”
下面是 OCPP ? J 連接握手打開(kāi) HTTP 請(qǐng)求的狀態(tài)代碼:
Requestheader=GET / steve / websocket / CentralSystemService /NO001 HTTP/1.1
Upgrade:web socket
Connection:Upgrade
Sec?Web Socket?Protocol:ocpp1.6
Host:127.0.0.1:8080
Sec?Web Socket?Key:yyEwurPSLFnpKLI0z7uxww==
Sec?Web Socket?Version:13.
在此連接過(guò)程中,CS 的唯一標(biāo)識(shí)為“NO001”,故請(qǐng)求 的 路 徑 為 :“/steve / websocket / CentralSystem Service /NO001”。
4.2 驗(yàn)證功能
通過(guò)在終端上模擬 RFID 對(duì) CS 進(jìn)行授權(quán),發(fā)送心跳以及充電等請(qǐng)求,在 Ubuntu 終端上會(huì)顯示發(fā)送成功的界面,直接能說(shuō)明可以進(jìn)行良好的通訊以及進(jìn)行功能上的響應(yīng),如圖 8所示。
啟動(dòng)通知功能是應(yīng)用比較頻繁的一個(gè)功能,在正常情況下,從終端發(fā)送一條啟動(dòng)通知請(qǐng)求后,通過(guò) CSMS的授權(quán)功能實(shí)現(xiàn),其功能的實(shí)現(xiàn)是在服務(wù)器端進(jìn)行CS標(biāo)識(shí)符的鎖定,如“NO001”,此標(biāo)識(shí)符是唯一的,其在服務(wù)管理端成功授權(quán)的界面如圖 9所示。
在終端運(yùn)行經(jīng)過(guò)編譯后的心跳功能可執(zhí)行文件,CSMS 會(huì)收到心跳請(qǐng)求,心跳功能的主要目的就是讓CSMS 知道 CS 一直處于活動(dòng)狀態(tài),執(zhí)行充電請(qǐng)求時(shí),后臺(tái)管理系統(tǒng)同樣會(huì)響應(yīng),通過(guò)搭建的 Steve 服務(wù)器,結(jié)合OCPP 中所涉及的功能塊的工作原理,最后成功地實(shí)現(xiàn)了功能,并且可以很好地進(jìn)行工作。圖 10 展示了后臺(tái)管理系統(tǒng)的響應(yīng)信息。
5 結(jié) 論
本文基于 OCPP 通訊協(xié)議,在 Linux 下的 Ubuntu 操作系統(tǒng)上運(yùn)用各種項(xiàng)目構(gòu)建工具和技術(shù)分別搭建了充電站客戶端運(yùn)行框架和后臺(tái)管理系統(tǒng)框架,對(duì)所涉及的授權(quán)充電、啟動(dòng)通知、心跳等特定功能進(jìn)行了研究和實(shí)現(xiàn)。最后結(jié)合 Steve 服務(wù)器進(jìn)行通訊,驗(yàn)證了兩端能進(jìn)行可靠、實(shí)時(shí)、快速地通訊,表明 OCPP 協(xié)議作為開(kāi)放性的通訊協(xié)議能正常地進(jìn)行通訊,本文所提通訊框架成功運(yùn) 用 了 OCPP 協(xié) 議 ,并 為 未 來(lái) 充 電 樁 通 訊 協(xié) 議 應(yīng) 用OCPP提供了一種可行性的通訊框架。
審核編輯:郭婷
原文標(biāo)題:論文速覽 | 基于 OCPP 1.6的充電站與充電站管理系統(tǒng)通訊實(shí)現(xiàn)
文章出處:【微信號(hào):現(xiàn)代電子技術(shù),微信公眾號(hào):現(xiàn)代電子技術(shù)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
電動(dòng)車(chē)快速充電站
本田最新公共充電樁:?jiǎn)螛豆β?50Kw 超過(guò)特斯拉超級(jí)充電站
小區(qū)充電站如何盈利?
你對(duì)小區(qū)電動(dòng)車(chē)充電站了解多少?
物業(yè)管理小知識(shí):安裝云鳥(niǎo)小區(qū)充電站有哪些好處?
小區(qū)充電站的知識(shí)介紹與使用說(shuō)明
社區(qū)建設(shè)小區(qū)充電站的好處
如何對(duì)充電站電氣系統(tǒng)進(jìn)行測(cè)試?
基于matlab粒子群算法優(yōu)化充電站布局
專(zhuān)家計(jì)劃保護(hù)電動(dòng)汽車(chē)充電站免受網(wǎng)絡(luò)攻擊
SitaraTM AM625用于2級(jí)交流電動(dòng)汽車(chē)充電站的設(shè)計(jì)注意事項(xiàng)
如何設(shè)計(jì)高效、強(qiáng)大、快速的電動(dòng)汽車(chē)充電站
電動(dòng)汽車(chē)的充電站介紹
水冷充電站方案介紹
商業(yè)充電站運(yùn)維管理方案

評(píng)論