mirror of
https://github.com/wpilibsuite/allwpilib
synced 2026-06-19 00:41:43 +00:00
[examples, templates] Improve descriptions (NFC) (#5051)
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
[
|
||||
{
|
||||
"name": "Motor Control",
|
||||
"description": "Demonstrate controlling a single motor with a Joystick and displaying the net movement of the motor using an encoder.",
|
||||
"description": "Control a single motor with a joystick, displaying the movement of the motor using an encoder.",
|
||||
"tags": [
|
||||
"Basic Robot",
|
||||
"Encoder",
|
||||
@@ -14,7 +14,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Relay",
|
||||
"description": "Demonstrate controlling a Relay from Joystick buttons.",
|
||||
"description": "Control a relay from joystick buttons.",
|
||||
"tags": [
|
||||
"Hardware",
|
||||
"Relay",
|
||||
@@ -26,7 +26,7 @@
|
||||
},
|
||||
{
|
||||
"name": "PDP CAN Monitoring",
|
||||
"description": "Demonstrate using CAN to monitor the voltage, current, and temperature in the Power Distribution Panel.",
|
||||
"description": "Monitor Power Distribution data such as voltage, current, temperature, etc.",
|
||||
"tags": [
|
||||
"Hardware",
|
||||
"PDP",
|
||||
@@ -40,7 +40,7 @@
|
||||
"name": "Mechanism2d",
|
||||
"foldername": "Mechanism2d",
|
||||
"gradlebase": "cpp",
|
||||
"description": "An example usage of Mechanism2d to display mechanism states on a dashboard.",
|
||||
"description": "Display mechanism states on a dashboard with Mechanism2d.",
|
||||
"tags": [
|
||||
"Basic Robot",
|
||||
"Elevator",
|
||||
@@ -54,7 +54,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Solenoids",
|
||||
"description": "Demonstrate controlling a single and double solenoid from Joystick buttons.",
|
||||
"description": "Control a single and double solenoid from joystick buttons.",
|
||||
"tags": [
|
||||
"Hardware",
|
||||
"Joystick",
|
||||
@@ -66,7 +66,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Encoder",
|
||||
"description": "Demonstrate displaying the value of a quadrature encoder on the SmartDashboard.",
|
||||
"description": "View values from a quadrature encoder.",
|
||||
"tags": [
|
||||
"Hardware",
|
||||
"Encoder",
|
||||
@@ -78,7 +78,7 @@
|
||||
},
|
||||
{
|
||||
"name": "EventLoop",
|
||||
"description": "Demonstrate managing a ball system using EventLoop and BooleanEvent.",
|
||||
"description": "Manage a ball system using EventLoop and BooleanEvent.",
|
||||
"tags": [
|
||||
"Basic Robot",
|
||||
"Flywheel",
|
||||
@@ -90,7 +90,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Arcade Drive",
|
||||
"description": "An example program which demonstrates the use of Arcade Drive with the DifferentialDrive class",
|
||||
"description": "Control a differential drivetrain with single-joystick arcade drive in teleop.",
|
||||
"tags": [
|
||||
"Basic Robot",
|
||||
"Differential Drive",
|
||||
@@ -102,7 +102,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Tank Drive",
|
||||
"description": "An example program which demonstrates the use of Tank Drive with the DifferentialDrive class",
|
||||
"description": "Control a differential drive with twin-joystick tank drive in teleop.",
|
||||
"tags": [
|
||||
"Basic Robot",
|
||||
"Differential Drive",
|
||||
@@ -114,7 +114,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Mecanum Drive",
|
||||
"description": "An example program which demonstrates the use of Mecanum Drive with the MecanumDrive class",
|
||||
"description": "Control a mecanum drivetrain with a joystick in teleop.",
|
||||
"tags": [
|
||||
"Basic Robot",
|
||||
"Mecanum Drive",
|
||||
@@ -126,7 +126,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Ultrasonic",
|
||||
"description": "Demonstrate using the Ultrasonic class with a ping-response ultrasonic sensor.",
|
||||
"description": "View values from a ping-response ultrasonic sensor.",
|
||||
"tags": [
|
||||
"Hardware",
|
||||
"Ultrasonic",
|
||||
@@ -139,7 +139,7 @@
|
||||
},
|
||||
{
|
||||
"name": "UltrasonicPID",
|
||||
"description": "Demonstrate maintaining a set distance using an ultrasonic sensor and PID Control.",
|
||||
"description": "Maintain a set distance from an obstacle with an ultrasonic sensor and PID control.",
|
||||
"tags": [
|
||||
"Basic Robot",
|
||||
"Ultrasonic",
|
||||
@@ -152,7 +152,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Gyro",
|
||||
"description": "An example program showing how to drive straight with using a gyro sensor.",
|
||||
"description": "Drive a differential drive straight with a gyro sensor.",
|
||||
"tags": [
|
||||
"Basic Robot",
|
||||
"Differential Drive",
|
||||
@@ -167,7 +167,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Gyro Mecanum",
|
||||
"description": "An example program showing how to perform mecanum drive with field oriented controls.",
|
||||
"description": "Drive a mecanum drivetrain using field-oriented controls with a joystick.",
|
||||
"tags": [
|
||||
"Basic Robot",
|
||||
"Mecanum Drive",
|
||||
@@ -181,7 +181,7 @@
|
||||
},
|
||||
{
|
||||
"name": "HID Rumble",
|
||||
"description": "An example program showing how to make human interface devices rumble.",
|
||||
"description": "Make human interface devices (HID) rumble.",
|
||||
"tags": [
|
||||
"Hardware",
|
||||
"XboxController"
|
||||
@@ -192,7 +192,7 @@
|
||||
},
|
||||
{
|
||||
"name": "PotentiometerPID",
|
||||
"description": "An example to demonstrate the use of a potentiometer and PID control to maintain elevator position setpoints.",
|
||||
"description": "Maintain elevator position setpoints with a potentiometer and PID control.",
|
||||
"tags": [
|
||||
"Basic Robot",
|
||||
"Analog",
|
||||
@@ -206,7 +206,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Elevator with trapezoid profiled PID",
|
||||
"description": "An example to demonstrate the use of an encoder and trapezoid profiled PID control to reach elevator position setpoints.",
|
||||
"description": "Reach elevator position setpoints with trapezoid profiles and smart motor controller PID.",
|
||||
"tags": [
|
||||
"Basic Robot",
|
||||
"Elevator",
|
||||
@@ -220,7 +220,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Elevator with profiled PID controller",
|
||||
"description": "An example to demonstrate the use of an encoder and trapezoid profiled PID control to reach elevator position setpoints.",
|
||||
"description": "Reach elevator position setpoints with an encoder and profiled PID control.",
|
||||
"tags": [
|
||||
"Basic Robot",
|
||||
"Elevator",
|
||||
@@ -233,7 +233,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Getting Started",
|
||||
"description": "An example program which demonstrates the simplest autonomous and teleoperated routines.",
|
||||
"description": "A differential-drive robot with split-stick Xbox arcade drive with a simple time-based autonomous.",
|
||||
"tags": [
|
||||
"Basic Robot"
|
||||
],
|
||||
@@ -243,7 +243,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Simple Vision",
|
||||
"description": "The minimal program to acquire images from an attached USB camera on the robot and send them to the dashboard.",
|
||||
"description": "Use the CameraServer class to stream from a USB Webcam without processing the images.",
|
||||
"tags": [
|
||||
"Vision"
|
||||
],
|
||||
@@ -253,7 +253,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Intermediate Vision",
|
||||
"description": "An example program that acquires images from an attached USB camera and adds some annotation to the image as you might do for showing operators the result of some image recognition, and sends it to the dashboard for display.",
|
||||
"description": "Acquire images from an attached USB camera and add some annotation to the image (as you might do for showing operators the result of some image recognition) and send it to the dashboard for display.",
|
||||
"tags": [
|
||||
"Vision"
|
||||
],
|
||||
@@ -263,7 +263,7 @@
|
||||
},
|
||||
{
|
||||
"name": "AprilTags Vision",
|
||||
"description": "on-roboRIO detection of AprilTags using an attached USB camera.",
|
||||
"description": "On-roboRIO detection of AprilTags using an attached USB camera.",
|
||||
"tags": [
|
||||
"Vision",
|
||||
"AprilTags"
|
||||
@@ -274,7 +274,7 @@
|
||||
},
|
||||
{
|
||||
"name": "I2C Communication",
|
||||
"description": "An example program that communicates with external devices (such as an Arduino) using the roboRIO's I2C port",
|
||||
"description": "Communicate with external devices (such as an Arduino) using the roboRIO's I2C port.",
|
||||
"tags": [
|
||||
"Hardware",
|
||||
"I2C"
|
||||
@@ -285,7 +285,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Digital Communication Sample",
|
||||
"description": "An example program that communicates with external devices (such as an Arduino) using the roboRIO's DIO",
|
||||
"description": "Communicates with external devices (such as an Arduino) using the roboRIO's DIO.",
|
||||
"tags": [
|
||||
"Hardware",
|
||||
"Digital Output"
|
||||
@@ -296,7 +296,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Axis Camera Sample",
|
||||
"description": "An example program that acquires images from an Axis network camera and adds some annotation to the image as you might do for showing operators the result of some image recognition, and sends it to the dashboard for display. This demonstrates the use of the AxisCamera class.",
|
||||
"description": "Acquire images from an Axis network camera and adds some annotation to the image (as you might do for showing operators the result of some image recognition), and sends it to the dashboard for display.",
|
||||
"tags": [
|
||||
"Vision"
|
||||
],
|
||||
@@ -306,7 +306,7 @@
|
||||
},
|
||||
{
|
||||
"name": "GearsBot",
|
||||
"description": "A fully functional example CommandBased program for WPIs GearsBot robot, using the new command-based framework. This code can run on your computer if it supports simulation.",
|
||||
"description": "A fully functional Command-Based program for WPI's GearsBot robot.",
|
||||
"tags": [
|
||||
"Complete Robot",
|
||||
"Command-based",
|
||||
@@ -324,7 +324,7 @@
|
||||
},
|
||||
{
|
||||
"name": "HAL",
|
||||
"description": "A program created using the HAL exclusively. This example is for advanced users",
|
||||
"description": "Use the low-level HAL C functions. This example is for advanced users.",
|
||||
"tags": [
|
||||
"Basic Robot",
|
||||
"HAL"
|
||||
@@ -334,8 +334,8 @@
|
||||
"commandversion": 2
|
||||
},
|
||||
{
|
||||
"name": "ShuffleBoard",
|
||||
"description": "An example program that uses ShuffleBoard with its Widgets and Tabs.",
|
||||
"name": "Shuffleboard",
|
||||
"description": "Present various data via the Shuffleboard API.",
|
||||
"tags": [
|
||||
"Basic Robot",
|
||||
"Differential Drive",
|
||||
@@ -350,7 +350,7 @@
|
||||
},
|
||||
{
|
||||
"name": "'Traditional' Hatchbot",
|
||||
"description": "A fully-functional command-based hatchbot for the 2019 game using the new command framework. Written in the 'traditional' style, i.e. commands are given their own classes.",
|
||||
"description": "A fully-functional command-based hatchbot for the 2019 game, written in the 'traditional' style, i.e. commands are given their own classes.",
|
||||
"tags": [
|
||||
"Complete Robot",
|
||||
"Command-based",
|
||||
@@ -368,7 +368,7 @@
|
||||
},
|
||||
{
|
||||
"name": "'Inlined' Hatchbot",
|
||||
"description": "A fully-functional command-based hatchbot for the 2019 game using the new command framework. Written in the 'inlined' style, i.e. many commands are defined inline with lambdas.",
|
||||
"description": "A fully-functional command-based hatchbot for the 2019 game, written in the 'inlined' style, i.e. many commands are defined inline with lambdas.",
|
||||
"tags": [
|
||||
"Complete Robot",
|
||||
"Command-based",
|
||||
@@ -386,7 +386,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Rapid React Command Bot",
|
||||
"description": "A fully-functional command-based fender bot for the 2022 game using the new command framework.",
|
||||
"description": "A fully-functional command-based fender bot for the 2022 game, written in the 'inlined' style, i.e. many commands are defined inline with lambdas.",
|
||||
"tags": [
|
||||
"Complete Robot",
|
||||
"Command-based",
|
||||
@@ -405,7 +405,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Select Command Example",
|
||||
"description": "An example showing how to use the SelectCommand class from the new command framework.",
|
||||
"description": "Use SelectCommand to select an autonomous routine.",
|
||||
"tags": [
|
||||
"Command-based"
|
||||
],
|
||||
@@ -415,7 +415,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Frisbeebot",
|
||||
"description": "An example robot project for a simple frisbee shooter for the 2013 FRC game, Ultimate Ascent, demonstrating use of PID functionality in the command framework",
|
||||
"description": "A simple frisbee shooter for the 2013 game, demonstrating use of PIDSubsystem.",
|
||||
"tags": [
|
||||
"Complete Robot",
|
||||
"Command-based",
|
||||
@@ -431,7 +431,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Gyro Drive Commands",
|
||||
"description": "An example command-based robot project demonstrating simple PID functionality utilizing a gyroscope to keep a robot driving straight and to turn to specified angles.",
|
||||
"description": "Control a robot's angle with PID and a gyro, in command-based.",
|
||||
"tags": [
|
||||
"Command-based",
|
||||
"Differential Drive",
|
||||
@@ -447,7 +447,7 @@
|
||||
},
|
||||
{
|
||||
"name": "SwerveBot",
|
||||
"description": "An example program for a swerve drive that uses swerve drive kinematics and odometry.",
|
||||
"description": "Use kinematics and odometry with a swerve drive.",
|
||||
"tags": [
|
||||
"Swerve Drive",
|
||||
"Odometry",
|
||||
@@ -461,7 +461,7 @@
|
||||
},
|
||||
{
|
||||
"name": "MecanumBot",
|
||||
"description": "An example program for a mecanum drive that uses mecanum drive kinematics and odometry.",
|
||||
"description": "Use kinematics and odometry with a mecanum drive.",
|
||||
"tags": [
|
||||
"Mecanum Drive",
|
||||
"Odometry",
|
||||
@@ -475,7 +475,7 @@
|
||||
},
|
||||
{
|
||||
"name": "DifferentialDriveBot",
|
||||
"description": "An example program for a differential drive that uses differential drive kinematics and odometry.",
|
||||
"description": "Use kinematics and odometry with a differential drive.",
|
||||
"tags": [
|
||||
"Differential Drive",
|
||||
"Odometry",
|
||||
@@ -489,7 +489,7 @@
|
||||
},
|
||||
{
|
||||
"name": "RamseteCommand",
|
||||
"description": "An example command-based robot demonstrating the use of a RamseteCommand to follow a pregenerated trajectory.",
|
||||
"description": "Follow a pre-generated trajectory with a differential drive using RamseteCommand.",
|
||||
"tags": [
|
||||
"Differential Drive",
|
||||
"Command-based",
|
||||
@@ -507,7 +507,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Arcade Drive Xbox Controller",
|
||||
"description": "An example program which demonstrates the use of Arcade Drive with the DifferentialDrive class and an Xbox Controller.",
|
||||
"description": "Control a differential drive with split-stick arcade drive in teleop.",
|
||||
"tags": [
|
||||
"Basic Robot",
|
||||
"Differential Drive",
|
||||
@@ -519,7 +519,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Tank Drive Xbox Controller",
|
||||
"description": "An example program which demonstrates the use of Tank Drive with the DifferentialDrive class and an Xbox Controller.",
|
||||
"description": "Control a differential drive with Xbox tank drive in teleop.",
|
||||
"tags": [
|
||||
"Basic Robot",
|
||||
"Differential Drive",
|
||||
@@ -531,7 +531,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Duty Cycle Encoder",
|
||||
"description": "Demonstrates the use of the Duty Cycle Encoder class",
|
||||
"description": "View values from a duty-cycle encoder.",
|
||||
"tags": [
|
||||
"Hardware",
|
||||
"Duty Cycle",
|
||||
@@ -544,7 +544,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Duty Cycle Input",
|
||||
"description": "Demonstrates the use of the Duty Cycle class",
|
||||
"description": "View duty-cycle input.",
|
||||
"tags": [
|
||||
"Hardware",
|
||||
"Duty Cycle",
|
||||
@@ -556,7 +556,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Addressable LED",
|
||||
"description": "Demonstrates the use of the Addressable LED class",
|
||||
"description": "Display a rainbow pattern on an addressable LED strip.",
|
||||
"tags": [
|
||||
"Hardware",
|
||||
"Basic Robot",
|
||||
@@ -568,7 +568,7 @@
|
||||
},
|
||||
{
|
||||
"name": "DMA",
|
||||
"description": "Demonstrates the use of the DMA class",
|
||||
"description": "Read various sensors using DMA.",
|
||||
"tags": [
|
||||
"Hardware",
|
||||
"DMA",
|
||||
@@ -580,7 +580,7 @@
|
||||
},
|
||||
{
|
||||
"name": "MecanumControllerCommand",
|
||||
"description": "An example command-based robot demonstrating the use of a MecanumControllerCommand to follow a pregenerated trajectory.",
|
||||
"description": "Follow a pre-generated trajectory with a mecanum drive using MecanumControllerCommand.",
|
||||
"tags": [
|
||||
"Command-based",
|
||||
"Mecanum Drive",
|
||||
@@ -597,7 +597,7 @@
|
||||
},
|
||||
{
|
||||
"name": "SwerveControllerCommand",
|
||||
"description": "An example command-based robot demonstrating the use of a SwerveControllerCommand to follow a pregenerated trajectory.",
|
||||
"description": "Follow a pre-generated trajectory with a swerve drive using SwerveControllerCommand.",
|
||||
"tags": [
|
||||
"Command-based",
|
||||
"Swerve Drive",
|
||||
@@ -614,7 +614,7 @@
|
||||
},
|
||||
{
|
||||
"name": "ArmBot",
|
||||
"description": "An example command-based robot demonstrating the use of a ProfiledPIDSubsystem to control an arm.",
|
||||
"description": "Control an arm with ProfiledPIDSubsystem.",
|
||||
"tags": [
|
||||
"Command-based",
|
||||
"Arm",
|
||||
@@ -629,7 +629,7 @@
|
||||
},
|
||||
{
|
||||
"name": "ArmBotOffboard",
|
||||
"description": "An example command-based robot demonstrating the use of a TrapezoidProfileSubsystem to control an arm with an offboard PID.",
|
||||
"description": "Control an arm with TrapezoidProfileSubsystem and smart motor controller PID.",
|
||||
"tags": [
|
||||
"Command-based",
|
||||
"Arm",
|
||||
@@ -644,7 +644,7 @@
|
||||
},
|
||||
{
|
||||
"name": "DriveDistanceOffboard",
|
||||
"description": "An example command-based robot demonstrating the use of a TrapezoidProfileCommand to drive a robot a set distance with offboard PID on the drive.",
|
||||
"description": "Drive a differential drivetrain a set distance using TrapezoidProfileCommand and smart motor controller PID.",
|
||||
"tags": [
|
||||
"Command-based",
|
||||
"Differential Drive",
|
||||
@@ -658,7 +658,7 @@
|
||||
},
|
||||
{
|
||||
"name": "RamseteController",
|
||||
"description": "An example robot demonstrating the use of RamseteController.",
|
||||
"description": "Follow a pre-generated trajectory with a differential drive using RamseteController.",
|
||||
"tags": [
|
||||
"Basic Robot",
|
||||
"Differential Drive",
|
||||
@@ -689,7 +689,7 @@
|
||||
},
|
||||
{
|
||||
"name": "StateSpaceFlywheel",
|
||||
"description": "An example state-space controller for a flywheel.",
|
||||
"description": "Control a flywheel using a state-space model (based on values from CAD), with a Kalman Filter and LQR.",
|
||||
"tags": [
|
||||
"Basic Robot",
|
||||
"Flywheel",
|
||||
@@ -704,7 +704,7 @@
|
||||
},
|
||||
{
|
||||
"name": "StateSpaceFlywheelSysId",
|
||||
"description": "An example state-space controller demonstrating the use of FRC Characterization's System Identification for controlling a flywheel.",
|
||||
"description": "Control a flywheel using a state-space model (based on values from SysId), with a Kalman Filter and LQR.",
|
||||
"tags": [
|
||||
"Basic Robot",
|
||||
"Flywheel",
|
||||
@@ -720,7 +720,7 @@
|
||||
},
|
||||
{
|
||||
"name": "StateSpaceElevator",
|
||||
"description": "An example state-space controller for controlling an elevator.",
|
||||
"description": "Control an elevator using a state-space model (based on values from CAD), with a Kalman Filter and LQR.",
|
||||
"tags": [
|
||||
"Basic Robot",
|
||||
"Elevator",
|
||||
@@ -735,7 +735,7 @@
|
||||
},
|
||||
{
|
||||
"name": "StateSpaceArm",
|
||||
"description": "An example state-space controller for controlling an arm.",
|
||||
"description": "Control an arm using a state-space model (based on values from CAD), with a Kalman Filter and LQR.",
|
||||
"tags": [
|
||||
"Basic Robot",
|
||||
"Arm",
|
||||
@@ -750,7 +750,7 @@
|
||||
},
|
||||
{
|
||||
"name": "ElevatorSimulation",
|
||||
"description": "Demonstrates the use of physics simulation with a simple elevator.",
|
||||
"description": "Simulate an elevator.",
|
||||
"tags": [
|
||||
"Basic Robot",
|
||||
"Elevator",
|
||||
@@ -765,7 +765,7 @@
|
||||
},
|
||||
{
|
||||
"name": "DifferentialDrivePoseEstimator",
|
||||
"description": "Demonstrates the use of the DifferentialDrivePoseEstimator as a replacement for differential drive odometry.",
|
||||
"description": "Combine differential-drive odometry with vision data using DifferentialDrivePoseEstimator.",
|
||||
"tags": [
|
||||
"Differential Drive",
|
||||
"State-Space",
|
||||
@@ -780,7 +780,7 @@
|
||||
},
|
||||
{
|
||||
"name": "MecanumDrivePoseEstimator",
|
||||
"description": "Demonstrates the use of the MecanumDrivePoseEstimator as a replacement for mecanum odometry.",
|
||||
"description": "Combine mecanum-drive odometry with vision data using MecanumDrivePoseEstimator.",
|
||||
"tags": [
|
||||
"Mecanum Drive",
|
||||
"State-Space",
|
||||
@@ -795,7 +795,7 @@
|
||||
},
|
||||
{
|
||||
"name": "ArmSimulation",
|
||||
"description": "Demonstrates the use of physics simulation with a simple single-jointed arm.",
|
||||
"description": "Simulate a single-jointed arm.",
|
||||
"tags": [
|
||||
"Basic Robot",
|
||||
"Arm",
|
||||
@@ -810,7 +810,7 @@
|
||||
},
|
||||
{
|
||||
"name": "UnitTesting",
|
||||
"description": "Demonstrates basic unit testing for a robot project.",
|
||||
"description": "Test a robot project with basic unit tests in simulation.",
|
||||
"tags": [
|
||||
"Intake",
|
||||
"Pneumatics"
|
||||
@@ -821,7 +821,7 @@
|
||||
},
|
||||
{
|
||||
"name": "SimpleDifferentialDriveSimulation",
|
||||
"description": "An example of a minimal drivetrain simulation project without the command-based library.",
|
||||
"description": "Simulate a differential drivetrain and follow trajectories with RamseteController (non-command-based).",
|
||||
"tags": [
|
||||
"Differential Drive",
|
||||
"State-Space",
|
||||
@@ -838,7 +838,7 @@
|
||||
},
|
||||
{
|
||||
"name": "StateSpaceDriveSimulation",
|
||||
"description": "Demonstrates the use of physics simulation with a differential drivetrain and the Field2d class.",
|
||||
"description": "Simulate a differential drivetrain and follow trajectories with RamseteCommand (command-based).",
|
||||
"tags": [
|
||||
"Command-based",
|
||||
"Differential Drive",
|
||||
@@ -852,7 +852,7 @@
|
||||
},
|
||||
{
|
||||
"name": "SwerveDrivePoseEstimator",
|
||||
"description": "Demonstrates the use of the SwerveDrivePoseEstimator as a replacement for mecanum drive odometry.",
|
||||
"description": "Combine swerve-drive odometry with vision data using SwerveDrivePoseEstimator.",
|
||||
"tags": [
|
||||
"Swerve Drive",
|
||||
"State-Space",
|
||||
|
||||
Reference in New Issue
Block a user