chrono::sensor::ChIMUSensor Class Reference
Description
IMU class.
Includes an accelerometer and gyroscope. The data is collected from the physical quantities computed for the parent object accounting for the offset pose. This sensor operates in lock-step with the Chrono simulation.
#include <ChIMUSensor.h>
Inheritance diagram for chrono::sensor::ChIMUSensor:
Collaboration diagram for chrono::sensor::ChIMUSensor:
Public Member Functions | |
ChIMUSensor (std::shared_ptr< chrono::ChBody > parent, float updateRate, chrono::ChFrame< double > offsetPose, std::shared_ptr< ChIMUNoiseModel > noise_model) | |
Class constructor for an IMU sensor. More... | |
~ChIMUSensor () | |
Class destructor. | |
Public Member Functions inherited from chrono::sensor::ChSensor | |
ChSensor (std::shared_ptr< chrono::ChBody > parent, float updateRate, chrono::ChFrame< double > offsetPose) | |
Constructor for the base sensor class. More... | |
virtual | ~ChSensor () |
Class destructor. | |
void | SetOffsetPose (chrono::ChFrame< double > pose) |
Set the sensor's relative position and orientation. More... | |
ChFrame< double > | GetOffsetPose () |
Get the sensor's relative position and orientation. More... | |
std::shared_ptr< ChBody > | GetParent () const |
Get the object to which the sensor is attached. More... | |
void | SetName (std::string name) |
Set the sensor's name. More... | |
std::string | GetName () const |
Get the name of the sensor. More... | |
float | GetUpdateRate () const |
Get the sensor update rate (Hz) More... | |
void | SetLag (float t) |
Set the lag parameter. More... | |
float | GetLag () const |
Get the sensor lag (seconds) More... | |
void | SetCollectionWindow (float t) |
Set the collection window. More... | |
float | GetCollectionWindow () const |
Get the sensor data collection window (seconds) More... | |
void | SetUpdateRate (float updateRate) |
Set the sensor update rate (Hz) More... | |
unsigned int | GetNumLaunches () |
Get the number of times the sensor has been updated. More... | |
void | IncrementNumLaunches () |
Increments the count of number of updates. | |
std::list< std::shared_ptr< ChFilter > > | GetFilterList () const |
Get the sensor's list of filters. More... | |
void | PushFilter (std::shared_ptr< ChFilter > filter) |
Add a filter to the sensor. More... | |
void | LockFilterList () |
Gives ability to lock the filter list to prevent race conditions. More... | |
template<class UserBufferType > | |
UserBufferType | GetMostRecentBuffer () |
Get the last filter in the list that matches the template type. More... | |
template<> | |
CH_SENSOR_API UserR8BufferPtr | GetMostRecentBuffer () |
template<> | |
CH_SENSOR_API UserRGBA8BufferPtr | GetMostRecentBuffer () |
template<> | |
CH_SENSOR_API UserDIBufferPtr | GetMostRecentBuffer () |
template<> | |
CH_SENSOR_API UserXYZIBufferPtr | GetMostRecentBuffer () |
template<> | |
CH_SENSOR_API UserIMUBufferPtr | GetMostRecentBuffer () |
template<> | |
CH_SENSOR_API UserGPSBufferPtr | GetMostRecentBuffer () |
Public Attributes | |
std::vector< std::tuple< ChVector< float >, ChVector< float > > > | imu_key_frames |
Variable for communicating the sensor's keyframes from the ChSystem into the data generation filter. | |
Additional Inherited Members | |
Protected Attributes inherited from chrono::sensor::ChSensor | |
float | m_updateRate |
sensor update rate | |
float | m_lag |
sensor lag from the time all scene information is available (sensor processing time) | |
float | m_collection_window |
time over which data is collected. More... | |
float | m_timeLastUpdated |
time since previous update | |
std::shared_ptr< chrono::ChBody > | m_parent |
object to which the sensor is attached | |
chrono::ChFrame< double > | m_offsetPose |
position and orientation of the sensor relative to its parent | |
std::string | m_name |
name of the sensor | |
unsigned int | m_num_launches |
number of times the sensor has been updated | |
std::list< std::shared_ptr< ChFilter > > | m_filters |
filter list for post-processing sensor data | |
bool | m_filter_list_locked = false |
gives ability to lock the filter list to prevent race conditions | |
Constructor & Destructor Documentation
◆ ChIMUSensor()
CH_SENSOR_API chrono::sensor::ChIMUSensor::ChIMUSensor | ( | std::shared_ptr< chrono::ChBody > | parent, |
float | updateRate, | ||
chrono::ChFrame< double > | offsetPose, | ||
std::shared_ptr< ChIMUNoiseModel > | noise_model | ||
) |
Class constructor for an IMU sensor.
- Parameters
-
parent Body to which the sensor is attached. updateRate Rate at which the sensor should update. offsetPose Relative position and orientation of the sensor with respect to its parent object. noise_model Noise model for the sensor to use when augmentating data
The documentation for this class was generated from the following files:
- /builds/uwsbel/chrono/src/chrono_sensor/ChIMUSensor.h
- /builds/uwsbel/chrono/src/chrono_sensor/ChIMUSensor.cpp