《電子技術應用》
您所在的位置:首頁 > 模擬設計 > 設計應用 > 基于IA4421的數字化無線溫度傳感器的設計與實現(xiàn)
基于IA4421的數字化無線溫度傳感器的設計與實現(xiàn)
摘要: 目前,大多采用的是有線多點溫度采集系統(tǒng),,通過安裝溫度節(jié)點來實現(xiàn)對室內外溫度監(jiān)控,。這種傳統(tǒng)的多點采集系統(tǒng)需要用導線與每個溫度采集節(jié)點連接,其技術成熟,,制作成本相對較低。但是,在許多場合需要將傳感器節(jié)點直接放置在目標地點進行現(xiàn)場的數據采集,,這就要求傳感器節(jié)點具有無線通信的能力。同時,,由于無線傳感器通常使用電池作為能源,,所以,它對能耗要求非常高,。
Abstract:
Key words :

1 引 言

目前,,大多采用的是有線多點溫度采集系統(tǒng),通過安裝溫度節(jié)點來實現(xiàn)對室內外溫度監(jiān)控,。這種傳統(tǒng)的多點采集系統(tǒng)需要用導線與每個溫度采集節(jié)點連接,,其技術成熟,制作成本相對較低,。但是,,在許多場合需要將傳感器節(jié)點直接放置在目標地點進行現(xiàn)場的數據采集,這就要求傳感器節(jié)點具有無線通信的能力,。同時,,由于無線傳感器通常使用電池作為能源,所以,,它對能耗要求非常高,。

針對這些問題,本文提出一個無線傳感器設計方案,,來實現(xiàn)主機端與傳感器節(jié)點之間的通信,,并且通過選用低功耗的芯片和對軟件的低功耗設計實現(xiàn)了低功耗的目標。本文設計主要是基于433 MHz ISM頻段,,無需申請就可以使用,。該設計方案有許多明顯的優(yōu)點:傳輸速度快,、距離遠、數據穩(wěn)定,;采用低功耗模式,,延長電池使用時間;能保證任何時候數據不丟失,,提高系統(tǒng)的強健度,。

2 系統(tǒng)硬件設計

所設計的無線溫度傳感器主要由以下幾部分組成:溫度測量、發(fā)射部分,、接收部分,、LCD顯示部分以及操控部分。系統(tǒng)結構圖如圖1所示,。
 

2.1 溫度測量電路

在溫度測量電路中采用Dallas公司生產的1-Wire總線數字溫度傳感器DS18B20,。溫度測量電路如圖2所示。
 

DS18B20是3引腳TO-92小體積封裝形式,;溫度測量范圍為-55~125℃,,可編程為9-12位A/D轉換精度,測溫分辨率可達0.062 5℃,,被測溫度以帶符號擴展的16位數字方式串行輸出,。

DS18B20內部結構主要由4部分組成:64位ROM、溫度傳感器,、非揮發(fā)的溫度報警觸發(fā)器TH和 TL及配置寄存器,。ROM中的64位序列號是出廠前被光刻好的,它可以看作是該DS18B20的地址序列碼,,每個DS18B20的64位序列號均不相同,。ROM的作用是使每一個DS18B20都各不相同,這樣就可以實現(xiàn)一根總線上掛接多個DS181E0的目的,。

DS18B20中的溫度傳感器完成對溫度的測量,,用16位符號擴展的二進制補碼形式提供,以0.062 5℃/LSB形式表達,。例如+25.062 5℃的數字輸出為0191H,,-25.062 5℃的數字輸出為FF6FH。

高低溫報警觸發(fā)器TH和TL,、配置寄存器均由一個字節(jié)的E2PROM組成,,使用一個存儲器功能命令可對TH,TL或配置寄存器寫入,。其中配置寄存器的格式如下:
 

R1和R0決定溫度轉換的精度位數:R1R0=“00”,,9位精度,最大轉換時間為93.75 ms;R1R0=“01”,,10位精度,,最大轉換時間為187.5 ms;R1R0=“10”,,11位精度,,最大轉換時間為375 ms;R1R0,;“11”,,12位精度,,最大轉換時間為750 ms,;未編程時默認為12位精度。設計取R1R0=“11”,。

2.2 無線收發(fā)電路

2.2.1 IA4421與單片機的接口

IA4421支持SPI通信協(xié)議,,本設計選擇了美國ATMEL公司出品的高性能單片機ATmega324p,其內置增強型SPI接口,,并且有32 kB的FLASH,,能夠滿足在系統(tǒng)中的LCD上顯示中文字符。IA4421與單片機的接口電路示意圖如圖3所示,。
 

ATmega324p內置的增強型串行外設接口SPI提供訪問一個全雙工同步串行總線的能力,。SPI所使用的4個信號為MOSI,MISO,,SCK和SS,。MOSI用于從主器件到從器件的串行數據傳輸;MISO用于從器件到主器件的串行數據傳輸,;SCK用于同步主器件和從器件之間在MOSI和MISO線上的串行數據傳輸,。

2.2.2 無線發(fā)送時序

IA4421的發(fā)送方式為發(fā)送寄存器緩沖數據傳輸方式,由配置設置命令的第7位el來使能,,圖1可以看出,,IA4421共有2個8位的數據寄存器,發(fā)送的數據首先被鎖存到其中一個數據寄存器中,,當電源管理命令的第5位et被置1,,則發(fā)送器開始以設置的碼率從第一個寄存器向外發(fā)送數據。

每次發(fā)送數據必須以0xAA作為發(fā)送數據的前導碼,,否則外部接收裝置無法接收數據,。若是采用同步模式,則要用0x2DD4作為同步模式的標志碼,,然后才能開始傳輸數據,。引腳nIRQ可以用來檢測寄存器是否準備好從微處理器接收下一個字節(jié)來發(fā)送,若是引腳nIRQ變?yōu)榈碗娖剑瑒t表示寄存器準備好了,。

2.2.3 無線接收時序

IA4421的接收方式有兩種:一種是一直接收,;另一種是FIFO模式。前一種方式并不推薦,,會引起較高的誤碼率,。本設計采用后一種模式。在相應的控制字都設置好之后,,數據已進入緩沖器中,,若引腳nIRQ變成低電平,則表示IA4421準備好接收數據,,這時發(fā)送FIFO讀命令字,,開始接收。

2.3 外圍天線設計

IA4421的支持天線直接驅動,,設計相當簡單方便并且通信距離長,。一個50 Ω的外接螺旋天線和對應的差分電路就可以實現(xiàn)數據的發(fā)送和接收。本系統(tǒng)設計的天線是用1.17 cm的單芯銅導線實現(xiàn),,導線的直徑是0.6 mm,,用螺絲刀的金屬棒饒制7圈成螺旋狀。經過實驗,,實際有效的通信距離能達到200 m左右,,滿足了系統(tǒng)需要。

3 系統(tǒng)軟件設計

3.1 單片機軟件設計

單片機軟件部分主要包括主程序,、中斷子程序,、測溫子程序、LCD的轉換顯示,,蜂鳴器報警子程序,,按鍵子程序以及SPI子程序等。為了降低功耗,,使用中斷來喚醒單片機進行測溫等工作,,因此主程序部分比較簡單,主要負責系統(tǒng)各部分初始化和中斷的調用,,在系統(tǒng)初始化完成后就直接進入睡眠模式,,當中斷到來時單片機退出睡眠模式,調用中斷子程序實現(xiàn)測溫,、轉換顯示,、溫度數據的傳輸等功能。單片機控制程序流程圖如圖4所示,。
 

3.2 IA4421應用程序設計

本系統(tǒng)是基于無線收發(fā)芯片IA4421和單片機ATmega324p的增強型串行外設接口SPI來實現(xiàn)無線數據的傳輸,,在核心協(xié)議棧上編寫自己的上層應用程序,。發(fā)送接收數據的程序流程圖如圖5所示。
 

3.3 低功耗設計

作為無線傳感器,,低功耗運行可以最大限度地延長設備的有效使用時間,,本系統(tǒng)是采用電池供電,功耗肯定就是一個不得不考慮的問題,。為了獲得最佳性能,,設計時在電源損耗和可用性方面必須根據情況權衡使用,除了選用低功耗器件外,,還從以下幾個方面設計電源管理程序以盡量減少無線溫度傳感器的功耗:

(1)由于無線溫度傳感器負責向控制終端傳輸數據,,因此何時進行數據采集、何時進行數據傳輸可以由上位機的控制終端決定,,非常適合使用休眠模式和呼吸模式,,通過減少IA4421在微微網中的活動達到節(jié)電的目的。把控制終端作為主設備,,將電源管理程序設計在終端的應用控制層中,,并由控制終端完成設備的查詢,、配對,、建鏈等工作,當無線傳感器與控制終端配對成功并連接后進入休眠模式,,此時主從設備仍然保持著信道,,只是不能發(fā)送和接收數據。當需要進行數據傳輸時,,退出休眠模式進入呼吸模式,,通過呼吸時隙發(fā)送數據,呼吸間隔可設為20~40 ms,,間隔過大會帶來明顯延遲,,當數據傳輸結束后再次進入休眠模式,從而盡可能地降低能耗,。

(2)應用單片機的睡眠模式達到節(jié)能目的,。當IA4421退出待機狀態(tài),發(fā)送指令進行數據采集時,,IA4421的中斷請求標志位nIRQ產生低電平,,通過中斷標志位上電平的變化產生外部中斷來喚醒單片機進入工作狀態(tài)。

4 結 語

所設計的數字化無線溫度傳感器可應用到各種需要無接觸的測溫場合,,實現(xiàn)對現(xiàn)場溫度的“先知先覺”,。設計中充分利用各芯片的低功耗特性,有效地延長了電池使用壽命,。無線數據傳輸方式使用方便靈活,。系統(tǒng)完全可以擴充為一個網絡系統(tǒng),形成溫度采集網,以滿足現(xiàn)場控制及測控系統(tǒng)的各種需求,,這將是作者下步所研究開發(fā)的課題,。
 

此內容為AET網站原創(chuàng),未經授權禁止轉載,。