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);
from wpilib import SmartDashboard
SmartDashboard.putData("Auto Selector", 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);
from wpilib import SmartDashboard
SmartDashboard.putData("Elevator PID Controller", elevatorPIDController)
Cela vous permet de régler rapidement les valeurs P, I et D pour divers points de consigne.
Widget FMSInfo
The FMSInfo widget is created by default when Glass connects to a robot. This widget displays basic information about the robot’s enabled state, whether a Driver Station is connected, whether an FMS is connected, the game-specific data, etc. It can be viewed by selecting the NetworkTables menu item and clicking on FMSInfo.