[include fluidd.cfg] # 引入 Fluidd Web 界面控制器默认宏与定义 #[include ebb-canbus-v1.2.cfg] # 备用 Toolhead CAN 总线工具板配置(未启用) [include stealthburner_leds.cfg] # 引入 Stealthburner 工具头 LED 灯带控制宏 # [include print_area_bed_mesh.cfg] # 动态切片区域网床宏(未启用) # [include timelapse.cfg] # 延时摄影控制宏(未启用) # 此文件包含章鱼主板的常见引脚映射。要使用此配置,应使用“32KiB bootloader”为 STM32F446 编译固件启用“extra low-level configuration options”并选择“12MHz crystal”作为时钟参考。 # 运行“make”后,将生成的“klipper/out/klipper.bin”文件复制到一个 SD 卡上名为“firmware.bin”的文件,然后使用该 SD 卡重新启动 章鱼主板。 ## Voron Design VORON2.4 250/300/350mm BigTreeTech 必趣 章鱼主板 TMC2209 UART 配置 。 ##***需要更改/检查的事项:*** ## MCU 路径 [mcu] ## 热敏电阻类型 [extruder] 和 [heater_bed]-请参阅文件末尾的“传感器类型”列表 ## Z轴限位开关停止位置 [safe_z_home] ## 归位结束位置 [gcode_macro G32] ## Z轴限位开关偏移位置 [stepper_z] ## 探测点 [quad_gantry_level] ## 最小和最大位置 [quad_gantry_level] ## PID 调节 [extruder] and [heater_bed] ## 微调挤出机电机步进值 [extruder] ##################################################################### # 主板配置 ##################################################################### [mcu] # 章鱼主板序列号 serial: /dev/ttyAMA0 # 通信接口:使用树莓派 GPIO 板载硬串口(避免 USB 接口热胀抖动断连崩溃) restart_method: command # MCU 软件复位重载方式:通过 G-Code 命令触发 ##################################################################### # 温度监控 ##################################################################### [temperature_sensor 章鱼主板] # 章鱼主板温度 sensor_type: temperature_mcu # 温度传感器型号(Generic 3950 NTC 100K 3950 热敏电阻) min_temp: 0 # 最低安全允许温度门限(低于此温度判定为断路断线并熔断电源,单位: ℃) max_temp: 100 # 最高安全允许温度门限(高于此温度判定为热失控并熔断切断电源,单位: ℃) #-------------------------------------------------------------------- [temperature_sensor 树莓派] # 树莓派温度 sensor_type: temperature_host # 温度传感器型号(Generic 3950 NTC 100K 3950 热敏电阻) min_temp: 0 # 最低安全允许温度门限(低于此温度判定为断路断线并熔断电源,单位: ℃) max_temp: 100 # 最高安全允许温度门限(高于此温度判定为热失控并熔断切断电源,单位: ℃) #-------------------------------------------------------------------- ##################################################################### # 照明LED配置 ##################################################################### # [wled chamber_light] # address: 192.168.5.202 # chain_count: 72 # initial_red: 0.5 # initial_green: 0.4 # initial_blue: 0.3 # [gcode_macro WLED_ON] # description: 打开 WLED 灯带 # gcode: # {% set ip = "192.168.0.202" %} # {% set preset = params.PRESET|default(-1)|int %} # {action_call_remote_method("set_wled_state", # host=ip, # state=True, # preset=preset)} # [gcode_macro WLED_OFF] # description: 关闭 WLED 灯带 # gcode: # {% set ip = "192.168.0.202" %} # {action_call_remote_method("set_wled_state", # host=ip, # state=False)} # [gcode_macro WLED_CONTROL] # description: 设置亮度和速度 # gcode: # {% set ip = "192.168.0.202" %} # {% set brightness = params.BRIGHTNESS|default(-1)|int %} # {% set intensity = params.INTENSITY|default(-1)|int %} # {% set speed = params.SPEED|default(-1)|int %} # {action_call_remote_method("set_wled_state", # host=ip, # brightness=brightness, # intensity=intensity, # speed=speed)} #-------------------------------------------------------------------- ##################################################################### # 机型和加速度 ##################################################################### [printer] kinematics: corexy # 运动学方程:CoreXY 结构(A/B 双电机强耦合协同决定 XY 平面) max_velocity: 300 # 最大轴向打印/空移速度限制(300 mm/s) max_accel: 3000 # 最大打印加速度限制(3000 mm/s²) max_z_velocity: 15 # Z 轴最大升降速度限制(15 mm/s,防止皮带跳齿) max_z_accel: 350 # Z 轴最大升降加速度限制(350 mm/s²) square_corner_velocity: 5.0 # 直角转弯拐角减速阈值(5 mm/s,防止转角严重过挤膨胀) ##################################################################### # 热床网格校准 ##################################################################### [bed_mesh] speed: 80 # 校准速度 horizontal_move_z: 10 # Z轴运动速度 mesh_min: 30,30 # 最小校准点坐标x,y mesh_max: 270, 270 # 最大校准点坐标x,y probe_count: 10,10 # 网床采样阵列点数:10×10(共 100 点超高密网格) mesh_pps: 2,2 # 算法插值时每两个采样点之间额外补充的网格点(2×2) algorithm: bicubic # 网床曲面拟合算法:bicubic(双三次插值算法,平滑拟合热应力起伏) bicubic_tension: 0.2 # 双三次插值张力因子(0.2) Zero_Reference_Position: 150,150 # 参考绝对零点坐标:300mm 床正中心(X:150, Y:150,网床以中心为基准基线) ##################################################################### # X/Y轴电机 ##################################################################### ## X 轴步进电机 on MOTOR0(B Motor) [stepper_x] step_pin: PF13 # 步进电机脉冲 Step 引脚信号接口 dir_pin: !PF12 # 步进电机方向 Dir 引脚信号接口(! 表示取反改变电机旋转方向) enable_pin: !PF14 # 步进电机使能 Enable 引脚信号接口(! 低电平有效使能) rotation_distance: 40 # 电机旋转单圈轴向行程(2GT-20T同步轮=40mm; BMG齿轮为26.76mm校准值; Z轴配合齿比算式) microsteps: 32 # 驱动微步细分倍率:32 细分 full_steps_per_rotation: 400 # 电机单圈固有脉冲数:400 脉冲(对应 0.9° 高精度步进电机,1.8° 电机设 200) endstop_pin: PG6 # 物理机械限位/归零压针/近接开关信号接口 position_min: 0 # 行程最小软限位坐标限制(单位: mm) position_endstop: 300 # 物理限位触碰点绝对坐标值(单位: mm) position_max: 300 # 行程最大软限位坐标限制(300mm 规格) homing_speed: 50 # 归零复位移动速度(单位: mm/s) homing_retract_dist: 5 # 首次触碰后的抬升/后退微拉距离(单位: mm,准备二次精准触碰) homing_positive_dir: true # 复位方向:true(向 X/Y 最大正方向归零触碰限位) #-------------------------------------------------------------------- [tmc2209 stepper_x] # 步进电机-x tmc2209驱动 uart_pin: PC4 # TMC 驱动单线 UART 数字通信接口引脚 # spi_speed :5000000 # spi_bus :spi1 #spi_software_miso_pin:PA6 #spi_software_mosi_pin:PA7 #spi_software_sclk_pin:PA5 interpolate: True # 是否开启 TMC 驱动硬件 256 微步插值平滑算法 run_current: 0.8 # 电机运行均方根电流(单位: A,根据电机型号黄金工作点整定) #hold_current: 0.7 #电机静态力矩保持电流值 (不建议设置保持电流(详见TMC_Drivers.md)) sense_resistor: 0.075 # 主板驱动通道板载采样电阻阻值(0.075Ω/0.110Ω,切勿填错防烧) stealthchop_threshold: 0 # 静音阀值(0 表示禁用开启 SpreadCycle 高扭矩防丢步;200 表示低速开启静音) #[tmc5160 stepper_x] # TMC5160 ##MOTOR0驱动位 #spi_software_sclk_pin: PA5 # 通讯端口Pin脚定义 #spi_software_mosi_pin: PA7 #spi_software_miso_pin: PA6 #cs_pin: PC4 # BigTreeTech TMC5160 v1.0/V1.2需要开启此配置 #driver_tpfd: 0 # 是否开启256微步插值 #interpolate: True # 电机运行电流值 LDO-42STH48-2504AC # 24V #run_current: 1.556 #driver_TBL: 0 #driver_TOFF: 3 #driver_HEND: 2 #driver_HSTRT: 0 #run_current: 1.6 #driver_TBL: 2 #driver_TOFF: 3 #driver_HEND: 0 #driver_HSTRT: 6 #sense_resistor: 0.075 # 驱动采样电阻值(不要修改) #stealthchop_threshold: 0 # 静音阀值(0表示关闭,999999表示一直开启) ##################################################################### # Y 轴步进电机 on MOTOR1 (A Motor) ##################################################################### [stepper_y] step_pin: PG0 # 步进电机脉冲 Step 引脚信号接口 dir_pin: !PG1 # 步进电机方向 Dir 引脚信号接口(! 表示取反改变电机旋转方向) enable_pin: !PF15 # 步进电机使能 Enable 引脚信号接口(! 低电平有效使能) rotation_distance: 40 # 电机旋转单圈轴向行程(2GT-20T同步轮=40mm; BMG齿轮为26.76mm校准值; Z轴配合齿比算式) microsteps: 32 # 驱动微步细分倍率:32 细分 full_steps_per_rotation: 400 # 电机单圈固有脉冲数:400 脉冲(对应 0.9° 高精度步进电机,1.8° 电机设 200) endstop_pin: PG9 # 物理机械限位/归零压针/近接开关信号接口 position_min: 0 # 行程最小软限位坐标限制(单位: mm) position_endstop: 300 # 物理限位触碰点绝对坐标值(单位: mm) position_max: 300 # 行程最大软限位坐标限制(300mm 规格) homing_speed: 50 # 归零复位移动速度(单位: mm/s) homing_retract_dist: 5 # 首次触碰后的抬升/后退微拉距离(单位: mm,准备二次精准触碰) homing_positive_dir: true # 复位方向:true(向 X/Y 最大正方向归零触碰限位) #-------------------------------------------------------------------- [tmc2209 stepper_y] # 步进电机-x tmc2209驱动 uart_pin: PD11 # TMC 驱动单线 UART 数字通信接口引脚 # spi_speed :5000000 # spi_bus :spi1 #spi_software_miso_pin:PA6 #spi_software_mosi_pin:PA7 #spi_software_sclk_pin:PA5 interpolate: True # 是否开启 TMC 驱动硬件 256 微步插值平滑算法 run_current: 0.8 # 电机运行均方根电流(单位: A,根据电机型号黄金工作点整定) #hold_current: 0.7 #电机静态力矩保持电流值 (不建议设置保持电流(详见TMC_Drivers.md)) sense_resistor: 0.075 # 主板驱动通道板载采样电阻阻值(0.075Ω/0.110Ω,切勿填错防烧) stealthchop_threshold: 0 # 静音阀值(0 表示禁用开启 SpreadCycle 高扭矩防丢步;200 表示低速开启静音) ##################################################################### # Z轴步进电机 ##################################################################### ## Z0 步进电机 - 左前 on MOTOR2_1 [stepper_z] step_pin: PF11 # 步进电机脉冲 Step 引脚信号接口 dir_pin: !PG3 # 步进电机方向 Dir 引脚信号接口(! 表示取反改变电机旋转方向) enable_pin: !PG5 # 步进电机使能 Enable 引脚信号接口(! 低电平有效使能) rotation_distance: 40 # 电机旋转单圈轴向行程(2GT-20T同步轮=40mm; BMG齿轮为26.76mm校准值; Z轴配合齿比算式) gear_ratio: 80:16 # 减速齿轮组减速比(Z 轴 80:16 = 5:1 减速比; BMG 挤出机 50:17) microsteps: 32 # 驱动微步细分倍率:32 细分 endstop_pin: PG10 # 物理机械限位/归零压针/近接开关信号接口 position_max: 290 # 行程最大软限位坐标限制(300mm 规格) position_min: -5 # 行程最小软限位坐标限制(单位: mm) homing_speed: 10 # 归零复位移动速度(单位: mm/s) second_homing_speed: 3 # 二次归零精细触碰下落速度(单位: mm/s) homing_retract_dist: 3 # 首次触碰后的抬升/后退微拉距离(单位: mm,准备二次精准触碰) position_endstop: -0.989 # 物理限位触碰点绝对坐标值(单位: mm) [tmc2209 stepper_z] uart_pin: PC6 # TMC 驱动单线 UART 数字通信接口引脚 interpolate: true # 是否开启 TMC 驱动硬件 256 微步插值平滑算法 run_current: 0.8 # 电机运行均方根电流(单位: A,根据电机型号黄金工作点整定) #hold_current: 0.8 # 保持电流mA sense_resistor: 0.110 # 主板驱动通道板载采样电阻阻值(0.075Ω/0.110Ω,切勿填错防烧) stealthchop_threshold: 200 # 静音阀值(0 表示禁用开启 SpreadCycle 高扭矩防丢步;200 表示低速开启静音) #-------------------------------------------------------------------- ## Z1 步进电机 - 左后 on MOTOR3 [stepper_z1] step_pin: PG4 # 步进电机脉冲 Step 引脚信号接口 dir_pin: PC1 # 步进电机方向 Dir 引脚信号接口(! 表示取反改变电机旋转方向) enable_pin: !PA0 # 步进电机使能 Enable 引脚信号接口(! 低电平有效使能) rotation_distance: 40 # 电机旋转单圈轴向行程(2GT-20T同步轮=40mm; BMG齿轮为26.76mm校准值; Z轴配合齿比算式) gear_ratio: 80:16 # 减速齿轮组减速比(Z 轴 80:16 = 5:1 减速比; BMG 挤出机 50:17) microsteps: 32 # 驱动微步细分倍率:32 细分 [tmc2209 stepper_z1] uart_pin: PC7 # TMC 驱动单线 UART 数字通信接口引脚 interpolate: true # 是否开启 TMC 驱动硬件 256 微步插值平滑算法 run_current: 0.8 # 电机运行均方根电流(单位: A,根据电机型号黄金工作点整定) #hold_current: 0.8 # 保持电流mA sense_resistor: 0.110 # 主板驱动通道板载采样电阻阻值(0.075Ω/0.110Ω,切勿填错防烧) stealthchop_threshold: 200 # 静音阀值(0 表示禁用开启 SpreadCycle 高扭矩防丢步;200 表示低速开启静音) #-------------------------------------------------------------------- ## Z2 步进电机 - 右后 on MOTOR4 [stepper_z2] step_pin: PF9 # 步进电机脉冲 Step 引脚信号接口 dir_pin: !PF10 # 步进电机方向 Dir 引脚信号接口(! 表示取反改变电机旋转方向) enable_pin: !PG2 # 步进电机使能 Enable 引脚信号接口(! 低电平有效使能) rotation_distance: 40 # 电机旋转单圈轴向行程(2GT-20T同步轮=40mm; BMG齿轮为26.76mm校准值; Z轴配合齿比算式) gear_ratio: 80:16 # 减速齿轮组减速比(Z 轴 80:16 = 5:1 减速比; BMG 挤出机 50:17) microsteps: 32 # 驱动微步细分倍率:32 细分 [tmc2209 stepper_z2] uart_pin: PF2 # TMC 驱动单线 UART 数字通信接口引脚 interpolate: true # 是否开启 TMC 驱动硬件 256 微步插值平滑算法 run_current: 0.8 # 电机运行均方根电流(单位: A,根据电机型号黄金工作点整定) #hold_current: 0.8 # 保持电流mA sense_resistor: 0.110 # 主板驱动通道板载采样电阻阻值(0.075Ω/0.110Ω,切勿填错防烧) stealthchop_threshold: 200 # 静音阀值(0 表示禁用开启 SpreadCycle 高扭矩防丢步;200 表示低速开启静音) #-------------------------------------------------------------------- ## Z3 步进电机 - 右前 on MOTOR5 [stepper_z3] step_pin: PC13 # 步进电机脉冲 Step 引脚信号接口 dir_pin: PF0 # 步进电机方向 Dir 引脚信号接口(! 表示取反改变电机旋转方向) enable_pin: !PF1 # 步进电机使能 Enable 引脚信号接口(! 低电平有效使能) rotation_distance: 40 # 电机旋转单圈轴向行程(2GT-20T同步轮=40mm; BMG齿轮为26.76mm校准值; Z轴配合齿比算式) gear_ratio: 80:16 # 减速齿轮组减速比(Z 轴 80:16 = 5:1 减速比; BMG 挤出机 50:17) microsteps: 32 # 驱动微步细分倍率:32 细分 [tmc2209 stepper_z3] uart_pin: PE4 # TMC 驱动单线 UART 数字通信接口引脚 interpolate: true # 是否开启 TMC 驱动硬件 256 微步插值平滑算法 run_current: 0.8 # 电机运行均方根电流(单位: A,根据电机型号黄金工作点整定) #hold_current: 0.8 # 保持电流mA sense_resistor: 0.110 # 主板驱动通道板载采样电阻阻值(0.075Ω/0.110Ω,切勿填错防烧) stealthchop_threshold: 200 # 静音阀值(0 表示禁用开启 SpreadCycle 高扭矩防丢步;200 表示低速开启静音) ##################################################################### # 挤出机配置 ##################################################################### # E0 挤出机电机 on MOTOR6 [extruder] step_pin: PE2 # 步进电机脉冲 Step 引脚信号接口 dir_pin: !PE3 # 步进电机方向 Dir 引脚信号接口(! 表示取反改变电机旋转方向) enable_pin: !PD4 # 步进电机使能 Enable 引脚信号接口(! 低电平有效使能) # 校准步进值: 23.1325301 = 旧值22.6789511*(实际值102/目标值100) rotation_distance: 26.7611622 # 电机旋转单圈轴向行程(2GT-20T同步轮=40mm; BMG齿轮为26.76mm校准值; Z轴配合齿比算式) # 传动比 (M4 为 80:20 , BMG 为 50:17) gear_ratio: 50:17 # 减速齿轮组减速比(Z 轴 80:16 = 5:1 减速比; BMG 挤出机 50:17) microsteps: 32 # 驱动微步细分倍率:32 细分 full_steps_per_rotation: 400 # 电机单圈固有脉冲数:400 脉冲(对应 0.9° 高精度步进电机,1.8° 电机设 200) nozzle_diameter: 0.400 # 喷嘴输出物理孔径(0.40 mm) filament_diameter: 1.75 # 耗材标准物理直径(1.75 mm) heater_pin: PA2 # 加热棒/热床 MOS 输出控制引脚 sensor_type: Generic 3950 # 温度传感器型号(Generic 3950 NTC 100K 3950 热敏电阻) sensor_pin: PF4 # 热敏电阻 ADC 采样接口引脚 min_temp: -10 # 最低安全允许温度门限(低于此温度判定为断路断线并熔断电源,单位: ℃) max_temp: 290 # 最高安全允许温度门限(高于此温度判定为热失控并熔断切断电源,单位: ℃) max_power: 1.0 # 加热棒/热床最大输出功率限制(1.0 = 100% 全功率输出) min_extrude_temp: 170 # 允许冷挤出的最低冷保护温度(低于 170℃ 禁止电机旋转防止啃丝毁齿) #喷嘴温度PID校准命令: "PID_CALIBRATE HEATER=extruder TARGET=245" #control = pid # PID喷嘴温度自动校准项(默认被注释) #pid_kp = 26.213 # PID喷嘴温度自动校准项(默认被注释) #pid_ki = 1.304 # PID喷嘴温度自动校准项(默认被注释) #pid_kd = 131.721 # PID喷嘴温度自动校准项(默认被注释) pressure_advance: 0.05 # 压力推进(Pressure Advance):0.05(补偿高频熔池滞后拉丝) pressure_advance_smooth_time: 0.040 # 压力推进平滑滤波时间窗口(0.040s 默认平滑) max_extrude_cross_section: 1.0 # 单次最大挤出截面积限制(防止划线切片异常溢出) [extruder] #control: pid #pid_kp: 17.428 #pid_ki: 0.735 #pid_kd: 103.258 [tmc2209 extruder] uart_pin: PE1 # TMC 驱动单线 UART 数字通信接口引脚 interpolate: true # 是否开启 TMC 驱动硬件 256 微步插值平滑算法 run_current: 0.6 # 电机运行均方根电流(单位: A,根据电机型号黄金工作点整定) #hold_current: 0.4 # 保持电流mA sense_resistor: 0.110 # 主板驱动通道板载采样电阻阻值(0.075Ω/0.110Ω,切勿填错防烧) stealthchop_threshold: 200 # 静音阀值(0 表示禁用开启 SpreadCycle 高扭矩防丢步;200 表示低速开启静音) # [tmc2240 extruder] # cs_pin: EBBCan: PA15 # spi_software_sclk_pin: EBBCan: PB10 # spi_software_mosi_pin: EBBCan: PB11 # spi_software_miso_pin: EBBCan: PB2 # interpolate: True # 微步插值256 # driver_TPFD: 0 # run_current: 0.650 # 运行电流mA # stealthchop_threshold: 999999 # 静音阀值 #-------------------------------------------------------------------- [verify_heater extruder] # 加热块温度容差配置 max_error: 120 # 允许最大累积温度偏差能量值(120) check_gain_time: 120 # 升温增益校验时间窗口(120s 内升温不达标判定加热棒脱落熔断) hysteresis: 50 # 允许的滞后温度波动区间(50℃) heating_gain: 2 # 最低升温增益速率要求(2℃/s) ##################################################################### # 断料检测 ##################################################################### #[filament_switch_sensor DLJC] ## 当设置为True时,将在断料后立即执行暂停。请注意,如果pause_on_runout为False,将在断料后不执行,然后断料检测被禁用。默认是True。 #pause_on_runout: True ## 断料后要执行的 G 代码命令,如果pause_on_runout设置为 True 此 G 代码将在PAUSE 完成。默认不运行任何 G 代码命令。 #runout_gcode: ## 插入耗材丝后要执行的 G 代码命令,这默认是不运行任何 G-Code 命令,这会禁用插入检测。 #insert_gcode: ## 事件之间延迟的最短时间(以秒为单位)。在此时间段内触发的事件将被静默忽略。 默认值为 3 秒。 #event_delay: 3.0 ## 暂停命令之间的延迟时间,以秒为单位调度和执行 runout_gcode。 如果出现奇怪的暂停行为,则增加此延迟。默认为 0.5 秒。 #pause_delay: 0.5 ## 设置引脚,这个参数必须填 #switch_pin:PG15 ##################################################################### # 热床配置 ##################################################################### [heater_bed] heater_pin: PA3 # 加热棒/热床 MOS 输出控制引脚 sensor_type: Generic 3950 # 温度传感器型号(Generic 3950 NTC 100K 3950 热敏电阻) sensor_pin: PF3 # 热敏电阻 ADC 采样接口引脚 max_power: 1.0 # 加热棒/热床最大输出功率限制(1.0 = 100% 全功率输出) min_temp: 0 # 最低安全允许温度门限(低于此温度判定为断路断线并熔断电源,单位: ℃) max_temp: 120 # 最高安全允许温度门限(高于此温度判定为热失控并熔断切断电源,单位: ℃) # 热床温度PID校准命令: "PID_CALIBRATE HEATER=heater_bed TARGET=100" #control: pid # PID热床温度自动校准项(默认被注释) #pid_kp: 54.027 # PID热床温度自动校准项(默认被注释) #pid_ki: 0.770 # PID热床温度自动校准项(默认被注释) #pid_kd: 948.182 # PID热床温度自动校准项(默认被注释) ##################################################################### # PL08N感应探头 ##################################################################### # PL08N感应探头不低于喷嘴高度,仅用于调平,如果你的PL08N是NO(常开),请将更改pin添加到!PG11 [probe] ## 感应探头 ## 这个调查不用于Z高度,只有四龙门水准 ## NPN型和PNP型接近开关类型可以设置跳线 pin: PG15 # 信号接口 x_offset: 0 # 探针相对喷嘴的 X 轴物理偏移量(0 mm,集成工具头对齐) y_offset: 0 # 探针相对喷嘴的 Y 轴物理偏移量(0 mm) #z_offset: 5.250 # Z轴-传感器相对喷嘴偏移量 speed: 10.0 # 调平速度 samples: 3 # 每一个测量点下压采样次数(采样 3 次) samples_result: median # 多次采样计算方式:median(取 3 次中位数剔除突变点) sample_retract_dist: 3.0 # 两次采样之间的抬升微抽距离(3.0 mm) samples_tolerance: 0.01 # 3 次采样的最大允许公差(0.01 mm = 10 微米) samples_tolerance_retries: 3 # 超出公差时的最大重试测量次数(重试 3 次) activate_gcode = {% set PROBE_TEMP = 230 %} ##设置打印头温度220 {% set MAX_TEMP = PROBE_TEMP + 5 %} ##限制温度到上面那个温度加5度 {% set ACTUAL_TEMP = printer.extruder.temperature %} {% set TARGET_TEMP = printer.extruder.target %} {% if TARGET_TEMP > PROBE_TEMP %} ##条件判断 { action_respond_info('Extruder temperature target of %.1fC is too high, lowering to %.1fC' % (TARGET_TEMP, PROBE_TEMP)) } M109 S{ PROBE_TEMP } {% else %} {% if ACTUAL_TEMP > MAX_TEMP %} ##条件判断并且发出一行代码 { action_respond_info('Extruder temperature %.1fC is still too high, waiting until below %.1fC' % (ACTUAL_TEMP, MAX_TEMP)) } TEMPERATURE_WAIT SENSOR=extruder MAXIMUM={ MAX_TEMP } {% endif %} {% endif %} [bed_mesh] speed: 200 # 校准速度 horizontal_move_z: 7 # Z轴运动速度 mesh_min: 25,25 # 最小校准点坐标x,y mesh_max: 225,225 # 最大校准点坐标x,y probe_count: 10,10 # 网床采样阵列点数:10×10(共 100 点超高密网格) mesh_pps: 2,2 # 算法插值时每两个采样点之间额外补充的网格点(2×2) algorithm: bicubic # 网床曲面拟合算法:bicubic(双三次插值算法,平滑拟合热应力起伏) bicubic_tension: 0.2 # 双三次插值张力因子(0.2) fade_start: 0 # 开始逐渐消除补偿的层高 Z 轴起点(0) fade_end: 0 # 完全消除补偿的层高 Z 轴终点(0) fade_target: 0 # 消除补偿后的基准 Z 偏移量(0) Zero_Reference_Position: 150,150 # 参考绝对零点坐标:300mm 床正中心(X:150, Y:150,网床以中心为基准基线) ##################################################################### # 风扇配置 ##################################################################### [fan] # 模型冷却风扇 pin: PA8 # 信号接口 kick_start_time: 0.5 # 风扇起转全速冲顶时间(确保克服静摩擦顺利起转,单位: s) off_below: 0.10 # 允许停转的低 PWM 占空比门限(低于此占空比自动停转) #-------------------------------------------------------------------- [heater_fan 喉管风扇] # 喉管冷却风扇 pin: PE5 # 信号接口 max_power: 1.0 # 加热棒/热床最大输出功率限制(1.0 = 100% 全功率输出) kick_start_time: 0.5 # 风扇起转全速冲顶时间(确保克服静摩擦顺利起转,单位: s) heater: extruder # 关联的设备:挤出机 heater_temp: 50 # 挤出机达到多少度启动风扇 fan_speed: 0.8 # 风扇运转目标转速比例(0.8 = 80% 转速降低高频风噪) #-------------------------------------------------------------------- [fan_generic 排气风扇] # 机器上方排气扇 pin: PD14 # 信号接口 max_power: 1.0 # 加热棒/热床最大输出功率限制(1.0 = 100% 全功率输出) shutdown_speed: 0 # 系统关机崩溃时风扇关断转速(0) cycle_time: 0.01 # 软件 PWM 占空比周期时间(0.01s = 100Hz 调光频率) hardware_pwm: False # 是否开启硬件 PWM(False 为软件 PWM) kick_start_time: 0.1 # 风扇起转全速冲顶时间(确保克服静摩擦顺利起转,单位: s) off_below: 0 # 允许停转的低 PWM 占空比门限(低于此占空比自动停转) #tachometer_pin: #tachometer_ppr: 2 #tachometer_poll_interval: 0.0015 #enable_pin: #-------------------------------------------------------------------- [fan_generic 散热风扇] # 电器仓散热风扇 pin: PD13 # 信号接口 max_power: 1.0 # 加热棒/热床最大输出功率限制(1.0 = 100% 全功率输出) shutdown_speed: 0 # 系统关机崩溃时风扇关断转速(0) # fan_speed: 0.7 cycle_time: 0.01 # 软件 PWM 占空比周期时间(0.01s = 100Hz 调光频率) hardware_pwm: False # 是否开启硬件 PWM(False 为软件 PWM) kick_start_time: 0.1 # 风扇起转全速冲顶时间(确保克服静摩擦顺利起转,单位: s) off_below: 0 # 允许停转的低 PWM 占空比门限(低于此占空比自动停转) # idle_timeout: 30 #在步进驱动器或者加热器不在活跃后风扇应保持运行时间(以秒为单位)。 #默认值30秒 # idle_speed: 0.7 #在步进驱动器或者加热器不在活跃后,风扇转速为0.7 # heater: heater_bed, extruder # steper: stepper_x, stepper_y, stepper_z #tachometer_pin: #tachometer_ppr: 2 #tachometer_poll_interval: 0.0015 #enable_pin: #-------------------------------------------------------------------- [fan_generic 净化风扇] # 净化风扇(nevermore) pin: PD12 # 信号接口 max_power: 1.0 # 加热棒/热床最大输出功率限制(1.0 = 100% 全功率输出) shutdown_speed: 0 # 系统关机崩溃时风扇关断转速(0) cycle_time: 0.01 # 软件 PWM 占空比周期时间(0.01s = 100Hz 调光频率) hardware_pwm: False # 是否开启硬件 PWM(False 为软件 PWM) kick_start_time: 0.1 # 风扇起转全速冲顶时间(确保克服静摩擦顺利起转,单位: s) off_below: 0 # 允许停转的低 PWM 占空比门限(低于此占空比自动停转) ##################################################################### # LED灯带配置(需要时启用) ##################################################################### #[neopixel LEDlight] #pin: PB0 # 信号接口 #chain_count: 26 # 灯珠数量 #color_order: GRB # 颜色顺序 #initial_RED: 0.2 # 初始 红色 量 #initial_GREEN: 0.2 # 初始 绿色 量 #initial_BLUE: 0.2 # 初始 蓝色 量 ##################################################################### # 闲置关闭热床 ##################################################################### [idle_timeout] timeout: 1800 # 闲置无任务超时时间:1800 秒(30 分钟无打印自动关断热床与加热棒) ##################################################################### # 归位和龙门调整程序 ##################################################################### # 以下两种设置Z轴限位位置方式选择一种,把另一种注释掉即可, #[homing_override] #axes: z #set_position_z: 0 #gcode: # G90 # G0 Z15 F600 # G28 X Y # ## Z 限位开关的 XY 位置 # ##通过后将X0和Y0更新为你的值(如X157、Y305) # ## Z 轴限位位置定义 # G0 X185 Y250 F3600 #250mm # G28 Z # G0 Z10 F1800 #-------------------------------------------------------------------- [safe_z_home] # Z轴限位坐标 home_xy_position: 208,294 # 物理 Z 限位压针在热床后方的绝对 XY 坐标(X:208mm, Y:294mm) speed:50 # 归位速度 z_hop: 10 # 归零/测量前 Z 轴安全抬升高度(10 mm,防止压针刮床) #-------------------------------------------------------------------- [quad_gantry_level] ## Use QUAD_GANTRY_LEVEL to level a gantry. ## Min & Max gantry corners - measure from nozzle at MIN (0,0) and ## MAX (250, 250), (300,300), or (350,350) depending on your printer size ## to respective belt positions #-------------------------------------------------------------------- ## Gantry Corners for 250mm Build ## Uncomment for 250mm build #gantry_corners: # -60,-10 # 310, 320 ## Probe points #points: # 50,25 # 50,175 # 200,175 # 200,25 ## Gantry Corners for 300mm Build ## Uncomment for 300mm build gantry_corners: -60,-10 360,370 # Probe points points: 50,25 #左下角 50,225 #左上脚 250,225 #右上角 250,25 #右下角 ## Gantry Corners for 350mm Build ## Uncomment for 350mm build # gantry_corners: # -60,-10 # 410,420 # # Probe points # points: # 50,25 # 50,275 # 300,275 # 300,25 #-------------------------------------------------------------------- speed: 100 # QGL 点位间平移移动速度(100 mm/s) horizontal_move_z: 10 # 测量点位切换时 Z 轴安全抬升高度(10 mm) retries: 5 # QGL 允许的最大循环微调重试轮数(最多重试 5 轮) retry_tolerance: 0.0075 # QGL 调平成功收敛公差判定线:0.0075 mm(7.5 微米极精收敛) max_adjust: 10 # 单次允许电机调整的最大垂直补偿幅度(10 mm) ##################################################################### # 自定义gcode宏 ##################################################################### [exclude_object] # 开启排除对象功能(切片支持剔除单个失败零件) [gcode_arcs] # 允许圆弧插补 resolution: 1.0 # G2/G3 圆弧插补矢量路径分辨率(1.0 mm) #-------------------------------------------------------------------- [gcode_macro ACTIVATE_EXTRUDER_TEMP] description: 激活喷头温度,先安全加热,再加热到目标打印温度 gcode: # ------------------------------ # 1. 最大安全温度限制 # 2. 当前温度高于目标温度则等待降温 # 3. 当前温度低于目标温度则加热至目标温度 # ------------------------------ # 获取当前喷头温度和目标温度 {% set SAFE_MAX_TEMP = 250 %} # 最大安全温度上限 {% set ACTUAL_TEMP = printer.extruder.temperature %} {% set TARGET_TEMP = printer.extruder.target %} # 判断目标温度是否超过安全上限 {% if TARGET_TEMP > SAFE_MAX_TEMP %} { action_respond_info('Target extruder temp %.1fC exceeds safe max %.1fC' % (TARGET_TEMP, SAFE_MAX_TEMP)) } M109 S{SAFE_MAX_TEMP} #将喷头加热到安全上限并等待 {% else %} # 如果当前温度高于目标温度 +5℃ {% if ACTUAL_TEMP > TARGET_TEMP + 5 %} { action_respond_info('Extruder temp %.1fC above target %.1fC, waiting to cool' % (ACTUAL_TEMP, TARGET_TEMP)) } TEMPERATURE_WAIT SENSOR=extruder MAXIMUM={TARGET_TEMP + 5} {% elif ACTUAL_TEMP < TARGET_TEMP %} { action_respond_info('Heating extruder to target temp %.1fC' % TARGET_TEMP) } M109 S{TARGET_TEMP} # 加热到目标温度并等待 {% endif %} {% endif %} #-------------------------------------------------------------------- [gcode_macro G32] description: 自动调平程序 gcode: STATUS_HOMING G90 # 强制绝对坐标 BED_MESH_CLEAR # 清空旧 Mesh G28 # 首次归零 STATUS_LEVELING G4 P500 # 等待 0.5s 轴稳定 QUAD_GANTRY_LEVEL # 龙门架调平 G28 # 二次归零(非常重要) G0 Z10 F3000 # 抬高避免刮床 G0 X150 Y150 F6000 # 回热床中心(300×300) G0 Z30 F3000 # 提升到安全高度 [gcode_macro PRINT_START] description: 开始打印(官方标准,单宏终极版) gcode: # --------------------------------------------------------- # 1. 安全地从切片软件获取温度参数(若无则使用默认值) # 采用链式 .get() 保护,支持所有主流切片软件(Orca/Prusa/Cura)的各种变量名 # --------------------------------------------------------- {% set BED = params.get('BED', params.get('BED_TEMP', 60))|int %} {% set HOTEND = params.get('EXTRUDER', params.get('EXTRUDER_TEMP', params.get('HOTEND', 215)))|int %} # 限制最高温度,防止误操作烧毁工具头 {% if HOTEND > 250 %} { action_respond_info("Warning: Hotend temp limited to 250C") } {% set HOTEND = 250 %} {% endif %} # 2. 开启指示灯:加热中 STATUS_HEATING M117 Preheating... # 3. 预热热床 & 喷头安全预热 M140 S{BED} ; 开启热床加热 M104 S150 ; 喷嘴预热到150度(变软残料、防温漂、防滴料) M190 S{BED} ; 等待热床达到目标温度 # 4. 自动调平 STATUS_LEVELING M117 Homing & QGL... G32 ; 执行龙门架自动调平(包含G28) G28 Z ; 重新校准 Z 轴零点 # 5. 加载热床网格 STATUS_MESHING M117 Loading Bed Mesh... BED_MESH_PROFILE LOAD=default # 6. 移动到左前角悬空,将喷头加热到最终温度 STATUS_HEATING M117 Heating hotend to {HOTEND}C... G90 ; 绝对坐标 G1 X5 Y8 Z10 F6000 ; 快速移动到左前角悬空等待,防止残料滴在打印区 M109 S{HOTEND} ; 加热喷嘴到最终温度并等待 # 7. 划线清理(Purge Line) STATUS_CLEANING M117 Purging... G90 ; 绝对坐标 G1 Z5 F3000 ; 抬起喷头 G92 E0 ; 重置挤出坐标 G1 X5 Y8 F6000 ; 移动到划线起点 G1 Z0.4 ; 降到划线高度 G91 ; 相对坐标 G1 X200 E20 F1200 ; 第一道划线 G1 Y1 ; 错开 1mm G1 X-200 E20 F1200 ; 第二道划线 G1 Z5 F3000 ; 抬起喷头 G92 E0 ; 重置挤出 G90 ; 回到绝对坐标 # 8. 正式开始打印 STATUS_PRINTING M117 Printing... [gcode_macro PRINT_END] description: 打印结束宏(官方标准,合二为一版) gcode: M400 ; 等待所有动作(缓存的移动指令)完成 G92 E0 ; 重置挤出量 #——— 安全收料(直驱泄压) ——# G1 E-2.0 F3600 ; 微退料泄压,彻底防堵头 G91 ; 切换为相对坐标 G1 Z5 F3000 ; 抬升 Z 轴 5mm,避免刮伤模型表面 #——— 移动喷嘴离开打印区 ——# G90 ; 切换回绝对坐标 G0 X150 Y300 F10000 ; 快速将工具头退到后方中间(X中点,Y后部) M107 ; 关闭模型散热风扇 #——— 卸载网床 ——# BED_MESH_CLEAR #---------------------------------------------------------- # 关闭加热器(火灾安全防线) #---------------------------------------------------------- M104 S0 ; 关闭喷嘴加热 M140 S0 ; 关闭热床加热 #——— LED 状态关闭(严格小写) ——# status_off ; 调用 Stealthburner 关灯宏 M117 Print Finished. ; 在屏幕上提示打印完成 #============================================================ # TOOLHEAD_PARK_PAUSE_CANCEL - 动态停放喷头宏 #============================================================ [gcode_macro TOOLHEAD_PARK_PAUSE_CANCEL] description: 喷头安全停放宏,用于暂停、恢复和取消打印 variable_extrude: 2.0 # 暂停退料量,与恢复打印匹配 gcode: {% set th = printer.toolhead %} {% set max_x = th.axis_maximum.x|float %} {% set max_y = th.axis_maximum.y|float %} # 动态停放到右后角(留出 10mm 安全余量,完美兼容 250/300/350 所有机型) G90 G1 X{max_x - 10} Y{max_y - 10} F6000 #============================================================ # M600 - 换料/换色暂停宏(兼容切片软件) #============================================================ [gcode_macro M600] description: 换色/换耗材暂停宏 gcode: PAUSE ; 直接调用已有的安全 PAUSE 宏 #============================================================ # 暂停打印宏 #============================================================ [gcode_macro PAUSE] description: 安全暂停打印 rename_existing: PAUSE_BASE gcode: M400 ; 等待动作缓冲完成 # --- 1. 保存当前完整的 G-Code 状态(坐标、速度、绝对/相对模式) --- SAVE_GCODE_STATE NAME=PAUSE_state PAUSE_BASE ; 调用原生 PAUSE # --- 2. 退料避免滴料 --- M83 G1 E-2.0 F2100 ; 直驱挤出机安全回抽 2mm # --- 3. 动态抬高 Z 轴(绝对不超限,安全防撞顶) --- G91 {% set max_z = printer.toolhead.axis_maximum.z|float %} {% set act_z = printer.toolhead.position.z|float %} {% set lift_z = 10.0 %} ; 期望抬升 10mm {% if act_z < (max_z - lift_z) %} G1 Z{lift_z} F3000 {% else %} G1 Z{max_z - act_z} F3000 ; 空间不够时,仅抬升至物理上限 {% endif %} G90 # --- 4. 移动喷头到右后安全停放区 --- TOOLHEAD_PARK_PAUSE_CANCEL # --- 5. LED 状态(严格小写防报错) --- {% if printer["gcode_macro status_pause"] is defined %} status_pause {% endif %} #============================================================ # 恢复打印宏 #============================================================ [gcode_macro RESUME] description: 恢复打印 rename_existing: RESUME_BASE gcode: # --- 1. 恢复退料 --- M83 G1 E2.0 F2100 ; 补回暂停时回抽的 2mm # --- 2. 一键恢复暂停前的所有状态,并自动以 100mm/s 快速移回暂停点 --- RESTORE_GCODE_STATE NAME=PAUSE_state MOVE=1 MOVE_SPEED=100 # --- 3. 调用原生 RESUME --- RESUME_BASE {rawparams} #============================================================ # 取消打印宏 #============================================================ [gcode_macro CANCEL_PRINT] description: 安全取消正在进行的打印 rename_existing: CANCEL_PRINT_BASE gcode: M400 # --- 1. 停止挤出并微退料 --- M83 G1 E-2.0 F1800 ; 退料 2mm 防止拉丝 # --- 2. 动态抬升 Z 轴(安全防撞顶) --- G91 {% set max_z = printer.toolhead.axis_maximum.z|float %} {% set act_z = printer.toolhead.position.z|float %} {% set lift_z = 10.0 %} {% if act_z < (max_z - lift_z) %} G1 Z{lift_z} F3000 {% else %} G1 Z{max_z - act_z} F3000 ; 仅抬升至最大物理限制 {% endif %} G90 # --- 3. 动态移动喷头到后方中间(绝对安全位置) --- {% set th = printer.toolhead %} G0 X{th.axis_maximum.x / 2} Y{th.axis_maximum.y - 10} F10000 # --- 4. 关闭加热、风扇 --- M107 TURN_OFF_HEATERS # --- 5. 清理网床并关闭 LED --- BED_MESH_CLEAR {% if printer["gcode_macro status_off"] is defined %} status_off ; 严格小写调用 {% endif %} CANCEL_PRINT_BASE [virtual_sdcard] # 虚拟 SD 卡模块(挂载切片 G-Code 文件目录) path: /home/pi/printer_data/gcodes # 上位机虚拟 SD 卡 G-Code 文件存储目录地址 ##################################################################### # 以下为脚本配置保存参数(勿动) ##################################################################### #*# <---------------------- SAVE_CONFIG ----------------------> #*# DO NOT EDIT THIS BLOCK OR BELOW. The contents are auto-generated. #*# #*# [extruder] #*# control = pid #*# pid_kp = 17.428 #*# pid_ki = 0.735 #*# pid_kd = 103.258 #*# #*# [heater_bed] #*# control = pid #*# pid_kp = 61.220 #*# pid_ki = 5.300 #*# pid_kd = 176.774 #*# #*# [bed_mesh default] #*# version = 1 #*# points = #*# 0.037553, 0.027553, 0.025053, 0.016303, 0.010053, 0.030053, 0.027553, 0.038803, 0.031303, 0.035053 #*# 0.035053, 0.028803, 0.031303, 0.030053, 0.035053, 0.038803, 0.028803, 0.035053, 0.018803, 0.027553 #*# 0.030053, 0.023803, 0.030053, 0.016303, 0.036303, 0.023803, 0.012553, 0.010053, 0.018803, 0.011303 #*# 0.030053, 0.021303, 0.018803, 0.011303, 0.003803, 0.011303, 0.010053, 0.007553, 0.010053, 0.012553 #*# 0.040053, 0.022553, 0.016303, 0.012553, 0.005053, 0.003803, 0.016303, 0.005053, 0.010053, 0.013803 #*# 0.033803, 0.018803, 0.010053, -0.002447, -0.008697, -0.007447, 0.000053, 0.007553, -0.008697, -0.004947 #*# 0.035053, 0.020053, 0.021303, 0.002553, 0.000053, 0.002553, 0.001303, -0.006197, -0.001197, 0.005053 #*# 0.048803, 0.035053, 0.026303, 0.015053, 0.010053, 0.018803, 0.005053, 0.017553, 0.017553, 0.011303 #*# 0.050053, 0.042553, 0.033803, 0.013803, 0.007553, 0.012553, 0.013803, 0.013803, 0.018803, 0.030053 #*# 0.066303, 0.053803, 0.046303, 0.033803, 0.020053, 0.025053, 0.028803, 0.028803, 0.031303, 0.036303 #*# x_count = 10 #*# y_count = 10 #*# mesh_x_pps = 2 #*# mesh_y_pps = 2 #*# algo = bicubic #*# tension = 0.2 #*# min_x = 25.0 #*# max_x = 224.98 #*# min_y = 25.0 #*# max_y = 224.98 #*# #*# [probe] #*# z_offset = 2.657