ros kinetic hector_quadrotor gazebo7.0 调试记录

版本环境

  1. ros kinetic
  2. gazebo 7

资源链接

CSDN上的介绍
ROS quadrotor tutorial
hector quadrotor github

hector_quadrotor安装

按照ROS官方的tutorials,是针对hydro版的ros的。按照CSDN里的介绍,把git的分支改成kinetic即可。

使用wstool从git上下载。

按照CSDN的链接中,安装依赖。但是发现没有要安装的。

编译

  1. 路径要在 hector_quadrotor_tutorial下。不要在catkin_ws下。
  2. catkin_ws/src/CMakeLists.txt 中需要添加
add_compile_options(-std=c++11)

不然有 share_ptrstd::vector等报错,编不过。
3. src/hector_localization/hector_pose_estimation_core/include/input.h(82)

virtual bool hasVariance() const { return variance_; }

返回一个指针,类型却为bool,导致报错。改为:

virtual bool hasVariance() const { return variance_.get(); }

src/hector_localization/hector_pose_estimation_core/src/system/imu_model.cpp(54)

bool GyroModel::init(PoseEstimation& estimator, System &system, State& state)
{
  bias_ = state.addSubState<3,3>(this, system.getName() + "_bias");
  return bias_;
}

同理,编不过。修改之。

编译完成后在tutorials目录下setup.bash

运行仿真

  1. CSDN里的室内仿真跑不起来
  2. ROS tutorial室外仿真可以跑

安装遥控器:

sudo apt-get install ros-kinetic-teleop-twist-keyboard

然后按ROS的tutorial操作。

使能飞行器

ROS tutorial里不一定能用,用这句:

rosservice call /enable_motors true

如果打开多个终端的话,执行上面这个命令的终端一定要先执行过:

source devel/setup.bash

不然找不到这个服务。
使能飞行器后就可以打开键盘控制,遥控飞行器了。

你可能感兴趣的:(移动机器人,ubuntu)