段文勇+李燕
【摘 要】本設(shè)計(jì)將傳感器技術(shù)、射頻技術(shù)以及計(jì)算機(jī)技術(shù)相結(jié)合,充分利用了單片機(jī)快速靈活的特點(diǎn)和虛擬儀器低成本、功能強(qiáng)的優(yōu)點(diǎn)。硬件部分主要由單片機(jī)、溫度傳感器、無線傳輸模塊、串口通信等部分組成,實(shí)現(xiàn)了溫度的采集,單片機(jī)間數(shù)據(jù)的無線傳輸以及單片機(jī)與上位機(jī)的通信。上位機(jī)采用LabVIEW創(chuàng)建人機(jī)交互式界面,實(shí)現(xiàn)了數(shù)據(jù)的顯示和記錄,可進(jìn)行溫度的上下限設(shè)置、報(bào)警。
LabVIEW在測(cè)量領(lǐng)域的強(qiáng)大功能可以替代傳統(tǒng)儀器完成數(shù)據(jù)的處理。整個(gè)系統(tǒng)具有傳輸數(shù)據(jù)速度快,適應(yīng)性好和可靠性高等優(yōu)點(diǎn),在現(xiàn)實(shí)生產(chǎn)生活中具有較高的實(shí)用價(jià)值。
【關(guān)鍵詞】溫度檢測(cè);無線通信;單片機(jī);串口通信;LabVIEW
【Abstract】The design combines the sensor technology,radio frequency technology and computer technology to make full use of the characteristics of fast and flexible MCU and the advantages of low cost and strong function of virtual instrument.The hardware part is mainly composed of MCU, temperature sensor,wireless transmission module,serial communication and so on.The temperature acquisition,the wireless transmission of data between single chip microcomputer and the communication between the single chip microcomputer and the host computer are realized.The host computer uses LabVIEW to create an interactive interface,which can display and record the data. It can be carried out on the upper and lower limits of the temperature alarm.LabVIEWs powerful function in the field of measurement can replace the traditional instrument to complete the data processing. The whole system has the advantages of high speed of data transmission, good adaptability and high reliability,and has high practical value in real life.
【Key words】Temperature measurement;Wireless communication;MCU;Serial communication;LabVIEW
0 引言
隨著傳感器技術(shù)的發(fā)展,溫度的檢測(cè)已經(jīng)成為一種常見的技術(shù)。傳統(tǒng)的數(shù)據(jù)傳輸方式均是通過有線電纜來實(shí)現(xiàn)的,有線通訊存在布線難、檢測(cè)難等問題。而無線通訊技術(shù)的日漸成熟,困擾其發(fā)展的傳輸速率和抗干擾能力得到大大提升,無線溫度檢測(cè)成為必然的選擇,其成本低、建網(wǎng)快捷、傳輸距離長等優(yōu)點(diǎn)使其擁有廣闊的發(fā)展前景[1-4]。
1 系統(tǒng)總體設(shè)計(jì)
本設(shè)計(jì)通過DS18B20測(cè)量溫度并傳送給單片機(jī)從機(jī),nRF905無線模塊完成單片機(jī)從機(jī)到主機(jī)的數(shù)據(jù)傳輸,單片機(jī)主機(jī)與LabVIEW通訊的同時(shí)通過LCD1602顯示溫度,LabVIEW完成溫度的顯示、記錄等功能??傮w設(shè)計(jì)方案如圖1所示:
2 系統(tǒng)硬件設(shè)計(jì)
系統(tǒng)硬件部分由單片機(jī)最小系統(tǒng)、溫度檢測(cè)模塊、無線傳輸模塊、液晶顯示模塊、串口通信模塊組成。
單片機(jī)最小系統(tǒng)又分為STC89C52單片機(jī),復(fù)位電路和晶振電路。單片機(jī)20腳為地,40腳為+5V電源。當(dāng)31腳接電源時(shí),訪問內(nèi)部存儲(chǔ)器。32~39腳為P0口,1~8腳為P1口,21~28腳是P2口,10~17腳為P3口。其中,P1/P2/P3均為帶內(nèi)部上拉電阻的8位雙向I/O口,而P0是漏極開路輸出,用作I/O口時(shí),需外接上拉電阻。
溫度檢測(cè)模塊采用外部電源的供電方式,DS18B20的DQ端接單片機(jī)的P3.7,在VCC和DQ之間接一個(gè)4.7K的上拉電阻即可。
nRF905模塊共有四種模式,分別為:活動(dòng)模式:Shock Burst RX模式,Shock Burst TX模式;節(jié)電模式:掉電和SPI編程模式,STANDBY和SPI編程模式;nRF905工作模式由TRX_CE、TX_EN、PWR_UP的設(shè)置來設(shè)定。
LCD1602的1腳和2腳分別接GND和VCC,3腳接電位器用來調(diào)節(jié)對(duì)比亮度,4腳、5腳、6腳分別接P1.0、P1.1、P1.2,7~14腳按順序接單片機(jī)的P0口,15腳和16腳分別接VCC和GND。
本設(shè)計(jì)采用RS-232電路完成串口通信。其中,計(jì)算機(jī)的RS-232C標(biāo)準(zhǔn)采用的EIA電平為負(fù)邏輯,高、低電平為-12V和+12V。單片機(jī)的TTL電平為正邏輯,高、低電平分別為+5V和0V。因此,要完成計(jì)算機(jī)與單片機(jī)的通信需要借助MAX232進(jìn)行電平間的轉(zhuǎn)換。
3 系統(tǒng)程序設(shè)計(jì)
3.1 下位機(jī)程序設(shè)計(jì)
下位機(jī)由單片機(jī)從機(jī)和主機(jī)組成。單片機(jī)從機(jī)的主要功能是對(duì)溫度進(jìn)行采集并完成數(shù)據(jù)的無線傳輸,程序流程圖如圖2所示。單片機(jī)主機(jī)的主要功能是完成數(shù)據(jù)的無線接收,并實(shí)時(shí)顯示同時(shí)將數(shù)據(jù)上傳到PC機(jī),程序流程圖如圖3所示。
3.2 上位機(jī)軟件設(shè)計(jì)
首先,通過LabVIEW自帶的VISA工具包來配置串口,VISA的本質(zhì)是I/O口軟件庫。在LabVIEW中,串口通信的步驟分別為串口初始化、讀寫串口、關(guān)閉串口。從VISA讀取節(jié)點(diǎn)讀取到的數(shù)據(jù)是字符串類型的,需要將字符串轉(zhuǎn)換為字節(jié)數(shù)組。下位機(jī)傳送的溫度數(shù)據(jù)是高八位和低八位的形式,通過轉(zhuǎn)換獲得16位的二進(jìn)制數(shù)值,再結(jié)合下位機(jī)程序?qū)囟葦?shù)據(jù)的編寫處理對(duì)溫度值處理,最終得到正確的數(shù)值。為了方便編程,這里將溫度值的計(jì)算設(shè)計(jì)為一個(gè)獨(dú)立的VI。除了完成溫度從16進(jìn)制轉(zhuǎn)為10進(jìn)制的過程,還利用布爾函數(shù)中的“與”函數(shù),通過與F000相與判斷溫度的正負(fù)。接著,利用條件結(jié)構(gòu)對(duì)正負(fù)溫度進(jìn)行不同的轉(zhuǎn)換處理。
本設(shè)計(jì)通過LabVIEW中的條件結(jié)構(gòu),分別設(shè)計(jì)了高溫和低溫報(bào)警,高于設(shè)定上限時(shí)進(jìn)行高溫報(bào)警,低于設(shè)定下限時(shí)進(jìn)行低溫報(bào)警。這種報(bào)警方式將高低溫分離,更為直觀,方便使用者對(duì)溫度進(jìn)行準(zhǔn)確控制。
在實(shí)際應(yīng)用中,實(shí)時(shí)溫度數(shù)據(jù)的意義更在于作為控制的參考量,單個(gè)數(shù)據(jù)并不能說明太多問題。因此,本模塊不僅設(shè)計(jì)了溫度的實(shí)時(shí)顯示,還有溫度數(shù)據(jù)表格和溫度曲線。同時(shí),利用LabVIEW右鍵函數(shù)編程菜單中的“文件I/O”選項(xiàng),選擇寫入測(cè)量文件,將溫度數(shù)據(jù)通過Access數(shù)據(jù)庫進(jìn)行保存。當(dāng)上位機(jī)運(yùn)行時(shí),會(huì)默認(rèn)彈出選擇保存路徑的選項(xiàng),文件格式為.xlsx。這些數(shù)據(jù)記錄和曲線可以看出溫度變化,方便對(duì)測(cè)量環(huán)境的把握。上位機(jī)界面如圖4所示:
4 結(jié)束語
以STC89C52單片機(jī),DS18B20溫度傳感器,nRF905無線模塊和LabVIEW虛擬儀器為核心,設(shè)計(jì)了一種無線溫度監(jiān)測(cè)系統(tǒng)。通過DS18B20進(jìn)行溫度采集,nRF905完成無線傳輸,同時(shí),串口電路將數(shù)據(jù)傳送給LabVIEW,LabVIEW負(fù)責(zé)溫度數(shù)據(jù)的顯示、記錄等。本設(shè)計(jì)的特色在于通過nRF905無線傳輸溫度數(shù)據(jù),可以遠(yuǎn)距離進(jìn)行溫度采集,比有線采集適用性更強(qiáng),維護(hù)、擴(kuò)展都更為方便。并且,采用LabVIEW作為上位機(jī),能與主流的測(cè)試設(shè)備相兼容,自身更是具備了各種測(cè)量領(lǐng)域的工具包。通過簡單地函數(shù)設(shè)置就能完成測(cè)量程序的設(shè)計(jì),十分方便。
【參考文獻(xiàn)】
[1]周益青,王勇.基于LabVIEW軟件的數(shù)據(jù)采集與分析系統(tǒng)[J].制導(dǎo)與引信,2012(1):24-28.
[2]許齊敏.高速無線數(shù)據(jù)采集終端的設(shè)計(jì)與優(yōu)化[D].秦皇島:燕山大學(xué),2013.
[3]張琴.基于DS18B20的溫度采集報(bào)警系統(tǒng)設(shè)計(jì)[J].傳感器與微系統(tǒng),2014(2):99-102.
[4]吳卓葵,許勝棋.基于LabVIEW的多點(diǎn)報(bào)警溫度監(jiān)測(cè)系統(tǒng)設(shè)計(jì)[J].制造業(yè)自動(dòng)化,2014(1):139-142.
[責(zé)任編輯:田吉捷]