亢紅波,許宏科
(1.長安大學 電子與控制工程學院,西安710064;2.西安郵電大學)
亢紅波(講師),研究方向為智能測控。
引 言
物聯網已逐漸走進智能電網的時代,傳統的電表(包括電子式電表)已遠遠落后于發展需求,智能電表將成為一個不可或缺的重要環節。目前市場流行多種傳輸方式的遠程抄表系統,如現場總線方式[1]、專用光纖網絡方式、電話交換網絡方式[2]、Internet方式[3]、無線數傳電臺方式、GPRS方式[4-7],這些方式在成本、功耗等方面各有其優缺點[8]。
本文設計的基于物聯網的智能電表采集系統,遵循DL/T645-2007《多功能電能表通信協議》、GB/T19582-2008《基于Modbus協議的工業自動化網絡規范》等規范標準,采用超低功耗控制設計思想,通過Modbus總線網絡與互聯網絡的本地融合,實現雙流向、遠距離、全自動、高可靠的智能儀表數據采集,豐富了智能電表系統的內涵。
基于物聯網的智能電表采集系統結構如圖1 所示。采集系統包括:智能儀表節點、數據采集終端設備、監控上位機。智能儀表節點包括遵循各類規范標準的智能儀表,完成命令接收(要數命令、配置命令),以及數據上傳(數據信息、本地信息)等功能,可選用標準工業化設備;數據采集終端設備是整個網絡的核心,實現儀表數據采集、數據處理、協議轉換、TCP/IP網絡協議封裝打包及數據上傳、遠程命令下發、本地存儲調試等功能;監控上位機完成數據的歸檔、融合、顯示、查詢,必要時輔以專家系統,以實現相應的控制動作,系統也包含了相應的用戶安全設計。
系統硬件設計以功耗、可靠性為基本評價標準,同時還需兼顧現場的供電、維護等條件,主要包括:
①低功耗設計:采用低功耗主控器與外圍功能元件;

圖1 系統結構圖
②多方案供電設計:除外部電源適配器供電外,還配備了后備電池(關鍵單元配專用電池);
③易維護性設計:預留本地調試接口,可進行現場維護,還可通過遠程網絡授權維護;
④抗干擾及穩定性設計:選用抗電磁干擾設計器件,電路合理分區布局,電源的濾波與抗噪,合理利用看門狗,系統環境溫濕度監測與處理等。
數據采集終端設備的組成框圖如圖2所示。

圖2 數據采集終端設備組成框圖
硬件采用模塊化的電路設計,包括微控制器最小系統模塊、網絡模塊、RS485總線傳輸模塊、數據存儲模塊、系統調試模塊、電源管理模塊、RTC電路模塊等部分。
2.2.1 微控制器最小系統設計
系統選取飛思卡爾超低功耗微控制器KL46為主控芯片,其有3個UART、2個SPI和2個I2C接口,并集成了高速模擬比較器和功能強大的定時器,完全滿足本系統設計要求。KL46最小系統包括了復位電路、晶振電路、JTAG接口電路。微控制器最小系統原理圖略——編者注。
2.2.2 網絡模塊設計
網絡模塊以ENC28J60為主芯片,與MCU 通過SPI接口進行通信,輸入/輸出信號有:RST 復位信號、INT 中斷信號、WOL 喚醒信號及CLKOUT 時鐘輸出信號,如圖3所示。
圖中R13~R20 均為上拉電阻,對主控制器KL46到芯片ENC28J60之間的信號做上拉處理,避免高阻態的出現;C12為1μF 的極性電容,作為電源的濾波;而TPOUT+、TPOUT-以及TPIN+、TPIN-則為網絡傳輸的差分信號線,這4根跳線將接入到網絡變壓器進行電壓轉換后,再傳輸。
網絡接口選用HR911105A 的RJ45接口,其內部含有網絡信號的電壓保護及轉換電路,客觀上也減少了PCB的設計負擔。
2.2.3 數據存儲模塊設計
數據存儲模塊選用超小型大容量SD 記憶卡為載體,其原理略——編者注。
2.2.4 RS485總線電路設計
RS485總線電路分為兩個RS485總線模塊部分:數據采集部分和數據上傳部分。如圖4所示,RS485傳輸芯片采用Maxim 公司生產的MAX3072,具有3.3V 的供電特性,可支持高達256個節點的通信。
2.2.5 電源管理電路設計
系統在設計時考慮到功耗及抗干擾因素,需要分別對3部分電路進行穩壓設計:核心部分(主控制器、調試端口、時鐘芯片),采集部分(RS485總線采集的芯片設備),以及網絡部分(ENC28J60 網絡芯片、數據上傳部分及SD卡)。
為了解決工業環境的電源供電問題,系統利用LM2940的5V 穩壓芯片,可以滿足6~26V 電源的DC直流輸入和備用電池充電輸入,其前級可采用AC/DC 模塊,備用電池接口具備防反接設計。電源、開關電路及3.3V穩壓電路設計略——編者注。

圖3 網絡模塊電路

圖4 RS485電路
系統軟件設計采用服務式層次化程序設計思路,針對不同的模塊,編寫相應的驅動代碼與通信協議代碼。利用ARM 內核的NVIC 對系統不同的服務進程進行任務調度,從而實現了簡單的多任務處理過程,同時通過優化程序代碼結構,系統對資源的利用率和對任務的響應速度都得到了極大的提升。
系統軟件設計采用服務式程序設計,故系統設備將以服務進程的方式運行,由以下幾部分組成。
3.1.1 初始化服務
初始化服務分為多個不同的初始化過程,并按照一定的順序進行,當完成所有初始化后,該服務將自行關閉。
①內核初始化:微控制器芯片ARM 內核初始化、RAM 空間初始化,分配堆棧區、中斷向量表等系統使用空間;
②內部驅動初始化:初始化PLL、GPIO、UART、SPI、PIT、LPTMR等;
③外部設備初始化:利用已初始化完成的芯片驅動,控制 ENC28J60、 SD 卡、MAX13432、DS3234 等 一 系 列外部器件,同時進行設備的開機自檢,保證設備正常,待后續服務使用;
④參數初始化:使用內部Flash和時鐘芯片DS3234中的RAM 進行參數存儲,以備掉電時的參數保存,當系統啟動時要對參數進行重新加載。
⑤協議初始化:芯片器件之間的通信以及網絡上的通信都需要不同的協議,根據獲取的參數初始化相應的協議功能。
3.1.2 后臺調試服務
后臺調試服務在系統初始化完成后啟動,負責指令的識別及相應的處理并返回結果,服務啟動后將駐留后臺。服務主要通過UART 接口負責通信和調試,當網絡傳輸服務開啟后將會接入該服務,利用特定的TCP、UDP端口進行網絡指令和響應的傳輸。
3.1.3 文件系統服務
文件系統服務在SD 卡初始化完成后啟用,負責SD卡等外部存儲設備的文件讀寫。利用開源的FatFs文件系統,通過已初始化好的SD 卡程序接口,對外部存儲器進行文件系統的操作和管理。服務主要以后臺等待的方式存在,只有對外部存儲設備進行操作時在前臺運行。
3.1.4 網絡傳輸服務
網絡傳輸服務以TCP/IP協議棧為主,整個協議棧存在于主控制器中。網絡傳輸服務啟動后,將接管ENC28J60以太網控制器的控制權,所有網絡數據都將由該服務處理。該服務啟動后將首先運行DHCP請求,以自動獲取IP。獲得分配的IP后,服務將在后臺等待網絡數據。
3.1.5 數據采集服務
數據采集服務為整個系統中唯一一個長期處于前臺的服務程序,僅當其他服務程序均正常啟動時運行,主要負責RS485總線上的數據收發,發送節點終端的查詢數據包。接收到數據后,首先調用文件系統服務,將數據寫入外部存儲器,然后再調用網絡傳輸服務,將數據組包發送給服務器。
系統軟件采用層次化結構的設計思想。利用層次分明的結構進行程序設計,有利于代碼的編寫、閱讀、修改。從芯片的底層驅動開始,層層往上,程序結構框圖如圖5 所示。下層結構向上層提供函數接口,上層結構利用下層提供的接口進行控制操作。

圖5 程序結構框圖
3.2.1 TCP/IP網絡協議
系統采用的TCP/IP網絡協議為獨立設計編寫,而考慮到單片機的資源利用問題,精簡了大部分無用的子協議,以最少的資源完成最大的功能。協議報文,TCP 連接,動態獲取IP過程略——編者注。
3.2.2 存儲設備驅動
系統需要利用SD卡作為外部存儲設備,再加上文件系統,以對外部存儲器進行文件管理操作。
SD卡驅動略——編者注。在外部存儲器中,存儲的均為0、1組成的二進制數據,進行操作時為了方便而需要轉換成十六進制數據,但是與在操作系統中進行的文件操作仍有很大區別。通過文件系統,用戶可以方便地對存儲器進行分區、創建文件、寫入文件、讀取文件、刪除文件等操作。
FatFs是一個開源的、專門為嵌入式系統研發的通用FAT 文件系統,全代碼由ANSI C編寫完成,具有完全分離的磁盤I/O 操作、獨立的硬件體系結構。其結構略——編者注。
移植FatFs時僅需修改ffconf.h和diskio.c文件,根據系統的需求,修改ffconf.h文件中不同的宏定義即可。
相關管理中心的上位監控機對整個系統進行管理監控,完成數據采集、命令下發、遠程配置、數據融合、能耗分析等功能。利用VC和SQLserver數據庫開發,此處不再贅述。
結 語
本文設計的基于物聯網的智能電表采集系統,實現了對現場設備電氣參數實時采集及監控,靈活地結合了當前智能電表的現場總線傳輸規范和網絡傳輸方式,實現了真正意義上的雙向數據通信,是智能電網發展的新方向,為電網安全運行提供了更可靠的支撐手段,同時,也為能耗控制提供了保證。
編者注:本文為期刊縮略版,全文見本刊網站www.mesnet.com.cn。
[1]邢應春.遠程集中抄表系統技術研究與開發應用[D].合肥:合肥工業大學,2007.
[2]孔建華.智能遠程抄表系統的設計與開發[D].南京:南京理工大學,2005.
[3]李蘭春.基于ARM 的GPRS數據采集傳輸系統[D].太原:太原理工大學,2012.
[4]ChinE Lin,Chih-Ching Li.A Real Time GPRS Surveillance System Using the Embedded System[J].Journal of Aerospace Computing,Information and Communication,2004(1):44-59.
[5]楊威.利用GPRS 網絡實現遠程監控[J].航空制造技術,2010(22):114-116.
[6]吳雙,徐琦,趙珂,等.基于GPRS技術的遠程智能抄表系統設計與研究[J].電子設計工程,2011(12):66-67.
[7]Musheng Y,Yu Z,Rong C.Study on wireless remote monitoring system based on GPRS[C]//Wireless Communications,Networking and Mobile Computing,2008.
[8]呂曉東.基于GPRS M 絡的遠程抄表系統軟件設計[D].南京:南京理工大學,2014.