Skip to content

Latest commit

 

History

History
95 lines (59 loc) · 3.67 KB

grasp.md

File metadata and controls

95 lines (59 loc) · 3.67 KB

Grasp

from magnebot.actions.grasp import Grasp

Try to grasp a target object. The action ends when either the Magnebot grasps the object, can't grasp it, or fails arm articulation.

Class Variables

Variable Type Description Value
JOINT_ORDER Dict[Arm, List[ArmJoint]] The order in which joint angles will be set. {Arm.left: [ArmJoint.column,

Fields

  • status The current status of the action. By default, this is ongoing (the action isn't done).

  • initialized If True, the action has initialized. If False, the action will try to send get_initialization_commands(resp) on this frame.

  • done If True, this action is done and won't send any more commands.

  • status The current status of the action. By default, this is ongoing (the action isn't done).

  • initialized If True, the action has initialized. If False, the action will try to send get_initialization_commands(resp) on this frame.

  • done If True, this action is done and won't send any more commands.


Functions

__init__

Grasp(target, arm, set_torso, orientation_mode, target_orientation, dynamic)

Parameter Type Default Description
target int The ID of the target object.
arm Arm The arm used for this action.
set_torso bool If True, stop sliding the torso when the arms stop moving at the end of the action.
orientation_mode OrientationMode The orientation mode.
target_orientation TargetOrientation The target orientation.
dynamic MagnebotDynamic The dynamic Magnebot data.

get_initialization_commands

self.get_initialization_commands(resp, static, dynamic, image_frequency)

Parameter Type Default Description
resp List[bytes] The response from the build.
static MagnebotStatic The static Magnebot data.
dynamic MagnebotDynamic The dynamic Magnebot data.
image_frequency ImageFrequency How image data will be captured during the image.

Returns: A list of commands to initialize this action.

set_status_after_initialization

self.set_status_after_initialization()

In some cases (such as camera actions) that finish on one frame, we want to set the status after sending initialization commands. To do so, override this method.

get_ongoing_commands

self.get_ongoing_commands(resp, static, dynamic)

Evaluate an action per-frame to determine whether it's done.

Parameter Type Default Description
resp List[bytes] The response from the build.
static MagnebotStatic The static Magnebot data.
dynamic MagnebotDynamic The dynamic Magnebot data.

Returns: A list of commands to send to the build to continue the action.

get_end_commands

self.get_end_commands(resp, static, dynamic, image_frequency)

Parameter Type Default Description
resp List[bytes] The response from the build.
static MagnebotStatic The static Magnebot data.
dynamic MagnebotDynamic The dynamic Magnebot data.
image_frequency ImageFrequency How image data will be captured during the image.

Returns: A list of commands that must be sent to end any action.