溫度控制實習(大林演算法C語言)

2021-09-07 10:12:07 字數 1021 閱讀 9383

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 資料規模和約定 ...