solidworks宏_solidworks导出URDF模型,转换xacro模型,并在rviz 和 gazebo中显示并控制

版本:

ros:Kinetic

solidworks:2016

一 使用solidworks2016导出URDF模型

使用sw2urdfSetup插件将机器人模型导出为URDF文件,插件下载地址:

ros/solidworks_urdf_exporter​github.com
solidworks宏_solidworks导出URDF模型,转换xacro模型,并在rviz 和 gazebo中显示并控制_第1张图片

   导出教程:

SolidWorks模型导出urdf (古月居老师)_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili​www.bilibili.com
solidworks宏_solidworks导出URDF模型,转换xacro模型,并在rviz 和 gazebo中显示并控制_第2张图片

导出的是轮椅模型可以参考经典的差速模型,前面两个驱动轮,后面两个随动轮,以及一个激光雷达,需要手动设置坐标系和参考轴,joint模式选择continues.

solidworks宏_solidworks导出URDF模型,转换xacro模型,并在rviz 和 gazebo中显示并控制_第3张图片

导出之后生成的再rviz中显示的display.launch和gazebo.launch文件.

display.launch


  
      
  
  
      
  
  

gazebo.launch


  
     
  
  

运行gazebo.launch会出现轮椅从空中掉下来的现象,原因有两种可能: 1 base_footprint(base_link在地面的投影)并没有设置,不知道为什么这里的gazebo.launch直接使用了; 2 没有添加controller;

个人感觉第二种可能性比较大.

URDF

二 修改为xacro文件

修改思路: 添加 base_footprint 作为base_link的parent link, 在gazebo运行的xacro文件中加入gazebo_ros_controller,将轮椅本体和激光雷达进行宏定义.

修改后的轮椅结构:

solidworks宏_solidworks导出URDF模型,转换xacro模型,并在rviz 和 gazebo中显示并控制_第4张图片

1. 在rviz 中试用的xacro文件

轮椅主体:smartwheelchair_base.xacro,跟之前没有太大变化,加入了base_footprint和宏定义.

smartwheelchair_base.xacro

雷达 lidar.xacro

你可能感兴趣的:(solidworks宏)