#include <biped-stabilizer/cop_stabilizer.hpp>
Public Member Functions | |
EIGEN_MAKE_ALIGNED_OPERATOR_NEW | CopStabilizer () |
CopStabilizer (const CopStabilizerSettings &settings) | |
CopStabilizer. More... | |
virtual | ~CopStabilizer () |
void | configure (const CopStabilizerSettings &settings) |
const CopStabilizerSettings & | getSettings () |
void | stabilize (const eVector3 &actual_com, const eVector3 &actual_com_vel, const eVector3 &actual_com_acc, const eVector3 &actual_cop, const eMatrixHoms &actual_stance_poses, const eVector3 &reference_com, const eVector3 &reference_com_vel, const eVector3 &reference_com_acc, const eVector3 &reference_com_jerk, eVector3 &desired_com, eVector3 &desired_com_vel, eVector3 &desired_com_acc, eVector3 &desired_icp, eVector3 &actual_icp, eVector3 &desired_cop_reference, eVector3 &desired_cop_computed) |
void | stabilizeCOP (const eVector3 &actual_com, const eVector3 &actual_com_vel, const eVector3 &actual_com_acc, const eVector3 &actual_cop, const eMatrixHoms &actual_stance_poses, const eVector3 &reference_com, const eVector3 &reference_com_vel, const eVector3 &reference_com_acc, eVector3 &desired_com, eVector3 &desired_com_vel, eVector3 &desired_com_acc, eVector3 &desired_icp, eVector3 &actual_icp, eVector3 &desired_cop_reference, eVector3 &desired_cop_computed) |
void | stabilizeApproximateAcceleration (const eVector3 &actual_com, const eVector3 &actual_com_vel, const eVector3 &actual_com_acc, const eVector3 &actual_cop, const eMatrixHoms &actual_stance_poses, const eVector3 &reference_com, const eVector3 &reference_com_vel, const eVector3 &reference_com_acc, eVector3 &desired_com, eVector3 &desired_com_vel, eVector3 &desired_com_acc, eVector3 &desired_icp, eVector3 &actual_icp, eVector3 &desired_cop_reference, eVector3 &desired_cop_computed) |
void | stabilizeP_CC (const eVector3 &actual_com, const eVector3 &actual_com_vel, const eVector3 &actual_com_acc, const eVector3 &actual_cop, const eMatrixHoms &actual_stance_poses, const eVector3 &reference_com, const eVector3 &reference_com_vel, const eVector3 &reference_com_acc, eVector3 &desired_com, eVector3 &desired_com_vel, eVector3 &desired_com_acc, eVector3 &desired_icp, eVector3 &actual_icp, eVector3 &desired_cop_reference, eVector3 &desired_cop_computed) |
void | stabilizeJerk (const eVector3 &actual_com, const eVector3 &actual_com_vel, const eVector3 &actual_com_acc, const eVector3 &actual_cop, const eMatrixHoms &actual_stance_poses, const eVector3 &reference_com, const eVector3 &reference_com_vel, const eVector3 &reference_com_acc, const eVector3 &reference_com_jerk, eVector3 &desired_com, eVector3 &desired_com_vel, eVector3 &desired_com_acc, eVector3 &desired_icp, eVector3 &actual_icp, eVector3 &desired_cop_reference, eVector3 &desired_cop_computed) |
double | distributeForces (const eVector2 &desired_cop, const eVector2 LF_xy, const double LF_force_z, const eVector2 LF_torque_xy, const eVector2 RF_xy, const double RF_force_z, const eVector2 RF_torque_xy) |
std::array< eVector3, 3 > | getStableCoMs (const double &com_height) |
Protected Attributes | |
Eigen::Vector3d | target_com_ |
Eigen::Vector3d | target_com_vel_ |
Eigen::Vector3d | target_com_acc_ |
Eigen::Vector3d | target_com_jerk_ |
Eigen::Vector3d | non_linear_ |
eVector2 | target_cop_ |
eVector2 | desired_uncampled_cop_ |
eVector2 | errorSum_ |
eVector2 | cop_clamped |
eVector2 | estimated_disturbance_ |
biped_stabilizer::CopStabilizer::CopStabilizer | ( | ) |
biped_stabilizer::CopStabilizer::CopStabilizer | ( | const CopStabilizerSettings & | settings | ) |
g | the gravity constant along z |
height | the default height of the CoM |
dt | the timestep used by the controller |
cop_gains | the gains (x, y, z) used by the feedback law |
|
virtual |
void biped_stabilizer::CopStabilizer::configure | ( | const CopStabilizerSettings & | settings | ) |
double biped_stabilizer::CopStabilizer::distributeForces | ( | const eVector2 & | desired_cop, |
const eVector2 | LF_xy, | ||
const double | LF_force_z, | ||
const eVector2 | LF_torque_xy, | ||
const eVector2 | RF_xy, | ||
const double | RF_force_z, | ||
const eVector2 | RF_torque_xy | ||
) |
|
inline |
std::array< eVector3, 3 > biped_stabilizer::CopStabilizer::getStableCoMs | ( | const double & | com_height | ) |
void biped_stabilizer::CopStabilizer::stabilize | ( | const eVector3 & | actual_com, |
const eVector3 & | actual_com_vel, | ||
const eVector3 & | actual_com_acc, | ||
const eVector3 & | actual_cop, | ||
const eMatrixHoms & | actual_stance_poses, | ||
const eVector3 & | reference_com, | ||
const eVector3 & | reference_com_vel, | ||
const eVector3 & | reference_com_acc, | ||
const eVector3 & | reference_com_jerk, | ||
eVector3 & | desired_com, | ||
eVector3 & | desired_com_vel, | ||
eVector3 & | desired_com_acc, | ||
eVector3 & | desired_icp, | ||
eVector3 & | actual_icp, | ||
eVector3 & | desired_cop_reference, | ||
eVector3 & | desired_cop_computed | ||
) |
void biped_stabilizer::CopStabilizer::stabilizeApproximateAcceleration | ( | const eVector3 & | actual_com, |
const eVector3 & | actual_com_vel, | ||
const eVector3 & | actual_com_acc, | ||
const eVector3 & | actual_cop, | ||
const eMatrixHoms & | actual_stance_poses, | ||
const eVector3 & | reference_com, | ||
const eVector3 & | reference_com_vel, | ||
const eVector3 & | reference_com_acc, | ||
eVector3 & | desired_com, | ||
eVector3 & | desired_com_vel, | ||
eVector3 & | desired_com_acc, | ||
eVector3 & | desired_icp, | ||
eVector3 & | actual_icp, | ||
eVector3 & | desired_cop_reference, | ||
eVector3 & | desired_cop_computed | ||
) |
void biped_stabilizer::CopStabilizer::stabilizeCOP | ( | const eVector3 & | actual_com, |
const eVector3 & | actual_com_vel, | ||
const eVector3 & | actual_com_acc, | ||
const eVector3 & | actual_cop, | ||
const eMatrixHoms & | actual_stance_poses, | ||
const eVector3 & | reference_com, | ||
const eVector3 & | reference_com_vel, | ||
const eVector3 & | reference_com_acc, | ||
eVector3 & | desired_com, | ||
eVector3 & | desired_com_vel, | ||
eVector3 & | desired_com_acc, | ||
eVector3 & | desired_icp, | ||
eVector3 & | actual_icp, | ||
eVector3 & | desired_cop_reference, | ||
eVector3 & | desired_cop_computed | ||
) |
void biped_stabilizer::CopStabilizer::stabilizeJerk | ( | const eVector3 & | actual_com, |
const eVector3 & | actual_com_vel, | ||
const eVector3 & | actual_com_acc, | ||
const eVector3 & | actual_cop, | ||
const eMatrixHoms & | actual_stance_poses, | ||
const eVector3 & | reference_com, | ||
const eVector3 & | reference_com_vel, | ||
const eVector3 & | reference_com_acc, | ||
const eVector3 & | reference_com_jerk, | ||
eVector3 & | desired_com, | ||
eVector3 & | desired_com_vel, | ||
eVector3 & | desired_com_acc, | ||
eVector3 & | desired_icp, | ||
eVector3 & | actual_icp, | ||
eVector3 & | desired_cop_reference, | ||
eVector3 & | desired_cop_computed | ||
) |
void biped_stabilizer::CopStabilizer::stabilizeP_CC | ( | const eVector3 & | actual_com, |
const eVector3 & | actual_com_vel, | ||
const eVector3 & | actual_com_acc, | ||
const eVector3 & | actual_cop, | ||
const eMatrixHoms & | actual_stance_poses, | ||
const eVector3 & | reference_com, | ||
const eVector3 & | reference_com_vel, | ||
const eVector3 & | reference_com_acc, | ||
eVector3 & | desired_com, | ||
eVector3 & | desired_com_vel, | ||
eVector3 & | desired_com_acc, | ||
eVector3 & | desired_icp, | ||
eVector3 & | actual_icp, | ||
eVector3 & | desired_cop_reference, | ||
eVector3 & | desired_cop_computed | ||
) |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |