【Arduino】提高篇——火焰声光报警器

火焰声光报警器

一、实验目的

二、实验材料

三、电路图

四、实验步骤

五、代码块

六、实验结果


一、实验目的

本项目将通过使用火焰传感器与Arduino UNO组成一个简单的火灾报警系统。该火焰传感器是基于IR的火焰传感器,通过红外线感应是否存在火焰,若存在火焰,火焰传感器传达高电平信号到Arduino UNO主板上,触发蜂鸣器,LED灯不断闪烁;若不存在火焰,LED灯不发光。

二、实验材料

Arduino UNO、火焰传感器、无源蜂鸣器、LED灯、杜邦线

三、电路图

【Arduino】提高篇——火焰声光报警器_第1张图片

四、实验步骤

火焰传感器

A0----A0,D0----8,VCC----5V,GND----GND

LED

短脚----GND,长脚-----13

无源蜂鸣器

+----7,-----GND

五、代码块

const int flamePin = 8; //设置火焰传感器的数字引脚为8
const int ledPin = 13; //设置LED灯的数字引脚为13
const int buzzerPin=7;  //设置蜂鸣器的数字引脚为7

//状态初始化
void setup()
{
  pinMode(flamePin,INPUT);//将8号引脚设置为输入信号
  pinMode(ledPin,OUTPUT);//将13号引脚设置为输出信号
  pinMode(buzzerPin,OUTPUT);//将7号引脚设置为输出信号
  Serial.begin(9600);//设置波特率为9600
}

//循环执行
void loop()
{
  //读取火焰传感器的数字输出,高电平表示“1”,低电平表示“0”,以布尔值的形式储存在news变量中;
  boolean news = digitalRead(flamePin);
  if(news == 1)//感应到火焰!
  {
    Serial.println("Flame!");//串口监控器显示“Flame!”
    digitalWrite(ledPin,HIGH);//将13号数字引脚的输出设置为高电平,LED灯点亮
    tone(7,320,200);//将7号数字引脚的输出设置为320Hz频率,持续时间200毫秒,蜂鸣器触发
    delay(1000);//停留1000毫秒
    digitalWrite(ledPin,LOW);//将13号数字引脚的输出设置为低电平,LED灯熄灭
    noTone(7);//

  }
  else
  {
    Serial.println("No Flame !");//串口监控器显示“flame!”
    digitalWrite(ledPin, LOW);//将13号数字引脚的输出设置为低电平,LED灯熄灭
    digitalWrite(buzzerPin, HIGH);//将7号数字引脚的输出设置为高电平,蜂鸣器关闭
  }
  delay(500); //停留500毫秒,进行下一次循环判断火焰传感器是否触发
}

六、实验结果

 

 

Arduino——火焰声光报警器

 

你可能感兴趣的:(【Arduino】提高篇——火焰声光报警器)