乜嘢係熱敏電阻NTC同PTC? 對於那些從未接觸過NTC嘅人, PTC或啱啱接觸過NTC同PTC, 佢哋唔知NTC同PTC係乜嘢. 答案係肯定嘅, 理解NTC同PTC嘅概念相對簡單, 但係当你搜索信息並睇到好多令人困惑嘅專業術語時, 以及一些硬件, 你可能有點傻眼, 話晒, 你從未接觸過它們,你嘅腦海里充满咗問號. 適合初學者或渴望開始項目嘅軟件工程師, 最好盡快初步了解, 瞭解基本原理, 並使用代碼運行正確嘅數據. 話晒, 學習係循序漸進嘅, 而且你唔可以一口氣深入它的原則.
1. 乜嘢係熱敏電阻NTC同PTC?
NTC同PTC都係熱敏電阻, 哪些係可以隨溫度變化電阻嘅特殊電阻器. 它們都可以話係一種傳感器.
NTC同PTC都係熱敏電阻嘅類型, 哪些係溫度敏感電阻器, 其中NTC代表 “負溫度系數” 意味住它的電阻會隨著溫度嘅升高而降低, 而PTC代表 “正溫度系數” 意味住它的電阻會隨著溫度嘅升高而增加; 本質上, NTC熱敏電阻通常用于溫度傳感, 而PTC熱敏電阻由于其自復位過流能力而通常用于電路保護.
區別在於NTC係負溫度系數熱敏電阻, PTC係正溫度系數熱敏電阻.
正溫度系數熱敏電阻 (PTC): 電阻值隨溫度升高而增加;
負溫度系數熱敏電阻 (NTC公司): 電阻值隨溫度升高而降低;
第二. NTC同PTC嘅應用
1. NTC嘅應用:
用于溫度檢測, 一般為溫度測量型NTC
用于浪湧抑制, 一般功率型NTCNTC熱敏電阻:
電阻隨溫度升高而降低.
廣泛用于溫度測量.
可用作電路中嘅浪湧電流限制器.
2. PTC嘅應用包括:
在保護電路中, 例如過熱保護, 過流保護
在啟動電路中
電阻隨溫度升高而增加.
通常用作自復位保險絲,以保護電路免受過流情況的影響.
在某些應用中可用作自調節加熱元件.
第三. B值
B值: 材料常數, 一個參數,用于表示NTC嘅電阻值喺工作溫度範圍內隨溫度變化嘅幅度, 與材料嘅成分同燒結過程有關. B值通常係數字 (3435K, 3950K).
B值越大, 電阻值隨溫度升高而降低得越快, 同B值越細, 事實恰恰相反.
本文中未使用B值, 但只係為咗理解. 溫度也可採用溫度系數B值計算方法, 都可以稱為開爾文溫度算法.
4. R25系列
R25系列: NTC体喺25°C嗰時嘅電阻值.
5. 原理分析
以NTC為例, 一般示意圖如下:
原理分析:
ADC功能用于收集電壓.
R1同R2係串聯電路. 根據串聯電阻嘅分壓公式, 我哋有:
R=R1+R2;
從I=U/R=U/(R1+R2), 然之後:
U1=IR1=U(R1/(R1+R2))
U2=IR2=U(R2/(R1+R2))
我哋使用U2=IR2=U(R2/(R1+R2)) 就係噉啦.
ADC收集嘅數據被轉換為電壓, 邊個係U2嘅電壓, 所以
U(R2/(R1+R2))=ADC/1024*U
呢度 1024 係我使用嘅微控制器嘅ADC嘅10位分辨率, 噉係, 1024
呢度我哋知U=3.3v, 即圖中嘅VCC, R1嘅值為10k, R2係NTC, 所以它的值暫時未知. 你可以偏移.
最終公式係: R2=ADC*R1/1024-ADC
噉係, R2=模數轉換器*10000/1024-模數轉換器
獲得R2嘅電阻值之後, 我哋可以透過與電阻表進行比較嚟獲得溫度. 電阻對照表一般由商家喺購買後提供.
下一個, 等我哋嚟睇下代碼. 呢度, 我哋使用NTC表查找方法將溫度. 你只需添加ADC值即可使用此代碼.
const unsigned int temp_tab[]={
119520,113300,107450,101930,96730,91830,87210,82850,78730,74850,//-30 自 -21,
71180,67710,64430,61330,58400,55620,53000,50510,48160,45930,//-20 自 -11,
43810,41810,39910,38110,36400,34770,33230,31770,30380, 29050,//-10 自 -1,
27800,26600,25460,24380,23350,22370,21440,20550,19700,18900,18130,//0-10,
17390,16690,16020,15390,14780,14200,13640,13110,12610,12120,//11-20,
11660,11220,10790,10390,10000,9630,9270,8930,8610,8300, //21-30, 8000,7710,7430,7170,6920,6670,6440,6220,6000,5800,//31-40, 5600,5410,5230,5050,4880,4720,4570,4420,4270,4130,//49-50, 4000,3870,3750,3630,3510,3400,3300,3190,3090,3000,//51-60, 2910,2820,2730,2650,2570,24 90,2420,2350,2280,2210,//61-70, 2150,2090,2030,1970,1910,1860,1800,1750,1700,1660,//71-80, 1610,1570,1520,1480,1440,1400,1370,1330,1290,1260,//81-90 1230,1190,1160,1130,1100,1070,1050,1020,990,//91-99, };
短路ADC; // 獲取NTC嘅ADC值
短NTC_R; // NTC電阻值
#定義R1 10000
虛空get_temp()
{
短溫度;
短CNT;
ADC= adc_get_value(ADC_CH_0); // 獲取ADC值
printf(“———–模數轉換器:%d nn”,模數轉換器);
NTC_R=ADC*R1/(1024-模數轉換器);
碳納米管= 0;
溫度= -30;
做{
如果(temp_tab[CNT] < NTC_R){ // 表值小於計算嘅電阻值, exit獲取溫度
破;
}
++臨時;
}而(++CNT < size嘅(temp_tab)/4); // 循環表嘅大小, 噉係, 次數
printf(“NTC_R:%d溫度:%d nn”,NTC_R,臨時);
}