許鐘尤
(廣西第一工業學校 廣西 南寧 530023)
我國經濟的迅猛發展,促使電力系統的迅速發展。與之配套,電力系統的經營和管理體制也必須進行相應的改革,即如何提高電能計量工作效率和質量。目前我國電能表的讀取方式主要有人工抄表方式,預付電費方式和遠程抄表方式三種。人工抄表的準確性和實時性受到限制。常用的遠程抄表方式有電力線載波、公共電話網和無線電臺抄表等。這些方式存在著成本高、施工麻煩、穩定性差等問題。本文將移動通訊技術應用于工業用電大戶電能表的遠程抄表系統上,不但實現了無線遠程抄表,而且還節省了大量抄表所需的人力物力。同時也提高了電業管理部門對用電戶的實時監管及管理效率。
隨著GSM移動通信技術的成熟,以GSM網絡為數據無線傳輸網絡具有網絡能力強的特點。用戶無需另外組網,在極大提高網絡覆蓋范圍的同時為客戶節省了昂貴的建網費用和維護費用。基于GSM移動通訊的無線遠程抄表系統原理如圖1所示。

圖1 無線遠程抄表系統原理圖
抄表系統由兩個功能部分構成:電能表監控中心的監控軟件部分和在各用電大戶安裝的抄表終端。監控軟件由串口伺服程序,監控程序和SQL數據庫組成。串口伺服程序和客戶程序采用Visual Basic 6.0編寫,通過訪問SQL數據庫實現數據的保存和查詢。串口伺服程序通過串口不停向GSM模塊發出AT指令。GSM根據AT指令進行數據的無線傳送,與抄表終端進行聯系。抄表終端采用單片機技術實現GSM模塊的控制和電能表數據的讀取。監控軟件和抄表終端之間采用短消息進行數據傳遞。
本文采用的GSM模塊是西門子公司生產的手機模塊TC35。該模塊是一個支持中文短信息的工業級GSM模塊,具有語音、數據、短消息、FAX四種傳輸方式。它工作在GSM900mHz和1800mHz頻帶范圍內。工作電源3.3-3.5V;波特率為300~115kbps,在1200~115kbps為自動波特率配置,數據傳送采用AT命令集。模塊對外提供標準的RS232接口和電源接口。模塊采用GSM07.05規定的AT指令集。該指令集是ETSI(歐洲通信技術委員會)發布的,其中包含了對收發短信進行控制的指令。本文涉及到的部分AT指令如表1所示。

表1 部分AT指令列表
監控軟件采用多程序協調工作的機制,根據需要分別編寫了串口伺服器和監控程序。兩者通過SQL數據庫進行數據交換。程序的編寫選用可視化變成語言VB6.0進行編寫,程序界面簡單明了,易于操作。
串口伺服程序是通過調用VB的控件MSComm來實現的。在程序中添加該控件方法是:在工具欄上單擊右鍵,選擇“組件”,然后選中Microsoft Comm Control 6.0選項,點擊“應用”按鈕即可添加該控件。程序中,該控件命名為commMain。程序的實現是通過調用該控件相關的屬性完成的,其屬性內容如表2所示。

表2 MSComm控件常用屬性一覽表
在具體的應用中,MSComm控件提供了兩種方式來處理信息的流動,一是事件驅動;一是查詢方式。前者是處理串行端口交互作用的一種非常有效的方法,不管是發生通訊事件或錯誤,程序都可以利用MSComm控件來偵測并處理這些通訊事件和通訊錯誤。后者通過對串口輸入緩沖區進行檢測,并在有數據來到的時候對數據進行讀取操作。在這里采用查詢方式對數據進行讀取。其中通信事件的值設置為comEvReceive,即收到Rthreshold個字符,該事件將調用Input屬性從接收緩沖區中刪除數據。
串口初始化程序如下:


數據庫是用于存儲大量數據的區域,它通常包括一個或多個表。本系統數據的顯示及存儲都依賴于數據庫技術。SQL Server 2000是Mi crosoft公司推出的關系型數據庫管理系統。它不僅支持集中化數據庫管理功能,而且還能實現分布式數據庫的管理方式,最大程度地實現了管理與優化工作的自動化。本文選用SQL Server 2000建立數據庫文件。
關于數據庫的訪問功能,在程序中是以程序模塊的形式直接調用。模塊中分別定義了各種常量,注冊表操作函數;編寫了SQL語句執行函數ExecSQL,讀聯接數據庫參數函數ReadConnectParemeters,寫注冊表函數SetStringValue等。
在監控程序中分別完成檔案管理、抄表管理、告警管理、數據報表等功能。程序的執行采用用戶觸發方式。
抄表終端安裝在用電大戶的電能表表箱中。一方面,抄表終端與電能表相連,通過485接口讀取電能表的當前數據以及狀態信息;另一方面,抄表終端與GSM模塊相連,通過232接口向GSM模塊發送AT指令,實現與監控中心的數據傳送。
抄表終端硬件結構如圖2所示。終端采用AT89C2051作為控制核心。2051一方面通過集成電路芯片MAX485與電子式電能表進行通訊,讀取電能表的計量讀數。另一方面通過集成電路芯片MAX232向GSM模塊發送AT指令,并通過GSM模塊實現與抄表中心的通訊。圖中的電阻R1與開關J1組合,實現開箱報警信號的輸入。當有非法開箱發生時,觸發單片機的外部中斷0。單片機在相應的中斷程序中向GSM模塊發送對應的AT指令,向抄表中心發送報警信息。圖中右側的信號線從上至下依次為:RXD-GSM串口通訊數據接收端;TXDGSM串口通訊數據發送端;RESETGSM-GSM復位信號線;B-電能表485通訊接口負端;A-電能表485通訊接口正端。

圖2 抄表終端硬件結構圖
系統中需要兩個串行通訊口,但是AT89C2051只有一個串行通訊電路,因此采用軟件模擬擴展一個串行通訊電路。圖中2051的兩個I/O端口(P1.6和P1.7)分別模擬串行通訊的RXD和TXD。
其中芯片MAX232完成TTL協議與RS232協議間的轉換。為了完成轉換功能,MAX232外圍需要四個取值為1μF/ 25V的電解電容和一個取值為 0.1μF的去耦電容。芯片MAX485完成TTL協議與RS485協議間的轉換。該芯片是一種差分平衡型收發器芯片。設計中,將引腳RE和DE相連后,連接在2051的P3.7引腳上。P3.7引腳控制MAX485的收發工作。另外,在MAX485的輸出引腳A和B之間應跨接一個100Ω的電阻。
系統中沒有設計上電復位電路,由看門狗芯片MAX705實現系統的復位和監控。系統正常時,2051通過P3.5引腳產生“喂狗”信號,保持MAX705的正常清零。一旦程序“跑飛”,P3.5失效,MAX705計數溢出,產生復位信號。

圖3 程序流程圖
系統的軟件流程圖如圖3所示。
初始化程序主要完成單片機內計數器的初始化,串口通訊的設置,標志位的初始化等操作。為程序的正常運行做好準備工作。
在進入程序主循環之后,首先對MAX705計數器進行清零。此后的每次循環都要進行此項工作。
在工組中GSM可能會出現掉線的情況,因此,為了確保GSM正常工作,每次循環都需要檢測GSM模塊的在線情況。一旦GSM沒有上線,就對其進行復位。并延時等待其再次上線。為了避免MAX705在延時程序期間產生復位操作,在延時程序中也對MAX705進行清零。
由于2051不具備擴展數據存儲器的功能,所以將一些程序工作需要配置的信息存儲在GSM模塊的SIM卡中。其中SIM卡電話本的第1、2、3條分別存放電能表地址、短信中心號碼和系統報警屏蔽設置。系統只在每次上電后執行系統初始化程序。
本系統的操作對象是DTSD666型三相四線電子式多功能電能表。該產品的通信協議符合DL/T645-1997《多功能表通信規約》的要求。需要注意的是在該通信規約規定的幀格式中,數據域的數據是真實值的十六進制數加33H所得到的數值,低地址在前,高地址在后。
為了保證程序的正常、安全、有效運行,這里采用查詢的方式對GSM和計量電能表進行控制。分別讀取電能表的正向有功總電能、費率1~4正向有功電能、A~C相電壓電流等17項數據。
利用protel99SE電路板繪制工具進行了電路板設計,制作5×7厘米的電路板。系統通過了試驗,并且在某電業管理部門進行了現場使用,安裝抄表終端5臺,抄表中心監控軟件一臺。通過現場試驗,數據的傳輸效率高,準確性高。通過在上位機的設置,管理員可以通過手機對各抄表終端進行抄表。抄表終端的報警信息可以方便地傳送到管理員的手機上。通過試驗,系統的性能達到了設計的要求。
[1]袁明新,張友亮,儲浩.基于VB6.0的遠程無線通訊的實現[J].微型計算機信息,2003(19),6:71-72+51.
[2]趙大成,賈海燕.手機短信收發的AT指令控制[J].信息工程大學學報,2004(5),2:90-92.
[3]王紅紅,李仁俊.遠程自動抄表系統中的通信方式[J].電力系統痛信,2003,11:47-50.
[4]樊晉予,余發山,崔立志.基于GSM模塊的無線遠程抄表系統現場控制模塊研究[J].河南理工大學學報,2006(25),2:134-139.
[5]郭金英,魯國才.DL/T 645-1997多功能表通信規約[S].中華人民共和國電力工業部,1998-02-10批準:7-13.
[6]高鵬,安濤,寇懷成.電路設計與制版Protel99入門與提高[M].人民郵電出版社,2001:4319-377.
[7]余發山.單片機原理及應用技術[M].中國礦業大學出版社,2003,12: 121-126.