黃 永
(福建星網銳捷通訊股份有限公司 福建 福州 350002)
隨著我國電動自行車數量及規模的激增,隨之而來的安全問題也日漸突顯。在智能手機與互聯網應用成熟的當下,借助微信小程序、二維碼、NB-IoT、大數據分析、虛擬化等技術來實現一套智能安全的充電解決方案,在滿足用戶給電動車充電需求的同時也起到了對電動車安全監控監管的作用,并且通過微信小程序及大數據平臺使用戶能夠感知自己電動車電池使用情況及風險,從而帶來更好的體驗[1]。
智能充電樁解決方案組網見圖1。

圖1 智能充電樁解決方案組網
整個智能充電樁解決方案分為:充電樁(包括中繼設備與插座終端設備)、微信小程序及微信公眾號、智能充電樁平臺等3大組成部分。
充電樁設備總體包括中繼設備、插座終端兩個部分。
充電樁中繼設備:向上通過NB-IoT模塊實現與智能充電樁平臺的通信,并使用MQTT實時通信協議實現與平臺的低負載高可靠的通信。同時,向下通過CAN總線,實現最大下掛30個插座終端、最高傳輸距離500 m的插座終端集成與通信,完成平臺與插座間通信、管理等承上啟下的中繼作用。
充電樁插座終端設備:插座終端設備根據型號分為單插座、雙插座等類型。插座終端通過CAN總線與充電樁中繼完成充電控制信令交互等邏輯,實現插座供電的控制。在此基礎上,采集并向平臺上報當前充電過程中的供電曲線,為平臺實現基于用戶、電動車電池狀態等大數據分析提供依據。
微信小程序大致包括:充值、充電、個人中心等模塊。微信小程序通過調用微信API接口實現支付與掃碼等功能。同時,微信小程序通過MQTT協議與智能充電樁平臺進行實時通信。
在微信小程序中,用戶通過綁定手機號實現注冊。用戶通過小程序掃描充電樁插座上的二維碼讀取對應插座SN序列號,并將序列號、用戶等信息通過MQTT協議上報給充電樁平臺,平臺識別SN并且判斷用戶的余額信息后將充電請求下發給插座終端對應的中繼,中繼通過CAN總線將充電請求發給對應的插座,插座終端為對應的插座開始供電并將操作結果原路返回到用戶的小程序上,完成充電業務流程,見圖2。

圖2 微信小程序充電流程
如圖3所示,用戶還可以在小程序上查看正在進行和過往的充電記錄,包括充電時長、消費金額等信息。

圖3 微信小程序個人訂單界面
由于微信小程序不具備實時消息推送的功能。因此,用戶可選擇通過綁定手機號的方式進行注冊,將小程序與公眾號進行關聯。當用戶發起充值、充電等操作,以及充電結束后訂單結算等結果,平臺通過微信公眾號推送給客戶,以此完善用戶操作結果的感知體驗。
3.4.1 平臺架構與技術
智能充電樁平臺采用分布式微服務架構,運用Spring Cloud微服務架構將模塊細分為微服務。同時,還引入了ZooKeeper注冊中心、RocketMQ消息隊列服務組件、FastDFS分布式文件系統、Nginx以及MySQL和Rediss兩種數據庫等第三方組件,組成完整的微服務集群部署解決方案[2]。
智能充電樁整合充電樁業務相關服務,共分為設備管理與業務處理兩大塊。設備管理由ACS設備接入服務、NE設備管理服務兩種服務集群,主要實現與設備的通信與控制的邏輯。業務處理由ACS小程序接入服務、BZ業務管理服務、PAY支付平臺對接服務等三種服務集群,主要實現企業、代理商、物業/項目的層級關系、分成設置、用戶管理、訂單報表與結算等一系列業務邏輯,并完成與第三方支付平臺的對接。然后,還有一個Web服務集群,提供運營商、代理商、物業等3種類型管理員的登錄與管理。
所有服務及其集群實例向ZooKeeper注冊中心發布自己的API,并訂閱自己模塊所需要的相關接口,ZooKeeper定期更新并發布相關API接口列表給訂閱者,以此實現服務間透明化RPC調用。另外,服務集群間異步通信使用RocketMQ發布與訂閱Topic來完成,以此實現一些非實時處理的功能。整個平臺的文件管理采用分布式FastDFS進行存儲,這樣可以充分利用所有服務器的存儲空間并可無縫擴容并保證可靠性。平臺的數據庫采用MySQL,并且Redis作為緩存數據庫共享服務間的數據[3]。
整個平臺的組件,包括數據庫、消息隊列等均采用主備形式進行部署,確保平臺高可用性。而平臺自身服務在相關組件故障時也會自動進行主備切換,保證業務不受影響。
由于采用的是微服務框架,并且使用了服務無狀態化方式實現,因此每個服務均可以根據業務需要進行動態擴容或調整而不影響原有業務,即不停機更新。另外,平臺采用docker虛擬化技術實現鏡像與容器,配以自主研發的運維管理系統,可對平臺進行實時監控和動態部署和調整,極大地提高平臺運行穩定性和擴容調整的便捷性。
3.4.2 平臺功能
智能充電樁平臺分為系統管理、平臺監控、設備管理與業務管理4大部分。
系統管理,包括用戶與用戶組管理、平臺參數配置等功能。管理員可以在系統管理中設置用戶組及其權限,將職能權限在此進行體現,然后為相對應的人員創建管理用戶,并將其設置到指定的用戶組中讓其擁有對應的管理權限。平臺參數配置,主要針對智能充電樁平臺的運行參數進行調整與配置。
平臺監控,主要針對平臺自身的運行情況進行監控與管理。包括性能監控與告警,平臺對自身CPU、內存、磁盤、流量的空閑值進行采集,來判斷其是否超過閾值而產生運行告警,提醒運維人員平臺可能的異常;操作日志記錄,平臺記錄所有用戶在平臺的操作日志便于安全審計與操作追蹤;運行日志管理,平臺自身對運行日志文件進行定期回滾以及提供下載功能,便于有問題時查看運行情況和跟蹤。
設備管理是對在網充電樁設備的統一管理與維護,包括中繼設備、插座終端、插座的管理與狀態顯示。平臺通過層級抽屜的方式呈現中繼設備與插座終端、插座終端與插座的關系,并顯示各自的當前狀態。平臺還負責采集并呈現設備(中繼與插座終端)上報的異常告警,以便運維人員能夠直觀地查看到異常狀態及其故障原因。平臺能夠對設備發起升級、重啟、獲取運行日志、網絡檢測、硬件自檢、參數配置等操作,便于運維人員遠程管理和調試設備。另外,平臺還可以訂閱指定插座終端的充電功率,當開啟此功能時,設備定時采集當前充電的功率并上報給平臺。平臺收集這些功率數據與訂單用戶進行關聯,以此呈現具體某一用戶電動車電池的充電功率曲線,便于分析該用戶電池的老化情況和電池充電特性,在此大數據分析的基礎上能夠將電池情況準確地反饋給客戶[4]。
業務管理,包括訂單管理、報表管理等模塊。訂單管理呈現所有用戶產生的訂單數據,并根據時間、用戶、設備SN等各種維度來進行過濾查找,便于平臺運營商的賬務管理。報表管理分為設備故障情況、訂單情況、用戶情況,以各種維度來呈現平臺運營情況,便于平臺運營商的決策分析。例如,用戶情況可以呈現各地項目用戶活躍度的熱力圖來分析項目運營情況、可以呈現設備新裝設備趨勢圖來反映各地業務發展趨勢。
本文借助于目前大眾普遍使用的微信小程序、NBIoT、大數據、微服務、虛擬化等技術,提出了從移動應用端到充電樁設備的智能電動自行車充電樁解決方案。用戶可以通過掃碼、刷卡等方式進行充電消費的同時,平臺根據充電過程的充電曲線進行大數據分析用戶及其電動車電池的狀態,在一定策略下保證充電的安全,解決了日趨突顯的電動自行車充電不規范所帶來的安全問題。