9 #ifndef CObservationGasSensors_H    10 #define CObservationGasSensors_H   178                         const float& estimation, 
const float& tau);
 uint64_t TTimeStamp
A system independent time type, it holds the the number of 100-nanosecond intervals since January 1...
 
float b_rise
tau = a*AMPLITUDE +b (linear relationship) 
 
unsigned __int16 uint16_t
 
void noise_filtering(const float &reading, const mrpt::system::TTimeStamp ×tamp)
Reduce noise by averaging with a mobile window of specific size (winNoise_size) 
 
float temperature
Sensed temperature in Celcius (valid if hasTemperature=true only) 
 
float reading
Sensore reading. 
 
vector_int sensorTypes
The kind of sensors in the array (size of "sensorTypes" is the same that the size of "readingsVoltage...
 
The structure for each e-nose. 
 
size_t winNoise_size
The size of the mobile average window used to reduce noise on sensor reagings. 
 
double fixed_incT
To force e-nose samples to have fixed time increments. 
 
void getSensorPose(mrpt::poses::CPose3D &out_sensorPose) const override
A general method to retrieve the sensor pose on the robot. 
 
std::vector< TdataMap > m_antiNoise_window
Vector to temporally store and averge readings to reduce noise. 
 
float min_reading
Minimum reading value till the moment, used as approximation to baeline level. 
 
math::TPose3D eNosePoseOnTheRobot
The pose of the sensors on the robot. 
 
bool hasTemperature
Must be true for "temperature" to contain a valid measurement. 
 
TdataMap last_Obs
The content of each m_lastObservations in the estimation when using the option : MOS_MODEl (useMOSmod...
 
Declares a class within "CObservationGasSensors" that represents a set of gas concentration readings ...
 
Declares a class derived from "CObservation" that represents a set of readings from gas sensors...
 
bool first_iteration
To avoid the model estimation on first iteration. 
 
float estimation
The value estimated according to the MOXmodel. 
 
void setSensorPose(const mrpt::poses::CPose3D &newSensorPose) override
A general method to change the sensor pose on the robot. 
 
float a_decay
tau = a*AMPLITUDE +b (linear relationship) 
 
bool isActive
True if the input to this chamber/enose is poluted air, False if clean air. 
 
This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries. 
 
CObservationGasSensors()
Constructor. 
 
#define DEFINE_SERIALIZABLE(class_name)
This declaration must be inserted in all CSerializable classes definition, within the class declarati...
 
mrpt::system::TTimeStamp timestamp
The associated UTC time-stamp. 
 
void save_log_map(const mrpt::system::TTimeStamp ×tamp, const float &reading, const float &estimation, const float &tau)
Save the gas distribution estiamtion into a log file for offline representation. 
 
bool first_incT
To force e-nose samples to have fixed time increments. 
 
A class used to store a 3D pose (a 3D translation + a rotation in 3D). 
 
Declares a class that represents any robot's observation. 
 
bool save_maplog
If true save generated gas map as a log file. 
 
The content of each m_lastObservations in the estimation when using the option : MOS_MODEl (useMOSmod...
 
std::vector< TObservationENose > m_readings
One entry per e-nose on the robot. 
 
int decimate_value
[useMOSmodel] The decimate frecuency applied after noise filtering 
 
Lightweight 3D pose (three spatial coordinates, plus three angular coordinates). 
 
float tau
tau value applied 
 
mrpt::system::TTimeStamp timestamp
Timestamp of the observation. 
 
void inverse_MOSmodeling(const float &reading, const mrpt::system::TTimeStamp ×tamp)
Estimates the gas concentration based on readings and sensor model. 
 
std::vector< int32_t > vector_int
 
std::vector< float > readingsVoltage
The set of readings (in volts) from the array of sensors (size of "sensorTypes" is the same that the ...
 
void getDescriptionAsText(std::ostream &o) const override
Build a detailed, multi-line textual description of the observation contents and dump it to the outpu...
 
float b_decay
tau = a*AMPLITUDE +b (linear relationship) 
 
std::ofstream * m_debug_dump
Ofstream to save to file option "save_maplog". 
 
float reading_filtered
Reading after smooth (noise averaging) 
 
float a_rise
tau = a*AMPLITUDE +b (linear relationship) 
 
uint16_t decimate_count
Decimate value for oversampled enose readings. 
 
bool get_GasDistribution_estimation(float &reading, mrpt::system::TTimeStamp ×tamp)
Obtain an estimation of the gas distribution based on raw sensor readings.