基于GPRS通信的網(wǎng)絡(luò)電能表設(shè)計(jì)
隨著技術(shù)的發(fā)展,抄表方式也從現(xiàn)場(chǎng)人工抄表到遠(yuǎn)程自動(dòng)抄表轉(zhuǎn)變,目前用于抄表的技術(shù)有多種,如RS485總線、紅外和電力線載波等,這些抄表技術(shù)相對(duì)比較成熟,但應(yīng)用卻各有其局限性,如RS 485總線抄表需要布線而增加投資,且傳輸距離不能超過(guò)1200m,紅外抄表需要人工現(xiàn)場(chǎng)抄表,電力載波抄表由于電磁干擾等的影響傳輸距離受限。GPRS通信技術(shù)成熟,網(wǎng)絡(luò)覆蓋廣,可以永久在線,按流量計(jì)費(fèi),費(fèi)用低廉,且不受距離和空間的限制,使得在抄表行業(yè)的應(yīng)用非常適合。
1 GPRS網(wǎng)絡(luò)電能表
GPRS網(wǎng)絡(luò)電能表就是GPRS通信技術(shù)和電表技術(shù)的結(jié)合體,他將三相多功能電能表和GPRS通信模塊相結(jié)合,形成具有無(wú)線網(wǎng)絡(luò)通信能力的電能計(jì)量裝置。GPRS網(wǎng)絡(luò)電能表由基表和GPRS無(wú)線通信模塊兩部分組成。
1.1 基表
基表可實(shí)現(xiàn)普通三相多功能電能表的基本功能,在未接入GPRS通信模塊的情況下,不影響其作為普通多功能電能表的使用。它對(duì)交流模擬量進(jìn)行實(shí)時(shí)采樣、處理和存儲(chǔ),實(shí)現(xiàn)電能計(jì)量、需量測(cè)量、復(fù)費(fèi)率、負(fù)荷曲線計(jì)算和存儲(chǔ)、數(shù)據(jù)凍結(jié)、事件記錄、復(fù)費(fèi)率等,可實(shí)現(xiàn)用戶預(yù)購(gòu)電控制、負(fù)荷控制、遠(yuǎn)程控制等功能。具備RS 485通信接口、紅外通信接口、GPRS通信模塊接口,以實(shí)現(xiàn)數(shù)據(jù)的抄讀和設(shè)置;基表還具有本地液晶顯示,可支持本地巡顯和鍵顯功能。
1. 2 GPRS通信模塊
GPRS通信模塊是GPRS網(wǎng)絡(luò)電能表的數(shù)據(jù)上傳的關(guān)鍵節(jié)點(diǎn),作為網(wǎng)絡(luò)電能表的一個(gè)獨(dú)立模塊,在不影響基表計(jì)量的情況下,滿足用戶抄表系統(tǒng)的技術(shù)要求和傳輸規(guī)約,實(shí)現(xiàn)數(shù)據(jù)的可靠傳輸。GPRS通信模塊與基表的下行通信滿足DT/L645多功能電能表通信協(xié)議,與主站的上行通信滿足《電力用戶用電信息采集系統(tǒng)通信協(xié)議》(Q/GDW 376.1-2009)標(biāo)準(zhǔn)。
在此著重描述GPRS通信模塊的軟硬件設(shè)計(jì)。
2 GPRS通信模塊硬件結(jié)構(gòu)
2.1 系統(tǒng)框圖
GPRS無(wú)線通信模塊的系統(tǒng)框圖如圖1所示。系統(tǒng)包括:ARM微處理器(LPC2138)、GPRS模塊、FLASH和鐵電存儲(chǔ)器、紅外收發(fā)、RS 232串行調(diào)試接口、RS 485通信接口、JTAG仿真接口、LED指示及電源轉(zhuǎn)換等。
2.2 模塊功能
2.2.1 微處理器
采用基于ARM7TDMI-S內(nèi)核的32位微處理器LPC2138,其內(nèi)嵌了512 KB的高速FLASH存儲(chǔ)器和32 KB的RAM,具有豐富的外設(shè)資源,如:2個(gè)32位定時(shí)器(帶捕獲、比較通道);2個(gè)10位8路ADC;1個(gè)10位DAC;PWM通道;47路GPIO;9個(gè)邊沿或電平觸發(fā)的外部中斷;具有獨(dú)立電源和時(shí)鐘的RTC;多個(gè)串行接口(UART,I2C,SPI,SSP);內(nèi)含向量中斷控制器,可配置中斷優(yōu)先級(jí)和向量地址;片內(nèi)Boot裝載程序,可以實(shí)現(xiàn)在系統(tǒng)/在應(yīng)用編程(ISP/IAP),通過(guò)片內(nèi)PLL可實(shí)現(xiàn)60 MHz的CPU操作頻率,具有空閑和掉電2種低功耗模式,并且可通過(guò)外部中斷喚醒。
2.2.2 GPRS模塊
采用深圳有方科技出品的M580z模塊,其內(nèi)部集成了TCP/IP協(xié)議棧,具有兩個(gè)通信鏈路,一路標(biāo)準(zhǔn)TTL串行通信端口,精簡(jiǎn)的AT指令集,通過(guò)AT命令可實(shí)現(xiàn)模塊的參數(shù)設(shè)置和數(shù)據(jù)發(fā)送。M580與CPU通過(guò)一個(gè)TTL電平的串行口連接。
2.2.3 存儲(chǔ)器
由于與主站的上行通信應(yīng)滿足《電力用戶用電信息采集系統(tǒng)通信協(xié)議》,需要存儲(chǔ)規(guī)約要求的一類數(shù)據(jù)(實(shí)時(shí)數(shù)據(jù))、二類數(shù)據(jù)(曲線數(shù)據(jù)、統(tǒng)計(jì)數(shù)據(jù))和三類數(shù)據(jù)(事件),特別是曲線數(shù)據(jù)要求存儲(chǔ)的數(shù)據(jù)量大,因此采用大容量的FLASH存儲(chǔ)器來(lái)存儲(chǔ)二類和三類數(shù)據(jù)。由于鐵電存儲(chǔ)器可無(wú)限制的擦寫(xiě),所以用來(lái)存儲(chǔ)需要經(jīng)常更新的實(shí)時(shí)數(shù)據(jù)和設(shè)置參數(shù)。存儲(chǔ)器與MPU的接口為SPI接口。
2.2.4 串行接口和JTAG仿真端口
利用RS 232串行口、紅外通信口可實(shí)現(xiàn)模塊參數(shù)的本地設(shè)置和維護(hù)。其中,RS 232串口可實(shí)現(xiàn)對(duì)GPRS模塊狀態(tài)的監(jiān)測(cè),通過(guò)RS 485串行口可抄讀滿足《電力用戶用電信息采集系統(tǒng)通信協(xié)議》的數(shù)據(jù);JTAG仿真端口可對(duì)ARM處理器進(jìn)行仿真和程序燒寫(xiě)。
2.2.5 LED指示
LED指示燈用來(lái)指示模塊的電源狀態(tài)、模塊登陸狀態(tài)、網(wǎng)絡(luò)通信狀態(tài)及保電狀態(tài)等。[!--empirenews.page--]
2.2.6 三相電能表
三相電能表實(shí)現(xiàn)電能量及電壓電流等數(shù)據(jù)的采集與計(jì)算。它與MPU通過(guò)一個(gè)串行口連接,通信規(guī)約滿足DT/L645協(xié)議,模塊定時(shí)抄讀三相表數(shù)據(jù),包括電量、需量、電壓、電流等實(shí)時(shí)數(shù)據(jù),并將抄讀到的數(shù)據(jù)進(jìn)行轉(zhuǎn)換和存儲(chǔ),以滿足主站對(duì)模塊的訪問(wèn)要求。
3 軟件設(shè)計(jì)
3.1 總體架構(gòu)
軟件設(shè)計(jì)基于μC/OS-Ⅱ嵌入式操作系統(tǒng)的多任務(wù)設(shè)計(jì),整體架構(gòu)如圖2所示。
系統(tǒng)軟件包括:主任務(wù)、上行任務(wù)、下行任務(wù)、模擬串口任務(wù)、事件處理任務(wù)和控制處理任務(wù)。
3.1.1 主任務(wù)
實(shí)現(xiàn)全局變量初始化,硬件環(huán)境初始化,信號(hào)量和消息隊(duì)列的建立、其他任務(wù)的創(chuàng)建和啟動(dòng)、鍵盤掃描、系統(tǒng)時(shí)間和定時(shí)處理、復(fù)位處理等功能。
3.1.2 上行任務(wù)
上行任務(wù)實(shí)現(xiàn)GPRS通信鏈路的建立、維護(hù)及與主站的數(shù)據(jù)交換,包括鏈路維護(hù)、數(shù)據(jù)收發(fā)、協(xié)議解析等功能。
3.1.3 下行任務(wù)
實(shí)現(xiàn)對(duì)基表數(shù)據(jù)定時(shí)抄讀、數(shù)據(jù)處理、數(shù)據(jù)存儲(chǔ)、數(shù)據(jù)的轉(zhuǎn)發(fā)等功能。
3.1.4 模擬串口管理任務(wù)
由于系統(tǒng)必須實(shí)現(xiàn)上行通信端口、下行通信端口、RS 485通信端口、RS 232通信端口和紅外通信端口5個(gè)串行通信口,而LPC2138內(nèi)部只有兩個(gè)串行口,所以必須對(duì)串口進(jìn)行擴(kuò)展。在此,用軟件來(lái)模擬串口通信,以實(shí)現(xiàn)串口擴(kuò)展。建立一個(gè)模擬串口管理任務(wù),專門管理下行抄表模擬串口、紅外通信模擬串口和調(diào)試模擬串口。
3.1.5 事件處理任務(wù)
事件處理任務(wù)處理系統(tǒng)發(fā)生的各類事件,包括事件記錄、事件上報(bào)等。
3.1.6 控制任務(wù)
控制任務(wù)執(zhí)行一些控制操作,包括預(yù)購(gòu)電控制、保電控制、告警控制等。
3.1.7 任務(wù)間的通信
任務(wù)與任務(wù)之間數(shù)據(jù)傳遞通過(guò)消息發(fā)送和接收來(lái)實(shí)現(xiàn),消息結(jié)構(gòu)為:
消息傳遞函數(shù)定義為:
3.2 軟件模塊實(shí)現(xiàn)流程
軟件采用模塊化設(shè)計(jì),每個(gè)任務(wù)包含不同的功能模塊,由于系統(tǒng)包含模塊較多,在此只給出主任務(wù)模塊流程圖及上行任務(wù)中的GPRS鏈路維護(hù)模塊流程圖。[!--empirenews.page--]
3.2.1 主任務(wù)流程
主任務(wù)程序流程如圖3所示。
3.2.2 GPRS鏈路維護(hù)流程
上行任務(wù)中的鏈路維護(hù)模塊包括:GPRS網(wǎng)絡(luò)登陸、鏈路狀態(tài)檢測(cè)以及心跳維護(hù)等。其中,GPRS網(wǎng)絡(luò)登陸程序流程如圖4所示。在GPRS通信鏈路建立后,如果長(zhǎng)時(shí)間無(wú)數(shù)據(jù)傳輸,則GPRS網(wǎng)絡(luò)連接將被斷開(kāi),所以必須在一定時(shí)間間隔內(nèi)發(fā)一個(gè)心跳幀至主站,確認(rèn)主站應(yīng)答后說(shuō)明鏈路狀態(tài)正常。不同品牌GPRS模塊的AT指令集不同,因此在編程前須熟悉相關(guān)GPRS模塊的指令集,以實(shí)現(xiàn)鏈路的建立和維護(hù)。
4 結(jié)語(yǔ)
介紹了GPRS網(wǎng)絡(luò)電能表的功能和GPRS無(wú)線通信模塊的軟硬件設(shè)計(jì),它是對(duì)GPRS網(wǎng)絡(luò)電能表開(kāi)發(fā)項(xiàng)目的總結(jié)。系統(tǒng)軟件移植了μC/OS-Ⅱ嵌入式操作系統(tǒng),采用多任務(wù)設(shè)計(jì),提高了系統(tǒng)的實(shí)時(shí)性,對(duì)實(shí)現(xiàn)遠(yuǎn)程無(wú)線抄表具有積極意義,設(shè)計(jì)的產(chǎn)品已在國(guó)家電網(wǎng)公司成功應(yīng)用,且運(yùn)行穩(wěn)定,應(yīng)用效果良好。