step.motion.turn_dsl ==================== .. py:module:: step.motion.turn_dsl .. autoapi-nested-parse:: Auto-generated step builders and DSL functions — DO NOT EDIT. Source: turn.py Classes ------- .. autoapisummary:: step.motion.turn_dsl.TurnLeftBuilder step.motion.turn_dsl.TurnRightBuilder Functions --------- .. autoapisummary:: step.motion.turn_dsl.turn_left step.motion.turn_dsl.turn_right Module Contents --------------- .. py:class:: TurnLeftBuilder Bases: :py:obj:`raccoon.step.step_builder.StepBuilder` Builder for TurnLeft. Auto-generated — do not edit. .. py:method:: degrees(value: float) .. py:method:: speed(value: float) .. py:method:: until(value: raccoon.step.condition.StopCondition) .. py:function:: turn_left(degrees: float = None, speed: float = 1.0, until: raccoon.step.condition.StopCondition = None) 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. :param degrees: Angle in degrees. Omit to use condition-only mode. :param speed: Fraction of max speed, 0.0 to 1.0. :param until: Stop condition for early termination (e.g., ``on_black(sensor)``). Can also be chained via the ``.until()`` builder method. :returns: A TurnLeftBuilder (chainable via ``.degrees()``, ``.speed()``, ``.until()``, ``.on_anomaly()``, ``.skip_timing()``). Example:: turn_left(90) turn_left(speed=0.5).until(on_black(s)) .. py:class:: TurnRightBuilder Bases: :py:obj:`raccoon.step.step_builder.StepBuilder` Builder for TurnRight. Auto-generated — do not edit. .. py:method:: degrees(value: float) .. py:method:: speed(value: float) .. py:method:: until(value: raccoon.step.condition.StopCondition) .. py:function:: turn_right(degrees: float = None, speed: float = 1.0, until: raccoon.step.condition.StopCondition = None) 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. :param degrees: Angle in degrees. Omit to use condition-only mode. :param speed: Fraction of max speed, 0.0 to 1.0. :param until: Stop condition for early termination (e.g., ``on_black(sensor)``). Can also be chained via the ``.until()`` builder method. :returns: A TurnRightBuilder (chainable via ``.degrees()``, ``.speed()``, ``.until()``, ``.on_anomaly()``, ``.skip_timing()``). Example:: turn_right(90) turn_right(speed=0.5).until(on_black(s))