Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Glossary #237

Draft
wants to merge 5 commits into
base: main
Choose a base branch
from
Draft
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
1 change: 1 addition & 0 deletions docs/requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,4 @@ git+https://github.com/FIRST-Tech-Challenge/ftcdocs-helper@main#subdirectory=coo
sphinx-sitemap==2.3.0
python-git-info==0.8.3
sphinxcontrib-mermaid==0.9.2
sphinx-hoverxref==1.3.0
Original file line number Diff line number Diff line change
Expand Up @@ -137,7 +137,7 @@ Enabling and Disabling Processors
---------------------------------

This note is repeated from the previous page 2, :doc:`Vision Processor Initialization
<../vision_processor_init/vision-processor-init>`
</apriltag/vision_portal/vision_processor_init/vision-processor-init>`

For a Processor created at Step 2, an OpMode does **not need** to enable that
Processor at this Step 3, **VisionPortal Initialization**.
Expand Down
5 changes: 2 additions & 3 deletions docs/source/cad_resources/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,8 @@

CAD Resources
=============

`Computer Aided Design (CAD)
<https://en.wikipedia.org/wiki/Computer-aided_design>`__ and 3D animation
:term:`Computer Aided Design (CAD)
<CAD>` and 3D animation
software is used in *FIRST* Tech Challenge by teams to design and visualize
complex systems prior to manufacturing. There are many software options for CAD
and there's no way to list them all. Some software is provided free of charge,
Expand Down
5 changes: 5 additions & 0 deletions docs/source/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@
'sphinxcontrib.googleanalytics',
'sphinxcontrib.cookiebanner',
'sphinxcontrib.mermaid',
'hoverxref.extension',
]

autosectionlabel_prefix_document = True
Expand Down Expand Up @@ -63,6 +64,10 @@
"source/control_hard_compon/rc_components/images/B2.svg",
"source/control_hard_compon/ds_components/images/C1.svg",]

# Options for HoverXRef extension

hoverxref_roles = ['term']

# Specify the master doc file, AKA our homepage
master_doc = "index"

Expand Down
118 changes: 118 additions & 0 deletions docs/source/glossary/glossary.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,118 @@
Glossary
=================

.. admonition:: Key

.. list-table::

* - :bdg-primary:`GM1`
- :bdg-info:`<Insert Tag>`

* - Game Manual Part 1
- <Insert Tag Desc>

.. glossary::
:sorted:

OpMode
An Operational Mode (OpMode) is the heart of any *FIRST* Tech Challenge routine. This refers to a User Defined Class that outlines the behavior of the robot during a certain period of the game.
Users are able to utilize all manners of functionality from sensors to motors and servors to dictate the behavior of the robot.
For example, there might be an OpMode that causes the robot to drive forward for 5 seconds and then stop.

Class
A Class is a blueprint for an object. It tells the program what variables and functions an object will have.
For example, a class might be called "Robot" and have variables such as "motorLeft" and "motorRight" and functions such as "driveForward" and "driveBackward".

Object
An Object is an instance of a class. It is a variable that is defined by a class.
For example, an object might be called "robot" and be defined by the class "Robot".
This object would have variables such as "motorLeft" and "motorRight" and functions such as "driveForward" and "driveBackward".

Variable
A Variable is a value that is held in memory by the robot. It has a type, value, and name.
The type refers to what kind of value the variable holds (integer, string, etc.).
The value is the actual value of the variable (1, "Hello World", etc.).
The name is what the variable is called in the program (motorLeft, motorRight, etc.).

Integer
An Integer is a type of variable that holds a number with no decimal places. (Eg. -3, 0, 1, 2, 3, etc.)

String
A string is a type of variable that holds a sequence of characters. (Eg. "Hello World!", "Robot", "2023", etc.)

CAD
CAD stands for Computer Aided Design. It is a type of software that allows users to create 3D models of objects.
In the context of robotics, CAD is ofteb used to create 3D models of robots and robot parts.
This allows users to visualize their robot before they build it while making sure that everything fits together.

AprilTag :bdg-primary:`GM1`
A visual fiducial system, useful for a wide variety of tasks including augmented reality, robotics, and
scamera calibration. Information about AprilTags may be found :doc:`here </apriltag/vision_portal/apriltag_intro/apriltag-intro>`.

Logic Level Converter :bdg-primary:`GM1`
An electronic device that allows an encoder or sensor, that operates using 5V logic
levels, to work with the REV Expansion Hub and/or REV Control Hub, which operates using 3.3V logic levels.
This device may contain a step-up voltage converter (from 3.3V to 5V) and a dual channel, bidirectional logic
level converter. This device may be used directly with a 5V digital sensor or with an I2C Sensor Adaptor Cable
to a 5V I2C sensor.

I2C Sensor Adapter Cable :bdg-primary:`GM1`
An adapter to change the pin orientation of the REV Robotics Logic Level
Converter to match a Modern Robotics compatible I2C sensor.

Mini USB to OTG (On-The-Go) Micro Cable :bdg-primary:`GM1`
The connection between the Smartphone Android Device
Robot Controller and the REV Expansion Hub.

Op Mode :bdg-primary:`GM1`
An Op Mode (short for "operational mode") is software that is used to customize the behavior of a
Competition Robot. The Robot Controller executes a selected Op Mode to perform certain tasks during a
Match.

OTG Micro Adapter :bdg-primary:`GM1`
Connects a USB hub to Micro USB OTG (On-The-Go) port on a smartphone Driver
Station Android Device.

REV Control Hub :bdg-primary:`GM1`
An integrated Android Device with four (4) DC motor channels, six (6) servo channels,
eight (8) digital I/O channels, four (4) analog input channels, and four (4) independent I2C buses.

REV Driver Hub :bdg-primary:`GM1`
A compact mobile Android Device designed specifically for use as part of the Driver Station.

REV Expansion Hub :bdg-primary:`GM1`
An integrated electronic device with four (4) DC motor channels, six (6) servo
channels, eight (8) digital I/O channels, four (4) analog input channels, and four (4) independent I2C buses.

REV SPARKmini Motor Controller :bdg-primary:`GM1`
An electronic device that accepts a PWM control signal (from a servo
controller) and supplies 12V power to a DC motor.

REV Servo Power Module :bdg-primary:`GM1`
An electronic device that boosts the power supplied to 3-wire servos. A REV
Servo Power Module has 6 input servo ports and 6 matching output ports. It draws power from a 12V source
and provides 6V power to each output servo port. A REV Servo Power Module can provide up to 15A of
current across all output servo ports for a total of 90 Watts of power per module.

Robot Controller :bdg-primary:`GM1`
A REV Control Hub or an allowed smartphone Android Device connected to a REV
Expansion Hub located on the Robot that processes Team written software, reads on-board sensors, and
receives commands from the Drive Team by way of the Driver Station. The Robot Controller sends instructions
to the motor and servo controllers to make the Robot move.

VEX Motor Controller 29 :bdg-primary:`GM1`
An electronic device that accepts a PWM control signal from a servo controller
through a REV Servo Power Module to drive a VEX EDR 393 motor

Vision Camera :bdg-primary:`GM1`
COTS devices with exactly one image sensor able to stream captured images and/or video.
Vision cameras must be UVC compatible and must connect directly to a REV Control Hub via USB or to the
Robot Controller through a powered USB hub. Common Vision Cameras are the Logitech C270 HD, Logitech
C920 HD PRO, and Microsoft Lifecam HD-3000.

Vision Sensor :bdg-primary:`GM1`
COTS devices with exactly one image sensor not able to stream captured images and/or
video. Instead, the images and/or video is processed by on-board algorithms and only the results are
communicated back to a computer or system. Vision Sensors must follow all sensor rules in <RE11>. Common
Vision Sensors are the HuskyLens and Pixy2, though only the HuskyLens has included SDK support as of
SDK 9.0.
1 change: 1 addition & 0 deletions docs/source/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ to see why.
persona_pages/veteran_teams/veteran_teams
persona_pages/coach_admin/coach_admin
persona_pages/mentor_tech/mentor_tech
glossary/glossary

.. toctree::
:caption: Game and Season-Specific Resources
Expand Down
Loading