Arduino UNO R3自学笔记13 之 Arduino使用LM35如何测量温度?

注意:学习和写作过程中,部分资料搜集于互联网,如有侵权请联系删除。

前言:学习使用传感器测温。

1.LM35介绍

        一般来讲当知道需求,就可以 通过既定要求的条件来筛选需要的器件,多方面的因素最终选定了器件的型号和厂家,就可以通过其数据手侧开始使用。

        LM35 是由National Semiconductor 所生产的温度传感器,其输出电压摄氏温标。LM35是一种得到广泛使用的温度传感器

        其电源供应模式有单电源与正负双电源两种,其引脚正负双电源的供电模式可提供负温度的量测;两种接法的静止电流-温度关系,在静止温度中自热效应低(0.08℃),单电源模式在25℃下静止电流约50μA,工作电压较宽,可在4—20V的供电电压范围内正常工作非常省电。

        工作电压4~30V,在上述电压范围以内,芯片从电源吸收的电流几乎是不变的(约50μA),所以芯片自身几乎没有散热的问题。这么小的电流也使得该芯片在某些应用中特别适合,比如在电池供电的场合中,输出可以由第三个引脚取出,根本无需校准。

        ●  精度:0.5℃精度(在+25℃时);

        ●  比例因数:线性+10.0mV/℃;

        ●   非线性值:±1/4℃;

        ●  额定使用温度范围:-55~+150℃。

        ●  引脚说明:①电源负GND;②电源正VCC;③信号输出S;

2.传感器使用

        通过阅读手册我们知道了其引脚线序以及测量的方法,本次使用的LM35其主要参数为“比例因数:线性+10.0mV/℃”,这意味着温度与其输出的电压信号关系为温度增加1℃,其输出电压值升高10mV。

3.关系式推导

        数据手册给出了其温度与电压的关系:

                ●  比例因数:线性+10.0mV/℃;

则:我们可以得出:

U_{0}=\frac{10* T}{1000}   

                                               其中:      

                                                                  T:    为温度,℃。

                                       U_{0}:  为T温度下传感器输出电压,单位V。

电压的测量与模拟值的关系,前面一章有讲过:Arduino UNO R3自学笔记8 之 Arduino如何测电压?-****博客

公式为:U=\frac{ADC}{1024}*5

将公式的U代换,则得到ADC值与温度的关系,如下:

\frac{10* T}{1000}=\frac{ADC}{1024}*5

计算得:

T=\frac{5*1000*ADC}{1024*10}

化简得:

T=\frac{125*ADC}{256}

近似后:T=0.48828*ADC

因此,我们只需要读取出V_{OUT}的值,就能计算出近似的温度值。

4.接线原理图

5.代码实现

float T=0.0; //定义浮点变量存温度值
void setup()    
{
 pinMode(A0,INPUT); //设置A0引脚为输入模式
}
void loop()
{
 T = float (analogRead(A0))*0.48828;   //读取AD值后换算为温度
 delay(1000);
}

上一篇:JavaFX加载fxml文件几种方法


下一篇:HTML&&CSS练习