文獻(xiàn)標(biāo)識(shí)碼:A
DOI: 10.19358/j.issn.2096-5133.2018.08.021
中文引用格式:陳科,蘇魯陽(yáng),楊筆鋒.基于ZigBee的教學(xué)應(yīng)答系統(tǒng)軟件設(shè)計(jì)[J].信息技術(shù)與網(wǎng)絡(luò)安全,2018,37(8):91-95.
基于ZigBee的教學(xué)應(yīng)答系統(tǒng)軟件設(shè)計(jì)
摘要:隨著我國(guó)高校教育的不斷普及,大學(xué)生數(shù)量雖然激增,但是課堂學(xué)習(xí)氛圍淡薄,甚至有逃課情況。這些現(xiàn)象嚴(yán)重影響著高校教師的教學(xué)計(jì)劃以及對(duì)學(xué)生素質(zhì)的培養(yǎng)。基于ZigBee 平臺(tái),設(shè)計(jì)了一套師生課堂應(yīng)答系統(tǒng),并重點(diǎn)闡述其軟件設(shè)計(jì)。采用指紋識(shí)別替代傳統(tǒng)的簽到流程,加入副協(xié)調(diào)器以解決主協(xié)調(diào)器異常情況,利用Z-stack協(xié)議棧解決不同教室間誤組網(wǎng)問(wèn)題,并讓學(xué)生能換一種方式對(duì)教學(xué)計(jì)劃進(jìn)行反饋。學(xué)生可利用硬件模塊上的液晶屏和按鍵無(wú)線傳遞問(wèn)題答題或表決信息,這使得師生間的交互變得更加方便與靈活。
關(guān)鍵詞:
Abstract:
Key words:
0 引言
近些年,對(duì)于不少在校大學(xué)生而言,度過(guò)了高考大關(guān),似乎已經(jīng)厭倦了課堂學(xué)習(xí)和思考問(wèn)題。即使是一名優(yōu)秀的高校教師也難以徹底擺脫課堂的沉悶氣氛。如何讓更多人參與到知識(shí)探索中成為當(dāng)前高校教育面臨的一個(gè)問(wèn)題。教師的教學(xué)水平對(duì)課堂固然有一定影響,但是恰當(dāng)?shù)亩嗝襟w支持能讓課堂更具有活力。
本文基于ZigBee以及Z-stack協(xié)議棧對(duì)協(xié)調(diào)器、終端節(jié)點(diǎn)、路由器進(jìn)行了程序設(shè)計(jì),設(shè)計(jì)了一套應(yīng)答系統(tǒng)。將整個(gè)ZigBee網(wǎng)絡(luò)的協(xié)調(diào)器作為教師端模塊,用于建立網(wǎng)絡(luò)、引導(dǎo)其他模塊加入網(wǎng)絡(luò)以及管理學(xué)生端,并通過(guò)串口與上位機(jī)進(jìn)行交互操作;將ZigBee網(wǎng)絡(luò)的終端節(jié)點(diǎn)作為學(xué)生端,無(wú)線發(fā)送來(lái)自學(xué)生的輸入信息,無(wú)線接收來(lái)自教師端的信息;將ZigBee網(wǎng)絡(luò)的兩個(gè)路由器分別作為指紋識(shí)別模塊以及副協(xié)調(diào)器,前者傳輸指紋信息,后者接收來(lái)自主協(xié)調(diào)器的狀態(tài)信息,當(dāng)主協(xié)調(diào)器異常時(shí),副協(xié)調(diào)器將對(duì)其進(jìn)行替換,保證系統(tǒng)穩(wěn)定。上位機(jī)同步來(lái)自服務(wù)器的課程信息,對(duì)各個(gè)終端節(jié)點(diǎn)進(jìn)行組網(wǎng)配置,避免教室之間的錯(cuò)誤入網(wǎng)現(xiàn)象。
1 系統(tǒng)整體流程
系統(tǒng)整體流程如圖1所示,每間教室都有一個(gè)主協(xié)調(diào)器用于搭建網(wǎng)絡(luò)并與上位機(jī)進(jìn)行通信,備份協(xié)調(diào)器用于異常處理[1]。當(dāng)一堂課快要開(kāi)始時(shí),教師登錄上位機(jī)軟件,學(xué)生進(jìn)入教室,并通過(guò)指紋模塊進(jìn)行簽到。在學(xué)生簽到后,指紋ID信息通過(guò)無(wú)線發(fā)送給協(xié)調(diào)器。協(xié)調(diào)器接收到指紋ID后,通過(guò)串口反饋給上位機(jī)[2]。上位機(jī)軟件會(huì)顯示學(xué)生的實(shí)時(shí)簽到信息。
簽到完成后,學(xué)生用學(xué)生端模塊,在確保成功連入ZigBee網(wǎng)絡(luò)的情況下,用學(xué)號(hào)進(jìn)行登錄。上位機(jī)對(duì)登錄信息進(jìn)行識(shí)別,若發(fā)現(xiàn)輸入有誤或者這堂課上沒(méi)有該生信息,立即反饋給學(xué)生端錯(cuò)誤信息,并不予登錄;反之,學(xué)生端模塊將進(jìn)入答題界面,準(zhǔn)備答題或是表決。
當(dāng)課程結(jié)束時(shí),上位機(jī)軟件下達(dá)下課指令,所有終端節(jié)點(diǎn)切換自身的個(gè)域網(wǎng)地址并重啟,為下一堂課做好準(zhǔn)備。
2 Z-stack協(xié)議棧流程
TI的Z-Stack協(xié)議棧從總體上來(lái)看主要由三部分組成:硬件抽象層(Hardware Abstraction Layer,HAL)、操作系統(tǒng)抽象層(Operating System Abstraction Layer,OSAL)和ZigBee協(xié)議各層。
在整個(gè)Z-Stack系統(tǒng)運(yùn)行時(shí),主函數(shù)主要完成兩個(gè)任務(wù)。其一,整個(gè)系統(tǒng)的初始化,其中涉及HAL中各個(gè)硬件模塊的初始化;其二,系統(tǒng)進(jìn)行網(wǎng)絡(luò)配置和任務(wù)優(yōu)先級(jí)的劃分。
圖2所示為系統(tǒng)啟動(dòng)流程,首先屏蔽所有中斷,在經(jīng)歷底板、IO、硬件驅(qū)動(dòng)、非易失存儲(chǔ)器等硬件相關(guān)的初始化后,通過(guò)OSAL的初始化函數(shù)進(jìn)行系統(tǒng)初始化操作,這包括存儲(chǔ)器、定時(shí)器等;之后通過(guò)任務(wù)初始化函數(shù)進(jìn)行網(wǎng)絡(luò)配置和任務(wù)分級(jí),并對(duì)系統(tǒng)任務(wù)和用戶任務(wù)進(jìn)行初始化操作[3];最后通過(guò)OSAL啟動(dòng)函數(shù)進(jìn)入輪詢狀態(tài),不停地監(jiān)聽(tīng)任務(wù)事件的觸發(fā),并跳轉(zhuǎn)至任務(wù)執(zhí)行函數(shù)。所有用戶想觸發(fā)的事件必須要注冊(cè)登記,以此綁定事件與用戶任務(wù),這樣當(dāng)事件觸發(fā)時(shí),比如按鍵按下時(shí),系統(tǒng)才能從輪詢中正常跳轉(zhuǎn)至用戶的執(zhí)行函數(shù)[4]。
3 系統(tǒng)軟件設(shè)計(jì)
整個(gè)系統(tǒng)的軟件部分包括上位機(jī)、協(xié)調(diào)器、路由器以及各個(gè)終端節(jié)點(diǎn)的程序設(shè)計(jì)[5]。本文主要在ZigBee2007版協(xié)議棧的基礎(chǔ)上對(duì)后三者的流程進(jìn)行講解,對(duì)其中涉及的液晶屏、按鍵、指紋傳感器等模塊只做簡(jiǎn)略介紹,并不深究其控制代碼。
3.1 協(xié)調(diào)器程序設(shè)計(jì)
為了方便管理,本系統(tǒng)對(duì)每一個(gè)設(shè)備設(shè)置了一個(gè)8位ID,協(xié)調(diào)器設(shè)置為0x00[6]。整個(gè)軟件流程如圖3所示,協(xié)調(diào)器上電后,在完成協(xié)議棧的各項(xiàng)底層初始化操作后,開(kāi)始組建網(wǎng)絡(luò)[7]。主協(xié)調(diào)器搭建起了整個(gè)網(wǎng)絡(luò),以2.4 GHz作為此方案的通信頻段,選用16號(hào)信道,引入節(jié)點(diǎn)和路由器,構(gòu)建樹(shù)型網(wǎng)絡(luò)。2.4 GHz頻段下,在一個(gè)教室內(nèi)部進(jìn)行無(wú)線通信,其通信質(zhì)量是可以得到保證的[8]。
之后,系統(tǒng)進(jìn)行所需模塊的初始化,主要有以下3點(diǎn):
(1)完成液晶屏的初始化界面顯示。協(xié)調(diào)器現(xiàn)階段幾乎不會(huì)用液晶屏和按鍵,因此對(duì)于協(xié)調(diào)器而言,液晶屏目前僅僅為其顯示連接狀態(tài),按鍵也僅僅留出硬件接口,以便后續(xù)功能補(bǔ)充。
(2)進(jìn)行端點(diǎn)描述、地址類型結(jié)構(gòu)體的參數(shù)配置。對(duì)于端點(diǎn),一個(gè)設(shè)備上可以擁有多個(gè)端點(diǎn),它的作用主要是將不同的無(wú)線任務(wù)進(jìn)行分類。當(dāng)某個(gè)設(shè)備在接收數(shù)據(jù)包時(shí),首先匹配短地址,成功后再由底層解析并分發(fā)給對(duì)應(yīng)端點(diǎn),如端點(diǎn)不匹配則直接丟棄。在本項(xiàng)目中,所有設(shè)備的端點(diǎn)號(hào)都設(shè)為8。
而地址類型結(jié)構(gòu)體,即afAddrType_t,是對(duì)端點(diǎn)、目的地址、發(fā)送模式、個(gè)域網(wǎng)地址的一種包裝。在配置好這樣一個(gè)結(jié)構(gòu)體之后,用戶在使用無(wú)線傳輸函數(shù)進(jìn)行無(wú)線數(shù)據(jù)發(fā)送時(shí),可以很方便地調(diào)用。為了讓整個(gè)網(wǎng)絡(luò)的無(wú)線傳輸數(shù)據(jù)分類更加清楚,本項(xiàng)目定義了三個(gè)這樣的結(jié)構(gòu)體,對(duì)應(yīng)三種傳輸情況,協(xié)調(diào)器用到了兩種:廣播(教師端向所有學(xué)生端發(fā)送信息,便于題目的下達(dá))和單播(教師端向單個(gè)學(xué)生端發(fā)消息,便于單獨(dú)抽問(wèn))。
(3)進(jìn)行串口的初始化與注冊(cè)。對(duì)于串口,本項(xiàng)目利用協(xié)議棧中的調(diào)試層,對(duì)串口進(jìn)行簡(jiǎn)單快捷的處理。因?yàn)檎{(diào)試層中有許多調(diào)試接口能與各層進(jìn)行直接通信,利用串口,聯(lián)系上位機(jī)與用戶任務(wù)顯得更加方便。
在完成初始化之后,系統(tǒng)將進(jìn)行輪詢狀態(tài)。但本項(xiàng)目中加入了定時(shí)觸發(fā)事件,主協(xié)調(diào)器將對(duì)副協(xié)調(diào)器定時(shí)每10 s發(fā)送一次狀態(tài)信息,當(dāng)副協(xié)調(diào)器連續(xù)3次未收到數(shù)據(jù)時(shí),系統(tǒng)將認(rèn)為主協(xié)調(diào)器工作狀態(tài)異常,副協(xié)調(diào)器將執(zhí)行切換操作。
如果系統(tǒng)收到無(wú)線數(shù)據(jù),也將跳轉(zhuǎn)執(zhí)行函數(shù),并根據(jù)預(yù)先設(shè)置好的幀標(biāo)志位,判別接收信息的類別,然后對(duì)信息進(jìn)行加工,并通過(guò)串口向上位機(jī)上傳;同理,如果收到來(lái)自上位機(jī)的串口信息,也將判別指令類型,然后再控制各個(gè)學(xué)生端進(jìn)行操作[9]。
具體而言,上位機(jī)通過(guò)云端同步更新上課信息和指令信息。如圖3所示,上位機(jī)目前有7種命令格式傳遞給協(xié)調(diào)器,協(xié)調(diào)器接收3種來(lái)自其他節(jié)點(diǎn)的信息。
在提問(wèn)環(huán)節(jié)中,上位機(jī)目前支持的操作大致為:允許答題、禁止答題、單獨(dú)抽問(wèn)、隨機(jī)分組、開(kāi)啟答題倒計(jì)時(shí),基本滿足課堂應(yīng)答的所需。
登錄認(rèn)證是為了對(duì)學(xué)生端的登錄信息進(jìn)行校對(duì)并及時(shí)反饋。
下課指令不僅為了清除當(dāng)前課堂的殘留數(shù)據(jù),也更新了學(xué)生端的內(nèi)在組網(wǎng)配置,為下一次連接做準(zhǔn)備,避免設(shè)備錯(cuò)誤入網(wǎng)。
3.2 節(jié)點(diǎn)程序設(shè)計(jì)
與協(xié)調(diào)器一樣,為了方便管理,對(duì)每一個(gè)終端節(jié)點(diǎn)設(shè)置了一個(gè)8位ID,從0x01開(kāi)始命名,最大0xfd。整個(gè)節(jié)點(diǎn)軟件流程如圖4所示,節(jié)點(diǎn)上電后,在完成協(xié)議棧的各項(xiàng)底層初始化操作后,開(kāi)始根據(jù)當(dāng)前個(gè)域網(wǎng)地址值搜索網(wǎng)絡(luò)并加入,同時(shí)初始化用戶任務(wù)函數(shù)。之后,節(jié)點(diǎn)將進(jìn)行重連檢測(cè)。若在之前設(shè)備未登錄,則進(jìn)行正常的登錄操作,進(jìn)入答題界面答題并準(zhǔn)備執(zhí)行教師端所發(fā)指示;若在之前設(shè)備異常斷電,則將跳過(guò)登錄操作,并恢復(fù)一些數(shù)據(jù)。
節(jié)點(diǎn)上主要使用的兩個(gè)硬件模塊是液晶屏和矩陣鍵盤(pán)。液晶屏采用SPI接口接入?yún)f(xié)議棧,將一直引導(dǎo)用戶進(jìn)行相應(yīng)的操作。協(xié)議棧本身針對(duì)幾個(gè)獨(dú)立按鍵進(jìn)行了定義,本設(shè)計(jì)用到了其中兩個(gè)獨(dú)立按鍵,其中一個(gè)作為整個(gè)矩陣鍵盤(pán)的掃描啟動(dòng)開(kāi)關(guān),學(xué)生在輸入前需要先按下此鍵才能正常輸入;另外一個(gè)則作為手動(dòng)復(fù)位的按鈕,按下后,可以清除所有信息,包括Flash中保存的內(nèi)容。但根據(jù)項(xiàng)目的需求,硬件上又加入了4×4矩陣鍵盤(pán),占用P1口共8個(gè)端口,支持16種字符的輸入,包括:0~9十個(gè)數(shù)字,A~D四個(gè)字母,*和#兩個(gè)功能按鍵。
3.2.1 重連檢測(cè)
在初始化完成后,實(shí)際上因節(jié)點(diǎn)設(shè)備入網(wǎng)狀態(tài)的變化(從未組網(wǎng)變?yōu)榻K端節(jié)點(diǎn)),系統(tǒng)將退出輪詢?nèi)ヌ幚韴?zhí)行函數(shù)。系統(tǒng)判定入網(wǎng)設(shè)備的類型,如果是終端節(jié)點(diǎn),則會(huì)進(jìn)行重連檢測(cè)。具體而言,用接口函數(shù)讀取Flash中的重連標(biāo)志位。
如果其值為1,則表示該設(shè)備之前已入網(wǎng),需進(jìn)行界面恢復(fù)。該設(shè)備將恢復(fù)到之前答題界面,并且讀取Flash,然后將分組信息、倒計(jì)時(shí)信息也復(fù)原;如果其值為0,則表示上次是正常斷電。系統(tǒng)將進(jìn)行正常登錄操作,等待學(xué)生信息的錄入。
3.2.2 顯示界面
主要設(shè)計(jì)的界面是登錄界面和答題界面,當(dāng)然還有一些其他反饋界面。
在登錄界面,本項(xiàng)目需要學(xué)生首先按下矩陣鍵盤(pán)的啟動(dòng)按鍵,再通過(guò)矩陣鍵盤(pán)輸入自己10位學(xué)號(hào)信息,以*鍵作為退格鍵,#鍵作為確認(rèn)鍵。發(fā)送后,等待協(xié)調(diào)器進(jìn)行認(rèn)證反饋。認(rèn)證成功,則液晶屏顯示“登錄成功”,進(jìn)入答題頁(yè)面;反之,則液晶屏顯示“登錄失敗”,重新進(jìn)入登錄頁(yè)面。為防止誤發(fā)送,在軟件后臺(tái)進(jìn)行了發(fā)送限制,當(dāng)輸入位數(shù)少于10位或包含其他字符,#鍵將失效。
在答題界面,節(jié)點(diǎn)將向協(xié)調(diào)器發(fā)送答題信息。但首先需要接收來(lái)自協(xié)調(diào)器的答題指令,當(dāng)節(jié)點(diǎn)收到允許答題指令時(shí),節(jié)點(diǎn)內(nèi)置的答題開(kāi)關(guān)(一個(gè)布爾型的變量)將開(kāi)啟;同理,當(dāng)收到停止答題指令時(shí),此開(kāi)關(guān)將關(guān)閉。用戶需要在這段時(shí)間內(nèi)根據(jù)投影儀或PPT所示的題目,鍵入答案并發(fā)送。這是節(jié)點(diǎn)最主要也是最基本的輸入界面,答案長(zhǎng)度最大16個(gè)字符。
3.2.3 其他指令的操作
除了允許答題和關(guān)閉答題這兩個(gè)基本操作外,系統(tǒng)還有其他指令。
當(dāng)協(xié)調(diào)器收到上位機(jī)的隨機(jī)抽問(wèn)命令,則會(huì)隨機(jī)開(kāi)啟某一個(gè)節(jié)點(diǎn)答題開(kāi)關(guān),讓其答題。當(dāng)然,這個(gè)過(guò)程會(huì)有相應(yīng)的蜂鳴器和LED閃爍進(jìn)行提醒。
隨機(jī)分組指令讓所有在場(chǎng)學(xué)生平均并且隨機(jī)地分成幾個(gè)小組,小組編號(hào)將在節(jié)點(diǎn)的答題界面上進(jìn)行顯示。
開(kāi)啟倒計(jì)時(shí)是讓答題者在限定時(shí)間內(nèi)答題,時(shí)間一到,節(jié)點(diǎn)便會(huì)停止作答,倒計(jì)時(shí)也將顯示在節(jié)點(diǎn)的液晶屏上。倒計(jì)時(shí)功能采用協(xié)議棧的事件定時(shí)觸發(fā)函數(shù)進(jìn)行操作,時(shí)間參數(shù)為1 000,即1 s觸發(fā)一次,事件每次觸發(fā)將更新液晶屏上的顯示時(shí)間,基本實(shí)現(xiàn)了時(shí)間同步。
對(duì)于下課指令,上位機(jī)可以向云端同步信息,從而得知班級(jí)下一個(gè)上課地點(diǎn)的網(wǎng)絡(luò)地址。這樣上位機(jī)就可以通過(guò)協(xié)調(diào)器控制所有節(jié)點(diǎn)軟切換其網(wǎng)絡(luò)配置,從而達(dá)到切換教室的效果,避免教室之間可能出現(xiàn)的誤組網(wǎng)問(wèn)題[10]。
其具體切換流程為:各個(gè)節(jié)點(diǎn)從協(xié)調(diào)器獲取到新的網(wǎng)絡(luò)地址,然后調(diào)用接口函數(shù)寫(xiě)入并更新自身的網(wǎng)絡(luò)地址,再清空重連標(biāo)志位和分組信息,避免再次鏈接時(shí)出現(xiàn)問(wèn)題,最后進(jìn)行軟件重啟。
3.3 路由器軟件設(shè)計(jì)
在本設(shè)計(jì)中,路由器充當(dāng)兩個(gè)重要模塊,自定義的8位ID分別是0xfe和0xff。下面分別講解這兩個(gè)模塊。
3.3.1 副協(xié)調(diào)器軟件流程
副協(xié)調(diào)器要想替換主協(xié)調(diào)器,自動(dòng)組建和維持ZigBee網(wǎng)絡(luò),并讓之前網(wǎng)絡(luò)中的其他節(jié)點(diǎn)繼續(xù)工作,必須復(fù)制網(wǎng)絡(luò)的關(guān)鍵參數(shù),這些參數(shù)包括個(gè)域網(wǎng)地址、信道信息和網(wǎng)絡(luò)鄰居表。其中個(gè)域網(wǎng)地址和信道信息相對(duì)簡(jiǎn)單,為了讓網(wǎng)絡(luò)鄰居表也簡(jiǎn)單一些,此項(xiàng)目中副協(xié)調(diào)器將不引導(dǎo)其他節(jié)點(diǎn)加入網(wǎng)絡(luò)。
由于副協(xié)調(diào)器一開(kāi)始就和主協(xié)調(diào)器在一個(gè)網(wǎng)絡(luò)中,因此個(gè)域網(wǎng)地址和信道與主協(xié)調(diào)器一樣,不用處理。主協(xié)調(diào)器定時(shí)向副協(xié)調(diào)器發(fā)送狀態(tài)信息。實(shí)際上,這個(gè)信息就是主協(xié)調(diào)器通過(guò)系統(tǒng)接口函數(shù)獲取到的鄰居表,經(jīng)過(guò)包裝之后得到的信息幀。副協(xié)調(diào)器將該信息存儲(chǔ)在Flash中,一旦發(fā)生異常,則將Flash中存儲(chǔ)的設(shè)備間關(guān)系信息通過(guò)內(nèi)置函數(shù)進(jìn)行恢復(fù),用副協(xié)調(diào)器重新啟動(dòng)網(wǎng)絡(luò)。
如圖5所示,副協(xié)調(diào)器在進(jìn)行一系列初始化后進(jìn)入輪詢。正常情況下只需要接收狀態(tài)信息,并且計(jì)算與上一次接收的時(shí)間差。若超過(guò)30 s未收到數(shù)據(jù),則進(jìn)行協(xié)調(diào)器的切換。
3.3.2 指紋模塊軟件流程
本項(xiàng)目通過(guò)串口將指紋傳感器和ZigBee模塊聯(lián)系起來(lái),組成一個(gè)指紋采集模塊[11]。
指紋錄入時(shí),ZigBee模塊發(fā)送讀取圖像指令,然后傳感器開(kāi)始讀取檢測(cè)到的指紋圖像,一段延時(shí)之后,再發(fā)送生成指紋特征指令,傳感器進(jìn)而將生成指紋特征。二次錄入時(shí),也將生成一個(gè)指紋特征。接著ZigBee模塊發(fā)送模板特征比對(duì)指令。如果比對(duì)成功,則生成指紋模板,分配ID并存儲(chǔ);若失敗則重新錄入。
檢測(cè)指紋時(shí),與指紋錄入時(shí)一樣。ZigBee模塊同樣需要發(fā)送讀取圖像指令和生成指紋特征指令,從而獲取指紋特征。ZigBee模塊發(fā)送搜索指紋圖像指令。若比對(duì)成功,則向協(xié)調(diào)器發(fā)送指紋ID;若失敗,則重新錄入。
在上課之前,ZigBee模塊通過(guò)云端同步學(xué)生的指紋信息,并對(duì)指紋庫(kù)進(jìn)行更新。所以當(dāng)學(xué)生進(jìn)行簽到時(shí),只需比對(duì)相應(yīng)信息,若比對(duì)成功,將無(wú)線發(fā)送特征指令。
如圖6所示,指紋模塊也需要加入到整個(gè)網(wǎng)絡(luò),所以也要初始化協(xié)議棧。之后,模塊等待學(xué)生的指紋錄入,當(dāng)檢測(cè)到指紋圖像時(shí),向傳感器獲取指紋特征。與庫(kù)信息進(jìn)行比對(duì)后,獲得其指紋ID,無(wú)線轉(zhuǎn)發(fā)給協(xié)調(diào)器,等待下一次的指紋簽到。
4 結(jié)論
本文基于ZigBee設(shè)計(jì)了一套教學(xué)應(yīng)答系統(tǒng),主要說(shuō)明了其中ZigBee軟件部分,對(duì)其中多個(gè)模塊的運(yùn)作進(jìn)行了分析。目前該系統(tǒng)已有一些基本功能,能夠基本滿足課堂需求。在實(shí)際使用中,上位機(jī)與協(xié)調(diào)器的通信無(wú)異常,能夠正常收發(fā)指令。各個(gè)教室內(nèi)的ZigBee網(wǎng)絡(luò)通信順暢,且沒(méi)有錯(cuò)誤入網(wǎng)現(xiàn)象。對(duì)于后續(xù)的擴(kuò)展,可以考慮從手機(jī)入手,讓手機(jī)與云端相連,從而在課下為學(xué)生提供查漏補(bǔ)缺的機(jī)會(huì)。
參考文獻(xiàn)
[1] 楊小來(lái). 基于ZigBee技術(shù)的家居智能化環(huán)境狀態(tài)數(shù)據(jù)檢測(cè)系統(tǒng)設(shè)計(jì)[J]. 通訊世界, 2015(23):263.
[2] 姚遠(yuǎn), 唐亞華. 基于C#的OTP存儲(chǔ)器燒錄器上位機(jī)軟件的設(shè)計(jì)與實(shí)現(xiàn)[J]. 電子設(shè)計(jì)工程, 2016, 24(13):30-33.
[3] 劉蘊(yùn). LED智能照明控制系統(tǒng)的研究與設(shè)計(jì)[D]. 西安:陜西科技大學(xué), 2013.
[4] 曾寶國(guó). Z-STACK協(xié)議棧應(yīng)用開(kāi)發(fā)分析[J]. 物聯(lián)網(wǎng)技術(shù), 2011(3):71-73.
[5] 孫九瑞, 孫曉晨. 基于ZigBee的圖書(shū)館環(huán)境監(jiān)控系統(tǒng)設(shè)計(jì)[J]. 應(yīng)用科技, 2015,42(3):49-54.
[6] 崔妮. 基于無(wú)線傳感器網(wǎng)絡(luò)的采煤機(jī)狀態(tài)監(jiān)測(cè)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D]. 太原:中北大學(xué), 2016.
[7] 張久強(qiáng), 施仁政, 陳遠(yuǎn)知. 基于ZigBee的WSN節(jié)點(diǎn)嵌入式軟件研究與開(kāi)發(fā)[C]// 全國(guó)信號(hào)和智能信息處理與應(yīng)用學(xué)術(shù)會(huì)議會(huì)刊, 2014.
[8] 王建風(fēng), 師曉紅. 城市軌道交通CBTC無(wú)線干擾及防護(hù)措施[J]. 城市建設(shè)理論研究(電子版), 2014(13): 12236-12238.
[9] 王超. 基于ZigBee技術(shù)的無(wú)縫鋼軌爬行監(jiān)測(cè)系統(tǒng)研究與設(shè)計(jì)[D]. 長(zhǎng)沙:中南大學(xué), 2014.
[10] 鐘小磊, 陳賾, 代祖浩,等. ZigBee自組網(wǎng)的網(wǎng)間串?dāng)_和通信解決方案[J]. 光通信研究, 2017(4):70-73.
[11] 喬磊. 基于ZigBee技術(shù)的無(wú)線點(diǎn)餐系統(tǒng)設(shè)計(jì)[J]. 現(xiàn)代電子技術(shù), 2011, 34(3):68-71.
(收稿日期:2018-03-19)
作者簡(jiǎn)介:
陳科(1993-),男,碩士研究生,主要研究方向:嵌入式單片機(jī)、氣象設(shè)備儀器。
蘇魯陽(yáng)(1992-),男,碩士研究生,主要研究方向:圖像拼接技術(shù)研究。
楊筆鋒(1980-),男,碩士,副教授,主要研究方向:氣象探測(cè)技術(shù)及應(yīng)用、信號(hào)獲取技術(shù)及應(yīng)用。