唐俊,張忠明,譚永東,高鵬
(西南交通大學(xué)電氣工程學(xué)院,成都610031)
家庭能量管理系統(tǒng)(Home Energy Management System,HEMS)是利用先進(jìn)的計(jì)算機(jī)技術(shù)、網(wǎng)絡(luò)通信技術(shù)、綜合布線技術(shù)、電子微電子技術(shù),滿足個(gè)性需求的新科技系統(tǒng)[1]。智能插座是家庭能量管理系統(tǒng)不可缺少的重要組成部分,它是實(shí)現(xiàn)家庭能源管理的重要手段和途徑。本文設(shè)計(jì)的智能計(jì)量與開關(guān)控制插座是西南交通大學(xué)2011年國(guó)家創(chuàng)新項(xiàng)目“家庭能量管理系統(tǒng)設(shè)計(jì)”中的重要組成部分。該系統(tǒng)由智能手表、控制終端LM3S9B96、再生發(fā)電部分以及本文設(shè)計(jì)的智能插座組成。該項(xiàng)目于2012年11月結(jié)題,通過(guò)驗(yàn)收。
本文設(shè)計(jì)的智能計(jì)量與開關(guān)控制插座由三部分組成:計(jì)量插座模塊、無(wú)線模塊以及繼電控制模塊。智能計(jì)量與開關(guān)控制插座可以實(shí)現(xiàn)對(duì)家用電器的電氣信息實(shí)時(shí)監(jiān)測(cè),實(shí)現(xiàn)對(duì)電能計(jì)量的管理以及對(duì)電源的遠(yuǎn)程開斷控制。
計(jì)量插座采用的是TI公司的LSDIS02RS1CS智能計(jì)量插座,其主控芯片為MSP430AFE253。MSP430系列單片機(jī):處理能力強(qiáng)、運(yùn)算速度快、超低功耗、單片機(jī)內(nèi)部資源豐富、開發(fā)環(huán)境高效[5]。
無(wú)線模塊采用TI公司的CC430單片機(jī),其內(nèi)核為CC430F5137芯片,使用EZ430-RF5137開發(fā)工具進(jìn)行開發(fā)。
開發(fā)過(guò)程中外部連接主要用到P1.6-TX(5號(hào)引腳)、P1.5-RX(6號(hào)引腳)、AVCC(45引腳)、AVSS(42引腳,即GND)和P1.0(13號(hào)引腳)。其中,P1.6-TX、P1.5-RX用作串口傳輸;P1.0用于開關(guān)控制輸出;AVCC供電使用,AVSS接地。
繼電控制電路如圖1所示。光耦采用PC817型號(hào),繼電器采用ZHNQI Q3F-1Z,VCC工作電壓采用9V的直流電源,圖中插腳(CHA JIAO)是為計(jì)量插座準(zhǔn)備的,I/O接口與無(wú)線模塊的P1.0引腳相連。
具體的工作過(guò)程如下:當(dāng)無(wú)線模塊收到上層控制終端的斷開電源命令,其P1.0引腳輸出高電平,光耦P817導(dǎo)通,繼電器兩端得到電壓,達(dá)到啟動(dòng)標(biāo)準(zhǔn)的電流,繼電器動(dòng)作,開關(guān)打到3引腳,220V側(cè)電源斷開,插座停止工作。其中繼電器的默認(rèn)狀態(tài)為常閉狀態(tài),I/O接口電壓默認(rèn)為低電壓(為0)。
圖1 繼電控制電路
網(wǎng)絡(luò)技術(shù)支持略——編者注。
自定義了外部通信協(xié)議,它是參照101協(xié)議進(jìn)行定義的。
3.1.1 插座與終端的數(shù)據(jù)交換
智能計(jì)量與開關(guān)控制插座所涉及的數(shù)據(jù)類型具體如表1所列。
表1 插座數(shù)據(jù)設(shè)定
3.1.2 報(bào)文格式
報(bào)文由啟動(dòng)字符(68H)、應(yīng)用層公共地址(1個(gè)字節(jié))、類型標(biāo)識(shí)(1個(gè)字節(jié))、數(shù)量限定詞(1個(gè)字節(jié))、信息體地址(2個(gè)字節(jié))、信息體元素(2個(gè)字節(jié))和結(jié)束字符(16H)構(gòu)成。下面對(duì)各部分具體的情況作簡(jiǎn)要介紹。
(1)應(yīng)用層公共地址
公共地址是子站的標(biāo)識(shí)。主站下發(fā)的報(bào)文中,標(biāo)識(shí)接收站;子站上傳時(shí),標(biāo)識(shí)發(fā)送站。鏈路地址域占1個(gè)字節(jié)。詳細(xì)的地址如表2所列。
注意:當(dāng)傳送數(shù)據(jù)對(duì)象的數(shù)據(jù)為08H時(shí)代表發(fā)送端向其余所有終端發(fā)送數(shù)據(jù)(指令),即每一個(gè)終端除了01H~06H的地址外,自身還附帶08H的地址,例如02H和08H均代表智能開關(guān)(1)。
表2 應(yīng)用層地址
(2)類型標(biāo)識(shí)
類型標(biāo)識(shí)的意思是當(dāng)發(fā)送命令時(shí),對(duì)該串指令到底是讓對(duì)象做什么的一種解釋、說(shuō)明。類型標(biāo)識(shí)說(shuō)明略——編者注。
(3)數(shù)量限定詞
數(shù)量限定詞的作用在于說(shuō)明傳輸信息體中元素(數(shù)據(jù))的個(gè)數(shù)。
(4)信息體地址
信息體的地址是用來(lái)表明數(shù)據(jù)類型的。詳細(xì)的地址略——編者注。
3.1.3 無(wú)線模塊與終端的基本對(duì)話過(guò)程
協(xié)議的基本對(duì)話過(guò)程有:初始化、數(shù)據(jù)傳輸以及遠(yuǎn)程遙控。
(1)初始化
當(dāng)主站啟動(dòng)或通信中斷后,主站發(fā)出“請(qǐng)求激活”指令,等待與子站建立通信聯(lián)系。子站在接收到指令后,跳出睡眠模式,向主站發(fā)送“激活確認(rèn)”指令。例程如下:
①?gòu)V播激活:(只能由LM3s9B96實(shí)現(xiàn))
M->R:68 08 01 00 16
R->M:68 01 02 00 16
②點(diǎn)對(duì)點(diǎn)激活智能開關(guān):
(2)數(shù)據(jù)傳輸
當(dāng)智能計(jì)量與開關(guān)控制插座接收到來(lái)自上層的數(shù)據(jù)讀取指令時(shí),插座將當(dāng)前的電壓、電流等用電信息發(fā)送給上層。此處的上層既可以是LM3s9B96的控制終端,也可以是遙控的手表。例程如下:
LM3S9B96:M->R:68 02 03 00 16 R->M:68 01 04 02 01 10 30 23 02 10 05 00 16
LM3S9B96向插座請(qǐng)求數(shù)據(jù),插座回復(fù)兩個(gè)數(shù)據(jù):電壓(1001)2330/10=233V,電流(1002)0005/1000=0.005 A。可以把所有的電參量信息打包后發(fā)送。(手表的讀取命令與之相同,但回復(fù)的地址要變化。)
(3)遠(yuǎn)程遙控
當(dāng)上層給插座發(fā)送開關(guān)控制命令時(shí),插座響應(yīng)該命令,繼電器動(dòng)作,閉合或斷開插座,并在動(dòng)作之后發(fā)送確認(rèn)指令。例程如下:
手表向插座發(fā)送斷開指令,插座回復(fù)斷開確認(rèn)。當(dāng)然,LM3S9B96的控制終端亦可發(fā)送開關(guān)控制命令,此時(shí),回復(fù)的地址就會(huì)發(fā)生變化。
(4)數(shù)據(jù)格式說(shuō)明
開關(guān)狀態(tài)(兩個(gè)字節(jié)表示)中0000代表斷開;0001代表閉合。電壓、電流、功率測(cè)量量(兩個(gè)字節(jié)表示)只傳輸整數(shù)部分,如220V標(biāo)識(shí)為00 22。功率因數(shù):傳送小數(shù)點(diǎn)后數(shù)值部分(保留兩位),例如功率因數(shù)為0.8,則傳輸數(shù)據(jù)位8000H。
無(wú)線模塊(其內(nèi)有單片機(jī))為主站,計(jì)量插座為從站。具體協(xié)議請(qǐng)參照LSDIS02RS1CS智能計(jì)量插座的串口通信協(xié)議。
寫入無(wú)線模塊的主程序主要包括初始化程序、各種中斷服務(wù)程序、通信處理程序和開關(guān)控制程序。程序流程圖如圖2所示。說(shuō)明了智能計(jì)量與開關(guān)控制插座的整體構(gòu)成和各部分之間的關(guān)系。
圖2 智能計(jì)量與開關(guān)控制插座整體框圖
程序的總體流程圖如圖3所示。下文提供了寫入無(wú)線模塊的部分程序。
圖3 程序流程圖
4.1.1 UART串口初始化
初始化的內(nèi)容是定義引腳的作用和功能,確定時(shí)鐘的選擇,以及采用何種波特率進(jìn)行傳輸。該初始化程序定義P1.6、P1.5引腳作為UART的TX、RX使用,確定采用SMCLK(子系統(tǒng)時(shí)鐘)作為UART的時(shí)鐘源,采用9 600 bps作為傳輸?shù)牟ㄌ芈省?/p>
初始化程序如下:
4.1.2 UART串口中斷程序
使用串口中斷程序主要是為了提高收發(fā)速度,使接收和發(fā)送互不影響,達(dá)到全雙工通信效果。同時(shí),程序不用等待,以最高效率運(yùn)行。該段串口中斷程序?qū)崿F(xiàn)數(shù)據(jù)接收時(shí)觸發(fā)中斷,將接收到的數(shù)據(jù)保存到m_strUart.UartRx-Buf數(shù)組中。中斷程序如下:
無(wú)線通信程序、RS232串口通信略——編者注。
LSDIS02RS1CS型號(hào)的計(jì)量插座能夠?qū)崿F(xiàn)當(dāng)前電壓、電流、頻率的測(cè)量,并根據(jù)測(cè)量的值計(jì)算出有功功率等電量值。通過(guò)分析插座的內(nèi)部程序,可以解析得到具體的程序流程,如圖4所示。
通過(guò)對(duì)讀寫程序的解析,并根據(jù)插座與外部通信的協(xié)議,可以通過(guò)串口獲得當(dāng)前用電器的各項(xiàng)用電參量數(shù)值。
圖4 計(jì)量插座內(nèi)部程序流程圖
本文使用IAR Embedded Workbench(簡(jiǎn)稱IAR EW)嵌入式系統(tǒng)開發(fā)工具實(shí)現(xiàn)程序的編譯和運(yùn)行。
本次設(shè)計(jì)的智能計(jì)量與開關(guān)控制插座由計(jì)量插座、無(wú)線模塊和繼電器控制部分組成。調(diào)試時(shí)控制終端用PC機(jī)代替,即用USB口連接有無(wú)線模塊的筆記本電腦,由此讀寫程序。智能計(jì)量與開關(guān)控制插座的連接情況是計(jì)量插座連接家庭電源電路,將接入繼電器控制的普通插座插入計(jì)量插座,其中無(wú)線模塊和繼電控制電路焊在一塊電路板上,用導(dǎo)線將無(wú)線模塊與計(jì)量插座的RS232口相連,用電器接在普通插座上智能計(jì)量與開關(guān)控制插座外觀圖略——編者注。
當(dāng)整個(gè)智能計(jì)量與開關(guān)控制插座正常工作時(shí),插在普通插座上的用電器(白熾燈)正常工作(點(diǎn)亮),且無(wú)線模塊實(shí)時(shí)將用電狀態(tài)反饋給控制終端。當(dāng)無(wú)線模塊收到繼電控制信號(hào)后,插座的無(wú)線模塊的P1.0端口(引腳)輸出高電平,繼電器動(dòng)作,斷開電源,普通插座斷電。但計(jì)量插座與無(wú)線模塊仍能繼續(xù)工作。
在調(diào)試過(guò)程中,可以在筆記本電腦上使用串口調(diào)試精靈查看接收和發(fā)送的結(jié)果,并與計(jì)量插座監(jiān)測(cè)到的數(shù)據(jù)比對(duì),進(jìn)行程序修正。
本文硬件采用MSP430AFE253、CC430F5137分別作為計(jì)量插座和無(wú)線模塊的主控芯片并對(duì)繼電控制模塊的電路進(jìn)行了設(shè)計(jì),信息的傳輸采用RS232和無(wú)線射頻技術(shù)。此外,在定義了外部通信協(xié)議并掌握插座內(nèi)部協(xié)議的基礎(chǔ)上,對(duì)主程序進(jìn)行了編寫、編譯、運(yùn)行。最后,對(duì)系統(tǒng)進(jìn)行了調(diào)試,達(dá)到設(shè)計(jì)的目標(biāo)。
本文為期刊縮略版,全文見本刊網(wǎng)站www.mesnet.com.cn。
[1] 孫靜新.基于NiosⅡ的智能家居遠(yuǎn)程監(jiān)控系統(tǒng)的研究與設(shè)計(jì)[D] .天津:河北工業(yè)大學(xué),2010.
[2] 徐偉,姜元建,王斌.智能插座在智能家居系統(tǒng)中的設(shè)計(jì)和應(yīng)用[J] .中國(guó)儀器儀表,2010(10):45-47.
[3] 溫鐵鈍,孫鍵國(guó),張?zhí)旌?無(wú)線遙控智能插座的設(shè)計(jì)[J] .測(cè)控技術(shù),2003,22(10):53-55.
[4] 周彬.一種基于單片機(jī)系統(tǒng)控制的多功能插座[J] .電子世界,2011(11):23-24.
[5] 胡大可.MSP430系列超低功耗16位單片機(jī)原理與應(yīng)用[M] .北京:北京航空航天大學(xué)出版社,2000:1-6.
[6] 蔣偉民.五種主流近距離無(wú)線技術(shù)比較[J] .科技資訊,2007(2):2.