风筝
发表于: 2018-8-14 22:11:37 | 显示全部楼层

LM35温度传感器是一款用于测量环境温度的理想温度传感器。它提供与温度成比例的线性输出,0V对应于0℃,每度C变化的输出电压变化为10 mV。 LM35比热敏电阻和热电偶更容易使用,因为它们是线性的,不需要信号调理。您可以使用Arduino开发板通过LM35温度传感器监控空气温度。


LM35的输出可以直接连接到Arduino模拟输入。由于Arduino模数转换器(ADC)的分辨率为1024位,参考电压为5 V,因此用于根据ADC值计算温度的公式为:

  1. temp = ((5.0 * analogRead(TemperaturePin)) / 1024) * 100.0
复制代码

为了显示温度,我们将使用液晶显示屏(LCD1602)。


实验

本实验的目的是使用LM35、 LCD1602和Arduino开发板制作一个温度监控器。


需要的硬件

●    Arduino Mega2560开发板

●    LCD1602显示屏

●    5k电位器

●    面包板

●    LM35温度传感器

●    1k电阻

●   连接导线


接线图

temperature-arduino.jpg

如上图所示连接组件。 LM35输出和GND之间连接一个1kΩ的电阻,以限制电流而不影响输出电压。


LCD_pins.png

LCD连接到Arduino开发板,如下所示。电位器的中间端子连接到LCD的引脚3,用来改变LCD背光的亮度。电位器的另外两个引脚分别连接到5 V和GND。 Enable连接到Arduino的引脚9,RS连接到Arduino的引脚8,RW接地。

DB4 -----> 4脚

DB5 -----> 5脚

DB6 -----> 6脚

DB7 -----> 7脚

RS   -----> 8脚

EN   -----> 9脚


代码

该程序使用LiquidCrystal.h库将数据写入显示器。在loop()中,传感器输出的值被连续读取,转换为摄氏度C,然后显示在LCD显示屏上。

  1. #include    //arduino lcd library

  2. LiquidCrystal lcd(8,9,4,5,6,7);   //defining lcd pins

  3. int value=0;            //initializing variables
  4. float volts=0.0;      
  5. float temp=0.0;      
  6. float tempF=0.0;

  7. void setup()
  8. {
  9.   pinMode(3,INPUT);      //setting arduino pin3 as input
  10.   Serial.begin(9600);   // opens serial port, sets data rate to 9600 bps
  11.   lcd.begin(16,2);      // set up the LCD's number of columns and rows

  12.   
  13. }

  14. void loop()
  15. {
  16.   value=analogRead(A0);          //read from A0
  17.   volts=(value/1024.0)*5.0;      //conversion to volts
  18.   temp= volts*100.0;             //conversion to temp Celsius
  19.   tempF=temp*9/5+32;             //conversion to temp Fahrenheit

  20. //display temp no lcd

  21.   Serial.print("temperature= ");
  22.   Serial.println(temp);
  23.   lcd.setCursor(0,0);
  24.   lcd.print("TEMP= ");
  25.   lcd.print(temp);
  26.   lcd.print(" C");
  27.   lcd.setCursor(0,1);
  28.   lcd.print("TEMP= ");
  29.   lcd.print(tempF);
  30.   lcd.print(" F");
  31.   
  32.   
  33.   delay(500);
  34. }
复制代码

跳转到指定楼层
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题 700 | 回复: 1479



手机版|

GMT+8, 2024-3-29 12:59 , Processed in 0.093194 second(s), 6 queries , Gzip On, MemCache On. Powered by Discuz! X3.5

YiBoard一板网 © 2015-2022 地址:河北省石家庄市长安区高营大街 ( 冀ICP备18020117号 )

快速回复 返回顶部 返回列表