玩转四旋翼无人机(sensor数据融合)

人体的egomotion感知系统

大脑融合来自于本体感知和前庭系统的信息在一起得到自己身体的位置,运动和加速度。

The vestibular system 前庭系统

在大部分哺乳动物中,前庭系统是一个感知系统,该系统在提供平衡感知和空间方向的功能中起主力作用,所获取的这些感知信息用于身体的平衡运动。与耳蜗(耳朵的一部分)一起构成可哺乳动物内耳结构的谜题。

the vestibular system comprises two components: the semicircular canal system, which indicate rotational movements; and the otoliths, which indicate linear accelerations. The vestibular system sends signals primarily to the neural structures that control eye movements, and to the muscles that keep an animal upright. The projections to the former provide the anatomical basis of the vestibulo-ocular reflex, which is required for clear vision; and the projections to the muscles that control posture are necessary to keep an animal upright.

UAV 滤波器

IMU 互补滤波

IMU误差来源:

  • 陀螺仪动态响应特性良好,但是会产生累计误差,其中累计误差主要为低频误差Rc=R+uH
  • 加速度计没有累计误差,但是容易受到振动误差干扰,其中振动误差主要为高频误差R0=R+uL

IMU的互补滤波:
- 陀螺仪*高通滤波器
- 加速度计 * 低通滤波器
- 输出 = 陀螺仪* 高通滤波器 + 加速度计 * 低通滤波器

EKF used in ardupilot code

EKF根绝陀螺仪和加速度计和次罗盘,GPS,气压计测量数据用来估计飞机的位置、速度、角度方向。该代码中的算法实现在AP_NavEKF库中,该算法基于Inertial Navigation Estimation Library

工作流程

  • IMU角速率积分得到角度
  • IMU对重力矫正之后的加速度使用角度从基体座标系转换为北东地座标系
  • 加速度积分得到速度
  • 速度积分得到位置
  • 陀螺仪和加速度噪声的估计值用来估计角度速度和位置误差的增长。这些参数较大是会是的滤波器的估计误差快速增长。如果不适用起亚数据进行矫正,估计的错误会连续增长。估计的误差使用状态方差矩阵表示。EKF用来融合来自于GPS compass, 气压计等传感器的数据,计算得到一个更精确的值。
  • 当GPS数据到来之后,滤波器计算GPS的位置和预测值之间的误差,差值成为’innovation’。
  • innovation,状态方差矩阵以及GPS测量误差(由‘EKF_POSNE_NOISE’指定),三者结合isuanmege滤波器状态的相关度。相关性由状态误差和测量误差的比值度量,如果滤波器认为自己的预测值更加准确就是用,给位置更新时给GPS矫正值更小的权重。如果任务自己计算的位置不太准确就会给GPS矫正值更大的权重。
  • 得到测量值之后,状态的不确定性(状态方差矩阵)会更新。
    前四步是状态预测,。通过状态变量去估计RPY,位置,速度,角度。状态中包括陀螺仪偏置,加速度偏置,风速,磁罗盘偏置。这些偏置在预测阶段不会修改,会在跟新阶段修改。

ethzasl_msf

该ROS package 是一个
Stephan Weiss maintained a wiki.ros page, this page presents their research and publications.
ros
ssf
[wiki ros]http://wiki.ros.org/ethzasl_sensor_fusion/Tutorials/Introductory%20Tutorial%20for%20Multi-Sensor%20Fusion%20Framework)
github

Dependency

  • asctec_mav
  • framework
  • catkin-simple
  • glog_catkin.

refer

  1. http://www.nxp.com/products/sensors/nxp-sensor-fusion:XTRSICSNSTLBOX?tid=vansensorfusion
  2. https://www.zhihu.com/question/31102670
  3. https://en.wikipedia.org/wiki/Proprioception
  4. https://eigen.tuxfamily.org/dox/classEigen_1_1Quaternion.html
  5. https://github.com/ros/common_msgs
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章