盧志翠
(邯鄲學(xué)院,河北 邯鄲 056005)
智慧教室物聯(lián)網(wǎng)云平臺(tái)分為教室環(huán)境采集部分、數(shù)據(jù)網(wǎng)絡(luò)傳輸部分和軟件平臺(tái)決策管理部分,對(duì)應(yīng)了物聯(lián)網(wǎng)的四層結(jié)構(gòu)。感知層是教室信息的采集,通過網(wǎng)絡(luò)將數(shù)據(jù)傳遞到云端服務(wù)器,應(yīng)用層的軟件系統(tǒng)收集數(shù)據(jù),進(jìn)行分析和處理,作出判斷,將數(shù)據(jù)展示給用戶,并通過人機(jī)交互,實(shí)現(xiàn)對(duì)智慧教室全方位控制[1-4]。
面向智慧教室的數(shù)據(jù)傳輸設(shè)計(jì)主要實(shí)現(xiàn)物聯(lián)網(wǎng)云平臺(tái)的感知層和網(wǎng)絡(luò)層。包括ZigBee網(wǎng)絡(luò)的終端節(jié)點(diǎn)硬件結(jié)構(gòu)設(shè)計(jì)以及對(duì)處理芯片和傳感器的選型,終端節(jié)點(diǎn)程序設(shè)計(jì)與功能的實(shí)現(xiàn),網(wǎng)絡(luò)通信協(xié)議的規(guī)范格式和協(xié)議通訊程序設(shè)計(jì),實(shí)現(xiàn)對(duì)智能教室數(shù)據(jù)間的雙向傳輸。智慧教室數(shù)據(jù)傳輸結(jié)構(gòu)框架圖如圖1所示。
圖1 網(wǎng)關(guān)結(jié)構(gòu)框架圖
終端節(jié)點(diǎn)按照協(xié)議棧格式自動(dòng)加入ZigBee網(wǎng)絡(luò),并將采集到的教室內(nèi)環(huán)境參數(shù)數(shù)據(jù)實(shí)時(shí)通過ZigBee協(xié)議傳輸給協(xié)調(diào)器模塊。ZigBee協(xié)調(diào)器模塊把接收到的各終端節(jié)點(diǎn)的數(shù)據(jù)依據(jù)定義好的數(shù)據(jù)幀格式進(jìn)行數(shù)據(jù)重組,將設(shè)置完成的數(shù)據(jù)幀經(jīng)過串口傳輸?shù)絎iFi模塊,并通過WiFi模塊把數(shù)據(jù)傳輸?shù)杰浖破脚_(tái)。軟件云平臺(tái)把接收到的數(shù)據(jù)按照數(shù)據(jù)幀格式進(jìn)行數(shù)據(jù)提取后存儲(chǔ)到數(shù)據(jù)庫。
教室內(nèi)終端節(jié)點(diǎn)的硬件采用的是TI公司的CC2530作為主芯片,選用DHT11溫濕度傳感器、人體紅外感應(yīng)傳感器、光敏電阻傳感器、MQ2煙霧傳感器等來采集教室的環(huán)境參數(shù)。為了硬件電路設(shè)計(jì)簡單和通用,采用了核心板加底板的設(shè)計(jì)方案,核心板由具有ZigBee功能的芯片和無線通信部分構(gòu)成,并通過排針把所有I/O口引出與底板進(jìn)行連接,底板上預(yù)留出各種傳感器接口和調(diào)試通信接口。
ZigBee核心板最關(guān)鍵部位就是芯片選擇,該芯片必須能夠?qū)崿F(xiàn)無線傳感器網(wǎng)絡(luò)對(duì)各種數(shù)據(jù)的處理,包括存儲(chǔ)、傳輸和數(shù)據(jù)包裝封,要求與ZigBee模塊的低功耗、低成本、穩(wěn)定性強(qiáng)等特性相吻合。因此,本文設(shè)計(jì)選用CC2530芯片作為ZigBee技術(shù)的核心芯片。CC2530芯片是TI設(shè)計(jì)的專門用于無線傳感網(wǎng)絡(luò)中進(jìn)行數(shù)據(jù)處理的集成芯片,它工作在2.4GHz頻率端上,IEEE802.15.4的協(xié)議標(biāo)準(zhǔn),具有高性能、低功耗的8051微控制器內(nèi)核;具有8路輸入的8~14位ADC,1個(gè)16位、2個(gè)8位的定時(shí)器;具有高級(jí)的加密標(biāo)準(zhǔn)的處理器,21個(gè)通用I/O引腳以及2個(gè)具有20mA的電流吸收或電流供給功能。供電電源3.3V。該芯片具有可靠性高、通信距離比較遠(yuǎn)、增加PA功能后距離會(huì)更遠(yuǎn)等優(yōu)良性能。CC2530芯片具有256kB、128kB、64kB、32kB四種閃存,該芯片具有豐富的外接引腳,芯片采用的RF布局,具有非常高的抗干擾能力和靈敏度,完全可以滿足ZigBee組網(wǎng)的需求。
設(shè)計(jì)ZigBee核心板,主要用于教室內(nèi)所有終端模塊的組網(wǎng),將傳感器和控制器與ZigBee核心板通過I/O口相連接,實(shí)現(xiàn)所有模塊組網(wǎng),與ZigBee協(xié)調(diào)器形成每間教室的內(nèi)控網(wǎng)絡(luò)。由于每一個(gè)芯片I/O數(shù)量有限,為了滿足大部分節(jié)點(diǎn)通用性要求,預(yù)留多個(gè)不同傳感器和控制器I/O口,硬件電路采用集CC2530的系統(tǒng)板與擴(kuò)展板相結(jié)合方式進(jìn)行開發(fā),擴(kuò)展板上面有電源接口、指示燈、調(diào)試接口、傳感器和控制模塊接口、液晶顯示屏、復(fù)位和USB轉(zhuǎn)串口各種電路設(shè)計(jì),以滿足各個(gè)不同節(jié)點(diǎn)的正常工作的需求。
核心板以CC2530芯片為核心,主要由為芯片提供能源的電源電路、時(shí)鐘電路、射頻電路和I/O擴(kuò)展電路構(gòu)成。電源電路部分由DC3.3V電源為芯片提供電源,并通過電容元件和電感元件為電源進(jìn)行濾波;時(shí)鐘電路由32k和32M的雙晶振電路為核心板提供時(shí)鐘信號(hào);射頻電路為ZibBee模塊之間的無線通信建立起通信通道能夠工作在2.4GHz頻段上,具有16個(gè)傳輸信道,可根據(jù)環(huán)境進(jìn)行切換可靠的通信信道,其功耗低,使用2.4G全向天線,在空曠無阻礙的空間直線距離可達(dá)300m左右。I/O擴(kuò)展電路把CC2530的所有全部I/O口通過標(biāo)準(zhǔn)的2.54排針接口引出,方便與擴(kuò)展模塊進(jìn)行連接,使I/O資源的利用最大化。
ZigBee擴(kuò)展板(底板)主要是配合ZigBee核心板研發(fā)和使用的底板,可以將集有CC2530芯片的ZigBee核心板直接插到底板上,具體功能如下。
1)電源:擴(kuò)展板采用DC5V供電,由USB接口和外部電源兩種方式供電,輸入電源由AMS1117-3.3電源芯片轉(zhuǎn)換后給核心板進(jìn)行供電。在底板上留用5V和3.3V電源接口,方便連接其它外圍設(shè)備。
2)按鍵:在擴(kuò)展板上接有3路按鍵,一路連接芯片的復(fù)位引腳用于芯片的復(fù)位;另外兩路連接芯片的外部中斷,用于控制信號(hào)輸入。
3)LED燈:在擴(kuò)展板上有6路LED燈,一路用于電源指示燈,兩路用于串口數(shù)據(jù)收發(fā)的指示燈,另外3路通過IO口與芯片連接,可以用于程序運(yùn)行狀態(tài)的指示燈。
4)調(diào)試接口:用于程序的下載和調(diào)試。
5)液晶接口:為了更方便觀察程序的運(yùn)行,在擴(kuò)展板上設(shè)計(jì)了SPI接口的TFT屏,可以把程序的運(yùn)行過程實(shí)時(shí)顯示在液晶屏上,方便程序的調(diào)試,在程序調(diào)試沒有問題后也可以不安裝液晶屏。
6)USB轉(zhuǎn)串口:現(xiàn)在的電腦上都已經(jīng)不帶串口接口,而芯片的通信輸出最常用的就是串口,為了方便芯片調(diào)試和與電腦進(jìn)行通信,在擴(kuò)展板上增加了USB轉(zhuǎn)串口模塊。
7)CC2530接口:所有的芯片都通過排針連接到了擴(kuò)展板,然后根據(jù)不同的外圍設(shè)備進(jìn)行I/O口的選擇。
每間教室作為一個(gè)ZigBee內(nèi)部網(wǎng)絡(luò),協(xié)調(diào)器周期性的對(duì)數(shù)據(jù)采集結(jié)點(diǎn)進(jìn)行數(shù)據(jù)查詢,對(duì)應(yīng)的結(jié)點(diǎn)接收到的查詢指令后按照指定的數(shù)據(jù)幀格式進(jìn)行數(shù)據(jù)返回,如果遇到突發(fā)緊急事件,終端結(jié)點(diǎn)也可以主動(dòng)向協(xié)調(diào)器發(fā)送數(shù)據(jù)。網(wǎng)內(nèi)的數(shù)據(jù)傳輸是根據(jù)ZigBee模塊的網(wǎng)絡(luò)號(hào)和設(shè)備短地址進(jìn)行。當(dāng)初始設(shè)置時(shí),先設(shè)定每個(gè)結(jié)點(diǎn)所屬網(wǎng)絡(luò)的網(wǎng)絡(luò)號(hào),再對(duì)網(wǎng)絡(luò)中每個(gè)終端結(jié)點(diǎn)進(jìn)行地址分配,通過這種方式來確定網(wǎng)絡(luò)中每個(gè)節(jié)點(diǎn)地址的唯一性,避免相鄰教室內(nèi)數(shù)據(jù)接收錯(cuò)誤[5]。
本文根據(jù)IEEE 802.15.4標(biāo)準(zhǔn)的ZigBee協(xié)議,定義了一套幀格式對(duì)數(shù)據(jù)進(jìn)行傳輸。
1)查詢幀:作用是把終端節(jié)點(diǎn)傳感器采集的數(shù)據(jù)通過規(guī)定的格式進(jìn)行封裝打包發(fā)送到協(xié)調(diào)器上,協(xié)調(diào)器根據(jù)這個(gè)協(xié)議格式對(duì)數(shù)據(jù)進(jìn)行識(shí)別拆封,具體的接收目標(biāo)是由這種幀結(jié)構(gòu)組成的,“目標(biāo)地址”的具體格式如表1所示。
表1 查詢幀格式
2)控制幀:作用是根據(jù)這個(gè)標(biāo)準(zhǔn)控制指令通過協(xié)調(diào)器將數(shù)據(jù)封裝打包發(fā)送給終端節(jié)點(diǎn),終端節(jié)點(diǎn)根據(jù)幀標(biāo)準(zhǔn)對(duì)指令進(jìn)行識(shí)別,具體格式如表2所示。
表2 控制幀格式
3)返回幀:作用是將無線模塊網(wǎng)絡(luò)的運(yùn)行情況反饋給自身的串口上的外設(shè),具體格式如表3所示。
表3 返回幀格式
以溫濕度傳感器返回幀為例,在ZigBee模塊的數(shù)據(jù)幀基礎(chǔ)上,進(jìn)行修改,幀長為6字節(jié),其中ZigBee模塊數(shù)據(jù)類型1字節(jié),目的地址為2字節(jié),數(shù)據(jù)長度為1字節(jié),數(shù)據(jù)為2字節(jié)分別為溫度和濕度值,校驗(yàn)為1字節(jié)。協(xié)調(diào)器對(duì)接收到的數(shù)據(jù)進(jìn)行驗(yàn)證,返回0x00表示接收到的數(shù)據(jù)是正確的,返回0x01表示當(dāng)前接收到的數(shù)據(jù)是錯(cuò)誤的。當(dāng)接收到的數(shù)據(jù)是錯(cuò)誤的,協(xié)調(diào)器重新發(fā)送查詢指令給溫濕度采集結(jié)點(diǎn),直到接收到正確的溫濕度值或都達(dá)到最大查詢次數(shù)為止。
面向智慧教室的物聯(lián)網(wǎng)云平臺(tái)是將軟件和硬件相結(jié)合的復(fù)雜體系。硬件設(shè)備有各種各樣的種類。不同設(shè)備之間的通信協(xié)議標(biāo)準(zhǔn)不同。一些設(shè)備采用串行通信協(xié)議,一些設(shè)備使用HTTP通信協(xié)議。這些通信協(xié)議的不同標(biāo)準(zhǔn)導(dǎo)致傳輸數(shù)據(jù)結(jié)構(gòu)的混亂,不能統(tǒng)一使用且不利于軟件系統(tǒng)的升級(jí)和維護(hù)以及硬件系統(tǒng)的擴(kuò)展。因此,在本文中建立智慧教室網(wǎng)關(guān)系統(tǒng)的通信協(xié)議標(biāo)準(zhǔn)非常重要。
設(shè)置ZigBee與WiFi連接的通信協(xié)議,適用于本文智慧教室系統(tǒng)中的ZigBee網(wǎng)關(guān)和相關(guān)設(shè)備的控制,以及系統(tǒng)連接,實(shí)現(xiàn)數(shù)據(jù)在ZigBee網(wǎng)絡(luò)和網(wǎng)關(guān)服務(wù)器以及外部Internet的信息傳輸。協(xié)議中包含串口控制協(xié)議以及TCP/TP協(xié)議棧的數(shù)據(jù)封裝結(jié)構(gòu)體。串口控制協(xié)議為用戶提供了對(duì)WiFi模塊的控制訪問通道,用戶可以通過串口實(shí)現(xiàn)ZigBee模塊和管理系統(tǒng)的數(shù)據(jù)通信,完成數(shù)據(jù)的傳遞,參數(shù)的修改等。
在智慧教室系統(tǒng)中,由一個(gè)ZigBee協(xié)調(diào)器管理節(jié)點(diǎn)和若干個(gè)ZigBee終端設(shè)備節(jié)點(diǎn)組成,協(xié)調(diào)器節(jié)點(diǎn)與上位機(jī)的軟件管理系統(tǒng)通過WiFi進(jìn)行通信,協(xié)調(diào)器與WiFi通過串口通信,協(xié)調(diào)器每完成一個(gè)周期的數(shù)據(jù)查詢后把數(shù)據(jù)進(jìn)行封裝,然后使用AT(Attention)指令把數(shù)據(jù)通過串口發(fā)送到WiFi模塊,WiFi模塊再通過TCP/IP協(xié)議把數(shù)據(jù)發(fā)送給管理系統(tǒng)。
首先初始化系統(tǒng)的各個(gè)功能設(shè)備,配置協(xié)議參數(shù),ZigBee協(xié)調(diào)器與WiFi模塊通過串口協(xié)議相連接,對(duì)串口進(jìn)行初始化,檢查設(shè)計(jì)的數(shù)據(jù)幀格式是否正確,然后根據(jù)預(yù)設(shè)的參數(shù)將WiFi模塊加入WiFi網(wǎng)絡(luò),通過TCP/IP協(xié)議,將數(shù)據(jù)上傳到服務(wù)器端。
各模塊傳遞數(shù)據(jù)的數(shù)據(jù)包均以數(shù)據(jù)幀傳遞,設(shè)置的數(shù)據(jù)幀格式如表4所示。
表4 WiFi模塊通信數(shù)據(jù)幀格式
根據(jù)數(shù)據(jù)協(xié)議:以“0x5775”作為目標(biāo)地址,即數(shù)據(jù)要傳輸?shù)绞裁次恢茫灰浴?x51”為數(shù)據(jù)上傳指令,用一個(gè)字節(jié)存儲(chǔ)上傳數(shù)據(jù)的長度,用一個(gè)字節(jié)存儲(chǔ)溫度值,用一個(gè)字節(jié)存儲(chǔ)煙霧濃度值。
智慧教室的數(shù)據(jù)采集模塊設(shè)計(jì)主要工作是選擇合適的傳感器,連接通用的ZigBee核心板擴(kuò)展接口實(shí)現(xiàn)教室內(nèi)各種環(huán)境指數(shù)的采集,包括對(duì)溫濕度采集、光照度采集、煙霧濃度采集、人員存在情況采集等,最終確定選用DHT11溫濕度傳感器。溫濕度傳感器電路連接原理圖如圖2所示。
圖2 溫濕度傳感器電路連接原理
溫濕度傳感器接口1是接3.3V電源,接口2是IO口的輸出,與ZigBee的IO口連接,實(shí)現(xiàn)溫濕度的讀取,接口3是連接地線。
用于教室內(nèi)光照度環(huán)境監(jiān)測的傳感器電源部分采用3.3V供電,數(shù)據(jù)端口連接CC2530芯片的P0_5接口,光敏電阻電路連接原理圖如圖3所示。
圖3 光敏電阻電路連接原理圖
光敏電阻傳感器接口1是接3.3V電源,接口3是IO口的輸出,與ZigBee的IO口連接,實(shí)現(xiàn)光照度的讀取,接口2是連接地線。
教室內(nèi)安裝煙霧傳感器主要目的是通過傳感器檢測室內(nèi)的煙霧濃度,并通過模擬端口輸出電壓值??刂破魍ㄟ^外部端口讀取到的AD值并上傳到管理系統(tǒng)。管理系統(tǒng)根據(jù)設(shè)定的域值來判斷教室內(nèi)煙霧濃度是否超過警戒值。系統(tǒng)通過一系列控制算法,對(duì)此情況做出判斷,反饋給用戶,同時(shí)控制教室內(nèi)設(shè)備,發(fā)出報(bào)警。煙霧采集模塊電路圖如圖4所示。
圖4 煙霧采集模塊電路圖
煙霧傳感器接口1是接5V電源,接口3是IO口的輸出,與ZigBee的IO口連接,實(shí)現(xiàn)煙霧濃度的讀取,接口2是連接地線。
人體紅外感應(yīng)模塊功能特點(diǎn):當(dāng)人員進(jìn)入感知范圍,大約7m左右,就會(huì)輸出高電平信號(hào),離開其感知范圍就會(huì)自動(dòng)延時(shí)關(guān)閉,輸出低電平。該設(shè)備的工作電壓范圍是4.5V~20V。功耗相對(duì)比較低,非常適合現(xiàn)在的鋰電池供電。根據(jù)其特點(diǎn),人體紅外感應(yīng)模塊電路圖如圖5所示。
圖5 人體紅外感應(yīng)模塊電路圖
人體紅外感應(yīng)傳感器接口1是接5V電源,接口2是IO口的輸出,與ZigBee的IO口連接,實(shí)現(xiàn)人員數(shù)的讀取,接口3是連接地線。
本文對(duì)智慧教室物聯(lián)網(wǎng)云平臺(tái)的感知層和網(wǎng)絡(luò)層進(jìn)行了設(shè)計(jì)與實(shí)現(xiàn),完成了終端節(jié)點(diǎn)采集模塊的電路圖設(shè)計(jì)和模塊的選型,規(guī)范了ZigBee組網(wǎng)的數(shù)據(jù)幀格式和WiFi模塊的數(shù)據(jù)幀格式,通過程序燒錄實(shí)現(xiàn)了終端模塊的感知功能、ZigBee網(wǎng)絡(luò)進(jìn)行數(shù)據(jù)的傳遞,為下一步與面向智慧教室的軟件云平臺(tái)系統(tǒng)連接奠定網(wǎng)絡(luò)基礎(chǔ)。