基于时间条件算法的灭火机器人设计

2015-05-30 10:48胡改蝶樊孝仁崔艺馨
计算机时代 2015年7期
关键词:迷宫

胡改蝶 樊孝仁 崔艺馨

摘  要: 详细介绍了灭火机器人的组装,在组装机器人的基础上,概括性的介绍了灭火机器人的各种算法及无火不进房算法中的时间算法和条件算法。为了让灭火机器人更加稳定的退出每个房间,结合时间算法和条件算法的优点,提出了时间条件算法,从而让机器人采用时间条件算法在迷宫中行走,并完成灭火任务。实验表明,此算法的应用使机器人在灭火过程中稳定性很高,并能及时避开迷宫墙壁;不但效果好,而且在很大程度上缩短了时间。

关键词: 灭火机器人; 时间算法; 条件算法; 时间条件算法; 迷宫

中图分类号:TP311          文献标志码:A     文章编号:1006-8228(2015)07-15-02

Design of fire-fighting robot based on time-condition algorithm

Hu Gaidie, Fan Xiaoren, Cui Yixin

(Network and Information Center, Taiyuan Institute of Technology, Taiyuan, Shanxi 030008, China)

Abstract: This paper introduces the fire-fighting robot installation, on the basis of installation of fire-fighting robot, synoptically introduces all kinds of algorithms including time algorithm and conditional algorithm. In order to make fire-fighting robot get out of each room more stable, this paper combined with the advantages of time algorithm and condition algorithm, puts forward a time-condition algorithm, so that the robot using the time-condition algorithm can walk in a maze, and complete the task in the maze. The experiment show that, the robot using the algorithm has a very high stability in the process of fire-fighting, can timely avoid the maze walls, and the effect is good.

Key words: fire-fighting robot; time algorithm; conditional algorithm; time-condition algorithm; maze

0 引言

机器人技术正在以飞快的速度发展着,它的应用已容入到人们的日常生活,如工业机器人,服务机器人,军用机器人等等,机器人的使用使得教育机器人引起了各界的重视[1]。为了让更多的学生了解机器人,本文以教育机器人中的灭火机器人实验为例探讨基于时间条件算法的设计和实现。

1 硬件设计结构及功能

红外传感器是数字传感器,其作用是让机器人避开迷宫的墙壁,从而顺利的在迷宫中行走。安装位置是正前方两个,分别插在控制主板的1、2号端口;左右各一个,分别插在控制主板的3、4号端口;左右45度各一个,分别插在控制主板的5、6号端口;正后方一个,插在控制主板的7号端口。灰度传感器是模拟传感器,其作用是判断每个房间门口的白线,从而使机器人识别是否到达房间门口。安装位置在正前方下侧,距离地面3-5mm,插在控制主板的14号端口。火焰传感器是模拟传感器,其作用是寻找火源,并且进行准确的寻火、定位和靠近火源。安装位置距离地面大约17cm处,正前方火焰传感器插在控制主板的15号端口,左45度火焰传感器插在控制主板的16号端口,右45度火焰传感器插在控制主板的17号端口。风扇作用是进行灭火,安装与火焰在同一水平面,以便于灭火。

2 算法的介绍与提出

灭火机器人的设计算法有很多,一般有左右迷宫灭火算法、进房灭火算法、无火不进房灭火算法和直接寻火源灭火算法等[2-3]。无火不进房灭火算法是机器人在检测到房间门口的白线时,并不直接进入房间寻火,而是在房间门口进行寻火,若寻到火则进入房间灭火,若没有寻到火(即无火)则直接往下一个房间搜索。无火不进房灭火算法有退房算法和旋转算法两种方法。退房算法又有时间和条件两种算法,所谓时间算法,是机器人发现本房间无火,后退几秒后,转弯,继续下一个房间;所谓条件算法,是机器人发现本房间无火时,后退,当机器人后方的传感器有信号,则停止后退,继续向下一个房间。本文提出的算法是将时间算法和条件算法结合起来,简称为时间条件算法。它是机器人在检测到房间门口的白线时,没有寻到火的情况下,退房时的操作过程,机器人先后退,然后判断后方传感器是否有信号,若无信号则继续后退,若有信号则停止后退,继续下一个房间。

3 软件结构设计及部分程序

编程采用NST Robot软件,由一个主程序和多个子程序共同实现,本程序设计分为五个模块,分别是启动模块、左/右迷宫模块、寻火模块、灭火模块和回家模块[4-5]。启动模块一般有开关启动、接触传感器启动和声控传感器启动三种方式,本文采用的是第三种方式。左/右迷宫模块,采用常规则的左手/右手法则编写程序,让机器人顺利的在迷宫中行走[6]。为了处理机器人进房间时转弯不稳定的情况,本文经过计算得出左/右迷宫进房间时的转弯马达功率设置为60和45最为适合。寻火模块通过比较三个火焰传感器的值来定位火源的位置,然后靠近火源后停止。灭火模块是启动风扇,进行灭火。回家模块是机器人灭火后,要顺利的回到出发点。主程序流程图如图1所示。

[声控传感器

是否有信号?] [开始走迷宫][是否检测到房间

图1  主程序流程图

4 调试

调试分为程序调试和环境调试。程序调试又包括主程序调试和子程序调试。首先调试各个子程序,一个子程序对应一个模块,也就是说,机器人先完成启动模块、左/右迷宫模块、寻火模块、灭火模块和回家模块的调试后,再将各个模块的子程序连在一起进行综合调试,从而保证整个主程序的顺利进行。环境调试是机器人在不同的环境条件下,会受到许多因素的影响,例如场地,电池电压,灯光等等。本文经过多次调试,顺利完成机器人的灭火任务。

5 结束语

通过多次实验证明,采用的算法不同会影响机器人在整个灭火过程中的效果。经验证,本文所组装的机器人在迷宫中进行灭火时,运用了时间条件算法编写的退房子程序,不仅解决了机器人退房时的不稳定问题,而且使机器人能快速、顺利地完成灭火任务,大大缩短机器人的整个灭火时间。

参考文献:

[1] 崔新友,王海花.基于ARM的足球机器人控制系统的研究与设计[J].

计算机时代,2009.11:26-28

[2] 张佐权.竞赛用灭火机器人智能优化技术的研究与实现[D].电子科技

大学,2012.

[3] 张英.机器人灭火的设计方案[J].西安邮电学院学报,2006.11(3):

110-112

[4] 韦艳,杨桂考,徐加新.灭火机器人的设计与实现[J].数字技术与应用,

2011.11:82

[5] 张景川,刘立阳,傅家祥.新型灭火机器人的设计与实现[J].电脑知识

与技术,2008.4(8):2246-2249

[6] 康冰,梁艳磊.基于机器人迷宫搜索中心算法的优化[J].长春师范学

院学报(自然科学版),2011.30(4):25-29

猜你喜欢
迷宫
走迷宫
走迷宫
走迷宫
大迷宫
迷宫
迷宫
捕网迷宫
创造独一无二的迷宫
迷宫篇2
迷宫篇