From e38560b928acac52c178b421e8fec46c4d47ddb7 Mon Sep 17 00:00:00 2001 From: Daniel Agar Date: Tue, 23 Feb 2021 13:32:00 -0500 Subject: [PATCH] sensor_calibration: increase threshold for updating calibration offsets or scale - this is to minimize needlessly writing negligible parameter changes and triggering unnecessary estimator bias resets --- src/lib/sensor_calibration/Accelerometer.cpp | 4 ++-- src/lib/sensor_calibration/Gyroscope.cpp | 2 +- src/lib/sensor_calibration/Magnetometer.cpp | 6 +++--- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/lib/sensor_calibration/Accelerometer.cpp b/src/lib/sensor_calibration/Accelerometer.cpp index daa321223c..107ab51307 100644 --- a/src/lib/sensor_calibration/Accelerometer.cpp +++ b/src/lib/sensor_calibration/Accelerometer.cpp @@ -125,7 +125,7 @@ void Accelerometer::SensorCorrectionsUpdate(bool force) bool Accelerometer::set_offset(const Vector3f &offset) { - if (Vector3f(_offset - offset).longerThan(0.001f)) { + if (Vector3f(_offset - offset).longerThan(0.01f)) { _offset = offset; _calibration_count++; @@ -137,7 +137,7 @@ bool Accelerometer::set_offset(const Vector3f &offset) bool Accelerometer::set_scale(const Vector3f &scale) { - if (Vector3f(_scale - scale).longerThan(0.001f)) { + if (Vector3f(_scale - scale).longerThan(0.01f)) { _scale = scale; _calibration_count++; diff --git a/src/lib/sensor_calibration/Gyroscope.cpp b/src/lib/sensor_calibration/Gyroscope.cpp index 445a049408..a1326101eb 100644 --- a/src/lib/sensor_calibration/Gyroscope.cpp +++ b/src/lib/sensor_calibration/Gyroscope.cpp @@ -125,7 +125,7 @@ void Gyroscope::SensorCorrectionsUpdate(bool force) bool Gyroscope::set_offset(const Vector3f &offset) { - if (Vector3f(_offset - offset).longerThan(0.001f)) { + if (Vector3f(_offset - offset).longerThan(0.01f)) { _offset = offset; _calibration_count++; diff --git a/src/lib/sensor_calibration/Magnetometer.cpp b/src/lib/sensor_calibration/Magnetometer.cpp index 08f4725a1b..4c23721902 100644 --- a/src/lib/sensor_calibration/Magnetometer.cpp +++ b/src/lib/sensor_calibration/Magnetometer.cpp @@ -85,7 +85,7 @@ void Magnetometer::set_external(bool external) bool Magnetometer::set_offset(const Vector3f &offset) { - if (Vector3f(_offset - offset).longerThan(0.001f)) { + if (Vector3f(_offset - offset).longerThan(0.01f)) { _offset = offset; _calibration_count++; @@ -97,7 +97,7 @@ bool Magnetometer::set_offset(const Vector3f &offset) bool Magnetometer::set_scale(const Vector3f &scale) { - if (Vector3f(_scale.diag() - scale).longerThan(0.001f)) { + if (Vector3f(_scale.diag() - scale).longerThan(0.01f)) { _scale(0, 0) = scale(0); _scale(1, 1) = scale(1); _scale(2, 2) = scale(2); @@ -111,7 +111,7 @@ bool Magnetometer::set_scale(const Vector3f &scale) bool Magnetometer::set_offdiagonal(const Vector3f &offdiagonal) { - if (Vector3f(Vector3f{_scale(0, 1), _scale(0, 2), _scale(1, 2)} - offdiagonal).longerThan(0.001f)) { + if (Vector3f(Vector3f{_scale(0, 1), _scale(0, 2), _scale(1, 2)} - offdiagonal).longerThan(0.01f)) { _scale(0, 1) = offdiagonal(0); _scale(1, 0) = offdiagonal(0);