说真的这是我用Klipper玩3D打印机至今,用过效果最佳的改造了。测试完成后,震纹几乎绝迹,并且可以大幅提高打印速度,打印的质量也很可以接受。所以非常推荐玩Klipper的小伙伴进行加装改造。
补一个有图有真相,上图是切片打印速度为120的时候未开启input_shaper时的打印效果,下图是切片打印速度为250的时候开启了input_shaper的打印效果。是不是觉得很神奇!
所以,废话少说,Let’s go……
第一步,材料准备
ADXL345加速度传感器一块,然后就……没了……
ADXL345
从选择来说,这个加速度传感器在淘宝型号上很多,从几十到几元钱都有,我采购的是9元多的,感觉也挺好的,所以也就不用太讲究价格什么了,可以酌情采购。
第二步,安装及接线
这是官方的接线图,不过研究下来其实3.3V和GND可以直接图中箭头指的这两个,这样就可以直接压一个4×2的插头一次性解决了
安装位置可以参考这个
安装有几个要注意的点:
1)具体安装位置其实没有太大讲究,毕竟这个模块作用只是测试,测试好后可以拆掉,但是一定要尽量靠近喷嘴。
2)ADXL345板子上有XYZ的方向指向,但是按照资料好像说方向不一定非要和打印机的方向一致,但是每个轴必须平行,譬如ADXL345板子上的Z轴可以对着打印机的X轴,但是Z轴和X轴平行。(轴方向不需要一致这一点其实不是非常确认,如果有不同意见的可以反馈)
第三步,配置树莓派
硬件接好之后就可以试着软件的安装了,首先因为Klipper需要通过树莓派的SPI针脚读取加速度传感器的数据,所以需要先将树莓派变成klipper的一块mcu板子,这样klipper才能读取到加速度传感器的数据。这一步在klipper官方的教程中是没有的,所以很多人这一步会忽略。
下面的命令都是在树莓派系统中执行
首先安装Python的科学计算库,用作分析计算共振数据(实际执行的pip路径需要根据你klipper的venv环境的实际安装的路径来定,绝大部分情况是home目录下的klippy-env中)
~/klippy-env/bin/pip install -v numpy
安装系统依赖库
sudo apt install python-numpy python-matplotlib
将树莓派变成klipper的一块mcu,复制官方提供的系统启动脚本,并设置成系统自动启动
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
配置的控制器类型的时候,切记得要选择Linux process的
配置完成后就可以编译固件了
sudo service klipper stop
make flash
sudo service klipper start
sudo usermod -a -G tty pi
打开树莓派的SPI的接口
sudo raspi-config
上述步骤没有报错完成后,重启一次树莓派
第四步,配置Klipper
打开Klipper的配置文件,在合适的地方加入下面的配置代码
[mcu rpi]
serial: /tmp/klipper_host_mcu
[adxl345]
cs_pin: rpi:None
[resonance_tester]
accel_chip: adxl345
probe_points:
100,100,20 # 这个地方建议配置成热床的中间
配置完成后重启一下Klipper,在OctoPrint等终端内输入
ACCELEROMETER_QUERY
这个命令是查询加速器的参数,如果前面的软硬件安装正常的话,就会收到返回的加数据传感器参数,类似于下面内容……
.....
Recv: // adxl345 values (x, y, z): 470.719200, 941.438400, 9728.196800
...
第五步,测试加速度
开始测试前,先把打印机的加速度配置调大(这个测试完之后可以还原回去)
[printer]
max_accel: 7000
max_accel_to_decel: 7000
如果你之前有配置过input_shaper的功能,需要先关掉之前配置好的参数
SET_INPUT_SHAPER SHAPER_FREQ_X=0 SHAPER_FREQ_Y=0
然后就开始可以测试共振了,比较省事的就是直接用自动测试配置命令
SHAPER_CALIBRATE
测试的时候,刀头会从0MHz~120MHz震动,逐渐测试x轴和y轴数据,期间声音会逐渐增大,如果机子组装过程没有太大问题的话,机子不应该会有太剧烈反应(如果有太剧烈的反应建议检查组装过程)
完成测试后会进行一下计算,然后会显示出x轴和y轴推荐的配置方法和配置值,你可以根据这个配置方法和值手工配置input_shaper参数,类似这种
[input_shaper]
shaper_type_x = 3hump_ei
shaper_freq_x = 52.4
shaper_type_y = 2hump_ei
shaper_freq_y = 37.5
不过也能直接使用
SAVE_CONFIG
命令直接保存进配置文件
请先
!