數(shù)字化無(wú)線溫度傳感器的設(shè)計(jì)與實(shí)現(xiàn)
1 引 言
本文引用地址:http://m.butianyuan.cn/article/163757.htm目前,大多采用的是有線多點(diǎn)溫度采集系統(tǒng),通過(guò)安裝溫度節(jié)點(diǎn)來(lái)實(shí)現(xiàn)對(duì)室內(nèi)外溫度監(jiān)控。這種傳統(tǒng)的多點(diǎn)采集系統(tǒng)需要用導(dǎo)線與每個(gè)溫度采集節(jié)點(diǎn)連接,其技術(shù)成熟,制作成本相對(duì)較低。但是,在許多場(chǎng)合需要將傳感器節(jié)點(diǎn)直接放置在目標(biāo)地點(diǎn)進(jìn)行現(xiàn)場(chǎng)的數(shù)據(jù)采集,這就要求傳感器節(jié)點(diǎn)具有無(wú)線通信的能力。同時(shí),由于無(wú)線傳感器通常使用電池作為能源,所以,它對(duì)能耗要求非常高。
針對(duì)這些問題,本文提出一個(gè)無(wú)線傳感器設(shè)計(jì)方案,來(lái)實(shí)現(xiàn)主機(jī)端與傳感器節(jié)點(diǎn)之間的通信,并且通過(guò)選用低功耗的芯片和對(duì)軟件的低功耗設(shè)計(jì)實(shí)現(xiàn)了低功耗的目標(biāo)。本文設(shè)計(jì)主要是基于433 MHz ISM頻段,無(wú)需申請(qǐng)就可以使用。該設(shè)計(jì)方案有許多明顯的優(yōu)點(diǎn):傳輸速度快、距離遠(yuǎn)、數(shù)據(jù)穩(wěn)定;采用低功耗模式,延長(zhǎng)電池使用時(shí)間;能保證任何時(shí)候數(shù)據(jù)不丟失,提高系統(tǒng)的強(qiáng)健度。
2 系統(tǒng)硬件設(shè)計(jì)
所設(shè)計(jì)的無(wú)線溫度傳感器主要由以下幾部分組成:溫度測(cè)量、發(fā)射部分、接收部分、LCD顯示部分以及操控部分。系統(tǒng)結(jié)構(gòu)圖如圖1所示。
2.1 溫度測(cè)量電路
在溫度測(cè)量電路中采用Dallas公司生產(chǎn)的1-Wire總線數(shù)字溫度傳感器DS18B20。溫度測(cè)量電路如圖2所示。
DS18B20是3引腳TO-92小體積封裝形式;溫度測(cè)量范圍為-55~125℃,可編程為9-12位A/D轉(zhuǎn)換精度,測(cè)溫分辨率可達(dá)0.062 5℃,被測(cè)溫度以帶符號(hào)擴(kuò)展的16位數(shù)字方式串行輸出。
DS18B20內(nèi)部結(jié)構(gòu)主要由4部分組成:64位ROM、溫度傳感器、非揮發(fā)的溫度報(bào)警觸發(fā)器TH和 TL及配置寄存器。ROM中的64位序列號(hào)是出廠前被光刻好的,它可以看作是該DS18B20的地址序列碼,每個(gè)DS18B20的64位序列號(hào)均不相同。ROM的作用是使每一個(gè)DS18B20都各不相同,這樣就可以實(shí)現(xiàn)一根總線上掛接多個(gè)DS181E0的目的。
DS18B20中的溫度傳感器完成對(duì)溫度的測(cè)量,用16位符號(hào)擴(kuò)展的二進(jìn)制補(bǔ)碼形式提供,以0.062 5℃/LSB形式表達(dá)。例如+25.062 5℃的數(shù)字輸出為0191H,-25.062 5℃的數(shù)字輸出為FF6FH。
高低溫報(bào)警觸發(fā)器TH和TL、配置寄存器均由一個(gè)字節(jié)的E2PROM組成,使用一個(gè)存儲(chǔ)器功能命令可對(duì)TH,TL或配置寄存器寫入。其中配置寄存器的格式如下:
R1和R0決定溫度轉(zhuǎn)換的精度位數(shù):R1R0=“00”,9位精度,最大轉(zhuǎn)換時(shí)間為93.75 ms;R1R0=“01”,10位精度,最大轉(zhuǎn)換時(shí)間為187.5 ms;R1R0=“10”,11位精度,最大轉(zhuǎn)換時(shí)間為375 ms;R1R0;“11”,12位精度,最大轉(zhuǎn)換時(shí)間為750 ms;未編程時(shí)默認(rèn)為12位精度。設(shè)計(jì)取R1R0=“11”。
2.2 無(wú)線收發(fā)電路
2.2.1 IA4421與單片機(jī)的接口
IA4421支持SPI通信協(xié)議,本設(shè)計(jì)選擇了美國(guó)ATMEL公司出品的高性能單片機(jī)ATmega324p,其內(nèi)置增強(qiáng)型SPI接口,并且有32 kB的FLASH,能夠滿足在系統(tǒng)中的LCD上顯示中文字符。IA4421與單片機(jī)的接口電路示意圖如圖3所示。
ATmega324p內(nèi)置的增強(qiáng)型串行外設(shè)接口SPI提供訪問一個(gè)全雙工同步串行總線的能力。SPI所使用的4個(gè)信號(hào)為MOSI,MISO,SCK和SS。MOSI用于從主器件到從器件的串行數(shù)據(jù)傳輸;MISO用于從器件到主器件的串行數(shù)據(jù)傳輸;SCK用于同步主器件和從器件之間在MOSI和MISO線上的串行數(shù)據(jù)傳輸。
2.2.2 無(wú)線發(fā)送時(shí)序
IA4421的發(fā)送方式為發(fā)送寄存器緩沖數(shù)據(jù)傳輸方式,由配置設(shè)置命令的第7位el來(lái)使能,圖1可以看出,IA4421共有2個(gè)8位的數(shù)據(jù)寄存器,發(fā)送的數(shù)據(jù)首先被鎖存到其中一個(gè)數(shù)據(jù)寄存器中,當(dāng)電源管理命令的第5位et被置1,則發(fā)送器開始以設(shè)置的碼率從第一個(gè)寄存器向外發(fā)送數(shù)據(jù)。
每次發(fā)送數(shù)據(jù)必須以0xAA作為發(fā)送數(shù)據(jù)的前導(dǎo)碼,否則外部接收裝置無(wú)法接收數(shù)據(jù)。若是采用同步模式,則要用0x2DD4作為同步模式的標(biāo)志碼,然后才能開始傳輸數(shù)據(jù)。引腳nIRQ可以用來(lái)檢測(cè)寄存器是否準(zhǔn)備好從微處理器接收下一個(gè)字節(jié)來(lái)發(fā)送,若是引腳nIRQ變?yōu)榈碗娖?,則表示寄存器準(zhǔn)備好了。
評(píng)論