李元熙
(1. 江蘇省無線傳感系統應用工程技術研究開發中心, 江蘇 無錫 214000;2. 無錫商業職業技術學院 物聯網技術學院, 江蘇 無錫 214153)
江蘇地區電瓶車的保有量較高,其充電設備維修及人員培訓備受業內關注[1]。隨著職業教育與各產業的融合發展,產教融合實訓平臺建設需求旺盛,尤其是在高校教學中如何將實驗平臺與行業應用結合起來,成為亟待解決的問題。針對此情況設計了一種基于云平臺的網絡充電控制系統,該系統滿足“互聯網+”充電需求,適用于電瓶車充電樁行業的技術升級和培訓,也為中高職院校的物聯網、電子信息、軟件技術、計算機網絡等專業提供相關教學實驗平臺。
“云充電”實驗系統使用了網絡通信、數據庫、嵌入式電氣控制、傳感器檢測等相關技術。系統結構可分為網絡充電控制器、路由及通信網、應用云服務器三部分,如圖1 所示。其中:網絡充電控制器是硬件核心,具備電流檢測功能,通過Internet連接到云服務器,當出現過充、盜拔、短路等異常情況時,能夠實現本地提醒并向云平臺發送異常數據包;網絡部分為有線連接,使用TCP 協議棧接入Internet;應用云服務器是構建在阿里云上的應用程序,包含數據庫與控制臺,可實現數據存儲與查詢,是系統運行的控制主體。運行時,用戶通過RFID 或移動端APP 申請啟動充電控制器[2],數據傳入云平臺服務器后,通過業務控制邏輯將運行指令反饋給硬件并執行動作,同時在平臺上完成數據更新維護。

圖1 “云充電”實驗系統結構
系統硬件是以Cortex-M4 為核心的嵌入式控制器設備,主要由ARM 控制器、網絡接口、RFID電路、電流檢測與濾波電路、充電控制電路和電源電路等模塊組成,見圖2。其中:ARM 控制器實現與其他模塊的接口驅動[3]、數據解析和流程控制;網絡接口是設備連接因特網的通道,使用嵌入式協議棧實現網絡接入;RFID 電路由標準Mifare 系列的讀卡IC 構成,通過SPI 接口與ARM 相連;電流檢測使用霍爾傳感器實現,經放大、低通濾波電路后送入AD 采樣通道;充電控制電路是具有電氣隔離的繼電器控制驅動電路。

圖2 硬件總體結構
標準的以太網硬件接口包含MAC 控制器、PHY 驅動器、網絡變壓器和RJ45 接頭等[4]。由于STM32F407 芯片在內部集成了以太網控制器,因而在電路上只需外接一塊PHY 驅動芯片DP83848 即可實現網絡數據收發。考慮硬件系統小型化要求,連接時采用了RMII 方式以減少信號線數量。電路中DP83848 的收發線路采用差分信號線走線,時鐘信號由外部25 MHz 有源晶振提供,并在電源端串聯磁珠、對地并聯高頻電容以改善信號特性。
充電電流檢測是系統獲取充電狀態和觸發異常處理的基礎。在電瓶充電過程中恒流充電階段電流較大,進入恒壓充電后電流逐漸下降直至涓流充電,且在涓流期電流多采用微小脈沖方式充電[5],不易捕捉。因此,對這種電流動態范圍大的場合使用霍爾傳感的方法更為合適。ACS712 傳感器內置放大、濾波、斬波與修正電路,可輸出正比于電流的電壓信號[6]。考慮充電時電流易受污染,存在大量諧波分量影響采樣精度的情況,故在霍爾輸出端使用運放構建放大和二階有源低通濾波電路,提高輸入ADC 的電壓準確度。
系統軟件分為控制器嵌入式軟件和云平臺服務器軟件兩部分。控制器嵌入式軟件主要實現硬件驅動、IC 讀卡、電流采樣和計算等底層操作,以及TCP 數據收發等網絡層操作。云平臺的服務器程序為應用層軟件,由控制臺和數據庫組成,主要實現基于Socket 的數據通信、數據格式解析以及與數據庫操作等,其架構如圖3 所示。

圖3 系統軟件架構
基于TCP 的數據傳輸是網絡功能的核心,為應用層提供了一種面向連接的、可靠的字節流服務[7]。圖3 中的網絡傳輸層程序分為嵌入式TCP傳輸和云平臺的Socket 通信兩大部分。設備的網絡傳輸由LwIP 協議棧完成,這是一套用于嵌入式系統的開源TCP/IP 協議棧,能較好地解決網絡協議棧在使用效率和分層之間的問題[8]。設計時在ARM 上運行UCOS-II,并開啟定時、數據發送、數據接收等任務。定時任務實現網絡心跳和采樣定時;數據發送任務使用LwIP 中的TCP 和IP 層函數將數據送網絡接口層發送;數據接收任務采用中斷方式啟動,并在回調函數中進行數據解析,將有效字段存入Flash 存儲器。TCP 控制程序流程如圖4。

圖4 嵌入式TCP 控制程序流程
控制臺軟件使用Socket 與設備連接,當偵聽到有連接請求時,控制臺創建一個Socket 并開辟循環緩沖區用于保存接收的數據。當數據接收完成后開始解析步驟,獲取數據幀中的運行參數或指令,并寫入后臺數據庫或按指令進行比對查詢,操作流程見圖5。
實際使用時,由于服務器構建在云平臺上,存在大量來自不同地域設備的并發連接請求。因此,每個連接都需要一個新的線程來處理。服務器控制臺通過維護一張設備哈希表來區分當前連接綁定至相應的控制器設備。
系統在云平臺上使用MYSQL 構建關系型數據庫。由于涉及充電設備和用戶兩種對象,因此在設計時創建了“設備云”和“用戶云”兩個不同的數據表單。考慮使用網絡服務商提供的動態IP 分配,系統在數據庫中設計一張“中間表”來保存兩者間IP 的對應關系,利用心跳包實時更新中間表的IP 對應關系,一次通過這三張表就可完成設備和用戶的對應查找。

圖5 服務器端TCP 控制程序流程
為實現產教融合,更好地將系統應用于教學和技術培訓,面向物聯網、電子信息、計算機網絡、軟件技術等專業設計了實驗課程體系。將平臺分解成硬件設計、網絡傳輸、云平臺搭建、數據庫運維等部分,融入對應的專業實踐課程,同時結合考證需求,將平臺納入考證實操要求,其課程體系設計如圖6。
圖6 中“云充電”系統的硬件設備層面向物聯網應用技術、電子信息技術、電氣自動化等專業開設,主要為硬件電路設計和嵌入式程序設計,銜接電工、儀器儀表裝配工和CAD 繪圖員等考證科目;網絡層部分面向物聯網和計算機網絡專業開設,主要關注學員的網絡配置和排故能力培養,銜接計算機網絡管理員工種的培訓;系統應用層平臺面向軟件技術、網絡技術、云計算等專業開設,主要是WEB 前端技術和后臺數據庫運維的訓練,銜接計算機程序設計員工種。
為滿足行業從業人員和學生技能培訓需求,針對系統結構,設計分層訓練技能點見表1,以指導教學和培訓的開展。其中:硬件部分主要面向一線安裝調試人員,設置了讀圖、安裝規范、設備檢修等技能點;網絡部分設置了網絡配置、連接測試、網絡故障修復等技能點;應用層則包括平臺系統配置、設備接入工序、數據維護等技能點。

圖6 實驗課程體系設計

表1 “云充電”系統教學培訓技能點分解表
測試時,控制器硬件通過路由器以有線方式接入布置在“阿里云”平臺上的服務系統,采用DHCP 方式獲取本地IP。充電控制器通過“心跳包”每隔30 秒向服務器注冊設備,控制臺接收設備和用戶的接入請求,記錄接收的數據并轉發控制指令。平臺管理站點使用PHP+MySQL 方式布置。通過50 臺設備隨機接入實驗,結果表明,云平臺充電控制系統能有效實現充電樁的動態接入并實現統一管控,通過數據庫可將設備、用戶以及充電狀態顯示在管理頁面,實現了網絡技術、嵌入式技術與數據庫技術的結合。
“云充電”教學實驗系統為傳感器技術、智能硬件設計、電氣控制、計算機網絡運維、web 前后端技術、數據庫技術等課程提供了實驗平臺支撐,并嵌入物聯網應用技術專業群的實驗培訓體系。從2018—2019 年的實際使用情況看,系統各功能層在電子類、網絡類和軟件類專業實訓中實現了全覆蓋。系統設備層的知識與技能點在電子儀器儀表裝配工考證教學中占60 %以上,在電子CAD 考證中占80 %;系統的網絡層和應用層知識與技能點也在對應的計算機網絡管理員、程序設計員考證中具有50 %左右的試題量;系統在相關課程中的平均使用率超過七成,且借助該教學實驗系統,學生的技能考證平均通過率均在92 %以上,較好地為課證融通的實施提供了保障。
同時,針對無錫及周邊城市的電瓶車充電從業人員開展相關技術培訓,系統自2019 年上線運行至今,累計教學培訓超5000 人次,系統已接入4 市15 個轄區80 多個社區,服務使用人數超過 5 萬。
針對產教融合需求,結合行業應用提出的“云充電”教學實驗系統涵蓋了物聯網各層技術,實現了電瓶車充電樁的動態接入和在線監管,擴展了物聯網技術在居民生活中的應用,同時也為高職院校相關課程的教學提供了實驗平臺和項目化案例,有效實現了產學研聯動,具有較好的推廣價值。