21 } RecoveryChassisState;
30 } LegRecoveryCalibratedState;
40 const std::vector<control_toolbox::Pid*>& pid_legs,
const std::vector<control_toolbox::Pid*>& pid_thetas,
41 control_toolbox::Pid* pid_theta_diff);
42 void execute(
const ros::Time& time,
const ros::Duration& period)
override;
45 const char*
name()
const override
51 std::vector<hardware_interface::JointHandle*> joint_handles_;
52 std::vector<control_toolbox::Pid*> pid_legs_, pid_thetas_;
53 control_toolbox::Pid* pid_theta_diff_;
54 double leg_recovery_velocity_{ 5.0 }, threshold_{ 0.05 }, leg_theta_diff_{ 0.0 }, desired_leg_length_{ 0.36 };
55 double left_leg_recovery_feed_forward{ 10.0 }, right_leg_recovery_feed_forward{ 10.0 };
56 const double leg_recovery_velocity_const_{ 5.0 };
57 LegRecoveryState left_recovery_leg, right_recovery_leg;
58 RecoveryChassisState recovery_chassis_state_{ ForwardSlip };
59 bool detectd_flag{
false };
60 ChassisState chassis_state_;
Recover(BipedalControllerInterface *controller_, const std::vector< hardware_interface::JointHandle * > &joint_handles, const std::vector< control_toolbox::Pid * > &pid_legs, const std::vector< control_toolbox::Pid * > &pid_thetas, control_toolbox::Pid *pid_theta_diff)
Definition recover.cpp:10