国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

短距離無(wú)線數(shù)據(jù)采集網(wǎng)
——以溫度為例 ①

2021-01-15 03:27譚楠玲胡菁蕓鮑震杰靳亞?wèn)|
關(guān)鍵詞:短距離溫度傳感器電源

劉 月, 譚楠玲, 胡菁蕓, 鮑震杰, 靳亞?wèn)|

(西藏民族大學(xué)信息工程學(xué)院,陜西 咸陽(yáng) 712082)

0 引 言

隨著科技的發(fā)展,近年來(lái)嵌入式系統(tǒng)與數(shù)字傳感器相結(jié)合的短距離無(wú)線數(shù)據(jù)采集網(wǎng)絡(luò)得到了發(fā)展,這種新型網(wǎng)絡(luò)可以實(shí)現(xiàn)網(wǎng)絡(luò)的自組織,還可以自主完成數(shù)字形式的數(shù)據(jù)采集功能。短距離無(wú)線數(shù)據(jù)采集網(wǎng)絡(luò)的特點(diǎn)有網(wǎng)絡(luò)的動(dòng)態(tài)性、自發(fā)性、以數(shù)據(jù)為中心、網(wǎng)絡(luò)大規(guī)模、網(wǎng)絡(luò)可靠,短距離無(wú)線數(shù)據(jù)采集網(wǎng)絡(luò)較之以往的數(shù)據(jù)采集傳輸技術(shù)更加簡(jiǎn)潔。本文主要實(shí)現(xiàn)短距離無(wú)線數(shù)據(jù)采集的功能,基于短距離無(wú)線的點(diǎn)對(duì)點(diǎn)的組網(wǎng),確保了節(jié)點(diǎn)之間的雙向數(shù)據(jù)傳輸?shù)挠行?、可靠性、?shí)時(shí)性。

1 通信模塊介紹

1.1 NRF24L01射頻通信模塊

NRF24L01是一款美國(guó)Nordic公司研發(fā)的可進(jìn)行無(wú)線短距離收發(fā)數(shù)據(jù)的射頻信通芯片,它的工作頻段在2.4-2.5GH,工作特點(diǎn)是功耗低、傳輸速度快、以及即時(shí)性高。其中它的無(wú)線接收器還包括了頻率發(fā)生器,增強(qiáng)型“SchockBurst”模式控制器[1]。功率放大器,晶體振蕩器,調(diào)制器和解調(diào)器[2]。NRF24L01可以利用最少的外部元件獲得低功耗、高性能的通信模塊。

1.1.1 NRF24L01芯片的外部說(shuō)明:

NRF24L01無(wú)線收發(fā)芯片采用的是4.0*4.0mm QLP20的形式封裝。其主要優(yōu)點(diǎn)是體積小,集成度高[3]。

1.1.2 NRF24L01的內(nèi)部結(jié)構(gòu)

NRF24L01具有電源引腳、接地引腳和6個(gè)普通I/O信號(hào)引腳,在編程實(shí)現(xiàn)無(wú)線短距離通信時(shí),需要用到類(lèi)似串口[4]的設(shè)置方式去設(shè)置這6個(gè)I/O口。NRF24L01的地址可以自由的選擇或者打開(kāi)一個(gè)或是多個(gè)接收通道,也可以根據(jù)需求自行配置。

1.1.3 NRF24L01收發(fā)原理

在開(kāi)始發(fā)送數(shù)據(jù)時(shí),首先需要將NRF24L01的無(wú)線通信模塊設(shè)置為發(fā)送模式[5],在發(fā)送數(shù)據(jù)時(shí),則向緩沖區(qū)寫(xiě)入接收方的地址和信息和有效數(shù)據(jù),地址要和發(fā)送方一致并且只需要輸入一次就行,而數(shù)據(jù)的傳輸則需要CSN變?yōu)榈碗娖讲拍苡行?xiě)入。所以在此過(guò)程中大約有130微秒的時(shí)延。

在接收地址都相同的情況下,可以打開(kāi)NRF24L01的自動(dòng)應(yīng)答,開(kāi)啟這個(gè)模式后NRF24L01就能實(shí)現(xiàn)在發(fā)送數(shù)據(jù)后快速轉(zhuǎn)換為接收模式的目的,去接收傳輸?shù)臄?shù)據(jù),接收成功則表示通信成功,如果接收方?jīng)]有收到響應(yīng)信號(hào),發(fā)送方就會(huì)繼續(xù)發(fā)送信息,但是發(fā)送的次數(shù)是有限的,當(dāng)次數(shù)超標(biāo)則數(shù)據(jù)將會(huì)繼續(xù)保留,成為下次發(fā)送的數(shù)據(jù)。同時(shí)會(huì)產(chǎn)生中斷發(fā)送給單片機(jī)。

圖1 NRF24L01通信模塊原理圖

1.2 DS18B20的電路連接

DS18B20溫度傳感器工作時(shí)一般采用單總線協(xié)議[5],傳輸數(shù)據(jù)時(shí)采用一個(gè)單獨(dú)的端口,在與總線連接時(shí)通過(guò)漏極或者三態(tài)口此時(shí)則需要連接上一個(gè)上拉電阻。如下圖所示,上拉電阻的主要作用是在DS18B20沒(méi)接通電源時(shí)供電,以及在DS18B20有連接電源時(shí)確保傳感器的穩(wěn)定工作。

有兩種外部供電的連接方式,一是單只的溫度傳感器與單片機(jī)相連。

二是多個(gè)的溫度傳感器與單片機(jī)相連,如圖下圖所示。值得說(shuō)明的是在多個(gè)溫度傳感器與單片機(jī)相連的情況下。由于DS18B20溫度傳感器在生產(chǎn)時(shí)擁有唯一的序列號(hào)[6]。這個(gè)使得當(dāng)一條總線上同時(shí)連接多個(gè)傳感器時(shí)單片機(jī)能夠通過(guò)序列號(hào)實(shí)現(xiàn)傳感器的區(qū)分,識(shí)別在整個(gè)系統(tǒng)中總線上每個(gè)設(shè)備的地址并做下記錄,這個(gè)特性可以使得分布在不同地方的溫度傳感器能夠得到相應(yīng)的處理,使得數(shù)據(jù)的處理更加方便。這個(gè)特點(diǎn)還使得 DS18B20溫度傳感器在環(huán)境控制、溫度測(cè)量等方面更加靈活實(shí)用。

在DS18B20無(wú)供電的情況下,其工作環(huán)境是“寄生源模式”[7],其中VDD引腳接地,如下圖所示。在此模式下DS18B20不需要外部的電源供給,也能完成溫度信息的采集。

圖2 “寄生電源模式”下的DS18B20溫度傳感器電路

2 系統(tǒng)的模塊介紹

2.1 電源供電子系統(tǒng)

選取了STC公司所生產(chǎn)的STC89C52RC微控制器[8],正常工作需要提供5V的電源電壓。射頻通訊模塊采用的是NRF24L01芯片,它的工作電壓為3.3V,綜上供電模塊需提供5V和3.3V的DC電源[9],為了提供更穩(wěn)定的電源環(huán)境以及提高獲得外部電源的便利性,本系統(tǒng)設(shè)計(jì)了兩種供電模式,可在不同的條件下選擇。

一種是USB接口連接外部電源提供該系統(tǒng)的電源電壓,另一種就是使用電池供電。在實(shí)驗(yàn)系統(tǒng)和演示功能時(shí)采用USB連接外部電源的方式,這種供電方式提供的電源電壓環(huán)境更加穩(wěn)定,可以確保系統(tǒng)的平穩(wěn)運(yùn)行。在實(shí)用和便利的階段,則采用電池供電的方式。

由于STC89C52RC和NRF24L01所需的工作電壓不同,所以需要進(jìn)行電壓的轉(zhuǎn)換。我們實(shí)用調(diào)壓芯片7805將外部接入的9V電壓轉(zhuǎn)換為STC89C52RC正常工作所需的5V電壓,在轉(zhuǎn)換過(guò)程中我們發(fā)現(xiàn)調(diào)壓芯片7805轉(zhuǎn)換的效率不佳,只能達(dá)到百分之六十左右,故而在轉(zhuǎn)換NRF24L01所需的工作電壓時(shí),選擇采用LM1117直流電壓[10]轉(zhuǎn)換芯片得到NRF24L01所需的3.3V工作電壓。電路圖如下圖所示:

2.2 溫度感知采集模塊

無(wú)線短距離數(shù)據(jù)采集系統(tǒng)的子節(jié)點(diǎn)可以對(duì)外界的溫度進(jìn)行感應(yīng),子節(jié)點(diǎn)通過(guò)分布在不同地區(qū)的DS18B20溫度傳感器可以對(duì)周?chē)沫h(huán)境溫度數(shù)據(jù)進(jìn)行采集。DS18B20對(duì)于大學(xué)生的我們來(lái)說(shuō)不僅價(jià)格實(shí)惠而且具有極強(qiáng)的抗干擾性,還擁有極高的精度,因此我們選擇了DS18B20作為系統(tǒng)中的溫度測(cè)量感知模塊。

圖3 電源電路原理圖

2.3 微控制器模塊

選擇STC89C52RC作為該系統(tǒng)的微控制器[11],該款單片機(jī)具有極高的靈活性,能夠使得本系統(tǒng)在運(yùn)行和實(shí)現(xiàn)功能的過(guò)程中平穩(wěn)的運(yùn)行。

2.4 無(wú)線射頻通信模塊

本文系統(tǒng)的通信模塊采用了NRF24L01芯片作為射頻通信器的控制芯片。系統(tǒng)中的通信模塊和微控制系統(tǒng)之間的連接通過(guò)8針接口,而與微控制模塊的通信實(shí)現(xiàn)則通過(guò)SPI串口的通信協(xié)議,從而調(diào)整和掌控通信模塊的工作模式。

在使用XC1和XC2引腳時(shí)NRF24L01的晶振時(shí)鐘頻率范圍是16MHz。

2.5 溫度數(shù)值顯示模塊

為了便于查看和驗(yàn)證短距離無(wú)線數(shù)據(jù)采集網(wǎng)絡(luò)的溫度數(shù)值,也為了觀察溫度變化時(shí)系統(tǒng)能否成功的實(shí)現(xiàn)數(shù)據(jù)的采集和傳輸,主節(jié)點(diǎn)中設(shè)計(jì)了顯示模塊,為了節(jié)約成本,顯示的子系統(tǒng)模塊選用了LCD2864液晶屏幕顯示,這使得顯示子系統(tǒng)的系統(tǒng)設(shè)計(jì)更加簡(jiǎn)潔。

2.6 PCB電路設(shè)計(jì)模塊

PCB[12]為印刷電路板是整個(gè)網(wǎng)絡(luò)中不可缺少的重要組成部分,為了避免像傳統(tǒng)的連線方式那樣因?yàn)榫€路的連接而導(dǎo)致節(jié)點(diǎn)分布復(fù)雜,它用電路連接的形式將各個(gè)節(jié)點(diǎn)所要用到的各模塊進(jìn)行連接,以這樣的方式通過(guò)電路板的設(shè)計(jì)將節(jié)點(diǎn)盡可能的小型化,使得該系統(tǒng)的線路連接也更加簡(jiǎn)潔,簡(jiǎn)潔的線路和微型化的節(jié)點(diǎn)在網(wǎng)絡(luò)中的設(shè)置,可以提高整體系統(tǒng)在運(yùn)行時(shí)的穩(wěn)定性。

3 系統(tǒng)軟件設(shè)計(jì)

3.1 無(wú)線數(shù)據(jù)采集系統(tǒng)的總體框架

本文系統(tǒng)的目標(biāo)是在硬件的基礎(chǔ)上建立可以實(shí)現(xiàn)短距離溫度檢測(cè)功能以及組網(wǎng)功能的無(wú)線數(shù)據(jù)采集網(wǎng)絡(luò),確保系統(tǒng)的穩(wěn)定運(yùn)行和數(shù)據(jù)的穩(wěn)定傳輸。系統(tǒng)流程圖如下圖所示:

3.2 無(wú)線通信中的關(guān)鍵函數(shù)說(shuō)明

3.2.1 NRF24L01的發(fā)送函數(shù)

在子節(jié)點(diǎn)完成初始化之后,通信模塊開(kāi)啟發(fā)送模式,將采集系統(tǒng)檢測(cè)到的數(shù)據(jù)進(jìn)行檢測(cè),然后經(jīng)過(guò)一定的算法處理存儲(chǔ)在指定的數(shù)組tx_buf [ ]中,完成這一系列的動(dòng)作之后再進(jìn)行下一組的數(shù)據(jù)傳輸。

3.2.2 NRF24L01的接收函數(shù)

初始化主節(jié)點(diǎn)之后,將通信模塊的模式進(jìn)行設(shè)置改為[13]。以便于系統(tǒng)進(jìn)入等待狀態(tài)來(lái)監(jiān)察空中無(wú)線數(shù)據(jù)的信號(hào),系統(tǒng)接收到的數(shù)據(jù)在接受一定的判斷之后,經(jīng)過(guò)數(shù)碼管[14]進(jìn)行數(shù)據(jù)的顯示。

3.3 系統(tǒng)核心代碼

節(jié)點(diǎn)一的發(fā)送主函數(shù):

#include "inc/nRF24L01.h"

#include "inc/ds18b20.h"

#include

//主函數(shù)

void main(void)

{

uinttemp,OldTemp;

uinttempEps=0;

init_NRF24L01();

Delay(100);

//主循環(huán)

while(1)

{

temp = Get_Temp();

tempEps=abs(temp-OldTemp);

OldTemp=temp;

DisplayTemperture(temp);

if(tempEps>0){

TxBuf[0] = PointTwo;

TxBuf[1] = temp/100;

TxBuf[2] = temp/10%10;

TxBuf[3] = temp%10;

nRF24L01_TxPacket(TxBuf); // Transmit Tx buffer data

SPI_RW_Reg(WRITE_REG+STATUS,0XFF);

}

}

}

4 數(shù)據(jù)采集系統(tǒng)運(yùn)行結(jié)果

1.在選擇USB外接電源方式供電的情況下,連接通訊板實(shí)現(xiàn)一對(duì)三的無(wú)線溫度數(shù)據(jù)采集以及傳輸功能,通訊板的連接畫(huà)面如下圖所示:

圖5 一對(duì)三通訊板連接圖

2.啟動(dòng)節(jié)點(diǎn)的電源開(kāi)關(guān),子節(jié)點(diǎn)會(huì)自動(dòng)的產(chǎn)生和主節(jié)點(diǎn)的連接,然后將采集到的數(shù)據(jù)傳輸過(guò)去,然后用主節(jié)點(diǎn)的液晶屏幕接收對(duì)環(huán)境的溫度進(jìn)行顯示。

運(yùn)行結(jié)果如下圖所示:

3.將手指放在節(jié)點(diǎn)一的溫度傳感器上,讓溫度傳感器感受環(huán)境溫度的變化,然后進(jìn)行溫度數(shù)據(jù)的采集,主節(jié)點(diǎn)的液晶屏幕顯示的數(shù)值同時(shí)上升,溫度升高過(guò)程如下:

圖6 啟動(dòng)電源開(kāi)關(guān),開(kāi)始傳輸數(shù)據(jù)

圖7 節(jié)點(diǎn)一溫度上升

4.拿開(kāi)節(jié)點(diǎn)一附近的手指,節(jié)點(diǎn)一測(cè)量的溫度數(shù)值慢慢下降,主節(jié)點(diǎn)的液晶屏幕顯示的溫度也逐漸發(fā)生變化,溫度下降過(guò)程:

圖8 節(jié)點(diǎn)一溫度下降

5.拿開(kāi)手指后,節(jié)點(diǎn)一的溫度下降到室內(nèi)溫度后,節(jié)點(diǎn)一的溫度將保持穩(wěn)定不再繼續(xù)下降,因此液晶屏幕上的溫度數(shù)值也保持穩(wěn)定不再發(fā)生變化。

接收數(shù)據(jù)由主節(jié)點(diǎn)完成,數(shù)據(jù)的發(fā)送由子節(jié)點(diǎn)完成,經(jīng)過(guò)不斷的測(cè)試和改良,證實(shí)了本文系統(tǒng)網(wǎng)絡(luò)能夠穩(wěn)定的實(shí)現(xiàn)組網(wǎng)[15]的運(yùn)行以及環(huán)境溫度的實(shí)時(shí)測(cè)量采集和數(shù)據(jù)傳輸?shù)娘@示。

5 結(jié) 論

本文系統(tǒng)實(shí)現(xiàn)的是短距離無(wú)線數(shù)據(jù)的采集,使用4塊STC89C52RC的集成芯片,然后通過(guò)NRF24L01的射頻識(shí)別的通信模塊實(shí)現(xiàn)一對(duì)三的溫度數(shù)據(jù)的采集和顯示。通過(guò)調(diào)試代碼程序和測(cè)試通信板的接收以及發(fā)送功能,將三個(gè)子節(jié)點(diǎn)中采集的實(shí)時(shí)環(huán)境溫度數(shù)據(jù)傳輸?shù)街鞴?jié)點(diǎn)上液晶屏幕顯示。當(dāng)我們用手指接觸不同的子節(jié)點(diǎn),讓不同的子節(jié)點(diǎn)所測(cè)試的環(huán)境溫度發(fā)生變化,主節(jié)點(diǎn)的液晶屏幕相應(yīng)子節(jié)點(diǎn)的數(shù)值也會(huì)發(fā)生相應(yīng)的變化。

特點(diǎn)是利用的NRF24L01的通信射頻識(shí)別模塊以及STC89C52RC的單片機(jī)實(shí)現(xiàn)了短距離無(wú)線的溫度數(shù)據(jù)采集以及傳輸功能,而且還能利用液晶屏幕進(jìn)行采集溫度數(shù)值的顯示,利用DS18B20實(shí)現(xiàn)溫度變化的感知。

本設(shè)計(jì)的短距離無(wú)線數(shù)據(jù)采集系統(tǒng),采集數(shù)據(jù)準(zhǔn)確,整體系統(tǒng)運(yùn)行穩(wěn)定,消耗低,能夠有效簡(jiǎn)潔的實(shí)現(xiàn)短距離無(wú)線數(shù)據(jù)的準(zhǔn)確采集。

猜你喜歡
短距離溫度傳感器電源
Cool Invention炫酷發(fā)明
溫度傳感器DS18B20在溫度計(jì)設(shè)計(jì)中的應(yīng)用
一種高性能CMOS溫度傳感器
XTR105電流變送器在溫度傳感器中的應(yīng)用
軸對(duì)稱與最短距離
短距離加速跑
哪一款移動(dòng)電源充電更多?更快?
陽(yáng)光電源
溫度傳感器在筆記本電腦散熱系統(tǒng)中的應(yīng)用
靜力性拉伸對(duì)少兒短距離自由泳打腿急效研究