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::map<std::string, Eigen::Vector3d> m_accMap
- The map contains names of the accelerometer sensors and values of the linear accelerations.
- std::map<std::string, Eigen::Vector3d> m_gyroMap
- The map contains names of the gyroscope sensors and values of the angular velocities.
- 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.
- std::map<std::string, std::string> m_stateToUkfNames
- Map used to retrieve the name of the variable passed as state and the ukf name.
- std::map<std::string, std::string> m_ukfNamesToMeasures
- Map used to retrieve the name of the variable passed as input and the ukf name.
- Eigen::Vector3d m_sensorLinearAcceleration
- Linear acceleration measured by an accelerometer.
- Eigen::Vector3d m_bOmegaIB
- Angular velocity of a frame.
- manif::SE3Tangentd m_tempAccelerometerVelocity
- Velocity of an accelerometer.
- manif::SE3Tangentd m_baseVelocity
- Submodel base velocity.
- manif::SE3Tangentd m_baseAcceleration
- Submodel base acceleration.
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. |
---|