• 大小: 2KB
    文件类型: .m
    金币: 1
    下载: 0 次
    发布日期: 2021-01-02
  • 语言: Matlab
  • 标签: 运动学  反解  

资源简介

六自由度机器人机械手运动学逆问题反解程序。。。。

资源截图

代码片段和文件信息

function [q2d1q50q31q32q3q41q42q4]=funrobota(n1n2n3o1o2o3m1m2m3a1p1p2p3d0d2d3d4)
%function [q2d1q50q31q32q3]=funrobota(n1n2n3o1o2o3m1m2m3a1p1p2p3d0d2d3d4)
%求解角度q2
[q21]=solve(‘m1+sin(q21)=0‘);
q21=eval(q21);
if -pi/2    q2=q21;
end

%求解距离d1
if abs(q2-pi/2)<0.05
    d11=p3+d4;
    elseif abs(q2+pi/2)<0.05
    d11=p3-d4;
    else
d11=p3-tan(q2)*(a1-p1);
end
if d11    d1=d11;%判断移动距离是否超过有效行程
end
%为求解角度q3先求解角度q5
[q51]=solve(‘cos(q2)*o1-sin(q2)*o3+sin(q51)=0‘‘q51‘);
q51=eval(q51);
q52=pi-q51;
%q53=q51+2*pi;
%q54=q52-2*pi;
if -3*pi/2    q50=q51;
    %q501=q53;
  elseif -3*pi/2    q50=q52;
    %q501=q54;

评论

共有 条评论