Rename set_operating_mode arg
This commit is contained in:
parent
2037cc0219
commit
fa8ba9e4e2
|
@ -625,18 +625,18 @@ class DynamixelMotorsBus(MotorsBus):
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
def set_operating_mode(arm: DynamixelMotorsBus):
|
def set_operating_mode(bus: DynamixelMotorsBus):
|
||||||
if (arm.read("Torque_Enable") != TorqueMode.DISABLED.value).any():
|
if (bus.read("Torque_Enable") != TorqueMode.DISABLED.value).any():
|
||||||
raise ValueError("To run set robot preset, the torque must be disabled on all motors.")
|
raise ValueError("To run set robot preset, the torque must be disabled on all motors.")
|
||||||
|
|
||||||
# Use 'extended position mode' for all motors except gripper, because in joint mode the servos can't
|
# Use 'extended position mode' for all motors except gripper, because in joint mode the servos can't
|
||||||
# rotate more than 360 degrees (from 0 to 4095) And some mistake can happen while assembling the arm,
|
# rotate more than 360 degrees (from 0 to 4095) And some mistake can happen while assembling the arm,
|
||||||
# you could end up with a servo with a position 0 or 4095 at a crucial point See [
|
# you could end up with a servo with a position 0 or 4095 at a crucial point See [
|
||||||
# https://emanual.robotis.com/docs/en/dxl/x/x_series/#operating-mode11]
|
# https://emanual.robotis.com/docs/en/dxl/x/x_series/#operating-mode11]
|
||||||
all_motors_except_gripper = [name for name in arm.motor_names if name != "gripper"]
|
all_motors_except_gripper = [name for name in bus.motor_names if name != "gripper"]
|
||||||
if len(all_motors_except_gripper) > 0:
|
if len(all_motors_except_gripper) > 0:
|
||||||
# 4 corresponds to Extended Position on Koch motors
|
# 4 corresponds to Extended Position on Koch motors
|
||||||
arm.write("Operating_Mode", 4, all_motors_except_gripper)
|
bus.write("Operating_Mode", 4, all_motors_except_gripper)
|
||||||
|
|
||||||
# Use 'position control current based' for gripper to be limited by the limit of the current.
|
# Use 'position control current based' for gripper to be limited by the limit of the current.
|
||||||
# For the follower gripper, it means it can grasp an object without forcing too much even tho,
|
# For the follower gripper, it means it can grasp an object without forcing too much even tho,
|
||||||
|
@ -644,4 +644,4 @@ def set_operating_mode(arm: DynamixelMotorsBus):
|
||||||
# For the leader gripper, it means we can use it as a physical trigger, since we can force with our finger
|
# For the leader gripper, it means we can use it as a physical trigger, since we can force with our finger
|
||||||
# to make it move, and it will move back to its original target position when we release the force.
|
# to make it move, and it will move back to its original target position when we release the force.
|
||||||
# 5 corresponds to Current Controlled Position on Koch gripper motors "xl330-m077, xl330-m288"
|
# 5 corresponds to Current Controlled Position on Koch gripper motors "xl330-m077, xl330-m288"
|
||||||
arm.write("Operating_Mode", 5, "gripper")
|
bus.write("Operating_Mode", 5, "gripper")
|
||||||
|
|
Loading…
Reference in New Issue