MATLAB Robotics System Toolbox学习(2)----导入urdf文件与机器人逆动力学

本文介绍了如何在MATLAB中利用Robotics System Toolbox导入和处理urdf文件,包括从SolidWorks导出urdf,MATLAB中的导入方法以及机器人动力学的封闭解和数值解。在动力学部分,讨论了牛顿-欧拉方法在求解逆动力学中的应用,并展示了使用不同轨迹规划算法对力/力矩影响的分析。
摘要由CSDN通过智能技术生成

这个算是个开发备忘吧,搞不好以后又忘了呢(笑)。

创建并导入urdf文件

利用solidworks导出urdf文件

其实可以不使用solidworks导出urdf文件,没记错的话,ROS也有Inventor也有导出urdf的插件。如果使用Fusion360的朋友也可以使用GitHub上的一个项目,虽然这个插件有一定的限制,但是也可以导出urdf文件。但是solidworks中装配体的操作是明显好于Fusion360,除了大和难以白嫖正版,solidworks还是挺推荐的。

具体的内容可以参照ROS 用Solidworks插件生成URDF导入Simscape URDF格式
这里主要强调一下几个操作:

  1. 关节的运动限制一定要添加,但是homeconfiguration可能会超出你的关节运动限制,所以还是推荐自己配置configuration。
  2. 最后导出时,要对文件进行重命名,不能用“xxxx.SLDASM”,不能和已有文件夹重名,不要有中文、标点,和变量命名一样就好。

导入urdf文件

MATLAB 中导入urdf文件有两种方式。一是利用SimScape多体工具箱进行导入,导入后可以进入Simulink进行仿真,其格式为:

smimport("xxxx.urdf");

但是,不知道为啥,我死活下不下来,每次在安装35%就报错(摊手,因此就只能用第二种方式。
第二种方式是利用Robotics System工具箱,但是在利用Simulink仿真时没有多体工具箱方便。其格式为:

robot = importrobot("xxx.urdf");

importrobot会返回一个刚体树模型,然后就可以利用Robotics System工具箱中的函数进行进一步操作。

其实还有第三种方式,就是手动导入(笑),这个方式适合自己写程序求封闭解的情况,因为谁都不想算惯性张量矩阵嘛。所以这里以基坐标系为例简单说明一下urdf中有用的参数:

<?xml version="1.0" encoding="utf-8"?>
<!-- This URDF was automatically created by SolidWorks to URDF Exporter! Originally created by Stephen Brawner (brawner@gmail.com) 
     Commit Version: 1.5.1-0-g916b5db  Build Version: 1.5.7152.31018
     For more information, please see http://wiki.ros.org/sw_urdf_exporter -->
<robot
  name="projectsc">
  <link
    name="base_link">
    <inertial>
      <origin
        xyz="-1.29442810636871E-12 -4.50542381180696E-14 -0.0113556220689463"
        rpy="0 0 0" />
      <mass
        value="0.613721030933878" />
      <inertia
        ixx="0.000281205784910106"
        ixy="-1.05466034417193E-15"
        ixz="-1.73668470889167E-14"
        iyy="0.000281205784891428"
        iyz="-1.37615762175481E-14"
        izz="0.000140875891353705" />
    </inertial>
    <visual>
      <origin
        xyz="0 0 0"
        rpy="0 0 0" />
      <geometry>
        <mesh
          filename="package://projectsc/meshes/base_link.STL" />
      </geometry>
      <material
        name="">
        <color
          rgba="0.776470588235294 0.756862745
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值