Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions .vscode/extensions.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"recommendations": [
"esbenp.prettier-vscode",
"yzhang.markdown-all-in-one",
"DavidAnson.vscode-markdownlint"
]
}
20 changes: 20 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
{
"[css]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[markdown]": {
"editor.codeActionsOnSave": {
"source.fixAll.markdownlint": "explicit"
},
"editor.defaultFormatter": "yzhang.markdown-all-in-one"
},
"[typescript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[typescriptreact]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"markdownlint.config": {
"MD033": false
}
}
62 changes: 31 additions & 31 deletions docs/cdr/elek/motherboard-pami.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,51 +20,51 @@ Objectif: Carte mère ESP32S3 pour PAMIs avec moteurs, capteurs et communication

### Module LoRa (UART2)

| Signal LoRa | Net | GPIO ESP32-S3 |
| --- | --- | --- |
| TX | TX LoRa | GPIO16 |
| RX | RX LoRa | GPIO17 |
| Busy | UART Busy LoRa | GPIO18 |
| M0 | M0 | GPIO15 |
| M1 | M1 | GPIO14 |
| Signal LoRa | Net | GPIO ESP32-S3 |
| ----------- | -------------- | ------------- |
| TX | TX LoRa | GPIO16 |
| RX | RX LoRa | GPIO17 |
| Busy | UART Busy LoRa | GPIO18 |
| M0 | M0 | GPIO15 |
| M1 | M1 | GPIO14 |

### IMU (ICM-45686 — SPI)

| Signal IMU | Net | GPIO ESP32-S3 |
| --- | --- | --- |
| MOSI | MOSI IMU | GPIO35 |
| MISO | MISO IMU | GPIO37 |
| SCK | CLK IMU | GPIO36 |
| CS | SS IMU | GPIO38 |
| Signal IMU | Net | GPIO ESP32-S3 |
| ---------- | -------- | ------------- |
| MOSI | MOSI IMU | GPIO35 |
| MISO | MISO IMU | GPIO37 |
| SCK | CLK IMU | GPIO36 |
| CS | SS IMU | GPIO38 |

### Drivers moteurs pas-à-pas

#### Moteur gauche

| Fonction | Net | GPIO ESP32-S3 |
| --- | --- | --- |
| DIR | DIR Left | GPIO03 |
| STEP | STEP Left | GPIO46 |
| ENABLE | EN Left | GPIO09 |
| Fonction | Net | GPIO ESP32-S3 |
| -------- | --------- | ------------- |
| DIR | DIR Left | GPIO03 |
| STEP | STEP Left | GPIO46 |
| ENABLE | EN Left | GPIO09 |

#### Moteur droit

| Fonction | Net | GPIO ESP32-S3 |
| --- | --- | --- |
| DIR | DIR Right | GPIO21 |
| STEP | STEP Right | GPIO47 |
| ENABLE | EN Right | GPIO48 |
| Fonction | Net | GPIO ESP32-S3 |
| -------- | ---------- | ------------- |
| DIR | DIR Right | GPIO21 |
| STEP | STEP Right | GPIO47 |
| ENABLE | EN Right | GPIO48 |

### LiDAR (UART)

| Signal LiDAR | Net | GPIO ESP32-S3 |
| --- | --- | --- |
| TX | TX LiDAR | RX0 |
| RX | RX LiDAR | TX0 |
| Signal LiDAR | Net | GPIO ESP32-S3 |
| ------------ | -------- | ------------- |
| TX | TX LiDAR | RX0 |
| RX | RX LiDAR | TX0 |

### Servomoteurs

| Servo | Net | GPIO ESP32-S3 |
| --- | --- | --- |
| Servo 1 | Data servo 1 | GPIO42 |
| Servo 2 | Data servo 2 | GPIO41 |
| Servo | Net | GPIO ESP32-S3 |
| ------- | ------------ | ------------- |
| Servo 1 | Data servo 1 | GPIO42 |
| Servo 2 | Data servo 2 | GPIO41 |
52 changes: 26 additions & 26 deletions docs/cdr/elek/power-delivery.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Carte dalimentation 5 V 5 A (PD) pour Raspberry Pi 5
# Carte d'alimentation 5 V 5 A (PD) pour Raspberry Pi 5

PCB KiCad fournissant un rail stable de 5 V, 5 A adapté au Raspberry Pi 5.

Expand All @@ -7,19 +7,19 @@ PCB KiCad fournissant un rail stable de 5 V, 5 A adapté au Raspberry Pi 5.
## Résumé

- Objectif: Alimentation fiable 5,1 V, 5 A avec faible ondulation et protections robustes.
- Interface de sortie: USBC vers Pi 5.
- Entrées: 924 V DC (JST GH 2,54 mm 2 broches).
- Interface de sortie: USB-C vers Pi 5.
- Entrées: 9-24 V DC (JST GH 2,54 mm 2 broches).
- Topologie: Convertisseur DC/DC buck (abaisseur) avec contrôle de courant.
- Buts clés: Gérer les transitoires du Pi 5, minimiser la chute de câble, sécurité thermique.

## Spécifications clés

- Tension de sortie: 5,1 V ±2 % au connecteur carte sous 05 A
- Tension de sortie: 5,1 V ±2 % au connecteur carte sous 0-5 A
- Courant max: 5 A continu, 6 A crête (≤100 ms)
- Ondulation: ≤30 mV crête‑à‑crête (BP 20 MHz) à 5 A
- Protections: OVP, OCP, UVLO, inversion, courtcircuit, thermique
- Ondulation: ≤30 mV crête-à-crête (BP 20 MHz) à 5 A
- Protections: OVP, OCP, UVLO, inversion, court-circuit, thermique
- Rendement: ≥93 % à 5 V / 5 A (si conversion DC/DC)
- Compensation de câble: viser 5,055,2 V au niveau du Pi en charge (documenter la méthode)
- Compensation de câble: viser 5,05-5,2 V au niveau du Pi en charge (documenter la méthode)

## Schéma système

Expand All @@ -28,9 +28,9 @@ doc needed
## Interfaces

- Entrée:
- JST GH 2,54 mm 2 broches (924 V DC)
- JST GH 2,54 mm 2 broches (9-24 V DC)
- Sortie:
- USBC vers Pi 5 (5 V uniquement, assurer la capacité 5 A)
- USB-C vers Pi 5 (5 V uniquement, assurer la capacité 5 A)
- Indicateurs: LED PGOOD, LED défaut
- Points de test: JST GH 2.54mm SDA/SCL

Expand All @@ -50,7 +50,7 @@ lol

- Classes de nets:
- 5V_HIGH_I: largeur min X mm, via Y/Z mm, écartement ≥0,4 mm
- SW_NODE: court, keepout sous linductance
- SW_NODE: court, keepout sous l'inductance
- SIGNAL: largeur/écartement standard
- Règles de conception:
- Diamètres de perçage pour connecteurs et fusibles choisis
Expand All @@ -61,18 +61,18 @@ lol

- Contrôleur PD: [réf], méthode de config (EEPROM/MCU)
- Contrôleur/module buck: [réf], inductance [valeur, Isat], FETs [Rds(on)]
- Shunt: [valeur 12 mΩ, 4 bornes si possible], puissance ≥3 W
- Condensateurs de sortie: polymère lowESR en vrac + mélange céramiques (documenter quantités/valeurs)
- Diodes TVS: cotes dentrée et de sortie
- Connecteurs: réceptacle USBC (5 A), entêtes, jack/XT60
- Shunt: [valeur 1-2 mΩ, 4 bornes si possible], puissance ≥3 W
- Condensateurs de sortie: polymère low-ESR en vrac + mélange céramiques (documenter quantités/valeurs)
- Diodes TVS: cotes d'entrée et de sortie
- Connecteurs: réceptacle USB-C (5 A), en-têtes, jack/XT60
- Pads thermiques/isolants si utilisés

## Notes dassemblage
## Notes d'assemblage

- Type de pâte à souder, épaisseur de pochoir (p. ex., 120130 μm)
- Type de pâte à souder, épaisseur de pochoir (p. ex., 120-130 μm)
- Conseils de soudure manuelle pour composants à forte masse
- Nettoyage et vernis de tropicalisation (le cas échéant)
- Étiquetage: polarité, révision, plage dentrée, puissance de sortie
- Étiquetage: polarité, révision, plage d'entrée, puissance de sortie

## Plan de test

Expand All @@ -82,20 +82,20 @@ lol
- Échelon de charge: 0→5 A, mesurer chute/surtension et stabilisation
- Protections:
- Seuil OCP et comportement reprise auto/verrouillé
- Temps de réaction au courtcircuit
- Temps de réaction au court-circuit
- Seuils UVLO/OVP
- Thermique:
- 5 A en régime établi à 25 °C et 40 °C ambiant; enregistrer les points chauds
- USBC PD:
- Pour récepteur PD: vérifier contrat 5 V/5 A, détection câble emarqué
- Régulation ligne/charge et balayage defficacité
- Conformité: prévérification EMI si applicable
- USB-C PD:
- Pour récepteur PD: vérifier contrat 5 V/5 A, détection câble e-marqué
- Régulation ligne/charge et balayage d'efficacité
- Conformité: pré-vérification EMI si applicable

## Intégration avec Raspberry Pi 5

- Câble: USBC 5 A avec emarker; noter la référence
- Câble: USB-C 5 A avec e-marker; noter la référence
- Tension au Pi sous 5 A ≥ 4,9 V (mesurée aux pastilles de test du Pi)
- Journal baisses/soustension: confirmer absence de bridage sous charges en rafales
- Journal baisses/sous-tension: confirmer absence de bridage sous charges en rafales

## Fichiers de projet (KiCad)

Expand All @@ -116,6 +116,6 @@ lol
## Points ouverts / TODO

- Sélectionner le contrôleur PD final et valider la config
- Ajuster la compensation et lamortissement LC
- Ajuster la compensation et l'amortissement LC
- Finaliser largeurs de plans et nombre de vias
- Compléter les rapports de test et joindre les courbes
- Compléter les rapports de test et joindre les courbes
33 changes: 21 additions & 12 deletions docs/cdr/info/setup_info.mdx → docs/cdr/info/setup_info.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,9 @@ last_update:
author: Eliott A. Roussille
tags: [CDR, info]
---
import TabItem from '@theme/TabItem';
import Tabs from '@theme/Tabs';

import TabItem from "@theme/TabItem";
import Tabs from "@theme/Tabs";

Ce guide vous accompagne pour installer et configurer tous les outils nécessaires au développement sur le projet de la Coupe de France de Robotique. Il est conçu pour vous aider à démarrer rapidement, à comprendre le rôle de chaque outil et à adopter les bonnes pratiques pour collaborer efficacement.

Expand All @@ -29,14 +30,15 @@ git --version
```

Si ce n'est pas le cas, installez-le selon votre OS :

<Tabs groupId="operating-systems">
<TabItem value="win" label="Windows">
```bash
winget install -e --id Git.Git
```
</TabItem>
<TabItem value="linux" label="Linux">
```bash
``` bash
sudo apt-get install git
```
</TabItem>
Expand Down Expand Up @@ -68,10 +70,12 @@ uv est un gestionnaire d'environnements virtuels et de packages Python. Il simpl
### Installation

Suivez les instructions adaptées à votre système pour installer uv :

<Tabs groupId="operating-systems">
<TabItem value="win" label="Windows">
```powershell
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
powershell -ExecutionPolicy ByPass -c "irm
https://astral.sh/uv/install.ps1 | iex"
```
</TabItem>
<TabItem value="linux" label="Linux">
Expand All @@ -98,6 +102,7 @@ uv venv
### Activer le venv

Activez l'environnement virtuel pour installer et utiliser les paquets :

<Tabs groupId="operating-systems">
<TabItem value="win" label="Windows">
```bash
Expand All @@ -115,8 +120,8 @@ Activez l'environnement virtuel pour installer et utiliser les paquets :
```
</TabItem>
</Tabs>
Dans VSCode, sélectionnez l'interpréteur Python correspondant :
`Ctrl + Shift + P` → `Python: Select Interpreter` → CoupeDeRobotique
Dans VSCode, sélectionnez l'interpréteur Python correspondant : `Ctrl + Shift + P`
→ `Python: Select Interpreter` → CoupeDeRobotique

### Télécharger les dépendances

Expand Down Expand Up @@ -161,7 +166,8 @@ Chocolatey est un gestionnaire de paquets pour Windows, utile pour installer rap
<TabItem value="win" label="Windows">
Nécessaire uniquement sur Windows :
```powershell
powershell -c "irm https://community.chocolatey.org/install.ps1|iex"
powershell -c "irm
https://community.chocolatey.org/install.ps1|iex"
```
[Documentation Chocolatey](https://docs.chocolatey.org/en-us/)
</TabItem>
Expand Down Expand Up @@ -256,10 +262,10 @@ Pour garantir la qualité et la cohérence du code Python, plusieurs outils de f

<Tabs groupId="tools">
<TabItem value="ruff" label="Ruff">
[Ruff](https://docs.astral.sh/ruff/) : Linter et formatteur ultra-rapide pour Python. Il combine les fonctionnalités de plusieurs outils en un seul.
[Ruff](https://docs.astral.sh/ruff/) : Linter et formatteur ultra-rapide pour Python.
Il combine les fonctionnalités de plusieurs outils en un seul.
```bash
ruff check . --fix
ruff format
ruff check . --fix ruff format
```
Ruff est intégré dans le workflow du projet pour accélérer le lint et le formatage.
</TabItem>
Expand All @@ -271,14 +277,17 @@ Pour garantir la qualité et la cohérence du code Python, plusieurs outils de f
Utilisez-le pour garder vos imports organisés et conformes aux standards.
</TabItem>
<TabItem value="pylint" label="Pylint">
[Pylint](https://pylint.pycqa.org/en/latest/) : Analyse statique et vérification du style Python.
[Pylint](https://pylint.pycqa.org/en/latest/) : Analyse statique et
vérification du style Python.
```bash
pylint .
```
Pylint fournit des rapports détaillés sur la qualité et la conformité du code.
</TabItem>
<TabItem value="pylance" label="Pylance / Pyright">
[Pylance](https://marketplace.visualstudio.com/items?itemName=ms-python.vscode-pylance) / [Pyright](https://github.com/microsoft/pyright) : Extension VSCode qui utilise Pyright pour l'analyse de type et l'autocomplétion Python.
[Pylance](https://marketplace.visualstudio.com/items?itemName=ms-python.vscode-pylance)
/ [Pyright](https://github.com/microsoft/pyright) : Extension VSCode qui
utilise Pyright pour l'analyse de type et l'autocomplétion Python.
```bash
# Pylance est intégré dans VSCode
pyright --level warning
Expand Down
2 changes: 1 addition & 1 deletion docs/mini-projects/Cluster/Cluster.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ Voici une liste des services auto-hébergés sur le cluster k3s de DaVinciBot :
- [**Docuseal**](https://sign.davincibot.fr) : Solution de signature électronique.
- [**Matrix Tuwunel**](https://chat.davincibot.fr) : Serveur Matrix encrypté.
- [**New Relics**](https://newrelic.com) : Monitoring et logs.
- [**Garage**](https://s3.davincibot.fr) : Stockage S3 compatible. (WIP)
- [**RustFS**](https://s3.davincibot.fr) : Stockage S3 compatible.
- [**ListMonk**](https://mail.davincibot.fr) : Outil d'emailing auto-hébergé.
- [**Overleaf**](https://tex.davincibot.fr) : Éditeur de documents LaTeX collaboratif. (sur un node séparé)
- [**Dockploy**](https://dockploy.davincibot.fr) : Gestionnaire de déploiement d'applications.
Expand Down
Loading