|
TinyRobotics
|
3D sensor fusion EKF for position, orientation, and velocity estimation. More...
#include <Fusion3D.h>


Classes | |
| struct | State3D |
Public Member Functions | |
| bool | begin (const Coordinate< float > &initialPosition={0, 0, 0}, const Orientation3D &initialOrientation=Orientation3D()) |
| void | predict (uint32_t timeMs, float ax=0.0f, float ay=0.0f, float az=0.0f) |
| void | updateIMU (uint32_t timeMs, float omegaX, float omegaY, float omegaZ, float ax, float ay, float az) |
| void | updateGPS (uint32_t timeMs, float x, float y, float z, float accuracy) |
| void | updateOrientation (uint32_t timeMs, float yaw, float pitch, float roll) |
| State3D | getState () const |
| Coordinate< float > | getPosition () const |
| Speed3D | getVelocity () const |
| Orientation3D | getOrientation () const |
Public Member Functions inherited from MessageSource | |
| void | subscribe (MessageHandler &handler, MessageOrigin origin=MessageOrigin::Undefined, MessageContent content=MessageContent::Undefined) |
| Subscribe a message handler to this source, with optional filtering. | |
| void | unsubscribeAll () |
| Remove all registered message handlers. | |
| void | sendMessage (Message< float > &msg) |
| Publish a message to all registered handlers. | |
| void | sendMessage (const Message< Coordinate< float > > &msg) |
| Publish a message to all registered handlers. | |
| void | sendMessage (const Message< GPSCoordinate > &msg) |
| Publish a message to all registered handlers. | |
| void | sendMessage (const Message< MotionState3D > &msg) |
| Overload for MotionState3D messages. | |
Protected Member Functions | |
| void | wrapAngles () |
| void | reset (uint32_t timeMs=millis()) |
Protected Attributes | |
| State3D | state |
| uint32_t | lastPredictTime = 0 |
| float | omegaXMeasured = 0.0f |
| float | omegaYMeasured = 0.0f |
| float | omegaZMeasured = 0.0f |
| bool | hasIMU = false |
Protected Attributes inherited from MessageSource | |
| std::vector< MessageHandlerEntry > | messageHandlers_ |
3D sensor fusion EKF for position, orientation, and velocity estimation.
Supports optional sensors:
The EKF automatically adapts to the available sensors.