|
Concentricity to a datum circle should be a 2D calculation (don't level to datum circle)
<< Don Turcotte -- 11/29/06 08:53:12>>
From Kong Hwee (Singapore):
"I have spotted another GDT calculation error in PCDMIS Version 4.1R Oct 2006.
DIM LOC286= LOCATION OF CIRCLE CIR1 UNITS=MM ,$
GRAPH=OFF TEXT=OFF MULT=10.00 OUTPUT=BOTH
AX MEAS NOMINAL DEV +TOL -TOL OUTTOL
X 0.0000 0.0000 0.0000 0.0700 0.0700 0.0000 ----#----
Y 0.0000 0.0000 0.0000 0.0700 0.0700 0.0000 ----#----
Z -2.5509 -2.5000 -0.0509 0.0700 0.0700 0.0000 -#-------
D 991.8576 991.8200 0.0376 0.0700 0.0700 0.0000 ------#--
END OF DIMENSION LOC286
DIM LOC287= LOCATION OF CIRCLE CIR2 UNITS=MM ,$
GRAPH=OFF TEXT=OFF MULT=10.00 OUTPUT=BOTH
AX MEAS NOMINAL DEV +TOL -TOL OUTTOL
X -0.0204 0.0000 -0.0204 0.0700 0.0700 0.0000 ---#-----
Y -0.0456 0.0000 -0.0456 0.0700 0.0700 0.0000 -#-------
Z 548.0022 548.0000 0.0022 0.0700 0.0700 0.0000 ----#----
D 963.2330 963.2480 -0.0150 0.0700 0.0700 0.0000 ---#-----
END OF DIMENSION LOC287
DIM CONCEN2= CONCENTRICITY FROM CIRCLE CIR2 TO CIRCLE CIR1 UNITS=MM ,$
GRAPH=OFF TEXT=OFF MULT=10.00 OUTPUT=BOTH
AX MEAS NOMINAL DEV +TOL -TOL OUTTOL
M 0.0904 0.0000 0.0904 0.0700 0.0000 0.0204 -------->
ASSIGN/V2 = SQRT(CIR2.X^2+CIR2.Y^2)*2 = 0.0999
Base on the above the concentricity value should be 0.0999 but in PCDMIS it was reported as 0.0904. In concentricity you cannot align the datum to a circle ( I mean level, which I think that is exactly what it was doing ). In concentricity you will only compare the offset in diameter between the Datum Circle and Feature Circle. ( as shown on the assign/v2. Since my Zero for X and Y is cir1, concentricity is define as SQRT(CIR2.X^2+CIR2.Y^2)*2) If it is a coaxial then you will level and set zero to datum cylinder. Concentricity is a 2D call out therefore current PCDMIS calculation is NOT CORRECT. Also I would like to point out, in concentricity whether you select cir1 first or cir2 first the result must be the same. I also observe in the current version I am using, the result differ when you select cir1 first the cir2. Please fix this urgently.
"
<<END>>
<< Changes made by Neil Kay -- 07/23/08 16:31:26>>
Action: Paola Pallo to Yanhua Huang
<<END>>
<< Changes made by Neil Kay -- 07/23/08 10:17:38>>
Action: David Petrizze to Paola Pallo
<<END>>
<< Don Turcotte -- 11/30/06 15:26:49>>
Merged into V42R.
Files inserted to server
------------------------
V42R\DIMENS\DATDEF.CPP
V42R\DIMENS\DIM_CONC.CPP
V42R\DIMENS\FEATCTRLFRM.CPP
<<END>>
<< Changes made by Don Turcotte -- 11/30/06 15:27:26>>
Action: Don Turcotte to David Petrizze, Status: OPEN to REVIEW
<<END>>
<< Tim Wernicke -- 11/30/06 13:40:41>>
Please add to V42R per my e-mail. Thanks Don.
<<END>>
<< Changes made by Tim Wernicke -- 11/30/06 13:40:43>>
Action: David Petrizze to Don Turcotte, Status: REVIEW to OPEN, Priority: Critical to Stop Rel.
<<END>>
<< Don Turcotte -- 11/30/06 14:26:08>>
This is now complete.
When defining a legacy concentricity dimension, if the second feature is a circle (datum feature) only the position of the datum is used. The current alignment and workplane will determine the level.
When defining an FCF concentricity dimension, if the primary datum is a circle, the datum reference frame will not level to the circle unless the registry setting DatumLevelToCircle is true (by default, this is false). The current alignment and workplane will determine the level. If the primary datum is a plane and the secondary datum is a circle, the plane will determine the level.
I have attached my test program.
This has been fixed in V41B (beta), V42 (beta), and V43B (beta).
Files inserted to server
------------------------
V42\DIMENS\DATDEF.CPP
V42\DIMENS\DIM_CONC.CPP
V42\DIMENS\FEATCTRLFRM.CPP
V43B\DIMENS\DATDEF.CPP
V43B\DIMENS\DIM_CONC.CPP
V43B\DIMENS\FEATCTRLFRM.CPP
V41B\DIMENS\DATDEF.CPP
V41B\DIMENS\DIM_CONC.CPP
V41B\DIMENS\FEATCTRLFRM.CPP
<<END>>
<< Changes made by Don Turcotte -- 11/30/06 14:26:48>>
Action: Don Turcotte to David Petrizze, Status: OPEN to REVIEW
<<END>>
<< Don Turcotte -- 11/29/06 17:32:48>>
I have tested this with both legacy and FCF concentricity dimensions using the offline simulator with error generation and everything seems to be working. I will complete testing tomorrow.
<<END>>
<< Don Turcotte -- 11/29/06 14:31:09>>
I have modified code in V42 Dim_Conc.cpp to support this. I will test later and merge into V41B, V43B. Going back to working on Stop Release issues...
<<END>> |
|