Arduino 负温度系数热敏电阻(NTC)测温

一直都用NTC作为温度传感器来测温,采用Arduino没有现成的例子用NTC测温的,LM35D温度传感器,这款传感器能够测量0-100摄氏度的温度,并以电压的数值输出。从0度开始温度每升高1度输出电压就会提高10mv。而NTC则不然,NTC根据温度变化产生电阻阻值变化,而且是非线性的变化,这就需要用上拉电阻或下拉电阻来选择分辨率较好的区间。

#define Pot A2			//电位器引脚命名

int PotBuffer = 0;		//AD读取数据缓存变量

void setup()
{
  Serial.begin(9600);   //初始化串口波特率为9600
}

void loop()
{
  PotBuffer = analogRead(Pot);	             //读取AD值
  float temp = -0.10581*PotBuffer+94.6374;   //浮点运算,根据拟合的温度与电阻曲线的斜率换算反函数
  Serial.print("TEMP = ");		             //串口输出“Pot = ”
  Serial.print(temp);		                 //串口输出temp的值
  Serial.print("; AD = ");
  Serial.println(PotBuffer);
  delay(500);				                //延时500ms
}




NTC的R25=100K,B=3950,选用50K作为上拉电阻,根据温度与阻值的真值表,求出待测范围如0-60℃的NTC实际电压值,0-5V等分1024份,求出电压值对应的AD值,以温度为X轴,AD值为Y轴做出曲线,并拟合成线性函数,求出此线性函数的反函数,最终得到【temp = -0.10581*PotBuffer+94.6374】。








  • 4
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值