溫度" title="溫度">溫度在人類日常生活中扮演著極其重要的角色,同時(shí)在工農(nóng)業(yè)生產(chǎn)過程中,溫度檢測具有十分重要的意義?,F(xiàn)階段溫度檢測主要是有線定點(diǎn)溫度檢測,其溫度檢測原理為單片機(jī)" title="單片機(jī)">單片機(jī)利用溫度傳感器檢測溫度,并在數(shù)碼管或LCD 上進(jìn)行溫度顯示。同時(shí)由于系統(tǒng)沒有報(bào)警功能,故需要人為來判斷是否需要進(jìn)行升溫或者降溫,這使系統(tǒng)的檢測喪失了實(shí)時(shí)性。另外,在某些環(huán)境惡劣的工業(yè)環(huán)境,以人工方式直接操作設(shè)置儀表測量溫度也不現(xiàn)實(shí),因此采用無線方式進(jìn)行溫度檢測尤為必要。
目前有些設(shè)計(jì)能夠?qū)崿F(xiàn)無線溫度采集,但功耗過高是其最大的缺點(diǎn)。在實(shí)際溫度控制過程中既要求系統(tǒng)具有穩(wěn)定性、實(shí)時(shí)性,又需要使系統(tǒng)功耗低及保證溫度的均勻性,因此設(shè)計(jì)一種低功耗的多點(diǎn)無線溫度檢測系統(tǒng)" title="檢測系統(tǒng)">檢測系統(tǒng)很有意義。本文提出一種采用低功耗單片機(jī)MSP430F149 單片機(jī)實(shí)現(xiàn)的多點(diǎn)無線溫度測量系統(tǒng),解決了上述問題。該系統(tǒng)能實(shí)現(xiàn)對溫度智能化的檢測,能夠同時(shí)進(jìn)行多點(diǎn)溫度檢測,是可以實(shí)現(xiàn)遠(yuǎn)程控制的無線溫度檢測系統(tǒng)。低功耗、實(shí)時(shí)性的無線溫度檢測是該設(shè)計(jì)的最大特點(diǎn)。
1 系統(tǒng)構(gòu)成
系統(tǒng)分為下位機(jī)、上位機(jī)和PC 機(jī)三部分。PC 機(jī)是整個(gè)系統(tǒng)的最上層,負(fù)責(zé)對下位機(jī)的控制和管理,并對收集到的各個(gè)節(jié)點(diǎn)的數(shù)據(jù)進(jìn)行存儲和處理。由于下位機(jī)無法直接與PC 機(jī)通信,這就需要使用上位機(jī)作為中間媒介。上位機(jī)與下位機(jī)通過無線模塊通信,與PC機(jī)采用有線連接。
該設(shè)計(jì)采用MSP430F149 單片機(jī)作為核心控制模塊,其最主要特點(diǎn)為低功耗。MSP430F149 具有雙串口的特點(diǎn),利用其中的一個(gè)串行口與PC 機(jī)進(jìn)行通訊時(shí),兩者之間必須通過RS 232 電平轉(zhuǎn)換芯片。單片機(jī)與無線發(fā)射模塊nRF24L01 通訊時(shí)可通過通用I/ O口模擬串口通訊?,F(xiàn)場溫度數(shù)據(jù)的采集是利用NT C100 熱敏電阻和MSP430F149 單片機(jī)部帶有的12 位A/ D轉(zhuǎn)換器來實(shí)現(xiàn)的。這里不需要外加ADC,可以簡化電路,提高系統(tǒng)的穩(wěn)定性。將按鍵作為輸入模塊,用來改變溫度報(bào)警的上下限。由于設(shè)計(jì)要求不需要太多內(nèi)容的顯示,考慮到功耗及性價(jià)比,可以自制一個(gè)簡易段碼液晶用于顯示。下位機(jī)設(shè)計(jì)方案和系統(tǒng)整體構(gòu)成框圖分別如圖1,圖2 所示。
圖1 下位機(jī)設(shè)計(jì)方案
圖2 系統(tǒng)的整體構(gòu)成
2 硬件設(shè)計(jì)
2. 1 無線通信模塊設(shè)計(jì)
nRF24L01 是一款新型單片射頻收發(fā)器件,工作于2. 4~ 2. 5 GHz ISM 頻段。內(nèi)置頻率合成器、功率放大器、晶體振蕩器、調(diào)制器等功能模塊,并融合了增強(qiáng)型ShockBurst 技術(shù),其中輸出功率和通信頻道可通過程序進(jìn)行配置。nRF24L01 功耗低,有多種低功率工作模式( 掉電模式和空閑模式) 使節(jié)能設(shè)計(jì)更方便,圖3 為它的應(yīng)用電路。
圖3 NRF24L01 應(yīng)用電路
從單片機(jī)控制的角度來看,只需要將圖3 中左邊的6 個(gè)控制和數(shù)據(jù)信號與單片機(jī)通用I/ O 口相連。
2. 2 溫度采集電路
為了使整個(gè)系統(tǒng)的功耗更低,采用低功耗的熱敏電阻NT C100 和MSP430149 內(nèi)部自帶的12 位A/ D 轉(zhuǎn)換器實(shí)現(xiàn)溫度的采集功能。其理論分析與計(jì)算電阻值和溫度變化之間的關(guān)系。
式中: RT 為溫度T( 單位: K) 時(shí)的NTC 熱敏電阻阻值;RN為額定溫度T N ( 單位: K) 時(shí)的NTC 熱敏電阻阻值;T 為規(guī)定溫度( 單位: K) ;B 為NTC 熱敏電阻的材料常數(shù),又叫熱敏指數(shù)。
常溫環(huán)境中,溫度為28℃,換算成開氏溫度為273. 15+ 28= 301. 15 K。通過多次測28℃及30℃環(huán)境下的數(shù)據(jù),如表1 所示,取平均值,盡量減小誤差,算得B 值。
表1 測量NTC100 熱敏電阻B 值
通過式( 1) 可得,將T ,T N 都轉(zhuǎn)化成開爾文溫度進(jìn)行計(jì)算得B = 4 064. 34。經(jīng)過比較發(fā)現(xiàn),求得的阻值與測得的阻值很相近。
圖4 為溫度采集模塊,其中R 1 為熱敏電阻,R3 為200 kΩ電阻,R2 為0~ 20 kΩ 的可調(diào)電阻,用來調(diào)整溫度計(jì)的準(zhǔn)確性。U0 為檢測到的電壓,將U0 接到單片機(jī)管腳,通過A/ D 轉(zhuǎn)換,將得到的電壓值轉(zhuǎn)換成溫度值,在LCD 上顯示出來。
圖4 溫度采集模塊
2. 3 顯示模塊
本次設(shè)計(jì)采用自制的16 位段碼液晶進(jìn)行顯示。利用液晶驅(qū)動(dòng)IC( HT 1621) 以及配套的液晶LCD 玻璃片,自制16 位段碼液晶。另外,驅(qū)動(dòng)IC 上裝有兩種頻率的蜂鳴驅(qū)動(dòng)電路,可以實(shí)現(xiàn)報(bào)警功能。
2. 4 串口通信模塊
在溫度采集過程中,由于系統(tǒng)隨時(shí)需要將采集到的溫度數(shù)值通過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)象嚴(yán)重,本次設(shè)計(jì)采用查表法對NT C 熱敏電阻進(jìn)行線性化。線性插值法軟件流程如圖5 所示。
圖5 線性插值法熱敏電阻非線性自校正程序流程圖
圖5 中,0,R1 ,R2 ,,R K 是曲線上橫坐標(biāo)取值;0,T1 ,T2 ,,T K 是其對應(yīng)的縱坐標(biāo)。K 的取值可根據(jù)所需溫度精度確定。
4 測試結(jié)果及分析
4. 1 溫度采集及顯示
將程序?qū)懭雴纹瑱C(jī)中,連好硬件線路,通過鍵盤設(shè)置好溫度上下限后,單片機(jī)開始采集溫度數(shù)值。如圖6所示,是下位機(jī)顯示界面,LCD 顯示報(bào)警溫度的上下限、當(dāng)前溫度以及下位機(jī)的代號。
圖6 下位機(jī)顯示界面
經(jīng)過多次測試,將LCD 顯示的溫度與普通溫度計(jì)進(jìn)行比較,得到表2 中的數(shù)據(jù)。
表2 LCD 顯示的溫度值與普通溫度計(jì)的溫度值的對比表
經(jīng)過測試,溫度誤差在允許范圍內(nèi),系統(tǒng)能夠穩(wěn)定的運(yùn)行。當(dāng)采集到的溫度數(shù)值超過設(shè)定的上下限時(shí),單片機(jī)就會發(fā)出報(bào)警信號,提醒用戶進(jìn)行溫度控制。
4. 2 功耗測試
當(dāng)下位機(jī)進(jìn)入LPM3( 睡眠) 模式,LCD 不顯示,但內(nèi)部時(shí)鐘仍運(yùn)行,串入電流表,測量電流值,測得電流為4 uA 左右。證明系統(tǒng)很好地實(shí)現(xiàn)了超低功耗。
4. 3 無線模塊測試
將無線模塊連接好,先進(jìn)行一對一的收發(fā)調(diào)試。
讓下位機(jī)1 控制無線收發(fā)模塊發(fā)送一連串有規(guī)律的數(shù),觀察上位機(jī)接收的數(shù)字。經(jīng)過測試,3 路下位機(jī)系統(tǒng)都可以與上位機(jī)進(jìn)行穩(wěn)定的一對一收發(fā)。然后3 個(gè)下位機(jī)都與上位機(jī)通信,進(jìn)行一對三的收發(fā)調(diào)試,上位機(jī)接收3 路數(shù)據(jù),并且顯示。
經(jīng)過測試,3 路都能正常的工作,且誤碼率低,工作穩(wěn)定。無線模塊nRF24L01 的最大傳輸距離大約為100 m。
4. 4 VC 界面顯示
首先進(jìn)行上位機(jī)的硬件連接,連接完成后進(jìn)行上電初始化并打開PC 機(jī)的VC 界面。當(dāng)VC 界面正常打開時(shí),會出現(xiàn)“串口已打開”的提示;當(dāng)VC 界面無法正常打開時(shí),會出現(xiàn)“ 串口無法打開”的提示,出現(xiàn)此情況時(shí)首先檢測硬件連接,再檢查選定串口通道是否正確。
PC 機(jī)最終顯示如圖7 所示。
圖7 PC 機(jī)顯示圖
5 結(jié) 語
本文描述了基于" title="基于">基于MSP430 單片機(jī)的無線溫度控制系統(tǒng)的軟、硬件設(shè)計(jì)。通過調(diào)試證明系統(tǒng)運(yùn)行正常,各項(xiàng)指標(biāo)均能達(dá)到設(shè)計(jì)要求。整個(gè)系統(tǒng)集成度高,功耗低,溫度采集和無線傳輸速度快,誤碼低,且具有體積小,重量輕,可靠性高,易于控制和使用靈活等優(yōu)點(diǎn),因而性價(jià)比極高。
本次設(shè)計(jì)的溫度精度為0. 5 ℃,可以根據(jù)實(shí)際需求進(jìn)一步提高精度;基站為了實(shí)現(xiàn)斷電存儲,可以將數(shù)據(jù)存儲于單片機(jī)的FLASH 中,上電時(shí)單片機(jī)從FLASH中取出所需的數(shù)值進(jìn)行顯示。