The Enhanced Machine Controller
What is the Enhanced Machine Controller?
The Enhanced Machine Controller (EMC) program is a NIST effort to
develop and validate a specification for interfaces to open
architecture controllers. This specification is being developed
jointly with the Department of Energy
Technologies Enabling
Agile Manufacturing
(TEAM) program. The specification is formally
defined in the C++ language, and consists of C++ header files forming
an Application Programming Interface (API) suitable for
programmers. These header files are referred to as the
TEAM APIs.
The EMC is part of a broader industry group, the
Open Modular Architecture
Controller. The purpose of the group is to establish a specific
set of APIs to be used by vendors to sell controller products and
services to the aerospace and automotive industry. EMC participation
is focused on validating the APIs and developing measures of
conformance.
An EMC Consortium has been established, focused on developing and validating the TEAM APIs in real-world applications. Consortium members include representatives from the end-user, controls provider, and technology provider communities. Membership responsibilities include reviewing the interface specification, recommending applications that can be used to test open architecture controller concepts. Members may also become involved in actual controller installations. The consortium will be active from January 1, 1996, through December 31, 1998. There is no cost for participation.
Several controllers have been installed on testbeds for the purpose of validating that the APIs work in real-world application. A second purpose for these testbeds is to further the NIST Real-time Control System methodology. In these testbeds, controllers conforming to the TEAM APIs have been built which also have been developed following the RCS methodology.
What does "Open Architecture" mean?
There has been considerable debate on what precisely "open architecture" means, particularly with respect to machine controllers. Openness is often described in terms of the "-ilities": modularity, portability, interoperability, scaleability, and extensibility (see the Glossary). The Institute for Electrical and Electronics Engineers (IEEE) defines the following terms [1]:
- Open system: a system that implements sufficient open specifications or standards for interfaces, services, and supporting formats to enable properly engineered application software
-- to be ported with minimal changes across a wide range of systems from one or more suppliers;
-- to interoperate with other applications on local and remote systems;
-- to interact with people in a style that facilitates user portability.
- Open system API: a combination of standards-based interfaces specifying a complete interface between an application program and the underlying application platform
- Open system environment: a comprehensive set of interfaces, services, and supporting formats, plus user aspects for interoperability or for portability of applications, data, or people, as specified by information technology standards and profiles.
The Next Generation Controller (NGC) Specifications for an Open System Architecture Standard (SOSAS) [2] augments this with a definition of
- Open system architecture: a specification of the capabilities or services that provides the interconnection structure and defines the interface between interoperating components, thus allowing applications to be integrated into a system with a consistent style of interaction.
The TEAM APIs are an open system API for machine controllers, including machine tools, robots, and coordinate measuring machines. The TEAM APIs, together with a collection of services sometimes called the infrastructure or common execution environment, form an open system environment for machine control. The purpose of the EMC program is to develop and validate this open system environment, based on real-world implementations in shop floor environments, together with a consortium of users, vendors, and technology providers.
Contact:
Fred Proctor
National Institute of Standards and Technology
Building 220, Room B127
Gaithersburg, MD 20899-0001
E-mail: frederick.proctor@nist.gov
Voice: 301-975-3425
FAX: 301-990-9688
Mailing List: emc@nist.gov
You do not need to be a subscriber to send mail to this list, although
you do need to subscribe to receive mail from this list. To
subscribe, send mail to listproc@nist.gov with the
following in the body of the message:
subscribe emc
To unsubscribe, send mail to listproc@nist.gov with the
following in the body of the message:
unsubscribe emc
* No approval or endorsement of any commercial product by the National Institute of Standards and Technology is intended or implied. Certain commercial equipment, instruments, or materials are identified in this report in order to facilitate understanding. Such identification does not imply recommendation or endorsement by the National Institute of Standards and Technology, nor does it imply that the materials or equipment identified are necessarily the best available for the purpose.
The National Institute of Standards and Technology is an agency of the U.S. Department of Commerce, located 25 miles north of Washington, D.C. in suburban Gaithersburg, Maryland. A map to NIST is available on-line.