低壓電力載波抄表終端遠程升級系統開發
隨著科技的發展,低壓電力載波抄表終端已廣泛應用于電力的各個行業,為電力部門節省了人力物力資源并提高了效率。另一方面,電力載波抄表終端系統卻需要大量的工程人員去現場維護。這是各相關企業和公司急需解決的問題,針對這一問題,提出了基于POP3的低壓電力載波抄表終端的遠程升級系統,該系統通過連接POP3升級服務器,下載新程序并進行Base 64解碼,最后利用ARM7的IAP功能實現程序的實時更新,解決了終端系統程序現場維護的問題,真正意義上節省了人力物力資源。該系統已應用于低壓電力載波抄表終端中,并取得了明顯的成效。
1 系統工作原理
該系統主要有GPRS連接、POP3接收郵件、Base 64解碼和IA P編程4部分組成。GPRS連接通過SIM300模塊將低壓電力載波抄表終端連接到遠程升級服務器;然后,通過POP3協議將郵件服務器上的新程序下載到低壓電力載波抄表終端上;之后,對下載的程序進行Base 64解碼,最后通過LPC2214的IAP功能將解碼后的程序寫到LPC2214的FLASH中,完成遠程升級的功能。系統框圖如圖1所示。
2 POP3協議和Base 64編碼原理
2.1 POP3協議
POP3適用于C/S結構的脫機模型,是因特網電子郵件的第一個離線協議標準,POP3允許用戶從服務器上把郵件存儲到本地主機(即自己的計算機)上,同時刪除保存在郵件服務器上的郵件,而POP3服務器則是遵循POP3協議的接收郵件服務器,用來接收電子郵件的。POP3協議有三種狀態:認可狀態、處理狀態和更新狀態。當客戶機與服務器建立聯系時,一旦客戶機提供了自己身份并成功確認,即由認可狀態轉入處理狀態,在完成相應的操作后客戶機發出Quit命令,則進入更新狀態,更新之后重返認可狀態。
2.2 Base 64編碼原理
Base 64是一種很常見的編碼規范,被設計用來將任意序列的8字節描述為一種不易被人直接識別的形式。它的作用是將二進制序列轉換為人類可讀的ASCII字符序列,常用在需用通過文本來傳輸二進制數據的協議中,如HTTP和SMTP等。
Base 64編碼規則為對于待編碼數據,以3個字節為單位,依次取6位,前兩位補0形成8位編碼,由于3×8=4×6,3個字節的輸入會編碼成4個字節的輸出。如果剩下的字符不足3個字節,則用0填充,輸出字符使用“=”,因此編碼后輸出的文本末尾可能會出現1個或2個“=”。因此,Base 64解碼過程與編碼過程正好相反。這里給出解碼的關鍵程序示例:
評論