|
centroidal_control_collection
|
QP-based linear MPC for one-dimensional CoM-ZMP model. More...
#include <LinearMpcZmp.h>
Classes | |
| struct | RefData |
| Reference data. More... | |
Public Types | |
| using | InitialParam = Eigen::Vector3d |
| Initial parameter. More... | |
Public Member Functions | |
| LinearMpcZmp1d (double com_height, double horizon_duration, double horizon_dt, QpSolverCollection::QpSolverType qp_solver_type=QpSolverCollection::QpSolverType::Any) | |
| Constructor. More... | |
| double | 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 Member Functions | |
| double | procOnce (const std::vector< RefData > &ref_data_seq, const InitialParam &initial_param, double current_time, double control_dt) |
| Process one step. More... | |
Protected Attributes | |
| double | horizon_dt_ = 0 |
| Discretization timestep in horizon [sec]. More... | |
| int | horizon_steps_ = -1 |
| Number of steps in horizon. More... | |
| std::shared_ptr< ComZmpModelJerkInput > | model_ |
| State-space model. More... | |
| std::shared_ptr< InvariantSequentialExtension< 3, 1, 1 > > | seq_ext_ |
| Sequential extension of state-space model. More... | |
| std::shared_ptr< QpSolverCollection::QpSolver > | qp_solver_ |
| QP solver. More... | |
| QpSolverCollection::QpCoeff | qp_coeff_ |
| QP coefficients. More... | |
Friends | |
| class | LinearMpcZmp |
QP-based linear MPC for one-dimensional CoM-ZMP model.
See the following for a detailed formulation.
Definition at line 20 of file LinearMpcZmp.h.
| using CCC::LinearMpcZmp1d::InitialParam = Eigen::Vector3d |
Initial parameter.
First element is CoM position, second element is CoM velocity, and third element is CoM acceleration.
Definition at line 36 of file LinearMpcZmp.h.
| CCC::LinearMpcZmp1d::LinearMpcZmp1d | ( | double | com_height, |
| double | horizon_duration, | ||
| double | horizon_dt, | ||
| QpSolverCollection::QpSolverType | qp_solver_type = QpSolverCollection::QpSolverType::Any |
||
| ) |
Constructor.
| com_height | height of robot CoM [m] |
| horizon_duration | horizon duration [sec] |
| horizon_dt | discretization timestep in horizon [sec] |
| qp_solver_type | QP solver type |
| double CCC::LinearMpcZmp1d::planOnce | ( | const std::function< RefData(double)> & | ref_data_func, |
| const InitialParam & | initial_param, | ||
| double | current_time, | ||
| double | control_dt = -1 |
||
| ) |
Plan one step.
| ref_data_func | function of reference data |
| initial_param | initial parameter (CoM position, velocity, and acceleration) |
| current_time | current time (i.e., start time of horizon) [sec] |
| control_dt | control timestep used to calculate ZMP (if omitted, horizon_dt is used) |
|
protected |
Process one step.
|
friend |
Definition at line 22 of file LinearMpcZmp.h.
|
protected |
Discretization timestep in horizon [sec].
Definition at line 71 of file LinearMpcZmp.h.
|
protected |
Number of steps in horizon.
Definition at line 74 of file LinearMpcZmp.h.
|
protected |
State-space model.
Definition at line 77 of file LinearMpcZmp.h.
|
protected |
QP coefficients.
Definition at line 86 of file LinearMpcZmp.h.
|
protected |
QP solver.
Definition at line 83 of file LinearMpcZmp.h.
|
protected |
Sequential extension of state-space model.
Definition at line 80 of file LinearMpcZmp.h.