宋 昆
(建東職業(yè)技術(shù)學(xué)院,江蘇常州,213022)
基于Zigbee的無線打鈴系統(tǒng)設(shè)計(jì)
宋 昆
(建東職業(yè)技術(shù)學(xué)院,江蘇常州,213022)
本課題采用Zigbee模塊設(shè)計(jì)了一種無線打鈴系統(tǒng)。單片機(jī)通過時(shí)鐘芯片DS1302計(jì)時(shí)。打鈴時(shí)間到了控制Zigbee協(xié)調(diào)器模塊發(fā)送打鈴信息。Zigbee終端節(jié)點(diǎn)控制打鈴器工作。
Zigbee;單片機(jī);DS1302
電子打鈴器并不陌生。它使我們的生活變得很有規(guī)律,是學(xué)校作息實(shí)踐執(zhí)行不可或缺的工具。本課題設(shè)計(jì)一種基于Zigbee的無線控制打鈴系統(tǒng)。
Zigbee技術(shù)是一種具有統(tǒng)一技術(shù)標(biāo)準(zhǔn)的短距離無線通信技術(shù),它的工作頻段分為3個(gè)頻段,它們分別為868MHZ、915MHz 和2.4GHz。其中2.4GHz頻段上,分為16個(gè)信道,該頻段為全球通用的工業(yè)、科學(xué)、醫(yī)學(xué)頻段。在組網(wǎng)性能上,Zigbee設(shè)備可構(gòu)造為星型網(wǎng)絡(luò)或者點(diǎn)對點(diǎn)網(wǎng)絡(luò),在每一個(gè)Zigbee組成的無線網(wǎng)絡(luò)內(nèi),連接地址碼分為16bit短地址或者64bit長地址,可容納的最大設(shè)備個(gè)數(shù)分別為216個(gè)和264個(gè)。在無線通信技術(shù)上,采用免沖突多載波信道接入(CSMA-CA)方式,有效地避免了無線電載波之間的沖突。為保證Zigbee 設(shè)備之間通信數(shù)據(jù)的安全保密性,Zigbee技術(shù)采用了密鑰長度為128位的加密算法,對所傳輸?shù)臄?shù)據(jù)信息進(jìn)行加密處理。
在網(wǎng)絡(luò)中,為了完成通信,必須使用多層上的多種協(xié)議。這些協(xié)議按照層次順序組合在一起,構(gòu)成了協(xié)議棧(Protocol Stack)。本課題采用的是德州儀器(TI)公司的Zigbee 協(xié)議棧(Z-Stack)。
本系統(tǒng)主要分為三個(gè)部分。作息時(shí)間產(chǎn)生終端部分以單片機(jī)為控制單元,外圍有時(shí)鐘芯片DS1302,液晶屏、按鍵以及繼電器。打鈴信號發(fā)射終端部分是Zigbee協(xié)調(diào)器模塊。接收信號打鈴終端部分是Zigbee終端節(jié)點(diǎn),繼電器控制打鈴器。其工作原理是DS1302計(jì)時(shí),單片機(jī)采集時(shí)間,和打 本設(shè)計(jì)采用網(wǎng)蜂科技公司設(shè)計(jì)的Zigbee開發(fā)套件,其中的主控芯片是TI公司的CC2530。CC2530除了包括RF收發(fā)器外,還集成了加強(qiáng)型8051單片機(jī)、它具有2/64/128/256kB可編程閃存和8kB的RAM,以及ADC、看門狗等。CC2530可工作在2.4GHz頻段,采用低電壓(2.0~3.6V)供電,待機(jī)時(shí)電流消耗僅0.2μA,但靈敏度高達(dá)-91dBm、最大輸出為+0.6dBm、最大傳送速率為250 kbps。CC2530僅需添加少量的外圍元件就可以完成ZIGBEE通信功能的硬件實(shí)現(xiàn)。
本系統(tǒng)由三個(gè)部分組成:Zigbee協(xié)調(diào)器節(jié)點(diǎn)、Zigbee終端傳感器節(jié)點(diǎn)以及單片機(jī)控制模塊。Zigbee節(jié)點(diǎn)基本功能單元是處理器模塊,射頻模塊和電源模塊等三個(gè)部分,這個(gè)利用網(wǎng)蜂科技的CC2530核心板及功能底板組合構(gòu)成。傳感器節(jié)點(diǎn)采用繼電器模塊,控制打鈴器電源的通斷。單片機(jī)控制模塊接有DS1302電路,設(shè)置時(shí)間的按鍵,LCD1602液晶顯示屏以及一個(gè)繼電器。
圖1 無線打鈴系統(tǒng)框圖
程序設(shè)計(jì)是基于TI公司公布的協(xié)議棧ZStack,本設(shè)計(jì)采用的是ZStack-CC2530-2.4.0版本。用戶根據(jù)實(shí)際需要,在創(chuàng)建協(xié)調(diào)器和終端節(jié)點(diǎn)項(xiàng)目時(shí)在App用戶應(yīng)用層創(chuàng)建源文件編寫程序。其余功能要求由ZStack完成。
圖2 單片機(jī)控制電路實(shí)物
系統(tǒng)軟件設(shè)計(jì)主要包括單片機(jī)控制程序、協(xié)調(diào)器節(jié)點(diǎn)以及終端節(jié)點(diǎn)軟件設(shè)計(jì)。單片機(jī)控制程序主要是控制DS1302,顯示時(shí)間,作息時(shí)間比對以及控制繼電器開關(guān)。協(xié)調(diào)器節(jié)點(diǎn)將繼電器開關(guān)閉合作為按鍵輸入信號,控制發(fā)送無線命令。終端節(jié)點(diǎn)接收無線命令,控制打鈴器電源通斷。
4.1 單片機(jī)控制程序
按照建東學(xué)院作息時(shí)間表,在單片機(jī)主程序中設(shè)置作息數(shù)據(jù)組,分小時(shí)和分鐘,每組25個(gè)數(shù)據(jù),hour_DATA[25]和minute_DATA[25]。
讀取DS1302時(shí)間和數(shù)組進(jìn)行比對。每次打鈴時(shí)間是30S,需要兩次控制信號,一次開始,一次關(guān)閉,因此需要兩種時(shí)間。當(dāng)比對成功時(shí),控制繼電器開關(guān)閉合。
4.2 協(xié)調(diào)器模塊
協(xié)調(diào)器和終端節(jié)點(diǎn)之間采用組播形式。將單片機(jī)模塊中繼電器開關(guān)作為協(xié)調(diào)器輸入信號。調(diào)用按鍵狀態(tài)變化處理函數(shù)SampleApp_HandleKeys,判斷按鍵位置。當(dāng)繼電器開關(guān)動作時(shí),調(diào)用無線發(fā)送函數(shù)SampleApp_SendGroupMessage,發(fā)送控制命令。
4.3 終端節(jié)點(diǎn)模塊
終端節(jié)點(diǎn)無線接收協(xié)調(diào)器信息,調(diào)用SampleApp_ MessageMSGCB函數(shù)。針對輸入信號的類型進(jìn)行判斷,如果是組播數(shù)據(jù),繼電器所接IO口狀態(tài)取反。
本系統(tǒng)調(diào)試時(shí)采用的終端節(jié)點(diǎn)只有兩個(gè)。工作時(shí)首先給協(xié)調(diào)器通電,然后給終端節(jié)點(diǎn)及單片機(jī)模塊通電,組建網(wǎng)絡(luò)。調(diào)試時(shí)終端節(jié)點(diǎn)的打鈴器用音樂芯片電路代替。單片機(jī)電路板通過按鍵設(shè)置時(shí)間,然后開始具體實(shí)驗(yàn)測試。當(dāng)運(yùn)行時(shí)間達(dá)到作息時(shí)間時(shí),終端節(jié)點(diǎn)繼電器動作,音樂芯片電路通電,有音樂播放。30S后繼電器關(guān)閉,音樂停止。
經(jīng)過測試,系統(tǒng)軟硬件均工作正常,實(shí)現(xiàn)了需求中的絕大部分功能。Zigbee是一種低成本的無線通信技術(shù),有豐富而便捷的應(yīng)用。在無線打鈴系統(tǒng)中使用可以減少布線的困擾,通過自組網(wǎng),可以實(shí)現(xiàn)實(shí)時(shí)控制。
[1]高守瑋,吳燦陽.Zigbee技術(shù)實(shí)踐教程.北京:北京航空航天大學(xué)出版社,2009
[2]王小強(qiáng),歐陽駿,黃寧淋.Zigbee無線傳感器網(wǎng)絡(luò)設(shè)計(jì)與實(shí)現(xiàn).北京:化學(xué)工業(yè)出版社,2012
[3]楊居義.單片機(jī)課程設(shè)計(jì)實(shí)例教程.北京:清華大學(xué)出版社,2010
Design of wireless bell system based on Zigbee
Song Kun
(Jiandong College,Jiangsu Changzhou,213022)
The design of wireless bell system using Zigbee module. Single chip DS1302 clock chip. The bell time control Zigbee module to send bell information coordinator. Zigbee terminal node control ringer work.
Zigbee; single chip microcomputer; DS1302