NTC阻值与温度计算公式

float Resistance_To_Temperature(float Res,float Res_Base)
{
	/*NTC热敏电阻的温度计算涉及到特定的公式和一些关键参数。首先,需要了解NTC热敏电阻的阻值与其所处温度之间的关系。
	这种关系通常可以通过以下公式表示:
	Rt = R * EXP(B * (1/T1 - 1/T2))
	其中:
	Rt是热敏电阻在T1温度下的阻值。
	R是热敏电阻在T2常温(通常为25℃)下的标称阻值。
	T1和T2指的是K度,即开尔文温度,其中K度 = 摄氏度 + 273.15。
	B是热敏电阻的B值,这是一个重要的固有参数。
	EXP是e的n次方。
	通过测量热敏电阻在某一温度下的阻值Rt,并已知其在常温下的阻值R和B值,可以使用上述公式反推出T1的值。计算T1的公式为:
	T1 = 1 / (ln(Rt/R)/B + 1/T2)
	其中ln表示自然对数。*/

	float R = 100;//保温杯使用的是100k的NTC  R是热敏电阻在T2常温(通常为25℃)下的标称阻值
	float T2 = 273.15 + 25;//K度,即开尔文温度,其中K度 = 摄氏度 + 273.15
	float B = 3950;//B是热敏电阻的B值,这是一个重要的固有参数
	float Ka = 273.15;//0℃=273.15K

	float Temperature;

	R = Res_Base;

	if (Res <= 0.3) //电阻值小于0.3,认为是出现了NTC对地短路现象,理论上这个阻值对应温度值达到了250℃以上
	{
		//实测NTC短路,阻值计算出来小于 0.01
		Temperature = NTC_Temp_Max;
	}
	else if (Res >= 4200)//电阻值大于4200,认为是出现了NTC开路现象,理论上这个阻值对应温度值低于-40℃
	{
		//实测NTC开路(不接NTC),阻值计算出来大于 4500
		Temperature = NTC_Temp_Min;
	}
	else
	{
		Temperature = 1 / (1 / T2 + log(Res / R) / B) - Ka;//根据阻值计算温度值

		if (Temperature >= 93)//在100℃时,公式法比查表法温度高2.23℃,此处减去偏差
		{
			Temperature -= 2.23f;
		}
		else if (Temperature >= 80)//在85℃时,公式法比查表法温度高1.15℃,此处减去偏差
		{
			Temperature -= 1.15f;
		}
	}
	return Temperature;
}

下图右边为用C#运行此函数计算出来的阻值与温度对应关系
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值