Enviando datos

A diferencia de SmartDashboard, los datos no se pueden enviar directamente a Shuffleboard sin antes especificar en qué pestaña se deben colocar los datos.

Envío de datos simples

El envío de datos simples (números, cadenas, valores booleanos y matrices de estos) se realiza llamando add en una pestaña. Este método establecerá el valor si aún no está presente, pero no sobrescribirá un valor existente.

Shuffleboard.getTab("Numbers")
     .add("Pi", 3.14);

Si los datos deben actualizarse (por ejemplo, la salida de algún cálculo realizado en el robot), llame a getEntry() después de definir el valor, luego actualice cuando sea necesario o en una función periódica

class VisionCalculator {
   private ShuffleboardTab tab = Shuffleboard.getTab("Vision");
   private NetworkTableEntry distanceEntry =
       tab.add("Distance to target", 0)
          .getEntry();

   public void calculate() {
     double distance = ...;
     distanceEntry.setDouble(distance);
   }
 }

Hacer que las elecciones persistan entre reinicios

Al configurar un robot desde el tablero, es posible que algunos ajustes persistan entre los reinicios del robot o de la estación del conductor en lugar de que los conductores recuerden (u olviden) configurar los ajustes antes de cada partido.

Simplemente usando addPersistent en lugar de` add` hará que el valor se guarde en el roboRIO y se cargue cuando se inicie el programa del robot.

Nota

Esto no se aplica a los datos que se pueden enviar como selectores o controladores de motor.

Shuffleboard.getTab("Drive")
     .addPersistent("Max Speed", 1.0);

Envío de sensores, motores, etc.

De manera análoga a SmartDashboard.putData, cualquier objeto Sendable (la mayoría de los sensores, controladores de motor y SendableChoosers) se pueden agregar a cualquier pestaña

Shuffleboard.getTab("Tab Title")
     .add("Sendable Title", mySendable);