Être capable de programmer le robot en utilisant les données provenant de celui-ci pour créer des modes autonome et téléopéré.
La documentation collective concernant le système de contrôle des robots en Compétition de robotique FIRST est maintenant regroupée sous la plateforme WPILib. WPI Robotics Library (WPILib) est la bibliothèque logicielle standard fournie aux équipes pour écrire du code pour leurs robots FRC®. WPILib contient un ensemble de classes et de sous-routines utiles pour l’interface avec diverses parties du système de contrôle FRC (telles que les capteurs, les contrôleurs de moteur et la station de pilotage), ainsi qu’un assortiment d’autres fonctions utilitaires.
Il existe trois versions de WPILib, une pour chacun des trois langages textuels officiellement pris en charge : WPILibJ pour Java et WPILibC pour C++ et RobotPy pour Python. Un effort considérable est fait pour maintenir la parité entre ces langages – les fonctionnalités de bibliothèque ne sont pas ajoutées à moins qu’elles ne puissent être raisonnablement prises en charge pour Java et C ++ (le C ++ pouvant être transformé par pybind pour Python), et si possible, les noms de classe et de méthode sont maintenus identiques ou très similaires. Java, C ++ et Python ont été choisis pour les langages officiellement pris en charge en raison de leur niveau d’abstraction et de leur présence appropriés dans les cours d’informatique et en industrie.
En général, C++ offre de meilleures performances haut de gamme, au prix d’un effort accru de l’utilisateur (la mémoire doit être gérée manuellement et le compilateur C ++ ne fait pas grand-chose pour s’assurer que le code utilisateur ne se bloquera pas au moment de l’exécution). Java et Python offrent moins de performances, mais beaucoup plus de commodité. Les utilisateurs de Python doivent prendre soin de tester leur programme pour s’assurer que les fautes de frappe et autres problèmes ne provoquent pas de plantages de robots, car Python est interprété. Les utilisateurs nouveaux/inexpérimentés sont encouragés à utiliser Java.
- Étienne Beaulac (Mentor équipe FRC Ultime 5528)
- Regis Bekale (Robotique FIRST Québec)
- Andy Chang (Mentor équipe FRC Express-O 3986)
- Félix Giffard (Mentor équipe FRC Evolution 2626)
- Sami G.-D. (Mentor équipe FRC Cuivre & Or 6929)
- Kaitlyn Kenwell (volontaire FIRST)
- Marc Lalonde (Mentor équipe FRC Les Spartiates 3544)
- Sydney Lavoie (Fusion Jeunesse)
- Daniel Renaud (Mentor équipe FRC Robotronix 3550)
- Alexandra Schneider (Mentor équipe FRC Robo’Lyon 5553)
- André Theberge (Mentor équipe FRC Tech for Kids 3990)
- Martin Regimbald (Robotique FIRST Québec)
- Martin Rioux (Mentor équipe FRC Club de Robotique Rikitik 3996)