## Gear over pin diameter

### Gear over pin diameter

Does anyone have any experience measuring an over pin diameter of a gear on a CMM?

You do not have the required permissions to view the files attached to this post.

### Re: Gear over pin diameter

Easy... Measure two circles, then report distance between using the Maximum Distance option.

### Re: Gear over pin diameter

Sorry. I didn’t give a very good explanation of how I’ m wanting to measure. Is it possible to measure the over pin distance (M) without measuring actual pins. I know you can construct a tangent circle of a specific diameter using 2 lines in CMM Manager but the gear teeth have radii on them where the pin would touch.

- Ryan Christopher
- Nikon
**Posts:**245**Joined:**Mon Jun 06, 2011 3:00 pm**Location:**Sumner Washington-
**Contact:**

### Re: Gear over pin diameter

**!! After looking this over I see this solution is wrong, but am leaving it as an example of what not to do !!**

One way might be to use a loop but it would be pretty simple one.

1. Measure a stream of diametrically opposed points inside the teeth.

2. At the first pair of points create a circle for each of them and use the circle between 2 points construction.

3. Use GetFeaturePropertyAct and some shop math to find out if the diameter is the same as the the required pin diameter*.

4. If yes, end the loop; if no continue the loop moving up to the next pair of points until you find the 'good diameter''

The biggest pain of this is that CMM-M won't let us use a point in place of a circle so we need to add a couple extra steps.

<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>><><<><

**One way that would actually find the answer...**

1. Set the alignment.

2. Measure points.

3. Create constructions.

4. Evaluate the distance.

5. If dist. good keep the construction point as the solution.

6. If dist. bad iterate through the loop to the next point.

You do not have the required permissions to view the files attached to this post.

Last edited by Ryan Christopher on Fri Oct 06, 2017 11:25 am, edited 5 times in total.

### Re: Gear over pin diameter

ok I will try this out. Nikon should add construct a circle tangent to two circles in there construct a circle options!!!

### Re: Gear over pin diameter

Not a bad idea... but it will not help in this case since the involute profile of a gear tooth is not circular.

- Ryan Christopher
- Nikon
**Posts:**245**Joined:**Mon Jun 06, 2011 3:00 pm**Location:**Sumner Washington-
**Contact:**

### Re: Gear over pin diameter

This vbs will find the distance from the center of the cog to the center of the pin.

' TANGENT CIRCLE CENTER FINDER

' circle from 2pts and radius version 17-11-03A

'===================================================================

' Creates a circle center point from a group of points by searching

' for a circle center at a specified radius tangent to the

' measured points.

' 1. This assumes that points are on an xy plane.

' 2. The x value will always calculate out to zero.

' 3. The y value is the output being sought after.

' 4. Measure points with probe comp turned off.

' 5. The order of points should be towards y positive.

' 6a. Set the y axis through the middle of the channel.

' 6b. Measure only the right (x positive) side of the channel.

' 6c. This routine assumes symmetry.

'===================================================================

' Ryan Tackes VMS Inc. : ryan@vantagemeasure.com : November 3, 2017

'===================================================================

' \/ EXPLINATION OF VARIABLES \/

'===================================================================

Option Explicit

'cird = diameter of the tangent circle

'cirr = radius of the tangent circle

'pr = probe radius

'pd = probe diameter

'prfix = prefix of the point names

'startpt = ordinal of the first point being evaluated

'endpt = ordinal of the last point being evaluated

'i = loop variable

'x1 = measured point 1 x value

'y1 = measured point 1 y value

'x2 = measured point 2 x value

'y2 = measured point 2 y value

'x3 = midpoint x value of (x1, y1) and (x2, y2)

'y3 = midpoint y value of (x1, y1) and (x2, y2)

'q = distance between (x1, y1) and (x2, y2)

'outx = x output value of the center of the tangent circle

' outx = x3 + sqr((cirr^2-(q/2)^2)*(y1-y2))/q

'outy = y output value of the center of the tangent circle

' outy = y3 + sqr((cirr^2-(q/2)^2)*(x2-x1))/q

'x4 = evaluation point x value

'y4 = evaluation point y value

'evaldist = dist from calculated center to the next point to see if loop should continue

'===================================================================

' \/ DECLARATION OF VARIABLES (lazy) \/

'===================================================================

Dim cird As Double

Dim cirr As Double

Dim pr As Double

Dim pd As Double

Dim prfix as String

Dim startpt As Double

Dim endpt As Double

Dim i as Double

Dim x1 As Double

Dim y1 As Double

Dim x2 As Double

Dim y2 As Double

Dim x3 As Double

Dim y3 As Double

Dim q As Double

Dim outx As Double

Dim outy As Double

Dim x4 As Double

Dim y4 As Double

Dim evaldist As Double

'===================================================================

' \/ DEFINE THESE VARIABLES \/

'===================================================================

'\/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/

'\/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/

' enter the tangent circle diameter

cird = 1.2500

'

' enter the prefix name of the points

prfix = "POINT"

'

' enter the start point number of the point set

startpt = 2

'

' enter the end point number of the point set

endpt = 17

'/\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\

'/\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\

'===================================================================

' \/ CONSTANTS - DO NOT CHANGE \/

'===================================================================

pd = GetActiveProbeDiameter()

pr = pd/2

cirr = cird/2

cirr = .625 - pr

endpt = endpt - 1

'===================================================================

' \/ EVALUATION - DO NOT CHANGE \/

'===================================================================

'

' extract values from the point on the right side

for i = startpt to endpt

x1 = GetFeaturePropertyAct(prfix & i, 1)

y1 = GetFeaturePropertyAct(prfix & i, 2)

'

' create the point on the left side as a mirror of the first point

x2 = x1 * -1

y2 = y1

'

' calculate the midpoint between the first two points

x3 = (x1 + x2)/2

y3 = (y1 + y2)/2

'

' calculate the distance between the first two points

q = sqr((x2-x1)^2 + (y2-y1)^2)

'

'calculate the x value of the tangent circle

outx = x3 + (sqr((cirr^2-(q/2)^2))*(y1-y2))/q

'

'calculate the y value of the tangent circle

outy = abs((y3 + (sqr(cirr^2-(q/2)^2)))*(x2-x1)/q)

'

' extract values from the next point in the sequence

x4 = GetFeaturePropertyAct(prfix & i+1, 1)

y4 = GetFeaturePropertyAct(prfix & i+1, 2)

'

' compare the distance between(x4, y4) and the tangent circle radius

' escape the loop when the dist is greater than the radius.

evaldist = sqr((outx-x4)^2 + (outy-y4)^2)

If evaldist > cirr Then

Exit For

Else

End If

next i

'===================================================================

' END

'===================================================================

' TANGENT CIRCLE CENTER FINDER

' circle from 2pts and radius version 17-11-03A

'===================================================================

' Creates a circle center point from a group of points by searching

' for a circle center at a specified radius tangent to the

' measured points.

' 1. This assumes that points are on an xy plane.

' 2. The x value will always calculate out to zero.

' 3. The y value is the output being sought after.

' 4. Measure points with probe comp turned off.

' 5. The order of points should be towards y positive.

' 6a. Set the y axis through the middle of the channel.

' 6b. Measure only the right (x positive) side of the channel.

' 6c. This routine assumes symmetry.

'===================================================================

' Ryan Tackes VMS Inc. : ryan@vantagemeasure.com : November 3, 2017

'===================================================================

' \/ EXPLINATION OF VARIABLES \/

'===================================================================

Option Explicit

'cird = diameter of the tangent circle

'cirr = radius of the tangent circle

'pr = probe radius

'pd = probe diameter

'prfix = prefix of the point names

'startpt = ordinal of the first point being evaluated

'endpt = ordinal of the last point being evaluated

'i = loop variable

'x1 = measured point 1 x value

'y1 = measured point 1 y value

'x2 = measured point 2 x value

'y2 = measured point 2 y value

'x3 = midpoint x value of (x1, y1) and (x2, y2)

'y3 = midpoint y value of (x1, y1) and (x2, y2)

'q = distance between (x1, y1) and (x2, y2)

'outx = x output value of the center of the tangent circle

' outx = x3 + sqr((cirr^2-(q/2)^2)*(y1-y2))/q

'outy = y output value of the center of the tangent circle

' outy = y3 + sqr((cirr^2-(q/2)^2)*(x2-x1))/q

'x4 = evaluation point x value

'y4 = evaluation point y value

'evaldist = dist from calculated center to the next point to see if loop should continue

'===================================================================

' \/ DECLARATION OF VARIABLES (lazy) \/

'===================================================================

Dim cird As Double

Dim cirr As Double

Dim pr As Double

Dim pd As Double

Dim prfix as String

Dim startpt As Double

Dim endpt As Double

Dim i as Double

Dim x1 As Double

Dim y1 As Double

Dim x2 As Double

Dim y2 As Double

Dim x3 As Double

Dim y3 As Double

Dim q As Double

Dim outx As Double

Dim outy As Double

Dim x4 As Double

Dim y4 As Double

Dim evaldist As Double

'===================================================================

' \/ DEFINE THESE VARIABLES \/

'===================================================================

'\/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/

'\/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/

' enter the tangent circle diameter

cird = 1.2500

'

' enter the prefix name of the points

prfix = "POINT"

'

' enter the start point number of the point set

startpt = 2

'

' enter the end point number of the point set

endpt = 17

'/\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\

'/\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\

'===================================================================

' \/ CONSTANTS - DO NOT CHANGE \/

'===================================================================

pd = GetActiveProbeDiameter()

pr = pd/2

cirr = cird/2

cirr = .625 - pr

endpt = endpt - 1

'===================================================================

' \/ EVALUATION - DO NOT CHANGE \/

'===================================================================

'

' extract values from the point on the right side

for i = startpt to endpt

x1 = GetFeaturePropertyAct(prfix & i, 1)

y1 = GetFeaturePropertyAct(prfix & i, 2)

'

' create the point on the left side as a mirror of the first point

x2 = x1 * -1

y2 = y1

'

' calculate the midpoint between the first two points

x3 = (x1 + x2)/2

y3 = (y1 + y2)/2

'

' calculate the distance between the first two points

q = sqr((x2-x1)^2 + (y2-y1)^2)

'

'calculate the x value of the tangent circle

outx = x3 + (sqr((cirr^2-(q/2)^2))*(y1-y2))/q

'

'calculate the y value of the tangent circle

outy = abs((y3 + (sqr(cirr^2-(q/2)^2)))*(x2-x1)/q)

'

' extract values from the next point in the sequence

x4 = GetFeaturePropertyAct(prfix & i+1, 1)

y4 = GetFeaturePropertyAct(prfix & i+1, 2)

'

' compare the distance between(x4, y4) and the tangent circle radius

' escape the loop when the dist is greater than the radius.

evaldist = sqr((outx-x4)^2 + (outy-y4)^2)

If evaldist > cirr Then

Exit For

Else

End If

next i

'===================================================================

' END

'===================================================================

### Re: Gear over pin diameter

Oh man, I know this post is old... But I can't help myself

I personally wouldn't do this. I don't know how tight your MOW tolerance is but measuring it without pins are going to give you erroneous results. Heck, dedicated gear analyzers with rotary tables and analog scanning heads will report tooth thickness and MOW but nobody in the industry goes by those reported numbers because they're not accurate. I've had this discussion with an instructor (school) on the AGMA board, engineers at some of the biggest names in aerospace.

Anyway, the reason I'm even here is that google found this thread when I was searching for something (I forget what). I currently have a gear on my CMM and I'm doing a MOW check and I'm using wires. We would use a mic (best results) but this thing is a 6DP gear with 100 teeth and a 16.5" MOW So with something this big a CMM with pins IS a good idea. But pins are used.

I personally wouldn't do this. I don't know how tight your MOW tolerance is but measuring it without pins are going to give you erroneous results. Heck, dedicated gear analyzers with rotary tables and analog scanning heads will report tooth thickness and MOW but nobody in the industry goes by those reported numbers because they're not accurate. I've had this discussion with an instructor (school) on the AGMA board, engineers at some of the biggest names in aerospace.

Anyway, the reason I'm even here is that google found this thread when I was searching for something (I forget what). I currently have a gear on my CMM and I'm doing a MOW check and I'm using wires. We would use a mic (best results) but this thing is a 6DP gear with 100 teeth and a 16.5" MOW So with something this big a CMM with pins IS a good idea. But pins are used.