项目简介
本项目是基于ROS(Robot Operating System)的开源项目,拥有一组简单易实现的估计器,用于补充无人机的高级控制和导航。主要提供X/Y速度估计以及Z速度和高度估计功能,并且能够与ROSFlight等飞行控制器集成。
项目的主要特性和功能
- 多维度估计:提供X/Y速度、Z速度和高度估计,为无人机高级控制与导航提供支持。
- 飞行控制器适配:可与ROSFlight飞行控制平台集成,也能修改适配其他提供实时姿态估计和控制的飞行控制器。
- 多传感器支持:X/Y速度估计器融合姿态估计、ROSFlight IMU传感器数据以及RGBD相机图像;Z速度和高度估计器融合ROSFlight姿态估计和声波高度计数据,无相应传感器时可用运动捕捉数据替代。
- 卡尔曼滤波算法:基于标准卡尔曼滤波器实现,XYEstimator类具备扩展卡尔曼滤波器(EKF)功能。
- 数据管理与处理:通过SensorManager类管理传感器和运动捕捉回调,XYZEstimator类处理数据流动、异常值剔除以及传播/更新事件。
安装使用步骤
安装前提
- 按照指南安装ROS Kinetic环境:ROS Kinetic
- 安装ROSFlight包:ROSFlight
- 安装REEF_msgs包:REEF_msgs
依赖项
html
roscpp
rospy
geometry_msgs
rosflight_msgs
sensor_msgs
std_msgs
tf2_eigen
tf_conversions
reef_msgs
安装
cd catkin_ws/src
git clone http://192.168.1.101/AVL-Summer-18/reef_estimator
cd ../ && catkin_make
使用
将REEF Estimator作为节点,使用ROS启动文件执行,示例如下:
xml
<node name="reef_estimator" pkg="reef_estimator" type="reef_estimator" output="screen"/>
需在reef_estimator/params
文件夹中创建xy_est_params.yaml
和z_est_params.yaml
两个文件,分别设置X/Y和Z滤波器矩阵的参数。
示例启动文件节点声明:
```xml
enable_mocap_switch: true
mocap_override_channel: 4
debug_mode: true
</rosparam>
```
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】