ROS入门教程(七) 您所在的位置:网站首页 urdf文件用什么打开 ROS入门教程(七)

ROS入门教程(七)

2024-02-06 01:48| 来源: 网络整理| 查看: 265

通过Gazebo仿真和RViz仿真的学习后,本文将通过Gazebo与RViz联合仿真实现机器人在Gazebo仿真环境中运动。

目录

前言

URDF文件改写

Gazebo与RViz联合仿真

前言

机器人操作系统(ROS)提供了Gazebo与RViz两个仿真环境其各有各的用处,Gazebo多用于仿真环境的搭建如房间、马路等, RViz多用于传感器的配置如摄像头、激光雷达等。

URDF文件改写

URDF 文件是一个标准的 XML 文件,在 ROS 中预定义了一系列的标签用于描述机器人模型,主要包含以下部分:

< robot> 根标签< link > 连杆标签< joint > 关节标签< gazebo > 仿真标签

其中< gazebo >仿真标签是联合仿真所必须的,接下来将参考Gazebo Sim官方文档来配置二轮差速机器人运动控制器(Controller)以改写URDF文件适用于Gazebo与RViz联合仿真。

step1.新建xacro文件

在urdf文件夹中新建文件controller.xaro并输入:【Ctrl+S保存】

transmission_interface/SimpleTransmission hardware_interface/VelocityJointInterface hardware_interface/VelocityJointInterface 1 Debug true / 1 true true 100.0 true left_wheel_joint right_wheel_joint 0.277 0.073 1 30 1.8 cmd_vel odom odom base_footprint

其中驱动装置关节即车体与车轮的关节标签left(right)_wheel_joint,URDF官方文档解释了关节标签的含义如下图所示,本文的left(right)_wheel_joint的Parent为车体连杆标签base_link而Child为车轮连杆标签left(right)_wheel_link,读者可细细体会:

step2.xacro转urdf

在urdf文件夹中打开集成终端,如下所示:

 在集成终端中输入:

rosrun xacro xacro controller.xacro > controller.urdf

step3.合并urdf文件

将导出的controller.urdf中第七行至倒数第二行复制粘贴到irobot.urdf的倒数第二行中:

 这样我们在irobot.urdf文件中添加了仿真标签。

Gazebo与RViz联合仿真 step1.编写gazebo.launch step2.编写rviz.launch step3.分别运行两个launch文件

终端一输入:

source ./devel/setup.bash roslaunch irobot gazebo.launch

终端二输入:

source ./devel/setup.bash roslaunch irobot rviz.launch

 RViz环境配置参考ROS入门教程(五)—— RViz仿真如下所示:

 最终结果如下:

step4.发布消息

按Ctrl+Alt+T打开终端输入:

rostopic pub -r 10 /cmd_vel geometry_msgs/Twist "linear: x: 1.0 y: 0.0 z: 0.0 angular: x: 0.0 y: 0.0 z: 1.0"

该代码段的旨在10HZ 的频率循环发送运动信息至订阅者,成功结果如下:

Gazebo与RViz联合仿真

文章预告:ROS入门教程(八)—— 传感器

资料来源:奥特学院(Autolabor) 商业转载请联系官方授权,非商业转载请注明出处



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

      专题文章
        CopyRight 2018-2019 实验室设备网 版权所有