make it work

This commit is contained in:
Remi Cadene
2024-10-16 20:37:46 +02:00
parent 79ac1ad271
commit 1990f9c9bc
2 changed files with 7 additions and 7 deletions

View File

@@ -392,8 +392,7 @@ class FeetechMotorsBus:
return [idx for idx, _ in self.motors.values()]
def set_calibration(self, calibration: dict[str, list]):
pass
# self.calibration = calibration
self.calibration = calibration
def apply_calibration_autocorrect(self, values: np.ndarray | list, motor_names: list[str] | None):
"""This function apply the calibration, automatically detects out of range errors for motors values and attempt to correct.

View File

@@ -128,7 +128,7 @@ def run_arm_calibration(arm: MotorsBus, robot_type: str, arm_name: str, arm_type
calib_mode = [CalibrationMode.DEGREE.name] * len(arm.motor_names)
# TODO(rcadene): make type of joints (DEGREE or LINEAR) configurable from yaml?
if robot_type == "aloha" and "gripper" in arm.motor_names:
if robot_type in ["aloha", "so_100"] and "gripper" in arm.motor_names:
# Joints with linear motions (like gripper of Aloha) are experessed in nominal range of [0, 100]
calib_idx = arm.motor_names.index("gripper")
calib_mode[calib_idx] = CalibrationMode.LINEAR.name
@@ -555,13 +555,14 @@ class ManipulatorRobot:
for name in self.follower_arms:
self.follower_arms[name].write("Mode", 0)
# self.follower_arms[name].write("P_Coefficient", 255, "shoulder_pan")
self.follower_arms[name].write("P_Coefficient", 32, "shoulder_pan")
self.follower_arms[name].write("P_Coefficient", 16, "shoulder_pan")
# self.follower_arms[name].write("D_Coefficient", 230, "shoulder_pan")
self.follower_arms[name].write("D_Coefficient", 32, "shoulder_pan")
# self.follower_arms[name].write("Acceleration", 254)
# self.follower_arms[name].write("Minimum_Startup_Force", 16)
# self.follower_arms[name].write("Acceleration", 0)
# self.follower_arms[name].write("Minimum_Startup_Force", 0)
self.follower_arms[name].write("Lock", 0)
self.follower_arms[name].write("Maximum_Acceleration", 250)
# self.follower_arms[name].write("Maximum_Acceleration", 250)
self.follower_arms[name].write("Maximum_Acceleration", 150)
# for name in self.leader_arms:
# self.leader_arms[name].write("Max_Torque_Limit", 50, "gripper")