WarpTwin
Documentation for WarpTwin models and classes.
Loading...
Searching...
No Matches
warptwin::_gyro_output_struct Struct Reference

Gyro Model. More...

#include <Gyroscope.h>

Public Member Functions

 _gyro_output_struct ()
 _gyro_output_struct (CartesianVector3 meas_ang_vel_sf, CartesianVector3 bias, bool is_valid)

Public Attributes

CartesianVector3 meas_ang_vel_sf
CartesianVector3 bias
bool is_valid

Detailed Description

Gyro Model.

This model simulates a simple gyroscope with bias and noise

HOW DOES THIS MODEL HANDLE NOISE: The typical 3-axis gyroscope has uncorrelated noise in each of the three measurement axes. The additive noise in the gyroscope can be modeled as Gaussian white noise with a standard deviation that is dependent on measurement rate, temperature, and oversampling ratio.

The typical gyroscope also has some bias even after factory calibration. This bias is not completely stable so the bias random walk does need to be modeled for the majority of missions with a duration. The bias random walk standard deviation is constant as a function of time, however it is usually not constant as a function of temperature. Most gyroscope data sheets will have temperature effects on the bias stability.

The majority of gyroscopes exhibit some amount of multiplicate noise that is very temperature and age dependent. This is due to the Micro-Electrical-Mechanical systems that are in the sensor being expanded and decompressed with temperature effects. Additionally, the internal polynomial function that is used to convert the measured voltage to an acceleration through an ADC is subject to manufacturing tolerances. The percent error standard deviation should be very small, around 0.1%-0.5%

Typically the noise profile (additive, multiplicative, and biasing) are all dependent on temperature. Because of this, the model has the values as inputs. The user has the choice to repeatedly input new noise characteristics based on an external model, or input them once and it be held constant.

Author: Alex Reynolds alex..nosp@m.reyn.nosp@m.olds@.nosp@m.attx.nosp@m..tech Updated: James Tabony james.nosp@m..tab.nosp@m.ony@a.nosp@m.ttx..nosp@m.tech Updated sensor noise, added dead-zones, added quantinization, added latency

Sensor output struct for latency model, its members are the same as the model outputs. Its default constructor populates members with defualt output values

Constructor & Destructor Documentation

◆ _gyro_output_struct() [1/2]

warptwin::_gyro_output_struct::_gyro_output_struct ( )
inline

◆ _gyro_output_struct() [2/2]

warptwin::_gyro_output_struct::_gyro_output_struct ( CartesianVector3 meas_ang_vel_sf,
CartesianVector3 bias,
bool is_valid )
inline

Member Data Documentation

◆ bias

CartesianVector3 warptwin::_gyro_output_struct::bias

◆ is_valid

bool warptwin::_gyro_output_struct::is_valid

◆ meas_ang_vel_sf

CartesianVector3 warptwin::_gyro_output_struct::meas_ang_vel_sf

The documentation for this struct was generated from the following file:
  • /Users/mickey/Documents/Projects/warptwin/cpp/src/models/sensors/Gyroscope.h