PPL API Reference |
|
---|
Public Member Functions | |
Interface | |
void | SetState (const Cfg &_cfg, const std::vector< double > &_uncertainty) |
void | ApplyControls (const ControlSet &_controls, const double _dt) |
virtual void | ApplyObservations (SensorInterface *const _sensor)=0 |
const Cfg & | GetEstimatedState () const |
Get the current state estimate. | |
const std::vector< double > & | GetUncertainty () const |
Get the uncertainty in the estimated state. | |
Protected Attributes | |
Internal State | |
Get the covariance matrix for the state estimate.
| |
Robot *const | m_robot |
The owning robot. | |
Cfg | m_estimatedState |
The current estimated state. | |
std::vector< double > | m_uncertainty |
Uncertainty in the current estimate. | |
bool | m_debug {false} |
The debug flag. | |
Construction | |
StateEstimator (Robot *const _robot) | |
virtual | ~StateEstimator () |
static std::unique_ptr< StateEstimator > | Factory (Robot *const _robot, XMLNode &_node) |
Base abstraction for a state estimator object, which combines the controls applied to a hardware robot with sensor data to estimate the robot's true state.
We assume that all process noise/uncertainty is iid and Gaussian-shaped.
|
static |
Create a dynamically-allocated state estimator from an XML node.
_robot | The robot which this state estimator will work for. |
_node | The XML node to parse. |
void StateEstimator::SetState | ( | const Cfg & | _cfg, |
const std::vector< double > & | _uncertainty | ||
) |
Set the current state and uncertainty.
_cfg | The state to set. |
_uncertainty | The uncertainty in _cfg. |
void StateEstimator::ApplyControls | ( | const ControlSet & | _controls, |
const double | _dt | ||
) |
Apply a set of controls to the current estimated state.
_controls | The set of controls to apply. |
_dt | The length of time to apply the controls. |
|
pure virtual |
Apply the most recent observations from a sensor to the current estimated state.
_sensor | The sensor to take observations from. |
Implemented in AverageEstimator.