readme mieux

This commit is contained in:
mpboyer 2025-02-05 21:19:30 +01:00
parent 426c403be6
commit 85a848ddbf

View file

@ -1,7 +1,21 @@
# Contrôleur de Petite Machine à Bois (PMB™)
## Utilisation
Pour lancer le script, d'abord lancer le simulateur dans un terminal, puis, dans un second terminal lancer le programme `main`.
Dans `main` on met les instructions gcode, qui peuvent être converties depuis un fichier svg par le programme `svgtroppagcode.py`. Ce dernier utilisant la bibliothèque `toppra`, il faut une version compatible `numpy<=1.21.6`, version de numpy qui n'est installable que pour des versions de python pré 3.6, ce qui rend le code contrôlleur très complexe à utiliser...
N'hésitez pas à revenir vers nous si besoin.
## Fonctionnement
Le programme fonctionne de la manière suivante:
- On crée une socket par laquelle vont transiter les informations.
- On dispose d'un contrôleur "local" et d'un simulateur "distant" qui dispose d'un modèle physique plus réaliste que notre contrôleur.
- En se basant sur le GCode en entrée, le contrôleur calcule les vitesses de commande à envoyer aux deux moteurs de la PMB™ et les envoie à la socket.
- Le simulateur intègre alors les vitesses des moteurs pour obtenir une position "réelle" (en réalité ce sera directement des capteurs sur la PMB™) et les envoie à la socket.
- Le contrôleur va alors modifier les vitesses de commande pour s'adapter aux positions "mesurées".
### Contrôle de l'Entrée
Pour l'entrée, on propose deux méthodes:
- Une qui traduit fidèlement un fichier .svg sans prendre en compte aucune contrainte.
- Une qui échantillonne des points sur des fichiers .svg et reparamétrise les courbes en tenant en compte de contraintes de vitesses maximales et d'accélération maximale. Cette seconde méthode à le grand défaut de linéariser les courbes, avec une précision fortement arbitraire.