日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

STM32一种基于NTC的控温电路及软件实现

發布時間:2024/7/23 编程问答 50 豆豆
生活随笔 收集整理的這篇文章主要介紹了 STM32一种基于NTC的控温电路及软件实现 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

NTC(Negative Temperature Coefficient)是一種隨溫度上升時,電阻值呈指數關系減小的熱敏電阻。應用廣泛,最近我們就采用了NTC來控制加熱并測溫,并達到了預期的效果。

1、硬件設計

我們使用三極管作為加熱元件,通過NTC來控制通過三極管的電流,以起到控制溫度的作用,至于溫度控制到多少,可以通過調節電位器來控制。同時使用另一個NTC來測量當前的溫度。電路圖如下:

上圖中我們通過一個電橋來采集NTC電阻的變化,因為電阻的變化會引起C17兩端電壓的變化。溫度越高NTC電阻越小,C17兩端電壓差就越大,反之越小。我們采用了25攝氏度時,阻值為10K的NTC。不難推斷出輸出電壓與NTC電阻值得關系。當輸出電壓為0V時,電阻約25K,查表可知唯獨為5攝氏度左右。當輸出電壓為5V時,電阻值接近0,查表可知在100攝氏度以上。職業便是這個電路的理論測量范圍。

2、軟件設計

前面我們設計了測量電路,也分析了檢測電壓與NTC電阻制的關系。接下來我們主要討論一下軟件設計。軟件的設計我們采用了公式法和查表法兩種方式來獲取溫度值。

2.1、公式法

我們前面已經提到過,NTC是一種隨溫度上升時,電阻值呈指數關系減小的熱敏電阻。而這種指數關系具體如下:

其中,B是NTC的常數,每種為固定值。Rt是NTC的電阻,R為標稱25攝氏度時的電阻。T1是Rt對應的開氏溫度,T2是標稱的開氏溫度。于是我們就可以推導出有電阻計算溫度的公式:

根據以上公式我們可以實現:

/*公式法計算NTC溫度值*/ static float FormulaNTCTemperature(float resistance) {float temp;float result=0.0;result=resistance/NTC_NOMINAL_RESISTANCE;result=(log(result)/NTC_NOMINAL_CONSTANT)+(1/(NTC_NOMINAL_TEMPERATURE+KELVIN_CONSTANT));temp=1/result-KELVIN_CONSTANT;return temp; }

2.2、查表法

查表法顧名思義就是通過電阻分度表來獲取溫度區間,再做擬合。首先我們需要建立相應的表我們定義為數組。有了分度表實現也就簡單了,但需要注意兩端極限位置的處理。具體實現如下:

/*查表法計算NTC溫度值*/ static float LookupNTCTemperature(float resistance) {float temp;uint16_t index=NTC_TABLE_LENGTH+10;index=FindTargetLocation(resistance);if(index<=0){temp=ntcValueTable[0][0];}else if(index>=NTC_TABLE_LENGTH){temp=ntcValueTable[0][NTC_TABLE_LENGTH-1];}else{float lowT=ntcValueTable[0][index-1]; //??? float highT=ntcValueTable[0][index];float lowR=ntcValueTable[1][index-1];float highR=ntcValueTable[1][index];temp=((resistance-lowR)*0.5)/(highR-lowR)+lowT;}return temp; }/*查找目標位置*/ static uint16_t FindTargetLocation(float resistance) {uint16_t position=0;while(ntcValueTable[1][position]>resistance){if(position<NTC_TABLE_LENGTH-1){position++;}else{position++;break;}}return position; }

3、小結

使用NTC作為測溫和控溫的元件所得到的結果基本與預期的一致。但在控溫的精度和響應速度上略有不足,對于一般的應用是完全足夠的。我們的應用對溫度的穩定性要求比較高所以我們后續做了一些改進。

為了取得更好的控制效果,我們引入一個類似于專家PID的控制器對加熱電源進行PWM調節,類似于與NTC的控制形成串級控制得到了良好的效果。在比較好的情況下,最終溫度可以穩定在0.1度的范圍內。

總結

以上是生活随笔為你收集整理的STM32一种基于NTC的控温电路及软件实现的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。