How to use the Part Comping function in CAPPSNC
- 1 How to use the Part Comping function in CAPPSNC
- 2 How to Use Part Comping
- 3 Eamples
- 3.1 Example #1: Managing MASTER and COMPARE modes in a program
- 3.2 Example #2: Program example using only 1 COMPARE block for multiple features with a user specified .prtmst file.
- 3.3 Example #3: Program example using only individual COMPARE block for multiple features with user specified .prtmst files
How to use the Part Comping function in CAPPSNC
The Part Comping option allows the machine to be “MASTERED” to a part. This function can remove error due to environmental factors and variability often found in the shop environemnt.
Methods of Part Comping
Master to a part
This option relies on a part to have minimal error. The selected part is measured on the CNC machine using a CAPPSNC program in “MASTER” mode. All part deviations are recorded in an offset file which will compensate each feature point by point. After that, all parts are measured in COMPARE mode. CAPPSNC will compensate all measured data based on the master part.
Master to a part with a Calibration file
A part is selected and measured on a CMM. All part deviations are recorded and compensated for in a Calibration file. This part, along with the Calibration file, makes a perfect master file. This method also gives the user traceability back to a known, certified metrology device, the CMM. When this part is run on the CNC in “MASTER” mode error due to environmental conditions will be combined with the error from the Calibration file to compensate all measured parts.
How to Use Part Comping
Part Comping is found in the Measure Tab
Part Comping dialog
Part Comping Modes and associated DMIS commands:
None (Default): No part comping is applied to feature measurements. This is the default setting for this dialog
DMIS Command: COMPARE/MODE,DISABLE
Generate Master File: Part is measured without comping applied. This option will build the .prtmst. Any error found during the measurement is written into the .prtmst file.
DMIS Command: COMPARE/MODE,MAKEMSTR
Apply MST / CLB files: Apply comping to feature measurement. This option will apply the .prtmst file to the feature measurement in the program. All parts measured will be comped to the MASTER part
DMIS Command: COMPARE/MODE,ENABLE
Generate Calibration File: This function MUST be used on a CMM, not on the CNC machine. This option creates a .prtcal file which contains deviation data measured in the controlled metrology environment and is traceable to the certification of the CMM machine.
DMIS Command: COMPARE/MODE,MAKECLIB
Master File: Location and name of MASTER file
If this field is left blank, the .prtmst file will be saved in the program folder and be given the same name as the program. The DMIS code will not reference a .prtmst file as the location is defaulted to the program folder. The DMIS code will look like this.
Make Master File: COMPARE/MODE,MAKEMSTR
Apply Master File: COMPARE/MODE,ENABLE
If the location and the name of the .prtmst file is not left blank, the DMIS code will reference the location and name of the .prtmst file
Make Master File:
COMPARE/MODE,MAKEMSTR
COMPARE/ON,MST,'C:\CappsNC8\Files\NCFiles\MyProgram.prtmst'
Apply Master File:
COMPARE/MODE,ENABLE
COMPARE/ON,MST,'C:\CappsNC8\Files\NCFiles\MyProgram.prtmst'
The MASTER file selection option is disabled unless the “Turn Part Comping ON option is enabled
Calibration File: Location and name of CALIBRATION file
If this field is left blank, the .prtcal file will be saved in the program folder and be given the same name as the program. The DMIS code will not reference a .prtcal file as the location is defaulted to the program folder. The DMIS code will look like this.
Make Calibration File: COMPARE/MODE,MAKECLIB
Apply Calibration File: COMPARE/MODE,ENABLE
If the location and the name of the .prtcal file is not left blank, the DMIS code will reference the location and name of the .prtcal file
Make Calibration File
COMPARE/MODE,MAKECLIB
COMPARE/ON,CAL,'C:\CappsNC8\Files\NCFiles\MyProgram.prtcal'
Apply Calibration File (Note Both .prtmst & .prtcal files will be referenced):
COMPARE/MODE,ENABLE
COMPARE/ON,CAL,'C:\CappsNC8\Files\NCFiles\MyProgram.prtcal',MST,'C:\CappsNC8\Files\NCFiles\MyProgram.prtmst'
Turn Part Comping OFF: Disable Part Comping function
Turns off Part Comping if necessary. The following DMIS command will be added to the program.
COMPARE/OFF
Turn Part Comping ON: Enable Part Comping function
Turns on Part Comping function. The following DMIS code will be added to the program. Paths and filenames of the .prtmst & .prtcal are added if default is not used
Make MASTER file
COMPARE/MODE,MAKEMSTR
COMPARE/ON
Make MASTER file with Calibration File enabled
COMPARE/MODE,MAKEMSTR
COMPARE/ON,CAL
Apply MASTER file
COMPARE/MODE,ENABLE
COMPARE/ON
Apply MASTER file with Calibration File enabled
COMPARE/MODE,ENABLE
COMPARE/ON,CAL
Reset Button: Reset Comping State
Reset Comping option. This option does not write any DMIS code
Add DMIS: Add DMIS code based on options selected in the dialog
Cancel: Close the dialog and do not add any DMIS code based on the options currently selected
Eamples
Example #1: Managing MASTER and COMPARE modes in a program
The same program can be used to both create a MASTER file and apply a MASTER file. This can be managed with the use of a conditional block.
Here is an example of some DMIS code that uses a variable from a G-Code file to determine if the program should create or apply the MASTER file.
In this example, the macro variable R200 will be set to either 0 or 1 from the G-Code. An input of 0 will set the program to create a MASTER file, an input of 1 will set the program to apply the MASTER file to the part measurement. The feature that will be comped is the circle feature that is contained in between the COMPARE/ON and the COMPARE/OFF commands.
DECL/INTGR,MODE_INPUT
CAPPS/CNCREAD,200,MODE_INPUT
$$
IF/(MODE_INPUT.EQ.0)
COMPARE/MODE,MAKEMSTR
ELSE
IF/(MODE_INPUT.EQ.1)
COMPARE/MODE,ENABLE
ENDIF
$$
GOTO/0.0000,0.0000,100.0000
$$
COMPARE/ON
$$
F(CR1)=FEAT/CIRCLE,INNER,CART, 23.5000,75.5000,26.0000,-0.0000,0.0000,1.0000,7.5000
MEAS/CIRCLE,F(CR1),7
SNSET/APPRCH,2.7500
GOTO/23.5000,75.5000,38.0000
PTMEAS/CART,27.2500,75.5000,24.0000,-1.0000,-0.0000,-0.0000
PTMEAS/CART,25.8381,78.4319,24.0000,-0.6235,-0.7818,0.0000
PTMEAS/CART,22.6655,79.1560,24.0000,0.2225,-0.9749,0.0000
PTMEAS/CART,20.1214,77.1271,24.0000,0.9010,-0.4339,0.0000
PTMEAS/CART,20.1214,73.8729,24.0000,0.9010,0.4339,0.0000
PTMEAS/CART,22.6655,71.8440,24.0000,0.2225,0.9749,-0.0000
PTMEAS/CART,25.8381,72.5681,24.0000,-0.6235,0.7818,-0.0000
GOTO/23.5000,75.5000,38.0000
SNSET/APPRCH,15.0000
ENDMES
COMPARE/OFF
Example #2: Program example using only 1 COMPARE block for multiple features with a user specified .prtmst file.
DECL/INTGR,MODE_INPUT
CAPPS/CNCREAD,200,MODE_INPUT
$$
IF/(MODE_INPUT.EQ.0)
COMPARE/MODE,MAKEMSTR
ELSE
IF/(MODE_INPUT.EQ.1)
COMPARE/MODE,ENABLE
ENDIF
$$
GOTO/0.0000,0.0000,100.0000
$$
COMPARE/ON,MST,'C:\CappsNC8\Files\NCFiles\Circle_Comp_File.prtmst'
$$
F(CR1)=FEAT/CIRCLE,INNER,CART, 23.5000,75.5000,26.0000,-0.0000,0.0000,1.0000,7.5000
MEAS/CIRCLE,F(CR1),7
SNSET/APPRCH,2.7500
GOTO/23.5000,75.5000,38.0000
PTMEAS/CART,27.2500,75.5000,24.0000,-1.0000,-0.0000,-0.0000
PTMEAS/CART,25.8381,78.4319,24.0000,-0.6235,-0.7818,0.0000
PTMEAS/CART,22.6655,79.1560,24.0000,0.2225,-0.9749,0.0000
PTMEAS/CART,20.1214,77.1271,24.0000,0.9010,-0.4339,0.0000
PTMEAS/CART,20.1214,73.8729,24.0000,0.9010,0.4339,0.0000
PTMEAS/CART,22.6655,71.8440,24.0000,0.2225,0.9749,-0.0000
PTMEAS/CART,25.8381,72.5681,24.0000,-0.6235,0.7818,-0.0000
GOTO/23.5000,75.5000,38.0000
SNSET/APPRCH,15.0000
ENDMES
$$
F(CR2)=FEAT/CIRCLE,INNER,CART, 11.5000,115.0000,26.0000,0.0000,0.0000,1.0000,9.5000
MEAS/CIRCLE,F(CR2),7
SNSET/APPRCH,3.7500
GOTO/11.5000,115.0000,38.0000
PTMEAS/CART,16.2500,115.0000,24.0000,-1.0000,0.0000,0.0000
PTMEAS/CART,14.4616,118.7137,24.0000,-0.6235,-0.7818,0.0000
PTMEAS/CART,10.4430,119.6309,24.0000,0.2225,-0.9749,0.0000
PTMEAS/CART,7.2204,117.0609,24.0000,0.9010,-0.4339,-0.0000
PTMEAS/CART,7.2204,112.9391,24.0000,0.9010,0.4339,-0.0000
PTMEAS/CART,10.4430,110.3691,24.0000,0.2225,0.9749,-0.0000
PTMEAS/CART,14.4616,111.2863,24.0000,-0.6235,0.7818,-0.0000
GOTO/11.5000,115.0000,38.0000
SNSET/APPRCH,15.0000
ENDMES
$$
F(CR3)=FEAT/CIRCLE,INNER,CART, 47.5000,115.0000,26.0000,0.0000,0.0000,1.0000,9.5000
MEAS/CIRCLE,F(CR3),7
SNSET/APPRCH,3.7500
GOTO/47.5000,115.0000,38.0000
PTMEAS/CART,52.2500,115.0000,24.0000,-1.0000,0.0000,0.0000
PTMEAS/CART,50.4616,118.7137,24.0000,-0.6235,-0.7818,0.0000
PTMEAS/CART,46.4430,119.6309,24.0000,0.2225,-0.9749,0.0000
PTMEAS/CART,43.2204,117.0609,24.0000,0.9010,-0.4339,-0.0000
PTMEAS/CART,43.2204,112.9391,24.0000,0.9010,0.4339,-0.0000
PTMEAS/CART,46.4430,110.3691,24.0000,0.2225,0.9749,-0.0000
PTMEAS/CART,50.4616,111.2863,24.0000,-0.6235,0.7818,-0.0000
GOTO/47.5000,115.0000,38.0000
SNSET/APPRCH,15.0000
ENDMES
COMPARE/OFFExample #3: Program example using only individual COMPARE block for multiple features with user specified .prtmst files
DECL/INTGR,MODE_INPUT
CAPPS/CNCREAD,200,MODE_INPUT
$$
IF/(MODE_INPUT.EQ.0)
COMPARE/MODE,MAKEMSTR
ELSE
IF/(MODE_INPUT.EQ.1)
COMPARE/MODE,ENABLE
ENDIF
$$
GOTO/0.0000,0.0000,100.0000
$$
COMPARE/ON,MST,'C:\CappsNC8\Files\NCFiles\Circle_Comp_File1.prtmst'
$$
F(CR1)=FEAT/CIRCLE,INNER,CART, 23.5000,75.5000,26.0000,-0.0000,0.0000,1.0000,7.5000
MEAS/CIRCLE,F(CR1),7
SNSET/APPRCH,2.7500
GOTO/23.5000,75.5000,38.0000
PTMEAS/CART,27.2500,75.5000,24.0000,-1.0000,-0.0000,-0.0000
PTMEAS/CART,25.8381,78.4319,24.0000,-0.6235,-0.7818,0.0000
PTMEAS/CART,22.6655,79.1560,24.0000,0.2225,-0.9749,0.0000
PTMEAS/CART,20.1214,77.1271,24.0000,0.9010,-0.4339,0.0000
PTMEAS/CART,20.1214,73.8729,24.0000,0.9010,0.4339,0.0000
PTMEAS/CART,22.6655,71.8440,24.0000,0.2225,0.9749,-0.0000
PTMEAS/CART,25.8381,72.5681,24.0000,-0.6235,0.7818,-0.0000
GOTO/23.5000,75.5000,38.0000
SNSET/APPRCH,15.0000
ENDMES
COMPARE/OFF
$$
COMPARE/ON,MST,'C:\CappsNC8\Files\NCFiles\Circle_Comp_File2.prtmst'
$$
F(CR2)=FEAT/CIRCLE,INNER,CART, 11.5000,115.0000,26.0000,0.0000,0.0000,1.0000,9.5000
MEAS/CIRCLE,F(CR2),7
SNSET/APPRCH,3.7500
GOTO/11.5000,115.0000,38.0000
PTMEAS/CART,16.2500,115.0000,24.0000,-1.0000,0.0000,0.0000
PTMEAS/CART,14.4616,118.7137,24.0000,-0.6235,-0.7818,0.0000
PTMEAS/CART,10.4430,119.6309,24.0000,0.2225,-0.9749,0.0000
PTMEAS/CART,7.2204,117.0609,24.0000,0.9010,-0.4339,-0.0000
PTMEAS/CART,7.2204,112.9391,24.0000,0.9010,0.4339,-0.0000
PTMEAS/CART,10.4430,110.3691,24.0000,0.2225,0.9749,-0.0000
PTMEAS/CART,14.4616,111.2863,24.0000,-0.6235,0.7818,-0.0000
GOTO/11.5000,115.0000,38.0000
SNSET/APPRCH,15.0000
ENDMES
$$
COMPARE/OFF
$$
COMPARE/ON,MST,'C:\CappsNC8\Files\NCFiles\Circle_Comp_File3.prtmst'
$$
F(CR3)=FEAT/CIRCLE,INNER,CART, 47.5000,115.0000,26.0000,0.0000,0.0000,1.0000,9.5000
MEAS/CIRCLE,F(CR3),7
SNSET/APPRCH,3.7500
GOTO/47.5000,115.0000,38.0000
PTMEAS/CART,52.2500,115.0000,24.0000,-1.0000,0.0000,0.0000
PTMEAS/CART,50.4616,118.7137,24.0000,-0.6235,-0.7818,0.0000
PTMEAS/CART,46.4430,119.6309,24.0000,0.2225,-0.9749,0.0000
PTMEAS/CART,43.2204,117.0609,24.0000,0.9010,-0.4339,-0.0000
PTMEAS/CART,43.2204,112.9391,24.0000,0.9010,0.4339,-0.0000
PTMEAS/CART,46.4430,110.3691,24.0000,0.2225,0.9749,-0.0000
PTMEAS/CART,50.4616,111.2863,24.0000,-0.6235,0.7818,-0.0000
GOTO/47.5000,115.0000,38.0000
SNSET/APPRCH,15.0000
ENDMES
$$
COMPARE/OFF