用Arduino制作火焰警报器

一、火焰传感器介绍

1、认识火焰传感器

火焰传感器(即红外接收三极管)是机器人专门用来搜寻火源的传感器,本传感器对火焰特别灵敏。实物如图。

2、工作原理
火焰传感器利用红外线对火焰非常敏感的特点,使用特制的红外线接收管来检测火焰,然后把火焰的亮度转化为高低变化的电平信号,输入到中央处理器,中央处理器根据信号的变化做出相应的程序处理。

3、火焰传感器的连线
红外接收三极管的短引线端为负极,长引线端为正极。按照下图将负极接到5V接口中,然后将正极和10K电阻相连,电阻的另一端接到GND接口中,最后从火焰传感器的正极端所在列接入一根跳线,跳线的另一端接在模拟口中。

二、火焰报警实验

实验器件:火焰传感器1个、蜂鸣器1个、10K电阻1个、多彩面包板实验跳线若干。

1、蜂鸣器的连接
首先 按照Arduino教程将控制板、prototype板子、面包板连接好,下载线接好。从实验盒中取出蜂鸣器,按照第二节实验蜂鸣器的连接方法,将蜂鸣器连接到数字第八口。完成蜂鸣器的连接。

2、火焰传感器的连接
从实验盒中取出火焰传感器,按照本节所讲述的火焰传感器的接线方法,将火焰传感器接到模拟5口。完成整个实验的连线。

3、实验原理
在有火焰靠近和没有火焰靠近两种情况下,模拟口读到的电压值是有变化的。实际用万用表测量可知,在没有火焰靠近时,模拟口读到的电压值为0.3V左右;当有火焰靠近时,模拟口读到的电压值为1.0V左右,火焰靠近距离越近电压值越大。
所以在程序一开始,我仧可以先存储一个没有火焰时模拟口的电压值i。接着不断的循环读取模拟口电压值j、同存储的值做差值k=j-i、差值k不0.6v做比较。差值k如果大于0.6V(数字二迕制值为123),则判断有火焰靠近让蜂鸣器发出声音以作报警;如果差值小于0.6v则蜂鸣器不响。

4、程序代码

int flame=A5;//定义火焰接口为模拟5 接口
int Beep=8;//定义蜂鸣器接口为数字8 接口
int val=0;//定义数字变量
void setup() 
{
	pinMode(Beep,OUTPUT);//定义Beep 为输出接口
	pinMode(flame,INPUT);//定义flame为输入接口
	Serial.begin(9600);//设定波特率为9600 
	val=analogRead(flame);
}
 
void loop() {  
	Serial.println(analogRead(flame));//输出模拟值,并将其打印出来
	if((analogRead(flame)-val)>=600)//当模拟值大于600 时蜂鸣器鸣响
		digitalWrite(Beep,HIGH); 
}

5、下载程序
按照arduino教程中癿程序下载方法将本程序下载到实验板中。

6、程序功能
本程序可以模拟在有火焰时报警癿情冴,在没有火焰时一切正常,当有火焰时立刻报警做出提示。



1 评论

发表评论