玩轉四旋翼無人機(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
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章