没有合适的资源?快使用搜索试试~ 我知道了~
首页基于Matlab Robotics Toolbox的Dobot机械臂运动规划(2)
【基于Matlab Robotics Toolbox的Dobot机械臂运动规划】系列文章是我在学习robotics toolbox中所做工作的记录,方便自己后面复习、改进。 基于Matlab R2018b 9.5; Peter Corke的Robotics Toolbox 10.3.1 (2)主要介绍了基于App Designer做图形界面、用joystick实现手柄与Matlab通讯。 1.图形界面 1.1正运动学部分 Matlab宣称将来会取消guide,以后仅保留app designer。所以我选择使用app designer做一个图形界面。 首先做正运动学部分。 在设计视图里把组件拖
资源详情
资源评论
资源推荐

基于基于Matlab Robotics Toolbox的的Dobot机械臂运动规划(机械臂运动规划(2))
【基于Matlab Robotics Toolbox的Dobot机械臂运动规划】系列文章是我在学习robotics toolbox中所做工作的记录,方便自己后面复习、改进。
基于Matlab R2018b 9.5; Peter Corke的Robotics Toolbox 10.3.1
(2)主要介绍了基于App Designer做图形界面、用joystick实现手柄与Matlab通讯。
1.图形界面图形界面
1.1正运动学部分正运动学部分
Matlab宣称将来会取消guide,以后仅保留app designer。所以我选择使用app designer做一个图形界面。
首先做正运动学部分。
在设计视图里把组件拖入画布后,进入代码视图。右键选择组件浏览器里面的app.UIFigure,创建一个StartupFcn回调,这里我命名为mainFcn。
%定义连杆%
% theta d a alpha
L1 = Link([0 138 0 pi/2]);
L2 = Link([0 0 135 0]);
L3 = Link([0 0 147 0]);
%定义关节角范围%
L1.qlim = [deg2rad(-90) deg2rad(90)];
L2.qlim = [deg2rad(0) deg2rad(85)];
L3.qlim = [deg2rad(-90) deg2rad(10)];
L = [L1 L2 L3];
%连接连杆%
dobot = SerialLink(L,'name','Dobot');
%用num2str显示滑块值%
app.theta1.Text = num2str(app.Slider1.Value);
app.theta2.Text = num2str(app.Slider2.Value);
app.theta3.Text = num2str(app.Slider3.Value);
%滑块值转换为弧度%
T1 = deg2rad(app.Slider1.Value);
T2 = deg2rad(app.Slider2.Value);
T3 = deg2rad(app.Slider3.Value);
T = [T1 T2 T3];
%显示机器人%
dobot.plot(T,'tilesize',300)
%正运动学求解并显示%
f = dobot.fkine(T);
app.Labelx.Text = num2str(f.t(1));
app.Labely.Text = num2str(f.t(2));
app.Labelz.Text = num2str(f.t(3));
在设计视图中添加slider时,我手动设置了slider的limits,使其与关节角范围一致。
然后右键选择app.Slider1,创建一个ValueChanged回调。
当slider的值发生变化,就重新进入main函数。
runStartupFcn(app, @mainFcn)
Slider2、Slider3采取同样的操作。















安全验证
文档复制为VIP权益,开通VIP直接复制

评论0