QIDI X-MAX3 Nozzle Wiper
Obliczymy ostateczną cenę na podstawie wybranego pliku. Sprawdzisz ją i zaakceptujesz przed płatnością.
Zapisane na tym urządzeniu.
A simple nozzle wiper for filament changes
- Ocena
- 0 / 5
- Polubienia
- 11
- Pobrania
- 52
- Wydruki
- 1
- Wyświetlenia
- 297
- Oceny
- 0
Aktualizacja u źródła:
Informacje o modelu
- Źródło
- Printables
- Kategoria
- Other Printer Parts & Upgrades
- Licencja
- Creative Commons — Attribution
A quick design of a nozzle wiper/brush mount I through together. It works well enough but I am I think it could be improved. I was really just taking a guess as to what would work.
There is limited space where the nozzle can reach around the bed that has enough room for a nozzle wiper. I chose the front left so it wouldn't interfere with the camera. The nozzle can only reach the front row of teeth due its limited range of movement.
For the Bambu Lab "Nozzle Wiper" (PTFE roller) cut the small prongs cut off then attached using the provided screw.
The Bambu Lab “Heatbed Nozzle Wiper - A1” (silicon wiper) attached with the adhesive backing. To install simply clip it around the internal frame on the from left and then push it against the bed as seen in the photos.
Improvements that could be made: Thinner wiper platform: My current macros lower before wiping, if this does not happen the platform it lifted slightly and which cause the nozzle to hit the roller arm.
Here is my BoxTurtle/AFC macros variables file for the brush macro and others for filament changes, look at the brush section. I set the center of the brush off center so the wipe movement hit the roller and the brush.
[include macros/*.cfg]#--=================================================================================-
#------- Global ---------------------------------------------------------------------
#--=================================================================================-
[gcode_macro _AFC_GLOBAL_VARS]
description: Global variables used in multiple macros
gcode: # Leave Empty
Set this to match your AFC_stepper base naming in AFC_Hardware.cfg
variable_stepper_name : 'lane' # [AFC_stepper lane1] [AFC_stepper lane2]...
variable_travel_speed : 120 # Speed mm/s
variable_z_travel_speed : 30 # Speed mm/s
variable_accel : 2000 # Move accel for all macro moves
variable_disable_skew_correction : False # When True macros will disable and re-enable skew correction while performing kinematic actions, useful if you took your measurements before loading your skew profiles which may limit where the toolhead can go during print.
variable_verbose : 1 # Console Output for macros
# 0 - None
# 1 - Limited
# 2 - All
#--=================================================================================-
#------- Cut -----------------------------------------------------------------------
#--=================================================================================-
[gcode_macro _AFC_CUT_TIP_VARS]
description: Toolhead tip cutting macro configuration variables
gcode: # Leave empty
This should be the position of the toolhead where the cutter arm just
lightly touches the depressor pin
variable_pin_loc_xy : 1.8, 20 # x,y coordinates of depressor pin
Accel during cut. This will overwrite the global accel for this macro. Set to 0 to use global accel
variable_cut_accel : 0
Direction to make the cut move (left, right, front, back)
variable_cut_direction : "left"
This distance is used to move toolhead to cut filament
and to create a small safety distance that aids in generating momentum
variable_pin_park_dist : 10.0 # Distance in mm
Position of the toolhead when the cutter is fully compressed.
Distance the toolhead needs to travel to compress the cutter arm.
To calculate this distance start at the pin_loc_xy position and move
your toolhead till the cutter arm is completely compressed. Take 0.5mm off this distance
as a buffer.
Ex pin_loc_x : 9, 310 fully compressed at 0, 310 set cut_move_dist to 8.5
variable_cut_move_dist : 6.0 # Distance in mm
Speed related settings for tip cutting
Note that if the cut speed is too fast, the steppers can lose steps.
Therefore, for a cut:
- We first make a fast move to accumulate some momentum and get the cut
blade to the initial contact with the filament
- We then make a slow move for the actual cut to happen
variable_cut_fast_move_speed : 32 # Speed mm/s
variable_cut_slow_move_speed : 10 # Speed mm/s
variable_evacuate_speed : 150 # Speed mm/s
variable_cut_dwell_time : 50 # Time to dwell at the cut point in ms
variable_cut_fast_move_fraction : 0.85 # Fraction of the move that uses fast move 0.0 - 1.0
variable_extruder_move_speed : 25 # Speed mm/s for all extruder movement
If the toolhead returns to initial position after the cut is complete.
variable_restore_position : False # True = return to initial position, False = don't return
Distance to retract prior to making the cut, this reduces wasted filament but might cause clog
if set too large and/or if there are gaps in the hotend assembly
*This must be less than the distance from the nozzle to the cutter
variable_retract_length : 20
This can help prevent clogging of some toolheads by doing a quick tip from to reduce stringing
variable_quick_tip_forming : False
Number of times to run the cut movement
variable_cut_count : 3
Retract length and speed after the cut so that the cutter can go back
into its origin position
variable_rip_length : 1.0 # Distance in mm to retract to aid lever decompression (>= 0)
variable_rip_speed : 3 # Speed mm/s
Pushback of the remaining tip from the cold end into the hotend
*Must be less then retract_length
variable_pushback_length : 2 # Distance in mm Default 2
variable_pushback_dwell_time : 20 # Time to dwell between the pushback Defaut 20
Safety margin for fast vs slow travel. When traveling to the pin location
we make a safer but longer move if we are closer to the pin than this
specified margin. Usually setting these to the size of the toolhead
(plus a small margin) should be good enough
variable_safe_margin_xy : 30, 30 # Approx toolhead width +5mm, height +5mm)
Some printers may need a boost of power to complete the cut without skipping steps.
One option is to increase the current for the steppers in printer.cfg. Another
option is to use these variables to set a current that is only used during the
cut motion. Different combinations of kinematics and cutter configurations engage
different combinations of steppers for that motion. Set the needed variables.
The override is skipped if the current is 0.
Enable if layer shifts occur when cutting
variable_cut_current_stepper_x: 0
variable_cut_current_dual_carriage: 0 # This is the value that is used to define the current for the dual carriage stepper (2nd x) for an IDEX printer during the cut.
variable_cut_current_stepper_y: 0
variable_cut_current_stepper_z: 0
Change these to match the entries in printer.cfg if needed
variable_conf_name_stepper_x: "tmc2209 stepper_x"
variable_conf_name_dual_carriage: "tmc2209 dual_carriage"
variable_conf_name_stepper_y: "tmc2209 stepper_y"
variable_conf_name_stepper_z: "tmc2209 stepper_z"
variable_awd: True
Addon variables for cutter pin servo control
#variable_tool_servo_enable : False
#variable_tool_servo_name : "tool_cut"
#variable_tool_servo_angle_out : 115
#variable_tool_servo_angle_in : 0
#--=================================================================================-
#------- Poop ----------------------------------------------------------------------
#--=================================================================================-
[gcode_macro _AFC_POOP_VARS]
description: Poop macro configuration variables
gcode: # Leave empty
variable_purge_loc_xy : 8, -15 # (x,y) Location of where to purge
variable_purge_spd : 6.5 # Speed, in mm/s, of the purge.
variable_z_purge_move : True # Set to False to not move in Z during poop
Speed, in mm/s to lift z after the purge is completed. Its a faster lift to keep it from
sticking to the toolhead
variable_fast_z : 200
variable_z_lift : 10 # Z height to raise above the final purge position after the purge is completed as part of the fast z move
# example: If final poop height ends at 20mm this variable will raise Z to 30mm
If the toolhead returns to initial position after the poop is complete.
variable_restore_position : False # True = return to initial position, False = don't return
The z height of the nozzle at the purge position before purging. This allows any built up
pressure to escape before the purge.
variable_purge_start : 0.6
Set the part cooling fan speed. Disabling can help prevent the nozzle from cooling down
and stimulate flow, Enabling it can prevent blobs from sticking together.
variable_part_cooling_fan : True # Run it at full speed
variable_part_cooling_fan_speed : 1.0 # Speed to run fan when enabled above. 0 - 1.0
variable_purge_cool_time : 2 # Time to pause after purge to allow fan to cool the poop in seconds
==================== PURGE LENGTH TUNING
Default purge length to fall back on when neither the tool map purge_volumes or
parameter PURGE_LENGTH is set.
variable_purge_length : 72.111
The absolute minimum to purge, even if you don't changed tools. This is to prime the
nozzle before printing
variable_purge_length_minimum : 60.999
The slicer values often are a bit too wasteful. Tune it here to get optimal values. 0.6
is a good starting point.
#variable_purge_length_modifier : 1
Length of filament to add after the purge volume. Purge volumes don't always take
cutters into account and therefor a swap from red to white might be long enough, but
from white to red can be far too short. When should you alter this value:
INCREASE: When the dark to light swaps are good, but light to dark aren't.
DECREASE: When the light to dark swaps are good, but dark to light aren't. Don't
forget to increase the purge_length_modifier
#variable_purge_length_addition : 0
#--=================================================================================-
#------- Kick ----------------------------------------------------------------------
#--=================================================================================-
[gcode_macro _AFC_KICK_VARS]
description: Kick macro configuration variables
gcode: # Leave empty
variable_kick_start_loc : -1,-1,5 # Location to move before kick
variable_kick_z : 1.5 # Height to drop to for kick move
variable_kick_speed : 150 # Speed of kick movement
variable_kick_accel : 0 # Accel of kick moves. This will overwrite the global accel for this macro. Set to 0 to use global accel
variable_kick_direction : "right" # Direction to make the kick move (left, right, front, back)
variable_kick_move_dist : 45 # How far to move to kick poop off
variable_z_after_kick : 10 # Height of z after kick move
#--=================================================================================-
#------- Brush ---------------------------------------------------------------------
#--=================================================================================-
[gcode_macro _AFC_BRUSH_VARS]
description: Brush macro configuration variables
gcode: # Leave empty
variable_brush_loc : 29,-13.5,-1 # Position of the center of the brush (Set z to -1 if you dont want a z move)
variable_brush_clean_speed : 150 # Speed of cleaning moves when brushing
Accel of cleaning moves when brushing. This will overwrite the global accel for this macro. Set to 0 to use global accel
variable_brush_clean_accel : 0
variable_brush_width : 50 # Total width in mm of the brush in the X direction
variable_brush_depth : 2 # Total depth in mm of the brush in the Y direction
variable_y_brush : True # True - Brush along Y axis first then X. False - Only brush along x
variable_brush_count : 4 # Number of passes to make on the brush.
Move in Z after brush to avoid bed if brush is at Z0 (Set z to -1 if you dont want a z move)
variable_z_move : -1
Addon variables for brush servo control
#variable_tool_servo_enable : False
#variable_tool_servo_name : "tool_brush"
#variable_tool_servo_angle_out : 115
#variable_tool_servo_angle_in : 0
#--=================================================================================-
#------- Park ----------------------------------------------------------------------
#--=================================================================================-
[gcode_macro _AFC_PARK_VARS]
description: Park macro configuration variables
gcode: # Leave empty
variable_park_loc_xy : 327, -14 # Position to park the toolhead
If you want z_hop during toolchanges please set the value in the AFC.cfg
variable_z_hop : 20 # Height to raise Z when moving to park. Leave 0 to disable
variable_park_z : 0 # Absolute height to lower to after park move. Leave 0 to disable
# This is intended to be used to reduce oozing during loading / unload right before a poop.
# Typically this would be set at the variable_purge_start value when needed.
