ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

【CanMV K210】传感器实验 烟雾传感器 AO/DO 双路检测与蜂鸣器报警

【CanMV K210】传感器实验 烟雾传感器 AO/DO 双路检测与蜂鸣器报警 智能硬件项目中的传感器实验,核心价值并不只是“读到一个数值”。更重要的是让程序具备感知环境变化的能力,并根据检测结果驱动外部设备做出反馈。烟雾检测就是一个非常典型的场景:传感器负责感知空气状态,开发板负责读取信号,程序负责判断是否异常,蜂鸣器负责把异常状态转化成可听见的报警提示。本实验使用 CanMV K210 开发板读取烟雾传感器的 AO 和 DO 两种输出信号。DO 数字量输出直接接入 GPIO,用来判断是否达到报警阈值;AO 模拟量输出接入 PCF8591 模数转换模块,用来观察烟雾浓度变化趋势。程序运行后,会循环读取烟雾传感器状态,当 DO 触发烟雾报警条件时,蜂鸣器会按照设定节奏间歇鸣叫;环境恢复正常时,蜂鸣器关闭,串口持续输出当前检测状态。学习目标说明理解 AO/DO 双路输出区分烟雾传感器模拟量输出和数字量输出的作用掌握 GPIO 输入检测使用 GPIO 读取 DO 数字触发信号掌握 ADC 模拟量采集通过 PCF8591 读取 AO 模拟量变化理解报警输出控制使用 GPIO 控制有源蜂鸣器进行间歇报警建立环境监测思路将传感器输入、状态判断和外设反馈组合成完整检测流程本实验用于课程学习和传感器原理演示,不能替代专业消防报警设备。实验时应保持通风,避免使用明火或危险气体进行测试。文章目录理论基础硬件设施软件代码扩展应用总结理论基础烟雾传感器模块常见输出方式包括 AO 和 DO。AO 是模拟量输出,会随着气体浓度或烟雾状态变化而连续变化,适合观察趋势;DO 是数字量输出,由模块上的比较器和电位器决定触发阈值,适合快速判断是否达到报警条件。AO 更适合“看变化”,DO 更适合“做判断”。普通 GPIO 只能稳定读取高低电平,适合读取 DO 这种数字信号。AO 属于模拟电压信号,不能直接通过普通 GPIO 精确读取,因此本实验使用 PCF8591 模数转换模块把 AO 转换成数字值。程序通过 I2C 访问 PCF8591,再读取 AIN0 通道得到烟雾传感器的模拟量参考值。蜂鸣器属于报警输出设备。当前代码使用的是有源蜂鸣器,不需要程序输出 PWM 音调,只需要通过 GPIO 输出触发电平即可控制响与停。代码中BUZZER_ACTIVE_LEVEL = 0、BUZZER_SILENT_LEVEL = 1,表示当前蜂鸣器按低电平触发方式编写。下面这张流程图从电路控制链路理解本实验。烟雾传感器同时输出 AO 和 DO,DO 进入 GPIO 做报警判断,AO 经过 PCF8591 转换后用于观察变化趋势,最终由程序决定是否启动蜂鸣器报警。
返回列表