張萬江++劉曉野++孫凡
摘要:介紹了以STC12LE5A60S2單片機為控制核心,選取DHT11為溫濕度傳感器,nRF24L01為無線收發(fā)芯片的的智能環(huán)境監(jiān)測系統(tǒng)。主要介紹了系統(tǒng)構(gòu)成、硬件電路及軟件設(shè)計流程等幾個方面。且此系統(tǒng)功耗小、電路簡單、成本低、易于實現(xiàn)。
關(guān)鍵詞:nRF24L01 無線傳輸技術(shù) 環(huán)境監(jiān)測
中圖分類號:TP274 文獻標(biāo)識碼:A 文章編號:1007-9416(2014)03-0030-02
1 引言
因無線傳輸技術(shù)的先進性、優(yōu)越性及其迅猛發(fā)展,無線傳輸技術(shù)被越來越廣泛的應(yīng)用于各領(lǐng)域中,而利用無線傳輸技術(shù)對溫度、濕度等環(huán)境參數(shù)進行監(jiān)測并實時顯示的工作方式也越來越廣泛的應(yīng)用于工農(nóng)業(yè)生產(chǎn)中。傳統(tǒng)的有線監(jiān)測方式一般需要鋪設(shè)很長的線路,布線復(fù)雜,空間占用率大,且線路故障時排除困難。而無線數(shù)據(jù)采集方式因具有無需布線、不受空間限制、布置靈活、實時監(jiān)測性強等優(yōu)點而受到人們的青睞。
本文采用的無線傳輸技術(shù)——射頻識別技術(shù)更是一種成本低、功耗低、且易于在嵌入式系統(tǒng)中實現(xiàn)的無線傳輸技術(shù)。所謂射頻識別技術(shù)即是一種可以通過無線電訊號識別特定目標(biāo)并讀寫相關(guān)數(shù)據(jù),而無需接觸的雙向數(shù)據(jù)通信方式。本文提出的就是一種基于nRF24L01無線射頻收發(fā)芯片的實時環(huán)境監(jiān)測系統(tǒng)。
2 系統(tǒng)實現(xiàn)方案
系統(tǒng)平面拓?fù)浣Y(jié)構(gòu)如(圖1)所示,主要由三部分組成:溫濕度采集分站、數(shù)據(jù)接收主站及監(jiān)測主站。擁有自己獨立地址的各無線溫濕度采集器分布于監(jiān)測環(huán)境的各監(jiān)測點,自動進行溫濕度數(shù)據(jù)采集。且各溫濕度傳感器以數(shù)據(jù)接收主站為中心組成無線數(shù)據(jù)傳輸網(wǎng)絡(luò)。數(shù)據(jù)接收主站通過識別各溫濕度采集器的地址與之通信及發(fā)送控制命令。當(dāng)數(shù)據(jù)接收主機發(fā)送巡檢命令時,對應(yīng)的溫濕度傳感器將采集到的信息通過傳輸模塊以無線方式傳遞給數(shù)據(jù)接收主站。數(shù)據(jù)接收主站接收到環(huán)境參數(shù)信息后通過串口通信方式將采集的溫濕度數(shù)據(jù)信息上報給監(jiān)測主站,最后計監(jiān)測主站內(nèi)部的信息管理系統(tǒng)等軟件對數(shù)據(jù)進行分析、處理并進行實時顯示。
本無線環(huán)境監(jiān)測系統(tǒng)主要由STC12LEC5A60S2單片機(控制核心,低功耗,工作電壓2.2~3.6V),nRF24L01無線收發(fā)芯片(用于數(shù)據(jù)無線收發(fā),工作電壓1.9~3.6V),DHT11溫濕度傳感器(用于溫濕度數(shù)據(jù)采集,工作電壓3.3~5.5V),ASM1117穩(wěn)壓電路(為系統(tǒng)提供3.3V電源),RS232串口電路(用于傳輸數(shù)據(jù)到PC機及程序的下載調(diào)試)組成。系統(tǒng)原理框圖如(圖2)所示。
控制芯片是整個系統(tǒng)的核心,單片機的選擇對整個系統(tǒng)來說尤為重要。分析本系統(tǒng)我們選擇的單片機需要滿足以下幾點:(1)有較大數(shù)據(jù)處理容量及豐富的外部接口;(2)高數(shù)據(jù)運算率;(3)低功耗,高抗擾性及性價比;(4)便于調(diào)試和下載;結(jié)合以上幾點選擇了宏晶科技生產(chǎn)的STC12LE5A60S2單片機。它是新一代的增強型8051單片機,低功耗設(shè)計,工作電壓為2.2~3.6V,且指令代碼完全兼容傳統(tǒng)8051;集成有1280字節(jié)RAM;8通道,10位高速ADC,單機器周期;支持ISP/IAP,無需專用編程器及專用仿真器,可通過串口(P3.0/P3.1)直接下載用戶應(yīng)用程序,且時間只需數(shù)秒。且具有通用全雙工異步串行口(UART)及高速SPI串行通信接口。對于本系統(tǒng)的設(shè)計非常適用。
3 硬件電路設(shè)計
3.1 溫濕度采集電路設(shè)計
DHT11溫濕度傳感器采用溫濕度傳感技術(shù)和數(shù)字模塊采集技術(shù),且內(nèi)部含有已校準(zhǔn)數(shù)字信號輸出,因此具有響應(yīng)快,高抗擾性,性價比高等優(yōu)點。它主要是由一個NTC測溫元件和一個電阻式感濕元件組成。主要通過DATA引腳與高性能的8位單片機進行輸入輸出雙向傳輸,只需一根傳輸線(當(dāng)傳輸線長度小于20m時,需用5kΩ電阻上拉)。且此種單線雙向串行通信方式既能傳輸數(shù)據(jù)信號又能傳輸時鐘信號,使得外圍電路設(shè)計簡單。工作電壓為3.3~5.5V。其溫濕度采集電路如(圖3)所示。
3.2 無線傳輸電路設(shè)計
nRF24L01是一款工作在2.4GHz全球開放ISM頻段的無線射頻收發(fā)芯片。它無線數(shù)據(jù)傳輸速度為1或2Mbps,抗干擾能力強;具有自動應(yīng)答及自動重發(fā)功能,內(nèi)置硬件CRC檢錯和點對多點通信地址控制;125個可選工作頻道,最多可實現(xiàn)1對6的無線通信,很短的頻道切換時間,滿足多點通信和跳頻通信需要;當(dāng)工作在發(fā)射模式下發(fā)射功率為-6dBm時電流消耗為9mA,接收模式時為12.3mA。掉電模式和待機模式下電流消耗更低。工作電壓為1.9~3.6V;采用標(biāo)準(zhǔn)SPI總線接口進行數(shù)據(jù)通信,SPI接口通信速率可高達(dá)10Mbps。
本系統(tǒng)控制芯片與無線收發(fā)芯片之間采用的是SPI總線接口通信方式。且采用的是單主機—從機數(shù)據(jù)通信方式,STC12LE5A60S2單片機設(shè)定為主機而nRF24L01無線收發(fā)芯片設(shè)定為從機。其與單片機連接圖如(圖4)所示。其SPI接口通信原理如下,主機SPI與從機SPI的8位移位寄存器連接成一個循環(huán)的16位移位寄存器,當(dāng)主機由程序控制向SPDAT數(shù)據(jù)寄存器寫入一個字節(jié)信息時,SPI總線接口將會立即啟動一個連續(xù)的8位移位通信過程:主機的SCLK引腳發(fā)出一串脈沖送入從機的SCLK引腳,在此脈沖的驅(qū)動下,主機SPI 8位移位寄存器中的數(shù)據(jù)將移動到了從機SPI的8移位寄存器中,與此同時,從機SPI的8位移位寄存器中的數(shù)據(jù)移動到了主機SPI的8位移位寄存器中。此為一個循環(huán),由此,主機既可向從機發(fā)送數(shù)據(jù),又可讀從機中數(shù)據(jù)。
4 系統(tǒng)軟件設(shè)計
4.1 溫濕度數(shù)據(jù)信息采集分站軟件設(shè)計流程
系統(tǒng)上電后,首先將STC12LE5A60S2、DHT11及nRF24L01初始化,再將nRF24L01配置為發(fā)射模式。此時DHT11溫濕度傳感器已經(jīng)開始工作,自動采集溫濕度數(shù)據(jù)信息,并將數(shù)據(jù)傳輸給單片機,單片機判斷是否接收到數(shù)據(jù),若判定為是,則將接收模塊的地址及溫濕度數(shù)據(jù)信息跟隨時序由SPI接口寫入到nRF24L01緩存區(qū)TX FIFO內(nèi),當(dāng)有巡檢命令到達(dá)時,將CE置高至少10us,啟動nRF24L01為增強型ShockBurstTM發(fā)射模式。數(shù)據(jù)發(fā)射完畢后nRF24L01立即將數(shù)據(jù)通道0設(shè)置為接收模式,等待接收應(yīng)答信號,其自動應(yīng)答接收地址與接受模塊地址相同。若在有效應(yīng)答時間內(nèi)成功接收到應(yīng)答信號,則認(rèn)為數(shù)據(jù)成功的被接收端接收,通信成功,同時狀態(tài)寄存器將TX_DS位置高,并將TX FIFO中的數(shù)據(jù)清除,如果在有效應(yīng)答時間內(nèi)沒有接收到應(yīng)答信號,則啟動自動重發(fā)功能重新發(fā)送數(shù)據(jù),若自動重發(fā)次數(shù)達(dá)到編程設(shè)定上限,狀態(tài)寄存器的MAX_RT位置高,將TX FIFO中的數(shù)據(jù)保留以便重新發(fā)送。發(fā)送成功后,將CE設(shè)置為低,nRF24L01模塊進入待機模式,等待下一次數(shù)據(jù)發(fā)送的命令。其流程圖如圖5所示。
4.2 數(shù)據(jù)接收主站軟件設(shè)計流程
接收數(shù)據(jù)時,第一步同樣是STC12LE5A60S2及nRF24L01初始化,再將nRF24L01配置為接收模式。同時配置接收模塊的接收地址及要接收數(shù)據(jù)包的大小,接受數(shù)據(jù)通道使能等。最后將CE設(shè)置為高,啟動接受模式。130μs后nRF24L01進入接收狀態(tài),開始檢測空中信息,等待數(shù)據(jù)包的到來。當(dāng)接受模塊檢測到地址匹配CRC校驗正確的有效采集溫濕度數(shù)據(jù)后,將有效數(shù)據(jù)存儲到RX FIFO寄存器中,同時狀態(tài)寄存器中的RX_DR位置高,IRQ引腳變低,產(chǎn)生中斷去通知MCU讀取數(shù)據(jù),單片機通過SPI接口將數(shù)據(jù)讀出,同時接收完成后,nRF24L01進入發(fā)射模式,向發(fā)送模塊發(fā)送應(yīng)答信號。最后微控制處理器通過SPI接口將CE腳置低,使接收模塊進入低功耗模式。等待下一個數(shù)據(jù)包的接收。其流程如圖6所示。
5 結(jié)語
本文主要介紹了基于nRF24L01無線模塊開發(fā)設(shè)計的一款無線環(huán)境監(jiān)測系統(tǒng)。該系統(tǒng)解決了有線監(jiān)測方式的布線復(fù)雜、浪費資源、不易檢修等問題,并且具有結(jié)構(gòu)簡單、控制方便、工作穩(wěn)定等優(yōu)點,能實現(xiàn)智能的環(huán)境參數(shù)采集及可靠的無線數(shù)據(jù)傳輸。
參考文獻
[1]胡純意,李長庚,王鵬鵬,于澄澄.無線傳感網(wǎng)絡(luò)溫度采集系統(tǒng)的設(shè)計及實現(xiàn)[J].2010,5;1199-1201.
[2]崔遜學(xué),趙湛,王成.無線傳感器網(wǎng)絡(luò)的領(lǐng)域應(yīng)用與設(shè)計技術(shù)[M].國防工業(yè)出版社,2009.
[3]溫濕度傳感器DHT11產(chǎn)品手冊[EB/OL].http//www.aosong.com.
摘要:介紹了以STC12LE5A60S2單片機為控制核心,選取DHT11為溫濕度傳感器,nRF24L01為無線收發(fā)芯片的的智能環(huán)境監(jiān)測系統(tǒng)。主要介紹了系統(tǒng)構(gòu)成、硬件電路及軟件設(shè)計流程等幾個方面。且此系統(tǒng)功耗小、電路簡單、成本低、易于實現(xiàn)。
關(guān)鍵詞:nRF24L01 無線傳輸技術(shù) 環(huán)境監(jiān)測
中圖分類號:TP274 文獻標(biāo)識碼:A 文章編號:1007-9416(2014)03-0030-02
1 引言
因無線傳輸技術(shù)的先進性、優(yōu)越性及其迅猛發(fā)展,無線傳輸技術(shù)被越來越廣泛的應(yīng)用于各領(lǐng)域中,而利用無線傳輸技術(shù)對溫度、濕度等環(huán)境參數(shù)進行監(jiān)測并實時顯示的工作方式也越來越廣泛的應(yīng)用于工農(nóng)業(yè)生產(chǎn)中。傳統(tǒng)的有線監(jiān)測方式一般需要鋪設(shè)很長的線路,布線復(fù)雜,空間占用率大,且線路故障時排除困難。而無線數(shù)據(jù)采集方式因具有無需布線、不受空間限制、布置靈活、實時監(jiān)測性強等優(yōu)點而受到人們的青睞。
本文采用的無線傳輸技術(shù)——射頻識別技術(shù)更是一種成本低、功耗低、且易于在嵌入式系統(tǒng)中實現(xiàn)的無線傳輸技術(shù)。所謂射頻識別技術(shù)即是一種可以通過無線電訊號識別特定目標(biāo)并讀寫相關(guān)數(shù)據(jù),而無需接觸的雙向數(shù)據(jù)通信方式。本文提出的就是一種基于nRF24L01無線射頻收發(fā)芯片的實時環(huán)境監(jiān)測系統(tǒng)。
2 系統(tǒng)實現(xiàn)方案
系統(tǒng)平面拓?fù)浣Y(jié)構(gòu)如(圖1)所示,主要由三部分組成:溫濕度采集分站、數(shù)據(jù)接收主站及監(jiān)測主站。擁有自己獨立地址的各無線溫濕度采集器分布于監(jiān)測環(huán)境的各監(jiān)測點,自動進行溫濕度數(shù)據(jù)采集。且各溫濕度傳感器以數(shù)據(jù)接收主站為中心組成無線數(shù)據(jù)傳輸網(wǎng)絡(luò)。數(shù)據(jù)接收主站通過識別各溫濕度采集器的地址與之通信及發(fā)送控制命令。當(dāng)數(shù)據(jù)接收主機發(fā)送巡檢命令時,對應(yīng)的溫濕度傳感器將采集到的信息通過傳輸模塊以無線方式傳遞給數(shù)據(jù)接收主站。數(shù)據(jù)接收主站接收到環(huán)境參數(shù)信息后通過串口通信方式將采集的溫濕度數(shù)據(jù)信息上報給監(jiān)測主站,最后計監(jiān)測主站內(nèi)部的信息管理系統(tǒng)等軟件對數(shù)據(jù)進行分析、處理并進行實時顯示。
本無線環(huán)境監(jiān)測系統(tǒng)主要由STC12LEC5A60S2單片機(控制核心,低功耗,工作電壓2.2~3.6V),nRF24L01無線收發(fā)芯片(用于數(shù)據(jù)無線收發(fā),工作電壓1.9~3.6V),DHT11溫濕度傳感器(用于溫濕度數(shù)據(jù)采集,工作電壓3.3~5.5V),ASM1117穩(wěn)壓電路(為系統(tǒng)提供3.3V電源),RS232串口電路(用于傳輸數(shù)據(jù)到PC機及程序的下載調(diào)試)組成。系統(tǒng)原理框圖如(圖2)所示。
控制芯片是整個系統(tǒng)的核心,單片機的選擇對整個系統(tǒng)來說尤為重要。分析本系統(tǒng)我們選擇的單片機需要滿足以下幾點:(1)有較大數(shù)據(jù)處理容量及豐富的外部接口;(2)高數(shù)據(jù)運算率;(3)低功耗,高抗擾性及性價比;(4)便于調(diào)試和下載;結(jié)合以上幾點選擇了宏晶科技生產(chǎn)的STC12LE5A60S2單片機。它是新一代的增強型8051單片機,低功耗設(shè)計,工作電壓為2.2~3.6V,且指令代碼完全兼容傳統(tǒng)8051;集成有1280字節(jié)RAM;8通道,10位高速ADC,單機器周期;支持ISP/IAP,無需專用編程器及專用仿真器,可通過串口(P3.0/P3.1)直接下載用戶應(yīng)用程序,且時間只需數(shù)秒。且具有通用全雙工異步串行口(UART)及高速SPI串行通信接口。對于本系統(tǒng)的設(shè)計非常適用。
3 硬件電路設(shè)計
3.1 溫濕度采集電路設(shè)計
DHT11溫濕度傳感器采用溫濕度傳感技術(shù)和數(shù)字模塊采集技術(shù),且內(nèi)部含有已校準(zhǔn)數(shù)字信號輸出,因此具有響應(yīng)快,高抗擾性,性價比高等優(yōu)點。它主要是由一個NTC測溫元件和一個電阻式感濕元件組成。主要通過DATA引腳與高性能的8位單片機進行輸入輸出雙向傳輸,只需一根傳輸線(當(dāng)傳輸線長度小于20m時,需用5kΩ電阻上拉)。且此種單線雙向串行通信方式既能傳輸數(shù)據(jù)信號又能傳輸時鐘信號,使得外圍電路設(shè)計簡單。工作電壓為3.3~5.5V。其溫濕度采集電路如(圖3)所示。
3.2 無線傳輸電路設(shè)計
nRF24L01是一款工作在2.4GHz全球開放ISM頻段的無線射頻收發(fā)芯片。它無線數(shù)據(jù)傳輸速度為1或2Mbps,抗干擾能力強;具有自動應(yīng)答及自動重發(fā)功能,內(nèi)置硬件CRC檢錯和點對多點通信地址控制;125個可選工作頻道,最多可實現(xiàn)1對6的無線通信,很短的頻道切換時間,滿足多點通信和跳頻通信需要;當(dāng)工作在發(fā)射模式下發(fā)射功率為-6dBm時電流消耗為9mA,接收模式時為12.3mA。掉電模式和待機模式下電流消耗更低。工作電壓為1.9~3.6V;采用標(biāo)準(zhǔn)SPI總線接口進行數(shù)據(jù)通信,SPI接口通信速率可高達(dá)10Mbps。
本系統(tǒng)控制芯片與無線收發(fā)芯片之間采用的是SPI總線接口通信方式。且采用的是單主機—從機數(shù)據(jù)通信方式,STC12LE5A60S2單片機設(shè)定為主機而nRF24L01無線收發(fā)芯片設(shè)定為從機。其與單片機連接圖如(圖4)所示。其SPI接口通信原理如下,主機SPI與從機SPI的8位移位寄存器連接成一個循環(huán)的16位移位寄存器,當(dāng)主機由程序控制向SPDAT數(shù)據(jù)寄存器寫入一個字節(jié)信息時,SPI總線接口將會立即啟動一個連續(xù)的8位移位通信過程:主機的SCLK引腳發(fā)出一串脈沖送入從機的SCLK引腳,在此脈沖的驅(qū)動下,主機SPI 8位移位寄存器中的數(shù)據(jù)將移動到了從機SPI的8移位寄存器中,與此同時,從機SPI的8位移位寄存器中的數(shù)據(jù)移動到了主機SPI的8位移位寄存器中。此為一個循環(huán),由此,主機既可向從機發(fā)送數(shù)據(jù),又可讀從機中數(shù)據(jù)。
4 系統(tǒng)軟件設(shè)計
4.1 溫濕度數(shù)據(jù)信息采集分站軟件設(shè)計流程
系統(tǒng)上電后,首先將STC12LE5A60S2、DHT11及nRF24L01初始化,再將nRF24L01配置為發(fā)射模式。此時DHT11溫濕度傳感器已經(jīng)開始工作,自動采集溫濕度數(shù)據(jù)信息,并將數(shù)據(jù)傳輸給單片機,單片機判斷是否接收到數(shù)據(jù),若判定為是,則將接收模塊的地址及溫濕度數(shù)據(jù)信息跟隨時序由SPI接口寫入到nRF24L01緩存區(qū)TX FIFO內(nèi),當(dāng)有巡檢命令到達(dá)時,將CE置高至少10us,啟動nRF24L01為增強型ShockBurstTM發(fā)射模式。數(shù)據(jù)發(fā)射完畢后nRF24L01立即將數(shù)據(jù)通道0設(shè)置為接收模式,等待接收應(yīng)答信號,其自動應(yīng)答接收地址與接受模塊地址相同。若在有效應(yīng)答時間內(nèi)成功接收到應(yīng)答信號,則認(rèn)為數(shù)據(jù)成功的被接收端接收,通信成功,同時狀態(tài)寄存器將TX_DS位置高,并將TX FIFO中的數(shù)據(jù)清除,如果在有效應(yīng)答時間內(nèi)沒有接收到應(yīng)答信號,則啟動自動重發(fā)功能重新發(fā)送數(shù)據(jù),若自動重發(fā)次數(shù)達(dá)到編程設(shè)定上限,狀態(tài)寄存器的MAX_RT位置高,將TX FIFO中的數(shù)據(jù)保留以便重新發(fā)送。發(fā)送成功后,將CE設(shè)置為低,nRF24L01模塊進入待機模式,等待下一次數(shù)據(jù)發(fā)送的命令。其流程圖如圖5所示。
4.2 數(shù)據(jù)接收主站軟件設(shè)計流程
接收數(shù)據(jù)時,第一步同樣是STC12LE5A60S2及nRF24L01初始化,再將nRF24L01配置為接收模式。同時配置接收模塊的接收地址及要接收數(shù)據(jù)包的大小,接受數(shù)據(jù)通道使能等。最后將CE設(shè)置為高,啟動接受模式。130μs后nRF24L01進入接收狀態(tài),開始檢測空中信息,等待數(shù)據(jù)包的到來。當(dāng)接受模塊檢測到地址匹配CRC校驗正確的有效采集溫濕度數(shù)據(jù)后,將有效數(shù)據(jù)存儲到RX FIFO寄存器中,同時狀態(tài)寄存器中的RX_DR位置高,IRQ引腳變低,產(chǎn)生中斷去通知MCU讀取數(shù)據(jù),單片機通過SPI接口將數(shù)據(jù)讀出,同時接收完成后,nRF24L01進入發(fā)射模式,向發(fā)送模塊發(fā)送應(yīng)答信號。最后微控制處理器通過SPI接口將CE腳置低,使接收模塊進入低功耗模式。等待下一個數(shù)據(jù)包的接收。其流程如圖6所示。
5 結(jié)語
本文主要介紹了基于nRF24L01無線模塊開發(fā)設(shè)計的一款無線環(huán)境監(jiān)測系統(tǒng)。該系統(tǒng)解決了有線監(jiān)測方式的布線復(fù)雜、浪費資源、不易檢修等問題,并且具有結(jié)構(gòu)簡單、控制方便、工作穩(wěn)定等優(yōu)點,能實現(xiàn)智能的環(huán)境參數(shù)采集及可靠的無線數(shù)據(jù)傳輸。
參考文獻
[1]胡純意,李長庚,王鵬鵬,于澄澄.無線傳感網(wǎng)絡(luò)溫度采集系統(tǒng)的設(shè)計及實現(xiàn)[J].2010,5;1199-1201.
[2]崔遜學(xué),趙湛,王成.無線傳感器網(wǎng)絡(luò)的領(lǐng)域應(yīng)用與設(shè)計技術(shù)[M].國防工業(yè)出版社,2009.
[3]溫濕度傳感器DHT11產(chǎn)品手冊[EB/OL].http//www.aosong.com.
摘要:介紹了以STC12LE5A60S2單片機為控制核心,選取DHT11為溫濕度傳感器,nRF24L01為無線收發(fā)芯片的的智能環(huán)境監(jiān)測系統(tǒng)。主要介紹了系統(tǒng)構(gòu)成、硬件電路及軟件設(shè)計流程等幾個方面。且此系統(tǒng)功耗小、電路簡單、成本低、易于實現(xiàn)。
關(guān)鍵詞:nRF24L01 無線傳輸技術(shù) 環(huán)境監(jiān)測
中圖分類號:TP274 文獻標(biāo)識碼:A 文章編號:1007-9416(2014)03-0030-02
1 引言
因無線傳輸技術(shù)的先進性、優(yōu)越性及其迅猛發(fā)展,無線傳輸技術(shù)被越來越廣泛的應(yīng)用于各領(lǐng)域中,而利用無線傳輸技術(shù)對溫度、濕度等環(huán)境參數(shù)進行監(jiān)測并實時顯示的工作方式也越來越廣泛的應(yīng)用于工農(nóng)業(yè)生產(chǎn)中。傳統(tǒng)的有線監(jiān)測方式一般需要鋪設(shè)很長的線路,布線復(fù)雜,空間占用率大,且線路故障時排除困難。而無線數(shù)據(jù)采集方式因具有無需布線、不受空間限制、布置靈活、實時監(jiān)測性強等優(yōu)點而受到人們的青睞。
本文采用的無線傳輸技術(shù)——射頻識別技術(shù)更是一種成本低、功耗低、且易于在嵌入式系統(tǒng)中實現(xiàn)的無線傳輸技術(shù)。所謂射頻識別技術(shù)即是一種可以通過無線電訊號識別特定目標(biāo)并讀寫相關(guān)數(shù)據(jù),而無需接觸的雙向數(shù)據(jù)通信方式。本文提出的就是一種基于nRF24L01無線射頻收發(fā)芯片的實時環(huán)境監(jiān)測系統(tǒng)。
2 系統(tǒng)實現(xiàn)方案
系統(tǒng)平面拓?fù)浣Y(jié)構(gòu)如(圖1)所示,主要由三部分組成:溫濕度采集分站、數(shù)據(jù)接收主站及監(jiān)測主站。擁有自己獨立地址的各無線溫濕度采集器分布于監(jiān)測環(huán)境的各監(jiān)測點,自動進行溫濕度數(shù)據(jù)采集。且各溫濕度傳感器以數(shù)據(jù)接收主站為中心組成無線數(shù)據(jù)傳輸網(wǎng)絡(luò)。數(shù)據(jù)接收主站通過識別各溫濕度采集器的地址與之通信及發(fā)送控制命令。當(dāng)數(shù)據(jù)接收主機發(fā)送巡檢命令時,對應(yīng)的溫濕度傳感器將采集到的信息通過傳輸模塊以無線方式傳遞給數(shù)據(jù)接收主站。數(shù)據(jù)接收主站接收到環(huán)境參數(shù)信息后通過串口通信方式將采集的溫濕度數(shù)據(jù)信息上報給監(jiān)測主站,最后計監(jiān)測主站內(nèi)部的信息管理系統(tǒng)等軟件對數(shù)據(jù)進行分析、處理并進行實時顯示。
本無線環(huán)境監(jiān)測系統(tǒng)主要由STC12LEC5A60S2單片機(控制核心,低功耗,工作電壓2.2~3.6V),nRF24L01無線收發(fā)芯片(用于數(shù)據(jù)無線收發(fā),工作電壓1.9~3.6V),DHT11溫濕度傳感器(用于溫濕度數(shù)據(jù)采集,工作電壓3.3~5.5V),ASM1117穩(wěn)壓電路(為系統(tǒng)提供3.3V電源),RS232串口電路(用于傳輸數(shù)據(jù)到PC機及程序的下載調(diào)試)組成。系統(tǒng)原理框圖如(圖2)所示。
控制芯片是整個系統(tǒng)的核心,單片機的選擇對整個系統(tǒng)來說尤為重要。分析本系統(tǒng)我們選擇的單片機需要滿足以下幾點:(1)有較大數(shù)據(jù)處理容量及豐富的外部接口;(2)高數(shù)據(jù)運算率;(3)低功耗,高抗擾性及性價比;(4)便于調(diào)試和下載;結(jié)合以上幾點選擇了宏晶科技生產(chǎn)的STC12LE5A60S2單片機。它是新一代的增強型8051單片機,低功耗設(shè)計,工作電壓為2.2~3.6V,且指令代碼完全兼容傳統(tǒng)8051;集成有1280字節(jié)RAM;8通道,10位高速ADC,單機器周期;支持ISP/IAP,無需專用編程器及專用仿真器,可通過串口(P3.0/P3.1)直接下載用戶應(yīng)用程序,且時間只需數(shù)秒。且具有通用全雙工異步串行口(UART)及高速SPI串行通信接口。對于本系統(tǒng)的設(shè)計非常適用。
3 硬件電路設(shè)計
3.1 溫濕度采集電路設(shè)計
DHT11溫濕度傳感器采用溫濕度傳感技術(shù)和數(shù)字模塊采集技術(shù),且內(nèi)部含有已校準(zhǔn)數(shù)字信號輸出,因此具有響應(yīng)快,高抗擾性,性價比高等優(yōu)點。它主要是由一個NTC測溫元件和一個電阻式感濕元件組成。主要通過DATA引腳與高性能的8位單片機進行輸入輸出雙向傳輸,只需一根傳輸線(當(dāng)傳輸線長度小于20m時,需用5kΩ電阻上拉)。且此種單線雙向串行通信方式既能傳輸數(shù)據(jù)信號又能傳輸時鐘信號,使得外圍電路設(shè)計簡單。工作電壓為3.3~5.5V。其溫濕度采集電路如(圖3)所示。
3.2 無線傳輸電路設(shè)計
nRF24L01是一款工作在2.4GHz全球開放ISM頻段的無線射頻收發(fā)芯片。它無線數(shù)據(jù)傳輸速度為1或2Mbps,抗干擾能力強;具有自動應(yīng)答及自動重發(fā)功能,內(nèi)置硬件CRC檢錯和點對多點通信地址控制;125個可選工作頻道,最多可實現(xiàn)1對6的無線通信,很短的頻道切換時間,滿足多點通信和跳頻通信需要;當(dāng)工作在發(fā)射模式下發(fā)射功率為-6dBm時電流消耗為9mA,接收模式時為12.3mA。掉電模式和待機模式下電流消耗更低。工作電壓為1.9~3.6V;采用標(biāo)準(zhǔn)SPI總線接口進行數(shù)據(jù)通信,SPI接口通信速率可高達(dá)10Mbps。
本系統(tǒng)控制芯片與無線收發(fā)芯片之間采用的是SPI總線接口通信方式。且采用的是單主機—從機數(shù)據(jù)通信方式,STC12LE5A60S2單片機設(shè)定為主機而nRF24L01無線收發(fā)芯片設(shè)定為從機。其與單片機連接圖如(圖4)所示。其SPI接口通信原理如下,主機SPI與從機SPI的8位移位寄存器連接成一個循環(huán)的16位移位寄存器,當(dāng)主機由程序控制向SPDAT數(shù)據(jù)寄存器寫入一個字節(jié)信息時,SPI總線接口將會立即啟動一個連續(xù)的8位移位通信過程:主機的SCLK引腳發(fā)出一串脈沖送入從機的SCLK引腳,在此脈沖的驅(qū)動下,主機SPI 8位移位寄存器中的數(shù)據(jù)將移動到了從機SPI的8移位寄存器中,與此同時,從機SPI的8位移位寄存器中的數(shù)據(jù)移動到了主機SPI的8位移位寄存器中。此為一個循環(huán),由此,主機既可向從機發(fā)送數(shù)據(jù),又可讀從機中數(shù)據(jù)。
4 系統(tǒng)軟件設(shè)計
4.1 溫濕度數(shù)據(jù)信息采集分站軟件設(shè)計流程
系統(tǒng)上電后,首先將STC12LE5A60S2、DHT11及nRF24L01初始化,再將nRF24L01配置為發(fā)射模式。此時DHT11溫濕度傳感器已經(jīng)開始工作,自動采集溫濕度數(shù)據(jù)信息,并將數(shù)據(jù)傳輸給單片機,單片機判斷是否接收到數(shù)據(jù),若判定為是,則將接收模塊的地址及溫濕度數(shù)據(jù)信息跟隨時序由SPI接口寫入到nRF24L01緩存區(qū)TX FIFO內(nèi),當(dāng)有巡檢命令到達(dá)時,將CE置高至少10us,啟動nRF24L01為增強型ShockBurstTM發(fā)射模式。數(shù)據(jù)發(fā)射完畢后nRF24L01立即將數(shù)據(jù)通道0設(shè)置為接收模式,等待接收應(yīng)答信號,其自動應(yīng)答接收地址與接受模塊地址相同。若在有效應(yīng)答時間內(nèi)成功接收到應(yīng)答信號,則認(rèn)為數(shù)據(jù)成功的被接收端接收,通信成功,同時狀態(tài)寄存器將TX_DS位置高,并將TX FIFO中的數(shù)據(jù)清除,如果在有效應(yīng)答時間內(nèi)沒有接收到應(yīng)答信號,則啟動自動重發(fā)功能重新發(fā)送數(shù)據(jù),若自動重發(fā)次數(shù)達(dá)到編程設(shè)定上限,狀態(tài)寄存器的MAX_RT位置高,將TX FIFO中的數(shù)據(jù)保留以便重新發(fā)送。發(fā)送成功后,將CE設(shè)置為低,nRF24L01模塊進入待機模式,等待下一次數(shù)據(jù)發(fā)送的命令。其流程圖如圖5所示。
4.2 數(shù)據(jù)接收主站軟件設(shè)計流程
接收數(shù)據(jù)時,第一步同樣是STC12LE5A60S2及nRF24L01初始化,再將nRF24L01配置為接收模式。同時配置接收模塊的接收地址及要接收數(shù)據(jù)包的大小,接受數(shù)據(jù)通道使能等。最后將CE設(shè)置為高,啟動接受模式。130μs后nRF24L01進入接收狀態(tài),開始檢測空中信息,等待數(shù)據(jù)包的到來。當(dāng)接受模塊檢測到地址匹配CRC校驗正確的有效采集溫濕度數(shù)據(jù)后,將有效數(shù)據(jù)存儲到RX FIFO寄存器中,同時狀態(tài)寄存器中的RX_DR位置高,IRQ引腳變低,產(chǎn)生中斷去通知MCU讀取數(shù)據(jù),單片機通過SPI接口將數(shù)據(jù)讀出,同時接收完成后,nRF24L01進入發(fā)射模式,向發(fā)送模塊發(fā)送應(yīng)答信號。最后微控制處理器通過SPI接口將CE腳置低,使接收模塊進入低功耗模式。等待下一個數(shù)據(jù)包的接收。其流程如圖6所示。
5 結(jié)語
本文主要介紹了基于nRF24L01無線模塊開發(fā)設(shè)計的一款無線環(huán)境監(jiān)測系統(tǒng)。該系統(tǒng)解決了有線監(jiān)測方式的布線復(fù)雜、浪費資源、不易檢修等問題,并且具有結(jié)構(gòu)簡單、控制方便、工作穩(wěn)定等優(yōu)點,能實現(xiàn)智能的環(huán)境參數(shù)采集及可靠的無線數(shù)據(jù)傳輸。
參考文獻
[1]胡純意,李長庚,王鵬鵬,于澄澄.無線傳感網(wǎng)絡(luò)溫度采集系統(tǒng)的設(shè)計及實現(xiàn)[J].2010,5;1199-1201.
[2]崔遜學(xué),趙湛,王成.無線傳感器網(wǎng)絡(luò)的領(lǐng)域應(yīng)用與設(shè)計技術(shù)[M].國防工業(yè)出版社,2009.
[3]溫濕度傳感器DHT11產(chǎn)品手冊[EB/OL].http//www.aosong.com.
數(shù)字技術(shù)與應(yīng)用2014年3期