placo::dynamics#
- class placo.AvoidSelfCollisionsDynamicsConstraint#
- configure(name: str, priority: str = 'soft', weight: float = 1.0) None#
Configures the object.
- Parameters:
name (str) – task name
priority (str) – task priority (hard, soft or scaled)
weight (float) – task weight
- name: any#
None( (placo.Prioritized)arg1) -> str :
- C++ signature :
std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > {lvalue} None(placo::tools::Prioritized {lvalue})
- priority: str#
Priority [str]
- self_collisions_margin: any#
None( (placo.AvoidSelfCollisionsDynamicsConstraint)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::AvoidSelfCollisionsConstraint {lvalue})
- self_collisions_trigger: any#
None( (placo.AvoidSelfCollisionsDynamicsConstraint)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::AvoidSelfCollisionsConstraint {lvalue})
- class placo.Contact#
- active: any#
None( (placo.Contact)arg1) -> bool :
- C++ signature :
bool {lvalue} None(placo::dynamics::Contact {lvalue})
- mu: any#
None( (placo.Contact)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Contact {lvalue})
- weight_forces: any#
None( (placo.Contact)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Contact {lvalue})
- weight_moments: any#
None( (placo.Contact)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Contact {lvalue})
- weight_tangentials: any#
None( (placo.Contact)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Contact {lvalue})
- wrench: any#
None( (placo.Contact)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, 1, 0, -1, 1> {lvalue} None(placo::dynamics::Contact {lvalue})
- class placo.Contact6D(frame_task: DynamicsFrameTask, unilateral: bool)#
see DynamicsSolver::add_fixed_planar_contact and DynamicsSolver::add_unilateral_planar_contact
- active: any#
None( (placo.Contact)arg1) -> bool :
- C++ signature :
bool {lvalue} None(placo::dynamics::Contact {lvalue})
- length: any#
None( (placo.Contact6D)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Contact6D {lvalue})
- mu: any#
None( (placo.Contact)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Contact {lvalue})
- orientation_task() DynamicsOrientationTask#
- position_task() DynamicsPositionTask#
- unilateral: any#
None( (placo.Contact6D)arg1) -> bool :
- C++ signature :
bool {lvalue} None(placo::dynamics::Contact6D {lvalue})
- weight_forces: any#
None( (placo.Contact)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Contact {lvalue})
- weight_moments: any#
None( (placo.Contact)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Contact {lvalue})
- weight_tangentials: any#
None( (placo.Contact)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Contact {lvalue})
- width: any#
None( (placo.Contact6D)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Contact6D {lvalue})
- wrench: any#
None( (placo.Contact)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, 1, 0, -1, 1> {lvalue} None(placo::dynamics::Contact {lvalue})
- zmp() ndarray#
Returns the contact ZMP in the local frame.
- class placo.DynamicsCoMTask(arg2: ndarray)#
- A: any#
None( (placo.DynamicsTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, -1, 0, -1, -1> {lvalue} None(placo::dynamics::Task {lvalue})
- b: any#
None( (placo.DynamicsTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, -1, 0, -1, -1> {lvalue} None(placo::dynamics::Task {lvalue})
- configure(name: str, priority: str = 'soft', weight: float = 1.0) None#
Configures the object.
- Parameters:
name (str) – task name
priority (str) – task priority (hard, soft or scaled)
weight (float) – task weight
- ddtarget_world: any#
None( (placo.DynamicsCoMTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, 3, 1, 0, 3, 1> {lvalue} None(placo::dynamics::CoMTask {lvalue})
- derror: any#
None( (placo.DynamicsTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, -1, 0, -1, -1> {lvalue} None(placo::dynamics::Task {lvalue})
- dtarget_world: any#
None( (placo.DynamicsCoMTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, 3, 1, 0, 3, 1> {lvalue} None(placo::dynamics::CoMTask {lvalue})
- error: any#
None( (placo.DynamicsTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, -1, 0, -1, -1> {lvalue} None(placo::dynamics::Task {lvalue})
- kd: any#
None( (placo.DynamicsTask)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Task {lvalue})
- kp: any#
None( (placo.DynamicsTask)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Task {lvalue})
- mask: any#
None( (placo.DynamicsCoMTask)arg1) -> placo.AxisesMask :
- C++ signature :
placo::tools::AxisesMask {lvalue} None(placo::dynamics::CoMTask {lvalue})
- name: any#
None( (placo.Prioritized)arg1) -> str :
- C++ signature :
std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > {lvalue} None(placo::tools::Prioritized {lvalue})
- priority: str#
Priority [str]
- target_world: any#
None( (placo.DynamicsCoMTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, 3, 1, 0, 3, 1> {lvalue} None(placo::dynamics::CoMTask {lvalue})
- class placo.DynamicsConstraint#
- configure(name: str, priority: str = 'soft', weight: float = 1.0) None#
Configures the object.
- Parameters:
name (str) – task name
priority (str) – task priority (hard, soft or scaled)
weight (float) – task weight
- name: any#
None( (placo.Prioritized)arg1) -> str :
- C++ signature :
std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > {lvalue} None(placo::tools::Prioritized {lvalue})
- priority: str#
Priority [str]
- class placo.DynamicsFrameTask#
- T_world_frame: any#
None( (placo.DynamicsFrameTask)arg1) -> object :
- C++ signature :
Eigen::Transform<double, 3, 2, 0> None(placo::dynamics::FrameTask {lvalue})
- configure(name: str, priority: str = 'soft', position_weight: float = 1.0, orientation_weight: float = 1.0) None#
Configures the frame task.
- Parameters:
name (str) – task name
priority (str) – task priority
position_weight (float) – weight for the position task
orientation_weight (float) – weight for the orientation task
- orientation() DynamicsOrientationTask#
- position() DynamicsPositionTask#
- class placo.DynamicsGearTask#
- A: any#
None( (placo.DynamicsTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, -1, 0, -1, -1> {lvalue} None(placo::dynamics::Task {lvalue})
- add_gear(target: str, source: str, ratio: float) None#
Adds a gear constraint, you can add multiple source for the same target, they will be summed.
- Parameters:
target (str) – target joint
source (str) – source joint
ratio (float) – ratio
- b: any#
None( (placo.DynamicsTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, -1, 0, -1, -1> {lvalue} None(placo::dynamics::Task {lvalue})
- configure(name: str, priority: str = 'soft', weight: float = 1.0) None#
Configures the object.
- Parameters:
name (str) – task name
priority (str) – task priority (hard, soft or scaled)
weight (float) – task weight
- derror: any#
None( (placo.DynamicsTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, -1, 0, -1, -1> {lvalue} None(placo::dynamics::Task {lvalue})
- error: any#
None( (placo.DynamicsTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, -1, 0, -1, -1> {lvalue} None(placo::dynamics::Task {lvalue})
- kd: any#
None( (placo.DynamicsTask)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Task {lvalue})
- kp: any#
None( (placo.DynamicsTask)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Task {lvalue})
- name: any#
None( (placo.Prioritized)arg1) -> str :
- C++ signature :
std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > {lvalue} None(placo::tools::Prioritized {lvalue})
- priority: str#
Priority [str]
- set_gear(target: str, source: str, ratio: float) None#
Sets a gear constraint.
- Parameters:
target (str) – target joint
source (str) – source joint
ratio (float) – ratio
- class placo.DynamicsJointsTask#
- A: any#
None( (placo.DynamicsTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, -1, 0, -1, -1> {lvalue} None(placo::dynamics::Task {lvalue})
- b: any#
None( (placo.DynamicsTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, -1, 0, -1, -1> {lvalue} None(placo::dynamics::Task {lvalue})
- configure(name: str, priority: str = 'soft', weight: float = 1.0) None#
Configures the object.
- Parameters:
name (str) – task name
priority (str) – task priority (hard, soft or scaled)
weight (float) – task weight
- derror: any#
None( (placo.DynamicsTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, -1, 0, -1, -1> {lvalue} None(placo::dynamics::Task {lvalue})
- error: any#
None( (placo.DynamicsTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, -1, 0, -1, -1> {lvalue} None(placo::dynamics::Task {lvalue})
- get_joint(joint: str) float#
Returns the current target position of a joint.
- Parameters:
joint (str) – joint name
- kd: any#
None( (placo.DynamicsTask)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Task {lvalue})
- kp: any#
None( (placo.DynamicsTask)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Task {lvalue})
- name: any#
None( (placo.Prioritized)arg1) -> str :
- C++ signature :
std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > {lvalue} None(placo::tools::Prioritized {lvalue})
- priority: str#
Priority [str]
- set_joint(joint: str, target: float, velocity: float = 0.0, acceleration: float = 0.0) None#
Sets the target for a given joint.
- Parameters:
joint (str) – joint name
target (float) – target position
velocity (float) – target velocity
acceleration (float) – target acceleration
- set_joints(arg2: dict) None#
- set_joints_velocities(arg2: dict) None#
- class placo.DynamicsOrientationTask(arg2: int, arg3: ndarray)#
- A: any#
None( (placo.DynamicsTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, -1, 0, -1, -1> {lvalue} None(placo::dynamics::Task {lvalue})
- R_world_frame: any#
None( (placo.DynamicsOrientationTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, 3, 3, 0, 3, 3> {lvalue} None(placo::dynamics::OrientationTask {lvalue})
- b: any#
None( (placo.DynamicsTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, -1, 0, -1, -1> {lvalue} None(placo::dynamics::Task {lvalue})
- configure(name: str, priority: str = 'soft', weight: float = 1.0) None#
Configures the object.
- Parameters:
name (str) – task name
priority (str) – task priority (hard, soft or scaled)
weight (float) – task weight
- derror: any#
None( (placo.DynamicsTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, -1, 0, -1, -1> {lvalue} None(placo::dynamics::Task {lvalue})
- domega_world: any#
None( (placo.DynamicsOrientationTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, 3, 1, 0, 3, 1> {lvalue} None(placo::dynamics::OrientationTask {lvalue})
- error: any#
None( (placo.DynamicsTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, -1, 0, -1, -1> {lvalue} None(placo::dynamics::Task {lvalue})
- kd: any#
None( (placo.DynamicsTask)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Task {lvalue})
- kp: any#
None( (placo.DynamicsTask)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Task {lvalue})
- mask: any#
None( (placo.DynamicsOrientationTask)arg1) -> placo.AxisesMask :
- C++ signature :
placo::tools::AxisesMask {lvalue} None(placo::dynamics::OrientationTask {lvalue})
- name: any#
None( (placo.Prioritized)arg1) -> str :
- C++ signature :
std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > {lvalue} None(placo::tools::Prioritized {lvalue})
- omega_world: any#
None( (placo.DynamicsOrientationTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, 3, 1, 0, 3, 1> {lvalue} None(placo::dynamics::OrientationTask {lvalue})
- priority: str#
Priority [str]
- class placo.DynamicsPositionTask(arg2: int, arg3: ndarray)#
- A: any#
None( (placo.DynamicsTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, -1, 0, -1, -1> {lvalue} None(placo::dynamics::Task {lvalue})
- b: any#
None( (placo.DynamicsTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, -1, 0, -1, -1> {lvalue} None(placo::dynamics::Task {lvalue})
- configure(name: str, priority: str = 'soft', weight: float = 1.0) None#
Configures the object.
- Parameters:
name (str) – task name
priority (str) – task priority (hard, soft or scaled)
weight (float) – task weight
- ddtarget_world: any#
None( (placo.DynamicsPositionTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, 3, 1, 0, 3, 1> {lvalue} None(placo::dynamics::PositionTask {lvalue})
- derror: any#
None( (placo.DynamicsTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, -1, 0, -1, -1> {lvalue} None(placo::dynamics::Task {lvalue})
- dtarget_world: any#
None( (placo.DynamicsPositionTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, 3, 1, 0, 3, 1> {lvalue} None(placo::dynamics::PositionTask {lvalue})
- error: any#
None( (placo.DynamicsTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, -1, 0, -1, -1> {lvalue} None(placo::dynamics::Task {lvalue})
- frame_index: any#
None( (placo.DynamicsPositionTask)arg1) -> int :
- C++ signature :
unsigned long {lvalue} None(placo::dynamics::PositionTask {lvalue})
- kd: any#
None( (placo.DynamicsTask)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Task {lvalue})
- kp: any#
None( (placo.DynamicsTask)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Task {lvalue})
- mask: any#
None( (placo.DynamicsPositionTask)arg1) -> placo.AxisesMask :
- C++ signature :
placo::tools::AxisesMask {lvalue} None(placo::dynamics::PositionTask {lvalue})
- name: any#
None( (placo.Prioritized)arg1) -> str :
- C++ signature :
std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > {lvalue} None(placo::tools::Prioritized {lvalue})
- priority: str#
Priority [str]
- target_world: any#
None( (placo.DynamicsPositionTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, 3, 1, 0, 3, 1> {lvalue} None(placo::dynamics::PositionTask {lvalue})
- class placo.DynamicsRelativeFrameTask#
- T_a_b: any#
None( (placo.DynamicsRelativeFrameTask)arg1) -> object :
- C++ signature :
Eigen::Transform<double, 3, 2, 0> None(placo::dynamics::RelativeFrameTask {lvalue})
- configure(name: str, priority: str = 'soft', position_weight: float = 1.0, orientation_weight: float = 1.0) None#
Configures the relative frame task.
- Parameters:
name (str) – task name
priority (str) – task priority
position_weight (float) – weight for the position task
orientation_weight (float) – weight for the orientation task
- orientation() DynamicsRelativeOrientationTask#
- position() DynamicsRelativePositionTask#
- class placo.DynamicsRelativeOrientationTask(arg2: int, arg3: int, arg4: ndarray)#
- A: any#
None( (placo.DynamicsTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, -1, 0, -1, -1> {lvalue} None(placo::dynamics::Task {lvalue})
- R_a_b: any#
None( (placo.DynamicsRelativeOrientationTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, 3, 3, 0, 3, 3> {lvalue} None(placo::dynamics::RelativeOrientationTask {lvalue})
- b: any#
None( (placo.DynamicsTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, -1, 0, -1, -1> {lvalue} None(placo::dynamics::Task {lvalue})
- configure(name: str, priority: str = 'soft', weight: float = 1.0) None#
Configures the object.
- Parameters:
name (str) – task name
priority (str) – task priority (hard, soft or scaled)
weight (float) – task weight
- derror: any#
None( (placo.DynamicsTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, -1, 0, -1, -1> {lvalue} None(placo::dynamics::Task {lvalue})
- domega_a_b: any#
None( (placo.DynamicsRelativeOrientationTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, 3, 1, 0, 3, 1> {lvalue} None(placo::dynamics::RelativeOrientationTask {lvalue})
- error: any#
None( (placo.DynamicsTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, -1, 0, -1, -1> {lvalue} None(placo::dynamics::Task {lvalue})
- kd: any#
None( (placo.DynamicsTask)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Task {lvalue})
- kp: any#
None( (placo.DynamicsTask)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Task {lvalue})
- mask: any#
None( (placo.DynamicsRelativeOrientationTask)arg1) -> placo.AxisesMask :
- C++ signature :
placo::tools::AxisesMask {lvalue} None(placo::dynamics::RelativeOrientationTask {lvalue})
- name: any#
None( (placo.Prioritized)arg1) -> str :
- C++ signature :
std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > {lvalue} None(placo::tools::Prioritized {lvalue})
- omega_a_b: any#
None( (placo.DynamicsRelativeOrientationTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, 3, 1, 0, 3, 1> {lvalue} None(placo::dynamics::RelativeOrientationTask {lvalue})
- priority: str#
Priority [str]
- class placo.DynamicsRelativePositionTask(arg2: int, arg3: int, arg4: ndarray)#
- A: any#
None( (placo.DynamicsTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, -1, 0, -1, -1> {lvalue} None(placo::dynamics::Task {lvalue})
- b: any#
None( (placo.DynamicsTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, -1, 0, -1, -1> {lvalue} None(placo::dynamics::Task {lvalue})
- configure(name: str, priority: str = 'soft', weight: float = 1.0) None#
Configures the object.
- Parameters:
name (str) – task name
priority (str) – task priority (hard, soft or scaled)
weight (float) – task weight
- ddtarget: any#
None( (placo.DynamicsRelativePositionTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, 3, 1, 0, 3, 1> {lvalue} None(placo::dynamics::RelativePositionTask {lvalue})
- derror: any#
None( (placo.DynamicsTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, -1, 0, -1, -1> {lvalue} None(placo::dynamics::Task {lvalue})
- dtarget: any#
None( (placo.DynamicsRelativePositionTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, 3, 1, 0, 3, 1> {lvalue} None(placo::dynamics::RelativePositionTask {lvalue})
- error: any#
None( (placo.DynamicsTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, -1, 0, -1, -1> {lvalue} None(placo::dynamics::Task {lvalue})
- kd: any#
None( (placo.DynamicsTask)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Task {lvalue})
- kp: any#
None( (placo.DynamicsTask)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Task {lvalue})
- mask: any#
None( (placo.DynamicsRelativePositionTask)arg1) -> placo.AxisesMask :
- C++ signature :
placo::tools::AxisesMask {lvalue} None(placo::dynamics::RelativePositionTask {lvalue})
- name: any#
None( (placo.Prioritized)arg1) -> str :
- C++ signature :
std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > {lvalue} None(placo::tools::Prioritized {lvalue})
- priority: str#
Priority [str]
- target: any#
None( (placo.DynamicsRelativePositionTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, 3, 1, 0, 3, 1> {lvalue} None(placo::dynamics::RelativePositionTask {lvalue})
- class placo.DynamicsSolver(robot: RobotWrapper)#
- add_avoid_self_collisions_constraint() AvoidSelfCollisionsDynamicsConstraint#
Adds a constraint to the solver.
- add_com_task(target_world: ndarray) DynamicsCoMTask#
Adds a center of mass (in the world) task.
- Parameters:
target_world (numpy.ndarray) – target (in the world)
- add_constraint(constraint: DynamicsConstraint) None#
Adds a custom constraint to the solver.
- Parameters:
constraint (DynamicsConstraint) – constraint
- add_external_wrench_contact(frame_index: any, reference: any = None) ExternalWrenchContact#
Adds an external wrench.
- add_fixed_contact(frame_task: DynamicsFrameTask) Contact6D#
Adds a fixed contact.
- Parameters:
frame_task (DynamicsFrameTask) – the associated frame task
- add_frame_task(frame_name: str, T_world_frame: ndarray) DynamicsFrameTask#
Adds a frame task, which is a pseudo-task packaging position and orientation, resulting in a decoupled task.
- Parameters:
T_world_frame (numpy.ndarray) – target transformation in the world
- add_gear_task() DynamicsGearTask#
Adds a gear task, allowing replication of a joint. This can be used to implement timing belt, if coupled with an internal force.
- add_joints_task() DynamicsJointsTask#
Adds a joints task.
- add_line_contact(frame_task: DynamicsFrameTask) LineContact#
Adds a fixed line contact.
- Parameters:
frame_task (DynamicsFrameTask) – associated frame task
- add_orientation_task(frame_name: str, R_world_frame: ndarray) DynamicsOrientationTask#
Adds an orientation (in the world) task.
- Parameters:
R_world_frame (numpy.ndarray) – target world orientation
- add_planar_contact(frame_task: DynamicsFrameTask) Contact6D#
Adds a planar contact, which is unilateral in the sense of the local body z-axis.
- Parameters:
frame_task (DynamicsFrameTask) – associated frame task
- add_point_contact(position_task: DynamicsPositionTask) PointContact#
Adds a point contact.
- Parameters:
position_task (DynamicsPositionTask) – the associated position task
- add_position_task(frame_name: str, target_world: ndarray) DynamicsPositionTask#
Adds a position (in the world) task.
- Parameters:
target_world (numpy.ndarray) – target position in the world
- add_puppet_contact() PuppetContact#
Adds a puppet contact, this will add some free contact forces for the whole system, allowing it to be controlled freely.
- add_relative_frame_task(frame_a_name: str, frame_b_name: str, T_a_b: ndarray) DynamicsRelativeFrameTask#
Adds a relative frame task, which is a pseudo-task packaging relative position and orientation tasks.
- Parameters:
T_a_b (numpy.ndarray) – target transformation value for b frame in a
- add_relative_orientation_task(frame_a_name: str, frame_b_name: str, R_a_b: ndarray) DynamicsRelativeOrientationTask#
Adds a relative orientation task.
- Parameters:
R_a_b (numpy.ndarray) – target value for the orientation of b frame in a
- add_relative_position_task(frame_a_name: str, frame_b_name: str, target_world: ndarray) DynamicsRelativePositionTask#
Adds a relative position task.
- add_task(task: DynamicsTask) None#
Adds a custom task to the solver.
- Parameters:
task (DynamicsTask) – task
- add_task_contact(task: DynamicsTask) TaskContact#
Adds contact forces associated with any given task.
- Parameters:
task (DynamicsTask) – task
- add_torque_task() DynamicsTorqueTask#
Adds a torque task.
- add_unilateral_line_contact(frame_task: DynamicsFrameTask) LineContact#
Adds a unilateral line contact, which is unilateral in the sense of the local body z-axis.
- Parameters:
frame_task (DynamicsFrameTask) – associated frame task
- add_unilateral_point_contact(position_task: DynamicsPositionTask) PointContact#
Adds an unilateral point contact, in the sense of the world z-axis.
- Parameters:
position_task (DynamicsPositionTask) – the associated position task
- clear() None#
Clears the internal tasks.
- count_contacts() int#
- damping: any#
None( (placo.DynamicsSolver)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::DynamicsSolver {lvalue})
- dt: any#
None( (placo.DynamicsSolver)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::DynamicsSolver {lvalue})
- dump_status() None#
Shows the tasks status.
- enable_joint_limits(enable: bool) None#
Enables/disables joint limits inequalities.
- enable_torque_limits(enable: bool) None#
Enables/disables torque limits inequalities.
- enable_velocity_limits(enable: bool) None#
Enables/disables joint velocity inequalities.
- enable_velocity_vs_torque_limits(enable: bool) None#
Enables the velocity vs torque inequalities.
- extra_force: any#
None( (placo.DynamicsSolver)arg1) -> numpy.ndarray :
- C++ signature :
Eigen::Matrix<double, -1, 1, 0, -1, 1> None(placo::dynamics::DynamicsSolver {lvalue})
- gravity_only: any#
None( (placo.DynamicsSolver)arg1) -> bool :
- C++ signature :
bool {lvalue} None(placo::dynamics::DynamicsSolver {lvalue})
- mask_fbase(masked: bool) None#
Decides if the floating base should be masked.
- problem: any#
None( (placo.DynamicsSolver)arg1) -> object :
- C++ signature :
placo::problem::Problem {lvalue} None(placo::dynamics::DynamicsSolver {lvalue})
- remove_constraint(constraint: DynamicsConstraint) None#
Removes a constraint from the solver.
- Parameters:
constraint (DynamicsConstraint) – constraint
- remove_task(task: DynamicsTask) None#
Removes a task from the solver.
- Parameters:
task (DynamicsTask) – task
- robot: any#
None( (placo.DynamicsSolver)arg1) -> object :
- C++ signature :
placo::model::RobotWrapper None(placo::dynamics::DynamicsSolver)
- set_kd(kd: float) None#
Set the kp for all tasks.
- set_kp(kp: float) None#
Set the kp for all tasks.
- set_qdd_safe(joint: str, qdd: float) None#
Sets the “safe” Qdd acceptable for a given joint (used by joint limits)
- set_torque_limit(joint: str, limit: float) None#
Sets the allowed torque limit by the solver for a given joint. This will not affect the robot’s model effort limit. When computing the velocity vs torque limit, the robot’s model effort will still be used. You can see this limit as a continuous limit allowable for the robot, while the robot’s model limit is the maximum possible torque.
- solve(integrate: bool = False) DynamicsSolverResult#
- torque_cost: any#
None( (placo.DynamicsSolver)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::DynamicsSolver {lvalue})
- class placo.DynamicsSolverResult#
- qdd: any#
None( (placo.DynamicsSolverResult)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, 1, 0, -1, 1> {lvalue} None(placo::dynamics::DynamicsSolver::Result {lvalue})
- success: any#
None( (placo.DynamicsSolverResult)arg1) -> bool :
- C++ signature :
bool {lvalue} None(placo::dynamics::DynamicsSolver::Result {lvalue})
- tau: any#
None( (placo.DynamicsSolverResult)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, 1, 0, -1, 1> {lvalue} None(placo::dynamics::DynamicsSolver::Result {lvalue})
- tau_contacts: any#
None( (placo.DynamicsSolverResult)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, 1, 0, -1, 1> {lvalue} None(placo::dynamics::DynamicsSolver::Result {lvalue})
- tau_dict(arg2: RobotWrapper) dict#
- class placo.DynamicsTask#
- A: any#
None( (placo.DynamicsTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, -1, 0, -1, -1> {lvalue} None(placo::dynamics::Task {lvalue})
- b: any#
None( (placo.DynamicsTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, -1, 0, -1, -1> {lvalue} None(placo::dynamics::Task {lvalue})
- configure(name: str, priority: str = 'soft', weight: float = 1.0) None#
Configures the object.
- Parameters:
name (str) – task name
priority (str) – task priority (hard, soft or scaled)
weight (float) – task weight
- derror: any#
None( (placo.DynamicsTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, -1, 0, -1, -1> {lvalue} None(placo::dynamics::Task {lvalue})
- error: any#
None( (placo.DynamicsTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, -1, 0, -1, -1> {lvalue} None(placo::dynamics::Task {lvalue})
- kd: any#
None( (placo.DynamicsTask)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Task {lvalue})
- kp: any#
None( (placo.DynamicsTask)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Task {lvalue})
- name: any#
None( (placo.Prioritized)arg1) -> str :
- C++ signature :
std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > {lvalue} None(placo::tools::Prioritized {lvalue})
- priority: str#
Priority [str]
- class placo.DynamicsTorqueTask#
- A: any#
None( (placo.DynamicsTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, -1, 0, -1, -1> {lvalue} None(placo::dynamics::Task {lvalue})
- b: any#
None( (placo.DynamicsTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, -1, 0, -1, -1> {lvalue} None(placo::dynamics::Task {lvalue})
- configure(name: str, priority: str = 'soft', weight: float = 1.0) None#
Configures the object.
- Parameters:
name (str) – task name
priority (str) – task priority (hard, soft or scaled)
weight (float) – task weight
- derror: any#
None( (placo.DynamicsTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, -1, 0, -1, -1> {lvalue} None(placo::dynamics::Task {lvalue})
- error: any#
None( (placo.DynamicsTask)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, -1, 0, -1, -1> {lvalue} None(placo::dynamics::Task {lvalue})
- kd: any#
None( (placo.DynamicsTask)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Task {lvalue})
- kp: any#
None( (placo.DynamicsTask)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Task {lvalue})
- name: any#
None( (placo.Prioritized)arg1) -> str :
- C++ signature :
std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > {lvalue} None(placo::tools::Prioritized {lvalue})
- priority: str#
Priority [str]
- reset_torque(joint: str) None#
Removes a joint from this task.
- Parameters:
joint (str) – joint namle
- set_torque(joint: str, torque: float, kp: float = 0.0, kd: float = 0.0) None#
Sets the target for a given joint.
- Parameters:
joint (str) – joint name
torque (float) – target torque
kp (float) – proportional gain (optional)
kd (float) – derivative gain (optional)
- class placo.ExternalWrenchContact(frame_index: any, reference: any = None)#
see DynamicsSolver::add_external_wrench_contact
- active: any#
None( (placo.Contact)arg1) -> bool :
- C++ signature :
bool {lvalue} None(placo::dynamics::Contact {lvalue})
- frame_index: any#
None( (placo.ExternalWrenchContact)arg1) -> int :
- C++ signature :
unsigned long {lvalue} None(placo::dynamics::ExternalWrenchContact {lvalue})
- mu: any#
None( (placo.Contact)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Contact {lvalue})
- w_ext: any#
None( (placo.ExternalWrenchContact)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, 1, 0, -1, 1> {lvalue} None(placo::dynamics::ExternalWrenchContact {lvalue})
- weight_forces: any#
None( (placo.Contact)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Contact {lvalue})
- weight_moments: any#
None( (placo.Contact)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Contact {lvalue})
- weight_tangentials: any#
None( (placo.Contact)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Contact {lvalue})
- wrench: any#
None( (placo.Contact)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, 1, 0, -1, 1> {lvalue} None(placo::dynamics::Contact {lvalue})
- class placo.LineContact(frame_task: DynamicsFrameTask, unilateral: bool)#
see DynamicsSolver::add_fixed_planar_contact and DynamicsSolver::add_unilateral_planar_contact
- R_world_surface: any#
None( (placo.PointContact)arg1) -> numpy.ndarray :
- C++ signature :
Eigen::Matrix<double, 3, 3, 0, 3, 3> None(placo::dynamics::PointContact {lvalue})
- active: any#
None( (placo.Contact)arg1) -> bool :
- C++ signature :
bool {lvalue} None(placo::dynamics::Contact {lvalue})
- length: any#
None( (placo.LineContact)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::LineContact {lvalue})
- mu: any#
None( (placo.Contact)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Contact {lvalue})
- orientation_task() DynamicsOrientationTask#
- position_task() DynamicsPositionTask#
- unilateral: any#
None( (placo.LineContact)arg1) -> bool :
- C++ signature :
bool {lvalue} None(placo::dynamics::LineContact {lvalue})
- weight_forces: any#
None( (placo.Contact)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Contact {lvalue})
- weight_moments: any#
None( (placo.Contact)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Contact {lvalue})
- weight_tangentials: any#
None( (placo.Contact)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Contact {lvalue})
- wrench: any#
None( (placo.Contact)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, 1, 0, -1, 1> {lvalue} None(placo::dynamics::Contact {lvalue})
- zmp() ndarray#
Returns the contact ZMP in the local frame.
- class placo.PointContact(position_task: DynamicsPositionTask, unilateral: bool)#
see DynamicsSolver::add_point_contact and DynamicsSolver::add_unilateral_point_contact
- R_world_surface: any#
None( (placo.PointContact)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, 3, 3, 0, 3, 3> {lvalue} None(placo::dynamics::PointContact {lvalue})
- active: any#
None( (placo.Contact)arg1) -> bool :
- C++ signature :
bool {lvalue} None(placo::dynamics::Contact {lvalue})
- mu: any#
None( (placo.Contact)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Contact {lvalue})
- position_task() DynamicsPositionTask#
- unilateral: any#
None( (placo.PointContact)arg1) -> bool :
- C++ signature :
bool {lvalue} None(placo::dynamics::PointContact {lvalue})
- weight_forces: any#
None( (placo.Contact)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Contact {lvalue})
- weight_moments: any#
None( (placo.Contact)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Contact {lvalue})
- weight_tangentials: any#
None( (placo.Contact)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Contact {lvalue})
- wrench: any#
None( (placo.Contact)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, 1, 0, -1, 1> {lvalue} None(placo::dynamics::Contact {lvalue})
- class placo.PuppetContact#
see DynamicsSolver::add_puppet_contact
- active: any#
None( (placo.Contact)arg1) -> bool :
- C++ signature :
bool {lvalue} None(placo::dynamics::Contact {lvalue})
- mu: any#
None( (placo.Contact)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Contact {lvalue})
- weight_forces: any#
None( (placo.Contact)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Contact {lvalue})
- weight_moments: any#
None( (placo.Contact)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Contact {lvalue})
- weight_tangentials: any#
None( (placo.Contact)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Contact {lvalue})
- wrench: any#
None( (placo.Contact)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, 1, 0, -1, 1> {lvalue} None(placo::dynamics::Contact {lvalue})
- class placo.TaskContact(task: DynamicsTask)#
see DynamicsSolver::add_task_contact
- active: any#
None( (placo.Contact)arg1) -> bool :
- C++ signature :
bool {lvalue} None(placo::dynamics::Contact {lvalue})
- mu: any#
None( (placo.Contact)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Contact {lvalue})
- weight_forces: any#
None( (placo.Contact)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Contact {lvalue})
- weight_moments: any#
None( (placo.Contact)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Contact {lvalue})
- weight_tangentials: any#
None( (placo.Contact)arg1) -> float :
- C++ signature :
double {lvalue} None(placo::dynamics::Contact {lvalue})
- wrench: any#
None( (placo.Contact)arg1) -> object :
- C++ signature :
Eigen::Matrix<double, -1, 1, 0, -1, 1> {lvalue} None(placo::dynamics::Contact {lvalue})