52 [[nodiscard]] std::string
type()
const override;
159 Eigen::Vector3d
position{ Eigen::Vector3d::Zero() };
nlohmann::json json
json namespace
Definition FlowManager.hpp:21
Kalman Filter with keyed states.
Generalized Kalman Filter class.
Position, Velocity and Attitude Storage Class.
Espressif Observation Class.
The class is responsible for all time-related tasks.
Definition InsTime.hpp:668
Generalized Kalman Filter class.
Definition KalmanFilter.hpp:25
Abstract parent class for all nodes.
Definition Node.hpp:86
Numerically integrates Imu data.
Definition WiFiPositioning.hpp:33
std::vector< double > _deviceBias
Input of biases.
Definition WiFiPositioning.hpp:148
uint8_t _numStates
Number of states.
Definition WiFiPositioning.hpp:73
SolutionMode
Available Solution Modes.
Definition WiFiPositioning.hpp:108
LeastSquaresResult< Eigen::VectorXd, Eigen::MatrixXd > lsqSolution()
Calculate the position using the least squares method.
double _measurementNoise
GUI selection of the process noise (standard deviation σ or Variance σ²)
Definition WiFiPositioning.hpp:194
KalmanFilter _kalmanFilter
Kalman Filter representation - States: 3xVel, 3xPos, (1xBias) - Measurements: 1xDist.
Definition WiFiPositioning.hpp:79
std::vector< Device > _devices
Devices which are used for the positioning.
Definition WiFiPositioning.hpp:165
Frame _frame
Frame to calculate the position in.
Definition WiFiPositioning.hpp:104
size_t _nWifiInputPins
Amount of wifi input pins.
Definition WiFiPositioning.hpp:90
Eigen::Vector3d _initCovarianceVelocity
GUI selection of the initial covariance diagonal values for velocity (standard deviation σ or Varianc...
Definition WiFiPositioning.hpp:236
std::string type() const override
String representation of the Class Type.
void restore(const json &j) override
Restores the node from a json object.
uint8_t _numMeasurements
Number of measurements.
Definition WiFiPositioning.hpp:76
InitCovariancePositionUnit
Possible Units for the initial covariance for the position (standard deviation σ or Variance σ²)
Definition WiFiPositioning.hpp:214
@ meter
Standard deviation NED [m, m, m].
json save() const override
Saves the node into a json object.
Frame
Available Frames.
Definition WiFiPositioning.hpp:99
@ LLA
Latitude-Longitude-Altitude frame.
@ ECEF
Earth-Centered Earth-Fixed frame.
InitCovarianceVelocityUnit
Possible Units for the initial covariance for the velocity (standard deviation σ or Variance σ²)
Definition WiFiPositioning.hpp:228
@ m_s
Standard deviation [m/s].
@ m2_s2
Variance [m^2/s^2].
Eigen::Vector3d _initCovariancePosition
GUI selection of the initial covariance diagonal values for position (standard deviation σ or Varianc...
Definition WiFiPositioning.hpp:222
WiFiPositioning(const WiFiPositioning &)=delete
Copy constructor.
WiFiPositioning()
Default constructor.
void guiConfig() override
ImGui config window which is shown on double click.
MeasurementNoiseUnit
Possible Units for the measurement noise (standard deviation σ or Variance σ²)
Definition WiFiPositioning.hpp:186
@ meter2
Variance NED [m^2, m^2, m^2].
@ meter
Standard deviation NED [m, m, m].
std::vector< double > _deviceScale
Input of scales.
Definition WiFiPositioning.hpp:151
std::vector< std::string > _deviceMacAddresses
Input of mac addresses.
Definition WiFiPositioning.hpp:142
InitCovarianceVelocityUnit _initCovarianceVelocityUnit
Gui selection for the Unit of the initial covariance for the velocity.
Definition WiFiPositioning.hpp:233
bool _estimateBias
Selection of whether the bias will be additionally estimated.
Definition WiFiPositioning.hpp:116
void deinitialize() override
Deinitialize the node.
double _processNoise
GUI selection of the process noise (standard deviation σ or Variance σ²)
Definition WiFiPositioning.hpp:208
static constexpr size_t INPUT_PORT_INDEX_WIFI_OBS
WiFiObs.
Definition WiFiPositioning.hpp:69
void updateNumberOfInputPins()
Adds/Deletes Input Pins depending on the variable _nNavInfoPins.
bool initialize() override
Initialize the node.
static std::string typeStatic()
String representation of the Class Type.
SolutionMode _solutionMode
Solution Mode.
Definition WiFiPositioning.hpp:113
InsTime _lastPredictTime
Time when the last prediction was triggered.
Definition WiFiPositioning.hpp:168
InitCovarianceBiasUnit
Possible Units for the initial covariance for the bias (standard deviation σ or Variance σ²)
Definition WiFiPositioning.hpp:242
@ meter
Standard deviation [m].
~WiFiPositioning() override
Destructor.
WiFiPositioning & operator=(WiFiPositioning &&)=delete
Move assignment operator.
WiFiPositioning & operator=(const WiFiPositioning &)=delete
Copy assignment operator.
bool _useInitialValues
Selection of whether the initial values should always be used or those of the last position.
Definition WiFiPositioning.hpp:122
double _initCovarianceBias
GUI selection of the initial covariance diagonal values for bias (standard deviation σ or Variance σ²...
Definition WiFiPositioning.hpp:250
InitCovariancePositionUnit _initCovariancePositionUnit
Gui selection for the Unit of the initial covariance for the position.
Definition WiFiPositioning.hpp:219
State _initialState
Initial state.
Definition WiFiPositioning.hpp:139
bool _weightedSolution
Selection of whether the solution will be weighted.
Definition WiFiPositioning.hpp:119
WiFiPositioning(WiFiPositioning &&)=delete
Move constructor.
ProcessNoiseUnit
Possible Units for the process noise (standard deviation σ or Variance σ²)
Definition WiFiPositioning.hpp:200
@ meter
Standard deviation NED [m, m, m].
void kfSolution()
Calculate the position.
static std::string category()
String representation of the Class Category.
ProcessNoiseUnit _processNoiseUnit
Gui selection for the Unit of the initial covariance for the position.
Definition WiFiPositioning.hpp:205
InitCovarianceBiasUnit _initCovarianceBiasUnit
Gui selection for the Unit of the initial covariance for the bias.
Definition WiFiPositioning.hpp:247
std::vector< Eigen::Vector3d > _devicePositions
Input of positions.
Definition WiFiPositioning.hpp:145
void recvWiFiObs(InputPin::NodeDataQueue &queue, size_t pinIdx)
Receive Function for the WiFi Observations.
State _state
State estimated by the algorithm.
Definition WiFiPositioning.hpp:136
static constexpr size_t OUTPUT_PORT_INDEX_WIFISOL
WiFiPositioningSolution.
Definition WiFiPositioning.hpp:70
MeasurementNoiseUnit _measurementNoiseUnit
Gui selection for the Unit of the initial covariance for the position.
Definition WiFiPositioning.hpp:191
size_t _numOfDevices
Number of devices.
Definition WiFiPositioning.hpp:154
Least Squares Uncertainties return value.
Definition LeastSquares.hpp:28
Device struct.
Definition WiFiPositioning.hpp:158
Eigen::Vector3d position
Position vector.
Definition WiFiPositioning.hpp:159
double distance
Distance.
Definition WiFiPositioning.hpp:161
InsTime time
Time.
Definition WiFiPositioning.hpp:160
double distanceStd
Standard deviation of distance measurement.
Definition WiFiPositioning.hpp:162
State estimated by the positioning algorithm.
Definition WiFiPositioning.hpp:126
double bias
Estimated bias [m].
Definition WiFiPositioning.hpp:132
Eigen::Vector3d e_velocity
Estimated velocity in ECEF frame [m/s].
Definition WiFiPositioning.hpp:130
Eigen::Vector3d e_position
Estimated position in ECEF frame [m].
Definition WiFiPositioning.hpp:128