浅谈机器人在线迷宫中的控制策略问题文档格式.docx
- 文档编号:15969617
- 上传时间:2022-11-17
- 格式:DOCX
- 页数:18
- 大小:438.30KB
浅谈机器人在线迷宫中的控制策略问题文档格式.docx
《浅谈机器人在线迷宫中的控制策略问题文档格式.docx》由会员分享,可在线阅读,更多相关《浅谈机器人在线迷宫中的控制策略问题文档格式.docx(18页珍藏版)》请在冰豆网上搜索。
采用电胶带粘贴而成,所以白底黑线的情况较为多见)。
但无论是哪种类型的线迷宫,都有一个共同特点就是:
要有起点和终点。
机器人从起点开始,沿着赛道前进,在终点停止。
整个过程中,最快的速度或最短的时间是每位机器人设计者追求的目标,也是迷宫机器人比赛的评判标准。
1.2线迷宫的技术难点
对于赛道式的线迷宫,技术难点在于如何让机器人在高速运动的状态下,能事先判断赛道变化趋势,以更好的沿着赛道运动;
尤其是在弯道上,不会出现偏离或冲出赛道的情况。
这里面除了赛道探测传感器的选用外,控制方法也是不可或缺的因素。
现在国内的“飞思卡尔智能车比赛”重点考核的就是这个技术难点。
对于迷宫式的线迷宫,机器人如何准确的判断赛道岔路类型,是技术难点。
在这类线迷宫中,赛道岔道一般可以分为左转路口、右转路口、丁字路口、十字路口、前进或左转路口、前进或右转路口、死胡同、赛道终点等八种类型。
还有些线迷宫带有封闭赛道,更增添了机器人判断的难度。
如何让机器人具备自我学习能力,能够发现并记住不能通行的岔道,以期使机器人在第二次穿越时,可以用最短的距离走完线迷宫,是机器人设计的难点。
n
左转路口
占转踣口
“丁”宇路口
十
字路口
迷宮机器人可能遇到的八种赛道情形
p1.2线迷宫机机器人可能遇到的八种情形
p1.3带有圭寸闭赛道的线迷宫
我们这片文章就重点就这第二类迷宫式线迷宫做探讨。
2、机器人控制策略
2.1左手法则(LeftHandRule)
•机器人执行左转的优先级高于直行或右转;
.机器人执行直行的优先级高于右转;
即机器人在线迷宫中,如果遇到“十字路口”(即有左转、直行和右转),机器人会左转;
如果遇到“直行或右转路口”,机器人会直行;
只有遇到“右转路口”,机器人才右转。
一句话就是,执行左手法则的机器人永远是沿着左侧走。
如果线迷宫不存在向p1.3图所示的封闭赛道,都可以顺利的从起点走到终点。
2.2右手法则(RightHandRule)
-机器人执行右转的优先级高于直行或左转;
.机器人执行直行的优先级高于左转;
即机器人在线迷宫中,遇到右转路口,一定右转。
如果遇到“十字路口”(即有左转、直行和右转),机器人会右转;
如果遇到“直行或左转路口”,机器人会直行;
只有遇到“左转路口”,机器人才左转。
一句话就是,执行右手法则的机器人永远是沿着右侧走。
2.3我们的选择
很多初学者在机器人控制时,会为是选择“左手法则”还是选择“右手法则”而矛盾。
这没有任何关系!
无论是左手法则还是右手法则都可以让你的机器人顺利的从起点走到终点,完成
迷宫穿越。
选用哪种方法纯粹是个人爱好问题。
3、寻线传感器3.1寻线传感器类型
这个小节我们介绍一下寻线传感器。
可以说机器人的最终走迷宫效果如何,很大程度和寻线传感器有关系。
机器人只有通过寻线传感器准确的判断了当前所处赛道的位置,机器人控制机构才可以根据赛道状况做出准确的反应。
寻线传感器模块是多个传感器阵列。
从组合方式上主要有两种类型:
一字型和八字型(具体看下图所示)。
八字形和一字型相比较,前部突出的传感器,让机器人具有了预判断功能。
(如果赛道具有丁字路口、十字路口,八字型寻线传感器模块将会使机器人判断工作变得简单)
p3.1八字型寻线传感器
p3.2—字型寻线传感器
从数量上来说,有3个、4个、5个,乃至更多传感器组合。
一般说,3个的寻线传感器适合做赛道式线迷宫寻线(如图p1.0),不适合迷宫式寻线场合;
传感器数量多于3个时,则可以做迷宫式寻线。
数量越多越便于机器人对线路做出预判(这也是为什么我们在看飞思卡尔智能车比赛时,很多小车前头都加了长长一排的寻线传感器,十多个之多的原因)。
从输出信号类型分类,又有模拟信号输出传感器模组和开关量输出传感器模组。
这些由于对我们后续的介绍没有太大关系,就不多做分析(当然在我们实际控制
上,开关量传感器模组相对简单一些。
传感器信号直接送给单片机10即可;
如
果是模拟量输出,则还要通过AD模数转换后才可以。
但模拟量输出传感器也有其自身的好处,那就是可以准确判断场地灰度值,可以做防坠落功能)。
在我们接下来介绍的机器人走迷宫的内容中,为了介绍方便,我们选用“一字型
5通道寻线传感器模组”作为讲解对象。
3.2寻线传感器工作原理
寻线传感器一般是由光电对管组成,一个发射,一个接收。
根据发射光(分可见光和红外光)对赛道介质的反射参数的差别,来判断传感器下面是赛道还是场地。
我们都在物理课本中学过,颜色越深的物体,吸收光线的能力就越强;
颜色越浅的物体,发射光线的能力就越强。
当光电对管通过深颜色物体时,由于发射光被吸收很多,能反射出来的光线就小,能被接收管收到的光线就更少;
反之,当光电滴灌通过浅颜色物体时,由于发射光被吸收较少,能反射出来的光线就多,能被接收管接收到的光线也随之增多。
而光电接收管会随着接收光线的多少而发生电压或电流变化,我们根据这些电参
数变化就可以知道传感器碰到的是深颜色物体还是浅颜色物体。
赛道之所以要做
成黑底白线,或白底黑线,就是为了让电参数变化差异增大,更便于我们判断。
为了方便介绍,在机器人走迷宫时,我们这里设定,遇到黑色,传感器输出“1高电平;
遇到白线,传感器输出“0”低电平。
3.3寻线传感器的使用
1000001000001000001000001
p3.3机器人在寻线时的传感器的显示
当机器人沿着线走时(在图中自下向上行驶),处于不同情形时,传感器会有不同的显示。
这里列出了5种常见情形:
•10000=机器人严重向右偏离赛道(在控制上我们就要让机器人在前进的同时向左做大幅度转动)
•01000=机器人轻微向右偏离赛道(在控制上我们就要让机器人在前进的同时向左做轻微转动)
.00100=机器人正处在赛道上(在控制上我们就要让机器人继续直线前进)
•00010=机器人轻微向左偏离赛道(在控制上我们就要让机器人在前进的同时向右做轻微转动)
•00001=机器人严重向左偏离赛道(在控制上我们就要让机器人在前进的同时向右做大幅度转动)
通过传感器对不同情形的反馈,就可以确保机器人准确的沿着赛道前进
4、机器人对岔路口的处理方法
4.1机器人走迷宫过程分析
机器人在走线迷宫时,常用的控制方法无非是以下几个步骤:
⑴、机器人沿着当前赛道前进(followingtheline);
前进同时检测前方是否有岔路口。
⑵、一旦检测到岔路口,机器人要判断岔路口的类型;
⑶、确定岔路口类型后,在一定的控制法则下完成转弯。
整个流程在机器人走迷宫时将会循环作用,直到机器人到达迷宫重点。
简单用流程图示意一下就是下图:
Rhiiij
J、、岔佛m十―
时燈ft
p4.1机器人走迷宫示意图
PS.当然上面的流程图中并没有涉及到后面我们所要讲到的“机器人自主学习功能”。
这块功能将单拉出来讲解。
4.2机器人寻线方法(followingtheline)
机器人寻线相对而言还是比较简单的,我们只需根据传感器数调整机器人左右转
速就可以了。
这里提供一个简单的控制代码范例:
以上范例代码中,慢速、中速和快速只是根据机器人偏离赛道程度大小而使用的描述词语。
在实践中,机器人电机转动的速度需要你不断实验、尝试,才能使机器人有更好的寻线效果。
(在控制上,这加入了反馈,属于闭环控制。
建议去尝试着了解一下闭环控制理论中PID算法的介绍,这将对机器人的速度控制有很大帮助)
4.3赛道路口的识别和处理。
有了4.2中介绍的内容,我们的机器人就可以沿着赛道走了,但这个时候它还不会判断岔路口,更不知道遇到岔路口应该如何操作。
这一小节就重点介绍岔路口的识别和对应操作。
让我们再次去回顾一下1.2小节中“P1.2线迷宫机机器人可能遇到的八种情形”的图片,我们就对图中的八种状况做分析。
ElEHffi
[左转齬口J寺转豁口]I丁宇路口+字齬口
T
工
丄
直行或左转路口□直行或右转踣口
死胡周-■
迷宫机器人可能遇到的八种赛道情形
说到这里,我们要重点强调一个概念:
岔路口。
至少到现在为止,岔路口的概念还不会对我们介绍的内容造成理解上的偏差。
但后面小节要介绍“机器人的自主学习能力”,如果不对这一概念做澄清,会影响后续内容的开展:
岔道口:
机器人可以有一个以上行进方向的路口。
按照上面的定义,下图中的两个路口就不能再成为岔路口了。
虽然在这两个路口,机器人要执行转向的操作,但在方向选择,显然机器人不必要思考的,左转或右转时他们唯一的选择。
同样不能作为岔路口的还有“死胡同”。
p4.2不是岔路口的路口
弄明白了这个概念对下一小节的内容就容易理解了。
下面就切入本小节的正题:
路口的识别和处理。
4.3.1死胡同的识别和处理
死胡同是8种路口中最简单的一个。
当寻线传感器数值从“00100”变化为“00000”时,我们就可以认为机器人是遇到了死胡同。
p4.3死胡同
当机器人遇到死胡同时,机器人的动作应该是掉头(makeaU-turn)。
示意程序代码为:
当遇到死胡同,机器人直行
IfPattern=%00000thengosubU-Turn//掉头的子函数。
4.3.2“右转路口”和“右转或直行路口”识别和处理
当机器人遇到这两种路口时,传感器输出模式都是“00111”。
这个时候机器人
如何做选择呢?
p4.4右转路口和右转或直行路口
解决方式是,我们编写一个子程序,假设名字是inch(),执行的操作是让机器人再前进一点(一英寸)。
当传感器越过赛道后,如果寻线传感器显示数值为“00000”,那么这个路口就一定是“右转路口”;
如果寻线传感器显示数值为“00100”,那么这个路口就一定是“右转或直行路口”。
那接下来机器人该如果动作呢?
如果机器人使用的是“左手法则”,在“右转路口”只能有一种选择一一右转;
在“右转或直行路口”,机器人就要执行“直行”的动作;
如果机器人使用的是“右手法则”,在“右转路口”显然要一一右转;
在“右转或直行路口”,机器人就要执行“右转”的动作;
4.3.3“左转路口”和“左转或直行路口”识别和处理
11100”。
当机器人遇到这两种路口
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 浅谈 机器人 在线 迷宫 中的 控制 策略 问题