李馨諾
摘 要:隨著科技的發(fā)展,監(jiān)測(cè)系統(tǒng)的應(yīng)用范圍愈發(fā)廣泛,監(jiān)測(cè)作用也比較大。文章將研究一種多種場(chǎng)景環(huán)境信息實(shí)時(shí)檢測(cè)系統(tǒng)。LabVIEW軟件屬于一種開發(fā)效率較高的圖形化語言,且具有性能較好、功能強(qiáng)度、靈活性高、簡單易懂等優(yōu)勢(shì),能夠?qū)崿F(xiàn)采集數(shù)據(jù)、分析數(shù)據(jù)、結(jié)果輸出等功能,于是將其應(yīng)用到檢測(cè)系統(tǒng)設(shè)計(jì)中將會(huì)具有不錯(cuò)的效果。文章首先對(duì)LabVIEW軟件進(jìn)行了簡要介紹,然后再對(duì)系統(tǒng)的硬件和軟件進(jìn)行分析和設(shè)計(jì),最后將監(jiān)測(cè)系統(tǒng)對(duì)溫度和光照度進(jìn)行監(jiān)測(cè),研究發(fā)現(xiàn)具有較好的準(zhǔn)確度和靈敏性。
關(guān)鍵詞:LabVIEW軟件;環(huán)境信息;監(jiān)測(cè)系統(tǒng)
中圖分類號(hào):X831.7 文獻(xiàn)標(biāo)識(shí)碼:A? ? ? ? ? ? ?文章編號(hào):1001-5922(2020)10-0087-04
Abstract: Nowadays, the application scope of the monitoring system is more and more extensive, and the monitoring function is also relatively large. So the paper will study a real-time detection system of multiple scene environment information. LabVIEW software belongs to a graphical language with high development efficiency, and has the advantages of better performance, functional strength, high flexibility, simple and easy to understand, and can realize the functions of collecting data, analyzing data, outputting results, etc. It will have a good effect in the design of the detection system. So the paper first briefly introduces the LabVIEW software, then analyzes and designs the system hardware and software, and finally monitors the temperature and light intensity of the monitoring system, and finds that it has good accuracy and sensitivity.
Key words:LabVIEW software; environmental information; monitoring system
0 引言
實(shí)時(shí)監(jiān)測(cè)系統(tǒng)的種類比較多,應(yīng)用范圍也非常廣泛,能夠達(dá)到不錯(cuò)的準(zhǔn)確度,對(duì)人類的發(fā)展和進(jìn)步也起到一定的作用[1]。但是有些實(shí)時(shí)檢測(cè)系統(tǒng)只能在一個(gè)場(chǎng)景下進(jìn)行應(yīng)用,比如我們常常使用的監(jiān)控設(shè)備。當(dāng)然也存在某些監(jiān)控系統(tǒng)能夠在不同場(chǎng)景中進(jìn)行使用,然后其應(yīng)用效果存在一定的缺陷,比如精確度比較低、系統(tǒng)操作比較困難等。于是文章將設(shè)計(jì)一種基于LabVIEW軟件的多種場(chǎng)景環(huán)境信息實(shí)時(shí)監(jiān)測(cè)系統(tǒng),該系統(tǒng)能夠在多種場(chǎng)景中進(jìn)行使用,比如對(duì)各種農(nóng)植物的監(jiān)測(cè)、某些機(jī)械設(shè)備相關(guān)參數(shù)的監(jiān)測(cè)、大氣環(huán)境的檢測(cè)。
1 LabVIEW軟件的介紹
LabVIEW是實(shí)驗(yàn)室虛擬儀器集成環(huán)境的縮寫,該軟件的開發(fā)具有革命性意義[2]。傳統(tǒng)的開發(fā)工具非常復(fù)雜,而LabVIEW開發(fā)軟件具有簡單性、實(shí)用性、靈活性等優(yōu)勢(shì),能夠?qū)崿F(xiàn)信號(hào)采集、數(shù)據(jù)顯示和測(cè)量分析等功能,其作重要的功能在于測(cè)控,該功能十分強(qiáng)大,能夠無縫集成一套完整應(yīng)用方案[3]。該軟件已經(jīng)有30多年的發(fā)展,在不斷更新、優(yōu)化和應(yīng)用過程中,已經(jīng)得到了較大的發(fā)展,應(yīng)用范圍也相當(dāng)廣泛,該軟件已經(jīng)成為人們開發(fā)自動(dòng)測(cè)控與儀器應(yīng)用的首選工具,于是文章在研究環(huán)境信息實(shí)時(shí)監(jiān)測(cè)系統(tǒng)設(shè)計(jì)時(shí)也通過使用LabVIEW軟件進(jìn)行系統(tǒng)開發(fā)。
LabVIEW軟件在編程方式比較直觀簡單,具有豐富的分析和表達(dá)功能,而且還有豐富的源碼級(jí)設(shè)備驅(qū)動(dòng)程序,所以使得LabVIEW軟件的功能強(qiáng)大,能夠符合很多用戶的不同需求[4]。LabVIEW軟件的主要特點(diǎn)如下所示:
1)VB或者VC這類的軟件是以文本作為基礎(chǔ)的編程語言而LabVIEW軟件與其不同,它是一種圖形化編程語言,也被稱為G編程語言,該軟件使用圖進(jìn)行設(shè)計(jì)程序,將會(huì)顯得更加的簡明直觀,而且這種編程方式比較易懂易學(xué)。
2)LabVIEW軟件雖然以一種虛擬方式模擬真實(shí)儀表,但是其功能卻可以真實(shí)實(shí)現(xiàn),相當(dāng)于真實(shí)的儀器,可以發(fā)揮真實(shí)儀器的作用。
3)LabVIEW軟件所引用的流程模式為數(shù)據(jù)流,所以能夠在同一時(shí)間段內(nèi)執(zhí)行幾個(gè)LabVIEW子程序。
4)LabVIEW軟件中含有VI,其中含有層次化結(jié)構(gòu)和模塊化結(jié)構(gòu),于是單獨(dú)執(zhí)行每一個(gè)VI,或者其他程序會(huì)將VI作為子VI進(jìn)行調(diào)用。
5) LabVIEW軟件有利于用戶快速組件應(yīng)用系統(tǒng),因?yàn)槠渲写嬖谝粋€(gè)虛擬儀器集成函數(shù)庫,還有專用程序,且函數(shù)庫和專用程序非常豐富、功能強(qiáng)大。
6)LabVIEW軟件支持多種操作系統(tǒng)平臺(tái)。
7)LabVIEW軟件具有運(yùn)行速度快的優(yōu)勢(shì),因?yàn)槠涫鞘褂镁幾g方法運(yùn)行32為應(yīng)用程序。
8)LabVIEW軟件提供CIN節(jié)點(diǎn)、DLL接口,屬于一個(gè)開放開發(fā)平臺(tái)。
由于LabVIEW軟件的功能強(qiáng)度、操作簡單、易懂易學(xué)、速度較快等優(yōu)勢(shì),在設(shè)計(jì)環(huán)境信息實(shí)時(shí)監(jiān)測(cè)系統(tǒng)時(shí)首選LabVIEW軟件進(jìn)行開發(fā),將有助于系統(tǒng)開發(fā)質(zhì)量和效率。
2 基于LabVIEW軟件的環(huán)境信息實(shí)時(shí)監(jiān)測(cè)系統(tǒng)
環(huán)境信息實(shí)時(shí)監(jiān)測(cè)系統(tǒng)主要功能是對(duì)溫度、光照度等環(huán)境信息的進(jìn)行實(shí)時(shí)數(shù)據(jù)采集,并且對(duì)數(shù)據(jù)進(jìn)行分析和處理,最后能夠?qū)⒎治鼋Y(jié)果顯示出來反饋給用戶。該系統(tǒng)的設(shè)計(jì)屬于一般典型數(shù)據(jù)采集系統(tǒng),其結(jié)構(gòu)如圖1所示。
將單片機(jī)作為系統(tǒng)的控制核心[5]。監(jiān)測(cè)系統(tǒng)主要包含傳感器、通信電路和A/D轉(zhuǎn)換器等構(gòu)成。傳感器的主要作用在于檢測(cè)環(huán)境信息,檢測(cè)到的各種信息數(shù)據(jù)需要使用到A/D轉(zhuǎn)換器進(jìn)行轉(zhuǎn)換,首先轉(zhuǎn)換為數(shù)據(jù)信號(hào),然后將這些信號(hào)使用數(shù)據(jù)線進(jìn)行傳輸,接收方為單片機(jī),單片機(jī)會(huì)將這些數(shù)據(jù)進(jìn)行存儲(chǔ),然后相應(yīng)的軟件程序?qū)?duì)這些數(shù)據(jù)信號(hào)進(jìn)行處理,通過利用LabVIEW軟件,能夠按照其指令使用通信接口被解讀到PC中,最后就會(huì)將結(jié)果顯示在計(jì)算機(jī)屏幕上,其顯示的內(nèi)容會(huì)以圖形或者數(shù)值形式進(jìn)行表述,具有準(zhǔn)確、直觀的效果。系統(tǒng)的總體結(jié)構(gòu)如圖2所示。
2.1 系統(tǒng)的硬件設(shè)計(jì)
2.1.1數(shù)據(jù)采集
數(shù)據(jù)采集屬于系統(tǒng)的基礎(chǔ)部分,同時(shí)也是最重要的環(huán)節(jié),數(shù)據(jù)采集的工作自然是通過傳感器進(jìn)行工作,然后需要對(duì)收集到的數(shù)據(jù)信息進(jìn)行轉(zhuǎn)換,系統(tǒng)使用的轉(zhuǎn)換器為ADC0809模數(shù)轉(zhuǎn)換器,因?yàn)樵撧D(zhuǎn)換器功能較為強(qiáng)大,比較適合應(yīng)用于系統(tǒng)的設(shè)計(jì),其存在8路多路開關(guān)和微處理機(jī)兼容的控制邏輯的CMOS組件,該器件在電壓、采用頻率規(guī)定上都比較滿足于數(shù)據(jù)采集的要求。
環(huán)境信息實(shí)時(shí)監(jiān)測(cè)系統(tǒng)使用的單片機(jī)為AT89S52單片機(jī),單片機(jī)的相關(guān)連接過程為:引腳和轉(zhuǎn)換器的ADD_A~ADD_C進(jìn)行相互連接;P2.1引腳和轉(zhuǎn)換器的EOC相互連接;P0口和轉(zhuǎn)換器的數(shù)據(jù)輸出接口相互連接;P2.2引腳和轉(zhuǎn)換器的OE相互連接,該連接的主要作用在于控制引腳上輸出轉(zhuǎn)換后的數(shù)字量;P2.0需要和轉(zhuǎn)換器的ST和ALE進(jìn)行相互連接,該連接的主要目的在于控制轉(zhuǎn)換器的啟動(dòng)和地質(zhì)信息的鎖存。圖3即為相應(yīng)的接口電路情況。
2.1.2 串口通信接口
由于系統(tǒng)所使用的核心模塊處理器和PC串口的電平存在差異,于是就會(huì)影響到兩者的結(jié)合使用,為了能夠使得兩者共同作用,需要將加入一個(gè)電平轉(zhuǎn)換電路,目的在于將所有電平變?yōu)橐恢?。于是文章將選擇MAX232組成電平轉(zhuǎn)換電路,它屬于一種雙驅(qū)動(dòng)器/接收機(jī),其主要作用就是將核心模塊處理器即單片機(jī)的電平轉(zhuǎn)換為與PC串口相同的電平,于是可以解決電平不匹配的問題。由于LabVIEW軟件中存在一個(gè)強(qiáng)大的函數(shù)庫,能夠提供串口通信函數(shù),于是可以通過其函數(shù)對(duì)PC和單片機(jī)進(jìn)行設(shè)計(jì)串口通信[6-7]。串口電路的連接方式如圖4所示。
2.2 系統(tǒng)的軟件設(shè)計(jì)
環(huán)境信息實(shí)時(shí)監(jiān)測(cè)系統(tǒng)中軟件設(shè)計(jì)主要包含的程序有PC軟件程序、數(shù)據(jù)采集程序、串行口通信程序和數(shù)據(jù)轉(zhuǎn)換等,其中PC軟件程序的作用最大,另外單片機(jī)軟件程序也屬于重要內(nèi)容,于是文章將主要對(duì)這兩個(gè)程序進(jìn)行總體設(shè)計(jì)流程圖分析,其中PC為上位機(jī),單片機(jī)為下位機(jī)。
2.2.1 通信協(xié)議
PC和單片機(jī)之間需要進(jìn)行通信才能完成實(shí)時(shí)監(jiān)測(cè)作用,為了保證其通信效果的可靠度,需要制定相應(yīng)的通信協(xié)議,所謂通信協(xié)議即上位機(jī)和下位機(jī)需要共同遵守的約定。一般情況下制定的通訊協(xié)議需要有數(shù)據(jù)傳送格式的確實(shí)、校驗(yàn)格式的制定和波特率的制定等。文章所設(shè)計(jì)的系統(tǒng)采用的通訊方式為RS232異步通信方式[8]。于是將通信協(xié)議中的數(shù)據(jù)傳送格式設(shè)置為11B,波特率設(shè)置為2400B/s。
2.2.2 下位機(jī)程序設(shè)計(jì)
圖5所示即為系統(tǒng)程序的設(shè)計(jì)流程圖。單片機(jī)在會(huì)以循環(huán)的方式對(duì)數(shù)據(jù)進(jìn)行不斷采集,所采集到的數(shù)據(jù)會(huì)進(jìn)行保存,保存形式是以一維數(shù)組的方式,然后將其存在數(shù)據(jù)存儲(chǔ)器中。存儲(chǔ)完成后需要將其傳送到PC中,其中需要使用到RS232串口通訊,且傳送到PC中的數(shù)據(jù)來源不止一種,另外,在不斷進(jìn)行數(shù)據(jù)采集和存儲(chǔ)過程中,下一次循環(huán)采集數(shù)據(jù)時(shí)會(huì)把前一次數(shù)據(jù)進(jìn)程更新處理。
2.2.3 上位機(jī)LabVIEW程序
1)串口數(shù)據(jù)采集。文章所涉及的系統(tǒng)一共包含4路數(shù)據(jù)采集,文章只對(duì)其中兩種進(jìn)行分析。環(huán)境信息實(shí)時(shí)監(jiān)控系統(tǒng)的運(yùn)作原理比較簡單,就是單片機(jī)不斷給上位機(jī)進(jìn)行發(fā)送數(shù)據(jù),然后上位機(jī)不斷接受信息的過程。而其中上位機(jī)程序主要會(huì)應(yīng)用到LabVIEW中的3個(gè)串口操作節(jié)點(diǎn),即讀串口節(jié)點(diǎn)、串口配置節(jié)點(diǎn)和關(guān)閉串口節(jié)點(diǎn),其中串口配置節(jié)點(diǎn)的主要作用在于能夠設(shè)置波特率、數(shù)據(jù)位數(shù)、校驗(yàn)方式和停止位數(shù)等參數(shù)[9]。讀串口節(jié)點(diǎn)的主要作用在于對(duì)下位機(jī)發(fā)送的消息進(jìn)行讀取,其中讀取的字節(jié)數(shù)也有規(guī)定,文章所設(shè)計(jì)的字節(jié)數(shù)為11,即每次都會(huì)從串口緩沖區(qū)中讀取11個(gè)字節(jié)的數(shù)據(jù),其中有兩個(gè)字節(jié)表示停止位和起始位,另外的8個(gè)字節(jié)是傳感器采集的信號(hào),還有一個(gè)字節(jié)的作用就是對(duì)數(shù)據(jù)類型進(jìn)行劃分和區(qū)別[10]。下位機(jī)傳送的數(shù)據(jù)同樣為11個(gè)字節(jié),當(dāng)程序完成運(yùn)行之后,就會(huì)使用關(guān)閉串口釋放掉占用的串口資源。圖6所示即為LabVIEW串口數(shù)據(jù)采集程序。
2)數(shù)據(jù)驗(yàn)證處理分析和顯示。數(shù)據(jù)驗(yàn)證的方式就是一步步對(duì)串口中讀取到的數(shù)據(jù)進(jìn)行判斷,首先判斷數(shù)據(jù)是否為空,然后再驗(yàn)證數(shù)據(jù)是否滿足起始位和停止位要求,如果在驗(yàn)證過程中發(fā)現(xiàn)數(shù)據(jù)存在問題,則將此次傳送的數(shù)據(jù)以丟棄的方式進(jìn)行處理。驗(yàn)證之后如果數(shù)據(jù)是正確的,則將第2~10個(gè)字節(jié)進(jìn)行數(shù)據(jù)分析處理,然后再通過轉(zhuǎn)換器將這些數(shù)據(jù)實(shí)現(xiàn)ASCII碼向十進(jìn)制數(shù)的轉(zhuǎn)換,完成轉(zhuǎn)換之后還需要將結(jié)果顯示在LabVIEW的圖形界面上。圖7所示即為程序界面,圖中左邊顯示的是溫度變化情況,首先所測(cè)量的溫度為室內(nèi)溫度,然后再對(duì)傳感器進(jìn)行加熱處理,溫度自然就會(huì)開始上升,圖中所顯示的結(jié)果就是溫度曲線處于上升階段,然后再停止對(duì)傳感器進(jìn)行加熱處理,于是溫度曲線開始呈現(xiàn)下降趨勢(shì),最后保持在室內(nèi)溫度上。圖中右側(cè)即為光照度值,首先顯示的是室內(nèi)光照度,然后將部分光速進(jìn)遮擋,于是光照度曲線立馬變下,不遮擋陽光之后,光照度立馬回復(fù)到正常光照值。通過這種實(shí)驗(yàn)方式對(duì)環(huán)境信息進(jìn)行監(jiān)測(cè),發(fā)現(xiàn)系統(tǒng)的誤差比較小,且具有較好的靈敏度,能夠在日常的環(huán)境信息監(jiān)測(cè)中進(jìn)行使用。該系統(tǒng)能夠在多種場(chǎng)景環(huán)境中進(jìn)行使用,比如應(yīng)用于種植項(xiàng)目中,能夠監(jiān)測(cè)到植物的的生長環(huán)境;應(yīng)用在空氣監(jiān)測(cè)中,能夠判斷出空氣質(zhì)量;應(yīng)用于各種儀器設(shè)備的監(jiān)測(cè)中,同樣能夠發(fā)揮一定的監(jiān)測(cè)作用。
3 結(jié)語
文章基于LabVIEW軟件設(shè)計(jì)了一種環(huán)境信息實(shí)時(shí)監(jiān)測(cè)系統(tǒng),該系統(tǒng)的結(jié)構(gòu)比較簡單,同樣操作也比較簡單,能夠應(yīng)用到多種場(chǎng)景環(huán)境信息實(shí)時(shí)監(jiān)測(cè)中。通過將系統(tǒng)應(yīng)用到對(duì)溫度和光照的在線監(jiān)測(cè),得到的結(jié)果比較準(zhǔn)確,且反應(yīng)靈敏,具有較好的應(yīng)用效果。由于在不同場(chǎng)景環(huán)境中所需要監(jiān)測(cè)的對(duì)象不一樣,然而文章所設(shè)計(jì)的系統(tǒng)能夠在不同場(chǎng)景中進(jìn)行使用,所以將會(huì)具有更好的應(yīng)用范圍。
參考文獻(xiàn)
[1]張志剛.軸承故障實(shí)時(shí)監(jiān)測(cè)系統(tǒng)的設(shè)計(jì)與應(yīng)用研究[D].天津:天津大學(xué),2005.
[2]謝啟,方玉.基于LabVIEW軟件開發(fā)測(cè)試系統(tǒng)的關(guān)鍵技術(shù)研究[J].機(jī)床與液壓,2005(10):156-158.
[3]趙敏.基于LabVIEW的運(yùn)動(dòng)控制系統(tǒng)的軟件設(shè)計(jì)[D].太原:中北大學(xué),2014.
[4]陳楠楠.基于LabVIEW的軟件仿真平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)[D].西安:長安大學(xué),2009.
[5]馬俊,陳學(xué)煌.基于DSP的多路數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)[J].電子技術(shù)應(yīng)用,2007,33(12):79-81.
[6]許美玲,李春茂,朱俊峰,等.基于LabVIEW串口通訊的的多路數(shù)據(jù)采集系統(tǒng)[J].機(jī)械與電子,2010(S1):172-174.
[7]林濤,鄒黎華,耿勇男.多類型多通道的數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)[J].電子測(cè)量與儀器學(xué)報(bào),2009,23(S1):236-239.
[8]李林宏,李萍,張仕新,等.基于LabVIEW與串行通信的檢測(cè)系統(tǒng)設(shè)計(jì)[J].電子測(cè)量技術(shù),2010(01):92-94.
[9]馬海瑞,韓云東,袁群哲,等.基于LABVIEW的GPS信息采集與解析[J].國外電子測(cè)量技術(shù),2011,30(09):64-66+75.
[10]李迺璐,呂躍剛,范曉旭.基于LabVIEW風(fēng)電監(jiān)控系統(tǒng)的通信設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)應(yīng)用與軟件,2010,27(05):30-33.