許 鋼, 林園勝, 胡天水, 陳 亮
(安徽工程大學安徽檢測技術與節(jié)能裝置省級實驗室,安徽 蕪湖 241000)
隨著電子技術的快速發(fā)展,測溫的方法多種多樣,應用單片機進行溫度采集系統(tǒng)的設計也很多,結(jié)構(gòu)也越來越簡單.目前,諸多控制系統(tǒng)建立在以計算機技術為控制核心上,此時就需要充分利用計算機實現(xiàn)和擴展傳統(tǒng)儀器和智能儀器的功能,這會使得系統(tǒng)的開發(fā)、實現(xiàn)更加簡單方便.
本文將介紹一種基于實驗室虛擬儀器工程平臺(Laboratory Virtual Instrument Engineering Workbench,以下簡稱:LabVIEW)和單片機的溫度采集系統(tǒng)的設計與實現(xiàn),系統(tǒng)由單片機和溫度傳感器搭建下位機系統(tǒng)、LabVIEW和個人計算機(Personal Computer,以下簡稱:PC機或PC)構(gòu)成上位機系統(tǒng),下位機系統(tǒng)采集溫度由串口通信傳輸至PC機,上位機系統(tǒng)應用LabVIEW進行數(shù)據(jù)處理和分析,實現(xiàn)了“軟件即是儀器”.
該系統(tǒng)由上位機和下位機構(gòu)成主從式控制系統(tǒng):單片機STC89C54RD+和數(shù)字溫度傳感器DS18B20搭建實時溫度采集電路作為下位機;上位機為安裝有LabVIEW應用軟件的PC機.下位機采集溫度數(shù)據(jù)由串口通信總線傳輸至PC機,PC機應用LabVIEW實時進行數(shù)據(jù)的顯示、處理、分析和存儲等操作.系統(tǒng)結(jié)構(gòu)示意圖如圖1所示.
圖1 系統(tǒng)結(jié)構(gòu)示意圖Fig.1 Sketch map of the system
下位機系統(tǒng)主要實現(xiàn)系統(tǒng)溫度數(shù)據(jù)的采集,用于上位機處理.本文采用單片機STC89C54RD+為控制中心,單總線數(shù)字溫度傳感器DS18B20進行溫度的采集.由于DS18B20構(gòu)成的溫度測量裝置輸出采集溫度為數(shù)字值,使得設計比較簡單,硬件實現(xiàn)容易.
宏晶科技推出的STC89系列單片機低功耗、高速可靠、強抗干擾等特性顯著,指令代碼完全兼容51單片機,STC89系列單片機應用廣泛[1].
DS18B20具有微型化、低功耗、高性能、抗干擾能力強等特點,其測量溫度的范圍為-55~+125 ℃,可直接將溫度轉(zhuǎn)化成數(shù)字信號輸出.本設計中,DS18B20工作在外部電源供電模式下,其工作電源由VDD引腳接入+5V,GND引腳接地,將DS18B20的數(shù)據(jù)輸入/輸出端DQ引腳與單片機STC89C54RD+的P1.0端口相連.在此方式下,DS18B20工作穩(wěn)定可靠,抗干擾能力強,而且電路簡單.DS18B20與STC89C54RD+的連接電路如圖2所示[2-3].
圖2 DS18B20與STC89C54RD+的連接電路Fig.2 Connection circuit of DS18B20 and STC89C54RD+
下位機主要是進行溫度數(shù)據(jù)的采集,讀出并處理DS18B20測量的溫度值.由于DS18B20采用單總線協(xié)議方式,經(jīng)過單線接口訪問DS18B20 的協(xié)議如下:初始化、ROM操作命令、存儲器操作命令和處理數(shù)據(jù).下位機系統(tǒng)軟件程序流程如圖3所示.
圖3 下位機系統(tǒng)軟件設計Fig.3 Design of the lower computer system software
在仿真軟件Proteus中按上位機系統(tǒng)設計繪制電路圖,并正確連線,然后把生成的.hex文件加載到單片機中去,啟動運行,下位機系統(tǒng)仿真結(jié)果如圖4所示.
圖4 下位機系統(tǒng)仿真結(jié)果Fig.4 Simulation result of the lower computer system
通過上述仿真可看出,下位機系統(tǒng)設計滿足設計要求,具有現(xiàn)實可行性.
上位機系統(tǒng)應用LabVIEW進行設計.LabVIEW具有高性能、無縫集成、擴展性強及開發(fā)時間短等優(yōu)點,其用于系統(tǒng)的開發(fā)、測試及實現(xiàn),可大大減少產(chǎn)品投放市場的時間,在汽車和航天航空技等眾多工程應用領域深受用戶的歡迎[4].
虛擬儀器軟件結(jié)構(gòu)體系(Virtual Instrument Software Architecture,以下簡稱:VISA),是用來與其他儀器總線進行通信的高級應用編程接口;VISA子模板主要有基本節(jié)點、指定接口、事件處理、高層寄存器讀寫、低層寄存器讀寫等部分[5].LabVIEW中所有的VISA節(jié)點都位于程序框圖中,放置這些節(jié)點的具體操作為:Functions→All Functions→Instrument I/O→VISA.上位機系統(tǒng)的程序框圖如圖5所示.
圖5 上位機系統(tǒng)的程序框圖Fig.5 Block diagram of the upper computer system
在運行上位機應用程序前,用戶必先輸入用戶名和登錄密碼,并設置好串口端號,此時點擊左上角的運行按鈕,系統(tǒng)閃爍提示“登錄成功”、“歡迎使用”后方可進入上位機系統(tǒng).若用戶沒有正確輸入用戶名、密碼或沒有正確選擇串口號,則系統(tǒng)提示“登錄錯誤”并自動退出關閉LabVIEW應用程序,此時無法進入上位機系統(tǒng).系統(tǒng)采集溫度值和采集時間戳數(shù)據(jù)存儲在已設置路徑的Excel表格中.用戶登錄成功界面如圖6所示.
圖6 用戶登錄界面Fig.6 User login interface
上位機和下位機采用RS232串行總線數(shù)據(jù)通信,實現(xiàn)兩者之間數(shù)據(jù)傳輸.目前,市場上大多數(shù)筆記本電腦并不帶有RS232接口,為方便用戶使用系統(tǒng),采用Prolific公司生產(chǎn)的PL2303進行RS232-USB接口轉(zhuǎn)換,這樣使用一根USB線就可以實現(xiàn)串口通信[6-7].
圖7可實現(xiàn)USB與RS232的信號轉(zhuǎn)換,串口通信的程序流程如圖8所示.
圖7 USB/RS232接口轉(zhuǎn)換電路Fig.7 Interface circuit of USB/RS232 convertion
圖8 串口通信流程圖Fig.8 Serial communication flowchart
根據(jù)設計的溫度采集系統(tǒng),給下位機系統(tǒng)上電,各部分電路開始工作,PC機上打開上位機系統(tǒng)設計LabVIEW程序,進入LabVIEW操作界面.
首先,在用戶登錄窗口輸入正確的用戶名和登錄密碼,選擇正確的串口號,串口默認設置如表1所示.報警溫度的上下限分別設置為85 ℃和15 ℃,設置存儲數(shù)據(jù)的Excel表格路徑為F:LabVIEWDataSheet.xls.
表1 串口默認參數(shù)設置Table 1 Serial default parameter settings
上位機系統(tǒng)按表1參數(shù)設置,運行系統(tǒng)程序,當前運行程序的前面板如圖9所示,系統(tǒng)存儲數(shù)據(jù)Excel表如圖10所示.
圖9中系統(tǒng)指示燈為綠色,說明此時系統(tǒng)運行正常;上限報警和下限報警指示燈均為綠色且揚聲器沒有任何提示音,表明實時采集溫度沒有超出報警溫度范圍.由圖9和圖10可以看出:數(shù)據(jù)接收窗口每隔1 s進行一次采集溫度值的記錄,且接受窗口數(shù)據(jù)不停刷新;示波器繪制被測系統(tǒng)的溫度趨勢曲線圖;指定路徑下的Excel表格存儲了系統(tǒng)運行期間采集的溫度值;各溫度單位之間的溫度值進行在線實時轉(zhuǎn)換顯示.此外,還可以任意設置報警溫度上下限值等,且超出報警溫度范圍系統(tǒng)會有紅燈提示以及“嘀”、“嘀”的報警聲.通過分析實驗結(jié)果可以看出,本設計系統(tǒng)實現(xiàn)了實時溫度采集的功能.
圖9 上位機系統(tǒng)的前面板Fig.9 Front panel of the upper computer system
圖10 存儲采集數(shù)據(jù)的Excel表Fig.10 Excel sheet stored acquisition datas
本設計采用STC89C54RD+單片機和溫度傳感器DS18B20進行溫度的采集,結(jié)合串口通信技術和虛擬儀器技術設計的基于LabVIEW和單片機的溫度采集系統(tǒng)實現(xiàn)了對溫度的實時采集、顯示、分析處理以及存儲等功能.較傳統(tǒng)基于單片機的溫度采集系統(tǒng),本系統(tǒng)實現(xiàn)了與計算機的高度融合,降低了硬件制作的復雜度,靈敏性和靈活度都有了很大的提高,其減少單片機顯示、按鍵等外圍電路很大程度上有利于單片機嵌入到其他系統(tǒng);與采用數(shù)據(jù)采集(DAQ)卡搭建的系統(tǒng)相比較[8],本系統(tǒng)極大程度上減少了成本.若多點溫度采集使用本系統(tǒng)則會大大縮小系統(tǒng)開發(fā)時間,減少費用.本系統(tǒng)人機交互界面友好美觀,操作簡單,易于觀察實驗結(jié)果;經(jīng)多次實驗測試,系統(tǒng)運行良好,實驗結(jié)果理想.
致謝
安徽工程大學電氣工程學院胡天水碩士在測試實驗過程中給予了幫助,安徽省教育廳為本文提供了科研經(jīng)費支持,在此一并致以衷心的感謝!
參考文獻:
[1] 劉鑫,張慶順,陳麗霞,等.基于STC89C55RD+單片機的LED點陣顯示系統(tǒng)的設計[J].微計算機信息,2010,26(8):98-99.
LIU Xin, ZHANG Qing-shun, CHEN Li-xia, et al. Design of Dot-matrix LED Display System Based on STC89C55RD+ MCU[J].Microcomputer Informa-tion,2010,26(8):98-99.(in Chinese)
[2] 張毅剛,彭喜元,董繼成.單片機原理及應用[M].北京:高等教育出版社,2003:1-9.
[3] 郭天祥.新概念51單片機C語言教程:入門、提高、開發(fā)、拓展全攻略[M].北京:電子工業(yè)出版社,2009:342-349.
[4] 楊樂平,李海濤,楊磊.LabVIEW程序設計與應用:第二版[M].北京:電子工業(yè)出版社,2005:1-10.
[5] 王福明,于麗霞,劉吉,等.LabVIEW程序設計與虛擬儀器[M].西安:西安電子科技大學出版社,2009:196-199.
[6] 陳光建,何華平,賈金玲.基于虛擬儀器和USB的溫度測量系統(tǒng)的研制[J].儀表技術與傳感器,2010,11:30-31.
CHEN Guang-jian, HE Hua-ping, JIA Jin-ling.Temperature Measurement System Based on Virtual Instrument and USB[J].Instrument Technique and Sensor,2010,11:30-31.(in Chinese)
[7] 呂飛龍,陳照章,黃永紅.基于LabVIEW的虛擬儀器溫度檢測系統(tǒng)的設計[J].微計算機信息,2007,23(1):170-171.
LV FEILONG, CHEN ZHAOZHANG, HUANG YONGHONG. The design of temperature detecting system based on LabVIEW[J].Microcomputer Information, 2007,23(1):170-171.(in Chinese)
[8] 丁宗玲.基于LabVIEW的數(shù)據(jù)采集卡控制和溫度采集方法研究[J].大學物理實驗,2013,26(1):81-84.
DING Zong-ling.The Research Based Data Acquisition Card Control and Temperature Acquisition Method of LabVIEW[J].PHYSICAL EXPERIMENT OF COLLEGE,2013,26(1):81-84.(in Chinese)