1 #ifndef _FLEXIBILITY_COMPENSATION_
2 #define _FLEXIBILITY_COMPENSATION_
24 out <<
"FlexSettings:\n";
31 out <<
" filtered: " << obj.
filtered <<
"\n";
33 out <<
" dt: " << obj.
dt <<
"\n" << std::endl;
43 test &= lhs.
dt == rhs.
dt;
54 unsigned long MA_samples_;
58 std::deque<eArray2> queue_LH_, queue_RH_;
61 eArray2 temp_damping_, temp_actuation_, temp_full_torque_, temp_stiff_;
62 eArray2 temp_equiv_stiff_, temp_compliance_;
64 eArray2 summation_LH_ = eArray2::Zero();
65 eArray2 summation_RH_ = eArray2::Zero();
66 unsigned long queueSize_;
72 eVector2 leftFlex0_ = eVector2::Zero();
73 eVector2 rightFlex0_ = eVector2::Zero();
75 eVector2 leftFlexRate_, rightFlexRate_;
78 eMatrix2 adaptLeftYawl_, adaptRightYawl_;
93 eVectorX &dq,
const Eigen::Array3i &hipIndices);
95 const eArray2 &movingAverage(
const eArray2 &x, std::deque<eArray2> &queue,
108 const eArray2 &damping,
const double dt);
Definition: flexi-hips.hpp:51
const FlexSettings & getSettings()
Definition: flexi-hips.hpp:117
const eVector2 & getRightFlex0(void)
Definition: flexi-hips.hpp:125
const std::deque< eArray2 > & get_queue_RH(void)
Definition: flexi-hips.hpp:130
void correctEstimatedDeflections(const eVectorX &desiredTorque, eVectorX &q, eVectorX &dq)
Definition: flexi-hips.cpp:119
const std::deque< eArray2 > & get_queue_LH(void)
Definition: flexi-hips.hpp:129
const eArray2 & get_summation_RH(void)
Definition: flexi-hips.hpp:128
const eVector2 & getLeftFlex0(void)
Definition: flexi-hips.hpp:122
void setRightFlex0(const eVector2 &delta0)
Definition: flexi-hips.hpp:124
void setLeftFlex0(const eVector2 &delta0)
Definition: flexi-hips.hpp:121
const eArray2 & get_summation_LH(void)
Definition: flexi-hips.hpp:127
const eVector2 & computeDeflection(const eArray2 &torques, const eArray2 &delta0, const eArray2 &stiffness, const eArray2 &damping, const double dt)
Definition: flexi-hips.cpp:18
void correctDeflections(const eVector2 &leftFlexingTorque, const eVector2 &rightFlexingTorque, eVectorX &q, eVectorX &dq)
Definition: flexi-hips.cpp:83
void reset()
Definition: flexi-hips.cpp:162
Flex()
Definition: flexi-hips.cpp:7
void initialize(const FlexSettings &settings)
Definition: flexi-hips.cpp:13
Definition: flexi-hips.hpp:9
Eigen::Vector3d eVector3
Definition: fwd.hpp:11
Eigen::Vector2d eVector2
Definition: fwd.hpp:8
Eigen::Matrix2d eMatrix2
Definition: fwd.hpp:13
Eigen::VectorXd eVectorX
Definition: fwd.hpp:12
Eigen::Array2d eArray2
Definition: fwd.hpp:9
Eigen::Matrix3d eMatrixRot
Definition: fwd.hpp:10
Definition: flexi-hips.hpp:11
friend bool operator==(const FlexSettings &lhs, const FlexSettings &rhs)
Definition: flexi-hips.hpp:37
eVector2 left_stiffness
Definition: flexi-hips.hpp:13
Eigen::Array3i left_hip_indices
Definition: flexi-hips.hpp:17
eVector2 right_stiffness
Definition: flexi-hips.hpp:15
double MA_duration
Definition: flexi-hips.hpp:20
Eigen::Array3i right_hip_indices
Definition: flexi-hips.hpp:18
double dt
Definition: flexi-hips.hpp:20
eVector2 left_damping
Definition: flexi-hips.hpp:14
friend std::ostream & operator<<(std::ostream &out, const FlexSettings &obj)
Definition: flexi-hips.hpp:23
eVector2 right_damping
Definition: flexi-hips.hpp:16
bool filtered
Definition: flexi-hips.hpp:21