Footstep plan interpolator.
More...
#include <lipm_walking/PlanInterpolator.h>
Footstep plan interpolator.
Definition at line 50 of file PlanInterpolator.h.
◆ SE2d
◆ Gait
Gait type.
Walking is the most common one, where footsteps alternate on each side of the support path. Shuffling is used for lateral stepping: after each step, the robot brings back the other foot next to the current one. Turning is a special pattern where only footstep orientations change.
Enumerator |
---|
Walk | |
Shuffle | |
Turn | |
Definition at line 72 of file PlanInterpolator.h.
◆ PlanInterpolator()
lipm_walking::PlanInterpolator::PlanInterpolator |
( |
std::shared_ptr< mc_rtc::gui::StateBuilder > |
gui | ) |
|
|
inline |
Initialization just stores the GUI handle for later.
- Parameters
-
Definition at line 84 of file PlanInterpolator.h.
◆ addGUIElements()
void lipm_walking::PlanInterpolator::addGUIElements |
( |
| ) |
|
◆ availablePlans()
std::vector<std::string> lipm_walking::PlanInterpolator::availablePlans |
( |
| ) |
const |
|
inline |
List available contact plans.
- Returns
- keys Names of available contact plans.
Definition at line 127 of file PlanInterpolator.h.
◆ checkPlanUpdated()
bool lipm_walking::PlanInterpolator::checkPlanUpdated |
( |
| ) |
|
|
inline |
Checks whether the plan has been recomputed (run() was called)
- Warning
- This function is intended to be used only once to check and handle the updated plan status. All subsequent calls of this function until the next call of run() will return false
- Returns
- true If the plan has been updated
-
false Otherwise
Definition at line 286 of file PlanInterpolator.h.
◆ configure()
void lipm_walking::PlanInterpolator::configure |
( |
const mc_rtc::Configuration & |
config | ) |
|
Read configuration from dictionary.
- Parameters
-
config | Configuration dictionary. |
Definition at line 179 of file PlanInterpolator.cpp.
◆ customPlanName()
const std::string& lipm_walking::PlanInterpolator::customPlanName |
( |
| ) |
const |
|
inline |
Get name of current custom footstep plan.
- Returns
- name Name of custom plan.
Definition at line 137 of file PlanInterpolator.h.
◆ gait() [1/2]
std::string lipm_walking::PlanInterpolator::gait |
( |
| ) |
const |
|
inlinenoexcept |
Get current gait as string.
- Returns
- gait Current gait string.
Definition at line 147 of file PlanInterpolator.h.
◆ gait() [2/2]
void lipm_walking::PlanInterpolator::gait |
( |
const std::string & |
dir | ) |
|
|
inline |
◆ getPlan()
FootstepPlan lipm_walking::PlanInterpolator::getPlan |
( |
std::string |
name | ) |
|
|
inline |
◆ removeGUIElements()
void lipm_walking::PlanInterpolator::removeGUIElements |
( |
| ) |
|
◆ restoreBackwardTarget()
void lipm_walking::PlanInterpolator::restoreBackwardTarget |
( |
| ) |
|
|
inline |
◆ restoreForwardTarget()
void lipm_walking::PlanInterpolator::restoreForwardTarget |
( |
| ) |
|
|
inline |
◆ restoreLateralTarget()
void lipm_walking::PlanInterpolator::restoreLateralTarget |
( |
| ) |
|
|
inline |
◆ run()
void lipm_walking::PlanInterpolator::run |
( |
| ) |
|
◆ stepWidth() [1/2]
double lipm_walking::PlanInterpolator::stepWidth |
( |
| ) |
const |
|
inline |
◆ stepWidth() [2/2]
void lipm_walking::PlanInterpolator::stepWidth |
( |
double |
stepWidth | ) |
|
|
inline |
Set step width.
- Parameters
-
- Note
- Step width is defined as the lateral distance between left and right foot centers. See Figure 3-9 of Human Walking handbook (Editors J. Rose and J. G. Gamble).
Definition at line 256 of file PlanInterpolator.h.
◆ suggestGait()
void lipm_walking::PlanInterpolator::suggestGait |
( |
| ) |
|
◆ updateSupportPath()
void lipm_walking::PlanInterpolator::updateSupportPath |
( |
const sva::PTransformd & |
X_0_lf, |
|
|
const sva::PTransformd & |
X_0_rf |
|
) |
| |
Update support path display.
- Parameters
-
X_0_lf | Left foot transform. |
X_0_rf | Right foot transform. |
Definition at line 506 of file PlanInterpolator.cpp.
◆ worldReference() [1/2]
const sva::PTransformd& lipm_walking::PlanInterpolator::worldReference |
( |
| ) |
const |
|
inline |
◆ worldReference() [2/2]
void lipm_walking::PlanInterpolator::worldReference |
( |
const sva::PTransformd & |
worldReference | ) |
|
|
inline |
Set walking target in world frame.
- Parameters
-
worldReference | New target. |
Definition at line 274 of file PlanInterpolator.h.
◆ DEFAULT_EXTRA_STEP_WIDTH
constexpr double lipm_walking::PlanInterpolator::DEFAULT_EXTRA_STEP_WIDTH = 0. |
|
staticconstexpr |
◆ IN_PLACE_EXTRA_STEP_WIDTH
constexpr double lipm_walking::PlanInterpolator::IN_PLACE_EXTRA_STEP_WIDTH = 0.02 |
|
staticconstexpr |
◆ IN_PLACE_MAX_STEP_ANGLE
constexpr double lipm_walking::PlanInterpolator::IN_PLACE_MAX_STEP_ANGLE = 45. |
|
staticconstexpr |
◆ MAX_EXTRA_STEP_WIDTH
constexpr double lipm_walking::PlanInterpolator::MAX_EXTRA_STEP_WIDTH = 0.05 |
|
staticconstexpr |
◆ MAX_LATERAL_STEP_LENGTH
constexpr double lipm_walking::PlanInterpolator::MAX_LATERAL_STEP_LENGTH = 0.2 |
|
staticconstexpr |
◆ MAX_SAGITTAL_STEP_LENGTH
constexpr double lipm_walking::PlanInterpolator::MAX_SAGITTAL_STEP_LENGTH = 0.4 |
|
staticconstexpr |
◆ MIN_STEP_LENGTH
constexpr double lipm_walking::PlanInterpolator::MIN_STEP_LENGTH = 0.001 |
|
staticconstexpr |