《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 通信與網(wǎng)絡(luò) > 設(shè)計(jì)應(yīng)用 > 基于MSP430單片機(jī)的多路無(wú)線(xiàn)溫度檢測(cè)系統(tǒng)
基于MSP430單片機(jī)的多路無(wú)線(xiàn)溫度檢測(cè)系統(tǒng)
現(xiàn)代電子技術(shù)
王 玲,王中訓(xùn),王 恒
摘要: 設(shè)計(jì)了基于MSP430的多點(diǎn)無(wú)線(xiàn)溫度檢測(cè)系統(tǒng)。系統(tǒng)采用低功耗的MSP430F149單片機(jī)作為核心控制部件,硬件由無(wú)線(xiàn)通信模塊、溫度采集電路、顯示模塊和串口通信模塊組成,軟件采用模塊化的設(shè)計(jì)方法。測(cè)試表明,整個(gè)系
Abstract:
Key words :

摘要:設(shè)計(jì)了基于MSP430的多點(diǎn)無(wú)線(xiàn)溫度檢測(cè)系統(tǒng)。系統(tǒng)采用低功耗的MSP430F149單片機(jī)作為核心控制部件,硬件由無(wú)線(xiàn)通信模塊、溫度采集電路、顯示模塊和串口通信模塊組成,軟件采用模塊化的設(shè)計(jì)方法。測(cè)試表明,整個(gè)系統(tǒng)都是在超低功耗的要求下進(jìn)行元件及運(yùn)行方式的選擇,各個(gè)基站只需要3 V電池供電就能實(shí)現(xiàn)長(zhǎng)時(shí)間運(yùn)作,能很好地實(shí)現(xiàn)超低功耗,并且實(shí)現(xiàn)了測(cè)量溫度的實(shí)時(shí)性。
關(guān)鍵詞:MSP430單片機(jī)NRF24L01;NTC熱敏電阻;超低功耗

0 引言
    溫度在人類(lèi)日常生活中扮演著極其重要的角色,同時(shí)在工農(nóng)業(yè)生產(chǎn)過(guò)程中,溫度檢測(cè)具有十分重要的意義?,F(xiàn)階段溫度檢測(cè)主要是有線(xiàn)定點(diǎn)溫度檢測(cè),其溫度檢測(cè)原理為單片機(jī)利用溫度傳感器檢測(cè)溫度,并在數(shù)碼管或LCD上進(jìn)行溫度顯示。同時(shí)由于系統(tǒng)沒(méi)有報(bào)警功能,故需要人為來(lái)判斷是否需要進(jìn)行升溫或者降溫,這使系統(tǒng)的檢測(cè)喪失了實(shí)時(shí)性。另外,在某些環(huán)境惡劣的工業(yè)環(huán)境,以人工方式直接操作設(shè)置儀表測(cè)量溫度也不現(xiàn)實(shí),因此采用無(wú)線(xiàn)方式進(jìn)行溫度檢測(cè)尤為必要。
    目前有些設(shè)計(jì)能夠?qū)崿F(xiàn)無(wú)線(xiàn)溫度采集,但功耗過(guò)高是其最大的缺點(diǎn)。在實(shí)際溫度控制過(guò)程中既要求系統(tǒng)具有穩(wěn)定性、實(shí)時(shí)性,又需要使系統(tǒng)功耗低及保證溫度的均勻性,因此設(shè)計(jì)一種低功耗的多點(diǎn)無(wú)線(xiàn)溫度檢測(cè)系統(tǒng)很有意義。本文提出一種采用低功耗單片機(jī)MSP430F149單片機(jī)實(shí)現(xiàn)的多點(diǎn)無(wú)線(xiàn)溫度測(cè)量系統(tǒng),解決了上述問(wèn)題。該系統(tǒng)能實(shí)現(xiàn)對(duì)溫度智能化的檢測(cè),能夠同時(shí)進(jìn)行多點(diǎn)溫度檢測(cè),是可以實(shí)現(xiàn)遠(yuǎn)程控制的無(wú)線(xiàn)溫度檢測(cè)系統(tǒng)。低功耗、實(shí)時(shí)性的無(wú)線(xiàn)溫度檢測(cè)是該設(shè)計(jì)的最大特點(diǎn)。

1 系統(tǒng)構(gòu)成
    系統(tǒng)分為下位機(jī)、上位機(jī)和PC機(jī)三部分。PC機(jī)是整個(gè)系統(tǒng)的最上層,負(fù)責(zé)對(duì)下位機(jī)的控制和管理,并對(duì)收集到的各個(gè)節(jié)點(diǎn)的數(shù)據(jù)進(jìn)行存儲(chǔ)和處理。由于下位機(jī)無(wú)法直接與PC機(jī)通信,這就需要使用上位機(jī)作為中間媒介。上位機(jī)與下位機(jī)通過(guò)無(wú)線(xiàn)模塊通信,與PC機(jī)采用有線(xiàn)連接。
    該設(shè)計(jì)采用MSP430F149單片機(jī)作為核心控制模塊,其最主要特點(diǎn)為低功耗。MSP430F149具有雙串口的特點(diǎn),利用其中的一個(gè)串行口與PC機(jī)進(jìn)行通訊時(shí),兩者之間必須通過(guò)RS 232電平轉(zhuǎn)換芯片。單片機(jī)與無(wú)線(xiàn)發(fā)射模塊nRF24L01通訊時(shí)可通過(guò)通用I/O口模擬串口通訊?,F(xiàn)場(chǎng)溫度數(shù)據(jù)的采集是利用NTC100熱敏電阻和MSP430F149單片機(jī)部帶有的12位A/D轉(zhuǎn)換器來(lái)實(shí)現(xiàn)的。這里不需要外加ADC,可以簡(jiǎn)化電路,提高系統(tǒng)的穩(wěn)定性。將按鍵作為輸入模塊,用來(lái)改變溫度報(bào)警的上下限。由于設(shè)計(jì)要求不需要太多內(nèi)容的顯示,考慮到功耗及性?xún)r(jià)比,可以自制一個(gè)簡(jiǎn)易段碼液晶用于顯示。下位機(jī)設(shè)計(jì)方案和系統(tǒng)整體構(gòu)成框圖分別如圖1,圖2所示。

a.JPG

2 硬件設(shè)計(jì)
2.1 無(wú)線(xiàn)通信模塊設(shè)計(jì)
    nRF24L01是一款新型單片射頻收發(fā)器件,工作于2.4~2.5 GHz ISM頻段。內(nèi)置頻率合成器、功率放大器、晶體振蕩器、調(diào)制器等功能模塊,并融合了增強(qiáng)型ShockBurSt技術(shù),其中輸出功率和通信頻道可通過(guò)程序進(jìn)行配置。nRF24L01功耗低,有多種低功率工作模式(掉電模式和空閑模式)使節(jié)能設(shè)計(jì)更方便,圖3為它的應(yīng)用電路。

b.JPG
    從單片機(jī)控制的角度來(lái)看,只需要將圖3中左邊的6個(gè)控制和數(shù)據(jù)信號(hào)與單片機(jī)通用I/O口相連。


2.2 溫度采集電路
    為了使整個(gè)系統(tǒng)的功耗更低,采用低功耗的熱敏電阻NTC100和MSP430149內(nèi)部自帶的12位A/D轉(zhuǎn)換器實(shí)現(xiàn)溫度的采集功能。其理論分析與計(jì)算電阻值和溫度變化之間的關(guān)系。
    c.JPG
    式中:RT為溫度T(單位:K)時(shí)的NTC熱敏電阻阻值;RN為額定溫度TN(單位:K)時(shí)的NTC熱敏電阻阻值;T為規(guī)定溫度(單位:K);B為NTC熱敏電阻的材料常數(shù),又叫熱敏指數(shù)。
    常溫環(huán)境中,溫度為28℃,換算成開(kāi)氏溫度為273.15+28=301.15 K。通過(guò)多次測(cè)28℃及30℃環(huán)境下的數(shù)據(jù),如表1所示,取平均值,盡量減小誤差,算得B值。

d.JPG
    通過(guò)式(1)可得,將T,TN都轉(zhuǎn)化成開(kāi)爾文溫度進(jìn)行計(jì)算得B=4 064.34。經(jīng)過(guò)比較發(fā)現(xiàn),求得的阻值與測(cè)得的阻值很相近。
    圖4為溫度采集模塊,其中R1為熱敏電阻,R3為200 kΩ電阻,R2為0~20 kΩ的可調(diào)電阻,用來(lái)調(diào)整溫度計(jì)的準(zhǔn)確性。U0為檢測(cè)到的電壓,將U0接到單片機(jī)管腳,通過(guò)A/D轉(zhuǎn)換,將得到的電壓值轉(zhuǎn)換成溫度值,在LCD上顯示出來(lái)。

f.JPG
2.3 顯示模塊
    本次設(shè)計(jì)采用自制的16位段碼液晶進(jìn)行顯示。利用液晶驅(qū)動(dòng)IC(HT1621)以及配套的液晶LCD玻璃片,自制16位段碼液晶。另外,驅(qū)動(dòng)IC上裝有兩種頻率的蜂鳴驅(qū)動(dòng)電路,可以實(shí)現(xiàn)報(bào)警功能。
2.4 串口通信模塊
    在溫度采集過(guò)程中,由于系統(tǒng)隨時(shí)需要將采集到的溫度數(shù)值通過(guò)PC機(jī)上的VC界面進(jìn)行顯示,因此需要在PC機(jī)和單片機(jī)之間進(jìn)行相互通信。由于PC機(jī)的RS 232電平與單片機(jī)的TTL電平不同,因此用MAX3232芯片實(shí)現(xiàn)電平的相互轉(zhuǎn)換,這樣就可以實(shí)現(xiàn)單片機(jī)與PC機(jī)之間的相互通信。

3 軟件設(shè)計(jì)
    系統(tǒng)的軟件設(shè)計(jì)采用模塊化設(shè)計(jì)方法。下位機(jī)利用定時(shí)中斷發(fā)送溫度數(shù)據(jù),利用端口中斷設(shè)置溫度報(bào)警的上下限,其他時(shí)間處于低功耗模式3的狀態(tài)下,這樣可以大大降低功耗。上位機(jī)利用接收中斷接收數(shù)據(jù),并且利用MAX3232與PC機(jī)通信。
    NTC熱敏電阻的主要缺點(diǎn)是熱電特性的非線(xiàn)性現(xiàn)象嚴(yán)重,本次設(shè)計(jì)采用查表法對(duì)NTC熱敏電阻進(jìn)行線(xiàn)性化。線(xiàn)性插值法軟件流程如圖5所示。

g.JPG


    圖5中,0,R1,R2,…,RK是曲線(xiàn)上橫坐標(biāo)取值;0,T1,T2,…,TK是其對(duì)應(yīng)的縱坐標(biāo)。K的取值可根據(jù)所需溫度精度確定。溫度T的表達(dá)式為:
    h.JPG

 

4 測(cè)試結(jié)果及分析
4.1 溫度采集及顯示
    將程序?qū)懭雴纹瑱C(jī)中,連好硬件線(xiàn)路,通過(guò)鍵盤(pán)設(shè)置好溫度上下限后,單片機(jī)開(kāi)始采集溫度數(shù)值。如圖6所示,是下位機(jī)顯示界面,LCD顯示報(bào)警溫度的上下限、當(dāng)前溫度以及下位機(jī)的代號(hào)。

i.JPG
    經(jīng)過(guò)多次測(cè)試,將LCD顯示的溫度與普通溫度計(jì)進(jìn)行比較,得到表2中的數(shù)據(jù)。

j.jpg
    經(jīng)過(guò)測(cè)試,溫度誤差在允許范圍內(nèi),系統(tǒng)能夠穩(wěn)定的運(yùn)行。當(dāng)采集到的溫度數(shù)值超過(guò)設(shè)定的上下限時(shí),單片機(jī)就會(huì)發(fā)出報(bào)警信號(hào),提醒用戶(hù)進(jìn)行溫度控制。
4.2 功耗測(cè)試
    當(dāng)下位機(jī)進(jìn)入LPM3(睡眠)模式,LCD不顯示,但內(nèi)部時(shí)鐘仍運(yùn)行,串入電流表,測(cè)量電流值,測(cè)得電流為4μA左右。證明系統(tǒng)很好地實(shí)現(xiàn)了超低功耗。
4.3 無(wú)線(xiàn)模塊測(cè)試
    將無(wú)線(xiàn)模塊連接好,先進(jìn)行一對(duì)一的收發(fā)調(diào)試。讓下位機(jī)1控制無(wú)線(xiàn)收發(fā)模塊發(fā)送一連串有規(guī)律的數(shù),觀(guān)察上位機(jī)接收的數(shù)字。經(jīng)過(guò)測(cè)試,3路下位機(jī)系統(tǒng)都可以與上位機(jī)進(jìn)行穩(wěn)定的一對(duì)一收發(fā)。然后3個(gè)下位機(jī)都與上位機(jī)通信,進(jìn)行一對(duì)三的收發(fā)調(diào)試,上位機(jī)接收3路數(shù)據(jù),并且顯示。
    經(jīng)過(guò)測(cè)試,3路都能正常的工作,且誤碼率低,工作穩(wěn)定。無(wú)線(xiàn)模塊nRF24L01的最大傳輸距離大約為100 m。
4.4 VC界面顯示
    首先進(jìn)行上位機(jī)的硬件連接,連接完成后進(jìn)行上電初始化并打開(kāi)PC機(jī)的VC界面。當(dāng)VC界面正常打開(kāi)時(shí),會(huì)出現(xiàn)“串口已打開(kāi)”的提示;當(dāng)VC界面無(wú)法正常打開(kāi)時(shí),會(huì)出現(xiàn)“串口無(wú)法打開(kāi)”的提示,出現(xiàn)此情況時(shí)首先檢測(cè)硬件連接,再檢查選定串口通道是否正確。PC機(jī)最終顯示如圖7所示。

k.jpg

5 結(jié)語(yǔ)
    本文描述了基于MSP430單片機(jī)的無(wú)線(xiàn)溫度控制系統(tǒng)的軟、硬件設(shè)計(jì)。通過(guò)調(diào)試證明系統(tǒng)運(yùn)行正常,各項(xiàng)指標(biāo)均能達(dá)到設(shè)計(jì)要求。整個(gè)系統(tǒng)集成度高,功耗低,溫度采集和無(wú)線(xiàn)傳輸速度快,誤碼低,且具有體積小,重量輕,可靠性高,易于控制和使用靈活等優(yōu)點(diǎn),因而性?xún)r(jià)比極高。
    本次設(shè)計(jì)的溫度精度為0.5℃,可以根據(jù)實(shí)際需求進(jìn)一步提高精度;基站為了實(shí)現(xiàn)斷電存儲(chǔ),可以將數(shù)據(jù)存儲(chǔ)于單片機(jī)的FLASH中,上電時(shí)單片機(jī)從FLASH中取出所需的數(shù)值進(jìn)行顯示。
 

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。