没有合适的资源?快使用搜索试试~ 我知道了~
机器人避障数模doc.doc
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 75 浏览量
2023-07-12
21:50:49
上传
评论
收藏 812KB DOC 举报
温馨提示
试读
23页
机器人避障数模doc.doc
资源推荐
资源详情
资源评论
摘要
针对机器人避障问题,本文采用路径优化算法和遗传算法分别讨论了机器人躲避障
碍的最佳路径和最短时间路径的问题,并对结果作了详细阐述。
对于问题 1,求解机器人到达不同地点的最短路径问题,本文采用路径优化算法,
在符合机器人行走约束的条件下建立了路径优化模型,采用穷举法
【2】
,通过 MATLAB
【3】
软件求解出了各种情况下的最优路径,具体结果为
O A®
的最短路径为
471.0372
,具体
路径参见图 1 和表 1,
O B®
的最短路径长度
853.8890
,参见图 2 和表 2,
O C®
的最短
路径长度
1092.825
,参见图 3 和表 3,
O A B C O® ® ® ®
最短路径长度为 2714.3169
参见图 4 和表 4。
对于问题 2,寻找由
O
到达
A
点的最短时间路径,关键在于机器人在由线段和圆弧
构成的曲线上满足行进中机器人的非完整性约束方程,为使机器人获得较大速度,利用
遗传算法对代表路径的曲线控制点进行时间寻优
【5】
,本文给出的遗传算法适应值函数
充分考虑了影响机器人运动时间的 3 个因素:路径的安全性,路径长度与路径平滑度,
最后通过 MATLAB 软件求得从 O 到 A 的最优时间是 88.1796s,具体路径参见图 5。
关键词: 路径规划 优化模型 机器人避障 遗传算法
一、问题重述
图1是一个800×800的平面场景图,在原点O(0, 0)点处有一个机器人,它只能在该平
面场景范围内活动。图中有12个不同形状的区域是机器人不能与之发生碰撞的障碍物,
障碍物的数学描述如下表:
编号
障碍物名称
左下顶点坐标
其它特性描述
1
正方形
(300, 400)
边长200
2
圆形
圆心坐标(550, 450),半径70
3
平行四边形
(360, 240)
底边长140,左上顶点坐标(400, 330)
4
三角形
(280, 100)
上顶点坐标(345, 210),右下顶点坐标(410, 100)
5
正方形
(80, 60)
边长150
6
三角形
(60, 300)
上顶点坐标(150, 435),右下顶点坐标(235, 300)
7
长方形
(0, 470)
长220,宽60
8
平行四边形
(150, 600)
底边长90,左上顶点坐标(180, 680)
9
长方形
(370, 680)
长60,宽120
10
正方形
(540, 600)
边长130
11
正方形
(640, 520)
边长80
12
长方形
(500, 140)
长300,宽60
在图1的平面场景中,障碍物外指定一点为机器人要到达的目标点(要求目标点与
障碍物的距离至少超过10个单位)。规定机器人的行走路径由直线段和圆弧组成,其中
圆弧是机器人转弯路径。机器人不能折线转弯,转弯路径由与直线路径相切的一段圆弧
组成,也可以由两个或多个相切的圆弧路径组成,但每个圆弧的半径最小为10个单位。
为了不与障碍物发生碰撞,同时要求机器人行走线路与障碍物间的最近距离为10个单位,
否则将发生碰撞,若碰撞发生,则机器人无法完成行走。
机器人直线行走的最大速度为
5
0
�v
个单位/秒。机器人转弯时,最大转弯速度为
2
1.010
0
e1
)(
�
�
�
�
��
v
vv
,其中
�
是转弯半径。如果超过该速度,机器人将发生侧
翻,无法完成行走。
请建立机器人从区域中一点到达另一点的避障最短路径和最短时间路径的数学模
型。对场景图中4个点O(0, 0),A(300, 300),B(100, 700),C(700, 640),具体计算:
(1) 机器人从O(0, 0)出发,O→A、O→B、O→C和O→A→B→C→O的最短路径。
(2) 机器人从O (0, 0)出发,到达A的最短时间路径。
注:要给出路径中每段直线段或圆弧的起点和终点坐标、圆弧的圆心坐标以及机器
人行走的总距离和总时间。(图表见附录)
二、问题分析
2.1.问题 1 的分析
通过对问题分析,要求由
O
到其它各个点的的最短路径,因路径不能为折线,而是
由圆弧与线段组成的,经过证明此时半径越小距离越小
【2】
,因此去圆弧所在的圆半径
r
为最小半径 10,则圆弧与线段过度点即是切点,那么建立路径的优化模型,通过切点求
解线段的长度与圆弧的长度,利用优化模型求解
O A®
的最短路径。在求
O B®
时,以
求解
O A®
的距离为基础,将
OB
分解成若干段
OA
,然后利用求解
OA
的优化模型分别
求若干的点之间的距离,最后进行加和得到
O B®
的最短路径,同理,利用上面的优化
模型可以确定
O C®
的最短路径。最后,通过对数据处理,在求时通过对
, ,A B C
在所在
圆弧的圆心进行确定,通过 MATLAB 求得圆心坐标,进而再次利用上述优化模型
【2】
求得
O A B C O® ® ® ®
的距离。
2.2.问题 2 的分析
通过对问题 2 分析,要求得机器人由
O A®
走的最短时间。要求的时间最优解,需
要综合考虑三个因素:路径的安全性,路径的长度,平滑度。路径的安全性决定机器人
能否避障,路径的长度影响时间的长短,平滑度是满足机器人不能折线运行的条件限制。
因此在综合三种因素的情况下,用圆弧与线段组成曲线作为路径描述,满足机器人非完
整性约束方程,并使机器人获得较大运动速度,然后通过遗传算法对曲线控制点进行寻
优,进而得到最短时间的最佳路径。
三、问题假设
(1)假设机器人可以看成抽象的点来处理;
(2)假设机器人行进区域为二维平面;
(3)假设机器人在直线行走时为 5 米每秒;
(4)假设障碍物周围已经设出 10 个单位的安全距离;
(5)假设机器人的速度在第一问中不会超过最大转弯速度,即不会发生侧翻而无法行走
的情况;
(6)假设机器人在由直线到圆弧过渡时时间忽略不计;
四、符号说明
符号
符号说明
L
路径总长度
i
d
第
i
段的切线长度
j
l
第
j
段的圆弧长度
r
转弯半径
k
障碍物上的任一点与行径间的最短距离
0
V
最大速度
V
转弯速度
五、模型的建立与求解
5.1 问题 1 的求解
5.1.1 模型准备
根据拉绳原理
【1】
,起点到目标点无论中间障碍物有多少,最短的路径都应该是由
若干个线圆结构,并且假定机器人在障碍物拐点处都是以最小的转弯半径来前进的。假
设机器人由起点 O 到目标点
0
X
,其路径一定由诸多圆弧和线段组合而成,设含有
m
条
线段,
n
条圆弧,则机器人通过障碍物的最优路径可以用如下的目标函数来表示:
1 1
min
10
10
10
m n
i j
i j
L d l
ST k
r
r
= =
= +
³
ì
ï
= ³
í
ï
³
î
å å
(1)
5.1.2 问题 1 的求解
➢
O A
L
®
的最短路径求解:
由问题 1 的要求知,起始点为 O(0,0),目标点 A 为(300,300),现利用 5.1.中
的模型进行求解,其中障碍物的左上点 B(80,210)为障碍物拐弯时的圆心坐标位置,
设 C
( )
1 1
,x y
和 D
( )
2 2
,x y
分别为机器人经过拐点和危险区拐角小圆弧的切点,小圆的圆心
为 Q
( )
3 3
,x y
, 圆 半 径
r
=10 , OA 长 度 为
a
, OQ 长 度 为
b
, AQ 长 度 为
c
, 角 度
,则问题转化为求解轨迹
O A O C
L L d
® ® ®
= +
)
D A
+L
(2)
的长度。
图 1
O A®
路径情况
根据图 1 可知:
( )
2
2
2 2
3 3
2 2
3 3
(300 0) 300 0
( 0) ( 0)
( 300) ( 300)
a
b x y
c x y
ì
= - + -
ï
ï
= - + -
í
ï
= - + -
ï
î
(3)
在
OQAD
中:
2 2 2
arccos
2
b c a
bc
a
æ ö
+ -
=
ç ÷
è ø
(4)
在
RT OQCD
中:
arccos
r
b
b
=
(5)
arccos
r
c
g
=
(6)
所以:
2
q p a b g
= - - -
(7)
从而可得:
2 2 2 2
L b r c r r
q
= - + - +
(8)
利用 MATLAB 编程求解(详见附录编程 1),可得到结果:
O A®
的最短距离
O A
L
®
=
471.0372,轨迹如图 1 所示。表一为所求结果。
表 1
O A
L
®
最优路径各点坐标
起点坐标
终点坐标
圆弧圆心
坐标
圆弧半径
(r)
机器人行
走总长(L)
, , , .OQA OQC AQD CQD
a b g q
Ð = Ð = Ð = Ð =
线段一
(0,0)
(71,213)
圆弧一
(71,213)
(77,220)
O A®
线段二
(77,220)
(300,300)
(80,210)
10r =
471.0372
➢
O B
L
®
最短路径的求解:
由图 2 可知,起始点 O 为(0,0),目标点 B 为(100,700),
1
C
为(60,300)、
2
C
为(150,435)、
3
C
为(150,600)和
4
C
为(220,530)为四个定点圆,设
5
C
是一个可
以围绕
M
(p,q)点转动的圆环,五个圆的半径均为 r=10,A、D、E、F、G、H、I、J、
K、L 均为其切点。a、b、c、d、e、f 为 OA、DE、FG、HI、JK、LB 的长度。
距 离
O B
L
®
表 示 为 :
O B
L a
®
= +
1
h
( AD 弧 )
2
b h+ +
( EF 弧 )
3
c h+ +
( GH 弧 )
+d
4
h+
(IJ 弧)+e+
5
h
(KL 弧)+f。因为
3
C
的条件未知,采用与求解
O A
L
®
相同的方式求解。
而最有可能成为最短路径的可由图 2 中规律得知,由几何算法求解其路径值,得出最短
路径。
图 2
O B®
可行路径
建立如下模型:小圆心坐标为:
1 3 3
( , )O x y
和
( )
2 4 4
,O x y
。得到:
1 2
4 3
4 3
31
2
O O
y y
K
x x
-
= =
-
(9)
由直线方程得:
( )
1 2
3 3O O
y K x x y= - +
(10)
因为公切线 DE 与
1 2
O O
平行,则 DE 方程表示为:
1 2
3 3
( )
O O
y K x x y C= - + +
(11)
其中:
1 2
2
1
O O
C r K= +
(12)
故先求出
5
C
的坐标。设
5
C
为
( )
0 0
,x y
。
1 1 2 2 1 2 3 3 2
, , , ,OO C OO O OO O OO O O O FÐ Ð Ð Ð Ð
分别
为
( 1, 2,3, 4,5)
i
i
a
=
,
1 2 2 1 2
, , , ,CO D EO F EO M
q q q
Ð Ð Ð 分别为
,可得:
剩余22页未读,继续阅读
资源评论
老帽爬新坡
- 粉丝: 83
- 资源: 2万+
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功