class
UkfModelUkfModel is a base class to define the process and measurement model of the UKF.
It includes all the methods shared between the two concrete classes, as the update of the robot dynamics and the robot state.
Public functions
- void unpackState()
- unpackState splits the state vector in all the variables composing the state.
- auto updateState() -> bool
- updateState updates the robot state and dynamics and of the sub-model states and dynamics by using the estimation of the previous step.
Protected variables
- bool m_isInitialized
- bool m_isFinalized
- Eigen::Vector3d m_gravity
- Gravity vector.
- double m_dT
- Sampling time.
- std::vector<std::pair<std::string, std::shared_ptr<Dynamics>>> m_dynamicsList
- List of the dynamics composing the model.
-
System::
VariablesHandler m_stateVariableHandler - Variable handler describing the state vector.
- std::shared_ptr<iDynTree::KinDynComputations> m_kinDynFullModel
- KinDynComputation object for the full model.
- std::vector<SubModel> m_subModelList
- List of SubModel object describing the sub-models composing the full model.
- std::vector<std::shared_ptr<KinDynWrapper>> m_kinDynWrapperList
- List of KinDynWrapper objects containing kinematic and dynamic information specific of each sub-model.
- std::shared_ptr<const UkfInputProvider> m_ukfInputProvider
- Provider containing the updated robot state.
- UKFInput m_ukfInput
- Struct containing the inputs for the ukf populated by the ukfInputProvider.
- Eigen::VectorXd m_jointVelocityState
- Joint velocity computed by the ukf.
- Eigen::VectorXd m_jointAccelerationState
- Joint acceleration computed from forward dynamics which depends on the current ukf state.
- Eigen::VectorXd m_currentState
- State estimated in the previous step.
- std::vector<Eigen::VectorXd> m_subModelJointPos
- List of sub-model joint velocities.
- std::vector<Eigen::VectorXd> m_subModelJointVel
- List of sub-model joint velocities.
- std::vector<Eigen::VectorXd> m_subModelJointAcc
- List of sub-model joint accelerations.
- std::vector<Eigen::VectorXd> m_subModelNuDot
- List of sub-model accelerations (base + joints = nudot).
- std::vector<Eigen::VectorXd> m_subModelJointMotorTorque
- List of sub-model joint motor torques.
- std::vector<Eigen::VectorXd> m_subModelFrictionTorque
- List of sub-model friction torques.
-
std::map<std::string, Math::
Wrenchd> m_FTMap - The map contains names of the ft sensors and values of the wrench.
-
std::map<std::string, Math::
Wrenchd> m_extContactMap - The map contains names of the ft sensors and values of the wrench.
- std::vector<Eigen::VectorXd> m_totalTorqueFromContacts
- Joint torques due to known and unknown contacts on the sub-model.
-
Math::
Wrenchd m_wrench - Joint torques due to a specific contact.
- Eigen::VectorXd m_measurement
- Measurements coming from the sensors.
- std::map<std::string, Eigen::VectorXd> m_measurementMap
- Measurement map <measurement name, measurement value>.
- manif::SE3d::Tangent m_subModelBaseVelTemp
- Velocity of the base of the sub-model.
- std::vector<Eigen::MatrixXd> m_tempJacobianList
- List of jacobians per eache submodel.
- manif::SE3d m_worldTBase
- Sub-model base pose wrt the inertial frame.
- int m_offsetMeasurement
- Offset used to fill the measurement vector.
Function documentation
bool BipedalLocomotion:: Estimators:: RobotDynamicsEstimator:: UkfModel:: updateState()
updateState updates the robot state and dynamics and of the sub-model states and dynamics by using the estimation of the previous step.
Returns | true in case of success, false otherwise. |
---|