机器人避障问题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
精心整理
机器人避障问题
摘要
本文研究了在一个800800⨯平面场景里,机器人通过直线和圆弧转弯,绕过障碍物,到达目标点的问题,解决了到达目标点路径最短,以及到达A 点时间最短的问题。文章将路径划分为若干个这种线圆结构来求解。对于途中经过节点的再到达目标点的状况,我们采用了在拐点和节点最小转弯半径的形式.
O A →O →B O →C O →A →B 10个单位为50=v
对场景图中4(1)(2)1.出发,分别做圆的切线,直到终点。对于经过路径中的目标点的问题,我们采用最小转弯模式,建立优化模型,最终求的最短路径。
2.问题二要求从起始点到达A 点所用的时间最短,从题意以及生活经验可得,拐弯半径越大,所用时间越短,拐弯半径越小,所用时间越大。半径最小不低于10,取最大值时机器人应刚好未碰到4、6三角形,可通过几何解法计算出来,并对时间进行优化处理。
三、模型假设
假设机器人可以抽象成点来处理
假设机器人的能源充足,且在整个行走过程中无故障发生
四,符号说明
】
5(为起点,,OA
圆弧的切点,角度
1OO A ∠=,11OO M ∠=,11AO N ∠=,111M O N θ∠=.设这段路程机器人的总路程为L. 解法如下:
如上图可得有以下关系:
1 AOO ∆在中:
在11Rt OO M ∆:
222arccos(2b c a bc
α+-=
在11Rt AO N 中:
所以:
从而可得:
结果如下:
机器人行走路线
1OM =1N A 弧11M N =
224.7221;
b=
237.6973
c=
O 同理了解
比较可得,
O 从上面绕到到目标点A 的距离最短,最短路径为471.0372。
→
2.O B
→有多条路径,可以从O到正方形5的右下角直接到8的右上角,再绕到B。
1)O B
2)可以从O到正方形5的右下角直接到8的右下角,再绕到8的左下角,绕到B。
3)可以从O到正方形5的左下角到左上角绕过6的右下角再8的右上角绕到B。
4)可以从O到正方形5的左下角到左上角绕过6的右下角再8的右下角,再绕到8的左下角,绕到B。
5)可以从O到三角形6的左下角再到三角形6的上顶点,绕到矩形7右下角,到矩形7右上角,再到8的右上角,
绕到B。
6)可以从
到8
图2
第二、
第三、
→只不过增加了路径的长度和情况。经上面分析发现,机器人行走路线与出发点到目标与上面两种情况类似,O C
点连线段越近,越趋于最短路。于是,我们着重看了以下几种情况:
1)可以从O到三角形4右下角绕到矩形12左上角,到正方形11右下角,到11右上角,再绕到C。
2)可以从O到正方形5左上角绕到3左上角,到圆2,到11右下角,到11右上角,再绕到C。
O→→
在这个过程中,机器人不仅要绕过障碍物,还要经过A B C
、、三点,以A点为例,在经过A点时,机器人要转弯,转弯圆弧要经过A,圆弧以10为半径。在此,要用到准备知识2.
二、最短时间路径
根据题目和经验判断,拐弯越大速度越快,也就是拐弯时半径可以增大,但不能碰到上面的三角形。所以对半径有范围要求。
最大半径的确定:
图
(150,435) G
,
(235,300)
M
由此能够计算出GM的直线方程,D的纵坐标为290,由直线方程可以判断出D的横
坐标。D
那么AD
6.1
n
边
算法6.2
1
线。于是我们对模型做了以下修正:
1、检验切线两个端点是否在障碍物内部。
2、检验切线是否障碍物的对角线相交。
3、检验圆弧所对应的圆心,即障碍物的顶
点到切线的距离是否小于1。
如果以上三种情况满足其一,我们规定对应这段切线的顶点为M(M为无穷大)。
4、另外还有如下图所示的一种特殊情况:
两个大小相同在同一水平或者竖直位置上,不考虑切线满足1、2、3的状况它们由2条内
公切线,8条外公切线,但是有6条外公切线是重复的。因此我们作如下规定:如果某条
切线与某段圆弧相切,且切点不在切线的端点上,则该切线为不合法。权值矩阵中表示它
的顶点也为M 。
转化成如7.21所示的形式。假设转化过后有m 条合法切线,那么就有m 个顶点,设这些点的权值i E (1i m ≤≤),即第i 条合法曲线的长度。j D 为边的权值,即第j 条弧的长度。
3)然后把路径图转化成如图6.21所示,按照求得权值矩阵给图中的顶点及边长赋值。
4)最后依据Dijkstra 算法求得最短路径。
七、模型评价
一、模型优点
1、运用多个方案对路径进行优化,在相对优化之中取得最优解。
2、模型优化后用解析几何进行求解,精确度较高。
3、3、模型简单易懂,便于实际检验及应用。
4
5、12[1][2]4][5][6][7]年 出版社《数附录1
>>x1=0;
>>y1=0;
>>x2=80;
>>y2=210;
>>x3=300;
>>y3=300;
>>a=((x2-x1)^2+(y2-y1)^2)^(1/2);
>>b=((x3-x2)^2+(y3-y2)^2)^(1/2);
>>c=((x1-x3)^2+(y1-y3)^2)^(1/2);
>>a,b,c
a=