Servo

class wpilib.Servo(self: wpilib.Servo, channel: int) → None

Bases: wpilib.PWM

Standard hobby style servo.

The range parameters default to the appropriate values for the Hitec HS-322HD servo provided in the FIRST Kit of Parts in 2008.

Parameters

channel – The PWM channel to which the servo is attached. 0-9 are on-board, 10-19 are on the MXP port

get(self: wpilib.Servo) → float

Get the servo position.

Servo values range from 0.0 to 1.0 corresponding to the range of full left to full right.

Returns

Position from 0.0 to 1.0.

getAngle(self: wpilib.Servo) → float

Get the servo angle.

Assume that the servo angle is linear with respect to the PWM value (big assumption, need to test).

Returns

The angle in degrees to which the servo is set.

getMaxAngle(self: wpilib.Servo) → float

Get the maximum angle of the servo.

Returns

The maximum angle of the servo in degrees.

getMinAngle(self: wpilib.Servo) → float

Get the minimum angle of the servo.

Returns

The minimum angle of the servo in degrees.

initSendable(self: wpilib.Servo, builder: wpilib.SendableBuilder) → None
set(self: wpilib.Servo, value: float) → None

Set the servo position.

Servo values range from 0.0 to 1.0 corresponding to the range of full left to full right.

Parameters

value – Position from 0.0 to 1.0.

setAngle(self: wpilib.Servo, angle: float) → None

Set the servo angle.

Assume that the servo angle is linear with respect to the PWM value (big assumption, need to test).

Servo angles that are out of the supported range of the servo simply “saturate” in that direction. In other words, if the servo has a range of (X degrees to Y degrees) than angles of less than X result in an angle of X being set and angles of more than Y degrees result in an angle of Y being set.

Parameters

degrees – The angle in degrees to set the servo.

setOffline(self: wpilib.Servo) → None

Set the servo to offline.

Set the servo raw value to 0 (undriven)