Fitting Algorithms

Fitting Algorithms

CMM-Manager offers several fitting algorithms for feature calculations.  The default in all cases is Least Squares which is an average best fit method.  Other methods are available for many feature types.  Multiple options are available for circles, spheres, cylinders and cones.
For this example, 16 points were used to inspect a circle.  Individual point errors have been greatly exaugurated for visual clarity.  Other feature types are similar.

Nominal Feature


The nominal feature is defined as a 100mm diameter circle centered at 0.000, 0.000 in X and Y

Least Squares Fit


A Least Squares fit minimizes the average squared error of all of the data points.  It may be that none of the points are actually on the calculated feature.  This is the standard fit method for most instances.
  This calculation utilizes the Gaussian Elimination method.
In this example, there are no points on the calculated feature.
This circle calculated as 100.086 diameter centered at 0.887, 0.291.  Form is 10.608

Maximum Inscribed Fit


A Maximum Inscribed fit determines the largest circle that will fit inside all the data points.  This fit is typically used to report a hole into which a specific size pin must fit.  The pin would then be measured with Minimum Circumscribed fit to ensure that it can fit inside the circle.  This calculation utilizes the Tschebyscheff method.
In this example, the circle is calculated through points 3, 7, and 12.  All other points are outside the calculated feature.
This circle calculated as 91.742 diameter centered at -0.177, 0.054.  Form is 9.156

Minimum Circumscribed Fit


A Minimum Circumscribed fit determines the smallest circle that encloses all of the data points.  This fit is typically used to report a pin which must fit into a specific size hole.  the hole would then be measured with Maximum Inscribed fit to insure that the pin can fit into the circle.  This calculation utilizes the Tschebyscheff method.
In this example, the circle is calculated through points 2, 4, and 11.  All other points are inside the calculated feature.
This circle calculated as 109.250 diameter centered at 0.604, -0.758.  Form is 9.198

Min/Max fit


A MinMax fit determines a circle that is fitted halfway between two circles, with a common center, which have a minimum distance between them to enclose all the data. This algorithm minimizes the maximum error. Note that the two circles are not the same as those produced using Maximum inscribed and Minimum circumscribed.  This calculation utilizes the Tschebyscheff method.
This circle calculated as 100.512 diameter centered at 0.254, -0.234.  Form is 8.970

Fixed Radius

The Fixed Radius fit is a specialized function where the user specifies the radius to be used in the calculation and only the center position of the feature is calculated.   This function is used when a very small amount of arc is available for calculation which affects the accuracy and repeatability of the end result.   

Example:
5 equally spaced data points were created along 10 degrees of arc on a 50mm radius.  In Dataset #1, the points are all exactly on the radius.  In Dataset #2, a single point has been moved 1 micron further from the center.  The table shows the results of the default Least Squares Fit calculation for both datasets along with the Fixed Radius evaluation of Dataset #2.  The Least Squares Fit shows very large errors for only a single point moving 1 micron.  This is due to the way math calculations work and is not the result of errors in the inspection software.
Dataset #1


Dataset #2

Results

Practical Application


Since each calculation method relies on various selections of points, each diameter in this example is different.  Also, since the point set it used in different ways for each method, the center of each feature varies as can be seen above.
Using the Pin and Hole example, the Maximum Inscribed method would be used for the hole.  This ensures that the result is the smallest possible hole that can be calculated from the points.  The pin is then reported using the Minimum Circumscribed method to ensure that the largest possible pin that can be calculated from the points is calculated.  If the pin size calculated by this method is smaller than the hole calculated by the Maximum Inscribed method, the pin should fit the hole regardless of other form errors.
The accuracy of these calculations depends on not only the quality of the collected data, but the quantity.  It is up to the end user to determine what a sufficient number of points would be in all cases to demonstrate an acceptable confidence level in the results.

    • Related Articles

    • NIST Algorithm Test / PTB Certificate

      3rd party PTB certification that tests fitting Algorithm of (typically) metrology software has been complete on CMM-Manager. The PTB certificate for CMM-Manager is attached below. It is also possible to perform an in-house test of CMM-Manager using ...
    • Save Report Automatically for use with Discus

      Once you've taught a program and create Report(s) it is possible to configure CMM-Manager program to automatically save report document in a format compatible with Discus CMM each time the program is run. Set Report Properties as follows: View the ...
    • Cloud-to-CAD / Curve Deviation

      Cloud-to-CAD is a very powerful reporting tool and allows data to be reported in many different ways. As the name implies, a CAD model is required to report a surface profile. For all examples, the following CAD model, datum structures, and clouds ...
    • VB Script - Getting Started

      What can I do with VB Scripting? CMM-Manager VB Scripts run in line with program execution and can be used to perform loops and flow control, display custom messages, prompt user for input that then influences program execution - i.e. skip section of ...
    • Save Report Automatically for use with Prolink QC-CALC Realtime

      Once you've taught a program and create Report(s) it is possible to configure CMM-Manager program to automatically save report document in a format compatible with QC-CALC each time the program is run. Set Report Properties as follows: View the ...