mirror of
https://github.com/HifiExperiments/overte.git
synced 2025-08-09 19:10:56 +02:00
Compass tweaks: better initial extents, scale extents to compensate for
anisotropy, converge more quickly on compass heading.
This commit is contained in:
parent
3ec81b1867
commit
4e524d7125
2 changed files with 4 additions and 4 deletions
|
@ -31,7 +31,7 @@ const short NO_READ_MAXIMUM_MSECS = 3000;
|
|||
const int GRAVITY_SAMPLES = 60; // Use the first few samples to baseline values
|
||||
const int NORTH_SAMPLES = 30;
|
||||
const int ACCELERATION_SENSOR_FUSION_SAMPLES = 20;
|
||||
const int COMPASS_SENSOR_FUSION_SAMPLES = 200;
|
||||
const int COMPASS_SENSOR_FUSION_SAMPLES = 100;
|
||||
const int LONG_TERM_RATE_SAMPLES = 1000;
|
||||
|
||||
const bool USING_INVENSENSE_MPU9150 = 1;
|
||||
|
@ -383,7 +383,7 @@ void SerialInterface::resetSerial() {
|
|||
glm::vec3 SerialInterface::recenterCompass(const glm::vec3& compass) {
|
||||
// compensate for "hard iron" distortion by subtracting the midpoint on each axis; see
|
||||
// http://www.sensorsmag.com/sensors/motion-velocity-displacement/compensating-tilt-hard-iron-and-soft-iron-effects-6475
|
||||
return compass - (_compassMinima + _compassMaxima) * 0.5f;
|
||||
return (compass - (_compassMinima + _compassMaxima) * 0.5f) / (_compassMaxima - _compassMinima);
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -33,8 +33,8 @@ public:
|
|||
_estimatedVelocity(0, 0, 0),
|
||||
_lastAcceleration(0, 0, 0),
|
||||
_lastRotationRates(0, 0, 0),
|
||||
_compassMinima(-235, -132, -184), // experimentally derived initial values follow
|
||||
_compassMaxima(83, 155, 120),
|
||||
_compassMinima(-211, -132, -186),
|
||||
_compassMaxima(89, 95, 98),
|
||||
_angularVelocityToLinearAccel(
|
||||
0.003f, -0.001f, -0.006f,
|
||||
-0.005f, -0.001f, -0.006f,
|
||||
|
|
Loading…
Reference in a new issue