launch文件加载urdf到rviz和gazebo中报错 Invalid <param> tag: Cannot load command parameter [robot_description]

这篇具有很好参考价值的文章主要介绍了launch文件加载urdf到rviz和gazebo中报错 Invalid <param> tag: Cannot load command parameter [robot_description]。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

        在学习赵虚左老师的ros入门教程urdf一章时,使用 launch文件加载urdf到rviz和gazebo中的时候(命令如下)

 roslaunch learning_gazebo demo2_car.launch 

意外出现报错:

RLException: Invalid <param> tag: Cannot load command parameter [robot_description]: command [['/opt/ros/noetic/lib/xacro/xacro', '/home/glc/simulation_ws/src/learning_gazebo/urdf/car_urdf.xacro']] returned with code [2]. 

Param xml is <param name="robot_description" command="$(find xacro)/xacro $(find learning_gazebo)/urdf/car_urdf.xacro"/>
The traceback for the exception was written to the log file

这是我的launch文件,与老师的除了几个名称其他一样

<launch>
    <!-- 在参数服务器中加载urdf -->
    <param name="robot_description" command="$(find xacro)/xacro $(find learning_gazebo)/urdf/car_urdf.xacro" />
    <!-- 启动gazebo 其已经有内置launch文件启动gazebo-->
    <include file="$(find gazebo_ros)/launch/empty_world.launch" />
    <!-- 在gazebo中添加机器人模型 -->
    <node pkg="gazebo_ros" type="spawn_model" name="spawn_model" args="-urdf -model car -param robot_description" />
</launch>

它一直提示标签无效,我以为是拼写错误,但仔细检查了一遍后没找到问题,去网上查找也没找到解决办法。直到我看了别人的博客中的代码,发现ta的command属性第二个参数用“ ‘’ ”引了起来,然后我也引了起来,发现成功了。

修改后的launch文件

<launch>
    <!-- 在参数服务器中加载urdf -->
    <param name="robot_description" command="$(find xacro)/xacro '$(find learning_gazebo)/urdf/car_urdf.xacro'" />
    <!-- 启动gazebo 其已经有内置launch文件启动gazebo-->
    <include file="$(find gazebo_ros)/launch/empty_world.launch" />
    <!-- 在gazebo中添加机器人模型 -->
    <node pkg="gazebo_ros" type="spawn_model" name="spawn_model" args="-urdf -model car -param robot_description" />
</launch>

查了官方文档:

command="$(find pkg-name)/exe '$(find pkg-name)/arg.txt'"(optional)

The output of the command will be read and stored as a string. It is strongly recommended that you use the package-relative $(find)/file.txt syntax to specify file arguments. You should also quote file arguments using single quotes due to XML escaping requirements.

大概是说由于xml文件的转义要求,后面的参数需要用单引号括起来

但为什么老师的没用也能正常运行呢?望大佬解答疑惑。文章来源地址https://www.toymoban.com/news/detail-621298.html

到了这里,关于launch文件加载urdf到rviz和gazebo中报错 Invalid <param> tag: Cannot load command parameter [robot_description]的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • ros2机器人urdf内<gazebo>标签解释(非传感器)(源自sdf文件官网)

    原文链接SDFormat extensions to URDF (the \\\'gazebo\\\' tag) — Documentation 注意了ros2的gazebo部分已经跟ros1的gazebo部分不一样了: Toggle navigation  Specification API Documentation Download Back Edit                  Version: 1.6            Table of Contents SDFormat extensions to URDF (the gazebo tag) gazebo Element

    2024年02月01日
    浏览(46)
  • ROS之rviz文件的加载和保存

    最近将ORB-SLAM3中的 pangolin 可视化功能给搞掉了,换成了基于 rviz 的可视化显示,摆脱程度对 pangolin 库的依赖,为了方便每次在启动时程序自动打开 rviz 可视化界面,需要在第一次运行程序时将 rviz 文件保存下来,然后把 rviz 文件路径写在 launch 文件中,在启动时进行加载。

    2024年02月09日
    浏览(37)
  • Rviz中如何导入自定义障碍物 | 从建模到导出urdf到导入rviz | Ros中如何导入障碍物 | sw2urdf的下载和使用 | MeshLa的下载和使用

    配置: Ubuntu20.04 Solidworks2016 sw2urdf1.5.1(GitHub下载链接) MeshLab(GitHub下载链接) 本文希望在Solidworks中自己完成障碍物建模,并且导入Rviz中,进行机械臂运动的碰撞分析等探索。 |----------------------------------------------------------------------------------------------- 总的来说可以分为: 模型导

    2024年02月15日
    浏览(42)
  • ROS rviz和gazebo联合仿真报错

    运行launch文件后,rviz可以显示模型,但是只能plan不能execute,同时gazebo中没有模型,终端报错很多,如下 一、 Error [parser.cc:406] parse as old deprecated model file failed. 二、 [ERROR] [1672799068.164709, 10.219000]: Spawn service failed. Exiting. 三、 [spawn_gazebo_model-4] process has died [pid 15463, exit code 1,

    2024年02月10日
    浏览(46)
  • 【ROS学习笔记17】ROS常用仿真组件URDF集成Gazebo

    写在前面,本系列笔记参考的是AutoLabor的教程,具体项目地址在 这里 1.1 URDF与Gazebo基本集成流程 URDF 与 Gazebo 集成流程与 Rviz 实现类似,主要步骤如下: 创建功能包,导入依赖项 编写 URDF 或 Xacro 文件 启动 Gazebo 并显示机器人模型 1.创建功能包 创建新功能包,导入依赖包: 2.编

    2024年02月06日
    浏览(43)
  • 【Ubuntu】Docker中配置ROS并可视化Rviz及Gazebo

    由于 ros 常与本地环境冲突,为了不影响大量的本地项目,因此选择在 docker 中搭建 ros 环境,从而与本地环境隔离,但会引入 docker 中无法可视化的问题,而 ros 项目常需要与 rviz 及 gazebo 配合开发,以下提供可视化的解决方案 拉取镜像文件 ros安装是个费时费力费脑且看脸的

    2024年02月06日
    浏览(52)
  • Ubuntu18.04 Turtlebot2机器人移动控制 Rviz Gazebo仿真实现

    操作系统为ubuntu18.04 安装ROS Melodic Turtlebot2,很多大佬分享了详细的安装过程,在这里就不多赘述,安装遇到问题多百度,大部分都是可以解决的。 前期学习了赵虚左老师的ROS入门课程,结合Turtlebot2资料这里方便大家打开,放的创客制造的文档,也推荐大家去看官方文档 首先

    2023年04月25日
    浏览(69)
  • [Vue Router warn]: Discarded invalid param(s) “id“ when navigating. Seexxxxxxxfor more details

     警告信息建议访问的链接 场景: 当我 在vue3 组合式api中尝试使用name+params去路由跳转并传递参数的时候,出现警告信息,并且接收不到params的参数。代码如下: a页面跳转b页面 点击链接查看到更新日志 也就是说,从Vue Router的2022-8-22 这次更新后,我们使用上面的方式在新页

    2024年02月07日
    浏览(50)
  • ROS2下使用TurtleBot3-->SLAM导航(仿真)RVIZ加载不出机器人模型

    在使用台式机进行仿真时,大部分例程很顺利,但在SLAM导航时,在RVIZ中却一直加载不出机器人模型,点击Navigation2 Goal选择目标点进行导航时,无响应。 启动后在RVIZ2和终端看到一个错误 按照官网的指令试了多次,一直无法加载,在网上赵的解决方案都是修改RVIZ里的各种设

    2024年02月09日
    浏览(48)
  • ZYNQ SDK jtag烧录出现错误,Error while launching program: Memory write error at 0xF8000108. Invalid DAP

    之前基于微相的XME0724-10的ZYNQ7010最小系统板画了一个板子。当时烧录正常,隔了几天后发现烧录出现错误,Error while launching program: Memory write error at 0xF8000108. Invalid DAP。首先考虑软件问题,改为仅ps端的hello world 程序,run as 继续出现该问题。考虑是硬件错误,但是在vivado中au

    2024年02月11日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包