APP下载

手机蓝牙控制的多功能灭火小车的设计与实现

2017-10-21杨珂泉魏胜利

电脑知识与技术 2017年18期

杨珂泉 魏胜利

摘要:通过对现有自动灭火小车的研究,设计和实现了一种使用手机进行远程控制的多功能灭火小车。灭火小车以Ardui-no单片机作为控制核心,手机和灭火小车通过蓝牙进行通信。灭火小车具有循迹灭火(按照规定路线寻找火源并灭火)和避障灭火(自由巡航式灭火)两种不同的灭火模式。手机端的APP能够随时控制小车的行驶方向和灭火装置的开关,同时还能够随时在两种灭火模式中切换,使小车变得更加人性化、智能化。相比于其他灭火小车,本设计方案机动性更强,体积小、功耗低,更加适应复杂多变的火场,具有一定的实用价值。

关键词:灭火小车;循迹灭火;避障灭火;Arduino单片机;蓝牙技术

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2017)18-0073-03

1概述

消防安全一直是我们生活的重中之重,每年因火灾造成的损失非常惨重。当火灾发生时如何快速发现和灭火一直是人们研究的重点。很多发达国家都非常重视灭火装置的应用和发展。我国已经意识到这点,正在努力的探索中。现有的大部分灭火机器人工作形态单一、只能应对个别环境下的灭火工作。例如,在崔清宇、时泽宇设计的智能灭火小车中仅仅能实现小车能够避障前行并灭火;在刘天宇设计的蓝牙智能小车系统中只能够实现用手机APP控制小车的前进方向。考虑到火场的复杂性,结合现有灭火机器人的优点,本文设计并实现了一种基于Arduino单片机并通过蓝牙实现手机控制的多功能灭火小车。能够随时切换不同工作模式,应对复杂多变的火场情况,更加高效地完成灭火工作。

2体设计

灭火小车整体由MCU、蓝牙模块、火焰探测模块、红外避障模块、红外循迹模块、灭火模块、电机驱动模块、电源模块组成。MCU由Arduino单片机担任。通过手机APP控制小车,能够实现小车的前进、后退、停止、左转、右转、开关灭火装置、循迹灭火、自动巡航式灭火等功能。蓝牙模块通过与手机端上的蓝牙进行匹配,接收从手机端发送过来的动作指令,再把指令传递给单片机,单片机通过分析处理接收到的指令来运行不同的子程序,从而实现小车的不同功能。手机端的APP功能界面和灭火小车的整体结构如图1和图2所示。

3硬件电路的设计

3.1主控芯片

在该设计方案中,红外避障与循迹模块需要用到5路数字输入输出口进行高低电平信号采集,底盘电机驱动也需要用到4路PWM的数字信号引脚,还有其它部分的传感器也需要占用大量数字输入输出口。经过对比选择,选用Arduino Mega2560作为核心处理器。它采用USB接口的核心电路板,具有多达54路数字输入输出,特别适合需要大量10接口的设计。同时作为一个开源的硬件平台,Arduino内部封装了很多函数和大量的传感器函数库,使电子设计的人可以很快创造出由属于自己的作品。

3.2蓝牙模块

蓝牙部分采用HC-06蓝牙模块实现。将它的TXD接MCU的RX端,它的RXD端接MCU的TX端。蓝牙模块与手机配对以后完全就当是一个固定波特率的串口使用。通过串口的AT命令集对蓝牙和小车模块进行配置。通过手机APP发送串口数据,利用蓝牙与单片机保持通信,通过设置“按钮名称”和程序中相应的“发送内容”就能够实现不同按钮发出不同指令。HC-06原理图如图3所示。

3.3火焰探测模块

火焰探测模块由三个火焰传感器组成放置在小车车头的左、中、右三个位置。火焰传感器可以检测火焰或者波长在760纳米-110纳米范围内的光源。探测角度在60度左右,对火焰光谱特别灵敏。火焰传感器有DO数字端口和A0模拟端口,本设计采用火焰传感器的A0端口,远红外火焰探头将外界红外光的强弱变化转化为电流的变化,反映为0-255范围内数值的变化。红外光越弱,数值越小;反之则越大。这些数值输入到MCU中,MCU根据信号变化做出相应处理。

3.4红外循迹模块

在循迹方面主要采用比较常用的“红外探测法”。红外探测法,即利用红外线在不同颜色的物理表面具有不同的反射性质的特点确定行走的路线。在小车行驶过程中不断向地面发射红外光,地面不同的颜色对红外光的反射和吸收不同,红外接收管接收到的光的强度就不同,从而确定行走的路线。目前该系统的红外循迹只能工作在比较理想的情况下,路径只识别黑色和白色两种。循迹模块由安装在车底盘的红外传感器组成,每一路的传感器的红外发射管不断发出红外线,当发出的红外线没有被反射回来或反射回来但强度不够大时,红外接收管一直处于关断状态,此时的TTL输出为高电平,相应指示二极管一直处于熄灭状态;当红外线被反射回来且强度足够大,红外接收管导通,此时的TTL输出端为低电平,指示二极管被点亮。

单片机根据不同的电平变化对小车的前进方向做出调整,使小车能够正确按照指定的方向运行。

3.5灭火模块

灭火模块主要由一个舵机和灭火装置组成,放置在小车的正前方,根据单片机的发出的指令,舵机能够左转和右转,当舵机转到相应位置时,灭火装置启动开始灭火操作。灭火装置由单片机控制输出信号,在程序中输出一个低电平0时,就可以启动灭火装置。设定相应的灭火工作延时,当到达时间后舵机回到原来位置灭火装置停止工作,小车继续工作。

4功能设计

4.1循迹灭火功能

在循迹灭火模式下,按下手机APP中“循迹灭火”按钮,手机通过蓝牙发出相对应的信号,位于小车上的蓝牙模块收到信号后传送给单片机,单片机根据程序内容来执行相对应的指令。循迹灭火功能是小车利用两个循迹传感器根据铺设的黑白线前进。在如图4所示的情况下,黑色路线被探头1检测到,则意味着小车偏移到路线右侧,此时小车左转。反之,如果黑色路线被传感器2检测到,则意味着小车已经偏移到路线左侧,此时小车右转。当分布在左、中、右三个方向的火焰传感器检测到火焰时,小车立即停止前进,舵机转向相对应的方向,灭火装置启动,延时灭火一段时间后,舵机回到原来位置,火焰传感器继续判断火焰是否熄灭,如果未熄灭,小车前进一段距离后停下继续灭火。直到熄灭线路上所有火焰。程序流程图如图5所示。

4.2巡航灭火功能

目前,循迹灭火模式在实际应用时有很大限制,因为在实际情况下,不可能有设计好的黑白路径可供使用。因此,巡航灭火模式实际应用价值更大,而循迹灭火模式通常用来对系统进行测试。巡航灭火也是我们重点研究的内容。巡航灭火功能主要用于不知道房间内是否起火或者火源位置不确定,让智能小车在自主巡逻过程中能够准确发现火源地并顺利避开障碍物到达火源地完成快速灭火工作。巡航灭火模式采用三个红外避障传感器和三个火焰传感器作为主要工作模块。

三个火焰传感器分别安装在小车的左前、正前和右前方,以小车车头左右方向为X轴,三个火焰传感器分别位于30°、90°和150°三个位置,因为火焰传感器探测夹角为60°,这样放置刚好可以覆盖前方180°,避免探测死角。

在实验环境下,火焰传感器离火焰的距离和对应的测量电压如表1所示。

调节火焰传感器的检测阀值,其最远探测距离可以达到90cm-100cm,可以根据实际情况调节小车的灭火距离。

在巡航灭火模式下,采用表2所示的路径巡航测量。根据三个火焰传感器检测到火焰信号的大小确定小车的行进方向。在以后会采用更加智能的巡航测量。小车转向度数根据小車转向时车速不同来调节。

避障程序由三个红外避障传感器的数字输出信号为主要参数,在巡航模式中,小车主要遵循“左转法则”,即小车前进过程中延左侧旋转,直到火焰探测器探测到火源,启动灭火子程序,灭火完成后继续进入巡航程序。流程图如图6所示。

4.3手动控制灭火功能

此功能利用手机APP上的按钮来控制小车的前进、后退、左转、右转、停止和灭火装置的开关。当房间发生火灾,可利用手机远程控制小车前进到火焰面前,然后开启灭火装置,灭火完成后关闭灭火装置,再继续控制小车前往其他火源地点,直到完成所有灭火工作。

5总结

基于Arduino单片机的蓝牙多功能灭火小车,能够通过手机APP远程控制小车,并能够顺利完成多种功能的灭火操作。是在现有的智能小车的基础上的一点改进,具有一定的实用价值和发展前景。