1. On Siemens machines, each tool has a name and an internal ID. The tool name is not a number, but a string. To get the corresponding ID, use the GETT function. For example, to get the ID corresponding to tool 12, u use the call:

                R44= GETT(“12”) Note that tool ID may be shown in one of the settings of the tool 

  1. Each tool may have more than one cutting edge. You may think of a cutting edge as a tip in a star-probe cluster. You may have up to 12 cutting edges in any tool. 


  1. There are many parameters that can be used to access the tool-wear parameters. To understand how to use these parameters, look at the following example:

                R123=$TC_DP12[TOOL_ID,CEDGE]           ; CURRENT LENGTH WEAR

                R124=$TC_DP15[TOOL_ID,CEDGE]           ; CURRENT RADIUS WEAR

        Note the following:

  • The number After $TC_DP, 12 and 15 in our example, identifies what we need to access. For example, 12 is for length-wear, and 15 is for radius wear.
  • If the customer needs to use another parameter, other than 12 and 15, the number is the order of this parameter in the tabulated wear values on the Siemens controller. If the parameter is in row one, then the parameter number is 1, and so on.
  • TOOL_ID is the ID of the tool, and we get it using GETT function as I explained above
  • CEDGE is the cutting edge. Most of the time, this will be 1, 2, or 3. This depends on the customer’s needs

  1. Note that Siemens shows diameters and not radii.


  1. This information is enough for any of us to understand the macro AATTOOLOFFSETFB.SPF


  1. A typical line in the tools excel file CappsNCToolData.csv has the format: 

         Tool name, parameter number for length wear, parameter number for radius wear, edge number for length wear, edge number for radius             wear                  

         Example: For tool 12, cutting edge 1, the line is 12, 12, 15, 1, 1

  1. As we know, we use 2-3 variables for tool-offset feedback. They can be entered as shown in the following picture


  1. To use a macro, enter its name as shown below



        Note that we need to edit this macro and change it to use the right handshake/data variables, and change the parameters numbers.