【STM32-HAL库】火焰传感器(STM32F407ZGT6)(附带工程下载链接)

一、TEMT6000光照强度传感器

火焰传感器是一种能够检测火焰的传感器,它通过检测空气中的特定波长的光线来检测火焰的存在,并输出一个信号来通知系统发生了火灾

工作原理

火焰传感器的工作原理基于光学检测技术。当火焰燃烧时,会产生一些特定波长的光线,这些光线可以被称为"火焰光谱"。火焰传感器利用光电效应,将这些特定波长的光线转换成电信号,从而检测火焰的存在。

火焰传感器的类型

  1. 紫外线检测原理:紫外线火焰传感器使用一种叫做"窗口"的玻璃来过滤掉可见光和红外线,只允许紫外线透过。当火焰燃烧时,会产生大量的紫外线,紫外火焰传感器可以用探测火源发出的400纳米以下热辐射,这些紫外线会被传感器检测到,并将其转换成电信号。紫外线火焰传感器检测到的是火焰产生的紫外线辐射能量,因此它的检测速度非常快,适用于需要快速响应的场合。

  2. 红外线检测原理 :红外线火焰传感器则利用火焰产生的红外辐射能量来检测火焰的存在。红外线火焰传感器使用一种特殊的光学滤波器,只允许特定波长的红外线透过。当火焰燃烧时,会产生大量的红外线,红外火焰传感器能够探测到波长在700纳米~1000纳米范围内的红外线,这些红外线会被传感器检测到,并将其转换成电信号。红外线火焰传感器对于不同类型的火焰都具有很好的响应能力,因此适用于各种不同的应用场景1

  3. 热电偶 :热电偶是由两块金属制成的传感器,用于测量温度。这两块金属在一端焊接在一起,形成一个测量温度的结点。对于火焰感应,它广泛用于燃烧加热系统,以在火焰失效时切断燃料1

火焰传感器的应用实例

火焰传感器在多个领域中发挥着重要作用:

  1. 火灾报警系统 :作为火灾预警系统的关键组件,火焰传感器能够及时发现火焰并发出警报,从而采取相应的应对措施,保护人身和财产安全5

  2. 工业安全 :在工厂和实验室等场所,火焰传感器可以监测设备运行状态,防止因设备故障引发的火灾5

  3. 智能家居 :随着物联网技术的发展,火焰传感器与智能家居系统的结合越来越紧密,能够实现远程监控和早期火灾预警5

  4. 森林防火 :在森林中安装火焰传感器,可以实时监测森林火情,及时报警,减少火灾带来的损失5

火焰传感器的技术细节

火焰传感器的技术细节包括其探测角度、探测距离、工作电压等。例如,一种火焰传感器可以检测火焰或波长在760-1100纳米范围内的光源,探测角度为60度,对火焰光谱特别灵敏。其探测距离和火焰的强度有关,例如以打火机测试,在半米内可检测到打火机的火焰。工作电压为3.3V-5V

本次所使用到的火焰传感器主要组成由一个火焰传感器以及一个比较器组成。

该模块有模拟信号和一个数字信号(离散信号)输出

模块介绍

1、可以检测火焰或者波长在760纳米~1100纳米范围内的光源,打火机测试火焰距离为80cm,对火焰越大,测试距离越远

2、探测角度60度左右,对火焰光谱特别灵敏

3、灵敏度可调(图中蓝色数字电位器调节)

4、比较器输出,信号干净,波形好,驱动能力强,超过15mA

5、配可调精密电位器调节灵敏度

6、工作电压3.3V-5V

7、输出形式:DO数字开关量输出(0和1)和AO拟电压输出

8、设有固定螺栓孔,方便安装

9、使用宽电压LM393比较器

实物图

电路原理图

二、cubeMX配置

1、新建工程

可以参考我的新建工程系列教程

stm32-HAL库+cubeMX新建工程教程系列https://blog.csdn.net/qq_39150957/article/details/143087351?fromshare=blogdetail&sharetype=blogdetail&sharerId=143087351&sharerefer=PC&sharesource=qq_39150957&sharefrom=from_linkhttps://blog.csdn.net/qq_39150957/article/details/143087351?fromshare=blogdetail&sharetype=blogdetail&sharerId=143087351&sharerefer=PC&sharesource=qq_39150957&sharefrom=from_link

2、配置ADC

3、配置串口

可以参考我的文章,配置串口教程以及如何重定向串口。重定向串口之后即可直接使用【printf】函数直接向串口发送数据

【STM32-HAL库】串口配置、printf函数重定向https://blog.csdn.net/qq_39150957/article/details/136638229?fromshare=blogdetail&sharetype=blogdetail&sharerId=136638229&sharerefer=PC&sharesource=qq_39150957&sharefrom=from_linkhttps://blog.csdn.net/qq_39150957/article/details/136638229?fromshare=blogdetail&sharetype=blogdetail&sharerId=136638229&sharerefer=PC&sharesource=qq_39150957&sharefrom=from_link

三、编写代码

main函数中

cpp 复制代码
 /* USER CODE BEGIN 2 */

int ADC_value = 0 ;
 
float voltage = 0 ;




  /* USER CODE END 2 */

while中

cpp 复制代码
HAL_ADC_Start(&hadc1); //开始ADC转换

HAL_ADC_PollForConversion(&hadc1,100); //等待ADC转换完成,第二个参数表示超时时间,单位ms

ADC_value = HAL_ADC_GetValue(&hadc1);//获取ADC采样值

voltage = (float)(ADC_value *3.3/4096);//ADC采样值到电压的转换

printf("火焰:%.3f\r\n",voltage);

HAL_GPIO_TogglePin(GPIOA,GPIO_PIN_8);

HAL_Delay(200);

四、运行效果

有火焰靠近(绿色LED亮起)

无火焰(绿色LED熄灭)

可以看到,当有火焰时候,数值会变低

下载工程

提取码:6666https://pan.baidu.com/s/1dRjRRREFi7asZRieYwUsrA?pwd=6666

相关推荐
yutian06067 小时前
Keil MDK下载程序后MCU自动重启设置
单片机·嵌入式硬件·keil
析木不会编程10 小时前
【小白51单片机专用教程】protues仿真独立按键控制LED
单片机·嵌入式硬件·51单片机
枯无穷肉14 小时前
stm32制作CAN适配器4--WinUsb的使用
stm32·单片机·嵌入式硬件
不过四级不改名67714 小时前
基于HAL库的stm32的can收发实验
stm32·单片机·嵌入式硬件
嵌入式科普14 小时前
十一、从0开始卷出一个新项目之瑞萨RA6M5串口DTC接收不定长
c语言·stm32·cubeide·e2studio·ra6m5·dma接收不定长
嵌入式大圣14 小时前
单片机UDP数据透传
单片机·嵌入式硬件·udp
云山工作室15 小时前
基于单片机的视力保护及身姿矫正器设计(论文+源码)
stm32·单片机·嵌入式硬件·毕业设计·毕设
嵌入式-老费15 小时前
基于海思soc的智能产品开发(mcu读保护的设置)
单片机·嵌入式硬件
qq_3975623117 小时前
MPU6050 , 设置内部低通滤波器,对于输出数据的影响。(简单实验)
单片机
liyinuo201717 小时前
嵌入式(单片机方向)面试题总结
嵌入式硬件·设计模式·面试·设计规范