Public Member Functions | Protected Attributes | List of all members
WalkingControl Class Reference

#include <walking_control.h>

Public Member Functions

void calcFootStepParam ()
 
void calcFootStepPose (double time, int step)
 
void calcFootTrajectory (int step)
 
void calcGoalFootPose ()
 
void calcPreviewControl (double time, int step)
 
void calcPreviewParam (std::vector< double_t > K, int K_row, int K_col, std::vector< double_t > P, int P_row, int P_col)
 
void calcRefZMP (int step)
 
double calcRefZMPx (int step)
 
double calcRefZMPy (int step)
 
void finalize ()
 
void getLIPM (std::vector< double_t > &x_lipm, std::vector< double_t > &y_lipm)
 
double getLipmHeight ()
 
void getWalkingAccleration (std::vector< double_t > &l_foot_accel, std::vector< double_t > &r_foot_accel, std::vector< double_t > &body_accel)
 
void getWalkingOrientation (std::vector< double_t > &l_foot_Q, std::vector< double_t > &r_foot_Q, std::vector< double_t > &body_Q)
 
void getWalkingPosition (std::vector< double_t > &l_foot_pos, std::vector< double_t > &r_foot_pos, std::vector< double_t > &body_pos)
 
void getWalkingState (int &walking_leg, int &walking_phase)
 
void getWalkingVelocity (std::vector< double_t > &l_foot_vel, std::vector< double_t > &r_foot_vel, std::vector< double_t > &body_vel)
 
void initialize (op3_online_walking_module_msgs::FootStepCommand foot_step_command, std::vector< double_t > init_body_pos, std::vector< double_t > init_body_Q, std::vector< double_t > init_r_foot_pos, std::vector< double_t > init_r_foot_Q, std::vector< double_t > init_l_foot_pos, std::vector< double_t > init_l_foot_Q)
 
void initialize (op3_online_walking_module_msgs::Step2DArray foot_step_2d, std::vector< double_t > init_body_pos, std::vector< double_t > init_body_Q, std::vector< double_t > init_r_foot_pos, std::vector< double_t > init_r_foot_Q, std::vector< double_t > init_l_foot_pos, std::vector< double_t > init_l_foot_Q)
 
void next ()
 
void set (double time, int step, bool foot_step_2d)
 
void transformFootStep2D ()
 
 WalkingControl (double control_cycle, double dsp_ratio, double lipm_height, double foot_height_max, double zmp_offset_x, double zmp_offset_y, std::vector< double_t > x_lipm, std::vector< double_t > y_lipm, double foot_distance)
 
virtual ~WalkingControl ()
 

Protected Attributes

Eigen::MatrixXd A_
 
Eigen::MatrixXd b_
 
robotis_framework::MinimumJerkbody_trajectory_
 
Eigen::MatrixXd c_
 
double control_cycle_
 
std::vector< double_t > des_body_accel_
 
std::vector< double_t > des_body_pos_
 
Eigen::Quaterniond des_body_Q_
 
std::vector< double_t > des_body_vel_
 
std::vector< double_t > des_l_foot_accel_
 
std::vector< double_t > des_l_foot_pos_
 
Eigen::Quaterniond des_l_foot_Q_
 
std::vector< double_t > des_l_foot_vel_
 
std::vector< double_t > des_r_foot_accel_
 
std::vector< double_t > des_r_foot_pos_
 
Eigen::Quaterniond des_r_foot_Q_
 
std::vector< double_t > des_r_foot_vel_
 
double dsp_ratio_
 
Eigen::MatrixXd f_
 
double fin_time_
 
double foot_origin_shift_x_
 
double foot_origin_shift_y_
 
double foot_size_x_
 
double foot_size_y_
 
op3_online_walking_module_msgs::Step2DArray foot_step_2d_
 
op3_online_walking_module_msgs::FootStepCommand foot_step_command_
 
op3_online_walking_module_msgs::FootStepArray foot_step_param_
 
int foot_step_size_
 
double foot_tra_max_z_
 
std::vector< double_t > goal_body_accel_
 
std::vector< double_t > goal_body_pos_
 
Eigen::Quaterniond goal_body_Q_
 
std::vector< double_t > goal_body_vel_
 
std::vector< double_t > goal_l_foot_accel_
 
std::vector< double_t > goal_l_foot_pos_
 
Eigen::MatrixXd goal_l_foot_pos_buffer_
 
Eigen::Quaterniond goal_l_foot_Q_
 
std::vector< double_t > goal_l_foot_vel_
 
std::vector< double_t > goal_r_foot_accel_
 
std::vector< double_t > goal_r_foot_pos_
 
Eigen::MatrixXd goal_r_foot_pos_buffer_
 
Eigen::Quaterniond goal_r_foot_Q_
 
std::vector< double_t > goal_r_foot_vel_
 
std::vector< double_t > init_body_accel_
 
std::vector< double_t > init_body_pos_
 
Eigen::Quaterniond init_body_Q_
 
std::vector< double_t > init_body_vel_
 
double init_body_yaw_angle_
 
std::vector< double_t > init_l_foot_accel_
 
std::vector< double_t > init_l_foot_pos_
 
Eigen::Quaterniond init_l_foot_Q_
 
std::vector< double_t > init_l_foot_vel_
 
std::vector< double_t > init_r_foot_accel_
 
std::vector< double_t > init_r_foot_pos_
 
Eigen::Quaterniond init_r_foot_Q_
 
std::vector< double_t > init_r_foot_vel_
 
double init_time_
 
Eigen::MatrixXd K_
 
double k_s_
 
Eigen::MatrixXd k_x_
 
robotis_framework::MinimumJerkViaPointl_foot_tra_
 
double lipm_height_
 
Eigen::MatrixXd P_
 
robotis_framework::PreviewControlpreview_control_
 
op3_online_walking_module_msgs::PreviewResponse preview_response_
 
int preview_size_
 
double preview_sum_zmp_x_
 
double preview_sum_zmp_y_
 
double preview_time_
 
robotis_framework::MinimumJerkViaPointr_foot_tra_
 
Eigen::MatrixXd ref_zmp_buffer_
 
double ref_zmp_x_
 
double ref_zmp_y_
 
double sum_of_cx_
 
double sum_of_cy_
 
double sum_of_zmp_x_
 
double sum_of_zmp_y_
 
Eigen::MatrixXd u_x_
 
Eigen::MatrixXd u_y_
 
int walking_leg_
 
int walking_phase_
 
Eigen::MatrixXd x_lipm_
 
Eigen::MatrixXd y_lipm_
 
double zmp_offset_x_
 
double zmp_offset_y_
 

Detailed Description

Definition at line 51 of file walking_control.h.

Constructor & Destructor Documentation

WalkingControl::WalkingControl ( double  control_cycle,
double  dsp_ratio,
double  lipm_height,
double  foot_height_max,
double  zmp_offset_x,
double  zmp_offset_y,
std::vector< double_t >  x_lipm,
std::vector< double_t >  y_lipm,
double  foot_distance 
)

Definition at line 22 of file walking_control.cpp.

WalkingControl::~WalkingControl ( )
virtual

Definition at line 107 of file walking_control.cpp.

Member Function Documentation

void WalkingControl::calcFootStepParam ( )

Definition at line 308 of file walking_control.cpp.

void WalkingControl::calcFootStepPose ( double  time,
int  step 
)

Definition at line 609 of file walking_control.cpp.

void WalkingControl::calcFootTrajectory ( int  step)

Definition at line 496 of file walking_control.cpp.

void WalkingControl::calcGoalFootPose ( )

Definition at line 670 of file walking_control.cpp.

void WalkingControl::calcPreviewControl ( double  time,
int  step 
)

Definition at line 846 of file walking_control.cpp.

void WalkingControl::calcPreviewParam ( std::vector< double_t >  K,
int  K_row,
int  K_col,
std::vector< double_t >  P,
int  P_row,
int  P_col 
)

Definition at line 779 of file walking_control.cpp.

void WalkingControl::calcRefZMP ( int  step)

Definition at line 641 of file walking_control.cpp.

double WalkingControl::calcRefZMPx ( int  step)

Definition at line 732 of file walking_control.cpp.

double WalkingControl::calcRefZMPy ( int  step)

Definition at line 755 of file walking_control.cpp.

void WalkingControl::finalize ( )

Definition at line 216 of file walking_control.cpp.

void WalkingControl::getLIPM ( std::vector< double_t > &  x_lipm,
std::vector< double_t > &  y_lipm 
)

Definition at line 959 of file walking_control.cpp.

double WalkingControl::getLipmHeight ( )

Definition at line 211 of file walking_control.cpp.

void WalkingControl::getWalkingAccleration ( std::vector< double_t > &  l_foot_accel,
std::vector< double_t > &  r_foot_accel,
std::vector< double_t > &  body_accel 
)

Definition at line 928 of file walking_control.cpp.

void WalkingControl::getWalkingOrientation ( std::vector< double_t > &  l_foot_Q,
std::vector< double_t > &  r_foot_Q,
std::vector< double_t > &  body_Q 
)

Definition at line 939 of file walking_control.cpp.

void WalkingControl::getWalkingPosition ( std::vector< double_t > &  l_foot_pos,
std::vector< double_t > &  r_foot_pos,
std::vector< double_t > &  body_pos 
)

Definition at line 904 of file walking_control.cpp.

void WalkingControl::getWalkingState ( int &  walking_leg,
int &  walking_phase 
)

Definition at line 971 of file walking_control.cpp.

void WalkingControl::getWalkingVelocity ( std::vector< double_t > &  l_foot_vel,
std::vector< double_t > &  r_foot_vel,
std::vector< double_t > &  body_vel 
)

Definition at line 917 of file walking_control.cpp.

void WalkingControl::initialize ( op3_online_walking_module_msgs::FootStepCommand  foot_step_command,
std::vector< double_t >  init_body_pos,
std::vector< double_t >  init_body_Q,
std::vector< double_t >  init_r_foot_pos,
std::vector< double_t >  init_r_foot_Q,
std::vector< double_t >  init_l_foot_pos,
std::vector< double_t >  init_l_foot_Q 
)

Definition at line 112 of file walking_control.cpp.

void WalkingControl::initialize ( op3_online_walking_module_msgs::Step2DArray  foot_step_2d,
std::vector< double_t >  init_body_pos,
std::vector< double_t >  init_body_Q,
std::vector< double_t >  init_r_foot_pos,
std::vector< double_t >  init_r_foot_Q,
std::vector< double_t >  init_l_foot_pos,
std::vector< double_t >  init_l_foot_Q 
)

Definition at line 156 of file walking_control.cpp.

void WalkingControl::next ( )

Definition at line 200 of file walking_control.cpp.

void WalkingControl::set ( double  time,
int  step,
bool  foot_step_2d 
)

Definition at line 221 of file walking_control.cpp.

void WalkingControl::transformFootStep2D ( )

Definition at line 422 of file walking_control.cpp.

Member Data Documentation

Eigen::MatrixXd WalkingControl::A_
protected

Definition at line 142 of file walking_control.h.

Eigen::MatrixXd WalkingControl::b_
protected

Definition at line 142 of file walking_control.h.

robotis_framework::MinimumJerk* WalkingControl::body_trajectory_
protected

Definition at line 108 of file walking_control.h.

Eigen::MatrixXd WalkingControl::c_
protected

Definition at line 142 of file walking_control.h.

double WalkingControl::control_cycle_
protected

Definition at line 115 of file walking_control.h.

std::vector<double_t> WalkingControl::des_body_accel_
protected

Definition at line 162 of file walking_control.h.

std::vector<double_t> WalkingControl::des_body_pos_
protected

Definition at line 162 of file walking_control.h.

Eigen::Quaterniond WalkingControl::des_body_Q_
protected

Definition at line 164 of file walking_control.h.

std::vector<double_t> WalkingControl::des_body_vel_
protected

Definition at line 162 of file walking_control.h.

std::vector<double_t> WalkingControl::des_l_foot_accel_
protected

Definition at line 167 of file walking_control.h.

std::vector<double_t> WalkingControl::des_l_foot_pos_
protected

Definition at line 167 of file walking_control.h.

Eigen::Quaterniond WalkingControl::des_l_foot_Q_
protected

Definition at line 169 of file walking_control.h.

std::vector<double_t> WalkingControl::des_l_foot_vel_
protected

Definition at line 167 of file walking_control.h.

std::vector<double_t> WalkingControl::des_r_foot_accel_
protected

Definition at line 172 of file walking_control.h.

std::vector<double_t> WalkingControl::des_r_foot_pos_
protected

Definition at line 172 of file walking_control.h.

Eigen::Quaterniond WalkingControl::des_r_foot_Q_
protected

Definition at line 174 of file walking_control.h.

std::vector<double_t> WalkingControl::des_r_foot_vel_
protected

Definition at line 172 of file walking_control.h.

double WalkingControl::dsp_ratio_
protected

Definition at line 126 of file walking_control.h.

Eigen::MatrixXd WalkingControl::f_
protected

Definition at line 145 of file walking_control.h.

double WalkingControl::fin_time_
protected

Definition at line 114 of file walking_control.h.

double WalkingControl::foot_origin_shift_x_
protected

Definition at line 123 of file walking_control.h.

double WalkingControl::foot_origin_shift_y_
protected

Definition at line 124 of file walking_control.h.

double WalkingControl::foot_size_x_
protected

Definition at line 121 of file walking_control.h.

double WalkingControl::foot_size_y_
protected

Definition at line 122 of file walking_control.h.

op3_online_walking_module_msgs::Step2DArray WalkingControl::foot_step_2d_
protected

Definition at line 134 of file walking_control.h.

op3_online_walking_module_msgs::FootStepCommand WalkingControl::foot_step_command_
protected

Definition at line 130 of file walking_control.h.

op3_online_walking_module_msgs::FootStepArray WalkingControl::foot_step_param_
protected

Definition at line 131 of file walking_control.h.

int WalkingControl::foot_step_size_
protected

Definition at line 129 of file walking_control.h.

double WalkingControl::foot_tra_max_z_
protected

Definition at line 127 of file walking_control.h.

std::vector<double_t> WalkingControl::goal_body_accel_
protected

Definition at line 163 of file walking_control.h.

std::vector<double_t> WalkingControl::goal_body_pos_
protected

Definition at line 163 of file walking_control.h.

Eigen::Quaterniond WalkingControl::goal_body_Q_
protected

Definition at line 164 of file walking_control.h.

std::vector<double_t> WalkingControl::goal_body_vel_
protected

Definition at line 163 of file walking_control.h.

std::vector<double_t> WalkingControl::goal_l_foot_accel_
protected

Definition at line 168 of file walking_control.h.

std::vector<double_t> WalkingControl::goal_l_foot_pos_
protected

Definition at line 168 of file walking_control.h.

Eigen::MatrixXd WalkingControl::goal_l_foot_pos_buffer_
protected

Definition at line 155 of file walking_control.h.

Eigen::Quaterniond WalkingControl::goal_l_foot_Q_
protected

Definition at line 169 of file walking_control.h.

std::vector<double_t> WalkingControl::goal_l_foot_vel_
protected

Definition at line 168 of file walking_control.h.

std::vector<double_t> WalkingControl::goal_r_foot_accel_
protected

Definition at line 173 of file walking_control.h.

std::vector<double_t> WalkingControl::goal_r_foot_pos_
protected

Definition at line 173 of file walking_control.h.

Eigen::MatrixXd WalkingControl::goal_r_foot_pos_buffer_
protected

Definition at line 155 of file walking_control.h.

Eigen::Quaterniond WalkingControl::goal_r_foot_Q_
protected

Definition at line 174 of file walking_control.h.

std::vector<double_t> WalkingControl::goal_r_foot_vel_
protected

Definition at line 173 of file walking_control.h.

std::vector<double_t> WalkingControl::init_body_accel_
protected

Definition at line 161 of file walking_control.h.

std::vector<double_t> WalkingControl::init_body_pos_
protected

Definition at line 161 of file walking_control.h.

Eigen::Quaterniond WalkingControl::init_body_Q_
protected

Definition at line 164 of file walking_control.h.

std::vector<double_t> WalkingControl::init_body_vel_
protected

Definition at line 161 of file walking_control.h.

double WalkingControl::init_body_yaw_angle_
protected

Definition at line 159 of file walking_control.h.

std::vector<double_t> WalkingControl::init_l_foot_accel_
protected

Definition at line 166 of file walking_control.h.

std::vector<double_t> WalkingControl::init_l_foot_pos_
protected

Definition at line 166 of file walking_control.h.

Eigen::Quaterniond WalkingControl::init_l_foot_Q_
protected

Definition at line 169 of file walking_control.h.

std::vector<double_t> WalkingControl::init_l_foot_vel_
protected

Definition at line 166 of file walking_control.h.

std::vector<double_t> WalkingControl::init_r_foot_accel_
protected

Definition at line 171 of file walking_control.h.

std::vector<double_t> WalkingControl::init_r_foot_pos_
protected

Definition at line 171 of file walking_control.h.

Eigen::Quaterniond WalkingControl::init_r_foot_Q_
protected

Definition at line 174 of file walking_control.h.

std::vector<double_t> WalkingControl::init_r_foot_vel_
protected

Definition at line 171 of file walking_control.h.

double WalkingControl::init_time_
protected

Definition at line 114 of file walking_control.h.

Eigen::MatrixXd WalkingControl::K_
protected

Definition at line 149 of file walking_control.h.

double WalkingControl::k_s_
protected

Definition at line 144 of file walking_control.h.

Eigen::MatrixXd WalkingControl::k_x_
protected

Definition at line 143 of file walking_control.h.

robotis_framework::MinimumJerkViaPoint* WalkingControl::l_foot_tra_
protected

Definition at line 110 of file walking_control.h.

double WalkingControl::lipm_height_
protected

Definition at line 139 of file walking_control.h.

Eigen::MatrixXd WalkingControl::P_
protected

Definition at line 149 of file walking_control.h.

robotis_framework::PreviewControl* WalkingControl::preview_control_
protected

Definition at line 112 of file walking_control.h.

op3_online_walking_module_msgs::PreviewResponse WalkingControl::preview_response_
protected

Definition at line 132 of file walking_control.h.

int WalkingControl::preview_size_
protected

Definition at line 137 of file walking_control.h.

double WalkingControl::preview_sum_zmp_x_
protected

Definition at line 152 of file walking_control.h.

double WalkingControl::preview_sum_zmp_y_
protected

Definition at line 152 of file walking_control.h.

double WalkingControl::preview_time_
protected

Definition at line 138 of file walking_control.h.

robotis_framework::MinimumJerkViaPoint* WalkingControl::r_foot_tra_
protected

Definition at line 109 of file walking_control.h.

Eigen::MatrixXd WalkingControl::ref_zmp_buffer_
protected

Definition at line 156 of file walking_control.h.

double WalkingControl::ref_zmp_x_
protected

Definition at line 151 of file walking_control.h.

double WalkingControl::ref_zmp_y_
protected

Definition at line 151 of file walking_control.h.

double WalkingControl::sum_of_cx_
protected

Definition at line 141 of file walking_control.h.

double WalkingControl::sum_of_cy_
protected

Definition at line 141 of file walking_control.h.

double WalkingControl::sum_of_zmp_x_
protected

Definition at line 140 of file walking_control.h.

double WalkingControl::sum_of_zmp_y_
protected

Definition at line 140 of file walking_control.h.

Eigen::MatrixXd WalkingControl::u_x_
protected

Definition at line 146 of file walking_control.h.

Eigen::MatrixXd WalkingControl::u_y_
protected

Definition at line 146 of file walking_control.h.

int WalkingControl::walking_leg_
protected

Definition at line 117 of file walking_control.h.

int WalkingControl::walking_phase_
protected

Definition at line 118 of file walking_control.h.

Eigen::MatrixXd WalkingControl::x_lipm_
protected

Definition at line 147 of file walking_control.h.

Eigen::MatrixXd WalkingControl::y_lipm_
protected

Definition at line 147 of file walking_control.h.

double WalkingControl::zmp_offset_x_
protected

Definition at line 153 of file walking_control.h.

double WalkingControl::zmp_offset_y_
protected

Definition at line 153 of file walking_control.h.


The documentation for this class was generated from the following files:


op3_online_walking_module
Author(s): SCH
autogenerated on Mon Jun 10 2019 14:41:22