2022-09-19 15:37:05 +02:00
|
|
|
/* Created on: 08.03.2022
|
|
|
|
* Author: Robin
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef SENSORVALUES_H_
|
|
|
|
#define SENSORVALUES_H_
|
|
|
|
|
2022-09-20 15:45:49 +02:00
|
|
|
#include <fsfw/returnvalues/returnvalue.h>
|
2022-09-19 15:37:05 +02:00
|
|
|
|
|
|
|
namespace ACS {
|
|
|
|
|
2022-09-20 15:45:49 +02:00
|
|
|
class SensorValues{
|
2022-09-19 15:37:05 +02:00
|
|
|
public:
|
|
|
|
SensorValues();
|
|
|
|
virtual ~SensorValues();
|
|
|
|
|
|
|
|
ReturnValue_t update();
|
|
|
|
|
|
|
|
float mgm0[3];
|
|
|
|
float mgm1[3];
|
|
|
|
float mgm2[3];
|
|
|
|
float mgm3[3];
|
|
|
|
float mgm4[3];
|
|
|
|
|
|
|
|
bool mgm0Valid;
|
|
|
|
bool mgm1Valid;
|
|
|
|
bool mgm2Valid;
|
|
|
|
bool mgm3Valid;
|
|
|
|
bool mgm4Valid;
|
|
|
|
|
|
|
|
float sus0[3];
|
|
|
|
float sus1[3];
|
|
|
|
float sus2[3];
|
|
|
|
float sus3[3];
|
|
|
|
float sus4[3];
|
|
|
|
float sus5[3];
|
|
|
|
float sus6[3];
|
|
|
|
float sus7[3];
|
|
|
|
float sus8[3];
|
|
|
|
float sus9[3];
|
|
|
|
float sus10[3];
|
|
|
|
float sus11[3];
|
|
|
|
|
|
|
|
bool sus0Valid;
|
|
|
|
bool sus1Valid;
|
|
|
|
bool sus2Valid;
|
|
|
|
bool sus3Valid;
|
|
|
|
bool sus4Valid;
|
|
|
|
bool sus5Valid;
|
|
|
|
bool sus6Valid;
|
|
|
|
bool sus7Valid;
|
|
|
|
bool sus8Valid;
|
|
|
|
bool sus9Valid;
|
|
|
|
bool sus10Valid;
|
|
|
|
bool sus11Valid;
|
|
|
|
|
|
|
|
|
|
|
|
double rmu0[3];
|
|
|
|
double rmu1[3];
|
|
|
|
double rmu2[3];
|
|
|
|
|
|
|
|
bool rmu0Valid;
|
|
|
|
bool rmu1Valid;
|
|
|
|
bool rmu2Valid;
|
|
|
|
|
|
|
|
double quatJB[4]; // output star tracker. quaternion or dcm ? refrence to which KOS?
|
|
|
|
bool quatJBValid;
|
|
|
|
int strIntTime[2];
|
|
|
|
|
|
|
|
double gps0latitude; //Reference is WGS84, so this one will probably be geodetic
|
|
|
|
double gps0longitude; //Should be geocentric for IGRF
|
|
|
|
double gps0altitude;
|
|
|
|
double gps0Velocity[3]; // speed over ground = ??
|
|
|
|
double gps0Time; //utc
|
|
|
|
|
|
|
|
// valid ids for gps values !
|
|
|
|
int gps0TimeYear;
|
|
|
|
int gps0TimeMonth;
|
|
|
|
int gps0TimeHour; // should be double
|
|
|
|
bool gps0Valid;
|
|
|
|
|
|
|
|
|
|
|
|
bool mgt0valid;
|
|
|
|
|
|
|
|
// Reaction wheel measurements
|
|
|
|
double speedRw0; // RPM [1/min]
|
|
|
|
double speedRw1; // RPM [1/min]
|
|
|
|
double speedRw2; // RPM [1/min]
|
|
|
|
double speedRw3; // RPM [1/min]
|
|
|
|
bool validRw0;
|
|
|
|
bool validRw1;
|
|
|
|
bool validRw2;
|
|
|
|
bool validRw3;
|
|
|
|
|
|
|
|
};
|
|
|
|
} /* namespace ACS */
|
|
|
|
|
|
|
|
#endif ENSORVALUES_H_
|
|
|
|
|