Select Calibration Incorporated
Calibration Services for Coordinate Measuring Machines
Downloads
Home
Calibration
ISO 17025
Downloads
Articles
Contact
Gallery
Utilites

Utility Program Downloads

This page contains links to utility programs related to coordinate measuring machines and inspection. The utility programs are purpose specific and were written as needed. Utility programs are compiled for various operating systems and available as source code where practical.

All programs with a GUI interface are written using the Qt Framework. To compile any of these programs it is necessary to download and install the Qt SDK for your target operating system. The license for the community editions of Qt are LGPL and GPL.

These programs are free software: you can redistribute and/or modify them under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. All software is provided as-is; no warranty of any kind is provided or implied.

CMM Specifications

CMM Specifications

The CMM Specifications utility allows the user to access the limits for various brands and models of CMM’s when running performance tests of the machine as defined by standards such as ISO/IEC 10360-2:2009. The information is stored in a SQLite database and can be converted to a CSV file for importing or exporting as needed.

The sample database has publicly available specifications for various CMM's collected over the years. Although there has been a lot of effort to keep the information correct it is highly probable that some of the data is not valid for various reasons. Additions or revisions are welcome and the sample database on the website will be updated to contain the latest information.

Linux RPM: cmmspecifications-1.1-1.x86_64.rpm
Linux DEB: cmmspecifications_1.1-2_amd64.deb
Windows: cmmspecifications-1.1-1.x86_64.zip
Source: cmmspecifications-1.1.src.zip
Database: cmmspecifications.db.zip
Doc: CMM Specifications Users Guide.pdf

UC Budget Editor

Uncertainty Budget Editor

The UCBudget Editor is a utility for creating or editing uncertainty budget data and is intended to be used as the basis of an uncertainty budget for one or more measurements. The utility was written around the idea of a coordinate measuring machine but can be applied to other equipment. The uncertainty budget data file can be used by other software for automatic calculation of uncertainty values.

Linux RPM: ucbudgeteditor-8.0-1.x86_64.rpm
Linux DEB: ucbudgeteditor_8.0-2_amd64.deb
Windows: ucbudgeteditor-8.0-1.x86_64.zip
Source: ucbudgeteditor-8.0.src.zip
Doc: UCBudget Editor Users Guide.pdf

Measure Direct

MeasureDirect

The MeasureDirect utility is inspection software with a very narrow scope of capability focusing on the measurement of artifacts for CMM calibration. MeasureDirect can perform measurement tests using a step gauge, gauge block, ring gauge, pin gauge, sphere, ball bar, and laser.

Linux RPM: measuredirect-5.2-1.x86_64.rpm
Linux DEB: measuredirect_5.2-2_amd64.deb
Windows: measuredirect-5.2-1.x86_64.zip
Source: measuredirect-5.2.src.zip
Doc: MeasureDirect Users Guide.pdf

Virtual CMM

Virtual CMM

VirtualCMM is software that emulates the functions of a physical CMM. It was written primarily for testing the measurement routines of MeasureDirect when an actual CMM is not available. The virtual machine is animated and can display the recent probe path to help identify problems such as missing moves or inverted touch points.

Linux RPM: virtualcmm-7.1-1.x86_64.rpm
Linux DEB: virtualcmm_7.1-2_amd64.deb
Windows: virtualcmm-7.1-1.x86_64.zip
Source: virtualcmm-7.1.src.zip
Doc: VirtualCMM Users Guide.pdf

Ballbar Viewer

Ballbar data viewer

The Ballbar Viewer allows users to analyze ball bar measurement data when performing interim checks on their CMM. Interim checks are necessary to ensure that the CMM is running properly and can also be used to verify changes to the machine, such as a software upgrade, have not adversely affected accuracy.

Linux RPM: ballbarviewer-4.0-1.x86_64.rpm
Linux DEB: ballbarviewer_4.0-2_amd64.deb
Windows: ballbarviewer-4.0-1.x86_64.zip
Source: ballbarviewer-4.0.src.zip
Part Program: B89.4.1-Ballbar-V8.2-PCD37.PRG.zip
Doc: Ballbar Viewer Users Guide.pdf

CMM Usage

CMM Usage

The CMMUsage utility allows collection of usage data from the CMM software focusing on run time, idle time, and off time. In addition to usage data the touch trigger point count and any errors reported by the controller are recorded and can be reviewed for troubleshooting purposes. The data is stored in a SQLite database and can be accessed directly from any suitable software or exported to a CSV or text file from the CMMUsage utility for review.

The recorded error messages and touch trigger probe count may be of particular use. As often the case intermittent errors are not always recorded by the user but, with this utility, the date, time, program name, and text of the error message is saved and can be reviewed at a later date. The touch trigger probes have a finite lifespan based on the number of touches. Using a sample of typical usage data it would be possible to estimate when the limit of touches has been reached.

Windows: cmmusage-1.0-1.x86_64.zip
Source: cmmusage-1.0.src.zip
Doc: CMMUsage Users Guide.pdf

Filter Evaluation

Filter Evaluation

The Filter Evaluation utility allows the user to generate test data with specific signals in order to evaluate the inspection software’s ability to filter the test data. One observation, particularly noticed when writing this utility, is how vague the various options provided by the inspection software can be. Using this utility allows a better understand the capability of the inspection software and the impact of various filter settings.

Linux RPM: filterevaluation-1.0-1.x86_64.rpm
Linux DEB: filterevaluation_1.0-2_amd64.deb
Windows: filterevaluation-1.0-1.x86_64.zip
Source: filterevaluation-1.0.src.zip
Doc: FilterEvaluation Users Guide.pdf

Squareness Error Calculator

Squareness Error Calculator

The Squareness Error Calculator is a utility that can find the ideal squareness corrections from a set of length measurements on a CMM. The measurements of length can be from a ball bar or from artifacts such as step gauges, gauge blocks, or a laser interferometer. The sample measurement data supplied with this utility has examples of each type and has been somewhat randomized to demonstrate the capabilities of the Squareness Error Calculator.

Linux RPM: squarenesscalculator-2.1-1.x86_64.rpm
Linux DEB: squarenesscalculator_2.1-2_amd64.deb
Windows: squarenesscalculator-2.1-1.x86_64.zip
Sample Data: sq_sample_data.zip
Doc: Squareness Calculator Users Guide.pdf

Sourcetree

Sourcetree

The Sourcetree utility creates a folder populated with all files and dependent Qt projects necessary to compile a specific Qt project. The created folder can then be compressed and distributed as the source code for the Qt project. The generated source tree optionally includes a top-level project file and compilation instructions.

Linux RPM: sourcetree-1.1-1.x86_64.rpm
Linux DEB: sourcetree_1.1-2_amd64.deb
Windows: sourcetree-1.1-1.x86_64.zip
Source: sourcetree-1.1.src.zip
Doc: Sourcetree Users Guide.pdf

Error Map Explorer

Error Map Explorer

The Error Map Explorer is a utility that can calculate corrections based on data from a compensation error map and produce numerical and graphical results. The correction values are calculated to the position of the active tool stylus tip and is comparable to methods used by most CMM's.

The Error Map Explorer can load compensation data from a variety of sources. The sample error map file is provided with this utility can be used if access to map data is not available. A sample test sequence file is also available in order to demonstrate the capabilities.

Linux RPM: errormapexplorer-4.0-1.x86_64.rpm
Linux DEB: errormapexplorer_4.0-2_amd64.deb
Windows: errormapexplorer-4.0-1.x86_64.zip
Sample Data: Error_Map_And_Test_Sequence.zip
Doc: Error Map Explorer Users Guide.pdf

ClassGenerator

ClassGenerator

The ClassGenerator utility converts the Qt Designer UI forms into standard C++ source and header files. This program was written to simplify the process used by the author to create source files from the Qt Designer UI file for GUI elements. The difference between the output created by this utility and the output produced by Qt version is that the ClassGenerator version is more focused on creating traditional C++ source and header files. The downside when using this method is that revisions of the UI forms are difficult to incorporate into existing programs.

Linux RPM: classgenerator-1.3-1.x86_64.rpm
Linux DEB: classgenerator_1.3-2_amd64.deb
Windows: classgenerator-1.3-1.x86_64.zip
Source: classgenerator-1.3.src.zip
Sample: sample_designer_file.ui.zip
Doc: ClassGenerator Users Guide.pdf

Temperature Record

Temperature Record

The Temperature Record utility allows the user to create a record file of one or more measured temperatures and to compensate for known thermometer errors based on three data points. The correction is based on a curve touching the three calibration temperature points that may or may not be linear resulting in a more natural shape as compared to a straight-line approximation between any two of the three points. Utilities are included to assist in evaluation and estimation of measurement uncertainty. Calibration data can be setup for more than one thermometer. No support for imperial (Fahrenheit) temperatures is provided with this utility.

Linux RPM: temperaturerecord-1.1-1.x86_64.rpm
Linux DEB: temperaturerecord_1.1-2_amd64.deb
Windows: temperaturerecord-1.1-1.x86_64.zip
Source: temperaturerecord-1.1.src.zip
Doc: Temperature Record Users Guide.pdf

Machine Checking Gauge

Machine Checking Gauge

The Machine Checking Gauge utility is software that compliments the Renishaw MCG test artifact. The primary purpose of the Machine Checking Gauge utility is to interpret and report data collected by the Renishaw MCG artifact but it can also be used to create a part program necessary for the measurement of the gauge.

Linux RPM: mcg-4.0-1.x86_64.rpm
Linux DEB: mcg_4.0-2_amd64.deb
Windows: mcg-4.0-1.x86_64.zip
Source: mcg-4.0.src.zip
Part Program: MCG - 3.0 - PC-DMIS 3.7.PRG.zip
Doc: Machine Checking Gauge Users Guide.pdf

Error Simulator

Error Simulator

The Error Simulator utility allows simulated CMM measurements of various artifacts in order to assist in the development of tools and procedures necessary for efficient calibration of coordinate measuring machines. Developing methods to extract specific machine errors from measurements require accurate test data so that methods can be evaluated properly. Using a real CMM can be problematic as physically changing the shape of the machine in order to test different scenarios is not possible in many cases and measurement noise can also bias data.

Linux RPM: errorsimulator-3.0-1.x86_64.rpm
Linux DEB: errorsimulator_3.0-2_amd64.deb
Windows: errorsimulator-3.0-1.x86_64.zip
Source: errorsimulator-3.0.src.zip
Doc: Error Simulator Users Guide.pdf

Compensation Map Viewer

Compensation Map Viewer

The Compensation Map Viewer was written to allow users to view the contents of the error map or error grid from their CMM. The data is presented as a text table of values and select parameters can be displayed graphically if desired. Any supported map type can be opened by simply dragging the file onto the Compensation Viewer program. Many file formats from a variety of vendors can be opened by this program.

This program will not pull data from the CMM controller. The compensation map must exist as a file (or a folder containing individual compensation parameters) to be able to use this utility.

Linux RPM: compview-9.0-1.x86_64.rpm
Linux DEB: compview_9.0-2_amd64.deb
Windows: compview-9.0-1.x86_64.zip
Doc: Compview Users Guide.pdf

Validation2DMIS

Validation2DMIS

The Validation2DMIS utility creates a DMIS part program based on the validation data from MeasureDirect. The DMIS program contains the point data and constructed features of the type specified in the validation data file. Creation of a DMIS program from the validation data allows importing into any software that supports the DMIS standard.

Linux RPM: validation2dmis-1.0-1.x86_64.rpm
Linux DEB: validation2dmis_1.0-2_amd64.deb
Windows: validation2dmis-1.0-1.x86_64.zip
Source: validation2dmis-1.0.src.zip
Doc: Validation2DMIS Users Guide.pdf

CFG Backup

CFG Backup

CFGBackup utility allows the user to backup and restore the CMM controller EEProm data from various Sheffield brand CMM's.

Under normal conditions the EEProm data in the controller is stable and does not change unless specifically written but due to age or other factors the EEProm data can change randomly particularly following a cycle of the controller power. The controller performs a CRC error check on the EEProms at power-up and if this fails (meaning the contents of the EEProms does not match the previous known values) then the controller is put into a permanent error state until fixed. The CFGBackup utility allows the user to create a backup file containing a copy of all the controller's EEProm data and restore it on a future date in order to clear any CRC error that may happen.

Linux RPM: cfgbackup-1.1-1.x86_64.rpm
Linux DEB: cfgbackup_1.1-2_amd64.deb
Windows: cfgbackup-1.1-1.x86_64.zip
Doc: CFGBackup Users Guide.pdf
]

Dostmann Calibrator

Dostmann Calibrator

The Dostmann Calibrator is a small utility that can generate sensor calibration codes for certain models of Dostmann thermometers such as the PT-750. This utility can use one or more temperature samples to generate correction codes. The new correction codes are calculated on top of the existing correction codes so it is not necessary to clear existing calibration codes prior to calibration.

Linux RPM: dostmann-2.1-1.x86_64.rpm
Linux DEB: dostmann_2.1-2_amd64.deb
Windows: dostmann-2.1-1.x86_64.zip
Source: dostmann-2.1.src.zip
Doc: Dostmann Calibrator Users Guide.pdf

Acceleration Calculator

Vibration Meter

The Acceleration Calculator utility was written to allow users to easily calculate the distance and time required to transition from one velocity to a second at a specific acceleration. Despite the name the Acceleration Calculator utility only calculates the requirements of time and distance from the acceleration when there is a change in velocity.

Android: accelerationcalculator.1.0.apk
Source: accelerationcalculator-1.0.src.zip
Doc: Acceleration Calculator Users Guide.pdf

DC Controller Status

DC Controller Status

The DC Controller Status utility shows current information about the CMM along with recent errors logged by the controller. The current information shows the emergency status, error map compensation configuration, axis expansion coefficients, and axis temperatures. The error log shows the history of errors recorded by the controller since the last reboot. The data can be recorded and saved to a text file with minimal effort from the user.

Linux RPM: dccontrollerstatus-1.2-1.x86_64.rpm
Windows: dccontrollerstatus-1.2-1.x86_64.zip
Source: dccontrollerstatus-1.2.src.zip
Doc: DC Controller Status Users Guide.pdf

Vibration Meter

Vibration Meter

The Vibration Meter utility is a small Android app that uses the accelerometers available on many small devices to measure vibration. CMM's have requirements for the environment that must be met in order for the machine to measure at the intended accuracy with the two most common environmental issues being temperature and vibration. The Vibration Meter allows a vibration test to be run from a tablet or phone. The output shows the raw data, frequency spectrum, and a numerical analysis of the vibration.

Android: vibrationmeter-2.0.apk
Source: vibrationmeter-2.0.src.zip
Doc: Vibration Meter Users Guide.pdf

Deflection Simulator

Deflection Simulator

The Deflection Simulator shows the effect of deflection compensation from different vendors on a horizontal arm CMM with a kinematic of XZY. The input parameters for the different deflection models match those of the vendor and the output shows a series of horizontal and vertical length measurements that would be observed with a laser. Measurement gauges can be added anywhere inside the measurement volume in order to see the impact on length.

Linux RPM: deflectionsimulator-2.0-1.x86_64.rpm
Windows: deflectionsimulator-2.0-1.x86_64.zip
Source: deflectionsimulator-2.0.src.zip
Doc: Deflection Simulator Users Guide.pdf

Length Comparison

Length Comparison

The Length Compare utility calculates an En score for each overlapping result from two sets of measurements. The En score is an objective way to compare individual results taking into account the measurement uncertainty.

Linux RPM: lengthcompare-1.0-1.x86_64.rpm
Windows: lengthcompare-1.0-1.x86_64.zip
Source: lengthcompare-1.0.src.zip
Doc: Length Compare Users Guide.pdf

Report Roadmap

Report Road Map

The Report Roadmap utility allows the user to attach an identification label to a dimension item in order to compliment the inspection report. Standard image files are used for the input. The output is either a single PDF file or individual image files.

Linux RPM: reportroadmap-3.0-1.x86_64.rpm
Windows: reportroadmap-3.0-1.x86_64.zip
Source: reportroadmap-3.0.src.zip
Doc: Report Roadmap Users Guide.pdf

Sharpe2-32 Download Editor

Sharpe2-32 Download editor

The download editor was written to allow direct modification of the Sharpe2-32 download files. The normal method for modification of these files is to change the master parameter data then generate a new download file for the controller. Since these files are frequently not available this editor was created to allow more direct access to the download file.

Linux RPM: downloadeditor-2.0-1.x86_64.rpm
Windows: downloadeditor-2.0-1.x86_64.zip
Source: downloadeditor-2.0.src.zip
Doc: Download Editor Users Guide.pdf

Temperature Compensation

Temperature Compensation

The Temperature Compensation utility was written to allow users to see the effect of temperature on measurement length when using a coordinate measuring machine. The length correction is based on the temperature of the CMM axis, the temperature of the part, and the expansion coefficients of the axis and part.

Using a coordinate measuring machine in a thermally poor environment can result in a significant measurement error. This utility will show the compensation amount based on the input conditions in order for a given measurement length to be correct at the standard reference temperature. CMM's that have active temperature compensation will have this correction done in the background without the operator even aware of it.

Linux RPM: tempcomp-1.0-1.x86_64.rpm
Windows: tempcomp-1.0-1.x86_64.zip
Android: tempcomp-1.0.apk
Source: tempcomp-1.0.src.zip
Doc: Temperature Compensation Users Guide.pdf

Controller Parameters Viewer

Compensation Map Viewer

The Controller Parameters utility was written to allow easier viewing or editing of controller parameter files and to allow automated parameter validation using a custom set of rules. Parameter files are large and can easily have entries that are wrong or overlooked when initially created for a CMM. The automated parameter validation allows testing for a variety of configuration problems.

This program will not pull data from the CMM's controller. The parameter file must be accessible in order to use this utility.

Linux RPM: controllerparameters-1.0-1.x86_64.rpm
Windows: controllerparameters-1.0-1.x86_64.zip
Source: controllerparameters-1.0.src.zip
Doc: Controller Parameters User Guide.pdf

Interpolation Editor

Interpolation_Editor

The Interpolation Editor utility allows users to edit sets of data that have unusual ranges or increments. This is commonly needed when dealing with compensation error map data that has a non-standard increment or starting position making it difficult to work with it directly. In many cases simple corrections such as a linear gradient is not possible due to the shape of the error. This editor allows any kind of data to be adjusted using reasonable measurement targets with little effort.

Linux RPM: interpolationeditor-1.0-1.x86_64.rpm
Windows: interpolationeditor-1.0.x86.zip
Source: interpolationeditor-1.0.src.zip
Doc: Interpolation Editor Users Guide.pdf

Folder Sync

Folder Sync

This small utility program is used to help with document tracking. When controlled documents are distributed it is necessary to keep records of the distributed copies. This utility will ensure a target location matches the reference location and also produce a text file listing all documents and document changes that were made to the target location.

Linux RPM: foldersync-1.3-1.x86_64.rpm
Windows: foldersync-1.3.x86.zip
Source: foldersync-1.3.src.zip
Doc: Folder Sync Users Guide.pdf

Laser Data Viewer

Laser Data Viewer

The Laser Data Viewer is a small utility that can read measurement files from API and Renishaw lasers and display the contents of those files. The data is sorted and organized allowing easy transfer to other software.

Linux RPM: laserdataviewer-1.1-1.x86_64.rpm
Windows: laserdataviewer-1.1.x86.zip
Source: laserdataviewer-1.1.src.zip
Doc: Laser Data Viewer Users Guide.pdf

Encoder Simulator

Compensation Map Viewer

The Encoder Simulator utility was written to better understand the effects of encoder signal problems by allowing the user to generate various types of input signals and immediately see the effect from an interpolated output over the length of one full scale period. All CMM machines use some form of an encoder that converts a scale signal into a machine position so understanding the issues related to encoders seems paramount when trying to get the most accuracy from a coordinate measuring machine.

Linux RPM: encodersimulation-1.0-1.x86_64.rpm
Windows: encodersimulation-1.0.x86.zip
Source: encodersimulation-1.0.src.zip
Doc: Encoder Simulator Users Guide.pdf