# IMP3D Corrector Correction de plan XYZ pour imprimantes 3D avec problèmes de calibration. ## Problèmes résolus - **Skew X-Y**: Axes X et Y non perpendiculaires - **Erreurs d'échelle**: Dimensions incorrectes sur les bords - **Décalage d'origine**: Position zéro mal alignée - **Rotation du plateau**: Léger angle du plateau - **Asymétries**: Différences de dimensions selon la position ## Installation ```bash python -m venv .venv .venv/bin/pip install -e . ``` ## Utilisation ### Calibration simple (1 carré) Pour une calibration rapide: ```bash # Générer le G-code de calibration imp3d-corrector calibrate -w 220 -d 220 -o calibration.gcode # Imprimer, mesurer, puis créer le profil imp3d-corrector create ma_printer ``` ### Calibration avancée (5 carrés) - RECOMMANDÉE Pour une calibration précise avec détection des problèmes: ```bash # 1. Générer le G-code avec 5 carrés (coins + centre) imp3d-corrector calibrate-advanced -w 220 -d 220 -o calibration_advanced.gcode # 2. Imprimer le fichier # 3. Mesurer chaque carré et créer le profil imp3d-corrector create-advanced ma_printer ``` Le système analysera: - **Échelle moyenne** (compensation globale) - **Skew** (angle entre X et Y) - **Asymétrie** (différence gauche/droite, haut/bas) - **Variance** (uniformité des dimensions sur le plateau) ### Analyser sans créer de profil ```bash imp3d-corrector analyze ``` ### Appliquer les corrections ```bash imp3d-corrector correct mon_fichier.gcode -p ma_printer -o fichier_corrigé.gcode ``` ### Gestion des profils ```bash # Lister les profils imp3d-corrector list # Afficher un profil imp3d-corrector show ma_printer # Modifier un profil imp3d-corrector edit ma_printer # Supprimer un profil imp3d-corrector delete ma_printer ``` ## Structure du projet ``` imp3d_corrector/ ├── cli.py # Interface en ligne de commande ├── config/ │ └── profile_manager.py # Gestion des profils └── core/ ├── corrector.py # Logique de correction XYZ ├── gcode_parser.py # Parser G-code └── advanced_calibration.py # Calibration multi-points ``` ## Workflow recommandé 1. **Première calibration**: Utilisez `calibrate-advanced` pour avoir une vue complète 2. **Analysez** les résultats - si des problèmes d'asymétrie sont détectés, vérifiez votre matériel 3. **Créez le profil** avec les corrections calculées 4. **Testez** avec un carré simple pour valider ## Exemple de configuration YAML Les profils sont stockés dans `~/.config/imp3d_corrector/profiles/`: ```yaml name: ma_printer skew_xy: 0.5 offset_x: 0.0 offset_y: 0.0 scale_x: 1.002 scale_y: 0.998 rotation: 0.0 bed_width: 220.0 bed_depth: 220.0 ``` ## Interprétation des résultats | Problème détecté | Cause probable | Solution | |-----------------|----------------|----------| | Skew élevé | Axes non perpendiculaires | Ajustement mécanique ou compensation logicielle | | Asymétrie X | Courroie X détendue d'un côté | Vérifier la tension de courroie | | Asymétrie Y | Courroie Y détendue d'un côté | Vérifier la tension de courroie | | Variance élevée | Problème de linéarité | Vérifier les rails/roulements |