# Glosario de FRC

acelerómetro

Un sensor común es usado para medir la aceleración en uno o más ejes.

auto

The first phase of each match is called Autonomous (auto) and consists of the robot’s running pre-programmed instructions.

back-EMF

In electric motors, the force generated by the interaction of spinning magnets in a coil of wire which opposes spinning motion.

boolean

A form of data with only two possible values (true or false), intended to represent the two truth values of logic and Boolean algebra.

call stack

A specially-organized region of memory which helps the program keep track of what function it is in. As each function calls another, the call point is recorded and added to the top of the structure, forming a «stack» of references. Additionally, local variables will also be stored in this stack. See call stack on Wikipedia for more info.

central limit theorem

A core concept in probability which states that when many independent variables are added up, the result tends to look like a «normal» (or Gaussian) distribution, regardless of whether the independent variables themselves are normally distributed. See Central Limit Theorem on Wikipedia for more info.

Classical Mechanics

The branch of physics which studies and describes the motion of relatively large, relatively slow objects. See Classical Mechanics on Wikipedia for more info.

COTS

Comercial lista para usar, una pieza estándar (es decir, no pedido personalizado) comúnmente disponible de un proveedor a todos los equipos para su compra.

composition

A formal software term for building (or «composing») software entities out of smaller component entities. See object composition on Wikipedia for more info.

CRTP

Continuously Recurring Template Pattern - A software idiom in which a class X derives from a class template instantiation using X itself as a template argument. See CRTP on Wikipedia for more info.

C++

Uno de los tres lenguajes de programación aprobados oficialmente.

declarative programming

A style of software which focuses on describing what a program should do, rather than how it gets done. See declarative programming on Wikipedia for more info.

dependency injection

A software design pattern where each class receives all objects it depends upon. Sometimes these are passed through the constructor, but not always. See dependency injection on Wikipedia for more info.

deprecated

Software that has been replaced and will no longer receive new features. Deprecated software will be maintained for at least 1 year, but may be removed after that. For example, if a method is deprecated prior to the 2022 season, it will be usable in the 2022 season, but may be removed prior to the 2023 season. Teams are encouraged to not use deprecated methods in new code. WPILib always deprecates features at least one year prior to removing them from the codebase.

design pattern

A particular, intentionally-chosen style of organizing code. A design pattern intentionally excludes using certain features of a programming language to constrain developers into solutions that are well-suited to a particular problem-space. See design pattern. on Wikipedia for more info.

DHCP

Dynamic Host Configuration Protocol, el protocolo que permite que un dispositivo central asigne direcciones IP únicas a los demás dispositivos.

encapsulation

A software design pattern which uses a class to hide the implementation details of other classes. See encapsulation on Wikipedia for more info.

entry

In , a combined and . The subscriber is always active, but the publisher is not created until a publish operation is performed (e.g. a value is «set», aka published, on the entry). This may be more convenient than maintaining a separate publisher and subscriber.

enumeration

A list of all elements of a set, typically used to refer to a set of pre-defined values.

event-driven programming

A style of programming where certain parts of code generate «events» as a result of some input (sensors, user interaction, etc). Then, other parts of code listen for and respond to «handle» these events. See event-based on Wikipedia for more info.

floating point

A method for approximating real numbers in computer-based arithmetic, using a fixed precision integer scaled by an integer exponent. Typically computer systems support both «single» precision (32-bit storage) and «double» precision (64-bit storage) floating point values, as defined by IEEE 754.

FMS

Field Management System, el centro de la electrónica responsable por detectar y controlar la cancha de FIRST Robotics Competition.

FPGA

Field-programmable gate array - a specialized integrated circuit consisting of many digital logic elements, which can be configured to act in different patterns. This allows its behavior to be changed after manufacturing. In the context of FRC, National Instruments provides a specific configuration for the RIO’s FPGA which allows it to process the electrical inputs and outputs at a very high rate. See FPGA on Wikipedia for more info.

El mecanismo que impulsa la implementación del código del robot en la roboRIO.

giroscopio

Un dispositivo que mide la velocidad de rotación. Puede sumar las medidas de rotación para determinar del robot. (“gyro”, para abreviar)

rumbo

La dirección en la que el robot apunta, usualmente expresado como un ángulo en grados.

imperative programming

A style of programming that focuses on what the code should be doing, step by step, every loop. See imperative programming on Wikipedia for more info.

IMU

Inertial Measurement Unit, un sensor que combina y en un solo sensor.

Java

Uno de los tres lenguajes de programación aprobados oficialmente.

JSON

JavaScript Object Notation. A standardized way of organizing data into named values. The organized data can be easily . While the original usage was in Javascript, it can be used and interested by most modern programming languages. See JSON on Wikipedia for more info.

KOP

Kit of Parts, la colección de artículos listados en las listas de verificación del Kit del Kickoff, distribuidos a los equipos vía FIRST Choice, o pagados por completo (excepto envío) con un Product Donation Voucher (PDV).

chasis KOP

The KOP contains a drive base (chassis) distributed to every team (that did not opt out) as part of the . For the 2022 season, the KOP chassis is the AM14U5.

LabVIEW

Uno de los tres lenguajes de programación aprobados oficialmente.

NetworkTables

A publish-subscribe messaging system to communicate data between programs.

mass

the amount of matter in a physical object. Objects with more mass will resist changes in motion more than objects with less mass. See mass on Wikipedia for more info.

moment of inertia

The property of an object that describes both how much mass it has, and how that mass is distributed relative to a certain axis of rotation. Objects with higher moments of inertia resist changes in rotational motion more than objects with lower moments of inertia. Increasing the moment of inertia is accomplished by adding more mass, or moving the mass further away from the axis of rotation. See moment of inertia on Wikipedia for more info.

mutable

An object that can be modified after it is created.

permanent-magnet DC motor

The classification of all legal motors for the FIRST robotics competition. This type of motor takes direct current as input, and uses it to create a magnetic field. In turn, this magnetic field interacts with a physical magnet to create a force that turns the output shaft. Electrical («brushless») or mechanical («brushed») means are used to ensure the electrically-generated magnetic field always points in a direction that creates forces when it interacts with the physical magnet, even as the motor’s shaft rotates. See permanent-magnet motor on Wikipedia for more info.

persistent

In , a that is saved to a file by the server and restored at startup.

property

In , named information (metadata) about a stored and updated separately from the topic’s data. A topic may have any number of properties. A property’s value can be any data type that can be represented in JSON.

publisher

In , an object that defines a and creates and sends timestamped data values.

pose

The collection of position and rotation information that describes how a rigid body is oriented in space, relative to some fixed reference point.

RAII

Resource Acquisition Is Initialization; a language behavior (in C++, but not in Java) where holding a resource is tied to object lifetime.

retro-reflection

The property of reflecting incoming light back at the same angle it came in at, rather than an incident angle (like a mirror), absorbing it, or scattering it. Most FRC vision processing targets are retro-reflective. See retroreflector on Wikipedia for more information.

recursive composition

A type of in which the composite object may contain components of the same type as itself. For example, a command group may contain one or more command groups. See recursive composition on Wikipedia for more info. See also .

retained

In , a that is kept alive by the server even after all publishers stop publishing.

serialized

The property of a data organization scheme that allows the description of the data to be sent in order, byte by byte, over some communication channel. Reading or writing a file on disk is done in this serial fashion (IE, the data is read or written byte by byte, not all at once). Sending data over a SPI or I2C bus is also done byte by byte, again requiring the data can be serialized.

simulación

Una forma para que los equipos prueben su código sin tener un robot real disponible.

software library

A collection of code that can be imported into and used by other software. See software library on Wikipedia for more info.

solenoid valve

A airflow-controlling valve which is actuated by a small electromagnet. Strictly speaking, the solenoid is the coil of wire which forms the electromagnet, and the valve is the mechanism which actually redirects airflow. However, the set of solenoid and valve together is often simply called «a solenoid». See solenoid valve. on Wikipedia for more info.

state machine

A programming construct that divides a problem into many discrete, well-defined, mutually-exclusive «states», then defines how the problem is solved by moving between different states. See state machine on Wikipedia for more more info.

subscriber

In , an object that receives timestamped data value updates to one or more s.

telemetry

The process of recording and sending real-time data about the performance of your robot to a real-time readout or log file. For the linguists among us, the word’s roots are «tele» (remote) and «metry» (measurement). See telemetry on Wikipedia for more info.

teleop

La segunda fase de cada partido se llama Periodo Teleoperado (teleop) y consiste en conductores controlando sus robots.

topic

In , a named data channel.

torque

A force applied at a distance from some axis of rotation

trayectoria

Una trayectoria es una curva suave, con velocidades y aceleraciones en cada punto a lo largo de la curva, que conecta dos puntos finales en el campo.

transitory

In , a that will disappear after the last stops publishing.