it is necessary to measure the tool height after each tool change in order for CNC12 to know exactly where the tip of the tool is in relation to the machine coordinates. The best way to measure tool height is with a Tool Setter device also know as Tool Touch Off Plate (TT). There are many different kind of Touch Off Plates available.
There are very cheap, simple but surprisingly accurate conductive TTs like this:
Note: If you are using a TT with a clip, you might consider installing a permanent wire on top of the spindle and route it along the motor wires to the control box. If your spindle doesn't have ceramic bearings, the chances are very high that such a solution will work with your spindle and will make things much easier if there's no more need to attach a clip to the tool at every tool change.
Or there are more sophisticated Electronic Tool Setter like this:
There are two methods to measure tool heights and set WCS Z0 with a TT that are very common:
Single, movable TT Method
This method involves just one movable TT device that’s being placed on top of the workpiece to measure each tool.
Dual Probe Method
This is the preferred method when many tool changes are required within a job and works with the following Probe Combinations:
- A movable and a fixed TT (Preferred Option)
- A single TT only that can be used as a movable and a fixed TT
- A Touch Probe and a fixed TT
If a job file requires multiple tool changes, the best work flow is to add the measurement of the tool height into the tool change command M6. With a default CNC12 installation, CNC12 is using a very basic built in M6 function that makes sure the spindle is stopped with an M5 command, Z axis is retracted to the tool change position and a basic message to insert the new tool is displayed.
CNC12 gives the flexibility to replace the built in M6 command by placing a file mfunc6.mac into the C:\cncm folder that contains customized commands that are executed each time a M6 command occurs in the job file. The Centroid Forum website offers some examples of the mfunc6.mac files that support the Single and Dual TT Method. While these scripts do their job if configured correctly, they are not very flexible and definitely not “sexy”. You will know what I mean by that if you have tried to write CNC12 scrips that have multiple choice selections.
These limitations are part of the reasons why I have written the ProbeApp. Because the ProbeApp is dynamically generating probing scripts based on selections made in the App, it allows for much greater flexibility to turn options on and off based on requirements. ProbeApp also allows to make any other probing while the machine is on a M6 Tool Change hold. As an example it would be possible to use a Corner Finder Plate at the first Tool Change to set WCS Part 0 at the corner of the workpiece in addition to set WCS Z0 with the Tool Touch Plate.
if you are using the Single or Dual TT Method, I encourage you to look at the examples below to see what benefits you will gain by replacing the native CNC12 script with the ProbeApp.
Using the Tool Setter of the ProbeApp for Tool Height Measurements
There are just a couple of configuration steps that are described below to make the ProbeApp Tool Setter work with your machine:
Step 1: Run the ProbeApp-Tool Offsetter and it will walk you through a Guided Setup Questionnaire and will configure everything based on your answers to the questions. If you have the correct machine to use the Tool Setter, you should end up with the "Don't use the Tool Offset Library" method which will force all Tool Height Offsets to be 0 for a proper and safe operation with this method.
Step 2: Create/modify the M6 script mfunc6.mac to integrate the ProbeApp
The installation script of the ProbeApp does place a file named mfunc6.mac.customize-for-ProbeApp into your C:\cncm folder.
Either use this as your base file by renaming it to mfunc6.mac and add any logic to it that your machine needs.
If you want to use your existing mfunc6.mac file, ProbeApp V2 makes it now very simple to call the ProbeApp and have it opening directly on a specific Probing Cycle screen. The CNC12 variable #29500 can be used to temporarily overwrite the default Probing Cycle when the ProbeApp is called with the M58 command.
Adding these two simple lines to the end of your existing mfunc6.mac file will open the ProbeApp in Tool Setter mode at each M6 Tool Change command:
Code: Select all
.
.
#29500 = 13 ; Will tell ProbeApp to open in ToolSetter mode
M58 ; Will open ProbeApp
- Open the MDI in CNC12
- Type in the commands T1 M6 and press “Cycle Start”
- CNC12 should now present you with a message to insert Tool #1
- Insert Tool #1 and press “Cycle Start”
- The Tool Setter screen of the ProbeApp should come up now if everything was setup correctly
How to configure the Single TT Method
Make sure the Single TT Method is active by selecting the Middle Tab on Top of the Tool Setter screen named “Single TT Method”:
Now select “Configuration” on the bottom left of the screen and the Configuration Screen comes up. On this screen, the behavior of the probing cycle can be customized. The configuration parameters are pretty much self-explanatory but if you need more information on a parameter, click the “?” on the top right of the screen. When the cursor turns into a “?”, click the parameter in question and a popup help bubble will show more details. You can also consult the User Guide for more details.
By default all messages are checked and need to be confirmed with a “Cycle Start” to continue. I recommend to keep the default settings at first and have messages skipped later if you think they are not necessary or you can configure the messages to display for a certain amount of time before the script automatically continues.
As you can see on the configuration screen, the ProbeApp supports the movable TT configured in CNC12 as Touch Probe (TP) or as Tool Touch Off (TT). If you are unsure if your movable TT is configured as a TP or TT, check how the Input the device is connected to is configured in the CNC12 Wizard. If the Input is configured as “ProbeTripped” it is a TP, if it’s configured as “ToolTouchOffTriggered” it’s a TT. Also the ProbeApp can either use the height of the movable TT that’s being configured in the CNC12 Wizard (and stored in CNC12 Parameter 71) even if the movable TT is configured as a TP, or you can enter the height of the movable TT directly in the ProbeApp. The units of all parameters are always the machines default units (inch or mm).
After all configuration parameters are set, click the “Save Configuration” button. The Single TT Method is now ready to put in action.
The Single TT Method has two cycle buttons and 3 selectable options.
What do the options do:
- Test TT before Probing: This option will add a TT test procedure at the beginning of the probing cycle. A message will ask the user to manually trigger the TT by moving the TT up to touch the tool. If a trigger signal is seen by CNC12 a confirmation message will be displayed that the TT is working properly. The probing cycle will not start until the trigger signal has occurred.
- Fast Probing Speed first: This option allows to change the probing behavior on the fly for each tool. If this option is not checked, only one tool touch of probing move is done in slow probing speed. If the option is turned on, a probing move in fast probing speed is done first followed by a slow probing speed move. If this option is turned on or off by default depends on how this setting is configured on the Configuration page
- Use WCS#: The default option is to set WCS Z0 with the currently active WCS (listed on the top left corner of CNC12) but any of the available WCS numbers can be selected if needed. The number of available WCS numbers depends on the version of CNC12 and is automatically adjusted by the ProbeApp.
What exactly do the Probing Cycles do?
Cycle: Set Selected WCS# for active Tool to Z0
By default this cycle will set Z0 for the currently active tool and WCS# on the bottom of the TT or with other words, on top of the workpiece. If a Z Offset is desired instead of Z0, an offset can be entered instead of the default 0.
These are the steps of this Cycle:
- Optional: If a fixed probing location for the movable TT was configured, move to the configured X and Y position .
- Optional: If "Test TT before Probing” is selected, a TT test cycle is done. A message will ask the user to manually trigger the TT. The probing cycle will not continue until a successful trigger signal has been received by CNC12. A message that can be customized will be displayed when the TT triggered successfully. The duration this message is been displayed before the cycle continues can be configured. By default the message must be confirmed with a “Cycle Start”.
- Optional: Display a message before the probing cycle of the movable TT starts. The message text can be customized and can include a warning to attach a clip to the tool if needed. If this option is turned off, the probing of the movable TT will start without issuing a message first.
- Executing the probing move with the movable TT at the current X and Y Axes position. The probing move can be a single, slow probing speed move or a double touch by doing a fast probing speed move first followed by a slow probing speed move. This probing behavior can be changed for each tool if needed by using the “Fast Probing Speed First” option.
- Reset the selected WCS# to Z0 (or an offset if one was entered) on top of the workpiece by adjusting the measured position on top of the movable TT by the configured height of the TT.
- Optional: If selected, a message will be displayed that WCS# has been reset to Z0 (or the entered offset). The DRO of the Z-Axis should now show the height of the movable TT (plus/minus an entered offset) as the tool tip is now exactly above the workpiece surface by the distance of the TT height. The length of time this message is being displayed before the probing cycle continues automatically can be configure. Default is to display the message indefinitely and it needs to be confirmed with a “Cycle Start”.
- Retract the Z Axis to the configured return position
- Optional: Display a customizable message that can include a warning to remove the movable TT at this point. It is not recommended to turn this message off as the probing cycle will go to the next step without a warning.
- Optional: Moves to the selected X and Y return position after the probing cycle if any was configured. The default is “No Move” which will leave the machine at the position the probing took place.
Cycle: Continue without Tool Probing
This is not really a cycle as it just closes the ProbeApp and gives control back to CNC12 to continue with the job file. This is being used when a M6 Tool Change command starts up the Tool Setter but there’s no Tool Height measurement needed.
Now let’s test the Probing Cycles to make sure they are configured correctly. Follow the steps below to test the cycle safely:
Safely testing the Single TT Method
- Make sure the option “Test TT before Probing” is checked
- Press the icon “Set Selected WCS# for active Tool to Z0”
- The ProbeApp Tool Setter screen should now close and give control back to CNC12
- CNC12 should now display a message “Press Cycle Start to begin Probing Cycle, Press Cycle Cancel to Exit”
- Do NOT press “Cycle Start” at this point as we want to check the script first that the Tool Setter has generated before we let CNC12 execute the script
- Open a Windows File Explorer, navigate to the directory “C:\cncm\ncfiles” and open the file “probing_cycle.cnc” in a editor
- Verify that the script is doing what it’s supposed to do. Every step in the script has a header explaining what it does
- If the script looks good, close the editor and go back to CNC12
- Now turn the “Feedrate Overwrite” way down to 10% and then press “Cycle Start”
- You should now see the “Tool Touch Off Plate Function Test” flashing on the screen
- Move the TT to touch the tool to manually trigger the TT
- If CNC12 does recognize the trigger signal, it will display the message “Movable TT Functionality Confirmed”
- Press "Cycle Start” and the next message will be displayed “Jog Tool over Tool Touch Off Plate”
- Place the movable TT anywhere on top of the workpiece and jog the tool above it
- Press “Cycle Start” and the Probing Move should begin. Keep your finger on the “Feed Hold” button just in case
- If the probing move went well you should now see the Z-Axis DRO set to the height value of the TT, meaning that the Z0 position for the tool in the spindle is exactly on top of the workpiece
- Press Cycle Start and the Z-Axis will retract to the configured Z return position
- The Warning message to remove the movable TT will be displayed
- Remove the TT and press “Cycle Start”
- If a X and Y return position is configured, the machine will return to those coordinates to end the cycle. If “No Move” is configured, the cycle ends at the current position
- To verify that the Z0 position has been properly set for this tool on top of the workpiece, jog the tool manually down to Z0 and make sure it’s exactly at the level of the top surface.
You can always go back and further customize the messages to your needs and likings. Any change will take immediate effect in the next probing cycle.
How to configure the Dual Probe Method
With ProbeApp v2 it is now possible to use a Touch Probe to find the top of the stock and measure the Reference Height Offset between the top of the stock and the top of the fixed TT
So what is actually different with this method?
In addition to the movable TT, this method also uses a second TT that’s being installed in a fixed location on the machine table. The X and Y axis position of the fixed TT are usually configured in one of the Return Variables G30, G30 P3 or G30 P4 or can be configured directly in the ProbeApp with the G53 option. Also as of ProbeApp v2, a Touch Probe can be used instead of the movable TT.
With this method, the first tool change of a new job involves a measurement of the tool with the movable TT as well as the fixed TT while all subsequent tool changes are done with the fixed TT only. During the first tool change, the first tool measurement is made with the movable TT on top of the workpiece to find the actual position of the top surface of the stock. A second measurement with the same tool then is made with the fixed TT. This second measurement with the fixed TT allows to calculate the exact distance between the top of the fixed TT and the top of the workpiece. This calculated distance is called “Reference-Height”. Because the Tool Setter now knows the distance from the top of the fixed TT to the top of the workpiece, all subsequent tool measurements with the fixed TT can be adjusted by the Reference-Height to set WCS Z0 for the tool exactly on top of the workpiece.
Note that when using a Touch Probe instead of the movable TT, the first cycle will just find the top of the stock and measure the Reference Height Offset and then present a message to remove the Touch Probe and insert the requested tool. After pressing the Cycle Start button, the ProbeApp-ToolSetter will open again and the tool needs to be measured with Cycle 2 like a subsequent tool.
This method offers the convenience to automatically measure the tools with the fixed TT and eliminates the need for the operator to place and remove the movable TT on top of the workpiece after every tool change.
Configuring the Dual Probe Method:
Make sure the Dual Probe Method is active by selecting the Left Tab on Top of the Tool Setter screen named “Dual Probe Method”:
Now select “Configuration” on the bottom left of the screen and the Configuration Screen comes up. On this screen, the behavior of the probing cycle can be customized. The configuration parameters are pretty much self-explanatory but if you need more information on a parameter, click the “?” on the top right of the screen. When the cursor turns into a “?”, click the parameter in question and a popup help bubble will show more details. You can also consult the User Guide for more details.
By default all messages are checked and need to be confirmed with a “Cycle Start” to continue. I recommend to keep the default settings at first and have messages skipped later if you think they are not necessary or you can configure the messages to display for a certain lenght of time before the script automatically continues.
As you can see on the configuration screen, the ProbeApp supports all kind of combinations of the movable or fixed TT being configured in CNC12 as Touch Probe (TP) or as Tool Touch Off (TT). If you are unsure if your TT is configured as a TP or TT, check how the Input the device is connected to is configured in the CNC12 Wizard. If the Input is configured as “ProbeTripped” it is a TP, if it’s configured as “ToolTouchOffTriggered” it’s a TT. If both TT’s are off the same type (NO or NC) it is recommended to connect both to the same Input (parallel for NO, serial for NC).
Also the ProbeApp can either use the height of the movable TT that’s being configured in the CNC12 Wizard (and stored in CNC12 Parameter 71) even if the movable TT is configured as a TP, or you can enter the height of the movable TT directly in the ProbeApp. The units of all parameters are always the machines default units (inch or mm).
After all configuration parameters are set, click the “Save Configuration” button. The Dual TT Method is now ready to put in action.
The Dual Probe Method has three cycle buttons and 4 selectable options.
What do the options do:
- Test TT (movable TT only): This option will add a test procedure at the beginning of the probing cycle that involves the movable TT. A message will ask the user to manually trigger the TT by moving the TT up to touch the tool. If a trigger signal is seen by CNC12 a confirmation message will be displayed that the TT is working properly. The probing cycle will not start until the trigger signal has occurred.
- Fast Probing Speed first: This option allows to change the probing behavior on the fly for each tool. If this option is not checked, only one tool touch of probing move is done in slow probing speed. If the option is turned on, a probing move in fast probing speed is done first followed by a slow probing speed move. If this option is turned on or off by default depends on how this setting is configured on the Configuration page
- Use WCS#: The default option is to set WCS Z0 with the currently active WCS (listed on the top left corner of CNC12) but any of the available WCS numbers can be selected if needed. The number of available WCS numbers depends on the version of CNC12 and is automatically adjusted by the ProbeApp.
What exactly do the Probing Cycles do?
Cycle: Set Top of Stock and set Reference Height Offset
This cycle is used for the first Tool Change in a new job to find the WCS Z0 position of the workpiece surface with the movable TT and measuring the Reference Height Offset with the fixed TT
These are the steps of this cycle:
- Optional: If "Test TT" is selected, a TT test cycle is done. A message will ask the user to manually trigger the TT. The probing cycle will not continue until a successful trigger signal has been received by CNC12. A message that can be customized will be displayed when the TT triggered successfully. The duration this message is been displayed before the cycle continues can be configured. By default the message must be confirmed with a “Cycle Start”.
- Optional: Display a message before the probing cycle of the movable TT starts. The message text can be customized and can include a warning to attach a clip to the tool if needed. If this option is turned off, the probing of the movable TT will start without issuing a message first.
- Executing the probing move with the movable TT at the current X and Y Axes position. The probing move can be a single, slow probing speed move or a double touch by doing a fast probing speed move first followed by a slow probing speed move. This probing behavior can be changed for each tool if needed by using the “Fast Probing Speed First” option.
- Reset the selected WCS# to Z0 on top of the workpiece by adjusting the measured position on top of the movable TT by the configured height of the TT.
- Optional: If selected, a message will be displayed that WCS# has been reset to Z0. The DRO of the Z-Axis should now show the height of the movable TT as the tool tip is now exactly above the workpiece surface by the distance of the TT height. The length of time this message is being displayed before the probing cycle continues automatically can be configure. Default is to display the message indefinitely and it needs to be confirmed with a “Cycle Start”.
- Retract the Z Axis to the configured return position
- Optional: Display a customizable message that can include a warning to remove the movable TT at this point. It is not recommended to turn this message off as the probing cycle will go to the next step without a warning.
- Moves to the configured X and Y coordinates of the fixed TT.
- Probing move with the fixed TT to measure the Reference Height Offset
- Optional: If selected displays the measured Z Reference Height Offset
- Retract Z to the configured retract position
- Optional: Moves to the selected X and Y return position after the probing cycle if any was configured. The default is “No Move” which will leave the machine at the position the probing took place.
Cycle: Set Z0 with Fixed TT - Ref Height Offset 9.7075
This cycle is used for all subsequent Tool Changes after the Reference Height Offset has been established with the first Tool Change. This cycle involves the fixed TT only. The Reference Height Offset that’s currently active is being displayed on this line and can be manually adjusted if needed.
Note that when using the Touch Probe instead of the movable TT, this step is also necessary for the first tool as the Touch Probe will only find the top of the stock and the Reference Height Offset in the first cycle.
These are the steps of this cycle:
- Move to the X and Y Axes position of the fixed TT
- Executing the probing move with the fixed TT. The probing move can be a single, slow probing speed move or a double touch by doing a fast probing speed move first followed by a slow probing speed move. This probing behavior can be changed for each tool if needed by using the “Fast Probing Speed First” option.
- Reset the selected WCS# to Z0 on top of the workpiece for the active tool by adjusting the measured position on top of the fixed TT by the Reference Height Offset.
- Optional: If selected, a message will be displayed that WCS# has been reset to Z0. The length of time this message is being displayed before the probing cycle continues automatically can be configure. Default is to display the message indefinitely and it needs to be confirmed with a “Cycle Start”.
- Retract the Z Axis to the configured return position
- Optional: Moves to the selected X and Y return position after the probing cycle if any was configured. The default is “No Move” which will leave the machine at the position the probing took place.
Cycle: Continue without Tool Probing
This is not really a cycle as it just closes the ProbeApp and gives control back to CNC12 to continue with the job file. This is being used when a M6 Tool Change command starts up the Tool Setter but there’s no Tool Height measurement neededs.
Now let’s test the Probing Cycles to make sure they are configured correctly. Follow the steps below to test the cycles safely:
Safely testing the Dual TT Method
Make sure the fixed TT is working properly and does recognize a trigger signal as the fixed TT is not being tested for functionality by this cycle.
If you don’t have the ProbeApp Tool Setter up and running at this time, follow these steps to start it up, otherwise jump right to the test steps below:
- Open the MDI in CNC12
- Type in the commands T1 M6 and press “Cycle Start”
- CNC12 should now present you with a message to insert Tool #1
- Insert Tool #1 and press “Cycle Start”
- The Tool Setter screen of the ProbeApp should come up
- Make sure the option “Test TT” is checked
- Press the icon “Set Top of Stock and set Reference Height Offset”
- The ProbeApp Tool Setter screen should now close and give control back to CNC12
- CNC12 should now display a message “Press Cycle Start to begin Probing Cycle, Press Cycle Cancel to Exit”
- Do NOT press “Cycle Start” at this point as we want to check the script first that the Tool Setter has generated before we let CNC12 execute the script
- Open a Windows File Explorer, navigate to the directory “C:\cncm\ncfiles” and open the file “probing_cycle.cnc” in a editor
- Verify that the script is doing what it’s supposed to do. Every step in the script has a header explaining what it does
- If the script looks good, close the editor and go back to CNC12
- Now turn the “Feedrate Overwrite” way down to 10% and then press “Cycle Start”
- You should now see the “Tool Touch Off Plate Function Test” flashing on the screen
- Move the TT to touch the tool to manually trigger the TT
- If CNC12 does recognize the trigger signal, it will display the message “Movable TT Functionality Confirmed”
- Press "Cycle Start” and the next message will be displayed “Jog Tool over Tool Touch Off Plate”
- Place the movable TT anywhere on top of the workpiece and jog the tool above it
- Press “Cycle Start” and the Probing Move should begin. Keep your finger on the “Feed Hold” button just in case
- If the probing move went well you should now see the Z-Axis DRO set to the height value of the TT, meaning that the Z0 position for the tool in the spindle is exactly on top of the workpiece
- Press Cycle Start and the Z-Axis will retract to the configured Z return position
- The Warning message to remove the movable TT will be displayed
- Remove the TT and press “Cycle Start”
- The machine will now move to the fixed TT position and start the probing move right away. Keep the finger on the Feed Hold button just in case the location of the fixed TT has been misconfigured.
- The measured Reference Height Offset will be displayed
- Press “Cycle Start” and the Z Axis will retract to the configured position
- If a X and Y Axes return position is configured, the machine will move to that location and end the cycle. If “No Move” is selected, the cycle will end at the current X and Y position
Now let’s test the cycle for the subsequent tool changes with the fixed TT only with the following steps:
- Open the MDI in CNC12
- Type in the commands T2 M6 and press “Cycle Start”
- CNC12 should now present you with a message to insert Tool #2
- Insert Tool #2 and press “Cycle Start”
- The Tool Setter screen of the ProbeApp should come up again
- This time press the second icon “Set Z0 with Fixed TT - Reference Height Offset x”
- The ProbeApp Tool Setter screen should now close and give control back to CNC12
- CNC12 should now display a message “Press Cycle Start to begin Probing Cycle, Press Cycle Cancel to Exit”
- Do NOT press “Cycle Start” at this point as we want to check the script first that the Tool Setter has generated before we let CNC12 execute the script
- Open a Windows File Explorer, navigate to the directory “C:\cncm\ncfiles” and open the file “probing_cycle.cnc” in a editor
- Verify that the script is doing what it’s supposed to do. Every step in the script has a header explaining what it does
- If the script looks good, close the editor and go back to CNC12
- Now turn the “Feedrate Overwrite” way down to 10% and then press “Cycle Start”
- The machine will now move to the fixed TT position and start the probing move right away. Keep the finger on the Feed Hold button just in case the location of the fixed TT has been misconfigured.
- The WCS Z0 reset message will be displayed
- Press “Cycle Start” and the Z Axis will retract to the configured position
- If a X and Y Axes return position is configured, the machine will move to that location and end the cycle. If “No Move” is selected, the cycle will end at the current X and Y position
- Jog the tool manually to Z0 and verify that the tool tip is exactly at the level of the workpiece top surface
If this all went well the machine has now been successfully configured to use the ProbeApp Tool Setter for all Tool Height Measurements and WCS Z0 settings with the Dual TT Method.
You can always go back and further customize the messages to your needs and likings. Any change will take immediate effect in the next probing cycle.
The Return Feature
If you have the need to run multiple probing cycles during a M6 tool change hold use the Return feature. If “Return” has been checked, the ProbeApp will reopen after the current cycle has been finished. This allows to run multiple, different probing cycles before the job file continues. If you don't see the Return checkbox, check out this section of the ProbeApp User Guide and look for the “Return Feature”.
As an example, this would allow during the first tool change of a job to probe WCS X0 Y0 at the corner of a new workpiece with a Corner Finder Plate and then return to the ProbeApp to measure the tool height offset and set WCS Z0 with the Touch Off Plate.
If you have any questions regarding the Tool Setter or if there are any issues setting it up, please post here in this thread and I’ll be happy to assist.
Also any suggestions to improve this Tool Setter are welcome.
-swissi