edu.wpi.first.wpilibj
Class Servo

java.lang.Object
  extended by edu.wpi.first.wpilibj.SensorBase
      extended by edu.wpi.first.wpilibj.PWM
          extended by edu.wpi.first.wpilibj.Servo
All Implemented Interfaces:
IDevice, FrcBotSimComponent

public class Servo
extends PWM
implements IDevice

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.


Nested Class Summary
 
Nested classes/interfaces inherited from class edu.wpi.first.wpilibj.PWM
PWM.PeriodMultiplier
 
Field Summary
 
Fields inherited from class edu.wpi.first.wpilibj.PWM
kDefaultMinPwmHigh, kDefaultPwmPeriod, kPwmDisabled
 
Fields inherited from class edu.wpi.first.wpilibj.SensorBase
kAnalogChannels, kAnalogModules, kDigitalChannels, kPwmChannels, kRelayChannels, kSolenoidChannels, kSolenoidModules, kSystemClockTicksPerMicrosecond, n_simProperties
 
Constructor Summary
Servo(int channel)
          Constructor that assumes the default digital module.
Servo(int slot, int channel)
          Constructor that specifies the digital module.
 
Method Summary
 double get()
          Get the servo position.
 double getAngle()
          Get the servo angle.
 void set(double value)
          Set the servo position.
 void setAngle(double degrees)
          Set the servo angle.
 
Methods inherited from class edu.wpi.first.wpilibj.PWM
enableDeadbandElimination, free, getChannel, getModuleNumber, getPosition, getRaw, getSpeed, setBounds, setPeriodMultiplier, setPosition, setRaw
 
Methods inherited from class edu.wpi.first.wpilibj.SensorBase
checkAnalogChannel, checkAnalogModule, checkDigitalChannel, checkDigitalModule, checkPWMChannel, checkPWMModule, checkRelayChannel, checkRelayModule, checkSolenoidChannel, checkSolenoidModule, getDefaultAnalogModule, getDefaultDigitalModule, getDefaultSolenoidModule, getSimProperties, setDefaultAnalogModule, setDefaultDigitalModule, setDefaultSolenoidModule
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Servo

public Servo(int channel)
Constructor that assumes the default digital module.

Parameters:
channel - The PWM channel on the digital module to which the servo is attached.

Servo

public Servo(int slot,
             int channel)
Constructor that specifies the digital module.

Parameters:
slot - The slot in the chassis that the digital module is plugged into.
channel - The PWM channel on the digital module to which the servo is attached.
Method Detail

set

public void set(double value)
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.

get

public double get()
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.

setAngle

public void setAngle(double degrees)
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.

getAngle

public double getAngle()
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.