基于Arduino使用火焰传感器
产品用途
火焰传感器模块是基于红外接收管设计的传感器模块,可用于检测火焰或波长在760~1100纳米范围的光源,经常使用于灭火机器人中,探测角度60度左右。红外线接收管是将红外线光信号变成电信号的半导体器件;它的核心部件是一个特殊材料的PN结,和普通二极管相比,在结构上采取了大的改变,红外线接收管为了更多更大面积的接收入,电流则随之增大。
(火焰传感器)
工作原理
红外接收管将光信号(不可见光)转换成电信号一般是接收、放大、解调一体头,红外信号经接收管解调后,数据 “0”和“1”的区别通常体现在高低电平的时间长短或信号周期上,单片机解码时,通常将接收头输出脚连接到单片机的外部中断,结合定时器判断外部中断间隔的时间从而获取数据。重点是找到数据“0”与“1”间的波形差别。一般与可见光、红外光谱匹配或配对于红外发射管使用,环境光照强的情况下,检测火焰,会有所干扰。
产品参数
- 小板PCB尺寸:32mm*14mm
- 探测角度60度左右,对火焰光谱特别灵敏
- 灵敏度可调:蓝色数字电位器调节
- 比较器输出,信号干净,波形好,驱动能力强,超过15mA
- 配可调精密电位器调节灵敏度
- 工作电压:3.3V-5V
- 输出形式:DO数字开关量输出(0和1)和AO模拟电压输出
- 设有固定螺栓孔,方面安装
- 使用宽电压LM393比较器
- 可以检测火焰或者波长在760纳米~1100纳米范围内的光源,打火机测试火焰距离为80cm,对火焰越大,测试距离越远
使用方法
- 火焰传感器对火焰敏感,对普通光也是有反应的,一般用做火焰报警等用途;
- 小板输出接口可以与单片机IO口直接相连;
- 传感器与火焰要保持一定距离,以免高温损坏传感器,对打火机测试距离为80cm,对火焰越大,测试距离越远;
- 小板模拟量输出方式和AD转换处理,可以获得更高的精度;
- 当传感器检测到有火焰、阳光或红外光线时,要达到电位器设置的的阈值,绿色指示灯就会亮,DO并输出低电平(0-0.1V左右),绿色指示灯不亮,则DO输出3V左右的电压高电平。
(火焰传感器 反面)
火焰传感器 <------> Arduino Nano
VCC <------> 3.3V/5V GND <------> GND DO <------> 8
程序测试——读取检测有无火焰值 编写打印串口程序,观察火焰传感器检测到火源时,数值输出是多少。火焰传感器模块为数字传感器,所以,打印串口时,要使用数字输入管脚。
Mixly图形化编程程序
(串口打印程序)
串口监视器显示,火焰传感器检测到火源时,输出低电平,串口打印显示数值0。没有检测到火焰时,火焰传感器输出高电平,串口打印数值1。
(串口监视器显示)
程序实现代码
读取检测火焰值
- void setup(){
- pinMode(8, INPUT);
- Serial.begin(9600);
- }
- void loop(){
- Serial.println(digitalRead(8));
- }
复制代码火焰传感器基础小案例
当火焰传感器检测到火源时,蜂鸣器发出长鸣报警声,若火焰传感器没有检测到,蜂鸣器不发出声音。
接线方式 (无源蜂鸣器模块 低电平触发)
火焰传感器 <------> Arduino Nano
VCC <------> 3.3V/5V GND <------> GND DO <------> 8
蜂鸣器 <------> Arduino Nano
GND <------> GND
I/O <------> 9
VCC <------> 3.3V
Mixly图形化编程程序
该无源蜂鸣器模块为低电平触发,所以,当蜂鸣器处于低电平时,蜂鸣器发出声音,而高电平,则不发出声音。如果火焰传感器检测到火焰,输出低电平,,蜂鸣器发出声音,蜂鸣器为低电平,否则,火焰传感器没有检测到火焰,输出高电平时,蜂鸣器输出高电平,不发出声音。
(图形化程序)
程序实现代码
- void setup(){
- pinMode(8, INPUT);
- pinMode(9, OUTPUT);
- }
- void loop(){
- if (digitalRead(8) == LOW) {
- digitalWrite(9,LOW);
- } else {
- digitalWrite(9,HIGH);
- }
- }
复制代码 |