楊凌
摘 要:文章設(shè)計(jì)了基于無(wú)線通信技術(shù)的人體傳感器系統(tǒng)的解決方案。介紹了基于CC2530的無(wú)線通信技術(shù),人體傳感器檢測(cè)與采集的系統(tǒng)構(gòu)架。該方案能夠?qū)崟r(shí)檢測(cè)人體,并將數(shù)據(jù)無(wú)線傳輸給主控器,最后將監(jiān)測(cè)結(jié)果通過(guò)上位機(jī)顯示出來(lái)。此外,可以根據(jù)實(shí)際需求構(gòu)建多個(gè)傳感器的采集與檢測(cè)系統(tǒng)。該方案功耗低、穩(wěn)定性高,能有效的實(shí)現(xiàn)對(duì)人體的檢測(cè)和監(jiān)控。
關(guān)鍵詞:無(wú)線通信;人體傳感器;CC2530
引言
由于信息化時(shí)代的來(lái)臨,快速地獲取準(zhǔn)確可靠的信息顯得格外重要,而傳感器技術(shù)的出現(xiàn)滿足了人們從外界獲取各種信息的需求。外界的信息可以被傳感器感知到,同時(shí)將該信息能被傳感器轉(zhuǎn)換成電信號(hào)或其他形式輸出[1],以方便人們對(duì)信息的掌控、管理、記錄、顯示等需求。目前,這項(xiàng)技術(shù)已被人們廣泛地應(yīng)用于各項(xiàng)領(lǐng)域,如:智能家居、農(nóng)業(yè)生產(chǎn)、環(huán)境監(jiān)管等。
人體傳感器,是傳感器中用途廣泛的檢測(cè)裝置之一,也稱為無(wú)觸點(diǎn)接近傳感器,屬于電子開(kāi)關(guān)量傳感器的一種[2]。它是通過(guò)檢測(cè)人體發(fā)出的紅外線而判斷是否有人通過(guò),并將結(jié)果轉(zhuǎn)換成電信號(hào)輸出的傳感器。人體傳感器廣泛地應(yīng)用于人們的生活中,如銀行、商場(chǎng)的自動(dòng)門(mén),博物館、金庫(kù)的防盜報(bào)警,樓道人體感應(yīng)自動(dòng)開(kāi)關(guān),統(tǒng)計(jì)旅客人數(shù)等。本文設(shè)計(jì)了人體傳感器采集、傳輸、顯示的傳感網(wǎng)絡(luò)。當(dāng)有人體通過(guò)時(shí),人體傳感器將采集到的信息轉(zhuǎn)換為高低電平的電信號(hào)輸出,通過(guò)無(wú)線傳輸將結(jié)果發(fā)送給上位機(jī)并顯示出來(lái)。
1 基于CC2530的無(wú)線通信技術(shù)
本文采用的是CC2530芯片,該芯片建立于IEEE 802.15.4 標(biāo)準(zhǔn)協(xié)議上[3]。CC2530芯片成本低廉,運(yùn)用多個(gè)CC2530便可以構(gòu)建起龐大的網(wǎng)絡(luò)節(jié)點(diǎn)。它還具備多種運(yùn)行模式,由于模式與模式之間相互切換的速度較快,大大地降低了能源的消耗。此外,CC2530對(duì)外界環(huán)境的抗干擾能力強(qiáng),接收信息的靈敏度高,它只需一個(gè)晶振便能滿足網(wǎng)狀網(wǎng)絡(luò)的系統(tǒng)需求,所需的外界元件也極少。由于這些優(yōu)點(diǎn),CC2530被廣泛地應(yīng)用于家庭、樓宇自動(dòng)化,工業(yè)監(jiān)管,醫(yī)療保健等領(lǐng)域。
本文運(yùn)用的無(wú)線通信技術(shù)是基于CC2530的無(wú)線電模塊。該模塊主要用于無(wú)線信號(hào)的接收和發(fā)送,它由射頻芯片來(lái)控制[4]。此外,它還具有MCU和無(wú)線電之間的一個(gè)端口,用于當(dāng)前狀態(tài)的讀取,命令的發(fā)送以及將無(wú)線電事件自動(dòng)設(shè)置優(yōu)先級(jí)[5]。如果運(yùn)用兩個(gè)CC2530便能實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn)型的無(wú)線數(shù)據(jù)傳輸,如果運(yùn)用多個(gè)CC2530便能實(shí)現(xiàn)點(diǎn)對(duì)多型的無(wú)線數(shù)據(jù)傳輸,甚至建立起一個(gè)龐大的傳感網(wǎng)絡(luò)。在這個(gè)傳感網(wǎng)絡(luò)中,每個(gè)CC2530為一個(gè)節(jié)點(diǎn),每個(gè)節(jié)點(diǎn)負(fù)責(zé)對(duì)周邊環(huán)境的信息進(jìn)行檢測(cè)、采集和處理,同時(shí)將處理后的數(shù)據(jù)發(fā)送給相鄰的節(jié)點(diǎn)。對(duì)于每一個(gè)區(qū)域可以設(shè)置其中一個(gè)節(jié)點(diǎn)為主要控制節(jié)點(diǎn),便于人們收集及處理該區(qū)域的信息。
2 基于無(wú)線通信的人體傳感器檢測(cè)與采集系統(tǒng)設(shè)計(jì)
基于無(wú)線通信技術(shù)的人體傳感器系統(tǒng)包括人體傳感器、主控器和上位機(jī)。人體傳感器主要用于感知人體,定時(shí)采集傳感數(shù)據(jù),并將感知到的數(shù)據(jù)打包后通過(guò)CC2530上的無(wú)線端發(fā)送出去。主控器主要用于接收人體傳感器發(fā)送過(guò)來(lái)的無(wú)線數(shù)據(jù),然后通過(guò)串口將該數(shù)據(jù)發(fā)送給上位機(jī)。上位機(jī)接收到主控器發(fā)送過(guò)來(lái)的數(shù)據(jù)后,對(duì)數(shù)據(jù)進(jìn)行采集、處理和顯示。人體傳感器檢測(cè)與采集系統(tǒng)連接圖如圖1所示。
人體傳感器與主控器之間是無(wú)線通信,需要配置好相應(yīng)的通訊參數(shù)。首先,傳感器的通信頻道與主控器的通信頻道要保持一致。其次,兩者所處的網(wǎng)絡(luò)ID號(hào)要相同。最后,傳感器的發(fā)送地址必須是主控器的本機(jī)地址,這樣才能保證信息的準(zhǔn)確接收。串口通信主要是將主控器與上位機(jī)的串口相連,主控器的數(shù)據(jù)能夠通過(guò)串口發(fā)送給上位機(jī)。
人體傳感器屬于開(kāi)關(guān)量傳感器的一種,當(dāng)感應(yīng)到人體時(shí),便會(huì)產(chǎn)生高電平‘1。沒(méi)有感應(yīng)到時(shí),一直處于低電平‘0。因此,傳感器讀取到電平值后,將該數(shù)據(jù)發(fā)送給主控器,為了判定無(wú)線數(shù)據(jù)是否有發(fā)送成功,本文設(shè)計(jì)每發(fā)送一次無(wú)線數(shù)據(jù),綠色信號(hào)燈閃爍一次,以此來(lái)確保無(wú)線數(shù)據(jù)已經(jīng)發(fā)送成功。傳感器程序流程圖如圖2所示。
主控器相當(dāng)于一個(gè)“中轉(zhuǎn)站”,首先需要對(duì)主控器進(jìn)行初始化,并配置無(wú)線通信參數(shù)。為了確保主控器有接收到傳感器發(fā)送過(guò)來(lái)的無(wú)線信號(hào),本文設(shè)計(jì)每接收到一次無(wú)線信號(hào),紅色信號(hào)燈閃爍一次。最后,主控器將收到的數(shù)據(jù)通過(guò)串口發(fā)送給上位機(jī),便可以在上位機(jī)中顯示出是否感知到人體的信息。主控器程序流程圖如圖3所示。
3 基于無(wú)線通信技術(shù)的人體傳感器檢測(cè)與采集的實(shí)現(xiàn)
對(duì)傳感器和主控器分別進(jìn)行無(wú)線通信參數(shù)設(shè)置,使傳感器能夠通過(guò)無(wú)線模塊將數(shù)據(jù)發(fā)送給主控器。主控器能夠通過(guò)無(wú)線模塊接收數(shù)據(jù)。硬件連接圖如圖4所示,圖中兩個(gè)Zigbee開(kāi)發(fā)板,一個(gè)連接人體感應(yīng)器作為傳感器,一個(gè)作為主控器用來(lái)接收和發(fā)送數(shù)據(jù)。
當(dāng)有人體通過(guò)時(shí),人體感應(yīng)器將數(shù)據(jù)傳給傳感器的CC2530處理,然后通過(guò)天線將數(shù)據(jù)發(fā)送給主控器,主控器接收到數(shù)據(jù)后通過(guò)I/O口,將數(shù)據(jù)發(fā)送給上位機(jī)處理。結(jié)果顯示如圖5所示,傳感器會(huì)定時(shí)采集數(shù)據(jù),當(dāng)感應(yīng)到人體時(shí),出現(xiàn)“有人”的字樣,感應(yīng)不到人體時(shí),出現(xiàn)“沒(méi)有人”的字樣。
本文設(shè)計(jì)的人體傳感器檢測(cè)與采集系統(tǒng)可以根據(jù)實(shí)際需求設(shè)置多個(gè)傳感器,如圖6所示。由于本文設(shè)計(jì)的系統(tǒng)是使用無(wú)線傳輸,因此即使使用多個(gè)人體傳感器也不會(huì)增加硬件系統(tǒng)的復(fù)雜度,只要配置好無(wú)線參數(shù)即可。如果實(shí)際需求的無(wú)線覆蓋較廣,那么可以使用多個(gè)主控器,并將主控器分為不同的層級(jí),如圖7所示,共有n個(gè)傳感器,主控器分為x級(jí),每一級(jí)根據(jù)實(shí)際需求設(shè)置主控器個(gè)數(shù)m,環(huán)境中所有人體傳感器的數(shù)據(jù)匯集到相應(yīng)層級(jí)的主控器中,每一層級(jí)的主控器的數(shù)據(jù)最終匯總到1級(jí)主控器中,再由1級(jí)主控器將數(shù)據(jù)傳遞給上位機(jī)。
另外,為了判斷傳感器是否能夠定時(shí)發(fā)送數(shù)據(jù),本文設(shè)計(jì)了信號(hào)燈,當(dāng)發(fā)送數(shù)據(jù)時(shí),綠色信號(hào)燈閃爍。同時(shí),為了判斷主控器是否能夠收到傳感器發(fā)送的無(wú)線信號(hào),主控器每接收一次無(wú)線信號(hào)傳輸?shù)臄?shù)據(jù),紅色信號(hào)燈閃爍一次。這樣能夠確保數(shù)據(jù)之間的傳遞,使得通信更加可靠。
4 結(jié)束語(yǔ)
本文提出的是基于無(wú)線通信的人體傳感器技術(shù)的解決方案,可以檢測(cè)到是否有人體通過(guò),并將檢測(cè)結(jié)果通過(guò)上位機(jī)顯示出來(lái)。同時(shí)根據(jù)實(shí)際需求,可以擴(kuò)展為多個(gè)傳感器以及多級(jí)主控器,從而實(shí)現(xiàn)多個(gè)地點(diǎn)同時(shí)檢測(cè)人體。為了確保通信的可靠性,采用信號(hào)燈的閃爍來(lái)監(jiān)測(cè)數(shù)據(jù)是否有發(fā)送和接收。設(shè)計(jì)系統(tǒng)主要是基于CC2530,該芯片功耗低,性能優(yōu)良,這使得整個(gè)系統(tǒng)不僅穩(wěn)定,而且低能源消耗。實(shí)驗(yàn)結(jié)果證明,本文設(shè)計(jì)的方案具有一定的有效性和可靠性,能較好的實(shí)現(xiàn)對(duì)人體的檢測(cè)和監(jiān)控。
參考文獻(xiàn)
[1]于攀,陳新凱,楊明武.無(wú)線人體傳感器網(wǎng)絡(luò)測(cè)試的硬件平臺(tái)設(shè)計(jì)[J].中國(guó)集成電路,2009,9(124):72-77.
[2]張其,袁縱橫,等.基于MPU6000的低功耗無(wú)線人體傳感器網(wǎng)絡(luò)節(jié)點(diǎn)設(shè)計(jì)[J].計(jì)算機(jī)測(cè)量與控制,2014,22(2):539-541.
[3]楊塤,楊槐,王建勇.基于SIP和ZigBee的物聯(lián)網(wǎng)家庭網(wǎng)關(guān)設(shè)計(jì)[J].物聯(lián)網(wǎng)技術(shù),2013(9):25-31.
[4]楊慧.基于ZigBee/SCS智能家居安防監(jiān)控系統(tǒng)設(shè)計(jì)[J].物聯(lián)網(wǎng)技術(shù),2014(12):16-18.
[5]單春艷.基于Zigbee的智能家居系統(tǒng)[D].青島:青島大學(xué),2014.