基本介绍
此设备的主要功能包括:
- 利用MQ-3传感器与ADC0832协同工作来检测空气中的酒精浓度,精度至小数点后一位。一旦检测到的酒精浓度超过预设的最大值,系统将激活红色警示灯,触发蜂鸣器警报,并通过继电器启动风扇以降低室内酒精浓度。若酒精浓度处于正常范围内,则点亮绿色指示灯。
- 用户可通过按键操作确认检测结果,并通过语音反馈功能听到当前的酒精浓度读数。
- 允许用户通过按键设定酒精浓度的最大允许值。
- 采用四位数字显示屏显示各项数据。
51实物图
所使用的单片机型号为STC89C52。该开发板采用绿色PCB材料,具有双层结构,总厚度为1.2毫米,表面覆盖有铜箔用于接地。大部分组件采用插针安装方式,仅少数如降压芯片等采用表面贴装技术。电源接口类型为TYPE-C。

资料预览

原理图

软件工具版本为AD2013。电路连接采用网络标识法。需要注意的是,这里提供的原理图仅展示了各模块的引脚布局,并未详述模块内部的具体构造。
PCB图
基于上述原理图生成,多数元件封装由开发者自定义完成,但并未公开封装库,而是直接提供了已连接完毕的源文件。PCB板中心位置印有项目编号,该编号位于单片机插座下方,在安装单片机后将不可见。PCB同样为双层设计,上下表面均覆盖铜箔以实现接地功能。

系统框图
本设计围绕单片机作为核心控制器构建,结合多个辅助模块共同实现了酒精浓度检测仪的功能体系,具体包含中央控制单元、输入单元及输出单元三大组成部分。中央控制单元负责接收来自输入单元的数据,执行内部计算与逻辑判断,最终发出指令控制输出单元的动作。输入单元分为三个部分:首先是酒精浓度检测模块,用于实时监控环境中的酒精含量;其次是按键控制模块,支持用户界面切换和阈值设置等功能;最后是电源供应模块,确保整个系统的电力供应。输出单元则由五个部分构成:一是显示模块,用于呈现监测数据和设定的阈值;二是蜂鸣器报警模块,在检测到异常高的酒精浓度时发出警报;三是指示灯模块,根据不同的酒精浓度显示相应的颜色提示;四是语音输出模块,允许检测者通过按键操作获取当前酒精浓度的语音播报;五是继电器控制模块,当酒精浓度超标时,可通过继电器启动风扇以改善空气质量。系统架构概览如图3.1所示。
软件设计流程

部分程序展示
软件开发环境选用keil5,逻辑控制代码和驱动代码分离存放于不同的文件中,如main.c及其他.c文件。以下是一段关键的处理逻辑示例:
/****
*******处理函数
*****/
if (alcohol_value > alcohol_max * 10) { // 当酒精浓度超过设定的最大值时,开启红灯,启动蜂鸣器并通风
if (time_num % 20 == 0) {
BEEP = ~BEEP; // 蜂鸣器交替发声
}
LED_R = 0; // 红灯亮起
LED_G = 1; // 关闭绿灯
RELAY_TF = 0; // 开启风扇
} else { // 当酒精浓度低于或等于设定的最大值时,关闭通风,开启绿灯
LED_R = 1; // 关闭红灯
LED_G = 0; // 绿灯亮起
BEEP = 1; // 停止蜂鸣器
RELAY_TF = 1; // 关闭风扇
}


雷达卡


京公网安备 11010802022788号







