首页 > 编程知识 正文

matlab 机械臂轨迹规划代码,matlab中的轨迹预测

时间:2023-05-05 21:42:03 阅读:181808 作者:2851

Matlab的nargin变量是函数的输入参数的数量。 nargout变量是函数输出的个数

跟踪生成函数jtraj ()的代码详细信息:

function [qt,qdt,qddt]=JTraj(Q0,q1,tv,qd0,qd1 ) ]

一般参数: q0输入初期各关节的角度。 q1终点各关节的角度,tv :既可以捕捉时间,也可以捕捉步数。 一般这三个就足够了。 函数将qd0、qd1置零。

输出qt :不同时间内各关节的角度、qdt、角速度、qddt、角加速度。

函数的核心是五次多项式插值。 每个角度的变化轨迹是五次函数。

关于从静止点到静止点的运动,已知约束条件方程式左边的值。 初始点的速度和加速度通常为0。 这意味着:

约束方程的解根据上述初始点和终点的速度,加速度为0。 同时jtraj被规范化了,被规范化为1。 因此,将解简化如下。 现在回头看代码: function [qt,qdt,qddt]=jtraj(t=TV(3360 )/tscal; else tscal=1; t=(0: )/(tv-1 ) ) (/)/(tv-1 ); % normalized time from 0 - 1将时间或步数缩放为[ 0,1 ] endq0=Q0 (: )。 Q1=Q1 ) : if nargin==3 %典型输入参数为3,qd0,qd1集0qd0=Zeros(size ) q0 ); qd1=qd0; ELSEifNargin==5QD0=QD0(: QD1=QD1(: else error (incorrectnumberofarguments ) end %最基本的情况是加速度和速度都为0。 求出以下多项式系数,将加速度设为0,保留速度%的中间运动,速度可以不是0。 tscal一般为1%computethepoopor的B=-15*(Q1-Q0 ) )8*qd0 7*qd1 ) *tscal; c=10*(Q1-Q0 )-)- (6*qd0 4*qd1 ) *tscal; %这里没有d。 d实际上是初始点角加速度的1/2。 由于初始加速度为0,所以d为0 E=qd0*tscal; % asthetvectorhasbeennormalizedf=Q0; %其中通过矩阵运算,汇总计算了各时间的角度。 TT=[ t.^ 5t.^ 4t.^ 3t.^2tones (size (t ) ]; c=[aBCZeros(size ) a ) ) ef ); %系数矩阵,qt=tt*c; %角度% computeoptionalvelocityifnargout=2c=[ zeros (size (a ) ]5* a4 * B3 * c zeros (size ) a ) ) e ); 求出%速度系数的矩阵变为qdt=tt*c/tscal; %跟踪函数的end % computeoptionalaccelerationifnargout==3c=[ zeros (size (a ) ]Zeros(size ) a ) 20*a12*b6*cZeroos 结束

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。