李冬冬 魏志欽 黃凌森 吳濟(jì)敏 黃吉彪 羅擴(kuò)龍
(華南理工大學(xué)廣州學(xué)院,廣東 廣州 510800)
基于LabVIEW及單片機(jī)的溫度測(cè)控系統(tǒng)設(shè)計(jì)
李冬冬 魏志欽 黃凌森 吳濟(jì)敏 黃吉彪 羅擴(kuò)龍
(華南理工大學(xué)廣州學(xué)院,廣東 廣州 510800)
溫度測(cè)量控制系統(tǒng)正逐漸向虛擬儀器的方向發(fā)展,而LabVIEW是應(yīng)用最廣泛的虛擬儀器軟件,但是與其配套的數(shù)據(jù)采集卡一般成本較高,為了降低其成本,設(shè)計(jì)了一個(gè)基于LabVIEW的溫度控制系統(tǒng),該系統(tǒng)通過(guò)DS18B20溫度傳感器采集溫度,再通過(guò)單片機(jī)與電腦的通訊,將信息傳送給LabVIEW來(lái)對(duì)溫度進(jìn)行測(cè)量、監(jiān)控。
LabVIEW;單片機(jī);溫度監(jiān)控;DS18B20
美國(guó)國(guó)家儀器公司率先提出了虛擬儀器這個(gè)概念,徹底改變了傳統(tǒng)儀器由廠家定義、用戶無(wú)法隨心改變的模式,使測(cè)控儀器發(fā)生了巨大變革。與傳統(tǒng)儀器相比,虛擬儀器有很多的優(yōu)點(diǎn):對(duì)測(cè)試量的處理和計(jì)算可以更復(fù)雜且速度更快,測(cè)試結(jié)果的表達(dá)方式更加多種多樣,可以方便地存儲(chǔ)和傳遞測(cè)試數(shù)據(jù),價(jià)格低且技術(shù)更新更快。目前的溫度測(cè)量與控制系統(tǒng)大都還是使用傳統(tǒng)溫度測(cè)量?jī)x器,其功能基本都是由硬件或固化的軟件來(lái)實(shí)現(xiàn),而且它的功能只能通過(guò)廠家定義、設(shè)置,這顯得非常的單一、固定,用戶無(wú)法根據(jù)自己的意愿隨意去改變其結(jié)構(gòu)和功能,因此這樣的溫度控制系統(tǒng)已經(jīng)不能適應(yīng)現(xiàn)代化監(jiān)測(cè)系統(tǒng)的要求。虛擬儀器技術(shù)在分布式測(cè)控系統(tǒng)、遠(yuǎn)程設(shè)備診斷以及網(wǎng)絡(luò)虛擬實(shí)驗(yàn)室建設(shè)等領(lǐng)域都得到了廣泛的應(yīng)用,但LabVIEW所支持的數(shù)據(jù)采集卡價(jià)格比較昂貴,造成了溫度測(cè)量與控制系統(tǒng)的成本比較高。為了解決這一問(wèn)題,本項(xiàng)目采用AT89S51單片機(jī)、溫度傳感器、溫控部件等通過(guò)串口和上位機(jī)的通信組成了成本較低的溫度測(cè)量控制系統(tǒng)。
該溫度系統(tǒng)硬件由計(jì)算機(jī)、單片機(jī)、溫度控制電路和溫度傳感器組成,框圖如圖1所示。該系統(tǒng)集計(jì)算機(jī)、強(qiáng)大的圖形化編程軟件LabVIEW和模塊化硬件于一體,建立靈活,且以LabVIEW為基礎(chǔ)的測(cè)量及控制模式,構(gòu)建出滿足隨時(shí)可改變要求的系統(tǒng)[1]。通過(guò)傳感器獲取溫度信號(hào),再由單片機(jī)組成的小系統(tǒng)對(duì)溫度信號(hào)進(jìn)行采集、整理和轉(zhuǎn)換,然后通過(guò)單片機(jī)將數(shù)據(jù)在LED顯示屏中,同時(shí)也通過(guò)單片機(jī)與電腦的串口通信將數(shù)據(jù)傳送給計(jì)算機(jī),并通過(guò)計(jì)算機(jī)運(yùn)行的Lab-VIEW程序分析處理單片機(jī)輸入的數(shù)據(jù),最終在計(jì)算機(jī)顯示結(jié)果,同時(shí)將控制信息返回給單片機(jī),通過(guò)單片機(jī)控制溫度控制電路。另外采用電阻加熱取代電機(jī)加熱,冷卻采用制冷
圖1系統(tǒng)結(jié)構(gòu)框圖
該虛擬溫控系統(tǒng)采用單片機(jī)AT89S51作為下位機(jī),控制溫度傳感器DS18B20的操作,并將從DS18B20溫度傳感器讀取的數(shù)據(jù)通過(guò)電腦與單片機(jī)的串口通信發(fā)送給計(jì)算機(jī)的LabVIEW軟件。數(shù)字式溫度傳感器DS18B20把當(dāng)時(shí)的溫度轉(zhuǎn)換為數(shù)字信號(hào)傳輸給單片機(jī)AT89C51,之后通過(guò)串口的COM口發(fā)送給計(jì)算機(jī),該串口具有TTL-RS232電平轉(zhuǎn)換功能。下位機(jī)程序采用匯編語(yǔ)言編寫(xiě),主要包括定時(shí)器初始化、DS18B20的初始化、啟動(dòng)DS18B20溫度轉(zhuǎn)換、讀取DS18B20的數(shù)據(jù)、串口數(shù)據(jù)發(fā)送模塊[2]。
上位機(jī)采用LabVIEW圖形化編程軟件來(lái)編寫(xiě)程序,無(wú)需編寫(xiě)繁瑣復(fù)雜的計(jì)算機(jī)程序代碼,只需要寫(xiě)上相應(yīng)的圖形即可實(shí)現(xiàn)測(cè)控系統(tǒng)的構(gòu)建,程序簡(jiǎn)單明了并且界面美觀。
本設(shè)計(jì)主要使用了LabVIEW的串行通信節(jié)點(diǎn)。在Lab-VIEW中,串行通信節(jié)點(diǎn)位于函數(shù)選板共包括8個(gè)節(jié)點(diǎn),分別實(shí)現(xiàn)初始化串口、串口寫(xiě)、串口讀、檢測(cè)串口緩存、中斷以及關(guān)閉串口等功能,VISA配置串口節(jié)點(diǎn)用于初始化串口。在利用計(jì)算機(jī)控制串口儀器設(shè)備時(shí),先要配置好串口,即先初始化串口,使計(jì)算機(jī)串口的各種參數(shù)設(shè)置與儀器設(shè)備的串口保持一致,才能夠正確地進(jìn)行串行通信。并且在每次使用前都需要如此設(shè)置,達(dá)到成功進(jìn)行通信的目的[3]。
根據(jù)設(shè)計(jì)要求將串口初始化為波特率2 400b/s,數(shù)據(jù)位8位,1位停止位,無(wú)奇偶校驗(yàn)位。從運(yùn)行初始化后一直處于等待接收數(shù)據(jù)狀態(tài)。數(shù)據(jù)采集終端每過(guò)一定時(shí)間上傳一次數(shù)據(jù),這個(gè)數(shù)據(jù)是和時(shí)間一起上傳的,是自動(dòng)記錄數(shù)據(jù)歷史的部分,所以要存儲(chǔ)在一個(gè)特定的文件夾里,等待后續(xù)程序的處理。
當(dāng)需要上傳某一特定時(shí)間段的數(shù)據(jù)時(shí),需要上位機(jī)發(fā)送一個(gè)命令(即起始時(shí)刻和終止時(shí)刻的數(shù)值)給單片機(jī),這時(shí)需退出記錄數(shù)據(jù)狀態(tài),向串口發(fā)送一個(gè)命令串,需要注意的是發(fā)送命令的控制按鈕要設(shè)計(jì)為一個(gè)脈沖的形式,否則程序會(huì)循環(huán)發(fā)送命令,不能返回等待定時(shí)上傳狀態(tài)[4]。
圖2 溫度測(cè)控系統(tǒng)用戶界面
圖2為溫度測(cè)控系統(tǒng)的界面,即LabVIEW的前面板。前面板提供了端口選擇功能,同時(shí)也能顯示當(dāng)前的溫度情況??刂泼姘暹€有一個(gè)數(shù)據(jù)報(bào)警模塊,當(dāng)實(shí)際溫度大于溫度上限或小于溫度下限值時(shí)予以超溫報(bào)警。超溫報(bào)警時(shí),系統(tǒng)即中斷自動(dòng)控溫,確保人員及設(shè)備安全。系統(tǒng)通過(guò)信號(hào)燈及報(bào)警聲實(shí)現(xiàn)超溫報(bào)警,即當(dāng)采樣數(shù)據(jù)超過(guò)系統(tǒng)所設(shè)定的上下限時(shí),指示燈變紅,并發(fā)出警報(bào)聲[5]。
后界面為程序框圖,由不同的模塊所組成,每個(gè)模塊都有對(duì)應(yīng)的功能,都控制著不同的部位。當(dāng)串口參數(shù)設(shè)置正確,則文本框里的數(shù)據(jù)就可以通過(guò)串口發(fā)送至下位機(jī)的單片機(jī),更新相應(yīng)的目標(biāo)溫度。生成報(bào)表及溫度數(shù)據(jù)處理的程序框圖分別如3、4所示。
圖3 報(bào)表部分的程序框圖
圖4 溫度數(shù)據(jù)處理部分的程序框圖
隨著傳感器技術(shù)的不斷發(fā)展,傳統(tǒng)的測(cè)試方法已經(jīng)不能滿足我們對(duì)測(cè)試精度的要求。隨著信號(hào)檢測(cè)和計(jì)算機(jī)技術(shù)的不斷發(fā)展也使得高精度實(shí)時(shí)采集數(shù)據(jù)和分析處理成為可能。本項(xiàng)目是基于LabVIEW軟件設(shè)計(jì)的溫度測(cè)量與控制系統(tǒng),可在計(jì)算機(jī)上和LED上同時(shí)完成被控溫度的實(shí)時(shí)顯示、直方圖統(tǒng)計(jì)顯示及PID控制,同時(shí)也可將采集的溫度數(shù)據(jù)保存到指定的數(shù)據(jù)庫(kù)中,以備系統(tǒng)運(yùn)行中隨時(shí)查閱和分析。查詢結(jié)果以表格形式呈現(xiàn),方便用戶查看。同時(shí),只需要一些傳感和溫控電路就可以完成整個(gè)系統(tǒng)的功能。此測(cè)試系統(tǒng),極大地降低了溫度監(jiān)控系統(tǒng)的成本,系統(tǒng)具有很大的靈活性,同時(shí)也大大提高了系統(tǒng)的測(cè)試精度。同傳統(tǒng)系統(tǒng)相比,采用虛擬儀器的方法具有效率高、性能好、運(yùn)行可靠、成本低等特點(diǎn)。
[1]王琦,翟正軍,郭陽(yáng)明.基于虛擬儀器的實(shí)驗(yàn)室溫濕度控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].測(cè)控技術(shù),2009,(3):39-42.
[2]李全利.單片機(jī)原理及接口技術(shù)[M].北京:高等教育出版社,2009.
[3]宋文緒,楊帆.傳感器與檢測(cè)技術(shù)[M].北京:高等教育出版社,2009.
[4]林鷹,郭兵,楊奕.實(shí)時(shí)異構(gòu)監(jiān)控系統(tǒng)數(shù)據(jù)平臺(tái)的集成技術(shù)[J].西南師范大學(xué)學(xué)報(bào)(自然科學(xué)版),2005,30(1):87-91.
[5]廖傳書(shū).基于LabVIEW與串行口的直接數(shù)據(jù)通信[J].中國(guó)水運(yùn),2006(4):23-25.
Design of Temperature Measurement and Control System Based on LabVIEW and Microprocessor
Li Dongdong Wei Zhiqin Huang Lingsen Wu Jimin Huang Jibiao Luo Kuolong
(Guangzhou College,South China University of Technology,Guangzhou 510800,Guangdong)
Temperature measurement and control system is developing towards the trend of virtual instrument.Currently Lab-VIEW is a software for virtual instrument used most widely.However,the data acquisition equipment connected with it is generally expensive.In order to reduce the cost,the temperature measurement and control system based on LabVIEW is designed,which gets temperature by sensor DS18B20 and transmits the message to LabVIEW with the communication between microprocessor and computer,to measure and control temperature.
LabVIEW;Microprocessor;temperature control;DS18B20
李冬冬,男,廣東揭西人,碩士,講師。研究方向:測(cè)試技術(shù)。的方式,加速冷卻,通過(guò)P1.1、P1.2輸出高、低電平控制加熱或停止,通過(guò)P1.3、P1.4輸出高、低電平控制制冷或停止。