引言
智慧教室的燈光控制是物聯(lián)網(wǎng)的一項重要應用。因此,從系統(tǒng)硬件、軟件和協(xié)議數(shù)據(jù)格式上,對智慧教室的燈光控制系統(tǒng)進行全面的設計,對于物聯(lián)網(wǎng)的應用推廣和節(jié)能減排,都具有重要的應用示范價值與實用性意義。
1總體架構(gòu)
智慧教室燈光控制系統(tǒng)的基本架構(gòu)如圖1所示。該系統(tǒng)由信息感測節(jié)點(ZigBee無線傳感器節(jié)點)、智能處理平臺以及繼電器節(jié)點組成。系統(tǒng)中的三種功能節(jié)點采用ZigBee協(xié)議構(gòu)成無線傳感器網(wǎng)絡(WSN)。智能處理平臺在WSN中擔任ZigBee協(xié)調(diào)器節(jié)點,信息感測節(jié)點及繼電器節(jié)點擔任ZigBee終端節(jié)點。
信息感測節(jié)點主要通過傳感器技術(shù)實現(xiàn)對環(huán)境信息的感知及采集,如光照強度、人體感應數(shù)據(jù),并通過ZigBee協(xié)議將采集結(jié)果傳至信息處理平臺。
信息處理平臺中,ZigBee協(xié)調(diào)器負責接收感知數(shù)據(jù),并將接收到的數(shù)據(jù)通過RS232串口傳送到應用開發(fā)平臺,應用開發(fā)平臺對收到的采集結(jié)果進行分析、決策后,將控制命令從RS232發(fā)往ZigBee協(xié)調(diào)器,ZigBee協(xié)調(diào)器通過ZigBee無線通信協(xié)議將控制命令發(fā)送到繼電器。
繼電器節(jié)點通過ZigBee協(xié)議接收ZigBee協(xié)調(diào)器發(fā)來的控制命令,執(zhí)行開或關(guān)燈的指令。
ZigBee無線通信協(xié)議不需要獨立的硬件設備,而是以無線通信模塊的形式,在信息感測節(jié)點、信息處理平臺和繼電器節(jié)點中均需要實現(xiàn)。
2硬件設計
2.1信息感測節(jié)點
信息感測節(jié)點硬件上由傳感器、微處理器、無線通信模塊、電池組成。圖2所示是信息感測節(jié)點的組成圖。在設計上,為了降低成本,并提高硬件的可擴展性和靈活性,信息感測節(jié)點的微處理器及無線通信模塊可采用選用相同的ZB2430底板實現(xiàn),其核心芯片是TI公司的CC2430,ZB2430電路原理圖如圖3所示。傳感器選用插件式的硬件設計,通過ZB2430的1/O擴展口與ZB2430相連,信息感測節(jié)點只在傳感器插件上不同。根據(jù)智慧教室燈光控制的實際需要,選用了光照、人體兩類傳感器,共兩類信息感測節(jié)點。
2.2信息處理平臺京更件
信息處理平臺硬件上采用DMATEK的DMA210XP整合平臺,其集成了應用開發(fā)平臺和ZigBee協(xié)調(diào)器端功能,ZigBee協(xié)調(diào)器端接收從感測節(jié)點采集到的數(shù)據(jù),并通過串口傳輸?shù)綉瞄_放平臺,由其對感測數(shù)據(jù)做進一步的分析、處理和顯示,其組成圖如圖3所示。
ZigBee協(xié)調(diào)器端采用DAMTEK的ZB2430-03實現(xiàn),ZB2430-03的硬件組成與信息感測節(jié)點的ZB2430完全一致,只在軟件上不同,通過在軟件上定義ZB2430為從模塊(終端)、
ZB2430-03為主模塊(協(xié)調(diào)器),實現(xiàn)信息在兩者間通信。
應用開發(fā)平臺采用具有先進ARMCortexA8核心的SamsungS5PV210處理器,該處理器采用ARMCortexA8核心,DMA210XP應用平臺結(jié)合ZigBee無線感測,實現(xiàn)智慧教室燈光控制的應用。
2.3繼電器節(jié)點京更件
繼電器節(jié)點硬件設計與信息感測節(jié)點硬件類似,但沒有傳感器模塊。
3軟件設計
3.1信息感測節(jié)點軟件
信息感測節(jié)點的軟件可采用嵌入式系統(tǒng)的開發(fā)方式與流程,開發(fā)工具為IAR。本系統(tǒng)共涉及光照、人體兩類傳感器,這兩類傳感器獲取到的數(shù)據(jù)格式略有不同。具體如下:
相同部分:
#defineMAX_SEND_BUF_LEN128//定義發(fā)送緩沖區(qū)長度上限
staticuint8pTxData[MAX_SEND_BUF_LEN];//定義發(fā)送緩沖區(qū)的大小
/*填充發(fā)送緩沖區(qū),對5類傳感器均相同,開始*/
pTxData[0]=0xFF;
pTxData[1]=0xFD;
pTxData[3]=4;
pTxData[8]=0;
pTxData[9]=0;
pTxData[10]=CheckSum(pTxData,10);//校驗和/*填充發(fā)送緩沖區(qū),對2類傳感器均相同,結(jié)束*/不同部分有光電傳感器的數(shù)據(jù)獲取與處理:
unsignedintADC_GetValue(void)//獲取傳感器采樣數(shù)據(jù)
{
unsignedintadcValue=0;
adcValue=adcSampleSingle(ADC_REF_AVDD,
ADC_12_BIT,HAL_BOARD_IO_ADC_CH);
returnadcValue;
}
/*對采樣數(shù)據(jù)的轉(zhuǎn)換,開始*/
ADC_VALUE=ADC_GetValue()*3.3/16384/2;
pTxData[4]=(uint8)ADC_VALUE%10+48;
pTxData[5]=(uint8)(ADC_VALUE*10)%10+48;
/*對采樣數(shù)據(jù)的轉(zhuǎn)換,結(jié)束*/
pTxData[6]=0x00;//填充發(fā)送緩沖區(qū)
pTxData[7]=0x00;//填充發(fā)送緩沖區(qū)
人體傳感器的數(shù)據(jù)處理:
pTxData[4]=HAL_INT_VAL();
pTxData[5]=0x00;
pTxData[6]=0x00;
pTxData[7]=0x00;
信息感測節(jié)點應用程序?qū)鞲衅鳒y量值的獲取、轉(zhuǎn)換、緩存及無線發(fā)送功能可采用如圖4所示的程序流程來實現(xiàn)。
圖4信息感測節(jié)點數(shù)據(jù)處理流程圖
3.2信息處理平臺軟件
信息處理平臺的ZigBee協(xié)調(diào)器模塊通過ZigBee點對點無線通信協(xié)議,負責接收和匯聚各傳感器采集到的感測信息,并將接收到感測數(shù)據(jù)通過RS232串口傳輸?shù)綉瞄_發(fā)平臺;同時,負責從RS232串口接收從應用開發(fā)平臺下達的控制命令,并通過ZigBee無線通信協(xié)議將控制命令發(fā)送到ZigBee繼電器節(jié)點(電燈)。具體程序流程如圖5所示。
3.3繼電器節(jié)點軟件設計
在本系統(tǒng)中,用ZigBee繼電器模擬教室電燈,ZigBee繼電器通過ZigBee點對點無線通信協(xié)議接收ZigBee協(xié)調(diào)器發(fā)來的控制命令,實現(xiàn)對各繼電器(電燈)的打開及關(guān)閉控制。其ZigBee繼電器程序流程如圖6所示。
圖6繼電器節(jié)點程序流程圖
4ZigBee點對點通信參數(shù)及數(shù)據(jù)格式設計
ZigBee點對點通信參數(shù)設計
對Zigbee點對點通信參數(shù)的設置,有RF_CHANNEL、PAN_ID、SENSOR_ADDR、COORD_ADDR四項。ZigBee無線傳感器節(jié)點模塊、ZigBee繼電器模塊、ZigBee協(xié)調(diào)器模塊的RF_CHANNEL、PAN_ID設置一致;無線傳感器節(jié)點模塊的SENSOR_ADDR為無線傳感器節(jié)點地址;無線傳感器節(jié)點模塊的COORD_ADDR為發(fā)送地址,要與協(xié)調(diào)器模塊的COORD_ADDR設置一致;繼電器模塊的RELAY_ADDR為繼電器地址,要與協(xié)調(diào)器模塊的RELAY_ADDR設置一致。本設計采用的設置如下:
#defineRF_CHANNEL22//頻道11~26
#definePAN_ID0x1122//網(wǎng)絡id
#defineCOORD_ADDR0x5566//協(xié)調(diào)器地址
#defineRELAY_ADDR0x7788//繼電器地址
ZigBee無線通信數(shù)據(jù)格式設計
4.2.1協(xié)調(diào)器接收格式
本設計的發(fā)送端傳感器格式(byte1-byte10)如圖7所示。
圖7中,byte1,byte2:傳感器端數(shù)據(jù)發(fā)送的固定頭,固定為OxFA,0xFB;byte3:數(shù)據(jù)類型的標識,例0x01人體,0x02光照;byte4:為傳感數(shù)據(jù)長度(統(tǒng)一為0x04);byte5-byte8:傳感器采集到的具體數(shù)據(jù);byte9:保留;byte10:byte1-byte9校驗值(相加取低8位)。
4.2.2協(xié)調(diào)器發(fā)送數(shù)據(jù)格式
本設計的接收端為電燈(繼電器),格式(byte1-byte10)如圖8所示。
圖8中,byte1,byte2:Coordinator端數(shù)據(jù)發(fā)送控制繼電器命令的固定頭0xFA,0xFB;byte3:Coordibator端數(shù)據(jù)發(fā)送對象,是繼電器序號;0x01:發(fā)送命令給繼電器1端,表示電燈1;0x02:發(fā)送命令給繼電器2端,表示電燈2;0x03:發(fā)送命令給繼電器3端,表示電燈3;0x04:發(fā)送命令給繼電器4端,表示電燈4,以此類推;byte4:命令長度,固定為0x04;byte5:發(fā)送給繼電器的命令內(nèi)容(0x02為關(guān)閉,0x01為開啟);byte6-byte9:保留;byte10:byte1-byte9校驗值(相加取低8位)。
4.2.3電燈(繼電器)應答數(shù)據(jù)格式
本設計的接收端,即協(xié)調(diào)器的格式(byte1-byte9)如圖9所示。
圖9中,byte1-byte4:表示收到的數(shù)據(jù)原值返回;byte5-byte8:應答碼,固定為0xAA0xBB0xCC0xDD;byte9:是byte1-byte8的校驗值(相加取低8位)。
5結(jié)語
智慧教室的燈光控制是物聯(lián)網(wǎng)的一項重要應用,本文從硬件、軟件和協(xié)議數(shù)據(jù)格式上對智慧教室的燈光控制系統(tǒng)進行了較為全面的設計,對物聯(lián)網(wǎng)的應用推廣、節(jié)能減排等方面都具有重要的應用價值與實用性,只需在軟件上和傳感器插件上做少量改動,本系統(tǒng)的應用還可進一步推廣,如應用到倉儲監(jiān)控、智慧家居等方面,具有很強的可擴展性。