亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        具有遠(yuǎn)程升級(jí)功能的小區(qū)電能監(jiān)測(cè)系統(tǒng)

        2014-09-06 10:50:14諸德宏張介環(huán)
        電子器件 2014年4期

        諸德宏,張介環(huán)

        (江蘇大學(xué)電氣信息工程學(xué)院,江蘇 鎮(zhèn)江 212013)

        ?

        具有遠(yuǎn)程升級(jí)功能的小區(qū)電能監(jiān)測(cè)系統(tǒng)

        諸德宏*,張介環(huán)

        (江蘇大學(xué)電氣信息工程學(xué)院,江蘇 鎮(zhèn)江 212013)

        摘要:針對(duì)居民小區(qū)電能儀表升級(jí)維護(hù)困難的問(wèn)題,提出一種基于STM32+GPRS的無(wú)線遠(yuǎn)程升級(jí)系統(tǒng)設(shè)計(jì)方法。闡述了系統(tǒng)中主要硬件、遠(yuǎn)程升級(jí)原理并給出軟件設(shè)計(jì)的關(guān)鍵代碼,自定義無(wú)線通信協(xié)議,有效解決了升級(jí)過(guò)程中出現(xiàn)的傳輸誤碼問(wèn)題。服務(wù)器端引入最新QT技術(shù),界面友好、操作簡(jiǎn)單,并給出了軟件設(shè)計(jì)流程及運(yùn)行界面。實(shí)驗(yàn)證明,系統(tǒng)運(yùn)行可靠,對(duì)推動(dòng)城市居民小區(qū)電能監(jiān)測(cè)現(xiàn)代化、智能化具有重要意義。

        關(guān)鍵詞:電能監(jiān)測(cè);遠(yuǎn)程升級(jí);GPRS;STM32;Qt

        在城市居民小區(qū)電能儀表實(shí)際工作過(guò)程中經(jīng)常會(huì)遇到2種現(xiàn)實(shí)的困難,一是用戶在使用過(guò)程中,有時(shí)可能需要改進(jìn)或增加功能,二是程序本身有缺陷,經(jīng)常死機(jī)等無(wú)法正常工作。要解決這樣的問(wèn)題,傳統(tǒng)的方法是安排技術(shù)人員到現(xiàn)場(chǎng)重新下載程序或者更換儀表。居民小區(qū)有大量的儀表,要完成這樣的更新任務(wù)費(fèi)時(shí)費(fèi)力。針對(duì)這種問(wèn)題,本文提出一種基于GPRS無(wú)線通信技術(shù)[1],實(shí)現(xiàn)遠(yuǎn)程升級(jí)系統(tǒng)軟件的方法,并自定義通信協(xié)議,有效解決了數(shù)據(jù)傳輸誤碼的問(wèn)題。

        1 系統(tǒng)總體結(jié)構(gòu)

        系統(tǒng)(如圖1所示)主要由服務(wù)器端和客戶端組成。服務(wù)器端指小區(qū)電能監(jiān)管中心,負(fù)責(zé)監(jiān)控小區(qū)內(nèi)所有居民的家庭電能表。需要軟件升級(jí)時(shí),通過(guò)GPRS發(fā)送模塊將待更新程序(一個(gè)可執(zhí)行二進(jìn)制映像文件,由完整的應(yīng)用程序編譯得到)發(fā)送到客戶端??蛻舳酥讣彝ル娔鼙?其系統(tǒng)軟件由IAP引導(dǎo)程序和應(yīng)用程序組成,通過(guò)GPRS網(wǎng)絡(luò)與服務(wù)器交互并獲得待更新程序,實(shí)現(xiàn)遠(yuǎn)程升級(jí)。

        圖1 系統(tǒng)總體架構(gòu)

        1.1系統(tǒng)硬件設(shè)計(jì)

        系統(tǒng)硬件總體框架如圖2所示,主要硬件模塊介紹如下:

        (1)STM32微控制器。STM32是近年來(lái)迅速興起的基于ARM Cortex-M3內(nèi)核的微控制器[2]。Cortex-M3內(nèi)核是專門設(shè)計(jì)滿足集高性能、低功耗、實(shí)時(shí)應(yīng)用、具有競(jìng)爭(zhēng)性價(jià)格于一體的嵌入式領(lǐng)域要求的高性能芯片。該芯片最高頻率可達(dá)72MHz,具有512 kbyte的閃存及64 kbyte的SRAM,支持I2C,USART,SPI,CAN,USB等通信接口,自帶單周期硬件乘法器,大大提高了數(shù)字信號(hào)的運(yùn)算速度。

        (2)GPRS模塊。SIM900A是SIMCom公司推出的一款新型無(wú)線模塊[3],它是專為中國(guó)市場(chǎng)設(shè)計(jì)的2頻GSM/GPRS模塊.完全采用SMT封裝形式,性能穩(wěn)定,外觀小巧,性價(jià)比高,能滿足使用者的多種需求。SIM900A采用工業(yè)標(biāo)準(zhǔn)接口,工作頻率為EGSM 900 MHz和DSC 1 800 MHz,支持標(biāo)準(zhǔn)的AT指令。本系統(tǒng)GPRS模塊如圖3所示。

        圖2 系統(tǒng)硬件框圖

        圖3 GPRS模塊

        (3)電能計(jì)量芯片。ATT7022D是一款高精度三相電能專用計(jì)量芯片[4],具有16 bit A/D轉(zhuǎn)換精度,集成了6路二階Sigma-Delta(Σ-Δ)ADC、參考電壓電路以及所有功率、能量、有效值、功率因數(shù)以及頻率測(cè)量的數(shù)字信號(hào)處理等電路。能夠測(cè)量各相以及合相的有功功率、無(wú)功功率、視在功率、有功能量以及無(wú)功能量,同時(shí)還能測(cè)量各相電流、電壓有效值、功率因數(shù)、相角、頻率等參數(shù),并支持全數(shù)字域的增益、相位校正,即純軟件校表。有功、無(wú)功電能脈沖輸出CFl,CF2提供瞬時(shí)有功、無(wú)功功率信息,可以直接接到標(biāo)準(zhǔn)表,進(jìn)行誤差校正。

        (4)外部擴(kuò)展芯片。采用W25X32 Flash存儲(chǔ)芯片,它具有PCB占用空間少、引腳數(shù)量少、功耗低等特點(diǎn),與普通串行Flash相比,使用更靈活,性能更出色,非常適合存儲(chǔ)文本或數(shù)據(jù),工作電壓2.7 V~3.6 V,正常工作狀態(tài)下電流消耗0.5 mA,掉電狀態(tài)下電流消耗1 μA。

        2 系統(tǒng)軟件設(shè)計(jì)

        2.1遠(yuǎn)程升級(jí)原理

        微處理器STM32內(nèi)部Flash存在兩段程序和一個(gè)標(biāo)志區(qū),各段分布如圖4所示。

        圖4 STM32內(nèi)部Flash分配

        IAP引導(dǎo)程序處于地址0x8000000處,系統(tǒng)上電或復(fù)位后,首先執(zhí)行IAP程序,它通過(guò)檢測(cè)全局標(biāo)志UpdateFlag的值來(lái)判斷是否與服務(wù)器交互并執(zhí)行更新應(yīng)用程序的操作[5],否則直接跳轉(zhuǎn)到應(yīng)用程序處執(zhí)行用戶代碼。應(yīng)用程序處于IAP程序后的某個(gè)固定地址(0x803f8000),這2個(gè)地址之間需保證足夠的空間以存放IAP引導(dǎo)程序。Flash中的這兩段代碼是2個(gè)相對(duì)獨(dú)立的程序映像,它們之間互不影響,只存在簡(jiǎn)單的跳轉(zhuǎn)關(guān)系。Flash尾端0x803f800處存放升級(jí)過(guò)程中需要的各種全局標(biāo)志,引導(dǎo)程序和應(yīng)用程序都可以對(duì)該標(biāo)志值進(jìn)行修改。

        2.2通信協(xié)議定義

        升級(jí)過(guò)程傳輸?shù)臄?shù)據(jù)是要運(yùn)行的應(yīng)用程序代碼,所以很小的傳輸錯(cuò)誤都會(huì)導(dǎo)致升級(jí)后系統(tǒng)癱瘓。系統(tǒng)采用GPRS無(wú)線傳輸,發(fā)生誤碼的可能性比較大,因此必須保證數(shù)據(jù)傳輸無(wú)誤。本系統(tǒng)在完善的TCP/IP機(jī)制基礎(chǔ)上自行設(shè)計(jì)應(yīng)用層協(xié)議,并融入CRC16和MD5[5]校驗(yàn)算法,有效保證數(shù)據(jù)傳輸?shù)目煽啃浴?/p>

        升級(jí)數(shù)據(jù)報(bào)文分啟動(dòng)數(shù)據(jù)報(bào)文、啟動(dòng)確認(rèn)報(bào)文,升級(jí)過(guò)程數(shù)據(jù)報(bào)文、升級(jí)過(guò)程確認(rèn)報(bào)文,升級(jí)結(jié)束數(shù)據(jù)報(bào)文、升級(jí)結(jié)束確認(rèn)報(bào)文3部分[6]。由于篇幅有限這里僅給出升級(jí)過(guò)程數(shù)據(jù)報(bào)文格式(表1所示)和升級(jí)過(guò)程確認(rèn)報(bào)文格式(表2所示),其他過(guò)程報(bào)文格式可以此為參考。

        上位機(jī)軟件按此協(xié)議將待發(fā)送數(shù)據(jù)打包,通過(guò)GPRS網(wǎng)絡(luò)發(fā)送給待升級(jí)電能儀表,電能表終端接收到數(shù)據(jù)后同樣按此協(xié)議解包。每接收一包數(shù)據(jù)都會(huì)CRC16校驗(yàn),待全部接收完畢后MD5再校驗(yàn)一次,充分確保數(shù)據(jù)傳輸?shù)恼_性、可靠性。

        表1 升級(jí)過(guò)程數(shù)據(jù)報(bào)文格式

        表2 升級(jí)過(guò)程確認(rèn)報(bào)文格式

        2.3軟件設(shè)計(jì)

        2.3.1IAP引導(dǎo)程序設(shè)計(jì)

        IAP全稱“In-Application Programming”即在應(yīng)用程序中編程。IAP是一種通過(guò)微控制器的對(duì)外通信接口(如USART、I2C、CAN、USB、以太網(wǎng))對(duì)正在運(yùn)行程序的微控制器進(jìn)行內(nèi)部程序升級(jí)更新的技術(shù)。IAP技術(shù)的核心是一段預(yù)先燒寫在單片機(jī)內(nèi)部的IAP程序,這段程序主要負(fù)責(zé)與外部的上位機(jī)軟件握手同步,然后通過(guò)外設(shè)通信接口將來(lái)自于上位機(jī)軟件的程序數(shù)據(jù)接收后寫入微控制器內(nèi)部指定的閃存區(qū)域,最后跳轉(zhuǎn)執(zhí)行新寫入的程序,達(dá)到程序更新的目的[7]。關(guān)鍵代碼如下:

        typedefvoid(*pFunction)(void);

        pFunction Jump_To_Application;

        int main()

        {

        … …

        swich(UpdateFlag)

        case0xAA66BB99://跳轉(zhuǎn)到主程序

        Jump_To_Application=(pFunction)(*(vu32*)(IAPSTART+4));

        __MSR_MSP(*(vu32*)IAPSTART);

        Jump_To_Application();

        break;

        case0x66AA99BB://讀取外部Flash數(shù)據(jù)

        ReadXflash();

        break;

        … …

        }

        2.3.2升級(jí)數(shù)據(jù)處理程序設(shè)計(jì)

        主應(yīng)用程序正常運(yùn)行時(shí)主要完成電能數(shù)據(jù)(電壓、電流、頻率、功率等)采集等基本電能儀表功能并在LCD上實(shí)時(shí)顯示,在接收到服務(wù)器發(fā)送的升級(jí)命令后進(jìn)入升級(jí)數(shù)據(jù)處理子程序,關(guān)鍵代碼如下:

        if((RxBuf[0]==0x6A)&&(RxBuf[1]==0x6A))

        {

        PacketLenth=(RxBuf[3]<<8)+RxBuf[2];

        PacketType=RxBuf[4];

        FramType=RxBuf[5];

        FramSeq=RxBuf[6];

        switch(FramType)//幀類型判斷

        {

        caseUpGradeFram://是升級(jí)報(bào)文

        switch(PacketType)//報(bào)文類型判斷

        {

        casePacketUpStart://升級(jí)啟動(dòng)報(bào)文

        SrtDataProcess();

        case PacketUpMid://升級(jí)過(guò)程報(bào)文

        MidDataProcess();

        casePacketUpEnd://升級(jí)結(jié)束報(bào)文

        EndDataProcess();

        ReplyPacket();//應(yīng)答報(bào)文

        }

        … …

        }

        }

        … …

        UpgradeFlag=success;//置升級(jí)標(biāo)志

        CloseDog();//關(guān)閉看門狗,使系統(tǒng)復(fù)位

        … …

        根據(jù)協(xié)議首先判斷報(bào)文頭是否為6A6A,計(jì)算報(bào)文長(zhǎng)度,報(bào)文類型,幀類型,幀序列號(hào)。然后判斷幀類型以確定是升級(jí)報(bào)文,接著判斷是升級(jí)啟動(dòng)報(bào)文、升級(jí)過(guò)程報(bào)文、升級(jí)結(jié)束報(bào)文并分別處理,數(shù)據(jù)校驗(yàn)正確后將數(shù)據(jù)存入外部Flash,置升級(jí)標(biāo)志,關(guān)閉看門狗使系統(tǒng)復(fù)位,復(fù)位后執(zhí)行IAP程序,將外部Flash中數(shù)據(jù)寫入內(nèi)部Flash相應(yīng)位置,并跳轉(zhuǎn)到新程序運(yùn)行,完成升級(jí)過(guò)程。電能表終端運(yùn)行如圖5所示。

        圖5 遠(yuǎn)程升級(jí)運(yùn)行圖

        3 上位機(jī)軟件設(shè)計(jì)

        上位機(jī)采用開(kāi)源Qt圖形庫(kù)開(kāi)發(fā),Qt Creator作為開(kāi)發(fā)環(huán)境。Qt是一個(gè)跨平臺(tái)的C++圖形用戶界面應(yīng)用程序框架,可以讓開(kāi)發(fā)者一次編寫,多處編譯,使用Qt開(kāi)發(fā)的程序可以很方便的將傳統(tǒng)PC程序移植到移動(dòng)監(jiān)控設(shè)備中,具有良好的拓展性[8]。軟件設(shè)計(jì)流程如圖6所示。

        圖6 上位機(jī)軟件設(shè)計(jì)流程

        首先向電能儀表終端發(fā)送升級(jí)啟動(dòng)命令,然后啟動(dòng)定時(shí)器,若超時(shí)并且沒(méi)有收到應(yīng)答幀,則重新發(fā)送升級(jí)命令,超時(shí)三次則終止升級(jí)程序。若收到正確應(yīng)答幀則發(fā)送更新數(shù)據(jù)給終端儀表,并遵循沒(méi)有收到正確應(yīng)答幀超時(shí)三次時(shí)終止升級(jí)程序。數(shù)據(jù)發(fā)送完畢后,向電能表終端發(fā)送升級(jí)結(jié)束命令,在收到正確應(yīng)答幀后升級(jí)成功。上位機(jī)設(shè)計(jì)界面如圖7所示。

        圖7 上位機(jī)軟件界面

        4 結(jié)論

        本文設(shè)計(jì)了基于GPRS的小區(qū)電能監(jiān)測(cè)系統(tǒng),并設(shè)計(jì)了監(jiān)控中心上位機(jī)軟件,自定義通信協(xié)議,解決了數(shù)據(jù)傳輸中的誤碼問(wèn)題,提高了電能儀表維護(hù)維修效率,在實(shí)驗(yàn)室模擬運(yùn)行穩(wěn)定可靠,對(duì)工程實(shí)踐具有一定的借鑒意義。

        參考文獻(xiàn):

        [1]黃強(qiáng),陶正蘇,宋浩.基于ARM的GPRS遠(yuǎn)程數(shù)據(jù)傳輸模塊設(shè)計(jì)[J].電子器件,2008,31(4):1214-1218.

        [2]彭剛,秦志強(qiáng).基于ARM Cortex-M3的STM32系列嵌入式微處理器應(yīng)用實(shí)踐[M].北京:電子工業(yè)出版社,2011:1-31.

        [3]希姆通信息技術(shù)有限公司.SIM900A硬件設(shè)計(jì)手冊(cè)[S].2010.

        [4]珠海炬力集成電路設(shè)計(jì)有限公司.ATT7022D用戶手冊(cè)[S].2009.

        [5]毛熠,陳娜.MD5算法的研究與改進(jìn)[J].計(jì)算機(jī)工程,2012,38(24):111-114.

        [6]佟為明,馬培鋒,祁國(guó)華.一種分布式生產(chǎn)企業(yè)能源計(jì)量系統(tǒng)[J].電子器件,2007,30(1):274-278.

        [7]蒙博宇.STM32自學(xué)筆記[M].北京:北京航空航天大學(xué)出版社,2012:395-407.

        [8]Jasmin Blanchette,Mark Summerfield.C++GUI Programming with Qt4[M].北京:電子工業(yè)出版社,2008:1-50.

        諸德宏(1968-),男,漢族,江蘇溧水人,江蘇大學(xué)電氣信息工程學(xué)院教授,博士,主要研究方向?yàn)榇艂鲃?dòng)系統(tǒng)的檢測(cè)與控制,電磁技術(shù)在農(nóng)業(yè)工程中的應(yīng)用,zhudh@ujs.edu.cn;

        張介環(huán)(1983-),男,漢族,江蘇徐州人,江蘇大學(xué)電氣信息工程學(xué)院碩士研究生,主要研究方向?yàn)榍度胧较到y(tǒng)開(kāi)發(fā)。

        ResidentialElectricityMonitoringSystemwithRemoteUpgradeFunction

        ZHUDehong*,ZHANGJiehuan

        (School of Electrical and Information Engineering,Jiangsu University,Zhenjiang Jiangsu 212013,China)

        Abstract:For the tough problems of electric energy meter’s upgrade and maintenance in residential areas,put a design method of remote upgrade system was put forward based on STM32+GPRS.The main hardware in the system and the principle of remote upgrade were expounded,the key code of the software design was also given to solve effectively the transmission error problems in the upgrade process through the custom of the wireless communication protocol.Server software is friendly and simply operated by introducing the latest QT technology,Practice proved that the system is running well and has an important significance in promoting modern and intelligent power monitoring in urban residential areas.

        Key words:power monitoring;remote upgrade;GPRS;STM32;Qt

        doi:EEACC:721010.3969/j.issn.1005-9490.2014.04.032

        中圖分類號(hào):TM932

        文獻(xiàn)標(biāo)識(shí)碼:A

        文章編號(hào):1005-9490(2014)04-0733-04

        收稿日期:2013-07-23修改日期:2013-08-13

        久久国产精品老人性| 亚洲av成人精品一区二区三区| 一级r片内射视频播放免费 | 久久国产劲暴∨内射| 亚洲精品国产v片在线观看| 天堂中文资源在线地址| 日韩久久免费精品视频| 亚洲精品一区三区三区在线| 蜜桃视频一区二区在线观看| 亚洲国产成人久久综合| 末发育娇小性色xxxxx视频| 五月天综合在线| 一区二区三区福利在线视频| 国产一区二区三区探花| 精品无码人妻夜人多侵犯18| 一本大道久久东京热无码av| 波多野结衣一区二区三区免费视频 | 精品少妇人妻av免费久久久| 久久波多野结衣av| 日韩美女av二区三区四区| 日本高清不卡二区三区| 国产成人综合美国十次| 国产va在线观看免费| 亚洲另类激情专区小说婷婷久 | 五月婷婷激情综合| 亚洲大胆视频在线观看| 在线中文字幕一区二区| 国内永久福利在线视频图片| 玩50岁四川熟女大白屁股直播| 性一交一乱一伦| 女人被躁到高潮嗷嗷叫| 视频国产一区二区在线| 国产综合色在线精品| 蜜臀av免费一区二区三区| 日韩欧美在线观看成人| 一个人的视频免费播放在线观看| 国产一区二区三区免费精品视频| 国产大片内射1区2区| 亚洲av成人综合网| 免费美女黄网站久久久| 亚洲一区毛片在线观看|