WPILib

What is WPILib

From the WPILib reference on ScreenStepsLive:

The WPI Robotics library (WPILib) is a set of software classes that interfaces with the hardware and software in your FRC robot’s control system. There are classes to handle sensors, motor speed controllers, the driver station, and a number of other utility functions such as timing and field management.

Complete Javadoc

Most Useful WPILib Classes

This is a list of the primary WPILib classes that are used in the Toronto Framework:

Command Based Programming

  • Scheduler - scheduling a command
  • Command - the basic framework for all commands
  • Subsystem - a container for sensors, motors and pneumatics actuators

Operator Input (OI) Layer

  • Joystick - a basic joystick, extended by the Toronto Framework to GameController
  • SendableChooser - a way to select an auto pattern on the SmartDashboard
  • SmartDashboard - put debug/status information on the SmartDashboard

Speed Controllers (Motors)

Sensors

  • AnalogGyro - a Gyro plugged into an analog port
  • AnalogInput - an analog input (ie. proximity sensor)
  • DigitalInput - a limit switch or other digital input plugged into a DIO port
  • Encoder - a quadrature encoder
  • Counter - a counter attached to a DIO channel used to count fast DIO pulses

Pnematics