NTC热敏电阻温度测量
Posted 旧年不在666
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了NTC热敏电阻温度测量相关的知识,希望对你有一定的参考价值。
NTC热敏电阻温度测量
一、平台
二、电路图
三、测量原理
-
NTC热敏电阻阻值和温度的关系:Rt = Rp * EXP (B * (1/T1 - 1/T2))
- T1和T2指的都是开尔文温度,K度=273.15(绝对温度)
- T2 = K + 25 = 273.15 + 25
- Rt是热敏电阻在温度T1下的阻值
- Rp是热敏电阻在常温T2下的标称阻值
- B是热敏电阻的系数
-
通过以上公式得:T1 = (1 / (ln(Rt / Rp) / B + 1/T2)) - K + 0.5(温度补偿)
-
通过以上表达式可知测量原理为:ADC电压值Rt~T1
/******************************************************************************
* @Function: bsp_get_temp_val
* @Description: 获取温度传感器的数据
* @Input: temp:传入的存储温度信息结构体的地址
* @Output: None
* @Return: void
* @Others: Rt = Rp * EXP(B*(1/T1 - 1/T2))
* @param {temp_stu_t} *temp
*******************************************************************************/
void bsp_get_temp_val(temp_stu_t *temp)
{
//常数B
float B = 3380;
//常温(25℃)下热敏电阻的标称阻值阻值
float Rp = 10000;
//分压电阻的阻值
float Rd = 4700;
//开尔文温度
float K = 237.15;
//25℃对应的华摄氏度
float T2 = K + 25;
temp->adc_val = drv_get_temp_adc_convert_value();
temp->vol_val = (float)temp->adc_val / 4096 * 3.3;
temp->Rt = (Rd * temp->vol_val) / (3.3 - temp->vol_val);
temp->val = (1 / (1/T2 + log(temp->Rt/Rp) / B)) - K + 0.5;
}
以上是关于NTC热敏电阻温度测量的主要内容,如果未能解决你的问题,请参考以下文章
请教下高手用单片机的AD+NTC热敏电阻做温度计,能不能用单片机计算出取样到的温度值来显示