The Net is the Automation.
We bring people, systems and devices together.
NettedAutomation GmbH
Information & Communication Systems (NAICS)

back - menue - contact - search
news - solutions - standardization - seminars - marketing support
question & answers - discussion forum - glossary - links - about us


-> home > question and answers > mms >

MMS Q&A

It is our intent that you - the domain expert - add to the list of Q&A.

NEW free IEC 61850 Client/Server Demo and MMS Analyser Software
for IEC 61850 / MMS (with Web/XML support) executable on your PC (Win 95, 98, NT, 2000, XP)


Brief UCA/MMS Introduction


1. What does the abbreviation MMS stand for?
MMS stands for Manufacturing Message Specification. MMS is an International Standard ISO/IEC 9506. The latest version has the date 2000 (ISO/IEC 9506:2000)


2. Is MMS a standard for manufacturing systems?
Though MMS has originally designed for manufacturing applications, it is quite neutral. The services models and messages defined (e.g. for reading and writing variable objects) are very common. The utility industry world-wide uses MMS as a base standard for their advanced communication systems for monitoring, control, data access, and other applications.
The MMS specification defines a common message format for providing a wide range of services to the applications. MMS services include, for example, reading, writing, and reporting of variables (simple or arbitrarily structured data types), event management, journaling, remote program control, and uploading/downloading of data and programs. The MMS protocol provides a rich real-time network-programming environment to support a very wide range of distributed applications. The various MMS models and services are independent of each other.


3. Where can I get more details on MMS?
-> MMS chapter in etz report 32


4. What does "Virtual" in the MMS Virtual Manufacturing Device (VMD) mean?
To understand the concept of a virtual system, the following saying may help.

If it's there and you can see it
It's REAL
If it's there and you can't see it
It's TRANSPARENT
If it's not there and you can see it
It's VIRTUAL
If it's not there and you can't see it
It's GONE

Roy Wills

The MMS VMD represents all objects and services made available by a system compliant to MMS. How the VMD is implemented is totally outside the standard.


5. Where can I get MMS compliant software?
Among other firms you may check these sites: www.sisconet.com, www.tamarack.com, www.livedata.com


6. Are there any MMS Protocol Analyzer tools?
KEMA (Netherlands) offers the UniCA analyzer. Check with www.kemaconnect.nl


7. What is MMS?
MMS (Manufacturing Message Specification) is an OSI application layer standard designed for the real-time remote control and eal-time monitoring of intelligent industrial devices such as PLCs, NCs or RCs. It is a set of objects and services allowing the remote manipulation of variables, programs, semaphores, events, journals, terminals, etc. MMS offers a wide range of services satisfying both simple and complex applications.

Instances of MMS objects as named variable objects provide for self-description of the device. Named Variable objects have a name, a type description and methods (read, write, get attibutes, define, delete). Names may be structured by other standards like IEEE TR 1550 (UCA) or IEC 61850 (Substation systems and communications):

"Subst1.Relay5/MMXU2.MX.AphsB":

    - measured value (MX) current (A) of phase B (phsB)
    - measurement unit MMXU2
    - device "Subst1.Relay5"

"Subst1.Relay5/MMXU2.CF.AphsB":

    - configuration (CF = unit, offset, scale, dead band, ...) of the current (A) of phase B (phsB); dead band to control reporting.
    - measurement unit MMXU2
    - device "Subst1.Relay5"

MMS deals with application layer functions rather than transparent "octet string" exchange.


8. What are the most important services?
MMS variables can be simple (booleans, integers, strings...) or structured (arrays or records). MMS variables can be read or written individually, in lists (predefined or explicitly defined). Partial access to fields of records or particular elements of arrays is possible when using the alternate access parameter.

MMS programs can be remotely started, stopped, resumed, killed.

MMS allows for the download or upload of areas called domains which can contain code, data or both.

MMS defines two classes of semaphores which can be used to ensure mutual exclusion or synchronisation of processes.

MMS offers a large number of services for the definition or modification of events. A user can attach an action to an event and can enroll himself or another process to receive the corresponding event notifications.

The majority of MMS confirmed services can be modified, i.e. their execution can be conditioned on the occurrence of an event or the release of a semaphore. MMS modifiers thus allow a wide variety of synchronizations.


9. How is MMS specified?
MMS is specified in two documents:

ISO/IEC 9506-1 describes the objects and services that are provided to remotely manipulate the MMS objects. MMS objects, e.g., named variables or named variable lists are defined by sets of attributes like name, type etc. For each service, a description is given of the parameters carried by the service primitives. The services are described in an abstract way which does not imply any particular implementation. In other words, the standard does not specify application programming interfaces.

ISO/IEC 9506-2 specifies the MMS protocol in terms of PDUs (the OSI term for message) and statemachines which describe behaviour. The PDUs are described with a notation called ASN.1 which gives the syntax of the PDUs. There exist tools called ASN.1 compilers to translate these definitions into C code for example. The main part of ISO/IEC 9506-2 is devoted to these PDUs. The statemachines indicate how MMS reacts to certain events, such as reception of a request PDU or response PDU.


10. What is a MMS companion standard?
A companion standard is a document which explains how MMS can be used for a class of applications such as Numerical Control of machine tools, Robot control, Programmable Controllers or Process Control.
A companion standard models an application area in terms of objects which are then mapped onto MMS objects. To manipulate the application objects you actually manipulate the corresponding MMS objects with the appropriate services.


11. Why use MMS?
MMS is a standard protocol, widely implemented by industrial device manufacturers, relieving you of the problems of heterogeneity so often found in industrial applications. MMS is the lingua franca of industrial devices.
MMS is very powerful and can solve a large number of industrial problems

MMS products are cheaper than many developments that you or your company could do. MMS provides much more than TCP/IP which essentially offers a mechanism to transfer streams of bytes. MMS transfers commands with parameters between machines. To build a protocol on top of TCP, UDP or even Ethernet that offers the minimum that MMS offers, you will spend tens of man-months.

In summary, MMS allows a user to concentrate on his applications and not on communication problems, which are complex and the matter of specialists.

By the way, MMS is the only international STANDARD for real-time process data exchange.


12. Which communication architectures support MMS services?
The Manufacturing Automation Protocol (MAP) 3.0 architecture defined by general motors offers MMS on a connection-oriented communication profile.

The CNMA (Communications Network for Manufacturing Applications) architecture defined by the ESPRIT CNMA and CCE-CNMA projects offers MMS on a connection-oriented communication profile. CNMA is a superset of MAP 3.0 and is compatible with the latter.

Mini-MAP -- a three layer architecture defined in MAP 3.0 for real time applications -- offers MMS on a connectionless profile: the LLC type 3 protocol offering reliable transfer of limited size PDUs.

The FIP (Factory Instrumentation Protocol) field bus offers MMS on a connectionless profile.

The ICCP (Inter Control Center communications Profile) specifies the use of MMS over Ethernet (TCP/IP), X.25 and others for realtime communication between data bases of electric utilities.

PROFIBUS FMS supports a small subset of services applicable under PROFIBUS only. PROFIBUS DP and PA dominate the PROFIBUS market, FMS is used at cell network level.


13. What is the difference between OPC and MMS?

The following comparison contains a list of the main issues to be considered for a technical comparison. The comparison discusses also important background information.

 
OPC (1999)
Version 2.0
OPC (under discussion)
UCA2/TASE.2
Standard
no;
consortium
no;
consortium
IEC 60870-6-503
IEC 60870-6-702
IEC 60870-6-802
Availability on operating system platforms
WINDOWS 9x, NT
WINDOWS 9x, NT
IBM RS/600 AIX V4.1
Sun SPARC Solaris
DEC Alpha Open VMS
Windows 9x, NT
OS/2
QNX
VXWorks
PSOS
...
Communication
TCP/IP
TCP/IP
TCP/IP, OSI, many other
Object modelling
Microsoft COM/DCOM
Microsoft COM/DCOM
MMS, UCA
IEC 60870-6-503
IEC 60870-6-802
Client/Server
yes
yes
yes
local API
yes (C++, VB)
yes (C++, VB)
no (intent of TASE.2 is to have an interface between computers);
any local API possible
remote interface
OLE (object linking and embedding) + basic monitoring functions (OPC specific)
OLE (object linking and embedding) + enhanced monitoring functions (OPC specific)
IEC 60870-6-503
basic + enhanced monitoring and control functions; mapped to MMS (ISO/IEC 9506)
    Data access
    - Simple Data
    - Grouped data
    - Get/Set/Notific.
    - Data Filtering

yes
yes
yes
yes
 

yes
yes
yes
yes
    Alarms & Events
    - Conditions
    - Events
    - Event Notification
    - Subscriptions
 

yes
yes
yes
yes

yes
yes
yes
yes
    History data access
-
yes
some in TASE.2
some more in CASM
scalable
yes
yes
yes;
MMS allows simplest solutions on serial link (RS 232, ADLC, ...) or fieldbusses and others
implemented and in use
yes
-
yes
supported by
mainly factory automation system vendors
-
mainly utility automation system vendors
domain/device specific data objects and device models
-
-
IEC 60870-6-802,
GOMSFE
Competing solutions
many available other proprietary solutions like Intouch, Factory Suit, and many others;
market is split in many segments
many available other proprietary solutions like Intouch, Factory Suit, and many others;
market is split in many segments
No major competing solution on the market;
no comparable standard;
Why developed
as a response of the success of other proprietary solutions
as a response of the success of other proprietary solutions
standard required to allow interoperability;
to be vendor/system independent
Main focus
inter-program communication in the Microsoft Windows environment
inter-program communication in the Microsoft Windows environment
inter-device communication between any devices (simple or complex)


21.07.2004


The Net is the Automation.
© 2000-2002 NettedAutomation
composed by JohnBlack '01

back - menue - contact - search
news - solutions - standardization - seminars - marketing support
question & answers - discussion forum - glossary - links - about us