matlab机器人工具箱qlim,Matlab机器人工具箱——动力学
文章目录
前言
本文主要介绍串联机械臂的动力学与控制。机械臂上每一个连杆由前一个连杆的反作用力和力矩支撑,另外它还受自身的重力,以及来自它所支撑的后一个连杆的反作用力和力矩。
正向动力学
正向动力学是已知施加各个关节上电机提供的力/力矩,在此力矩作用下,关节如何运动,求对应各个关节角度、角速度、角加速度。
以Puma560机器人为例,直接在命令行输入代码:
mdl_puma560
即可直接调用工具箱中的Puma560模型,在给定关节坐标(q)、关节速度(qd)和所施加的力矩(Q)的条件下,关节加速度可以用Serial-Link对象的accel方法计算得到:
qdd=p560.accel(q,qd,Q)
该功能也封装在Simulink的Robot模块中,以下为其应用的一个示例,直接在命令行输入:
sl_ztorque
如图1所示,施加给机器人的力矩为0,初始关节角被设定为Robot模块的一个参数,这里为“0角度位姿”。运行该仿真:

r=sim('sl_ztorque');
关节角作为随时间变化的函数被返回到r对象中:
t=r.find('tout');
q=r.find('yout');
我们用动画演示机器人的运动:
p560.plot(q,'trail','b-','movie','r.gif')

可以看到它在重力作用下崩溃,因为没有力矩来对抗重力来保持机器人直立。肩关节和肘关节都会垂下来并来回摆动。
我们还可以绘制出随时间变化的关节角度:
plot(t,q(:,1:3))
title('关节角度曲线');
leg
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
