机器人工具箱在matlab2019上使用报错——解决小记

前言:机器人工具箱在matlab2018中使用的时候没错误,同样的代码在安装有机器人工具箱的matlab2019版本中却出现错误。

代码:

%        theta  d        a        alpha    offset
L1 = Link([0     0           0        -pi/2    0],'standard');
L2 = Link([0     0.19        0.650    0        0],'standard');
L3 = Link([0     0           0        pi/2     0],'standard');
L4 = Link([0     0.600       0        -pi/2    0],'standard');
L5 = Link([0     0           0        pi/2     0],'standard');
L6 = Link([0     0           0        0        0],'standard');
robot=SerialLink([L1 L2 L3 L4 L5 L6],'name','PUMA 762');
% theta=[-pi/2 -pi/2 pi/2 0 0 0];
% view(3)
% robot.plot(theta);
teach(robot);

错误如下:

这是因为matlab2019版本的figure图框在可视化模型的时候应该是以三维的方式显示。所以在figure之前或teach()之前都应加上view(3).如下将上面的注释代码行取消后:

%        theta  d        a        alpha    offset
L1 = Link([0     0           0        -pi/2    0],'standard');
L2 = Link([0     0.19        0.650    0        0],'standard');
L3 = Link([0     0           0        pi/2     0],'standard');
L4 = Link([0     0.600       0        -pi/2    0],'standard');
L5 = Link([0     0           0        pi/2     0],'standard');
L6 = Link([0     0           0        0        0],'standard');
robot=SerialLink([L1 L2 L3 L4 L5 L6],'name','PUMA 762');
theta=[-pi/2 -pi/2 pi/2 0 0 0];
view(3)
robot.plot(theta);
teach(robot);

不报错,显示结果正常。

另外。在附加功能中下载的PUMA_Simulation在运行时也会因为figure图框的原因出错(在matlab2018中不会出错)

报错的时候显示的是:

看报错提示,知道是由于在MATLAB2019中figure图框,即fig_1不为其他控件所共用。所以我在初始化程序中添加了对figure的初始化,使其对其他控件共享。

运行正常:

附:上面的PUMA720是在MATLAB附加功能中的,我只是把GUI界面改成了中文的,并简单添加了些其他功能。

感兴趣的可以关注下—————————地址:https://github.com/xiaosnowqiang/Matlab-for-PUMA-simulation

猜你喜欢

转载自blog.csdn.net/weixin_39090239/article/details/105022806