Tool Length Sensor (TLS) for e.g. tool changing
-
Hey guys,
I worked on a tool length sensor which some of you may find convenient in certain circumstances.
e.g.- nozzle change
- change of the hot-end
- tool changing
It is fully printable with some minor add ons which most of you have lying around. The Tool Length Senosr (TLS) can be wired in parallel to your z-probe (connecting between GND and IN), because its in fact a normally open microswitch.
I made a macro with conditional G-Code for it, which iterates through the defined number of tools. When the probe is hit by a clean cold nozzle (hot nozzle is possible as well with a small add-on) the current z position relative to the TLS is stored in G10 Commands and stored in the EEPROM (p.s. don't forget to add the needed command to your cofig.g).
;05.08.2020 M291 P"Please put Tool length sensor in the middle of the build plate and hit okay when done" R"Placing tool length sensor" S2 M291 P"ATTENTION: Machine is moving during the probing moves" R"ATTENTION" S2 G28 ; home G90 G1 X0 Y0 ; move to center G1 Z50 while iterations<#tools ;run as often as number of tools if tools[iterations] != null ; check if tool is really asigned M291 P"Please put Tool" ^ iterationis ^ " into the effector and hit okay when done" R"Tool [iterations]" S2 if sensors.gpIn[1].value=0 ; check if tool is in effector M291 S0 T3 P"Tool in effector" else {} M291 S0 T3 P"Tool not in effector" abort G91 M98 P"Alarmsound.g" G30 Z-45 S-1 if sensors.probes[0].value[0]>500 G10 P{iterations} X0 Y0 Z{move.axes[2].userPosition-12.5} M500 P10 G1 Z50 F500
If you have any questions or suggestions please feel free to ask
-