主要内容

在Simulink中用逆运动学跟踪末端执行器轨迹万博1manbetx

使用一个刚体机器人模型,利用Simulink®计算逆运动学。万博1manbetx定义机器人末端执行器的轨迹,并通过点进行循环,以求解跟踪该轨迹的机器人配置。

从URDF(统一的机器人描述格式)文件中导入一个机器人模型RigidBodyTree对象。

机器人= importrobot(“iiwa14.urdf”);机器人。DataFormat =“列”

查看机器人。

Ax = show(机器人);

指定机器人轨迹。这些xyz-坐标在机器人前面画一个n形。

X = 0.5* 0 (1,4)+0.25;Y = 0.25*[-1 -1 1 1];Z = 0.25*[-1 1 -1 1] + 0.75;持有plot3 (x, y, z,“——r”“线宽”2,“父”ax)举行

打开一个执行逆运动学的模型。的xyz在MATLAB®中定义的-坐标转换为齐次变换并按所需输入构成.输出的逆运动学解被反馈为下一个解的初始猜测。这一初始猜测有助于跟踪末端执行器姿态并生成平滑配置。

您可以按回调按钮来重新生成刚才定义的机器人模型和轨迹。

关闭open_system (“sm_ik_trajectory_model.slx”

运行模拟。该模型应生成机器人配置(配置),遵循末端执行器的指定轨迹。

sim卡(“sm_ik_trajectory_model.slx”

遍历机器人配置并显示每个时间步骤的机器人。存储末端执行器位置xyz

图(“可见”“上”);tformIndex = 1;i = 1:10: number (config . data)/7 currConfig = config . data (:,1,i);显示(机器人,currConfig);drawnow xyz(tformIndex,:) = tform2trvec(getTransform(robot,currConfig,“iiwa_link_ee”));tformIndex = tformIndex + 1;结束

将末端执行器的最终轨迹画为一条黑线。图中显示了末端执行器跟踪最初定义的n形(红色虚线)。

图(“可见”“上”)显示(机器人,configs.Data (:, 1));持有plot3 (xyz (: 1), xyz (:, 2), xyz (:, 3),“- k”“线宽”3);plot3 (x, y, z,“——r”“线宽”, 3)

另请参阅

对象

相关的话题