主要材料:树莓派PICO

ADXL345 模块

USB线(MICRO USB)

彩色导线

用到的工具:电烙铁,强力胶

简介:

Raspberry Pi (RPi) Pico提供了一种方便且经济高效的方式来创建便携式共振测量设备,该设备可用于不同的Klipper打印机。

ADXL345/343 板

市场上有不同的ADXL345电路板,ADXL343板也是一种有效的替代方案。
根据电路板布局和使用的组件,连接电路板时应考虑一些事项。

常规

这些板主要可以通过可能具有稳压器或电平转换器来区分。

稳压器

  • 稳压器允许电路板连接到 3.3V 或 5V
  • ADXL芯片本身需要3.3V电压。稳压器确保只有3.3V实际到达芯片
  • 在下图中,稳压器标有绿色矩形

电平转换器

  • 数字电子产品,如MCU(又名打印机板)或RPis,需要在其引脚上具有一定的电压
  • 3D打印中的典型电压为3.3V(最常见)或5V
  • 电平转换器允许在 3.3V 和 5V 之间转换,反之亦然
  • 默认情况下,ADXL系列位于3.3V域中。这意味着即使连接到3V,它也只能输出3.5V(参见稳压器)。
  • 电平转换器可改变这一点:当ADXL连接到5V(参见稳压器)时,它还将在电路板的连接引脚上输出5V
  • 在下图中,电平转换器用黄色矩形标记

:警告:警告:RPI 和许多 MCU 板仅设计用于 3.3V。带电平转换器的电路板不得连接到 5V,并且只能连接到容限为 3.3V 的合作伙伴。这将破坏合作伙伴。

I2C 板

  • 大多数电路板使用SPI作为通信总线。 SPI的速度足以提供高达3200个样本/秒,因为它是谐振测量所必需的
  • 某些电路板似乎被迫使用下拉电阻进入I2C模式(另一种总线类型)
  • 此类电路板不适用于谐振测量,但可以通过移除下拉电阻进行返工
  • ADXL345 无效 ID ·问题 #3637 ·Klipper3d/klipper ·GitHub 144特别感谢@JanKolibri

:警告:警告:避免使用此类板, 如果您对在这样的板上焊接感到不舒服.

ADXL345,内置稳压器和电平转换器

adxl345_ldo_level_shift800×630 77 KB

内置稳压器的ADXL345

adxl345_ldo800×623 84.7 KB

不带稳压器的ADXL345

adxl345_none800×594 63.3 KB

ADXL343,内置稳压器和电平转换器

adxl343_ldo_level_shift800×558 64.6 KB

ADXL345,带稳压器并强制至I2C

adx345_i2c1671×1266 182 KB

Wiring

ADXL345 pinRPi Pico pinRPi Pico pin name
VIN (or VCC)363V3 Out
GND38GND
CS2SPI0 CSn (GP 1)
SDO1SPI0 RX (GP 0)
SDA5SPI0 TX (GP 3)
SCL4SPI0 SCK (GP 2)

Clipboard012420×1855 502 KB

Compiling & flashing the firmware for the Pico

Compile the firmware

cd ~/klipper/
make menuconfig
grafik
make

Flash the firmware

  1. 将Pico连接到常规的Klipper Raspberry Pi(或其他SBC)USB端口,同时按住按钮BOOTSEL
  2. 鉴于不存在其他大容量存储设备,Pico应注册为块设备/dev/sda
  3. 挂载块设备并将 Klipper 固件文件复制到其中
sudo mount /dev/sda1 /mnt
sudo cp out/klipper.uf2 /mnt
sudo umount /mnt
  1. 卸载后,Pico应使用新固件自动重新启动

配置克利珀

  1. 获取正确的路径serialls /dev/serial/by-id/*
  2. 将以下内容添加到文件中:printer.cfg
  1. 使用命令重新启动 Klipper。RESTART

新建一个cfg叫做《Pico_adxl345.cfg》Pico_adxl345.cfg文件代码如下

[mcu pico]

serial: /dev/serial/by-id/usb-Klipper_rp2040_E6616408439A7A27-if00

restart_method:command

[printer]

#kinematics: cartesian

max_accel: 7000

max_accel_to_decel: 7000

[adxl345]

spi_bus: spi0a

cs_pin: pico:gpio1

[resonance_tester]

[resonance_tester]

accel_chip: adxl345

probe_points:

    175,175,10

[gcode_macro USB_ADXL345]

gcode:

    G28

    G90

    G1 X150 Y150 F10000

    G1 Z10 F500

    G90

    SET_INPUT_SHAPER SHAPER_FREQ_X=0 SHAPER_FREQ_Y=0

    SHAPER_CALIBRATE

在printer.cfg中添加一行

#[include Pico_adxl345.cfg]

启用时请去除#号

如果发现无法识别的问题,可以尝试去除GND线,部分情况下可以解决

:grey_exclamation:重要:在重新连接RPi Pico或重新启动Klipper后,第一次测量将失败。这是由于 SPI 初始化存在一些问题。后续测量将起作用。

RPi Pico上可用的SPI总线

可以将多个ADXL板连接到一个RPi Pico:

ADXL345 引脚RPi 笔尖引脚名称斯皮0亚斯皮0bSPI0C斯皮1亚斯皮1b
虚拟货币(或可变可变资本)3V3输出3636363636
接地接地3838383838
.CS南航2 (GP1)7 (GP5)22 (GP17)12 (GP9)17 (GP13)
性别歧视条例SPI RX1 (GP0)6 (GP4)21 (GP16)11 (GP8)16 (GP12)
自主权评估斯皮德克萨斯5 (GP3)10 (GP7)25 (GP19)15 (GP11)20 (GP15)
标准及校正实验所SPI SCK4 (GP2)9 (GP6)24 (GP18)14 (GP10)19 (GP14)

笔记:

myxiaowu

作者 myxiaowu

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注