Go to the documentation of this file.
12 #ifndef UNIDIMLIPMDCMBIASESTIMATOR_HPP
13 #define UNIDIMLIPMDCMBIASESTIMATOR_HPP
15 #include <state-observation/api.h>
37 constexpr
static double defaultDt_ = 0.005;
42 constexpr
static double defaultBiasDriftSecond = 0.002;
45 constexpr
static double defaultZmpErrorStd = 0.005;
46 constexpr
static double defaultDcmErrorStd = 0.01;
49 constexpr
static double defaultDCMUncertainty = 0.01;
50 constexpr
static double defaultBiasUncertainty = 0.01;
65 double omega_0 = defaultOmega_,
66 double biasDriftPerSecondStd = defaultBiasDriftSecond,
70 double dcmMeasureErrorStd = defaultDcmErrorStd,
71 double zmpMeasureErrorStd = defaultZmpErrorStd,
72 double initDcmUncertainty = defaultDCMUncertainty,
73 double initBiasUncertainty = defaultBiasUncertainty);
88 void resetWithInputs(
double measuredDcm,
90 bool measurementIsWithBias =
true,
91 double biasDriftPerSecondStd = defaultBiasDriftSecond,
92 double dcmMeasureErrorStd = defaultDcmErrorStd,
93 double zmpMeasureErrorStd = defaultZmpErrorStd,
95 double initBiasuncertainty = defaultBiasUncertainty);
103 void setLipmNaturalFrequency(
double omega_0);
108 void setSamplingTime(
double dt);
113 void setBias(
double bias);
118 void setBias(
double bias,
double uncertainty);
123 void setBiasDriftPerSecond(
double driftPerSecond);
128 void setUnbiasedDCM(
double dcm);
134 void setUnbiasedDCM(
double dcm,
double uncertainty);
138 void setZmpMeasureErrorStd(
double);
142 void setDcmMeasureErrorStd(
double);
148 void setInputs(
double dcm,
double zmp);
155 return filter_.getEstimatedState(filter_.getMeasurementTime());
162 double getUnbiasedDCM()
const;
167 double getBias()
const;
186 void updateMatricesABQ_();
190 double biasDriftStd_;
207 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
const LinearKalmanFilter & getFilter() const
Get the Kalman Filter object This can be used to run specific Advanced Kalman filter related funcions...
Definition: unidim-lipm-dcm-estimator.hpp:179
LinearKalmanFilter & getFilter()
Get the Kalman Filter object This can be used to run specific Advanced Kalman filter related funcions...
Definition: unidim-lipm-dcm-estimator.hpp:172
Eigen::Matrix< double, 2, 1 > Vector2
2d Vector
Definition: definitions.hpp:82
~UnidimLipmDcmEstimator()
Destroy the Lipm Dcm Bias Estimator object.
Definition: unidim-lipm-dcm-estimator.hpp:98
The class of a Linear Kalman filter.
Definition: linear-kalman-filter.hpp:47
Eigen::Matrix2d Matrix2
2D scalar Matrix
Definition: definitions.hpp:106
Defines the class of a Linear Kalman filter.
Vector2 update()
Runs the estimation. Needs to be called every timestep.
Definition: unidim-lipm-dcm-estimator.hpp:153
constexpr double gravityConstant
Definition: definitions.hpp:663
Gathers many kinds of algorithms.
1D version of the estimation of a bias betweeen the divergent component of motion and the correspondi...
Definition: unidim-lipm-dcm-estimator.hpp:34
Definition: bidim-elastic-inv-pendulum-dyn-sys.hpp:20
Eigen::Matrix< double, 1, 1 > Matrix1
1D scalar Matrix
Definition: definitions.hpp:103