生活随笔
收集整理的這篇文章主要介紹了
MATLAB Robotic Toolbox 机器人工具箱示例
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
程序是基于Matlab2016a,工具箱版本為Robotic Toolbox 10.2
參考博客:
MATLAB機器人工具箱使用
Matlab Robotic Toolbox V9.10工具箱(三):軌跡規劃
六軸機器人建模方法、正逆解、軌跡規劃實例與Matalb Robotic Toolbox 的實現
效果:
代碼:
clear
;
clc
;
% 建立連桿系
L1
=Link([0 12.4 0 pi
/2 0 -pi
/2 ]);
L2
=Link([0 0 0 -pi
/2 ]);
L3
=Link([0 15.43 0 pi
/2 ]);
L4
=Link([0 0 0 -pi
/2 0 0 ]);
L5
=Link([0 15.925 0 pi
/2 ]);
L6
=Link([0 0 0 -pi
/2 ]);
L7
=Link([0 15.0 0 0 0 pi
/2 ]);% 機器人模型對象建立
Rbt
=SerialLink([L1 L2 L3 L4 L5 L6 L7
]);% 6軌跡點的關節變量值
q0
=[0 0 0 0 0 0 0];
qsq1
=[0.46088 0.37699 0 1.31 0 1.4451 0];
qsq2
=[.81681 0.56549 0 1.0681 0 1.2566 0 ];
qsq3
=[2.36 0.69115 0 0.848 0 1.4451 0 ];
qsq4
=[2.66 0.37699 0 1.31 0 1.4451 0];
qsq5
=[pi
/2 0.62831 0 1.5708 0 0.94249 0];
qsq6
=[0 0.62831 0 1.5708 0 0.94249 0];% 軌跡點規劃 五次多項式來規劃軌跡
t
=0:.04:1;
sqtraj1
=jtraj(q0
,qsq1
,t
);
sqtraj2
=jtraj(qsq1
,qsq2
,t
);
sqtraj3
=jtraj(qsq2
,qsq3
,t
);
sqtraj4
=jtraj(qsq3
,qsq4
,t
);
sqtraj5
=jtraj(qsq4
,qsq1
,t
);
sqtraj6
=jtraj(qsq1
,q0
,t
);
sqtraj7
=jtraj(q0
,qsq6
,t
);
hold on
%變量初始化
atj
=zeros(4,4);
view(-35,40)
xlim([-40,40])
ylim([-40,40])
zlim([0,60])% 繪制第
1段軌跡線
for i
=1:1:length(t
)atj
=Rbt
.fkine(sqtraj1(i
,:));JTA(i
,:)=transl(atj
); % 提取位姿矩陣的平移分量(
3元素列向量)儲存進JTA向量數組jta
=JTA
; plot2(jta(i
,:),'r.') % 繪制軌跡點(紅色點)Rbt
.plot(sqtraj1(i
,:)) % 繪制軌跡動畫
plot2(JTA
,'b') % 繪制軌跡線(藍色線)
end
% 繪制第
2段軌跡線
for i
=1:1:length(t
)atj2
=Rbt
.fkine(sqtraj2(i
,:));JTA2(i
,:)=transl(atj2
);jta2
=JTA2
;plot2(jta2(i
,:),'r.')Rbt
.plot(sqtraj2(i
,:))plot2(JTA2
,'b')
end
% 繪制第
3段軌跡線
for i
=1:1:length(t
)atj3
=Rbt
.fkine(sqtraj3(i
,:));JTA3(i
,:)=transl(atj3
);jta3
=JTA3
;plot2(jta3(i
,:),'r.')Rbt
.plot(sqtraj3(i
,:))plot2(JTA3
,'b')
end
% 繪制第
4段軌跡線
for i
=1:1:length(t
)atj4
=Rbt
.fkine(sqtraj4(i
,:));JTA4(i
,:)=transl(atj4
);jta4
=JTA4
;plot2(jta4(i
,:),'r.')Rbt
.plot(sqtraj4(i
,:))plot2(JTA4
,'b')
end
% 繪制第
5段軌跡線
for i
=1:1:length(t
)atj5
=Rbt
.fkine(sqtraj5(i
,:));JTA5(i
,:)=transl(atj5
);jta5
=JTA5
;plot2(jta5(i
,:),'r.')Rbt
.plot(sqtraj5(i
,:))plot2(JTA5
,'b')
end
% 繪制第
6段軌跡線
for i
=1:1:length(t
)atj6
=Rbt
.fkine(sqtraj6(i
,:));JTA6(i
,:)=transl(atj6
);jta6
=JTA6
;plot2(jta6(i
,:),'r.')Rbt
.plot(sqtraj6(i
,:))plot2(JTA6
,'b')
end
% 繪制第
7段軌跡線
for i
=1:1:length(t
)atj7
=Rbt
.fkine(sqtraj7(i
,:));JTA7(i
,:)=transl(atj7
);jta7
=JTA7
;plot2(jta7(i
,:),'r.')Rbt
.plot(sqtraj7(i
,:))plot2(JTA7
,'b')
end
總結
以上是生活随笔為你收集整理的MATLAB Robotic Toolbox 机器人工具箱示例的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。