Главная ПолезноеKlipper Подключение ADXL345 акселерометр и Orange Pi 3 LTS

Подключение ADXL345 акселерометр и Orange Pi 3 LTS

OxyGena

Итак, убито 12 часов, что бы наконец-то акселерометр ADXL345 для точной калибровки Input Shaper заработал. В наличии заведомо рабочая платка на базе ADXL345 и Orange PI 3 LTS с установленной ОС Armbian.

Начало все как по мануалу: https://www.klipper3d.org/Measuring_Resonances.html

Подключаем проводками Dupont ADXL345 к Orange PI.

Распиновка:

Подключаем:
1 2
3 4
5 6
7 8
9 10
11 12
13 14
15 16
17 18
19 20
21 22
23 24
25 26

Где 1(первый пин) = Out 3.3 V ( на изображении )Последний 26(последний) = PL 8 ( на изображении )

Пин ADXL – Пин Orange Pi

VCC(3v) – Out 3.3 V (1 pin)
GND – GND (6 pin)
SDA – MOSI (19 pin)
SDO – MISO (21 pin)
SCL – CLK (23 pin)
CS – CS (24 pin)

Идем далее по мануалу:

– Устанавливаем:

sudo apt update
sudo apt install python3-numpy python3-matplotlib libatlas-base-dev
~/klippy-env/bin/pip install -v numpy
  • Активируем spi:

По мануалу: https://www.klipper3d.org/RPi_microcontroller.html

cd ~/klipper/

sudo cp "./scripts/klipper-mcu-start.sh" /etc/init.d/klipper_mcu

sudo update-rc.d klipper_mcu defaults

cd ~/klipper/

make menuconfig

Выбираем Micro-controller Architecture –> Linux Process:

Далее:

sudo service klipper stop
make flash
sudo service klipper start

Включаем SPI-dev1 (для ARMBIAN):

  1. sudo armbian-config
  2. Ваш пароль
  3. System
  4. Hardware
  5. spi-spidev1 пробелом устанавливаем звездочку

Включаем SPI-dev1 (для ARMBIAN):

sudo nano /boot/armbianEnv.txt
overlays=spi-spidev1
param_spidev_spi_bus=1
param_spidev_spi_cs=0

Включаем SPI-dev1 (для DEBIAN):

sudo nano /boot/orangepiEnv.txt
overlays=spi-spidev1
param_spidev_spi_bus=1
param_spidev_spi_cs=0
  1. Жмем Save
  2. Перезагружаем Orange Pi
sudo reboot
  1. И последнее открываем через браузер наш Klipper, идем “Конфигурация” -> printer.cfg

В начале добавляем строчки:

[mcu opi]
serial: /tmp/klipper_host_mcu

[adxl345]
cs_pin: opi:None
spi_bus: spidev1.0

[resonance_tester]
accel_chip: adxl345
probe_points:    100, 100, 20  # an example

Открываем главный экран управлением Klipper и в консоль вводим команду:

ACCELEROMETER_QUERY

Вы должны увидеть:

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

Если увидели, значит вы на правильном пути и можете спокойно калибровать резонанс )))

Разместить ADXL необходимо в горизонтальной плоскости, как можно ближе к соплу. Моделей для креплений под разные принтеры в интернете огромное множество.

Обычно калибровка производится от 1 до 133 Гц и занимает какое-то время.

Запускаем калибровку по X:

TEST_RESONANCES AXIS=X

Дожидаемся окончания калибровки по X. НЕ ВЫКЛЮЧАЯ ПРИНТЕР! (Все данные хранятся в папке /tmp, а после перезапуска Orange Pi данные очищаются)
Запускаем калибровку по Y

TEST_RESONANCES AXIS=Y

Дожидаемся окончания калибровки по Y. Запускаем построение графиков (klipper замените на своего пользователя) КОПИРУЕМ ВЕСЬ код и запускаем в консоле PuTTY или Terminal:

~/klipper/scripts/calibrate_shaper.py /tmp/resonances_x_*.csv -o ~/klipper/shaper_calibrate_x.png

Дожидаемся окончания выполнения, запускаем вторую команду(КОПИРОВАТЬ целиком):

~/klipper/scripts/calibrate_shaper.py /tmp/resonances_y_*.csv -o ~/klipper/shaper_calibrate_y.png

Дожидаемся окончания выполнения, открываем FileZilla, WinSCP и подключаемся к нашему одноплатнику. В корне будет лежать два файла shaper_calibrate_x.png и shaper_calibrate_y.png

Вы также получите рекомендуемые частоты для каждого входного формирователя, а также какой входной формирователь рекомендуется для вашей установки. Например:

Предлагаемую конфигурацию можно добавить в [input_shaper]раздел printer.cfg, например:

[input_shaper]
shaper_freq_x: ...
shaper_type_x: ...
shaper_freq_y: 34.6
shaper_type_y: mzv

[printer]
max_accel: 3000  # не должен превышать значение max_accel для осей X и Y

На этом калибровка завершено, печатает тестовую угловую башню, наслаждаетесь результатом.

Вам также может понравится