Creando un subsistema

Subsystems are classes that encapsulate (or contain) all the data and code that make a subsystem on your robot operate. The first step in creating a robot program with the RobotBuilder is to identify and create all the subsystems on the robot. Examples of subsystems are grippers, ball collectors, the drive base, elevators, arms, etc. Each subsystem contains all the sensors and actuators that are used to make it work. For example, an elevator might have a Victor SPX motor controller and a potentiometer to provide feedback of the robot position.

Creación de un subsistema utilizando la paleta

../../../../../_images/creating-subsystem-1.png

Arrastra el ícono del subsistema de la paleta a la carpeta Subsystems en la descripción del robot para crear una clase de subsistema.

Creación de un subsistema utilizando el menú contextual

../../../../../_images/creating-subsystem-2.png

Haga clic con el botón derecho del ratón en la carpeta Subsystem de la descripción del robot para añadir un subsistema a esa carpeta.

Nombrando el subsistema

../../../../../_images/creating-subsystem-3.png

Después de crear el subsistema, ya sea arrastrando o usando el menú contextual como se describe arriba, simplemente escriba el nombre que desea darle al subsistema. El nombre puede ser varias palabras separadas por espacios, RobotBuilder concatenará las palabras para hacer un nombre de clase Java o C++ apropiado para usted.

Agregando Constantes

../../../../../_images/creating-subsystem-4.png

Las constantes son muy útiles para reducir la cantidad de números mágicos en tu código. En los subsistemas, se pueden usar para llevar un registro de ciertos valores, como los valores de los sensores para alturas específicas de un ascensor, o la velocidad a la que se conduce el robot.

Por defecto, no habrá constantes en un subsistema. Presiona el botón junto a «Constantes» para abrir un diálogo para crear algunas.

Creando Constantes

../../../../../_images/creating-subsystem-5.png

La mesa de las constantes estará vacía al principio. Presiona «Añadir constante» para añadir una.

Añadir Constantes

../../../../../_images/creating-subsystem-6.png
  1. El nombre de la constante. Cámbialo por algo descriptivo. En este ejemplo de una transmisión, algunas buenas constantes podrían ser «PlaceDistance» y «BackAwayDistance».

  2. El tipo de la constante. Lo más probable es que sea un doble, pero puede elegir uno de los siguientes: String, double, int, long, boolean, o byte.

  3. El valor de la constante.

Guardando Constantes

../../../../../_images/creating-subsystem-7.png

Después de añadir constantes y establecer sus valores, sólo tienes que pulsar «Guardar y cerrar» para guardar las constantes y cerrar el diálogo. Si no quieres guardar, presiona el botón de salida en la parte superior de la ventana.

Después de guardar

../../../../../_images/creating-subsystem-8.png

Después de guardar las constantes, los nombres aparecerán en el botón «Constantes» en las propiedades del subsistema.

Arrastrando los actuadores/sensores al subsistema

../../../../../_images/creating-subsystem-9.png

Hay tres pasos para añadir componentes a un subsistema:

  1. Arrastre los actuadores o sensores de la paleta al subsistema según sea necesario.

  2. Dale al actuador o al sensor un nombre significativo

  3. Edita las propiedades como los números de módulo y los números de canal para cada elemento del subsistema.

RobotBuilder usará automáticamente números de canal crecientes para cada módulo del robot. Si aún no ha cableado el robot, puede dejar que RobotBuilder asigne números de canal únicos para cada sensor o actuador y cablear el robot según la tabla de cableado generado.

Esto sólo crea el subsistema en RobotBuilder, y posteriormente generará el código del esqueleto para el subsistema. Para hacer que funcione realmente su robot, por favor, consulte: ref:Escribiendo un Código para un Subsistema <docs/software/wpilib-tools/robotbuilder/writing-code/robotbuilder-writing-subsystem-code:Writing the Code for a Subsystem>.