Widgets de Glass

Specialized widgets are available for certain types that exist in robot code. These include objects that are manually sent over NetworkTables such as SendableChooser instances, or hardware that is automatically sent over LiveWindow.

Nota

El soporte de widgets en Glass está todavía en su infancia, por lo que sólo hay un puñado de widgets disponibles. Esta lista crecerá a medida que el trabajo de desarrollo continúe.

Nota

Un widget puede ser renombrado haciendo clic con el botón derecho del ratón en su cabecera y especificando un nuevo nombre.

Widgets del hardware

Widgets de hardware en especifico (como controladores de motor) están disponibles usualmente por medio de LiveWindow. Se puede acceder a estos seleccionando la opción NetworkTables en el menú, haciendo clic en LiveWindow y escogiendo el widget deseado.

../../../../_images/livewindow.png

La lista de hardware (enviada por LiveWindow automáticamente) que tiene widgets está en la parte de abajo:

  • «Entrada digital»

  • «Salida digital»

  • SpeedController

  • Gyro

Aquí está un ejemplo del widget para giroscopios:

Gyro widget with both text and dial visualizations of the current gyro angle. Current Gyro Angle in degrees is -60.9704.

Widget de elección enviable

El widget Sendable Chooser` representa una instancia SendableChooser del código del robot. A menudo se utiliza para seleccionar modos autónomos. Como otros cuadros de mando, tu instancia «SendableChooser» simplemente necesita ser enviada usando una API de NetworkTables. Lo más simple es usar algo como SmartDashboard:

SmartDashboard.putData("Auto Selector", m_selector);

Nota

For more information on creating a SendableChooser, please see this document.

El widget Seleccionador de envío aparecerá en el menú Tablas de red y bajo el nombre de la tabla principal a la que se envió la instancia. En el ejemplo anterior, el nombre de la tabla principal sería SmartDashboard.

../../../../_images/sendable-chooser.png

Widget de controlador PID

El widget PID Controller le permite ajustar rápidamente los valores del PID para un determinado controlador. Una instancia de PIDController debe ser enviada utilizando una API de Tablas de Red. Lo más sencillo es utilizar algo como SmartDashboard:

SmartDashboard.putData("Elevator PID Controller", m_elevatorPIDController);

Esto le permite ajustar rápidamente los valores P, I y D para varios puntos de ajuste.

PID widget for the Elevator PID Controller. P = 3.0, I = 0.001, D = 0.050, Setpoint = 0.0.

FMSInfo Widget

El widget FMSInfo se crea por defecto cuando Glass se conecta a un robot. Este widget muestra información básica sobre el estado de activación del robot, si está conectado un Driver Station, si está conectado un FMS, los datos específicos del juego, etc. Se puede ver seleccionando el elemento de menú Tablas de Red y haciendo clic en FMSInfo.

../../../../_images/fms-info.png