1、建立机械臂模型 工作台、货物
clear
close all
clc
L(1)=Link('d', 0.33, 'a',0 , 'alpha', pi/2,'offset',pi);
L(2)=Link('d', 0, 'a', 0.26, 'alpha',0,'offset',pi/2);
L(3)=Link('d', 0, 'a', 0.02, 'alpha',pi/2,'offset',0);
L(4)=Link('d', -0.29, 'a', 0, 'alpha',pi/2,'offset',0);
L(5)=Link('d', 0, 'a', 0, 'alpha',pi/2,'offset',0);
L(6)=Link('d', 0.07, 'a', 0, 'alpha',0,'offset',0);
L(1).qlim=[-170*pi/180 170*pi/180];
L(2).qlim=[-110*pi/180 120*pi/180];
L(3).qlim=[-122*pi/180 280*pi/180];
L(4).qlim=[-190*pi/180 190*pi/180];
L(5).qlim=[-120*pi/180 120*pi/180];
L(6).qlim=[-360*pi/180 360*pi/180];
robot=SerialLink(L,'name' , 'SLR Mate 200iD 机械臂');
robot.display(); %显示建立的机器人的DH参数
robot.teach;
%%
% vertice=[-0.2 -0.25 0.05;-0.2 0.25 0.05;-0.3 0.25 0.05;-0.3 -0.25 0.05;...
% -0.2 -0.25 0.05;-0.2 0.25 0.05;-0.3 0.25 0.05;-0.3 -0.25 0.05];
% face=[1 2 3 4;1 2 6 5;1 4 8 5;2 3 7 6;3 4 8 7];
% patch('Vertices',vertice,'Faces',face,'FaceColor',[0.82 0.71 0.55]);
% %调用方法很简单,第一个参数是长方体的原点,第二个参数是长宽高,输入命令:
PlotCuboid([0.1,-0.75,-0.2],[1,1.5,0.2],5)%定义工作台
% PlotCuboid1([0.1,-2,0.2],[1,3,0.2])%定义运输工具件
gx=0.43;gy=-0.3;gz=0.1;
centerLoc=[gx,gy,gz];
edgeLen=0.2;
thisColor='black';
plot3Cube(centerLoc,edgeLen,thisColor);
view(50,30)
axis equal
2、仿真运动代码
%轨迹规划
%第一机械臂第一段轨迹
robot.plot([0,0,0,0,0,0])%绘制机器人模型
q1=[0,0,0,0,0,0];
T1=transl(gx,gy,gz+0.1)*trotx(pi)%起点
q2=robot.ikunc(T1);
% qt=robot1.fkine(qt1)
% robot1.plot(q1)
[qt1,qt2,qt3]=jtraj(q1,q2,50);%利用五次多项式函数轨迹规划
hold on
robot.plot(qt1, 'trail','-b')
qt=robot.fkine(qt1)
T11=transl(qt);
plot3(T11(:,1),T11(:,2),T11(:,3) ,'-b');%输出末端轨迹
其他运动过程见下载代码
3、仿真运动视频如下:
六轴机械臂搬运仿真(机器人工具箱)
下载咨询链接:matlab正逆运动学分析与轨迹规划]
仿真源代码下载可联系扣扣2386317960