Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions src/config/sidebarConfig.ts
Original file line number Diff line number Diff line change
Expand Up @@ -110,6 +110,10 @@ export const sidebarSections: Record<string, SidebarSection[]> = {
label: 'Stage 1A Introduction',
slug: 'learning-course/stage1/stage1a/stage-overview',
},
{
label: 'Stage 1A Vocabulary',
slug: 'learning-course/stage1/stage1a/1a-vocabulary',
},
// {
// label: 'TBD',
// slug: 'stage-1a-commands/the-command-body',
Expand Down
52 changes: 52 additions & 0 deletions src/content/docs/learning-course/stage1/stage1a/1a-vocabulary.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
---
title: Stage 1A Vocabulary
description: An overview of important vocabulary that is used in Stage 1A
prev: ../stage-overview
next: false
---

Before programming your first robot, there are some electrical and hardware terms that are important to go over.

<Aside type="tip">Open this page in a new tab to use as a reference! </Aside>

## Drivetrain

A drivetrain describes the mechanism used to make a robot drive.
In FRC, there are many different types of drivetrains.
The drivetrain that we will be programming in this stage is called a tank drive.

For programming kitbot's drivetrain, we will be using the `DifferentialDrive` object which describes the drivetrain.
We will also be using the `ArcadeDrive` method which tells the motors to drive so that when using a controller (such as an xbox controller),
the joystick's y axis drives the robot forward and backwards, and the joystick's x axis controls the rotation.

## Motor Controller

Motor controllers are the electronic interfaces which control the speed and direction of the motor.
When writing code to control a motor, you are writing code to control the motor's motor controller.
In Stage 1a, you will use either SPARK MAX or TalonFX.

### SPARK MAX

A SPARK MAX is the motor controller that belongs to the REV ecosystem.
REV is a vendor that has electronic and hardware for FIRST teams.
SparkMax are mainly used to control NEO motors but may also control brushed motors.

### TalonFX

A TalonFX is the motor controller that belongs to the CTRE ecosystem.
CTRE is a vendor for FRC that specializes in electronics for FIRST teams.
It is used to control motors such as a Kraken motor.
Unlike the SPARK MAX, the TalonFX is built into the motor.

## Systemcore

Systemcore is the main processor for robot code.
It can be thought of as the "brain" of the robot.

## CAN

CAN is Controller Area Network.
Typically using yellow and green cables, it is used to communicate with motor controllers.
For stage 1a, CAN is used to communicate with motor controllers.
A **CAN Bus** describes a chain of devices connected together by a single pair of CAN wires.
A CAN bus starts at the SystemCore, connects several devices, and typically ends at the [Power Distribution Hub](https://docs.revrobotics.com/ion-control/pdh/overview).