Programming Level 2 - Robot Control Systems

Command-based architecture, sensors, simulation, and autonomous with real FRC tools

Table of content
  1. Learning Objective
  2. Prerequisites
  3. Primary Resources
  4. Tasks
  5. Level 2 Completion Requirements

Learning Objective

Apply Level 1's generic foundation to the FRC-specific control system: implement closed-loop feedback and motion profiles, integrate sensors (encoders, gyro/accelerometer, limit switches) using vendor libraries (CTRE Phoenix, REVLib) with proper calibration, develop command-based robot architecture with subsystem management, practice developing and testing code in robot simulation before it touches hardware, and create autonomous routines using PathPlanner or Choreo. This level is self-guided and typically takes a couple of months; completing it means you can perform most of the day-to-day programming the team needs.

Prerequisites

Primary Resources

Tasks

  1. Advanced Robot Control

    • Implement PID control loops
    • Create motion profiles
    • Design state machines
    • Handle multiple control modes
  2. Sensor Integration

    • Read and process encoder data using the appropriate vendor library (CTRE Phoenix, REVLib)
    • Integrate gyro/accelerometer input
    • Implement limit switch logic
    • Develop sensor calibration routines
  3. Command-Based Programming

    • Create robot subsystems
    • Implement commands and command compositions
    • Manage subsystem dependencies and requirements
    • Handle command scheduling
  4. Simulation & Dashboards

    • Run and drive the robot code in WPILib's simulator with no physical robot present
    • View live telemetry using a dashboard (Shuffleboard, Glass, or Elastic)
    • Diagnose a simple bug using simulation instead of testing on the physical robot
  5. Autonomous Development

    • Design autonomous strategies
    • Create modular autonomous routines using command compositions
    • Generate and follow a path using PathPlanner or Choreo
    • Test and validate autonomous modes in simulation and on the robot

Level 2 Completion Requirements

← Back to Programming Training