机器人避障问题的最短路径分析(3)

2019-03-03 22:02

4、通过分析可知O→A→B→C→O的最短路径为如下图7所示:

图7

因为O→A→B→C→O的路线简化成由16个线圆结构组成的

G?H: l1?b1?r?2222c1?r?r?1

22 F→L:l2?C2?r?r L→B:l3? K→N:l4? M→Q:l5? Q→t:l6? S→V:l7??22

2b3?r?222222c3?r?r?3

c4?r?r?4 c5?r?r?5

b6?r?2222c6?r?r?6

22c7?r?r?7

第 11 页

V→Y:l8? X→T:l9? T→q:l10?b8?r?222222c8?r?r?8

22c9?r?r?9 c10?r?r?10

为了简化模型,我们假设A、B、C点为切点。 因为O→A和O→C在前面已经计算了最短值 所以

minl?OA?l1?l2?l3?l4?l5?l6?l7?l8?l9?l10?OC

综上所述可得各个点的坐标: O→C的坐标为: 圆弧圆心

(230,60) (410,100) (500,200) (720,520) (720,600)

切点

(422,90) (428.7,94.5) (492,206) (727.6,514) (730,520)

(730,600) (727.8,606.3)

O→B的坐标为: 圆心

(60,300) (150,435) (220,470) (220,530) (150,600) 切点 (50.13,301.06) (51.7,305.5) (141.7,439.6) (230,530)

(150,444.03) (222.1,460.2) (140.7,596.3) (230,470)

(225.5,538.3) (144.5,591.6)

O→A的坐标为:

圆心 (80,210) 切点

(70.5,213) (76.6,219.4)

O?O的坐标 圆弧切点

(70.5,213.1) (76.6,219) (291.07,297.78)

第 12 页

(297.25,309.08)

(229.25,532.9) (225.5,538.35) (144.5,591.64) (140.7,596.35)

(105.7,685.4) (115.6,699) (270.6,689.9) (272,689.8)

(366.7 ,670.3) (533.9 ,738.3) (699.4 ,642.3) (369.3 ,670)

(539.6 ,740) (429.3, 670) (539.5 ,740) (435.1 ,671.8)

(679.3 ,732.18) 圆心

(80, 210) (287.68 ,306.18) (220 ,530) (150,600)

(115.02,639) (270,680) (369.3 ,680) (429.3 ,680)

(539.5 ,730) (669.5 ,730) (709.2 ,644.5)

问题二:通过分析采用图9的路线可以得出O?A最短时间路径 如图所示:

图9

??OCBA是O到A的最短时间路径 其中C?x1,y1?点,B?x2,y2?点分别是直线与圆

弧的两个切点:CB长度是d。 d??y2?y1?2??x2?x1?2

第 13 页

直线O1C的斜率为k1,直线O1B的斜率为k2。

所以直线O1C的方程:y?y1?k1?x?x1?·······························(1)

直线O1B的方程:y?y2?k2?x?x2?······························(2) 将式子(1)和式子(2)连理求解可以得到圆心坐标O1?x,y?。

??圆弧CB所对的圆心角为?

由到角公式可知:tan??k1?k2····································(3)

1?k1k2因为O1B?AB,O1C?OC,所以有两直线垂直那么其斜率相乘等于零。 因此:k2??300?x2··············································(4)

300?y2x1 ··················································(5) y1 k1???···································(6) ?d·2将式子(3)、(4)、(5)、(6)连理求解可以得到?和r

由于转弯的的半径还受到障碍物5和障碍物6的影响,所以切点的半径有限制范围,通过计算可限制切点的半径范围:

在?O1BC中显然有2r?sin0?x1?80

y1?2900?x2?290210?y2?290

又因为D点必须在两条切线的内侧,所以我们通过 OC的斜率大于OD;AB的斜率小于AD来限制。 即:

y1?kDAx1kBA?kDA kDA?0所以最短时间可以表示为:

minT?

r?1?e10?0.1e2??300?x2?2??300?y2?2?5第 14 页

x1?y122

以上式子用MATLAB求解得到最短时间为:95.4332秒

在上面的模型中是圆心固定算出半径是11.5,如果不固定圆心O1,那么圆心的范围就是一个以O点为圆心,1.5为半径的小圆内部的点。为了方便起见将圆心O1坐标的取值定在小圆的内切正方形里面。然后利用上面的模型加上(7)式的

约束条件可以在这个小正方形里面找到最优解。

d?a?ba?d?b?c··················································(7)

上面式子的程序再加上(7)这个约束条件用MATLAB求解得到最短时间为:94.3秒.两个切点坐标B(85.9,198.6) C(70.1,212.6)

七、模型评价

(一)优点:1.文章中的计算过程皆运用数学软件求解,且求解过程简洁,使得

出的数据更具有说服力;

2.本文通过对问题的充分分析,在合理的假设情况下,建立了具有科学性的方程模型;

3.运用本文模型求解相关问题时结果与实际情况基本相吻合;

(二)缺点:问题(一)中其他几问的算法基本上同O→A的算法一致,数据较大,在处理时存在一定的误差,但误差在允许的范围内,可以接受。

八、模型检验与推广

本文是利用传统方法——切线图法求解切线图法用障碍物的切线表示弧,此

时移动机器人必须接近障碍物,在有误差的时候可能与障碍物有接触,但解决了障碍物不能是圆形的问题。我们可以采用基于遗传算法与人工神经网络的智能避障算法。

九、参考文献

[1] http://wenku.http://www.wodefanwen.com//view/59fd857aa26925c52cc5bf4c.html,2012年

[2] 阳明盛,熊西文,林建华,MATLAB基础及数学软件,大连:大连理工大学出版社,2003年。

[3]《移动机器人避障方法综述》 作者 牢常健, 吴成东, 李斌

科学院沈阳动化研究所机器人学田家重点实验室;中嗣科学院研究生院;东

北大学信息科学与工程学院

第 15 页


机器人避障问题的最短路径分析(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:浅谈“微课”在数控车工实训教学中的应用

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: