dg_tools
dynamicgraph::sot::ReactiveLQRController Class Reference
Inheritance diagram for dynamicgraph::sot::ReactiveLQRController:
Collaboration diagram for dynamicgraph::sot::ReactiveLQRController:

Public Member Functions

 ReactiveLQRController (const std::string &name)
 
void init (const double &step)
 
virtual const std::string & getClassName (void) const
 

Public Attributes

SignalPtr< dg::Vector, int > com_posSIN
 
SignalPtr< dg::Vector, int > com_velSIN
 
SignalPtr< dg::Vector, int > com_oriSIN
 
SignalPtr< dg::Vector, int > com_ang_velSIN
 
SignalPtr< dg::Vector, int > end_eff_pos_12dSIN
 
SignalPtr< dg::Vector, int > des_fffSIN
 
SignalPtr< dg::Vector, int > cnt_valueSIN
 
SignalPtr< dg::Vector, int > cnt_sensor_valueSIN
 
SignalPtr< dg::Vector, int > state_vectorSIN
 
SignalPtr< dg::Vector, int > massSIN
 
SignalPtr< dg::Matrix, int > inertiaSIN
 
SignalPtr< dg::Vector, int > horizonSIN
 
SignalPtr< dg::Matrix, int > qSIN
 
SignalPtr< dg::Matrix, int > rSIN
 
SignalTimeDependent< dg::Matrix, int > lqr_gainsSOUT
 

Static Public Attributes

static const double TIME_STEP_DEFAULT
 
static const std::string CLASS_NAME
 

Protected Member Functions

double & setsize (int dimension)
 
Eigen::VectorXd compute_dyn_ (Eigen::Vector3d com_pos, Eigen::Vector3d com_vel, Eigen::Quaternion< double > ori, Eigen::Vector3d com_ang_vel, Eigen::VectorXd end_eff_pos_12d, Eigen::VectorXd des_fff, Eigen::Vector4d cnt_value, double mass, Eigen::MatrixXd inertia, Eigen::MatrixXd &A_t, Eigen::MatrixXd &B_t)
 
void compute_lin_dyn_ (Eigen::MatrixXd lin_A_t, Eigen::MatrixXd lin_B_t)
 
void compute_num_lin_dyn_ (Eigen::Vector3d com_pos_t, Eigen::VectorXd com_vel, Eigen::Vector3d com_ang_vel_t, Eigen::Quaternion< double > ori_t, Eigen::VectorXd end_eff_pos_12d_t, Eigen::Vector4d cnt_value_t, Eigen::Vector3d com_pos_t1, Eigen::Vector3d com_vel_t1, Eigen::Vector3d com_ang_vel_t1, Eigen::Quaternion< double > ori_t1, Eigen::VectorXd end_eff_pos_12d_t1, Eigen::Vector4d cnt_value_t1, Eigen::VectorXd des_fff, double mass, Eigen::MatrixXd inertia, Eigen::MatrixXd &lin_A_t, Eigen::MatrixXd &lin_B_t)
 
Eigen::MatrixXd compute_r_cross_mat_ (Eigen::VectorXd end_eff_pos, Eigen::Vector3d com_pos)
 
void compute_lqr_gains_ (Eigen::MatrixXd Q, Eigen::MatrixXd R, Eigen::MatrixXd lin_A, Eigen::MatrixXd lin_B, Eigen::MatrixXd P_prev, Eigen::MatrixXd &P, Eigen::MatrixXd &K)
 
dynamicgraph::Matrix & return_lqr_gains_ (dynamicgraph::Matrix &lqr_gains, int t)
 

Protected Attributes

double TimeStep
 
Eigen::MatrixXd omega
 
Eigen::MatrixXd inertia_global_inv
 
Eigen::MatrixXd mass_inv_identity
 
Eigen::MatrixXd R_cross_mat
 
Eigen::MatrixXd R_cross_mat_fl
 
Eigen::MatrixXd R_cross_mat_fr
 
Eigen::MatrixXd R_cross_mat_hl
 
Eigen::MatrixXd R_cross_mat_hr
 
Eigen::MatrixXd A_t
 
Eigen::MatrixXd B_t
 
Eigen::MatrixXd A_t1
 
Eigen::MatrixXd B_t1
 
Eigen::VectorXd x
 
Eigen::VectorXd unit_vec
 
Eigen::Vector3d com_pos_pd
 
Eigen::Vector3d com_vel_pd
 
Eigen::Vector3d com_ang_vel_pd
 
Eigen::Quaternion< double > com_ori_pd
 
Eigen::MatrixXd P_prev
 
Eigen::MatrixXd K_prev
 
Eigen::MatrixXd P
 
Eigen::MatrixXd K
 
Eigen::VectorXd com_pos_t
 
Eigen::VectorXd com_vel_t
 
Eigen::VectorXd com_ang_vel_t
 
Eigen::VectorXd ori_tmp
 
Eigen::Quaternion< double > com_ori_t
 
Eigen::VectorXd des_fff_t
 
Eigen::VectorXd cnt_value_t
 
Eigen::VectorXd end_eff_pos_12d_t
 
Eigen::VectorXd xd_t
 
Eigen::VectorXd com_pos_t1
 
Eigen::VectorXd com_vel_t1
 
Eigen::VectorXd com_ang_vel_t1
 
Eigen::Quaternion< double > com_ori_t1
 
Eigen::VectorXd des_fff_t1
 
Eigen::VectorXd cnt_value_t1
 
Eigen::VectorXd end_eff_pos_12d_t1
 
Eigen::VectorXd xd_t1
 
Eigen::MatrixXd lin_A_ht
 
Eigen::MatrixXd lin_B_ht
 

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