Input shaping: различия между версиями

Материал из Срухопедии
(Подключение акселерометра)
 
мНет описания правки
Строка 2: Строка 2:


Подключение акселерометра на ADXL345 по шине SPI к OrangePi3 с установленной Klipper
Подключение акселерометра на ADXL345 по шине SPI к OrangePi3 с установленной Klipper
1. Мною использовался модуль  
Мною использовался модуль GY-291
[[Файл:Adxl345.png|мини|альт=GY-291|GY-291 adxl345]]
[[Файл:Adxl345.png|мини|альт=GY-291|GY-291 adxl345]]


Строка 16: Строка 16:
GND - GND (25 pin)
GND - GND (25 pin)
CS - CS (24 pin)
CS - CS (24 pin)
Далее надо разрешить использование шины SPI. Для этого - подключиться по сетевому адресу OrangePi через SSH к консоли. Открыть на редактирование файл - sudo vim /boot/orangepiEnv.txt найти секцию overlays, если ее нет - добавить строку overlays=spi-spidev1 если есть - дописать через пробел spi-spidev1
ниже указать параметры
param_spidev_spi_bus=1
param_spidev_spi_cs=0
param_spidev_max_freq=100000000
Установить пакеты
sudo apt updatesudo
apt install python3-numpy python3-matplotlib libatlas-base-dev
Кроме того, потребуется установить wiringOP
sudo apt update
sudo apt install -y git
git clone https://github.com/orangepi-xunlong/wiringOP
cd wiringOP
sudo ./build clean
sudo ./build
перезагрузить OrangePi
Далее надо настроить использование OrangePi как дополнительного MCU
cd ~/klipper/
sudo cp ./scripts/klipper-mcu.service /etc/systemd/system/
sudo systemctl enable klipper-mcu.service
cd ~/klipper/
make menuconfig
В меню выбрать "Microcontroller Architecture" to "Linux process," сохранить и выйти
sudo service klipper stop
make flash
sudo service klipper start
Внести изменения в 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
Полезные ссылки:
http://www.orangepi.org/html/hardWare/computerAndMicrocontrollers/details/orange-pi-3-LTS.html
https://www.klipper3d.org/Measuring_Resonances.html
https://klipper.wiki/ru/home/tuning/shaper

Версия от 01:29, 22 ноября 2024

Прошивка Klipper позволяет настроить компенсацию резонансов (Input shapping) при печати. Эта настройка позволяет уменьшить ореолы, рябь, волны на распечатанных моделях. Первое что нужно сделать - измерить резонансные частоты, возникающие при печати. Делается это с помощью специального устройства - акселерометра. Klipper поддерживает 3 типа микросхем акселерометров - ADXL345, MPU-9250(MPU6050/MPU6500), LIS2DW

Подключение акселерометра на ADXL345 по шине SPI к OrangePi3 с установленной Klipper Мною использовался модуль GY-291

GY-291
GY-291 adxl345

OrangePi имеет 26 пиновый разъем расширения, на котором присутствует шина SPI

26pin

модуль подключается по схеме Пин ADXL - Пин Orange Pi VCC(3v) - Out 3.3 V (17 pin) SDA - MOSI (19 pin) SDO - MISO (21 pin) SCL - CLK (23 pin) GND - GND (25 pin) CS - CS (24 pin)

Далее надо разрешить использование шины SPI. Для этого - подключиться по сетевому адресу OrangePi через SSH к консоли. Открыть на редактирование файл - sudo vim /boot/orangepiEnv.txt найти секцию overlays, если ее нет - добавить строку overlays=spi-spidev1 если есть - дописать через пробел spi-spidev1 ниже указать параметры param_spidev_spi_bus=1 param_spidev_spi_cs=0 param_spidev_max_freq=100000000

Установить пакеты sudo apt updatesudo apt install python3-numpy python3-matplotlib libatlas-base-dev

Кроме того, потребуется установить wiringOP sudo apt update sudo apt install -y git git clone https://github.com/orangepi-xunlong/wiringOP cd wiringOP sudo ./build clean sudo ./build перезагрузить OrangePi

Далее надо настроить использование OrangePi как дополнительного MCU cd ~/klipper/ sudo cp ./scripts/klipper-mcu.service /etc/systemd/system/ sudo systemctl enable klipper-mcu.service

cd ~/klipper/ make menuconfig В меню выбрать "Microcontroller Architecture" to "Linux process," сохранить и выйти sudo service klipper stop make flash sudo service klipper start

Внести изменения в 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



Полезные ссылки: http://www.orangepi.org/html/hardWare/computerAndMicrocontrollers/details/orange-pi-3-LTS.html https://www.klipper3d.org/Measuring_Resonances.html https://klipper.wiki/ru/home/tuning/shaper