引言
溫度是物聯(lián)網(wǎng)家居系統(tǒng)中一個(gè)十分重要的物理量, 對(duì)它的測量與控制有十分重要的意義。隨著各類物聯(lián)網(wǎng)家居的監(jiān)控日益改善,各類器件的溫度控制有了更高的要求,為了滿足人們對(duì)溫度監(jiān)控與控制, 本文設(shè)計(jì)了物聯(lián)網(wǎng)家居系統(tǒng)中基于單片機(jī)的多路無線溫度監(jiān)控系統(tǒng)。
隨著信息科學(xué)與微電子技術(shù)的發(fā)展, 溫度的監(jiān)控可以利用現(xiàn)代技術(shù)使其實(shí)現(xiàn)自動(dòng)化和智能化。多路無線溫度監(jiān)控系統(tǒng)就是朝著這一目標(biāo)進(jìn)行設(shè)計(jì)的。本次設(shè)計(jì)要求利用單片機(jī)及無線傳輸模塊實(shí)現(xiàn)無線溫度監(jiān)測系統(tǒng),實(shí)現(xiàn)溫控范圍調(diào)節(jié)及其超溫范圍報(bào)警。
1 技術(shù)要點(diǎn)
由于本系統(tǒng)是一個(gè)實(shí)時(shí)監(jiān)控的系統(tǒng), 對(duì)溫度的采集控制是實(shí)時(shí)的, 所以溫度采集的時(shí)間間隔, 數(shù)據(jù)發(fā)送接收的時(shí)間差,單片機(jī)與PC 機(jī)之間數(shù)據(jù)的傳送速度以及上位機(jī)程序?qū)?shù)據(jù)的分析處理是本系統(tǒng)的關(guān)鍵。通過對(duì)溫度傳感器,無線模塊的優(yōu)化選擇,實(shí)現(xiàn)單片機(jī)與PC 機(jī)通過高速USB 接口進(jìn)行通信及對(duì)上位機(jī)代碼的優(yōu)化實(shí)現(xiàn)本系統(tǒng)的實(shí)時(shí)監(jiān)控功能, 同時(shí)還要考慮的是溫度傳感器的各個(gè)參數(shù),無線模塊的參數(shù),以及硬件電路的優(yōu)化搭建問題。
2 硬件及軟件設(shè)計(jì)
為了使系統(tǒng)能夠最優(yōu)化的工作, 系統(tǒng)的硬件器件選擇將是十分重要的問題。
(1)溫度傳感器的選用
系統(tǒng)是做溫度監(jiān)控的, 首要的工作就是如何選取溫度傳感器, 正確的選擇溫度傳感器對(duì)系統(tǒng)的性能和價(jià)格有著重大的影響。就溫度傳感器的溫度測量范圍、精度、響應(yīng)時(shí)間、穩(wěn)定性、線性度和靈敏度。等幾個(gè)因素的比較分析,本系統(tǒng)選用的是美國DALLAS 半導(dǎo)體公司生產(chǎn)的DS18B20 溫度傳感器。選用該傳感器的原因有: ①DS18B20 與微處理器僅需要一條線即可實(shí)現(xiàn)雙向通訊,簡化連接難度;②無需其他的AD 轉(zhuǎn)化器件,降低成本, 也減少了硬件制板的費(fèi)用; ③可供使用電壓范圍大:3.0V 到5.5V 都可以使用,器件的功耗較低;④測溫分辨率高,最高可達(dá)0.125 度,便于溫度精確控制;⑤支持多點(diǎn)測試,多個(gè)DS18B20 可以并聯(lián)在一根線上,實(shí)現(xiàn)多點(diǎn)測溫。
?。?)無線模塊的選用
本系統(tǒng)是多點(diǎn)監(jiān)控, 同時(shí)他的數(shù)據(jù)傳輸是通過無線傳輸?shù)?,所以無線傳輸模塊的需要支持多點(diǎn)的數(shù)據(jù)的傳送??紤]穩(wěn)定性, 傳輸數(shù)據(jù)的速度, 錯(cuò)誤率等方面, 本系統(tǒng)選用的是NRF905 無線數(shù)據(jù)傳輸模塊,選擇該模塊的原因有:①433MHZ開放ISM 頻段免許可證使用,無需額外申請(qǐng)頻段;②傳輸速率高,最高數(shù)據(jù)傳輸速率可達(dá)50KB,滿足實(shí)時(shí)監(jiān)控的需要;③自帶有CRC 糾錯(cuò)功能,抗干擾能力強(qiáng)。所需電壓僅3.3V,功耗低;④125 個(gè)頻道,支持多點(diǎn)通信,滿足系統(tǒng)多點(diǎn)監(jiān)控的需要。
?。?)主控芯片選用
ATmega16 是ATMEL 公司推出的一款基于AVR RISC 構(gòu)架的低功耗CMOS 的8 位單片機(jī)。ATmega16 在16MHz 時(shí)有16MIPS 的運(yùn)算速度,具有兩周期硬件乘法器,從而使得設(shè)計(jì)人員可以在功耗和執(zhí)行速度之間取得平衡, 且非易失性程序和數(shù)據(jù)存儲(chǔ)器資源較大能滿足程序代碼設(shè)計(jì)需要。外設(shè)資源豐富:2 個(gè)具有獨(dú)立預(yù)分頻器和比較器功能的8 位定時(shí)/計(jì)數(shù)器;一個(gè)獨(dú)立預(yù)分頻器和比較/捕捉功能的16 位定時(shí)/計(jì)數(shù)器;支持4 路PWM 輸出、8 路10 位ADC。支持TWI 接口、USART、SPI 接口多機(jī)通信滿足擴(kuò)展功能的需要。
?。?)其他外圍器件
USB 與PC 機(jī)通信中USB 控制芯片PDUSBD12,顯示模塊1602,報(bào)警蜂鳴器等。
2.1 系統(tǒng)的硬件連接方法
硬件方面主要由兩部分組成, 溫度采集發(fā)送部分和數(shù)據(jù)接受分析控制部分。
2.1.1 溫度采集發(fā)送部分
主要的連接器件有NRF905 無線數(shù)據(jù)傳輸模塊,DS18B20溫度傳感器采集模塊,1602 顯示模塊,報(bào)警模塊,及溫度異常處理模塊。其連接方法如圖1 所示。主控芯片M16 通過SPI 總線協(xié)議向無線模塊發(fā)送配置信息,使其工作初始化。溫度傳感器與M16 的連接使用的是單總線協(xié)議,來采集溫度。顯示芯片1602 來顯示采集到得溫度,同時(shí)使用蜂鳴器作為報(bào)警裝置,當(dāng)溫度有異常時(shí)單片機(jī)會(huì)控制加熱設(shè)備或降溫設(shè)備來對(duì)異常進(jìn)行處理。
2.1.2 數(shù)據(jù)接收分析控制部分
主要的連接器件有無線數(shù)據(jù)傳輸模塊,USB 傳送模塊,和PC 機(jī)構(gòu)成。其電路連接如圖2 所示。同樣主控芯片M16 通過SPI 總線協(xié)議向無線模塊發(fā)送配置信息,使其工作初始化。接收到溫度后通過PDUSBD12 芯片利用USB 協(xié)議將數(shù)據(jù)發(fā)送到PC 機(jī)上,可以直接在VC 界面上顯示。PC 機(jī)可以自動(dòng)分析數(shù)據(jù)是否存在異常,當(dāng)存在異常時(shí),PC 發(fā)送控制信號(hào)來遠(yuǎn)程控制加熱或降溫設(shè)備對(duì)異常進(jìn)行處理,同時(shí)發(fā)出報(bào)警信號(hào),這樣可以將危險(xiǎn)降到最低,實(shí)現(xiàn)自動(dòng)化與智能化。
圖1 數(shù)據(jù)采集與發(fā)送 圖2 數(shù)據(jù)接收與分析
2.2 軟件程序的設(shè)計(jì)
由于系統(tǒng)由兩個(gè)模塊構(gòu)成, 所以軟件程序的設(shè)計(jì)也分為溫度采集發(fā)送模塊程序設(shè)計(jì)和數(shù)據(jù)接受分析控制模塊程序設(shè)計(jì)。
2.2.1 溫度采集發(fā)送模塊
主要需要設(shè)計(jì)的程序有NRF905 的內(nèi)部寄存器配置,溫度傳感器溫度采集程序,液晶顯示模塊程序,報(bào)警系統(tǒng)程序。程序流程圖如圖3:
圖3 主程序流程圖
2.2.2 數(shù)據(jù)接受分析控制模塊
主要需要設(shè)計(jì)的程序有NRF905 的內(nèi)部寄存器配置,USB模塊的驅(qū)動(dòng)編寫,上位機(jī)程序的建立,由于篇幅有限,源代碼及流程圖不再給出。
3 系統(tǒng)的工作流程
本系統(tǒng)主要由兩個(gè)模塊組成, 溫度采集發(fā)送模塊和數(shù)據(jù)接收監(jiān)控模塊。
3.1 數(shù)據(jù)采集發(fā)送模塊
該模塊的主要功能是采集溫度和發(fā)送數(shù)據(jù)。主控單片機(jī)發(fā)出命令開始有DS18B20 進(jìn)行溫度采集, 溫度傳感器將采集到的溫度傳回主控芯片,在1602 上進(jìn)行顯示,然后主控芯片通過SPI 總線將數(shù)據(jù)傳送給無線發(fā)送模塊NRF905,由無線發(fā)送模塊將數(shù)據(jù)發(fā)送出去。同時(shí)主控芯片會(huì)檢測溫度是否異常,當(dāng)溫度出現(xiàn)異常時(shí)會(huì)發(fā)出報(bào)警信號(hào),同時(shí)啟動(dòng)異常處理模塊。
具體工作流程如圖4:
圖4 采集發(fā)送模塊工作流程
3.2 數(shù)據(jù)接收監(jiān)控模塊
該模塊的主要功能是接收和處理數(shù)據(jù), 由單片機(jī)控制無線模塊接收數(shù)據(jù), 同時(shí)控制USB 模塊將數(shù)據(jù)發(fā)送到PC 機(jī)上去,PC 機(jī)接收到溫度后會(huì)對(duì)溫度進(jìn)行分析處理,當(dāng)溫度由異常時(shí),會(huì)發(fā)出報(bào)警信號(hào),同時(shí)通過將控制指令發(fā)送至單片機(jī),通過無線模塊來遠(yuǎn)程控制異常處理模塊執(zhí)行工作, 從而實(shí)現(xiàn)異常自動(dòng)處理和雙報(bào)警, 從而最大限度的確保被監(jiān)控地的預(yù)警和安全。具體工作流程如圖5:
圖5 接受監(jiān)控模塊工作流程
4 結(jié)語
對(duì)本系統(tǒng)進(jìn)行遠(yuǎn)距離具體溫度測試有, 經(jīng)數(shù)據(jù)對(duì)比發(fā)現(xiàn)實(shí)地溫度采集與上位機(jī)顯示數(shù)據(jù)完全吻合, 且能實(shí)現(xiàn)實(shí)時(shí)溫度監(jiān)控。同時(shí)可以通過PC 機(jī)對(duì)單片機(jī)進(jìn)行遠(yuǎn)程控制,性能穩(wěn)定。
本系統(tǒng)采用的數(shù)據(jù)傳輸是通過無線技術(shù)實(shí)現(xiàn)的, 不僅僅可以用在物聯(lián)網(wǎng)家居上,還可以在很多環(huán)境條件惡劣,且不容易鋪設(shè)電纜的地方使用,同時(shí)移動(dòng)起來比較方便,在不久的將來會(huì)有更大的利用價(jià)值。