0
点赞
收藏
分享

微信扫一扫

ROS的3D建模与仿真


1、实验目的及要求

掌握 ROS 中 3D 模型(URDF)的创建方法。

2、实验器材

PC 机、ROS 系统(ubuntu18.04+ROS melodic)

3、内容与步骤

建立一个简单的移动机器人小车,过程中尽量使用简单的元素:移动机器人小车的底盘 抽象为一个圆柱体,同时使用圆柱代替车轮。

3.1 创建机器人建模的功能包

进入工作空间的 src 文件下,运行:

catkin_create_pkg mbot_description urdf xacro

或者vscode新建package

如下图:

ROS的3D建模与仿真_启动文件

添加依赖:

ROS的3D建模与仿真_工作空间_02

3.2 建立文件夹

创建四个文件夹,如图 3.1 所示。

如下图:

ROS的3D建模与仿真_工作空间_03

或:

mkdir config launch meshs urdf

如下图:

ROS的3D建模与仿真_移动机器人_04

3.3 创建启动文件

在launch文件夹下创建mbot_base_start.launch文件

内容如下图:

ROS的3D建模与仿真_启动文件_05

或用命令行创建:

gedit mbot_base_start.launch

如下图:

ROS的3D建模与仿真_工作空间_06

3.4 创建 urdf 模型

3.4.1 创建小车底盘

在 urdf 文件夹中创建 mbot_base.urdf

内容如下图所示:

ROS的3D建模与仿真_工作空间_07

3.4.2 效果显示

执行刚写的 launch 文件:

roslaunch mbot_description mbot_base_start.launch

结果出现如下错误:

ROS的3D建模与仿真_启动文件_08

运行命令:

sudo apt-get install ros-melodic-joint-state-publisher-gui

ROS的3D建模与仿真_工作空间_09

解决问题,继续运行launch文件:

如下图所示,但是有点问题,就是颜色和base_link没有出来,那么我们查看link关系:

ROS的3D建模与仿真_工作空间_10

查看link关系树:

urdf_to_graphiz mbot_base.urdf

ROS的3D建模与仿真_工作空间_11

重新运行launch命令载入urdf文件:

roslaunch mbot_description mbot_base_start.launch

成功载入!

ROS的3D建模与仿真_启动文件_12

3.4.3 创建左侧车轮

在 base_link 下继续添加:

ROS的3D建模与仿真_移动机器人_13

base_link 与 left_wheel_link 中间加入 joint :left_wheel_join 类型是 continuous 无限旋 转。

ROS的3D建模与仿真_工作空间_14

左轮添加完成,再次运行 launch 文件,可以看下效果,如图所示:

ROS的3D建模与仿真_移动机器人_15

3.4.4 创建右侧车轮(该部分自己完成) 

和左轮类似,有的参数镜像即可:joint 处 y 轴与左轮相反。

如下图所示:

ROS的3D建模与仿真_启动文件_16

ROS的3D建模与仿真_启动文件_17

3.4.5 创建前后支撑轮 

前后支撑轮如图所示。

ROS的3D建模与仿真_移动机器人_18

ROS的3D建模与仿真_启动文件_19

下方为添加编码:

ROS的3D建模与仿真_工作空间_20

ROS的3D建模与仿真_启动文件_21

3.4.6 检查 URDF 模型整体结构

在 urdf 文件夹下执行 urdf_to_graphiz+要检查的 urdf 文件。

 $ urdf_to_graphiz mbot_base.urdf

会在当前路径下创建一个 pdf 文件,如图 所示。

ROS的3D建模与仿真_启动文件_22

ROS的3D建模与仿真_工作空间_23

3.5 增加传感器 

以激光雷达为例:

ROS的3D建模与仿真_启动文件_24

注:可在之前创建的 urdf 中直接添加代码运行:

ROS的3D建模与仿真_启动文件_25

举报

相关推荐

0 条评论