Widgets pour Glass
Des widgets spécialisés sont disponibles pour certains types qui existent dans le code du robot. Ceux-ci incluent des objets qui sont envoyés manuellement sur NetworkTables tels que les instances SendableChooser
, ou le matériel qui est automatiquement envoyé sur LiveWindow.
Note
La prise en charge des widgets dans Glass en est encore à ses débuts - par conséquent, il n’y a qu’un petit ensemble de widgets disponibles. Cette liste augmentera au fur et à mesure que le travail de développement se poursuivra.
Note
Un widget peut être renommé en cliquant avec le bouton droit de la souris sur son en-tête et en spécifiant un nouveau nom.
Widgets matériels (Hardware)
Les widgets pour un matériel spécifique (tels que les contrôleurs de moteur) sont généralement disponibles via LiveWindow. On peut y accéder en sélectionnant l’option de menu NetworkTables, en cliquant sur LiveWindow et en choisissant le widget souhaité.

La liste du matériel (Hardware), qui est envoyé sur LiveWindow automatiquement et qui a des widgets est ci-dessous:
DigitalInput
DigitalOutput
SpeedController
Gyro
Voici un exemple de widget pour gyroscopes:
Widget Sélecteur envoyable
Le widget Sendable Chooser représente une instance SendableChooser
à partir du code du robot. Il est souvent utilisé pour sélectionner des modes autonomes. Comme les autres tableaux de bord, votre instance SendableChooser
doit simplement être envoyée à l’aide d’une API NetworkTables. Le plus simple est d’utiliser quelque chose comme SmartDashboard
:
SmartDashboard.putData("Auto Selector", m_selector);
frc::SmartDashboard::PutData("Auto Selector", &m_selector);
Note
Pour plus d’informations sur la création d’un SendableChooser
, veuillez consulter ce document.
Le widget Sendable Chooser apparaîtra dans le menu NetworkTables et sous le nom de la table principale sur laquelle l’instance a été envoyée. Dans l’exemple ci-dessus, le nom de la table principale serait SmartDashboard.
Widget de contrôleur PID
Le widget PID Controller vous permet de régler rapidement les valeurs PID pour un certain contrôleur. Une instance PIDController
doit être envoyée à l’aide d’une API NetworkTables. Le plus simple est d’utiliser quelque chose comme SmartDashboard
:
SmartDashboard.putData("Elevator PID Controller", m_elevatorPIDController);
frc::SmartDashboard::PutData("Elevator PID Controller", &m_elevatorPIDController);
Cela vous permet de régler rapidement les valeurs P, I et D pour divers points de consigne.

Widget FMSInfo
Le widget FMSInfo est créé par défaut lorsque Glass se connecte à un robot. Ce widget affiche des informations de base sur l’état activé du robot, si une Driver Station est connectée, si un FMS est connecté, les données spécifiques au jeu, etc. Il peut être visualisé en sélectionnant l’élément de menu NetworkTables et en cliquant sur FMSInfo.
