<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 測試測量 > 設(shè)計應(yīng)用 > 基于LabVIEW的無線溫度測控系統(tǒng)設(shè)計

          基于LabVIEW的無線溫度測控系統(tǒng)設(shè)計

          作者: 時間:2010-04-23 來源:網(wǎng)絡(luò) 收藏

          (3)數(shù)據(jù)存儲模塊
          數(shù)據(jù)存儲模塊主要實現(xiàn)將采集到的溫度數(shù)據(jù)保存至Excel表格,方便用戶日后調(diào)出歷史溫度數(shù)據(jù)進行查閱分析。首先利用“數(shù)組大小”VI獲取采集到的溫度數(shù)組的大小,并判斷其能否被10整除,若能整除,執(zhí)行“條件結(jié)構(gòu)”的“真”分支程序,將采集時間及10個溫度數(shù)據(jù)寫入電子表格文件后換行,然后再進行條件判斷。這樣,溫度數(shù)據(jù)便以10個為l行記錄到電子表格文件中,同時每一行的開頭均記錄下了采集本組數(shù)據(jù)的日期與時間。
          另外,利用“方法節(jié)點”和“寫入JPEG文件”VI可將溫度曲線以JPEG格式存儲。用戶單擊“保存溫度曲線”按鈕,系統(tǒng)彈出保存對話框,提示用戶將溫度曲線保存為JPEG圖片。
          (4)PID控制模塊
          提供了功能強大的PID控制器,使用戶避免了繁瑣的PID算法的編寫,提高開發(fā)效率。進行PID控制時,首先將溫度信號輸入至PID控制器,并輸入溫度設(shè)定值和PID增益,包括比例系數(shù)Kc、積分時間常數(shù)Ti及微分時間常數(shù)Td。單擊“PID控制”按鈕,程序按照PID算法對溫度進行控制,使溫度逼近設(shè)定值。
          3.2 下位機軟件設(shè)計
          P89LV5lRD2單片機程序采用C語言進行設(shè)計。P89LV51RD2內(nèi)部提供了3個16位定時器/計數(shù)器以及1個全雙工串行通信口,滿足本系統(tǒng)的軟件設(shè)計要求。圖4給出了單片機控制程序流程。

          本文引用地址:http://www.ex-cimer.com/article/195431.htm


          在系統(tǒng)初始化時,設(shè)置8位串行口模式1,以及單片機的定時器T2工作在波特率發(fā)生器模式,產(chǎn)生串行通信所需的波特率。再令單片機的定時器T0工作在定時器模式,用于產(chǎn)生指定的控制周期。在TO的中斷程序中,首先將采集到的溫度數(shù)據(jù)通過模塊發(fā)送給上位機進行實時顯示,然后上位機利用中的PID控制器,確定系統(tǒng)輸出控制量的大小并發(fā)送回單片機,單片機根據(jù)控制量輸出PWM信號,驅(qū)動控制電路對被測對象進行溫度控制。

          結(jié)語
          本文設(shè)計的系統(tǒng)以低功耗的單片機系統(tǒng)為采集模塊,代替了價格昂貴的數(shù)據(jù)采集板卡,成本低,并以開發(fā)的軟件平臺進行溫度處理與控制,與傳統(tǒng)儀器相比,具有界面友好、易于操作及擴展性強等特點。實驗表明,本系統(tǒng)可以作為教學(xué)實驗系統(tǒng)的一部分,嵌入到虛擬儀器實驗平臺中,供學(xué)生學(xué)習(xí)LabVIEW編程以及虛擬儀器與單片機的通信。另外,可以將多個節(jié)點進行組網(wǎng),形成一個分布式網(wǎng)絡(luò),實現(xiàn)多點溫度測量與控制,具有良好的應(yīng)用前景。

          pid控制器相關(guān)文章:pid控制器原理



          上一頁 1 2 3 下一頁

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();