• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于LabVIEW與單片機(jī)的溫濕度檢測(cè)系統(tǒng)研究

      2019-10-16 08:39:54侯海良
      關(guān)鍵詞:下位控件上位

      謝 波 侯海良

      (湖南人文科技學(xué)院 信息學(xué)院,湖南 婁底 417000)

      在農(nóng)業(yè)生產(chǎn)中,溫度和濕度直接決定了農(nóng)作物的質(zhì)量,在工業(yè)應(yīng)用中,很多儀器和設(shè)備對(duì)溫濕度有很高要求[1]。因此,實(shí)時(shí)檢測(cè)生產(chǎn)環(huán)境的溫濕度對(duì)工農(nóng)業(yè)的生產(chǎn)效率至關(guān)重要。

      傳統(tǒng)儀器的功能取決于儀器制造商,擴(kuò)展性方面受到很大的限制,操作界面不夠直觀方便,數(shù)據(jù)的處理和運(yùn)算功能不夠理想,很難得到更新,維護(hù)和升級(jí)的成本太高,用戶(hù)不能根據(jù)自己的需求對(duì)系統(tǒng)進(jìn)行改進(jìn)[2]?;趥鹘y(tǒng)儀器以上缺點(diǎn),本文旨在設(shè)計(jì)一個(gè)易于擴(kuò)展,實(shí)時(shí)性高,界面一目了然,易進(jìn)行二次開(kāi)發(fā)的溫濕度檢測(cè)系統(tǒng)。本設(shè)計(jì)采用LabVIEW 作為上位機(jī)來(lái)進(jìn)行數(shù)據(jù)的處理和顯示,用戶(hù)可以根據(jù)自己的需求進(jìn)行功能定義,能實(shí)現(xiàn)普通機(jī)械儀表儀器無(wú)法實(shí)現(xiàn)的功能,且LabVIEW 作為計(jì)算機(jī)的一個(gè)開(kāi)發(fā)環(huán)境,在實(shí)現(xiàn)傳統(tǒng)儀器功能的同時(shí)成本極低,不用考慮儀器的損耗問(wèn)題。下位機(jī)用單片機(jī)實(shí)時(shí)檢測(cè)溫濕度原始數(shù)據(jù),并通過(guò)無(wú)線串口模塊將下位機(jī)與上位機(jī)進(jìn)行連接,可以進(jìn)行遠(yuǎn)程操作,控制十分方便。

      1 系統(tǒng)總體方案設(shè)計(jì)

      本設(shè)計(jì)主要用到了LabVIEW 開(kāi)發(fā)環(huán)境和STM32 單片機(jī)最小系統(tǒng)以及SHT20 溫濕度傳感器,單片機(jī)作為下位機(jī)用于將傳感器檢測(cè)到的數(shù)據(jù)處理后通過(guò)定時(shí)器中斷再發(fā)送給串口,LabVIEW 作為上位機(jī)用于讀取串口數(shù)據(jù),將接收到的數(shù)據(jù)經(jīng)過(guò)運(yùn)算后進(jìn)行顯示、存儲(chǔ)和打印。上位機(jī)完成對(duì)下位機(jī)的使能,處理數(shù)據(jù),進(jìn)行顯示。整個(gè)設(shè)計(jì)的系統(tǒng)總體設(shè)計(jì)框圖如圖1 所示。

      圖1 系統(tǒng)總體設(shè)計(jì)框圖

      2 上位機(jī)LabVIEW 程序設(shè)計(jì)

      2.1 程序設(shè)計(jì)思路

      上位機(jī)使用LabVIEW 處理接收到的溫濕度數(shù)據(jù),并將處理后的數(shù)據(jù)進(jìn)行顯示和保存。上位機(jī)的設(shè)計(jì)主要分為以下幾個(gè)模塊:前面板界面的設(shè)計(jì)、溫濕度數(shù)據(jù)處理設(shè)計(jì)、串口通信數(shù)據(jù)傳輸?shù)脑O(shè)計(jì)、歷史記錄模塊的設(shè)計(jì)。程序流程圖如圖2所示。

      2.2 串口通信模塊的設(shè)計(jì)

      串行通信模塊是上位機(jī)軟件設(shè)計(jì)中最重要的模塊之一,本設(shè)計(jì)單片機(jī)與LabVIEW 之間采用的也是串行通信方式[3-4]。在LabVIEW的串行通信中,最常用的是VISA 串行通信,本設(shè)計(jì)在計(jì)算機(jī)上安裝了VISA 驅(qū)動(dòng),并在上位機(jī)程序中進(jìn)行了相關(guān)參數(shù)配置,該方法簡(jiǎn)單且傳輸數(shù)據(jù)的穩(wěn)定性高。

      2.3 LabVIEW 程序的設(shè)計(jì)

      2.3.1 數(shù)據(jù)讀取

      圖2 上位機(jī)程序流程圖

      應(yīng)用LabVIEW 的VISA 控件進(jìn)行計(jì)算機(jī)串口配置,接收下位機(jī)發(fā)送過(guò)來(lái)的數(shù)據(jù)。LabVIEW 從串口接收到的數(shù)據(jù)會(huì)轉(zhuǎn)換為二進(jìn)制形式,因此需先將數(shù)據(jù)轉(zhuǎn)換再進(jìn)行處理和顯示,需要在讀取到數(shù)據(jù)后添加相應(yīng)的數(shù)據(jù)類(lèi)型轉(zhuǎn)換控件,如圖3 所示,其中VISA 讀取控件的“字節(jié)總數(shù)”連接端子需要連接到數(shù)字常量“2”,以便將溫度數(shù)據(jù)和濕度數(shù)據(jù)分離,顯示完成后再進(jìn)行下一次的數(shù)據(jù)讀取。

      在本設(shè)計(jì)中,上位機(jī)LabVIEW 每隔一段時(shí)間向下位機(jī)發(fā)送一個(gè)請(qǐng)求指令,下位機(jī)會(huì)進(jìn)入中斷進(jìn)行數(shù)據(jù)發(fā)送。所以在進(jìn)行串口初始化后,添加一個(gè)串口寫(xiě)入控件向下位機(jī)發(fā)送指令,這一命令對(duì)下位機(jī)來(lái)說(shuō)就相當(dāng)于一個(gè)開(kāi)始命令,沒(méi)有接收到正確的開(kāi)始命令時(shí)下位機(jī)處于休眠狀態(tài)。

      2.3.2 溫濕度測(cè)量模塊的設(shè)計(jì)

      通過(guò)VISA 讀取控件讀取下位機(jī)發(fā)過(guò)來(lái)的數(shù)據(jù),但是下位機(jī)發(fā)送過(guò)來(lái)的數(shù)據(jù)是溫濕度數(shù)據(jù)交叉一起發(fā)送過(guò)來(lái)的。因此在接收到數(shù)據(jù)后要先將溫度數(shù)據(jù)和濕度數(shù)據(jù)進(jìn)行區(qū)分。分別顯示溫濕度需在后連接索引數(shù)組控件。溫濕度的波形圖表需要在前面板創(chuàng)建,在前面板創(chuàng)建兩個(gè)波形圖表后,程序面板會(huì)出現(xiàn)兩個(gè)波形圖表控件,分別連接至數(shù)組索引的輸出端子,便可在程序運(yùn)行后得到溫濕度波形圖。溫濕度數(shù)據(jù)分別處理后可根據(jù)時(shí)間索引進(jìn)行存儲(chǔ)。溫濕度測(cè)量模塊如圖4 所示。

      圖4 溫濕度測(cè)量模塊

      2.3.3 報(bào)警模塊的設(shè)計(jì)

      報(bào)警模塊的設(shè)計(jì)如圖5 所示。將傳入的溫濕度值與設(shè)定值進(jìn)行比較,當(dāng)實(shí)際的溫度或濕度值不在設(shè)定的溫濕度范圍內(nèi)時(shí),會(huì)觸發(fā)溫度或濕度報(bào)警。觸發(fā)報(bào)警后上位機(jī)用指示燈常亮來(lái)進(jìn)行提示,同時(shí)下位機(jī)蜂鳴器會(huì)發(fā)出警報(bào)。此模塊只涉及到基本的算術(shù)運(yùn)算和基本的邏輯運(yùn)算,實(shí)現(xiàn)比較簡(jiǎn)單。

      圖5 報(bào)警模塊

      2.3.4 數(shù)據(jù)存儲(chǔ)模塊和數(shù)據(jù)回放模塊的設(shè)計(jì)

      數(shù)據(jù)存儲(chǔ)及回放模塊如圖6 所示。在前面板創(chuàng)建兩個(gè)Express 表格控件,該控件的作用是使信號(hào)轉(zhuǎn)換為數(shù)據(jù)表的形式,寫(xiě)出每一個(gè)信號(hào)的數(shù)值和每一個(gè)信號(hào)對(duì)應(yīng)的時(shí)間數(shù)據(jù)。將控件的“信號(hào)”端分別連接溫度和濕度數(shù)據(jù),并進(jìn)入表格控件的屬性,將“包含時(shí)間數(shù)據(jù)”勾上,便可將時(shí)間及溫濕度的歷史數(shù)據(jù)在表格上依次顯示,然后在程序面板創(chuàng)建寫(xiě)入電子表格文件控件,將表格控件的“表格”引腳連至寫(xiě)入電子表格文件控件的“二維數(shù)據(jù)”引腳,并設(shè)置文件路徑,即可以Excel形式保存溫濕度歷史數(shù)據(jù)。寫(xiě)入電子表格文件控件的“添加至文件?”引腳的值應(yīng)設(shè)為“T”,這樣就不會(huì)覆蓋之前所保存的表格數(shù)據(jù)。打開(kāi)Excel表格就可查看以前測(cè)量的溫濕度數(shù)據(jù)。

      圖6 數(shù)據(jù)存儲(chǔ)及回放模塊

      3 下位機(jī)設(shè)計(jì)

      3.1 下位機(jī)硬件設(shè)計(jì)

      下位機(jī)主要由單片機(jī)最小系統(tǒng)和溫濕度傳感器組成,本次設(shè)計(jì)用的是STM32 單片機(jī)和SHT20數(shù)字溫濕度傳感器。溫濕度傳感器SHT20 的電源引腳接+5V,接地引腳接GND,數(shù)據(jù)傳輸引腳接單片機(jī)的I/O 口GPIOA.1,這樣便可實(shí)現(xiàn)SHT20與采集數(shù)據(jù)的單片機(jī)之間的通信。由于單片機(jī)供電電壓為3.3V,傳感器供電電壓為5V,因此系統(tǒng)采用5V 電壓進(jìn)行供電,然后通過(guò)穩(wěn)壓芯片XC6206 將電壓降至3.3V 用于單片機(jī)供電。上位機(jī)與下位機(jī)是通過(guò)串口進(jìn)行無(wú)線通信的。單片機(jī)與SHT20 連接原理圖如圖7 所示[5-7]。

      圖7 單片機(jī)最小系統(tǒng)和降壓模塊

      3.2 下位機(jī)程序設(shè)計(jì)

      程序是整個(gè)系統(tǒng)的核心與靈魂,單片機(jī)及其外圍電路需要通過(guò)程序的驅(qū)動(dòng)才能運(yùn)行,所以系統(tǒng)的程序是非常重要的。程序中出現(xiàn)一個(gè)小的邏輯錯(cuò)誤有可能導(dǎo)致系統(tǒng)無(wú)法正常工作或是無(wú)法實(shí)現(xiàn)預(yù)期功能。本次設(shè)計(jì)選用的是STM32 單片機(jī),程序是用C 語(yǔ)言編寫(xiě)的。單片機(jī)TIM1 定時(shí)器工作于自動(dòng)重裝載模式,當(dāng)單片機(jī)接收到上位機(jī)發(fā)來(lái)的指令時(shí),單片機(jī)開(kāi)始向上位機(jī)發(fā)送讀取到的溫濕度數(shù)據(jù)。圖8 為本設(shè)計(jì)下位機(jī)的程序流程圖。

      圖8 下位機(jī)程序流程圖

      4 運(yùn)行結(jié)果

      調(diào)試完成后,便可運(yùn)行程序,運(yùn)行LabVIEW程序前將hex 文件燒錄進(jìn)單片機(jī),并且應(yīng)配置好串口參數(shù),以便正確傳輸溫濕度數(shù)據(jù),程序運(yùn)行后LabVIEW 前面板如圖9 所示。運(yùn)行結(jié)果表明,所測(cè)得的溫濕度值都為環(huán)境溫濕度實(shí)際值。系統(tǒng)實(shí)現(xiàn)了溫濕度的顯示、存儲(chǔ)、歷史回放及報(bào)警等功能,并且圖表顯示能直觀地看到溫濕度的變化趨勢(shì)。

      圖9 程序運(yùn)行界面

      5 結(jié)論

      本文設(shè)計(jì)了一個(gè)基于LabVIEW 的溫濕度檢測(cè)系統(tǒng),下位機(jī)使用的是STM32 單片機(jī)和溫濕度傳感器SHT20。能在LabVIEW 前面板實(shí)現(xiàn)溫濕度數(shù)據(jù)和波形實(shí)時(shí)顯示,并且能顯示和記錄檢測(cè)溫濕度值所對(duì)應(yīng)的時(shí)間,便于查詢(xún)歷史記錄。當(dāng)溫濕度不在設(shè)定值范圍內(nèi)時(shí),單片機(jī)和電腦端都會(huì)產(chǎn)生報(bào)警。該系統(tǒng)界面設(shè)計(jì)人性化,操作簡(jiǎn)單,且易于擴(kuò)展功能,由于是無(wú)線通信,溫濕度檢測(cè)設(shè)備和顯示設(shè)備可以分離,使得在實(shí)際應(yīng)用中更加方便。因此該系統(tǒng)有很好的使用價(jià)值和應(yīng)用前景。

      猜你喜歡
      下位控件上位
      發(fā)射機(jī)房監(jiān)控系統(tǒng)之下位機(jī)
      關(guān)于.net控件數(shù)組的探討
      軟件(2018年7期)2018-08-13 09:44:42
      特斯拉 風(fēng)云之老阿姨上位
      車(chē)迷(2018年12期)2018-07-26 00:42:22
      “三扶”齊上位 決戰(zhàn)必打贏
      基于ZigBee和VC上位機(jī)的教室智能監(jiān)測(cè)管理系統(tǒng)
      景洪電廠監(jiān)控系統(tǒng)下位機(jī)數(shù)據(jù)傳輸網(wǎng)絡(luò)改造
      圍觀黨“下位”,吐槽帝“登基”
      以新思路促推現(xiàn)代農(nóng)業(yè)上位
      CAN總線并發(fā)通信時(shí)下位機(jī)應(yīng)用軟件設(shè)計(jì)
      就這樣玩會(huì)VBA中常見(jiàn)的自定義控件
      電腦迷(2012年24期)2012-04-29 00:44:03
      汉中市| 尼勒克县| 黎城县| 涡阳县| 淮滨县| 张北县| 申扎县| 禹城市| 镇江市| 曲麻莱县| 八宿县| 平顺县| 普定县| 上栗县| 赤壁市| 遵化市| 临桂县| 安远县| 荥经县| 内丘县| 武隆县| 托克托县| 丘北县| 甘德县| 乌拉特中旗| 莎车县| 黄石市| 焦作市| 潼南县| 蒙山县| 彭阳县| 西和县| 汶上县| 榆社县| 上思县| 永康市| 万州区| 西昌市| 井研县| 遂川县| 黄龙县|