本教程旨在针对性优化温补参数,降低温飘,进行本优化耗时较长(1h以上),如果不温补已经能满足需求则不需要进行本操作。 首先将下方宏粘贴到配置文件中 ``` [gcode_macro DATA_SAMPLE] gcode:   M106 S255   TEMPERATURE_WAIT SENSOR='temperature_sensor IDM_coil' MAXIMUM=40   M106 S0   G28   G0 Z1   M104 S250   M140 S95   G4 P1000   IDM_STREAM FILENAME=data1   TEMPERATURE_WAIT SENSOR='temperature_sensor IDM_coil' MINIMUM=70   IDM_STREAM FILENAME=data1   M104 S0   M140 S0   M106 S255   G0 Z80   TEMPERATURE_WAIT SENSOR='temperature_sensor IDM_coil' MAXIMUM=40   M106 S0   G28 Z0   G0 Z2   M104 S250   M140 S95   G4 P1000   IDM_STREAM FILENAME=data2   TEMPERATURE_WAIT SENSOR='temperature_sensor IDM_coil' MINIMUM=70   IDM_STREAM FILENAME=data2   M104 S0   M140 S0   M106 S255   G0 Z80   TEMPERATURE_WAIT SENSOR='temperature_sensor IDM_coil' MAXIMUM=40   M106 S0   G28 Z0   G0 Z3   M104 S250   M140 S95   G4 P1000   IDM_STREAM FILENAME=data3   TEMPERATURE_WAIT SENSOR='temperature_sensor IDM_coil' MINIMUM=70   IDM_STREAM FILENAME=data3   M104 S0   M140 S0   M106 S255   G0 Z80   TEMPERATURE_WAIT SENSOR='temperature_sensor IDM_coil' MAXIMUM=40   M106 S0   G28 Z0   G0 Z5   M104 S250   M140 S95   G4 P1000   IDM_STREAM FILENAME=data4   TEMPERATURE_WAIT SENSOR='temperature_sensor IDM_coil' MINIMUM=70   IDM_STREAM FILENAME=data4   M104 S0   M140 S0 ``` 然后执行该宏,之后会在klipper文件夹中生成data1,data2,data3,data4 四个文件,耗时很长。 完成后将4个文件移动到用户目录下的IDM文件夹中。 然后执行 ``` cd ~/IDM ~/klippy-env/bin/python arg_fit.py ``` (请在执行前确认当前使用的是最新的脚本包,如果不是 请重新git clone) 运行后会生成出三个参数,并在IDM文件夹中生成一张图片。(这个过程运算量很大,需要一段时间) 请检查该文件名为fit_result.png的图片,并判断拟合效果,图片示例如下: ![fit_result](/imgs/fit_result.png) 第一行为原始数据,第二行为温补后的数据。可以看到这是一个拟合效果比较好的,偏移都被控制在3位数内。 将生成的参数复制到配置文件中的[IDM]块下 示例如下: ![fit_result](/imgs/example.png)