關 閉

        新聞中心

        EEPW首頁 > 工控自動化 > 設計應用 > 基于DS18B20的溫控系統冷熱調節設計

        基于DS18B20的溫控系統冷熱調節設計

        作者: 時間:2010-07-11 來源:網絡 收藏

          3.1主程序模塊

          主程序模塊采用循環查詢直至中斷退出,以達到冷熱自動控制的目的。主程序流程如圖3所示。

        主程序流程

          3.2運算控制模塊

          運算控制模塊包括數字濾波、PID算法、溫度傳感器控制3個子程序。數字濾波由限速濾波實現,限速濾波能充分利用每一個采樣值,保證了采樣的實時性和采樣值變化的連續性。限速濾波子程序流程如圖4所示。

        限速濾波子程序流程

          PID算法由積分分離PID算法實現,采用積分分離的方法,在被控量開始監控時取消積分作用,在溫度值接近目標值時才產生積分作用,有效降低系統啟、停次數頻繁給系統帶來的振蕩。積分分離PID算法為:

        積分分離PID算法

          式中,Y(K)為溫度的目標設定值,C(K)為經數字濾波后的溫度測量值,△Y為設定的最大允許偏差值。根據此算法思想可用匯編語言編程實現積分分離PID算法。

          控制子程序按照的通信協議編制,包括D初始化,DS18B20讀、寫控制子程序,分別按照相應的規則說明進行編程實現。

          3.3功能實現模塊

          功能實現模塊包括溫度值設置、溫度顯示、固態繼電器通斷控制以及系統運行狀態顯示等子程序,其中在溫度顯示子程序中要完成各個位置段碼的調用、數碼管的選通以及數據總線的穩定(一般采用延時幾ms實現)。

          4系統調試

          系統調試主要進行PID參數的整定和溫度值的系統誤差校正。PID參數及系統其它參數的整定首先采用經驗值,再逐個細調,以滿足控制精度要求。根據表3的實驗數據,利用MATLAB進行一維曲線擬合,校正系統誤差,從而得到更準確的測量數據。

        一維曲線擬合

          MATLAB擬合過程和結果如圖5所示。圖5中“O”表示(檢測值,標準值),“*”表示(檢測值,擬合值),一維曲線擬合方程為:y=0.9948x-0.3996,經數字濾波后的采樣值再采用此方程處理便可得到更為精確的測量值。

        MATLAB擬合過程和結果

          5結束語

          本文從應用角度出發,給出了詳細的硬件和軟件設計,充分利用DS18B20單總線測溫的準確性和便捷性,并使用限速濾波、積分分離PID算法、MATLAB一維曲線擬合等方法來提高系統的可靠性和測量值的精確性。但信號傳輸線的抗干擾、鍵盤按鍵消抖等方面還不夠完善,而且采用MATLAB進行處理的實驗數據采樣不夠充分,未考慮在測量過高或過低溫度時的溫度漂移情況,因此系統的設計有待進一步的深入與完善。


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 陆河县| 鹿泉市| 渑池县| 太原市| 台东市| 弥渡县| 红安县| 武邑县| 拉萨市| 亚东县| 阳高县| 营山县| 阜平县| 汤阴县| 南木林县| 乡宁县| 上杭县| 揭阳市| 堆龙德庆县| 临泉县| 瑞昌市| 太康县| 资兴市| 沾化县| 大田县| 新民市| 壶关县| 边坝县| 都昌县| 繁峙县| 梁平县| 霍山县| 宜川县| 长丰县| 阿克苏市| 西平县| 拉孜县| 偏关县| 龙泉市| 大埔县| 治多县|