笛卡尔空间下的轨迹规划,分为直线轨迹规划和圆弧轨迹规划,本文为笛卡尔空间下圆弧插值法的matlab仿真分析
注:在MATLAB中安装机器人工具箱
本次仿真选用ur5e机械臂,具体参数如下
1.Link函数
用于定义六轴机器人的轴。
包含了机器人的运动学参数、动力学参数、刚体惯性矩参数、电机和传动参数;
可采用DH法建立模型,其中包含参数:关节转角,关节距离,连杆长度,连杆转角,关节类型(0转动,1移动)。
L(1) = Link([theta1, D1, A1, alpha1, offset1], 'standard');
L(2) = Link([theta2, D2, A2, alpha2, offset2], 'standard');
L(3) = Link([theta3, D3, A3, alpha3, offset3], 'standard');
L(4) = Link([theta4, D4, A4, alpha4, offset4], 'standard');
L(5) = Link([theta5, D5, A5, alpha5, offset5], 'standard');
L(6) = Link([theta6, D6, A6, alpha6, offset6], 'standard');
2.fkine正解函数、ikine逆解函数
theta = [0.1,0,0,0,0,0]; %指定的关节角
p=robot2.fkine(theta2) %fkine正解函数,根据关节角theta,求解出末端位姿p
q=ikine(robot2,p) %ikine逆解函数,根据末端位姿p,求解出关节角q
3.jtraj
T1=transl(0.5,0,0); %根据给定起始点,得到起始点位姿
T2=transl(0,0.5,0); %根据给定终止点,得到终止点位姿
init_ang=robot2.ikine(T1);%根据起始点位姿,得到起始点关节角
targ_ang=robot2.ikine(T2);%根据终止点位姿,得到终止点关节角
step = 20;
[q ,qd, qdd]=jtraj(init_ang,targ_ang,step); %五次多项式轨迹,得到关节角度,角速度,角加速度,50为采样点个数
4.ctraj
已知初始和终止的末端关节位姿,利用匀加速、匀减速运动来规划轨迹。
T0 = robot2.fkine(init_ang);%运动学正解
T1 = robot2.fkine(targ_ang);%运动学正解
Tc = ctraj(T0,T1,step); %得到每一步的T阵
tt = transl(Tc);
想要全部代码可以私信我