centroidal_control_collection
Classes | Public Member Functions | Protected Attributes | List of all members
CCC::IntrinsicallyStableMpc Class Reference

QP-based MPC with stability constraint for CoM-ZMP model. More...

#include <IntrinsicallyStableMpc.h>

Classes

struct  InitialParam
 Initial parameter. More...
 
struct  RefData
 Reference data. More...
 

Public Member Functions

 IntrinsicallyStableMpc (double com_height, double horizon_duration, double horizon_dt, QpSolverCollection::QpSolverType qp_solver_type=QpSolverCollection::QpSolverType::Any, const IntrinsicallyStableMpc1d::WeightParam &weight_param=IntrinsicallyStableMpc1d::WeightParam())
 Constructor. More...
 
Eigen::Vector2d planOnce (const std::function< RefData(double)> &ref_data_func, const InitialParam &initial_param, double current_time, double control_dt=-1)
 Plan one step. More...
 

Protected Attributes

std::shared_ptr< IntrinsicallyStableMpc1dmpc_1d_
 One-dimensional linear MPC. More...
 
std::vector< IntrinsicallyStableMpc1d::RefDataref_data_seq_x_
 Reference data sequence of x. More...
 
std::vector< IntrinsicallyStableMpc1d::RefDataref_data_seq_y_
 Reference data sequence of y. More...
 

Detailed Description

QP-based MPC with stability constraint for CoM-ZMP model.

See the following for a detailed formulation.

Definition at line 121 of file IntrinsicallyStableMpc.h.

Constructor & Destructor Documentation

◆ IntrinsicallyStableMpc()

CCC::IntrinsicallyStableMpc::IntrinsicallyStableMpc ( double  com_height,
double  horizon_duration,
double  horizon_dt,
QpSolverCollection::QpSolverType  qp_solver_type = QpSolverCollection::QpSolverType::Any,
const IntrinsicallyStableMpc1d::WeightParam weight_param = IntrinsicallyStableMpc1d::WeightParam() 
)
inline

Constructor.

Parameters
com_heightheight of robot CoM [m]
horizon_durationhorizon duration [sec]
horizon_dtdiscretization timestep in horizon [sec]
qp_solver_typeQP solver type
weight_paramobjective weight parameter

Definition at line 163 of file IntrinsicallyStableMpc.h.

Member Function Documentation

◆ planOnce()

Eigen::Vector2d CCC::IntrinsicallyStableMpc::planOnce ( const std::function< RefData(double)> &  ref_data_func,
const InitialParam initial_param,
double  current_time,
double  control_dt = -1 
)

Plan one step.

Parameters
ref_data_funcfunction of reference data
initial_paraminitial parameter
current_timecurrent time (i.e., start time of horizon) [sec]
control_dtcontrol timestep used to calculate ZMP (if omitted, horizon_dt is used)
Returns
planned ZMP

Member Data Documentation

◆ mpc_1d_

std::shared_ptr<IntrinsicallyStableMpc1d> CCC::IntrinsicallyStableMpc::mpc_1d_
protected

One-dimensional linear MPC.

Definition at line 190 of file IntrinsicallyStableMpc.h.

◆ ref_data_seq_x_

std::vector<IntrinsicallyStableMpc1d::RefData> CCC::IntrinsicallyStableMpc::ref_data_seq_x_
protected

Reference data sequence of x.

Definition at line 193 of file IntrinsicallyStableMpc.h.

◆ ref_data_seq_y_

std::vector<IntrinsicallyStableMpc1d::RefData> CCC::IntrinsicallyStableMpc::ref_data_seq_y_
protected

Reference data sequence of y.

Definition at line 196 of file IntrinsicallyStableMpc.h.


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