A tool breaking in the midst of a CNC machining operation is always a disaster. Not only do you have a broken tool (no small expense), but if the program continues to run there is a good chance it’ll end up ruining your part too. In particularly bad cases, it’s even possible to for this to damage the machine itself. However, if the breakage is detected soon enough, the program can be stopped in time to salvage the part and avoid damage to your machine.
Many new machining centers have the ability to automatically detect tool breaks, but this is a feature missing from older machines (and inexpensive modern machines). To address this issue, [Wiley Davis] came up with a process for adding broken tool detection to an older Haas mill. The physical modifications are relatively minor: he simply added a limit switch wired to the existing (but unused) M-Function port on the Haas control board. This port is used to expand the functionality of the machine, but [Wiley] didn’t need it anyway.
With the limit switch wired, [Wiley] then wrote a short subprogram to move the tool to the switch. When this subprogram is inserted into a part program, the machine will attempt to touch the tool to the switch. If contact is made, the program continues. If contact isn’t made, it just waits until the operator comes by to check things out. In most cases, this will mean the tool is broken, and the operator can proceed accordingly. Otherwise, the program can be continued from there.
While the instructions [Wiley] has posted are meant specifically for a Haas mill, a similar approach should work for most CNC mills. You’ll need an unused port for the limit switch (that you can access), but that isn’t uncommon. The g-code for the subprogram is generic and should work for most any mill. If you’ve just purchased your first CNC mill, this is a great way to avoid wasting material as you go about learning the basics of CNC machining.