mirror of
https://bitbucket.org/librepilot/librepilot.git
synced 2025-01-07 18:46:06 +01:00
48 lines
1.8 KiB
C++
48 lines
1.8 KiB
C++
#ifndef AHRS_CALIBRATION_HPP
|
|
#define AHRS_CALIBRATION_HPP
|
|
|
|
#include <Eigen/Core>
|
|
#include <cstdlib>
|
|
using std::size_t;
|
|
using namespace Eigen;
|
|
|
|
void calibration_misalignment(Vector3f & rotationVector,
|
|
const Vector3f samples0[],
|
|
const Vector3f & reference0,
|
|
const Vector3f samples1[],
|
|
const Vector3f & reference1,
|
|
size_t n_samples);
|
|
|
|
Vector3f twostep_bias_only(const Vector3f samples[],
|
|
size_t n_samples,
|
|
const Vector3f & referenceField,
|
|
const float noise);
|
|
|
|
void twostep_bias_scale(Vector3f & bias,
|
|
Vector3f & scale,
|
|
const Vector3f samples[],
|
|
const size_t n_samples,
|
|
const Vector3f & referenceField,
|
|
const float noise);
|
|
|
|
void twostep_bias_scale(Vector3f & bias,
|
|
Matrix3f & scale,
|
|
const Vector3f samples[],
|
|
const size_t n_samples,
|
|
const Vector3f & referenceField,
|
|
const float noise);
|
|
|
|
void openpilot_bias_scale(Vector3f & bias,
|
|
Vector3f & scale,
|
|
const Vector3f samples[],
|
|
const size_t n_samples,
|
|
const Vector3f & referenceField);
|
|
|
|
void gyroscope_calibration(Vector3f & bias,
|
|
Matrix3f & accelSensitivity,
|
|
Vector3f gyroSamples[],
|
|
Vector3f accelSamples[],
|
|
size_t n_samples);
|
|
|
|
#endif // !defined AHRS_CALIBRATION_HPP
|