黃世遠(yuǎn) 楊如輝 郭謀發(fā) 楊耿杰 高 偉
(1.福州大學(xué)電氣工程與自動化學(xué)院,福州 350002;2.福建省漳浦縣供電有限公司,福建 漳浦 363200)
配電自動化系統(tǒng)是對配電網(wǎng)上的設(shè)備進(jìn)行遠(yuǎn)方實時監(jiān)視、協(xié)調(diào)和控制的一個集成系統(tǒng)。配電自動化要借助可靠的通信手段,將配電現(xiàn)場終端設(shè)備所采集的各種信息上傳至監(jiān)測中心,同時將監(jiān)測中心的數(shù)據(jù)下發(fā)到現(xiàn)場終端設(shè)備,但由于通信規(guī)約互不兼容,彼此間無法互聯(lián),阻礙了通信的順利進(jìn)行。規(guī)約轉(zhuǎn)換器是實現(xiàn)通信規(guī)約互聯(lián)的關(guān)鍵,其核心技術(shù)就是規(guī)約轉(zhuǎn)換的實現(xiàn)[1-3]。
所設(shè)計的配電網(wǎng)通信規(guī)約轉(zhuǎn)換器可應(yīng)用于小區(qū)集中抄表、大用戶抄表、線路狀態(tài)監(jiān)測等各種配電自動化系統(tǒng),作為接口設(shè)備提供多種物理通道用于數(shù)據(jù)傳輸,如通過ZigBee無線網(wǎng)絡(luò)[4-6]或RS-485接口接收現(xiàn)場終端設(shè)備采集上傳的數(shù)據(jù),對數(shù)據(jù)解析判斷后,按照《Q/GDW 130-2005電力負(fù)荷管理系統(tǒng)數(shù)據(jù)傳輸規(guī)約》[7-8](簡稱負(fù)控規(guī)約)通過GPRS網(wǎng)絡(luò)與主站進(jìn)行數(shù)據(jù)交換[9-11],實現(xiàn)不同通信規(guī)約間的互換。
通信規(guī)約轉(zhuǎn)換器是基于 RCM 5700模塊的嵌入式系統(tǒng),硬件結(jié)構(gòu)如圖1,分為系統(tǒng)和接口兩部分。系統(tǒng)部分為核心部件,采用 RCM 5700模塊,內(nèi)含CPU、存儲器和復(fù)位等電路。接口部分實現(xiàn)規(guī)約轉(zhuǎn)換器的專門功能,根據(jù)應(yīng)用場合特點進(jìn)行專門設(shè)計。
圖1 硬件結(jié)構(gòu)框圖
圖1中,128K SRAM、1M Flash和4M Serial Flash均為RCM 5700模塊板載存儲器,分別為程序運行主內(nèi)存、程序存儲器和數(shù)據(jù)存儲器;MAXIM 485E芯片實現(xiàn) TTL電平的 UART到 RS-485接口的轉(zhuǎn)換;SP3232實現(xiàn)TTL電平的UART到RS-232接口的轉(zhuǎn)換,作為調(diào)試接口,為增加可用的RS-485接口,調(diào)試成功后即轉(zhuǎn)為RS-485接口,復(fù)用串口A;ME3000 GPRS為GPRS模塊;XBee RF模塊為ZigBee模塊;撥碼開關(guān)控制RS-485接口功能的開啟或關(guān)閉;串口狀態(tài)指示燈指示處于工作狀態(tài)的RS-485接口。
系統(tǒng)部分是規(guī)約轉(zhuǎn)換器的核心硬件,主要包括CPU、存儲器、復(fù)位等電路。以下主要介紹CPU和存儲器的選擇與設(shè)計。
(1)中央處理器
配電網(wǎng)通信規(guī)約轉(zhuǎn)換器要求 CPU能處理大量數(shù)據(jù),具有較多串口、較高工作穩(wěn)定性和較強(qiáng)的抗干擾能力。
RCM 5700模塊采用Rabbit5000微處理器,工作頻率可達(dá)50MHz,6個高速CMOS兼容串口均可配置為異步串口,時鐘擴(kuò)展頻譜可減少EM I,且內(nèi)置存儲芯片、時鐘芯片等,適合于規(guī)約轉(zhuǎn)換器這種多串口多任務(wù)的嵌入式系統(tǒng)。此外,模塊生產(chǎn)商為用戶提供了廣泛的驅(qū)動函數(shù)庫和例程、免費的TCP/IP源代碼,專用的編程開發(fā)系統(tǒng)Dynam ic C也已移植好μC/OS-II,相比單片機(jī)、ARM等易于開發(fā)和實施嵌入式系統(tǒng)?;谝陨蟽?yōu)點,采用 RCM 5700作為主控制器。
(2)存儲系統(tǒng)
RCM 5700模塊已內(nèi)置存儲芯片,在滿足性能要求條件下,優(yōu)先考慮使用這些存儲器。RCM 5700模塊的存儲系統(tǒng)硬件包括3部分:Rabbit 5000微處理器內(nèi)置的128KB SRAM、RCM 5700模塊板載的1MB Flash S29AL008D和4MB Serial Flash AT45DB041B。
通常程序的運行空間采用RAM,由于在規(guī)約轉(zhuǎn)換過程中涉及到大量的數(shù)據(jù)處理,且考慮到以后新規(guī)約的加入,RAM容量應(yīng)盡量大,Rabbit 5000微處理器內(nèi)置的 SRAM容量達(dá)128KB可滿足要求;程序存儲器通常采用 Flash,RCM 5700模塊板載的1MB Flash S29AL008D也足以滿足要求;數(shù)據(jù)存儲器存儲內(nèi)容包括:歷史故障信息、全部通信規(guī)約和通信接口的設(shè)置參數(shù),這些設(shè)置參數(shù)控制系統(tǒng)的運行,系統(tǒng)啟動時,加載到 RAM 中進(jìn)行參數(shù)配置,參數(shù)更新時保存其最新狀態(tài)到 Flash中,并在系統(tǒng)啟動時再次載入到 RAM。存儲的數(shù)據(jù)量較大,RCM 5700模塊板載的Serial Flash AT45DB041B容量達(dá)4MB,滿足存儲要求。
規(guī)約轉(zhuǎn)換器的接口電路包括RS-232/485接口、GPRS模塊、ZigBee模塊等。
(1)GPRS模塊接口電路
GPRS通信模塊使用中興公司的ME3000,模塊通過UART與RCM 5700模塊接口,通信波特率為115200 bps,電路如圖2所示。CARD_RST、CARD_DAT、CARD_CLK、V_CARD是GPRS模塊與SIM卡的接口線;/RESET是模塊復(fù)位引腳,低電平有效,低脈沖持續(xù)時間超過20ms時模塊正常復(fù)位;/RTS、/DTR為模塊的UART控制信號,因設(shè)計中直接使用TXE和RXE與RCM 5700模塊通信,故將/RTS和/DTR直接拉低;ON/OFF為模塊的上/下電控制引腳,低電平有效,低脈沖持續(xù)時間超過1.5s時模塊開啟,低脈沖持續(xù)時間超過2s時模塊關(guān)閉。
圖2 GPRS模塊與RCM 5700模塊接口電路
GPRS模塊的外圍電路包括模塊供電與SIM卡。需注意的是,GPRS模塊在工作時需較大電流,如ME3000瞬時最大電流達(dá)1.5A以上并要求電壓基本恒定(3.7V),而供電電流不足常是導(dǎo)致GPRS模塊工作不穩(wěn)定的主要原因之一,因此設(shè)計時最好應(yīng)使用專用供電芯片,如 M IC29302等,保證供電質(zhì)量可靠。
(2)ZigBee無線接口電路
ZigBee通信模塊采用Digi公司的XBee RF模塊,模塊具有性價比高、功耗低、接收器靈敏度高等特點。模塊分成XBee和XBee PRO兩種,XBee模塊一般作為網(wǎng)絡(luò)中的終端通信模塊,XBee PRO作為路由通信模塊或者協(xié)調(diào)者通信模塊。規(guī)約轉(zhuǎn)換器采用XBee PRO模塊,配置為網(wǎng)絡(luò)協(xié)調(diào)者,負(fù)責(zé)網(wǎng)絡(luò)的建立與維護(hù)。ZigBee模塊通過 UART與RCM 5700模塊接口,電路如圖3所示。
圖3 ZigBee模塊與RCM 5700模塊接口電路
規(guī)約轉(zhuǎn)換器作為接口設(shè)備,也承擔(dān)數(shù)據(jù)匯總的任務(wù),需從眾多的終端ZigBee模塊接收數(shù)據(jù)包,設(shè)計采用API操作模式,配合多對一路由方式,可有效提高ZigBee網(wǎng)絡(luò)的路由效率,保證ZigBee網(wǎng)絡(luò)暢通。
XBee PRO模塊作為網(wǎng)絡(luò)協(xié)調(diào)者,使用前需對網(wǎng)絡(luò)地址(PAN ID)、掃描信道(Scan Channel)、目的地址、串口通信參數(shù)、睡眠模式、網(wǎng)絡(luò)安全和I/O口等進(jìn)行合理設(shè)置,保證模塊運行可靠。
(3)RS-485接口電路
規(guī)約轉(zhuǎn)換器設(shè)計了四路RS-485接口,其中串口A可復(fù)用為RS-232接口,作為調(diào)試口,調(diào)試成功后便可切換回 RS-485接口。由MAXIM 485E轉(zhuǎn)換芯片實現(xiàn)TTL電平UART到RS-485的轉(zhuǎn)換,因四路電路相同,文中僅列舉一路,如圖 4所示。UART擴(kuò)展RS-485包括接收、發(fā)送、流向控制3根線,光耦OP1、OP2、OP3使RS-485總線通信驅(qū)動電路與儀表內(nèi)部工作電路隔離,保證儀表內(nèi)部工作不受通信總線上噪聲信號的干擾,提高通信可靠性。通信波特率可達(dá)115200 bps以上。
圖4 RS-485接口電路
通信規(guī)約轉(zhuǎn)換器完成的功能較為復(fù)雜,包括數(shù)據(jù)采集、存儲、規(guī)約轉(zhuǎn)換和傳輸,單任務(wù)系統(tǒng)難以滿足功能要求,需采用嵌入式實時操作系統(tǒng)。常見的嵌入式操作系統(tǒng)有 uLinux、windowsCE、μC/OS-Ⅱ等[12-14]。
μC/OS-Ⅱ是針對嵌入式系統(tǒng)設(shè)計的實時操作系統(tǒng),具有搶占式實時內(nèi)核,采用用戶自定優(yōu)先級方式管理任務(wù),最多可管理64個任務(wù),任務(wù)間的調(diào)度、切換速度快,實時性高,且編譯軟件Dynam ic C已移植好μC/OS-Ⅱ,開發(fā)中無需移植,減少了軟件設(shè)計的工作量,基于以上優(yōu)點,采用μC/OS-Ⅱ嵌入式實時操作系統(tǒng),設(shè)計多任務(wù)并行執(zhí)行的軟件。
基于μC/OS-Ⅱ的應(yīng)用設(shè)計,首先按照接口功能劃分任務(wù),并根據(jù)任務(wù)的實時性要求分配任務(wù)優(yōu)先級,數(shù)字越小,優(yōu)先級越高,此外還需按照各個任務(wù)所處理數(shù)據(jù)量的大小,給每個任務(wù)分配大小合適的棧空間。
經(jīng)分析,通信規(guī)約轉(zhuǎn)換器的主要任務(wù)可分為ZigBee通信任務(wù)、RS-485通信任務(wù)、GPRS通信任務(wù)和負(fù)控規(guī)約解析任務(wù),實現(xiàn)DL/T 645抄表規(guī)約[15]和自定義配電網(wǎng)規(guī)約與負(fù)控規(guī)約的相互轉(zhuǎn)換。負(fù)控規(guī)約解析任務(wù)作為核心任務(wù),實現(xiàn)對各個通道數(shù)據(jù)的解析、轉(zhuǎn)換,要求實時性最高,故優(yōu)先級設(shè)為最高;其余通信任務(wù)按照實時性要求,設(shè)置GPRS通信任務(wù)優(yōu)先級第二高,ZigBee通信任務(wù)優(yōu)先級次于GPRS通信任務(wù),RS-485通信任務(wù)優(yōu)先級最低。創(chuàng)建任務(wù)的函數(shù)段如下:
OSTaskCreate(TaskFukong,(void*)0,TASKFukong_STK_SIZE,12);//創(chuàng)建負(fù)控規(guī)約解析任務(wù),優(yōu)先級12
OSTaskCreate(TaskGPRS,(void*)0,TASKGPRS_STK_SIZE,13);//創(chuàng)建GPRS通信任務(wù),優(yōu)先級13
OSTaskCreate(TaskZigBee,(void*)0,TASKZigBee_STK_SIZE,14); //創(chuàng)建ZigBee通信任務(wù),優(yōu)先級14
OSTaskCreate(Task485,(void*)0,TASK485_STK_SIZE,15);//創(chuàng)建RS-485通信任務(wù),優(yōu)先級15
任務(wù)間相對獨立但可通過全局變量、信號量、郵箱等機(jī)制通信。各個任務(wù)分別編寫,能夠提高軟件開發(fā)效率,有助于軟件的升級維護(hù)。軟件升級可根據(jù)不同應(yīng)用場合所需規(guī)約的特點,修改接口功能,并編寫相應(yīng)任務(wù),擴(kuò)展設(shè)計產(chǎn)品的應(yīng)用范圍。設(shè)計的程序流程結(jié)構(gòu)如圖5所示。
圖5 應(yīng)用程序結(jié)構(gòu)
任務(wù)操作對象為緩沖區(qū),緩沖區(qū)開辟在系統(tǒng)RAM中,可分為一級緩沖區(qū)和二級緩沖區(qū),每個緩沖區(qū)均包括接收和發(fā)送兩個子緩沖區(qū),圖5中顯示的均為二級緩沖區(qū)。一級緩沖區(qū)是用戶為使用Dynam ic C提供的讀寫串口的庫函數(shù),依據(jù)需求為各個串口開辟一定容量的輸入輸出緩沖區(qū)。圖5各任務(wù)中的數(shù)據(jù)接收、數(shù)據(jù)發(fā)送模塊,便是調(diào)用串口讀寫庫函數(shù),對相應(yīng)的一級緩沖區(qū)進(jìn)行讀寫操作。緩沖區(qū)被多個任務(wù)操作時,可通過信號量進(jìn)行同步,或通過緩沖區(qū)自身結(jié)構(gòu)的設(shè)計避免同步問題。此外需注意 Dynam ic C中默認(rèn)的 μC/OS-Ⅱ時鐘節(jié)拍為64Hz,為方便計算時鐘周期,將其設(shè)為50Hz,即一個時鐘周期為20ms。下面主要介紹各任務(wù)的設(shè)計與規(guī)約轉(zhuǎn)換的實現(xiàn)。
(1)ZigBee通信任務(wù)
串口F提供ZigBee通道,采用ZigBee協(xié)議實現(xiàn)監(jiān)控數(shù)據(jù)無線傳輸。
1)ZigBee網(wǎng)絡(luò)通信規(guī)約
ZigBee采用API操作模式,API包結(jié)構(gòu)如表1所示。數(shù)據(jù)幀結(jié)構(gòu)由幀類型決定,當(dāng)幀類型為ZigBee數(shù)據(jù)傳輸請求時,數(shù)據(jù)幀結(jié)構(gòu)如表2所示。ZigBee網(wǎng)絡(luò)中的每個設(shè)備都有一個16位網(wǎng)絡(luò)地址和一個64位地址。64位地址是模塊在生產(chǎn)期間分配的唯一設(shè)備地址,可直接獲取。16位網(wǎng)絡(luò)地址是模塊在加入網(wǎng)絡(luò)后獲得的,除網(wǎng)絡(luò)協(xié)調(diào)者的地址為固定的0x0000,其余模塊(包括路由模塊和終端模塊)地址均是任意的,且在某些情況下還是可變的,故16位網(wǎng)絡(luò)地址不可預(yù)知,傳輸時通常設(shè)16位目標(biāo)地址為0xFFFE,表示16位目標(biāo)網(wǎng)絡(luò)地址未知,需搜索16位網(wǎng)絡(luò)地址。
表1 API包結(jié)構(gòu)
表2 數(shù)據(jù)幀格式
數(shù)據(jù)域存放要發(fā)送給目標(biāo)節(jié)點的數(shù)據(jù),數(shù)據(jù)格式可由用戶依實際需要制定。設(shè)計的用戶數(shù)據(jù)域數(shù)據(jù)格式采用自定義配電網(wǎng)規(guī)約,格式為一字節(jié)功能碼+可變字節(jié)的數(shù)據(jù),數(shù)據(jù)由功能碼和傳輸方向共同決定。
2)ZigBee通信任務(wù)的執(zhí)行
按照任務(wù)設(shè)計思路,將圖5中所有ZigBee操作模塊封裝為一個任務(wù),即任務(wù)包含接收、發(fā)送及解析三部分,任務(wù)采用查詢方式無限循環(huán)執(zhí)行,接收到一個有效幀后,依據(jù)自定義規(guī)約解析出用戶數(shù)據(jù)域數(shù)據(jù),對需要上傳的數(shù)據(jù),打包后放入ZigBee數(shù)據(jù)接收緩沖區(qū),并將相應(yīng)接收緩沖區(qū)標(biāo)志位置位,等待負(fù)控規(guī)約解析任務(wù)對其進(jìn)行處理(轉(zhuǎn)換成負(fù)控規(guī)約結(jié)構(gòu)幀);當(dāng)發(fā)現(xiàn)ZigBee數(shù)據(jù)發(fā)送緩沖區(qū)有數(shù)據(jù)時,則將其打包發(fā)送。
(2)RS-485通信任務(wù)
串口A~串口D均提供RS-485接口,依據(jù)DL/T 645規(guī)約實現(xiàn)抄表功能。
1)DL/T 645規(guī)約
DL/T 645規(guī)約是用于多功能電能表的數(shù)據(jù)采集規(guī)約,定義了3層結(jié)構(gòu),分為物理層、鏈路層和應(yīng)用層。
物理層提供3種接口:接觸式光學(xué)接口、調(diào)制型紅外接口和RS-485接口。其中RS-485接口通信速率較高,可達(dá)100kbps。
鏈路層規(guī)定通信幀格式。包括幀結(jié)構(gòu)、字節(jié)結(jié)構(gòu)、傳送順序、傳送間隔。幀格式如表3所示。
表3 DL/T 645規(guī)約幀格式
應(yīng)用層定義通信雙方行為的集合,控制碼C表示具體通信行為,決定了長度L及數(shù)據(jù)域DATA。
2)RS-485通信任務(wù)的執(zhí)行
如圖5所示,將所有RS-485操作模塊封裝為一個任務(wù)。撥碼開關(guān)控制4個RS-485接口的開啟,并將開啟串口的對應(yīng)標(biāo)志位置位。任務(wù)無限循環(huán)執(zhí)行,每次執(zhí)行均先查詢各串口標(biāo)志位,確定開啟的串口,任務(wù)依次對開啟的串口進(jìn)行操作,且只操作開啟的串口。抄表過程為問答方式,即轉(zhuǎn)換器提出數(shù)據(jù)請求,電能表響應(yīng)數(shù)據(jù)。每個開啟串口的處理流程均相同,一次處理流程為:發(fā)送詢問幀、等待應(yīng)答、按 DL/T 645規(guī)約解析數(shù)據(jù)并將需要上傳數(shù)據(jù)置入RS-485數(shù)據(jù)接收緩沖區(qū)、將相應(yīng)接收緩沖區(qū)標(biāo)志位置位等待負(fù)控規(guī)約解析任務(wù)對其進(jìn)行處理。
(3)GPRS通信任務(wù)
1)GPRS通信設(shè)計
ME3000模塊提供AT指令接口,可方便ME3000模塊與RCM 5700模塊進(jìn)行通信。所提供AT指令集不僅涵蓋了標(biāo)準(zhǔn)的GSM語音和短信應(yīng)用,還包含為方便用戶使用而提供的 ZTE 專有指令。
通信規(guī)約轉(zhuǎn)換器對GPRS模塊的操作可分為兩部分,一是實現(xiàn)GPRS基本通信所用到的操作,包括上/下電控制、復(fù)位、打開GPRS數(shù)據(jù)連接,建立TCP服務(wù)器鏈接、數(shù)據(jù)收發(fā)等;二是為保證 GPRS通信可靠所采取的必要狀態(tài)監(jiān)測,包括信號強(qiáng)度查詢、SIM卡狀態(tài)查詢、網(wǎng)絡(luò)注冊查詢、當(dāng)前TCP連接狀態(tài)查詢等。
因 GPRS模塊上電后需較長時間保證網(wǎng)絡(luò)注冊、準(zhǔn)備好接收指令,故不應(yīng)通信失敗就重啟GPRS模塊。依據(jù)狀態(tài)監(jiān)測結(jié)果,采用合理的操作及合適的操作節(jié)奏可較快排除GPRS通信故障,保證GPRS通信可靠。如發(fā)現(xiàn)連接TCP服務(wù)器失敗后,不應(yīng)立即重啟GPRS模塊,應(yīng)延時一段時間后再嘗試連接TCP服務(wù)器,若連續(xù)3次連接TCP服務(wù)器均失敗,則返回到上級操作,即 GPRS數(shù)據(jù)連接,若連續(xù) 3次GPRS數(shù)據(jù)連接也失敗,則重啟GPRS模塊。整個GPRS操作流程如圖6所示。
2)GPRS通信任務(wù)的執(zhí)行
圖5中全部GPRS操作模塊封裝成一個任務(wù),完成GPRS數(shù)據(jù)鏈路維護(hù)、數(shù)據(jù)收發(fā)。任務(wù)采用查詢方式無限循環(huán)執(zhí)行,接收到一個有效幀后,即存入GPRS數(shù)據(jù)接收緩沖區(qū),并將相應(yīng)接收緩沖區(qū)標(biāo)志位置位,等待負(fù)控規(guī)約解析任務(wù)對其進(jìn)行處理;當(dāng)發(fā)現(xiàn)GPRS數(shù)據(jù)發(fā)送緩沖區(qū)有數(shù)據(jù)時,即將數(shù)據(jù)上傳到上位機(jī)。
圖6 GPRS模塊處理流程圖
(4)負(fù)控規(guī)約解析任務(wù)
1)負(fù)控規(guī)約
負(fù)控規(guī)約采用3層增強(qiáng)型結(jié)構(gòu),分為物理層、數(shù)據(jù)鏈路層、應(yīng)用層,采用GB/T18657.1的6.2.4FT1.2異步式傳輸幀格式。定義如表4所示。
表4 GB/T18657.1的6.2.4FT1.2異步式傳輸幀格式
為適應(yīng)現(xiàn)代通信技術(shù)發(fā)展,負(fù)控規(guī)約提供了多種可選物理通道。其中一般串口和紅外通道可作為測試使用,TCP/UDP可作為主站與終端的通道,短消息可用于通知用戶緊急事件。
2)負(fù)控規(guī)約解析的執(zhí)行
按照任務(wù)設(shè)計思路,將全部的負(fù)控規(guī)約解析模塊封裝成一個任務(wù),即解析任務(wù),它是規(guī)約轉(zhuǎn)換器軟件中最復(fù)雜的部分,封裝了絕大部分的負(fù)控規(guī)約功能,是實現(xiàn)規(guī)約轉(zhuǎn)換的核心。解析任務(wù)與各個全局?jǐn)?shù)據(jù)區(qū)(包括數(shù)據(jù)接收緩沖區(qū)和全局標(biāo)志位系統(tǒng))接口,以獲取構(gòu)建規(guī)約幀所需的數(shù)據(jù),并且無限循環(huán)執(zhí)行,執(zhí)行方式為查詢觸發(fā)式,即任務(wù)輪詢?nèi)謽?biāo)志位系統(tǒng)中表示各接收緩沖區(qū)的標(biāo)志位,一旦發(fā)現(xiàn)某個接收緩沖區(qū)有需要處理的數(shù)據(jù)則立刻將其按照負(fù)控規(guī)約構(gòu)造數(shù)據(jù)幀,實現(xiàn)規(guī)約的轉(zhuǎn)換,然后清此標(biāo)志位,繼續(xù)查詢其余接收緩沖區(qū)標(biāo)志位,直到所有接收緩沖區(qū)標(biāo)志位均清零,一次循環(huán)過程結(jié)束。一次循環(huán)流程可歸納為:輪詢檢查、發(fā)現(xiàn)待處理數(shù)據(jù)、鎖定執(zhí)行(讀寫數(shù)據(jù)緩沖區(qū)、Flash數(shù)據(jù)存儲區(qū),構(gòu)造數(shù)據(jù)幀)、輸出結(jié)果(將構(gòu)造幀填入各個數(shù)據(jù)發(fā)送緩沖區(qū),將事件存入Flash數(shù)據(jù)存儲區(qū))。
(5)規(guī)約轉(zhuǎn)換實現(xiàn)
依據(jù)上述各任務(wù)的設(shè)計原理,下面以設(shè)計的通信規(guī)約轉(zhuǎn)換器用于線路狀態(tài)監(jiān)測并通過 ZigBee無線網(wǎng)絡(luò)接收現(xiàn)場采集器依自定義規(guī)約發(fā)送的數(shù)據(jù)為例,說明規(guī)約轉(zhuǎn)換的實現(xiàn)過程。
某次 ZigBee通信任務(wù)接收到一個采集器發(fā)送的有效幀,經(jīng)自定義規(guī)約解析后得到需要上傳的表示線路狀態(tài)變化數(shù)據(jù),數(shù)據(jù)格式為功能碼(11H)+采集器地址+狀態(tài)碼1+狀態(tài)碼2+狀態(tài)碼3,數(shù)據(jù)打包后放入ZigBee接收緩沖區(qū),負(fù)控規(guī)約解析任務(wù)發(fā)現(xiàn)ZigBee接收緩沖區(qū)有數(shù)據(jù)等待處理,即讀取Flash中的負(fù)控規(guī)約設(shè)置參數(shù),按負(fù)控規(guī)約要求構(gòu)造數(shù)據(jù)幀,實現(xiàn)自定義規(guī)約向負(fù)控規(guī)約的轉(zhuǎn)換,所得數(shù)據(jù)幀格式如表5所示。
表5 負(fù)控規(guī)約構(gòu)造幀格式
從硬件和軟件兩方面系統(tǒng)地介紹了通信規(guī)約轉(zhuǎn)換器的設(shè)計。硬件設(shè)計在滿足功能、性能要求的同時突出可擴(kuò)展性,將硬件分為系統(tǒng)部分和接口部分。軟件部分側(cè)重介紹μC/OS-Ⅱ操作系統(tǒng)、應(yīng)用程序結(jié)構(gòu)、ZigBee通信、RS-485通信、GPRS通信及自定義規(guī)約和DL/T 645規(guī)約與負(fù)控規(guī)約的相互轉(zhuǎn)換。所設(shè)計的通信規(guī)約轉(zhuǎn)換器具有多串口,擴(kuò)展性強(qiáng),可靠性高等特點。
[1]路小俊,王在軍.基于ARM平臺及嵌入式實時操作系統(tǒng)的通信管理機(jī)[J].電力自動化設(shè)備,2005,25(5): 46-49.
[2]張建周,柏嵩.嵌入式高可靠性通信管理機(jī)的設(shè)計[J].電力系統(tǒng)自動化, 2007, 31(16): 94-98.
[3]許紅蕊,姜波,朱啟晨. 基于實時操作系統(tǒng) μC/OS-Ⅱ的通信管理機(jī)的研發(fā)[J].計算機(jī)工程與應(yīng)用, 2007,43(11):208-210.
[4]朱瑩,林基明.基于 ZigBee無線傳感器網(wǎng)絡(luò)網(wǎng)關(guān)的設(shè)計與實現(xiàn)[J].傳感器與微系統(tǒng), 2009,28(7): 80-82.
[5]龍玉湘,章兢,戴瑜興. 基于 ZigBee的無線抄表系統(tǒng)的集中器設(shè)計[J].低壓電器, 2009(20): 14-17.
[6]國家電網(wǎng)公司.Q/GDW 130-2005電力負(fù)荷管理系統(tǒng)數(shù)據(jù)傳輸規(guī)約[S].北京:中國電力出版社,2007.
[7]楊耿杰,郭謀發(fā),丁國興等. 基于嵌入式操作系統(tǒng)的GPRS配變抄表及監(jiān)測終端[J].電力自動化設(shè)備,2009,29(8): 118-123.
[8]郭愛煌,李廣宇,陳志雄,等. 基于GPRS的無線數(shù)據(jù)傳輸嵌入式系統(tǒng)設(shè)計[J].計算機(jī)工程,2009,35(18): 40-42.
[9]周航慈,吳光文.基于嵌入式實時操作系統(tǒng)的程序設(shè)計技術(shù)[M].北京:北京航空航天大學(xué)出版社,2006.
[10]陳是知.μC/OS-Ⅱ內(nèi)核分析、移植與驅(qū)動開[M].北京:人民郵電出版社,2007.
[11]中華人民共和國電力工業(yè)部.DL/T 645-1997多功能電表通信規(guī)約[S].北京:中國電力出版社,1998.