45 lines
1.5 KiB
Markdown
45 lines
1.5 KiB
Markdown
|
---
|
||
|
sidebar_position: 3
|
||
|
---
|
||
|
|
||
|
# YAGSL (Swerve)
|
||
|
|
||
|
[Yet Another Generic Swerve Library](https://github.com/BroncBotz3481/YAGSL) permet de facilement créer un sous-système swerve pour un robot.
|
||
|
|
||
|
Plus d'information sera ajoutée, mais pour l'instant vous pouvez suivre la documentation [ici](https://github.com/BroncBotz3481/YAGSL)
|
||
|
|
||
|
## Installation
|
||
|
|
||
|
Installer les [bibliothèques](vendor_libraries.md) de NavX, Phoenix, REV et YAGSL.
|
||
|
|
||
|
## Configuration
|
||
|
|
||
|
Pour utiliser la bibliothèque, nous devons lui fournir des fichiers de configuration qui décrivent notre système swerve (les différents moteurs et leurs ID, entre autres).
|
||
|
|
||
|
Vous pouvez donc aller chercher le dossier d'[exemple](https://github.com/BroncBotz3481/YAGSL/tree/main/deploy) ou le [créer vous-même](https://broncbotz3481.github.io/YAGSL-Example/). Vous devez mettre le dossier `swerve` dans le dossier `deploy` de votre projet.
|
||
|
|
||
|
## Utilisation
|
||
|
|
||
|
1. Créer un subsystem pour le swerve
|
||
|
2. Créer une variable `SwerveDrive`
|
||
|
3. Créer le `SwerveDrive` à partir de la configuration
|
||
|
|
||
|
```java
|
||
|
SwerveDrive swerveDrive;
|
||
|
|
||
|
/** Creates a new SwerveSubsystem. */
|
||
|
public SwerveSubsystem(File file) {
|
||
|
try {
|
||
|
this.swerveDrive = new SwerveParser(file).createSwerveDrive();
|
||
|
} catch (IOException e) {
|
||
|
throw new RuntimeException(e);
|
||
|
}
|
||
|
}
|
||
|
```
|
||
|
|
||
|
:::note
|
||
|
Ici, on utilise un [try-catch](../../java/try-catch){target="\_blank"}, car il pourrait y avoir une erreur si les fichiers de configuration n'existent pas;
|
||
|
:::
|
||
|
|
||
|
Vous devrez ensuite ajouter vos méthodes pour intéragir avec le `SwerveDrive` dans le subsystem.
|