HebiArm is a higher-level API for working with serial configurations
HebiArm simplifies many of the tasks commonly encountered when
with arm-like configurations such as trajectory replanning,
acceleration compensation, and keeping track of auxiliary state
such as a gripper.
It also features a plugin mechanism to enable optional features
such as offsetting efforts when working with external springs, or
adding impedance control.
Example
% Setup the arm
group = HebiLookup.newGroupFromNames('Arm', 'J*');
kin = HebiUtils.loadHRDF('A-2085-06.hrdf');
arm = HebiArm(group, kin);
% Move to home position
arm.update();
arm.setGoal(homePosition);
while ~arm.isAtGoal()
arm.update();
arm.send();
end
|
clearGoal |
cancels any active goal, returning to a |
Static
|
createFromConfig |
creates a HebiArm according to the config |
|
delete |
Delete a handle object. |
|
getPluginByType |
Retrieves a plugin by its plugin type |
|
getProgress |
returns normalized [0-1] time of where trajectory is |
|
isAtGoal |
|
Sealed
|
isvalid |
Test handle validity. |
|
send |
sends the current command state to the module group |
|
setGoal |
arm.setGoal(pos, 'velocities', vel, 'accelerations', accel, 'time', time); |
|
update |
reads feedback and updates internal state |