认识Arduino 的LM35温度传感器
编写程序获取温度传感器的数值
制作实时温度计
Arduino UNO
Arduino IDE开发环境
Arduino LM35温度传感器
基础
LM35D温度传感器能够测量0-100摄氏度的温度,并以电压的数值输出。从0度开始温度每升高1°C,输出电压就会提高10mv,这样我们就能够使用Arduino的模拟引脚检测传感器的电压。得到电压之后再解算成温度数值。
LM35传感器多用于制作温控电路,温度控制电路由以下电路部分组成
整个电路的基本工作流程:
首先传感器电路获取当前环境的温度数值,然后将感受到的温度信号以电压形式输出到信号调理电路,信号经过调理后输入到A/D采样电路,由A/D转换器将数字量值送给单片机系统,单片机系统根据设计的温度要求判断是否需要接通加温电路。设计时以0℃为判别依据,当温度量值低于或等于0℃时,使加温电路接通。当温度量值高于0℃时,加温电路停止工作。
下面我们就先来实现整个电路的第一部分--传感器电路并制作实时温度计
连接Arudino UNO与LM35温度传感器
如上图,LM35温度感器的引脚有三个
| Arduino UNO | DHT11温湿度传感器 |
|---|---|
| GND | GND |
| 5V | VCC |
| A0 | VOUT |
编写程序获取LM35温度感器的模拟信号
定义变量
int n;
float vol;
setup()初始化。
void setup() {
Serial.begin(9600); //使用9600速率进行串口通讯
}
loop()写入主体函数
void loop() {
n = analogRead(A0);
vol = n * (5.0 / 1023.0*100);
Serial.print("temperature");
Serial.print(vol);
Serial.print("C'");
delay(2000);
}
n : 直接使用analogRead()函数获取连接LM35模块的模拟引脚的数值,该引脚能读取到LM35模块检测到的电压。
vol :获取到LM35模块的电压数据,之后需要进行结算转化为温度数值。
公式为:n * (5.0 / 1023.0*100)
Serial.println(vol); : 打印结算出来的温度数据,打印到串口显示框用于调试
连接Arduino UNO至电脑
编译并上传程序至Arduino UNO
测试效果
接上USB运行Arduino程序的时候,打开Arduino IDE的串口监视框
定义变量
int n;
float vol;
setup()初始化
void setup() {
Serial.begin(9600);
}
loop()函数主体
void loop() {
n = analogRead(A0);
vol = n * (5.0 / 1023.0*100);
Serial.print("temperature");
Serial.print(vol);
Serial.print("C'");
if(vol > 23){
Serial.print("temp is high . notice!!!");
Serial.print("temp is high . notice!!!");
Serial.println("temp is high . notice!!!");
}
delay(500);
}
整合全部程序:
int n;
float vol;
void setup() {
Serial.begin(9600);
}
void loop() {
n = analogRead(A0);
vol = n * (5.0 / 1023.0*100);
Serial.print("temperature");
Serial.print(vol);
Serial.print("C'");
if(vol > 23){
Serial.print("temp is high . notice!!!");
Serial.print("temp is high . notice!!!");
Serial.println("temp is high . notice!!!");
}
delay(500);
}
编译并上传程序测试效果