Utilisation de l'accéléromètre
Câblage de la carte mère
L'écran TFT et l'interface SPI de l'accéléromètre ne peuvent pas être utilisés simultanément !
- Conflit physique : L'écran TFT (via l'interface FPC-TFT), l'interface SPI de l'accéléromètre (ZH1.5-7P) et l'interface d'extension RRF partagent le même groupe de ressources SPI au niveau matériel.
- Conséquences : Si les deux sont connectés en même temps, cela entraînera un affichage anormal de l'écran et des données de mesure de l'accéléromètre gravement inexactes.
- Solution : Assurez-vous de ne connecter qu'un seul des deux lors de l'utilisation.
Configuration
[mcu host]
serial: /tmp/klipper_host_mcu
[adxl345]
cs_pin: host:gpiochip0/gpio263
spi_bus: spidev1.2
[resonance_tester]
accel_chip: adxl345
#accel_chip_y: adxl345 bed
probe_points:
100, 100, 20 # un exemple
Utilisation
Test et calibration de l'accéléromètre
Installation des dépendances
- Si l'appareil exécute déjà FlyOS-FAST, les dépendances nécessaires sont préinstallées, vous pouvez ignorer cette étape.
- Si vous utilisez un ordinateur de bureau non FLY, veuillez impérativement effectuer les opérations ci-dessous.
- Il est recommandé d'utiliser des outils SSH comme MobaXterm ou PuTTY pour vous connecter avant toute opération.
- Ce tutoriel est basé sur Raspberry Pi, d'autres plateformes sont fournies à titre indicatif uniquement.
Procédure d'installation
- Exécutez les commandes suivantes dans l'ordre pour installer les dépendances.
- Le temps d'installation dépend des performances du CPU et de l'état du réseau, généralement 10 à 20 minutes. Veuillez patienter jusqu'à la fin de l'installation.
- Si la mémoire (RAM) de l'appareil est trop faible, l'installation peut échouer.
Étape 1 : Installer les dépendances système
sudo apt install python3-numpy python3-matplotlib libatlas-base-dev
Étape 2 : Installer les dépendances de l'environnement virtuel Klipper
~/klippy-env/bin/pip install matplotlib numpy
Test de l'accéléromètre
Conditions préalables
- L'imprimante a effectué une opération de référence (Homing).
- Assurez-vous que l'accéléromètre est correctement activé dans le fichier de configuration Klipper.
Commande de test
Saisissez la commande suivante dans la console Klipper :
ACCELEROMETER_QUERY
Si plusieurs accéléromètres sont connectés, vous pouvez spécifier le composant à tester :
ACCELEROMETER_QUERY CHIP=<Nom du composant ADXL>
Remplacez <Nom du composant ADXL> par l'identifiant réel de l'accéléromètre (par exemple adxl345).
Dans certaines versions anciennes de Klipper, il est nécessaire d'exécuter ACCELEROMETER_QUERY deux fois avant d'obtenir les données de l'accéléromètre.
Gestion des problèmes courants
Avant de vérifier, rebrancher ou remplacer le câblage de l'accéléromètre, veuillez éteindre complètement l'imprimante et débrancher l'alimentation. Ne débranchez pas ou ne branchez pas le module ADXL/LIS2DW/MPU/ICM sous tension et ne touchez pas les broches exposées.
- Échec de la première exécution : Certaines versions de Klipper peuvent avoir un délai de reconnaissance des commandes. Si la première exécution ne renvoie pas de données, réexécutez la même commande une fois de plus.
- Commande non reconnue : Si la commande reste non reconnue après plusieurs exécutions, cela peut être dû à une version trop ancienne de Klipper. Solution recommandée :
- Mettez à jour Klipper vers la dernière version
- Ou réinstallez la version la plus récente du système (par exemple, la version la plus récente de FlyOS-FAST)
- Invalid adxl345 id : Si le message
Invalid adxl345 id (got xx vs e5)apparaît, exécutez immédiatement une fois de plusACCELEROMETER_QUERY; si l'erreur persiste, remplacez en priorité le câble de l'accéléromètre, la carte d'adaptation ou le module de capteur pour un test croisé. Il n'est pas recommandé de souder ou réparer les points de soudure soi-même. - Invalid lis2dw / mpu / icm id : Si vous utilisez des capteurs LIS2DW, MPU9250, ICM20948, etc., vérifiez que le nom de la section de configuration, le bus de communication et le modèle de composant correspondent au matériel réel.
- Unable to obtain response / timeout : Cela indique généralement une anomalie de communication entre l'ordinateur de bureau et le microcontrôleur de l'accéléromètre. Vérifiez la connexion USB/CAN, l'ID
[mcu],cs_pin,spi_busoui2c_bus.
Interprétation des résultats
- Sortie normale : Si un flux de données continu est renvoyé (comme illustré ci-dessous), l'accéléromètre fonctionne correctement et vous pouvez procéder aux mesures de compensation de résonance.
- Sortie erronée : En cas de timeout, d'absence de données ou d'erreur de communication, vérifiez dans l'ordre :
- Après avoir mis hors tension, confirmez que le câblage de l'accéléromètre est bien fixe.
- Dans le fichier de configuration, vérifiez que la configuration du capteur et le SPI sont corrects.
- En priorité, remplacez le câble, la carte d'adaptation ou le module de capteur fini pour diagnostiquer les problèmes d'alimentation/de communication.
Erreurs courantes lors des tests de résonance
| Message d'erreur | Cause fréquente | Procédure à suivre |
|---|---|---|
No data received from accelerometer | Accéléromètre non connecté, erreur de séquence SPI/I2C, anomalie d'alimentation | Exécutez d'abord ACCELEROMETER_QUERY pour confirmer la communication normale, puis retestez. |
Insufficient axis data for shaper calibration | Plage de mouvement trop petite, accélération trop faible, bruit de lecture du capteur excessif | Augmentez la plage de test ou accel_per_hz, vérifiez que l'accéléromètre est bien fixé. |
Frequency range too narrow | Courroie trop lâche, fréquence de résonance mécanique de la machine hors de la plage de mesure | Vérifiez la tension de la courroie et le serrage de la structure mécanique ; si nécessaire, réduisez max_freq ou augmentez accel_per_hz. |
| Le graphique de résonance n'est que du bruit, aucun pic évident | Capteur mal fixé, vibrations du ventilateur, câbles qui bougent | Après mise hors tension, refixez le capteur, fermez les ventilateurs pendant le test, séparez les câbles de signal des câbles moteur. |
SHAPER_CALIBRATE ne produit aucune sortie ou se termine avec une erreur | Dépendance Python manquante (numpy/matplotlib), mémoire insuffisante | Installez les dépendances manquantes comme indiqué au début de cet article ; le calcul des graphiques de résonance de grande taille peut nécessiter plus de mémoire. |
Cannot test Z axis together with other axes | TEST_RESONANCES spécifie à la fois l'axe Z et les axes X/Y | L'axe Z doit être testé séparément, ne le mélangez pas avec les axes X/Y. |
Invalid POINT parameter | Format de coordonnées POINT= incorrect, ou absence des trois valeurs x,y,z | Remplissez selon le format POINT=100,100,20. |
Invalid NAME parameter | Nom de sortie vide, contenant des caractères spéciaux ou ne correspondant pas aux exigences de la commande | Utilisez des lettres, chiffres, underscores ou tirets pour nommer. |
No accelerometer measurements found | Aucune donnée d'accélération valide collectée pendant le test | Exécutez d'abord ACCELEROMETER_QUERY, puis vérifiez la fixation et la communication du capteur. |
Unsupported output | Le paramètre OUTPUT= a saisi un type non pris en charge | Saisissez un type de sortie pris en charge par Klipper, généralement resonances. |
Si ACCELEROMETER_QUERY fonctionne normalement mais que le test de résonance échoue systématiquement, vérifiez d'abord dans l'ordre suivant :
- Après mise hors tension, assurez-vous que la surface de l'accéléromètre est en contact étroit avec la pièce testée, sans matériau amortisseur ni ruban adhésif double face desserré.
- Fermez temporairement les ventilateurs de refroidissement du modèle, le ventilateur de la tête chaude et les ventilateurs de l'enceinte pendant le test.
- Assurez-vous que les câbles ne tirent pas sur le capteur ou ne sont pas accrochés par les axes mobiles pendant le test.
- Augmentez l'amplitude du test : dans
[resonance_tester], augmentez progressivementaccel_per_hzde la valeur par défaut75à100–150. - Si vous utilisez un accéléromètre sur une carte d'outils (USB/CAN), assurez-vous que les câbles de communication ne sont pas à proximité des câbles moteur ou du câble du plateau chauffant.
Calibration de l'accéléromètre
Procédure de calibration
-
Assurez-vous que l'imprimante a effectué une opération de référence (Homing).
-
Saisissez la commande suivante dans la console pour démarrer la calibration automatique des axes X et Y :
SHAPER_CALIBRATE -
Une fois la calibration terminée, enregistrez la configuration :
SAVE_CONFIG
Calibration d'un seul axe
Si vous souhaitez calibrer un seul axe, utilisez :
SHAPER_CALIBRATE AXIS=X
ou remplacez X par Y.
L'imprimante peut vibrer fortement pendant la calibration. Si les vibrations sont excessives, appuyez immédiatement sur le bouton d'arrêt d'urgence ou envoyez la commande M112 pour un arrêt d'urgence.
Réglage de l'intensité des vibrations
Si les vibrations sont trop fortes pendant le test, vous pouvez réduire la valeur du paramètre accel_per_hz (par défaut 75) :
[resonance_tester]
accel_per_hz: 50
Problèmes de configuration et d'optimisation : Si l'accéléromètre est matériellement correct mais que la compensation de résonance n'est pas efficace après activation, si
shaper_freqest mal réglé, ou s'il y a un conflit entre Pressure Advance et Input Shaper, veuillez consulter Problèmes de configuration de la compensation de résonance et de l'anticipation de pression.
Remarque : Les étapes ci-dessus s'appliquent à la plupart des configurations de compensation de résonance pour imprimantes 3D basées sur Klipper. Veuillez les adapter en fonction de votre matériel et de votre environnement système.