如何运行husky simulation的demo

最近使用ROS的时候,有个大佬给我推荐了ClearPath公司的Husky机器人的GPS路径跟踪包,具体内容我还没开始看,现在只是光想运行一下demo。
https://www.clearpathrobotics.com/assets/guides/husky/HuskyGPSWaypointNav
()

安装demo

首先我们按照官网的教程安装好demo,我的ubuntu是16.04的,不确定melodic的ROS能否使用,但是能够确定的是indigo到kinetic版本的ROS可以安装使用。

1.我们需要先安装好需要的依赖

(把indigo替换为你对应的ROS版本)

sudo apt-get install ros-indigo-gazebo-*

sudo apt-get install ros-indigo-husky-*

sudo apt-get install ros-indigo-robot-localization

sudo apt-get install ros-indigo-move-base

2.下载husky的程序包

cd ~/catkin_ws/src

git clone https://github.com/nickcharron/waypoint_nav.git

3.编译

cd ..

catkin_make

以上三步我没有出现任何问题,很开心,这个公司的开源代码是能够直接编译通过的

4.运行demo

官网上的tutorial告诉我们要先跑一次simulation,仿真用了gazebo和rviz相结合,这里提醒,最好不要使用虚拟机运行gazebo。
但是我在这里就是用了虚拟机,我就来讲一讲遇到的问题。
首先,运行

roslaunch outdoor_waypoint_nav outdoor_waypoint_nav_sim.launch

然后我们就会看到这样的错误:
(虽然我第一次遇到的错误不是这个,但是后来由于莫名其妙的原因解决了,也无法还原了,我第一次遇到了一个参数为空’'的问题)

在这里插入图片描述
关键信息是这一条Undefined substitution argument urdf_extras None,这是由于husky.urdf.xacro这个文件缺少参数导致的
我们发现启动所有robot_description相关的内容都写在spawn_husky.launch里,所以去修改这个文件,查了很多资料发现只需要在如图位置中加入--inorder即可解决问题(我不知道原因)

在这里插入图片描述

完事之后再次运行,你可能会看到如下报错:
在这里插入图片描述
关键问题是这一条:unknown macro name: xacro:husky_robot None None
无意义的宏定义
经过我的排查,发现在custom_description.urdf.xacro文件中,有一句莫名其妙的对于husky_robot的定义,我无法理解这一句的作用,于是把他删除了

在这里插入图片描述<xacro:husky_robot />这一条残缺的定义导致demo无法运行,删除这一句。

再次运行,我们发现已经可以跑通了,虽然还是有一点问题
在这里插入图片描述
我们可以看到关于gazebo的运动插件的问题GazeboRosControlPlugin missing <legacyModeNS> while using DefaultRobotHWSim, defaults to true.当然它已经直接给出了解决方法
具体方法,我们也可以参考这一片博文https://blog.csdn.net/reset_ost/article/details/94994202
接下来,我又找到了custom_description.gazebo.xacro文件,发现其中也有一个运动插件以及一个无意义的宏定义,于是决定删除它
在这里插入图片描述

5.针对虚拟机的优化

虚拟机出现的问题主要还是内存和CPU顶不住
Segmentation Fault就是虚拟机导致的问题的专属标志,具体的解决方法可以参考这两片博文:
Segmentation Fault错误原因总结
虚拟机运行Gazebo问题修复

以上问题 可能 一定并非全部问题,我还有一个没有PID参数的问题没有解决,如果大家还遇到什么问题可以一起交流讨论

  • 4
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值