1、實習概述
溫度控制實習是乙個用微控制器控制溫度的系統。首先通過溫度感測器ds18b20檢測到電熱杯內水的溫度,然後把溫度資料送入微控制器進行資料處理,與設定值進行比較,把採集到的溫度送到數碼顯示管上顯示,同時,通過調節可控矽導通角來控制電熱杯的溫度和公升溫速率,從而達到對電熱杯的溫度進行控制的目的。
2、實習原理
(1)通過溫度感測器ds18b20檢測到電熱杯的溫度;
(2)把採集到的溫度送到數碼顯示管上顯示;
(3)通過調節可控矽占空比來控制電熱杯的溫度和公升溫速率,從而達到對電熱杯的溫度進行控制的目的。
3、大林演算法
大林演算法是運用於自動控制領域中的一種演算法,是一種先設計好閉環系統的響應再反過來綜合調節器的方法。設計的數字控制器(演算法)使閉環系統的特性為具有時間滯後的一階慣性環節,且滯後時間與被控物件的滯後時間相同。此演算法具有消除餘差、對純滯後有補償作用等特點。
本次的溫度控制系統可以等價為一階有遲滯系統,而這種系統的大林演算法表示式形式一般一樣,只是引數不一樣,所以我們可以先假定出系統的表示式,然後進行設計,得到大林演算法的一般表示式,然後帶入我們的實驗系統進行引數整定。
假定溫度控制系統傳遞函式為:
首先定義中間變數,然後根據前面計算得到的大林演算法公式,用c語言實現,同時還有進行限幅,以免超過pwm的週期。
long dalin(float mubiao,float shiji)
if(dalin_result > 60) //離目標溫度太大(實際溫度過小)
dalin_result = 60; //限幅
if(dalin_result < 0) //超過目標溫度
dalin_result = 0;
dalin_result=(int)dalin_result; //強制轉換成整數
return dalin_result;
}
樹莓派 CPU溫度控制風扇(C語言)
先放一張引腳對照表。我直接把風扇接在了board編碼的39號引腳和40號引腳上。通過40號引腳的高低電平控制風扇的轉動與停止。ps 這裡有點問題,我最開始用的是乙個小風扇,用40號引腳上的電壓可以帶動風扇,後面我換了乙個風扇就不行了,通過程式控制風扇開和關時能通過萬用表看到引腳上電壓的變化,但風扇就...
C語言實現溫度轉換
解題思路 這個問題的演算法很簡單,關鍵在於找到二者之間的轉化公式,攝氏度等於九分之五乘以華氏度減去32的積,也就是 centigrade 5.0 9 f degree 32 源 演示 include 標頭檔案 intmain 主函式 編譯結果 華氏度98的攝氏度為 36.666668 process...
c語言程式設計練習 溫度轉換
我們通常講攝氏溫度,外國人經常講華氏溫度,公式雖然簡單 f c 9 5 32,但談笑間就能輕鬆轉換還是很困難的,為什麼不編寫乙個程式,能自動把攝氏度轉化為華氏度呢。輸入格式 一行,乙個整數,表示攝氏溫度 輸出格式 乙個小數,表示華氏溫度 保留兩位小數 樣例輸入 樣例輸出 32.00 資料規模和約定 ...