12#include "sygac-mimu.hpp"
13#include "sygsp-complementary_mimu_fusion_endpoints.hpp"
15namespace sygaldry {
namespace sygsp {
31 , ComplementaryMimuFusionOutputs& out
45 ,
const std::array<float, 3>& accl,
bool accl_updated
46 ,
const std::array<float, 3>& magn,
bool magn_updated
47 ,
const unsigned long elapsed
48 ,
const ComplementaryMimuFusionInputs& in
49 , ComplementaryMimuFusionOutputs& out
59template<MimuComponent Mimu>
61:
name_<"Complementary MIMU Fusion Filter">
62,
description_<"Runtime calibration and sensor fusion using a complementary filter approach">
64,
copyright_<"Copyright 2023 Sygaldry Contributors">
65,
license_<"SPDX-License-Identifier: MIT">
79 void main(
const Mimu& mimu)
85 , mimu.outputs.elapsed
auto & magn_of(auto &mimu_data)
Access the magnetometer data of a presumed MIMU data structure.
Definition sygac-mimu.hpp:52
auto & accl_of(auto &mimu_data)
Access the accelerometer data of a presumed MIMU data structure.
Definition sygac-mimu.hpp:30
auto & gyro_of(auto &mimu_data)
Access the gyroscope data of a presumed MIMU data structure.
Definition sygac-mimu.hpp:42
void complementary_mimu_fusion(const std::array< float, 3 > &gyro, const std::array< float, 3 > &accl, bool accl_updated, const std::array< float, 3 > &magn, bool magn_updated, const unsigned long elapsed, const ComplementaryMimuFusionInputs &in, ComplementaryMimuFusionOutputs &out)
Definition sygsp-complementary_mimu_fusion.cpp:52
void complementary_mimu_fusion_init(ComplementaryMimuFusionInputs &in, ComplementaryMimuFusionOutputs &out)
Definition sygsp-complementary_mimu_fusion.cpp:45
Document the author of an entity, e.g. a component or binding.
Definition sygah-metadata.hpp:39
Document the copyright statement of an entity, e.g. a component or binding.
Definition sygah-metadata.hpp:47
Document a textual description of an entity, e.g. an endpoint, component or binding.
Definition sygah-metadata.hpp:35
Document the copyright license of an entity, e.g. a component or binding.
Definition sygah-metadata.hpp:45
Document the name of an entity, e.g. an endpoint, component, or binding.
Definition sygah-metadata.hpp:33
Outputs of the MIMU sensor fusion component.
Definition sygsp-complementary_mimu_fusion_endpoints.hpp:73
MIMU sensor fusion and runtime calibration component.
Definition sygsp-complementary_mimu_fusion.hpp:67
void main(const Mimu &mimu)
Update the filter.
Definition sygsp-complementary_mimu_fusion.hpp:79
void init()
Initialize the filter.
Definition sygsp-complementary_mimu_fusion.hpp:73
Document a textual description of the version number of an entity, e.g. a component or binding.
Definition sygah-metadata.hpp:51