蓝桥ROS课程版本不匹配和功能包缺失报错解决

在课程实践中遇到不同版本ROS功能包存在的小bug,导致控制器管理器报错。通过手动编译controller_manager功能包并修正urdf_tutorial为urdf_sim_tutorial,消除了错误提示,但机器人仍无法启动。尝试进一步修改后,问题仍未解决,留下WARN提示,机器人依然不能动起来。这是一个复杂且耗时的过程,需要后续继续排查和修复。
摘要由CSDN通过智能技术生成

课程授课是发现不同版本ROS功能包会有一些小bug:

比如

报错信息类似:

 课程中已经详细讲解,需要配置,成功后如下:


关于功能包缺失,使用更新方式无法成功,毕竟云系统为了安全性锁定的hosts。

 

 

 

这时候需要手动编译功能包:

  • controller_manager

 

放入到缺失文件的功能包工作空间中,然后进行编译。

 

首先确保有这些文件。

使用unzip解压。

由于功能包存在相互依赖关系,src需要文件如下:

 

 

使用control

 

出现:

 

修改urdf_tutorial为urdf_sim_tutorial。

<launch>

  <arg name="model" default="$(find urdf_tutorial)/urdf/r2d2.xacro"/>
  <arg name="rvizconfig" default="$(find urdf_tutorial)/urdf.rviz" />

  <include file="$(find urdf_sim_tutorial)/launch/gazebo.launch">
    <arg name="model" value="$(arg model)" />
  </include>

  <node name="rviz" pkg="rviz" type="rviz" args="-d $(arg rvizconfig)" />

  <!-- This param file is where any environment-agnostic (live or simulation)
  configuration should be loaded, including controllers -->
  <rosparam command="load" file="$(find urdf_sim_tutorial)/config/control.yaml" />

  <!-- This node loads the two controllers into a controller manager (real or simulated). The
  controllers are defined in config/control.yaml -->
  <node name="r2d2_controller_spawner" pkg="controller_manager" type="spawner"
    args="r2d2_joint_state_controller
          r2d2_diff_drive_controller
          r2d2_head_controller
          r2d2_gripper_controller
          --shutdown-timeout 3"/>

  <node name="rqt_robot_steering" pkg="rqt_robot_steering" type="rqt_robot_steering">

    <param name="default_topic" value="/r2d2_diff_drive_controller/cmd_vel"/>
  </node>

</launch>

 

 

报错消失,机器人能否动起来。

 

 并没有动起来。

多了一个WARN。

果然很麻烦啊。

接着修改:

最终还是不行。

留作后续修订。

只解决了[ERROR],但是机器人还是不能动。

 

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zhangrelay

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值