,,,
(1.西安工程大學 計算機科學學院,西安 710048;2.國網陜西省電力公司)
隨著配電網技術的快速發展,城市配電網自動化監控的覆蓋面不斷擴大[1-2],但是配電饋線終端FTU的現場檢測和維護十分不便[3],主要原因是FTU一般架設在柱上,操作FTU自帶的人機交互接口(MMI)必須借助梯子等登高工具,采用便攜式電腦作為維護終端也需要登高才能進行通信連接。針對這一情況,一些工程技術人員和廠商提出了無接觸維護方式[3-5],采用專用PDA手持終端實現FTU的無線人機交互,在FTU操作箱附近對其進行自檢、設置/修改其配置信息,大大改善了FTU維護的方便性。也有一些學者使用PDA實現了便攜式信息管理,豐富了PDA功能的實現思路和實現技術[6-7]。隨著智能手機的廣泛應用,在手機上開發APP小程序實現PDA的功能已十分常見[8-10],從另一側面也說明本項目設計具有技術可行性。考慮到配電線路操作的敏感性,手機APP就可以對配電開關進行分合操作,這種情況必須加以嚴格限制,防止造成不必要的停電事故。借鑒手機電子商務通過實時獲取驗證碼的方式[8,11]對手機進行綁定,在管理中心許可后,手機APP方可對FTU進行控制操作,從而實現智能手機人機交互功能的安全管理,既方便了FTU的現場無線維護,又不失手機APP實現MMI的安全性。這里就項目的設計與實現技術進行簡單介紹。
藍牙技術[12]是一種目前廣泛使用的短距離無線通信技術,使用藍牙技術可以將智能手機、PDA手持終端、筆記本電腦等便于攜帶的智能設備與計算機設備實現無線通信連接。藍牙技術基于RF技術實現,支持半徑為10 m的無線通信距離,通信連接具有簡潔、快速、方便等特點,因此非常受使用者歡迎。FTU饋線終端俗稱柱上控制器,大多安裝在配電網線路的電線桿上,是配電網自動化系統的核心組件之一[4]。為了方便柱上FTU現場檢修和維護,本項目采用了智能手機+APP工具的解決方案[10],為此需要在FTU主板上擴展藍牙模塊,以便提供本解決方案的物理通信鏈路支撐。
為了實現FTU與智能手機之間的藍牙通信連接,這里選用了廣州匯承公司出品的HC-05型藍牙模塊[13-14]擴展FTU的無線通信接口。該模塊基于藍牙2.0規范,具有-40~70 ℃寬溫范圍,滿足FTU現場使用的條件。使用FTU現有的異步串口,通過AT指令即可實現FTU與外部計算機的無線串口通信。
為了將HC-05模塊安裝在FTU主板上,這里采用了硬件模板升級的方式,更改原有的電路原理圖,擴展本功能。HC-05藍牙模塊接入FTU中MCU的電路如圖1所示。

圖1 藍牙模塊接入FTU的電路設計
根據HC-05技術手冊[13],圖中串口通信線(BT_RXD和BT_TXD)接在MCU的UART1接口,模塊的控制線(BT_RST、BT_KEY和BT_LED)與MCU的GPIO引腳相連,從而實現MCU對該模塊的管理和通信功能。
為了實現藍牙模塊的透傳功能,需要使用HC-05模塊中的4個AT指令:通信測試、修改名稱、修改波特率、修改配對密碼[14]。為了實現對藍牙模塊的維護管理,設置FTU中的藍牙模塊工作在自動連接工作模式,并處于從工作模式。FTU中應用軟件增加了專門操作命令,實現藍牙模塊的通信參數管理。
為了實現FTU與APP的數據交換,本文采用了類Modbus協議,即遵循Modbus協議中RTU幀的格式規范,擴展功能碼,制定私密通信幀,防止無關人員編寫的手機APP與FTU進行報文通信。此外,為了防止明文報文被偷聽,這里對Modbus協議幀中的數據域進行了簡單加密,即發送端對數據域做加0x33h處理,接收端做減0x33h處理,防止非專門技術人員進行報文監聽。
針對人機交互的功能需求,擴展了讀開關量狀態、讀模擬量采集碼、發控制輸出命令、設置定值等功能碼和幀格式,并在FTU應用軟件中擴展實現了這些通信業務,配合手機APP實現人機交互功能。
為了使用智能手機實現FTU的人機交互界面,所設計的APP小程序必須具有如下功能:與管理中心服務器的GSM通信,使用動態口令進行身份驗證;FTU的人機交互界面;與FTU的人機交互通信,如圖2所示。

圖2 智能手機APP工具的功能
圖2中,FTU通過功能擴展已實現了藍牙通信鏈路,并具有MMI通信業務的功能,手機APP采用擴展的類Modbus協議與之通信,實現MMI界面實時更新功能;智能手機采用4G網絡通信,與管理中心服務器進行加密通信,獲取驗證碼,得到操作授權,而后手機進入MMI界面,進行相應的人機交互工作;管理中心服務器具有用戶名、手機號綁定功能,自動發送并檢測驗證碼,向手機APP發送操作授權;手機APP獲得操作授權之后,如果10分鐘內不再進行MMI操作,則自動取消授權,如需繼續操作,要重新獲得管理中心授權。
手機APP選用了基于 Android 平臺的開發技術,使用 Eclipse 作為開發工具,設計并實現上述功能。
由于FTU能控制配網分段開關分合,其Flash中存儲的保護定值也是非常關鍵的參數,對FTU的現場維護需要在授權下謹慎為之。而智能手機是廣泛使用的移動設備,使用其作為FTU的維護終端必須要有嚴格的安全措施。為了達到這一目標,這里借鑒手機電子商務中動態身份驗證的方法,對智能手機的身份進行驗證,確保萬無一失。
動態口令驗證技術有多種類型,這里使用了挑戰/應答方式(Challenge/Response)的身份驗證技術,認證服務通過手機短信方式實現,在企業信息管理系統中進行身份驗證,這種方法具有技術簡單、保密性強等特點[15]。

圖3 挑戰/請求方式的認證過程
其驗證過程如圖3所示。圖中,U為User,即用戶名;IP在手機驗證時不使用;Umpn即User mobile phone number,手機號;R為驗證碼,T為TEA加密算法,Code為靜態口令。APP啟動過程中,用戶必須首先完成登錄,才能進入MMI交互界面。
管理中心服務器采用GPRS+SIM模塊方式實現手機短信通信,服務器軟件負責用戶名和手機號綁定,并通過動態驗證碼進行身份驗證。手機APP和服務器軟件采用現有常用的TEA算法(Tiny Encryption Algorithm)實現短信內容加密[15],確保身份驗證過程中的安全性。手機MMI界面如果10分鐘內無有效操作,APP將自動退出登錄狀態。
人機交互界面使用xml布局文件設計,包括操作菜單、主信息顯示、運行狀態/告警指示三個區域,以用戶喜聞樂見的界面展示MMI的輸出畫面。
手機APP采用藍牙方式與FTU通信。通信之前,先使用手機的“設定”功能,實現FTU藍牙設備的掃描和配對,配對成功之后方可使用手機的這一功能。
手機APP啟動時,根據用戶選擇,使用指定的藍牙配對與FTU進行P2P通信。為了實現底層類Modbus協議通信,這里使用了藍牙Socket通信編程技術,并使用子線程和輸入/輸出流(InputStream/OutputStream)在底層實現報文交互。為了從所接收字節流中識別Modbus報文幀,線程按照Modbus幀格式中的ID、FUNC、LEN、BODY、CRC等字段構建上下文相關的狀態機,自動搜索報文,防止ID與報文字節值相同而發生幀失步的情況。子線程自動檢測請求幀和響應幀之間的時間差,判斷通信流程是否超時,并進行通信自愈和告警。收到完整報文、CRC校驗正確之后將報文幀轉交主線程解幀處理。報文發送則相對簡單,計算報文長度之后,調用write和flush成員函數發出信息。主線程根據解幀的結果,刷新實時顯示的界面或告知控制操作、定值修改的結果。
在完成FTU藍牙功能擴展和智能手機MMI應用軟件設計開發之后,在實驗室和工程現場對所設計的項目進行了驗證測試,測試結果表明,FTU的升級工程中手機MMI子項目各項功能都能正常運行,滿足用戶技術規范書的要求。
