灭火机器人设计方案.doc
文本预览下载声明
灭火机器人共享方案
内容摘要:机器人灭火是中小学机器人比赛的常规项目,怎样提高灭火机器人的速度与稳定性是需要重点解决的课题。丹城中学机器人实验室经过2个多月近千次的调试,研制成功灭火机器人“小百龙一号”,实现了比较先进的“无火不进房间”算法。现作粗略介绍,与行内同仁共同探讨和提高。
关 键 词: 机器人 灭火
一、基本概况
机器人灭火是中小学机器人比赛的常规项目,怎样提高机器人的灭火速度与稳定性是需要重点解决的课题。从整个宁波市情况看,宁波市中小学机器人项目起晚,水平不是很高。但宋诏桥小学灭火项目实力很强,在2005年的全国比赛中以较大的优势夺取了冠军。其1、2、3号房间灭火所使用的时间分别为3.8秒、6.9秒和9.6秒,可以说速度惊人,其他学校则实力一般。总体来讲,只要能在3分钟时间内成功灭火,就有望在市内获将。丹城中学机器人实验室自2005年9月份组建以来,经过2个月的奋战,终于研制成功灭火机制人“小白龙一号”,实现了比较先进的“无火不进房间”算法。该机器人在发挥稳定的情况下(没有加电压),1、2、3、4号房间灭火所使用的时间分别为4.8秒、8.8秒、13.1秒和16.7秒。虽然这个成绩和国内的一流水平还有一定差距,但也不乏有一些成功的算法。
二、常用算法介绍
1)溜边法
就是靠墙走,包括左手法则和右手法则,这是最基本的机器人灭火走迷宫算法,是其他算法的基础。但仅仅使用简单的左手法则或右手法则只能完成小学组比赛,初中组由于要灭4个房间的火并且还要回家,高中组还要完成搜救任务,所以需要组合应用左右手法则。该方法编程简单但速度较慢,适合初学者使用,多见于县、市级比赛。
2)固定线路走法
该方法组合应用走直线和走弧线两种基本方法,容易受电池电量和地面粗糙程度等因素的影响,算法的稳定性低,使用的人较少。
3)一技必杀法
网络上人称失传多年的“一招致胜”算法,该算法的要点是在出发点就查找火焰在哪个房间,直接向需要灭火的房间前进。由于该算法没有任何加分系数,并且对场地的要求高,所以使用的人很少。
4)无火不进房间
该方法的要点是在房间的门口看一下,如果房间内有火,则进去灭火,否则去其他房间寻找火焰,比简单使用左右手法则速度要快很多。该算法实际上是左手法则、右手法则、固定线路法的综合应用,实现起来比较难,是目前国内的主流算法,多见于省级和国家级比赛。
5)作弊算法
常见的作弊算法是先编写好不同房间的灭火程序,抽签得到房间号后用声控、按钮、遥控等方法控制使用哪个子程序。该方法属于歪门邪道,没有研究价值。
参考以上算法,本实验室化了两个多月时间,调试近千次,终于实现了1-2-3-4号房间的无火不进房间算法,现对其中比较成功的部分向大家作一简单介绍。至于规则,由于篇幅所限,请大家自己到网络上去搜索。本校使用的机器人基本组件由纳英特公司提供。
三、丹城中学灭火机器人方案介绍
一)场地
机器人灭火竞赛场地平面示意图如下所示(单位:cm)
其中“H”为出发点,角落的是火焰,墙中间的是家具。
传感器接法
本机器人使用下列传感器接法,以实现左右法则的使用。
左红外避障传感器接数字15口,
左45度角红外避障传感器接数字10口,
右红外避障传感器接数字14口,
右左45度角红外避障传感器接数字8口,
前红外避障传感器接数字9口,
声控传感器接模拟2口,
左火焰传感器接模拟3口,
右火焰传感器接模拟4口,
前地面灰度传感器接模拟5口,
后地面灰度传感器接模拟6口。
总体算法
有火
无火
有火
无火
无火
无火 有火
无火
白线检测
本校对纳英特技术人员在网站上提供的算法做了较大改进,使用一前一后两个灰度传感器,测试上千次无一失手,可靠性大大提高,现介绍如下:
出发点的检测
其中bs=80 hs=120是常数,分别表示白线和地面灰度。
while((analog(5) bs)(analog(6)bs))//位于出发点
{ motor(0,100);
motor(1,100);}
motor(0,100);
motor(1,100);
sleep(0.5);
gotofangjian1();//走出出发点去1号房间
终点的检测
outtime=mseconds();//出门时间
显示全部