關 閉

        新聞中心

        EEPW首頁 > 工控自動化 > 設計應用 > 基于DSP與數字溫度傳感器的溫度控制系統

        基于DSP與數字溫度傳感器的溫度控制系統

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



        2 測量
        要進行控制,首先要測量所控制目標的值,在本系統中,具體使用溫度DSl8B20與結合,并利用CCS編寫程序,本系統開發平臺為CCS 2.2,前期安裝及芯片設置在此省略,程序流程如圖4所示。


        DSl8B20的控制包括三種時序:復位、寫時序、讀時序。
        復位:主機總線在t0時刻發送一個復位脈沖(最短為480μs的低電平信號),接著在t1時刻釋放總線并進入接收狀態;DS1820在檢測到總線的上升沿之后等待15~60μs,接著在t2時刻發出存在脈沖(低電平持續60~240μs)。
        寫時序:對于DSl8B20的寫時序分為寫O時序和寫1時序兩個過程。寫O時序和寫1時序的要求不同,當要寫0時序時,總線要被拉低至少60 μs,保證DSl8B20能夠在15~45μs之間正確地采樣I/O總線上的“O”電平,當要寫1時序時,單總線被拉低之后,在15μs之內就得釋放單總線。寫數據持續時間應大于60μs且小于120μs,兩次寫操作時間間隔要大于1μs。
        讀時序:對于DSl8B20的讀時序同樣分為讀0時序和讀1時序兩個過程。對于DSl8B20的讀時序是從把單總線拉低之后,在15 s之內就得釋放單總線,以便讓DSl8B20把數據傳輸到單總線上。DSl8B20在完成一個讀時序過程,至少需要60μs才能完成。
        需要注意的是,在程序編寫時不管是復位,還是讀寫,都要注意配置GPIOA0端口的狀態(輸入或輸出),同時時序非常重要,本文中的延時都是經過多次測試后總結出來的,根據芯片的晶振不同,延時程序都會改變,否則DSl8B20不會正常工作。

        3 溫度控制
        3.1 脈寬調制PWM輸出

        TMS320F2812的事件管理模塊總共能輸出16路PWM信號,文中僅需要輸出一路占空比可調的PWM信號,并設計從PWMl引腳輸出該方波信號。文中選用通用定時器1(T1)作為時基;全比較單元1保存調制值;計數方式采用連續增計數模式。PWM占空比值與T1的三角波數據比較,輸出PWM信號控制半導體制冷片工作。各寄存器設置如下(高速外設時鐘為22.5 MHz):

        文中設計的PWM周期為 1.825 ms,TMS320F2812的計數器記數范圍為0~5DC。因此當系統裝入CMPRl寄存器的值為0或5DCH時,輸出恒為高電平或低電平?,F以向CMPRl寫入1 500為例,PWMl引腳的輸出周期為1.825 ms的方波。
        3.2 溫度控制軟件設計
        根據前面敘述,用DSl8B20讀取溫度采樣值,再通過參數自整定的Fuzzy-PID算法對數據進行處理:根據E和Ec的狀況,由模糊控制規律再通過模糊表推導出△KP,KI,KD,根據式(1)計算出KP,KI,KD的大小,再計算出U的初值和△U,由式(2)實時計算控制量U。通過參數轉換,將U轉換為PWM參數,修改EvaRegs.CMPRl的數值,改變PWM的占空比,從而控制TEC的制冷/制熱功率。



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 保康县| 区。| 安庆市| 太仆寺旗| 仙游县| 河北省| 上思县| 浮梁县| 武穴市| 吉首市| 舟曲县| 天柱县| 蓬安县| 北海市| 定结县| 富阳市| 桃园县| 西乌珠穆沁旗| 阿坝| 宁阳县| 长治市| 苗栗县| 石楼县| 宁海县| 葵青区| 寿阳县| 准格尔旗| 凯里市| 延长县| 上栗县| 鄂伦春自治旗| 久治县| 封开县| 南昌县| 金阳县| 南漳县| 镇巴县| 焉耆| 沂南县| 康定县| 广东省|