matlab安装成功后,有自带的robotics工具箱,不过还是要另外安装工具箱(参考:https://shaynerain.com/机械臂(1)-机器人工具箱的获取安装/)(如果没安装的运行网上很多matlab代码,都提示类似找不到 ~~~~~`link********)
1.可直接到官网下载http://www.petercorke.com/Robotics_Toolbox.html,可安装9.10版本
2.解压至matlab中的toolbox目录下,然后再添加该工具箱(通过matlab主页/设置路径 /添加要包含的工具包)
不要按照上面的方式安装,不要下载Zip文件,因为使用它感觉缺失很多函数, 1.下载.mltbx文件,(网址:http://petercorke.com/wordpress/toolboxes/robotics-toolbox, download RTB-10.3.1 mltbx format (23.2 MB) in MATLAB toolbox format (.mltbx)); 2. 把matlab当前目录切换到要安装mltbx文件所在目录; 3. 双击安装 ; 4. 然后在home/add-ons/ manger add-ons 可查看到已安装的工具箱
参考:https://blog.csdn.net/dujiahei/article/details/80502972
http://www.manongjc.com/detail/7-dhnofadfkynbwtf.html
如果之前把下载的zip文件放到了toolbox目录下,那请把它删除,并在HOME/set path/ 中移除。
3.在命令输入窗口键入: ver , 发现已经有了robotics toolbox
****命令窗口输入: rtbdemo 即可查看该工具箱的所有demo
4. 安装完成后,就可以简单的运行下面这几行代码了。
下面是一个简单的应用程序:
L1 = Link('d', 0, 'a', 160, 'alpha', -pi/2);
L2 = Link('d', 0, 'a', 580, 'alpha', 0,'offset',-pi/2);
L3 = Link('d', 0, 'a', 200, 'alpha', -pi/2);
L4 = Link('d', 640, 'a', 0, 'alpha', pi/2);
L5 = Link('d', 228, 'a', 0, 'alpha', -pi/2);
L6 = Link('d', 0, 'a', 0, 'alpha', 0);
robot=SerialLink([L1,L2,L3,L4,L5,L6]); %SerialLink 类函数
robot.display(); %Link 类函数
theta=[0 0 0 0 0 0];
robot.plot(theta); %SerialLink 类函数
L1 = Link([0 12.4 0 pi/2 0 -pi/2]);
L2 = Link([0 0 0 -pi/2 0 0]);
L3 = Link([0 15.43 0 pi/2 0 0]);
L4 = Link([0 0 0 -pi/2 0 0]);
L5 = Link([0 15.925 0 pi/2 0 0]);
L6 = Link([0 0 0 -pi/2 0 0]);
%L7 = Link([0 15.0 0 0 0 pi/2]);
% L8 = Link([0 13 0 0 0 0]);
ZJ = SerialLink([L1 L2 L3 L4 L5 L6 ],'name','6自由度机器人');
ZJ.teach(); %可以自由拖动的关节角度
% q0=[0 0 0 0 0 0 0];
% q1 = [3*pi .1745 pi/3 pi/2 .5236 pi/1.5 0];
% ZJ.plot(q0, 'floorlevel',-10);
n = 100000; %点的个数
x=zeros(n,1);
y=zeros(n,1);
z=zeros(n,1);
for i=1:n
q = get_num(-pi,pi,6); %function num = get_num(a,b,n)
%num = a + (b-a)*rand(n,1);
T = fkine(ZJ, q); %获得T阵
x(i) = T(1,4);
y(i) = T(2,4);
z(i) = T(3,4);
end
plot3(x,y,z,'ro','MarkerSize',5) %
xlabel('x')
ylabel('y')
zlabel('z')
grid on