企鹅:2583550535 项目和论文都有
第1章 绪论............................................................................................................................ 1
1.1 项目背景及意义.................................................................................................................. 1
1.2 项目的技术实现思路.......................................................................................................... 2
1.3 项目的主要内容.................................................................................................................. 3
第2章 关键技术.................................................................................................................... 4
2.1 硬件...................................................................................................................................... 4
2.1.1 Arduino开发板......................................................................................................... 4
2.1.2 烟雾传感器.............................................................................................................. 4
2.1.3 蜂鸣报警器.............................................................................................................. 4
2.1.4 易燃气体传感器...................................................................................................... 5
2.2 软件...................................................................................................................................... 5
2.2.1 Spring Boot................................................................................................................ 5
2.2.1 MySQL...................................................................................................................... 5
第3章 系统分析.................................................................................................................... 6
3.1 火灾报警器业务分析.......................................................................................................... 6
3.2 功能需求.............................................................................................................................. 7
3.2.1 硬件模块.................................................................................................................. 7
3.2.2 软件模块.................................................................................................................. 8
3.3 非功能需求分析.................................................................................................................. 9
3.4 系统可行性分析................................................................................................................ 10
3.4.1 经济可行性............................................................................................................ 10
3.4.2 技术可行性............................................................................................................ 10
3.4.3 市场可行性............................................................................................................ 10
第4章 系统设计.................................................................................................................. 11
4.1 系统总体设计.................................................................................................................... 11
4.2 系统的硬件设计................................................................................................................ 12
4.2.1 环境收集模块........................................................................................................ 12
4.2.2 数据传输通信模块................................................................................................ 13
4.2.2 报警模块................................................................................................................ 14
4.3 系统的软件设计................................................................................................................ 15
4.3.1 烟雾采集流程........................................................................................................ 15
4.3.2 数据传输流程........................................................................................................ 16
4.3.3 报警流程................................................................................................................ 17
4.3.4 终端控制流程........................................................................................................ 18
4.3.3 数据库表设计........................................................................................................ 18
第5章 系统实现.................................................................................................................. 20
5.1 硬件实现............................................................................................................................ 20
5.1.1 烟雾采集................................................................................................................ 20
5.1.2 数据传输模块........................................................................................................ 20
5.1.3 蜂鸣器报警与洒水................................................................................................ 21
5.2 软件实现............................................................................................................................ 22
5.2.1 登录........................................................................................................................ 22
5.2.2 数据查看与阈值修改............................................................................................ 23
5.3 通信实现............................................................................................................................ 24
第6章 系统测试.................................................................................................................. 25
6.1 测试方法............................................................................................................................ 25
6.2 测试结果............................................................................................................................ 25
第7章 总结与展望.............................................................................................................. 27
参考文献.................................................................................................................................. 28
致 谢...................................................................................................................................... 29
摘 要
火灾是一种常见的灾害,它具有突发性、破坏性和危险性,对人们的生命财产安全造成威胁。因此,开发基于Arduino的火灾报警系统可以帮助人们及时发现火灾并采取措施,保护人们的生命财产安全。
随着物联网技术的成熟和普及,单片机、Arduino、STM32等技术已经广泛应用于人们的日常生活中。在城市火灾防控方面,物联网技术也能发挥重要作用。通过建立火灾报警管理系统,及时发现火灾隐患并提前进行预警,可以极大地减少人力和财力的损失。该系统能够快速响应火灾事件,自动拨打消防电话,迅速通知消防队员进行救援,从而最大限度地减少火灾带来的不利影响。物联网技术的运用不仅能提高火灾应急处理的速度和效率,还能有效降低火灾造成的损失,为城市安全和居民生活带来更多保障。
本研究旨在利用Arduino平台,结合Arduino UNO开发板、易燃气体检测传感器、烟雾传感器、报警蜂鸣器、继电器等组件,设计并制作一款低成本且实用的火灾报警器。该报警器利用ESP8266WIFI模组进行数据通信,并采用Spring Boot与UNI-APP搭建硬件终端,使用MySQL数据库存储数据。用户可以通过终端实时监测环境中的烟雾和易燃气体浓度,并根据需要调整报警阈值。一旦超过设定阈值,系统将触发蜂鸣器进行预警。能够提供及时有效的火灾预警和灭火控制,具有重要的实用价值和应用前景。
5.1 硬件实现
5.1.1 烟雾采集
将MQ-2和MQ-5传感器的地(GND)引脚连接到Arduino UNO的地(GND)引脚上,并将它们的电源(VCC)引脚连接到Arduino UNO的5V引脚上。然后,将传感器的模拟输出引脚分别连接到Arduino UNO的模拟输入引脚A0和A1上,以便主板可以读取传感器的模拟数值。这个连接过程如图5.1所示。
图5.1 传感器连接
接下来,在Arduino IDE中进行代码编写。在循环函数 loop() 中,使用 analogRead() 函数直接读取 A0 和 A1 引脚的模拟电压值。然后,通过除以 40.96 的方式将其转换为烟雾浓度值。这种方法可以省略流程设计中的初始化步骤。
5.1.2 数据传输模块
将ESP-01S的3V3引脚与Arduino UNO的5V引脚连接,将GND引脚与Arduino UNO的GND引脚连接。然后,将ESP-01S的TX引脚连接到Arduino UNO的RX0引脚,将ESP-01S的RX引脚连接到Arduino UNO的TX1引脚。接着,在 setup() 函数中进行ESP-01S的初始化操作。首先,使用 Serial.begin() 函数初始化串口通信,将波特率设置为 115200。然后,使用 Serial.setTimeout() 函数设置串口超时时间,给ESP等待响应的时间。接下来,使用 Serial.println() 函数向ESP发送AT指令,让其连接WIFI并建立穿透模式,使其持续在线。在 loop() 函数中,使用 Serial.print() 函数向服务端发送GET请求,将烟雾与易燃气体数据传输至服务端。然后使用 Serial.read() 函数读取返回的数据,并存入变量 cadena 中。硬件连接如图5.2所示。
图5.2 ESP-01S
5.1.3 蜂鸣器报警与洒水
蜂鸣器的正级引脚与继电器的IN引脚都连接到主板的7号引脚上。在 setup() 函数中,使用 pinMode() 函数将引脚7设置为输出状态。然后,在 loop() 函数中,通过对变量 cadena 的判断,使用 indexOf() 函数来检查是否具有报警标识。如果 cadena 中包含报警标识,就使用 digitalWrite() 函数将引脚7设置为高电平,使蜂鸣器与继电器工作。如果 cadena 中没有报警标识,则使用相同的函数将引脚7设置为低电平。硬件连接如图5.3所示。
图5.3 报警模块
5.2 软件实现
5.2.1 登录
终端的登录界面如图5.4所示。首先,使用HBuilderx创建一个UNI-APP项目。然后,在 pages.json 文件中定义登录路由。登录界面使用 form 组件构建,其中包含两个 input 组件,用于输入账号和密码。在 button 组件中点击后,调用函数 login() 使用 e.detail.value 获取用户输入的值,然后通过 this.$apiRequest 调用发起HTTP请求,调用服务端接口 /user/login。服务端接口调用 baseMapper.selectInfoByUser 方法进行数据库查询,并对查询结果进行判断。如果通过验证,返回状态码200,前端回调函数使用 uni.switchTab 跳转到首页。
图5.4 APP登录
5.2.2 数据查看与阈值修改
APP的首页如图5.5所示。页面上方展示实时数据,中间展示阈值数据,下方展示历史数据。在 onShow 生命周期钩子函数中调用了三个方法:this.getData()、this.getAllData() 和 this.getThreshold(),分别请求服务端接口以获取数据。获取数据后,使用 this 指针将数据赋给对应的变量。页面下方的列表使用 v-for 进行渲染。阈值数据展示为 input 输入框,实时监听用户的输入动作。当用户输入时,使用 @input="vinInput" 方式进行事件监听。当用户输入完成后,访问服务端接口 thresholdUpdate 进行阈值的修改,修改成功后再次调用 getThreshold() 方法获取最新的阈值信息。
5.3 通信实现
首先,为了启动系统,需要给主板供电。然后,设置主板连接的WiFi网络为“123456”,密码也是“123456”。主板连接WiFi后,会尝试访问服务端,并将传感器收集到的数据传输至服务端。服务端在接收数据的同时,会查询阈值表,判断数据是否触发了报警条件。如果发生了报警,服务端会在接口返回函数中标识出警报信息。随后,继电器开始工作,蜂鸣器开始报警。整个过程如图5.6所示。