资源简介

这个代码是机器人动力学方程的matlab代码实现,使用拉格朗日方法。
此代码是根据霍伟编著的《机器人动力学与控制》一书中的公式改写的。
参考网址:https://www.jianshu.com/p/6d04539f1cfe
参考网址中提供的代码直接运行存在未定义,此代码可正常运行。

资源截图

代码片段和文件信息

function [HCGtorque] = LagrangianDynamics(dh_list mass_list mass_center_list inertia_tensor_list)

[rows columns] = size(dh_list);
number_of_links = rows;
if columns ~= 4
    error(‘wrong DH parameters!‘)
end

for i = 1:rows
    % 定义关节位置,速度,加速度符号
    eval([‘syms ‘‘q‘num2str(i)‘ real;‘]);%执行 syms qi real;语句 
    eval([‘syms ‘‘dq‘num2str(i)‘ real;‘]);%执行 syms dqi real;语句 
    eval([‘syms ‘‘ddq‘num2str(i)‘ real;‘]);%执行 syms ddqi real;语句 
    eval([‘q(i)=‘‘q‘num2str(i)‘;‘]);
    eval([‘dq(i)=‘‘dq‘num2str(i)‘;‘]);
    eval([‘ddq(i)=‘‘ddq‘num2str(i)‘;‘]);
end

A = sym([]);
for i = 1:number_of_links
    dh = dh_list(i:);
    alpha(i) = dh(1);
    a(i) = dh(2);
    d(i) = dh(3);
    q(i) = dh(4);
    A(::i) = [cos(q(i))   -sin(q(i))*cos(alpha(i

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       2877  2020-01-30 10:53  机器人动力学-拉格朗日方法(matlab)\LagrangianDynamics.m

     文件       1922  2020-01-30 11:20  机器人动力学-拉格朗日方法(matlab)\test.m

     目录          0  2020-01-30 11:58  机器人动力学-拉格朗日方法(matlab)

----------- ---------  ---------- -----  ----

                 4799                    3


评论

共有 条评论