Skip to content

Commit

Permalink
4.6:extnav-optiflow-transitions
Browse files Browse the repository at this point in the history
  • Loading branch information
Hwurzburg committed Nov 13, 2024
1 parent 0a37e27 commit 3898ec0
Show file tree
Hide file tree
Showing 5 changed files with 37 additions and 0 deletions.
3 changes: 3 additions & 0 deletions blimp/source/docs/getting-started.rst
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,8 @@ For indoor use, please see :ref:`the non-GPS options. <common-non-gps-navigation
.. image:: ../../../images/GPS_TopAndSide.jpg
:target: ../_images/GPS_TopAndSide.jpg

:ref:`common-ekf-sources` may be of interest also


LiPo Batteries and Charger
==========================
Expand Down Expand Up @@ -121,3 +123,4 @@ For control and propulsion, the Flapping Fin Blimp uses micro servos, such as`th
common-non-gps-navigation-landing-page
common-rc-systems
common-telemetry-landingpage
common-ekf-sources
20 changes: 20 additions & 0 deletions common/source/docs/common-ekf-sources.rst
Original file line number Diff line number Diff line change
Expand Up @@ -48,3 +48,23 @@ There is an option to fuse all sources of velocity into the EKF. This will take

.. warning:: When using this option, users should ensure that the velocity measurements being provided to the EKF are both in the same reference frame/co-ordinate system.

.. _extnav-optiflow-transitions:

ExternalNAV/Optical Flow Transitions
====================================

When switching between Optical Flow XY velocity and/or positioning as sources for EKF3 to an ExternalNAV source, such as 3D Camera, you can set :ref:`EK3_SRC_OPTIONS<EK3_SRC_OPTIONS>` bit 1 to keep the ExternalNAV aligned with the OpticalFlow to avoid position/velocity bumps upon switching.

For example, you could setup a 3D camera as an external position and velocity source:

- :ref:`EK3_SRC1_POSXY<EK3_SRC1_POSXY>` = 6 (ExternalNAV XY Position)
- :ref:`EK3_SRC1_VELXY<EK3_SRC1_VELXY>` = 6 (ExternalNAV XY Velocity) (assuming the camera provides velocity reports)

and OpticalFLow as the second source:

- :ref:`EK3_SRC1_POSXY<EK3_SRC1_POSXY>` = 0 (None, position is relative when using OpticalFlow)
- :ref:`EK3_SRC1_VELXY<EK3_SRC1_VELXY>` = 5 (OpticalFlow for XY velocity)

and use an :ref:`auxiliary RC switch <common-auxiliary-functions>` to switch between the two.

[copywiki destination="copter,plane,rover,blimp"]
5 changes: 5 additions & 0 deletions common/source/docs/common-modalai-voxl.rst
Original file line number Diff line number Diff line change
Expand Up @@ -91,6 +91,11 @@ More details on :ref:`GPS/Non-GPS Transitions can be found here <common-non-gps-

To use an optical flow and rangefinder for backup in case the VOXL fails, a Lua applet for `ExternalNav/Optical flow transitions is here <https://github.com/ArduPilot/ardupilot/blob/master/libraries/AP_Scripting/applets/ahrs-source-extnav-optflow.lua>`__

EKF3 Source Transitions with OpticalFlow
========================================

If switching between this and OpticalFlow is desired, see :ref:`extnav-optiflow-transitions`

Videos
------

Expand Down
4 changes: 4 additions & 0 deletions common/source/docs/common-vio-oak-d.rst
Original file line number Diff line number Diff line change
Expand Up @@ -114,4 +114,8 @@ For your first flight:

If everything works as expected, next time you can arm and takeoff in Loiter mode.

EKF3 Source Transitions with OpticalFlow
========================================

If switching between this and OpticalFlow is desired, see :ref:`extnav-optiflow-transitions`

5 changes: 5 additions & 0 deletions common/source/docs/common-vio-tracking-camera.rst
Original file line number Diff line number Diff line change
Expand Up @@ -333,3 +333,8 @@ The script can be run automatically at boot time.
systemctl start t265
systemctl enable t265
EKF3 Source Transitions with OpticalFlow
========================================

If switching between this and OpticalFlow is desired, see :ref:`extnav-optiflow-transitions`

0 comments on commit 3898ec0

Please sign in to comment.