step.motion.turn ================ .. py:module:: step.motion.turn Classes ------- .. autoapisummary:: step.motion.turn.TurnLeft step.motion.turn.TurnRight Module Contents --------------- .. py:class:: TurnLeft(degrees: float = None, speed: float = 1.0, until: step.condition.StopCondition = None) Bases: :py:obj:`_ConditionalTurn` Turn left (counter-clockwise) with angle or condition-based termination. Uses a PID controller on the IMU heading to rotate the robot in place. The controller saturates output at the configured max angular rate, producing an implicit trapezoidal velocity profile. Example:: turn_left(90) turn_left(speed=0.5).until(on_black(s)) .. py:class:: TurnRight(degrees: float = None, speed: float = 1.0, until: step.condition.StopCondition = None) Bases: :py:obj:`_ConditionalTurn` Turn right (clockwise) with angle or condition-based termination. Uses a PID controller on the IMU heading to rotate the robot in place. The controller saturates output at the configured max angular rate, producing an implicit trapezoidal velocity profile. Example:: turn_right(90) turn_right(speed=0.5).until(on_black(s))