當(dāng)前位置:首頁 > 電源 > 數(shù)字電源
[導(dǎo)讀]本文從低功耗、小體積、使用簡單等方面考慮,基于射頻SoC nRF9E5和數(shù)字溫度傳感器DS18B20設(shè)計了一個無線測溫系統(tǒng),整個系統(tǒng)由多個無線節(jié)點和1個基站組成。無線節(jié)點工作在各個測溫地點,進行溫度數(shù)據(jù)采集和無線發(fā)送。

目前,很多場合的測溫系統(tǒng)采用的還是有線測溫設(shè)備,由溫度傳感器、分線器、測溫機和監(jiān)控機等組成,各部件之間采用電纜連接進行數(shù)據(jù)傳輸。這種系統(tǒng)布線復(fù)雜、維護困難、成本高,可采用無線方案解決這些問題。無線測溫系統(tǒng)是一種集溫度信號采集、大容量存儲、無線射頻發(fā)送、LED(或LCD)動態(tài)顯示、控制與通信等功能于一體的新型系統(tǒng)。

本文從低功耗、小體積、使用簡單等方面考慮,基于射頻SoC nRF9E5和數(shù)字溫度傳感器DS18B20設(shè)計了一個無線測溫系統(tǒng),整個系統(tǒng)由多個無線節(jié)點和1個基站組成。無線節(jié)點工作在各個測溫地點,進行溫度數(shù)據(jù)采集和無線發(fā)送?;九c多個節(jié)點進行無線通信,并通過數(shù)碼管將數(shù)據(jù)顯示出來,同時可以通過RS-232串口將數(shù)據(jù)發(fā)送給PC。

nRF9E5簡介

nRF9E5是Nordic公司推出的射頻片上系統(tǒng),內(nèi)嵌8051兼容微控制器、RF收發(fā)器和4通道10位A/D轉(zhuǎn)換器,是真正的系統(tǒng)級芯片,其功能結(jié)構(gòu)如圖1所示。

圖1  nRF9E5功能結(jié)構(gòu)框圖

nRF9E5的片內(nèi)微控制器與標(biāo)準(zhǔn)8051兼容,指令時序與標(biāo)準(zhǔn)8051稍有區(qū)別。中斷控制器支持5個擴展中斷源:ADC中斷、SPI中斷、喚醒中斷和兩個無線收發(fā)中斷。此外,還擴展了兩個數(shù)據(jù)指針,使得片外RAM存取數(shù)據(jù)更為方便。微控制器內(nèi)有256B的數(shù)據(jù)RAM和512B的ROM。上電復(fù)位或軟件復(fù)位后,控制器自動執(zhí)行ROM引導(dǎo)區(qū)中的代碼,用戶程序通常在引導(dǎo)區(qū)的引導(dǎo)下,從E2PROM加載到1個4KB的RAM中,該RAM也可用來存儲數(shù)據(jù)。當(dāng)進行批量生產(chǎn)時,可要求廠家代理將程序固化到片內(nèi),這樣可省去E2PROM的費用并進一步減小系統(tǒng)體積。

nRF9E5內(nèi)置收發(fā)器具有與單片射頻收發(fā)器nRF905相同的功能,可通過片內(nèi)MCU的并行口或SPI口與微控制器通信。收發(fā)器由頻率合成器、功率放大器、調(diào)制器和接收單元組成。輸出功率、頻道和其他射頻參數(shù)可通過對特殊功能寄存器RADIO編程進行控制。發(fā)射模式(TX)下,最小工作電流僅為9mA(輸出功率-10dBm),接收(RX)模式下的工作電流為12.5mA,掉電模式下的工作電流僅為2.5μA??梢姡琻RF9E5的功耗很低。

nRF9E5采用Nordic公司的ShockBurst技術(shù)(自動處理前綴、地址和CRC),實現(xiàn)低速數(shù)據(jù)輸入,高速數(shù)據(jù)輸出,從而降低了系統(tǒng)的平均功耗。另外,nRF9E5還具有載波檢測功能。在ShockBurst接收方式下,當(dāng)工作信道內(nèi)有射頻載波出現(xiàn)時,載波檢測引腳(CD)被置高。也就是說,當(dāng)收發(fā)器準(zhǔn)備發(fā)送數(shù)據(jù)時,它首先進入接收模式并檢測所工作的信道是否可以發(fā)送數(shù)據(jù)(信道是否空閑),這是一種簡單的傳輸前監(jiān)聽協(xié)議。這個特性很好地避免了同一工作頻率下不同發(fā)射器數(shù)據(jù)包之間的碰撞。

DS18B20概述

DS18B20是美國DALLAS公司的“單總線”數(shù)字溫度傳感器,它具有結(jié)構(gòu)簡單、體積小、功耗低、無須外接元件、用戶可自行設(shè)定預(yù)警上下限溫度等特點。“單總線”結(jié)構(gòu)獨特而且經(jīng)濟,采用一根I/O數(shù)據(jù)線既可供電又可傳輸數(shù)據(jù),使用戶可輕松地組建傳感器網(wǎng)絡(luò),為測量系統(tǒng)的構(gòu)建引入全新概念。

3引腳封裝的DS18B20形如一只三極管,其內(nèi)部結(jié)構(gòu)如圖2所示。主要由四部分組成:64位光刻ROM、溫度傳感器、非易失性的溫度報警觸發(fā)器和配置寄存器。此外,還有電源檢測模塊、存儲和控制邏輯器、中間結(jié)果緩存器和8位循環(huán)冗余校驗碼(CRC)發(fā)生器。

圖2  3引腳DS18B20內(nèi)部結(jié)構(gòu)


ROM中的64位序列號是出廠前被光刻好的,可以看作該DS18B20的地址序列碼,每個DS18B20的64位序列號均不相同,這樣就可以實現(xiàn)一根總線上掛接多個DS18B20的目的。DS18B20內(nèi)部的RAM由9個字節(jié)的高速緩存器和E2PROM組成,數(shù)據(jù)先寫入高速緩存器,經(jīng)校驗后再傳送給E2PROM。通過DS18B20功能命令對RAM進行操作。

DS18B20的測量溫度范圍為-55℃~125℃,在-10℃~85℃范圍內(nèi),精度為0.5℃,可編程設(shè)定9~12位的分辨率,默認值為12位,轉(zhuǎn)換12位溫度信號所需時間為750ms(最大)。檢測溫度由2字節(jié)組成,字節(jié)1的高5位S代表符號位,字節(jié)0的低4位是小數(shù)部分,中間7位是整數(shù)部分。

無線測溫系統(tǒng)組成及硬件設(shè)計

無線測溫系統(tǒng)主要可分為基站和無線節(jié)點兩大部分。每套系統(tǒng)一般只有1個基站,包括微控制器及射頻收發(fā)單元、顯示單元、報警單元、電源模塊及接口單元,主要硬件連接如圖3所示。

圖3  基站主要部件原理圖


接口單元是為了方便射頻模塊和PC的通信,通??刹捎肦S-232接口、USB接口、以太網(wǎng)接口等,其中,RS-232接口是目前PC與通信工業(yè)中應(yīng)用最廣泛的一種串行接口。本文使用RS-232接口,采用MAX3232芯片實現(xiàn)RS-232電平與TTL電平之間的轉(zhuǎn)換。MAX3232是MAXIM公司生產(chǎn)的一種RS-232接口芯片,使用單一電源電壓供電,電源電壓在3.0~5.5V范圍內(nèi)都可以正常工作。

基站接收到數(shù)據(jù)后,將溫度信息通過數(shù)碼管(或液晶顯示屏)顯示出來,根據(jù)需要,還可以通過RS-232接口與PC進行通信。為簡化系統(tǒng),本設(shè)計直接用nRF9E5的P0口驅(qū)動數(shù)碼管(未在圖中給出),但是P0口不具備數(shù)據(jù)保持能力,需要外接一定大小的上拉電阻,顯示方法采用掃描法。采用一個蜂鳴器作為報警裝置,當(dāng)溫度超過設(shè)定范圍時,鳴叫報警。射頻天線采用單鞭天線。

無線節(jié)點分布在溫度采集點,由數(shù)字溫度傳感器DS18B20、射頻SoC nRF9E5、天線及電池組成。在實際應(yīng)用中,可以有多個無線節(jié)點,它們與基站之間通過射頻進行無線通信。無線節(jié)點的電路結(jié)構(gòu)如圖4所示,其中,25AA320為E2PROM程序存儲器。DS18B20有寄生電源和外部電源兩種供電方式,本文采用外部供電方式,VDD引腳直接連接外部電源。DS18B20在空閑時,其DQ腳由上拉電阻置為高電平。無線節(jié)點的天線根據(jù)實際需要可選用單鞭天線或PCB印制天線。

圖4  無線測溫節(jié)點結(jié)構(gòu)簡圖


無線測溫系統(tǒng)的軟件設(shè)計

本系統(tǒng)軟件設(shè)計比較復(fù)雜,整個軟件系統(tǒng)的流程如圖5所示,主要有以下幾個關(guān)鍵函數(shù):DS18B20初始化及溫度采集函數(shù)、nRF9E5初始化及射頻發(fā)送(接收)函數(shù)、數(shù)據(jù)顯示函數(shù)、串口通信函數(shù)等。

圖5  無線測溫系統(tǒng)軟件流程


限于篇幅,各個函數(shù)的詳細流程圖不再給出,僅列出幾個函數(shù)片斷供參考,程序采用C語言編寫,用Keil C51進行編譯。

DS18B20采用單總線數(shù)據(jù)傳輸方式,對讀寫的操作時序要求嚴格。DS18B20提供了一系列指令來控制傳感器的工作,利用這些指令就可以對DS18B20進行操作了。為了操作方便,可編寫兩個操作函數(shù),源碼如程序清單1所示。

程序清單1:
//-------------------
//啟動DS18B20的1次溫度轉(zhuǎn)換
//-------------------
void ConvertT(void)
{
  RST18B20( );  //初始化
  WR18B20(0xcc);   //跳過多傳感器識別
  WR18B20(0x44);  //啟動溫度轉(zhuǎn)換
}
//-------------------
//讀取DS18B20
//-------------------
int ReadT(void)
{
 RST18B20( );    //初始化
 WR18B20(0xcc);    //跳過多傳感器識別
 WR18B20(0xbe);    //讀DS18B20緩存器
 DPL=RD18B20( );    //溫度低位
 DPH=RD18B20( );   //溫度高位
 return(DPTR);    //返回讀出的溫度值
}

在開始進行無線通信前,必須對nRF9E5進行初始化配置,這個配置是通過對配置寄存器的設(shè)置來完成的。nRF9E5有一個144位的配置字,規(guī)定了無線收發(fā)器的接收地址、收發(fā)頻率、發(fā)射功率、無線傳輸頻率、無線收發(fā)模式、CRC校驗和的長度及有效數(shù)據(jù)的長度等。nRF9E5的初始化工作,可根據(jù)具體要求對照數(shù)據(jù)手冊進行配置。

數(shù)據(jù)的發(fā)送和接收是無線收發(fā)器的主要功能,當(dāng)有數(shù)據(jù)要發(fā)送時,首先通過SPI接口把所要發(fā)送的數(shù)據(jù)送給nRF905模塊,設(shè)置TRX_CE、TXEN為高以激活nRF9E5進入發(fā)送狀態(tài)。無線系統(tǒng)自動上電,數(shù)據(jù)自動加前導(dǎo)碼和CRC校驗,然后發(fā)送數(shù)據(jù)包。具體過程如程序清單2所示。

程序清單2:
//-------------------
//發(fā)送數(shù)據(jù)包
//-------------------
void TransmitPacket(INT8U *pBuf)
{
 INT8U i;
 RACSN = 0;
 SpiReadWrite(WTP);
 for (i=0; i<Nrf9e5Config[10]; i++)
       {
         SpiReadWrite(pBuf[i]);   //寫入發(fā)送緩沖區(qū)
        }
          RACSN = 1;
         TXEN = 1;
         TRX_CE = 1;              //使能發(fā)送
Delay100us(1);
         TRX_CE = 0;          //發(fā)送完畢
}

當(dāng)要接收數(shù)據(jù)時,通過設(shè)置TRX_CE為高、TXEN為低,使nRF9E5進入接收狀態(tài)。當(dāng)nRF9E5監(jiān)測到和接收頻率相同的載波時,載波檢測(CD)被置高;當(dāng)接收到有效的地址時,地址匹配(AM)被置高;當(dāng)接收到有效的數(shù)據(jù)包(CRC校驗正確)時,數(shù)據(jù)就緒(DR)置高。接收數(shù)據(jù)的具體程序清單不再列出。

當(dāng)需要將接收到的數(shù)據(jù)通過RS-232串口輸出時,首先要進行串口初始化,開啟nRF9E5管腳P0.1、P0.2的第二功能,具體過程見程序清單3。

程序清單3:
//-------------------
//串口初始化
//-------------------
void InitUart(void)
{
    TH1=243;                                                  
    CKCON|=0x10;
    PCON=0x80;          // 設(shè)置波特率
    SCON=0x52;          // 模式1,使能接收
    TMOD&=~0x30;
    TMOD|=0x20;                  
    TR1=1;               //定時器1開啟
    P0_ALT|=0x06;        //串口使能
    P0_DIR|=0x02;        //P0.1 輸入
    P0_DIR&=0xfb;        //P0.2輸出
    ES=0;
}

結(jié)束語

本文基于nRF9E5和DS18B20設(shè)計了一個無線測溫系統(tǒng),具有體積小、功耗低等優(yōu)點,適用于采油廠、發(fā)電廠、鉆井施工等不宜進行有線測溫的場合,應(yīng)用前景廣闊。

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉