"""按毫米开口控制夹爪;力矩上限单位 N·m,运行前确认夹持空间安全."""
from libark.robot.hw1.arm import Arm


def main() -> None:
    with Arm("left") as arm:
        arm.enable()
        state = arm.get_state()
        if not state.ok:
            raise RuntimeError("反馈不完整,请联系技术支持")
        width = arm.get_gripper_width()
        if width is None:
            raise RuntimeError("夹爪反馈缺失,请联系技术支持")
        target = max(0.0, width - 1.0)  # 从当前开口小幅闭合1 mm
        arm.move_gripper(width_mm=target, torque_limit_nm=1.0, speed_percent=20)
        print("夹爪开口 mm:", arm.get_gripper_width())


if __name__ == "__main__":
    main()
