Skip to main content

*Youtube: ADXL345 einrichten

Videolink: https://youtu.be/l9kqh9gtjFo

Stand: 10.06.2023

In diesem Tutorial wird die Einrichtung des ADXL345 beschrieben. Die Einrichtung ist abhängig vom gewählten ADXL.

1a. ADXL345 (über GPIO)

Für die Steuerung wird der Raspberry Pi selbst als MCU genutzt. Folgende Schritte müssen zur Nutzung durchgeführt werden:

Quellen:
https://www.klipper3d.org/Measuring_Resonances.html
https://www.klipper3d.org/RPi_microcontroller.html

Anschlussplan

Quelle: https://www.klipper3d.org/Measuring_Resonances.html

Über Putty auf den Raspberry Pi zugreifen

SPI aktivieren:

sudo raspi-config
3 Interface Options
I4  SPI
enabled <yes>
Screenshots

image.png

image.png

image.png

Installation des Skriptes:

cd ~/klipper/
sudo cp ./scripts/klipper-mcu.service /etc/systemd/system/
sudo systemctl enable klipper-mcu.service

 Erstellung der Flash Datei:

cd ~/klipper/
make menuconfig

image.png

Hier müsst ihr Linux process auswählen, dies dann bestätigen und speichern.

sudo service klipper stop
make flash
sudo service klipper start

Wenn in klippy.log ein "Zugriff verweigert"-Fehler gemeldet wird, wenn Sie versuchen, eine Verbindung zu /tmp/klipper_host_mcu herzustellen, müssen Sie Ihren Benutzer zur tty-Gruppe hinzufügen. Der folgende Befehl fügt den Benutzer "pi" zur tty-Gruppe hinzu:

sudo usermod -a -G tty pi

Folgende Zeilen müssen in die printer.cfg kopiert werden:

############################################
##########Input Shaper Config###############
############################################

[adxl345]
cs_pin: rpi:None
axes_map: x,-z,y #die Ausrichtung ist abhängig vom ADXL mount.

[resonance_tester]
accel_chip: adxl345
probe_points:
    122.5,125,20   #beziehungsweise die Koordinaten für die Mitte des Druckbetts

[mcu rpi]
serial: /tmp/klipper_host_mcu

Danach ist der Raspberry Pi neu zu starten:

sudo reboot

Die neue MCU sollte nun unter Maschine angezeigt werden:

image.png

Folgender Befehl ist nun in die Kommandozeile der Mainsail-Oberfläche einzugeben:

ACCELEROMETER_QUERY

Wird folgender Code ausgegeben, so ist die Verkabelung nochmals zu prüfen. 

Invalid adxl345 id (got 0 vs e5)

Sollte diese Meldung erscheinen, so ist die Einrichtung abgeschlossen:

Recv: // adxl345 values (x, y, z): 470.719200, 941.438400, 9728.196800

Danach geht es mit Schritt 2 weiter

1b. ADXL345 (über USB)

Diese Konfiguration bezieht sich auf folgenden USB ADXL:
https://de.aliexpress.com/item/1005005182131890.html

Über Putty auf den Raspberry PI zugreifen.

Danach ist die Flash Datei zu erstellen:

cd klipper
make clean
make menuconfig

Folgende Einstellungen sind zu wählen:

image.png

Danach ist die Datei zu erstellen

make

Der USB ADXL ist nun an den PC anzuschließen. Dabei ist die Taste am ADXL gedrückt zu halten.

Danach über WINSCP auf den Raspberry Pi zugreifen und die Datei klipper.uf2 auf den USB ADXL kopieren. Der USB ADXL sollte sich dann neustarten.

Nun ist der USB ADXL an den Raspberry Pi anzuschließen.

Danach mit folgendem Befehl die ID des USB ADXL auslesen:

ls /dev/serial/by-id/*

image.png

Der USB ADXL wird durch einen rp2040 gesteuert. Hier ist es die zweite ID.

Folgende Zeilen müssen in die printer.cfg kopiert werden:

[mcu adxl]
serial: /dev/serial/by-id/[YOUR ID] #paste your specific ID here

[adxl345]
cs_pin: adxl:gpio1

# Hardware SPI Option (Better results, "Invalid ID" Klipper bug with first query)
# spi_bus: spi0a

# Software SPI Option (No "Invalid ID" Klipper bug with first query)
spi_software_sclk_pin: adxl:gpio2
spi_software_mosi_pin: adxl:gpio3
spi_software_miso_pin: adxl:gpio0

[resonance_tester]
accel_chip: adxl345
probe_points:
   120,120,20 #or 

Der USB ADXL sollte nun unter Maschine aufgeführt sein.

image.png

Folgender Befehl ist nun in die Kommandozeile der Mainsail-Oberfläche einzugeben:

ACCELEROMETER_QUERY

Wird folgender Code ausgegeben, so ist die Verkabelung nochmals zu prüfen. 

Invalid adxl345 id (got 0 vs e5)

Sollte diese Meldung erscheinen, so ist die Einrichtung abgeschlossen:

Recv: // adxl345 values (x, y, z): 470.719200, 941.438400, 9728.196800

Danach geht es mit Schritt 2 weiter.

2. Software einrichten

Es ist zu beachten, dass Schwingungsmessungen und die Auto-Kalibrierung zusätzliche Software-Abhängigkeiten erfordern, die nicht standardmäßig installiert sind. Zunächst sind die Files zu aktualisieren:

sudo apt update 
sudo apt install python3-numpy python3-matplotlib libatlas-base-dev

 Als nächstes, um NumPy im Klipper-Umfeld zu installieren, ist dieser Befehl auszuführen:

~/klippy-env/bin/pip install -v numpy

Es ist zu beachten, dass je nach Leistung der CPU die Installation viel Zeit in Anspruch nehmen kann, bis zu 10-20 Minuten.

Danach ist der Raspberry Pi neu zu starten:

sudo reboot

Nach der Installation kann dieser mit folgendem Makros genutzt werden, um die Ressonanzmessung vorzunehmen:

https://book.cryd.de/books/klipper/page/youtube-kalibrierungsmakro