轨迹规划作业

本文介绍了MATLAB中进行轨迹规划的方法,包括三次多项式、五次多项式路径规划,以及三段二次函数和梯形速度分布。此外,还探讨了最小时间法下的七段S形速度曲线设计,内含子函数和测试函数的实现,适用于机器人轨迹规划。
摘要由CSDN通过智能技术生成
已知 q 0 =10 o q f =90 o v 0 = 0 v f = 0
求:1)用三次多项式规划轨迹
2)增加加速度约束 a 0 = 0 a f = 0 用五次多项式规划轨迹
3)增加约束 v max =10, a max =1,用三段二次函数规划轨迹
4)增加约束 j max =0.1,用最小时间法规划轨迹
画出关节位置、速度和加速度随时间的变化函数曲线。

三次多项式

参考:MATLAB机械臂轨迹规划:在关节空间中生成多项式轨迹以及 jtraj函数(内容超详细讲解)_matlab多点轨迹规划_Onino_plus的博客-CSDN博客

%  https://blog.csdn.net/qq_40969179/article/details/124841559
%% a)三次项多项式
clear;close all;clc;
figure('name','三次多项式');
q3_s = 10; q3_f = 90;%;起始点start角度值为10,终止点final角度值为90
t3_s=0; t3_f = 1;%;整个运动时间t=1s
v3_s = 0;v3_f = 0;%已知起始点和终止点的角速度为0
%计算系数
a0_3 = q3_s;
a1_3 = 0;
a2_3 = (3/t3_f^2)*(q3_f - q3_s);
a3_3 = (-2/t3_f^3)*(q3_f - q3_s);
j = 1;
for tc = 0: 0.01: 1
   q_3(j) = a0_3 + a1_3*tc + a2_3*tc^2 + a3_3*tc^3; %角度变化函数
   qd_3(j) = a1_3 + 2*a2_3*tc + 3*a3_3*tc^2;%角速度
   qdd_3(j) = 2*a2_3 + 6*a3_3*tc;%角加速度
   qddd_3(j) = 6*a3_3;%加速度变化率
   j = j + 1;
end
subplot(4,1,1),plot([0:0.01:1], q_3,'r'),xlabel('时间(t)'),ylabel('角度(°)');grid on;
subplot(4,1,2),plot([0:0.01:1], qd_3,'b'),xlabel('时间(t)'),ylabel('速度(°/s)');grid on;
subplot(4,1,3),plot([0:0.01:1], qdd_3,'g'),xlabel('时间(t)'),ylabel('加速度(°/s^2)');grid on;
subplot(4,1,4),plot([0:0.01:1], qddd_3,'k'),xlabel('时间(t)'),ylabel('加速度变化率');grid on;

五次多项式

参考:MATLAB机械臂轨迹规划:在关节空间中生成多项式轨迹以及 jtraj函数(内容超详细讲解)_matlab多点轨迹规划_Onino_plus的博客-CSDN博客

%% b五次多项式
figure('name','五次多项式');
a_array1 = 0;a_array2 = 0;%起止加速度值
t_array1=0;t_array2=1;%起止时间值
q5_s=10;q5_f=90;%起止角度值
v_array1=0;v_array2=0;%起止速度值

T=t_array2-t_array1;
a0=q5_s;
a1=v_array1;
a2=a_array1/2;
a3=(20*q5_f-20*q5_s-(8*v_array2+12*v_array1)*T-(3*a_array1-a_array2)*T^2)/(2*T^3);
a4=(30*q5_s-30*q5_f+(14*v_array2+16*v_array1)*T&
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值