What is DMIS?
This begins a series on the DMIS code. At the bottom of the article will be a link to the series.
DMIS is an information exchange standard published with the International Organization for Standardization (ISO). DMIS defines measurement process plan information for CMMs. Because DMIS is both human readable and computer readable (such as C++ or Java), it can be called a programming language for CMMs. DMIS is a language, which means that software implementing DMIS must be able to encode DMIS or decode DMIS. Like any information exchange standard, this standard is intended to enable interoperability by allowing the use of DMIS programs, without alteration, on many types and brands of CMMs.
DMIS is written to control many types of CMMs, including computer numerically controlled (CNC), manual, classic touch-trigger, touch scanned, noncontact scanned, five-axis scanned and CMMs with rotary tables. Portable CMMs are typically not addressed by DMIS, including articulated-arm CMMs, laser trackers, white-light scanners, theodolites and robotic CMMs.
Because DMIS is so large and there are so many different functional applications, such as prismatic and thin walled, DMIS developers have defined conformance classes, which are essential for interoperability.
There are two common uses for DMIS:
Dimensional measurement planning software presents the metrologist with a 3-D computer-aided-design (CAD) model of the part to be measured and provides software tools to choose which features are to be measured and how they are to be measured-including specification of sensor types, sensor paths and distribution of points. The automatic output of the software is a measurement program encoded in DMIS.
The metrologist writes a DMIS program by hand and may debug it using a simulator.
In both scenarios, the measurement execution software then decodes the DMIS program and executes it on a CMM.
John Horst
DMIS Language Syntax
DMIS is a programming language that allows programs to be read and modified by programmers. These programs are stand alone and should contain everything that would allow a programmer to execute the program.
DMIS dictates that each measurement feature be defined by the nominal parameters. These are derived from the blueprint or extracted from the CAD model.
Everything in DMIS must be defined such as sensors, datums, etc…
DMIS requires that all measurements are of a feature type and that these features must be defined before being measured or constructed. Before you can measure a feature you must first define the feature nominal parameters. For instance, in you want to measure a circle, you must first define the nominal position, direction and size and give it a name you will use when you issue a command to measure the feature.
DMIS Command
Structure of a DMIS Command
In this book we will color code the statement(s) to help define the MAJORWORDS, MINORWORDS, and Parameters.
(name of variable=) MAJORWORD/ MINORWORD(S) and/or (parameter(s))
The example above shows the general syntax of a DMIS command or statement. If the command is an assignment it will start with the DMIS element/ name or variable followed by the equals sign and the MAJORWORD (identifies the command). If the command is not
an assignment it will start with a MAJORWORD that identifies the command. In all cases, the MAJORWORD will be followed by a forward slash which will be followed by MINORWORDS and/or parameters.
General Information:
Define the feature nominal. After the feature is measured the results are shown as FA() inside the parathesis will be the feature name or label.