巡线机器人中传感器的运用
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
巡线机器人中传感器的运用
参加Roborave机器人大赛不仅可以锻炼参与者解决问题能力,实践动手能力,还能训练其工程思维能力。我们都知道,在数学上对于一个问题有许多解法,答案不是唯一的。工程上也是如此,解决问题的方法有很多,其中,容错率和效率就是要考虑的重要指标。这里我想讨论一下如何把机器人巡线和在箱子里放固定数量的乒乓球做到又快又好,以下是我在准备参加比赛和在比赛时所用的不同方案,经过学习和比对得出的一些心得。
(图为清华教授姜玉芹、毛勇现场指导照片)
大赛机器人的运行环境是大赛的场地,比赛时场地的情况将非常复杂,因此,机器人必须知道自己当前的位置才能决定要执行怎样的动作,定位是大赛机器人各种性能发挥的基础,也是机器人全场路径自动规划的基础。我们在Roborave 机器人大赛中运用基于巡线技术的定位方案对大赛机器人来讲是一种比较可靠和有针对性的方案。
Roborave对于巡线的要求并不高,用一个巡线传感器和最简单的if语句就可以完成。传感器需要在黑线内,因为它靠识别黑线上的白色来进行巡线的。这个时候你会发现小车虽然可以前进,但是会大幅度的左右摇摆,而且遇到一条以上的黑线比如路口就无法判断方向了,并且小车速度不能过快,因为当速度过快时,它会冲出范围原地快速转圈,而转速很快时,小车没有足够的时间识别并做出反应,导致很难继续巡线,任务必然失败。多加一个传感器就成了一个很好的解决方案。当我们有两个传感器时,可以同时进行巡线,当两个传感器都感应到线的时候可以判定为路口然后停下,随机进入一个再判断是否正确的入口,如果不是则掉头。
当选择用两个传感器时,就可以完成Roborave的巡线要求,并有一定的判断能力,但是在只有两个传感器的情况下,运行速度会受到很大的限制。如果速度过快,小车会冲出跑道,黑线不在两个传感器以内,就无法自主返回。如果使用更多的传感器提高冗余,进一步提高容错率,就可以使小车加速。即使黑线不在车最内侧的传感器范围内,也就是冲出来跑道,依然可以通过外侧的传感器加大小车的转向角度和速度使小车返回原位。通过多次实验,我们用五个传感器完美的实现这个功能,为了使小车在转向时更快,可以在小车的最外侧靠小车中间的地方再加两个传感器,功能是进行直角转弯。
我们在比赛中用于巡线的传感器组合是由多组反射式红外光电传感器组成,组与组之间的工作相互独立。其工作原理是:红外发射管发射一定强度的红外光,接受管用来检测反射光的强度,由于场地的光线和黑色引导线的颜色相差很大,因此,引导线上的反射光强度和场地的反射光强度就会有较大的差别,这些都会影响传感器的测量结果。因此在设计时采用了对对典型值进行实地反复测量的方法。将一个场地的2个典型反射光强度进行反复采样,然后将结果存入控制器的flash中,作为比赛时的典型值,即实现对场地反光强度的记忆。
巡线完成之后的关键就是如何把小车上的乒乓球放入箱子里了。如果巡线足够精准,地上箱子的开口和车上的箱子的开口是刚好吻合的,所以巡线是很重要的一环。由于巡线车的大小有明确规定,一般在30cm*30cm*30cm以內,在测试的时候,我们发现如果只是把车上箱子的开口打开让乒乓球倾倒下来,效果不是很好,因为由于高度的限制乒乓球经常会卡在开口处,导致整个任务失败。于是我们想到加装震动马达,通过震动使乒乓球掉落,但是能使用的马达功率太小达不到理想要求。最后我们改进用舵机搅拌,同时让小车小幅度的前后移动达到震动的效果。随即要解决的问题是,通过一个主板没有足够长的线同时控制车上面的箱子和下面的马达与传感器,最用我们采用了连接两块主板的方式。
这样,通过多个传感器的协助,以及巧妙地设计箱子的代码,终于可以完成Roborave的巡线任务。一个有我们亲手设计制作的机器人在赛场上舞动身姿,完美通过每一个关口,最后用最快的速度将货物准确的送达目的地,成就感油然而生!
参赛指导老师:姜玉芹、毛勇