ISO/TR 13345:1994
(Main)Industrial automation systems — Specification of subsets of the protocol for ISO/IEC 9506
Industrial automation systems — Specification of subsets of the protocol for ISO/IEC 9506
Systèmes d'automation industrielle — Spécification de sous-ensembles du protocole pour l'ISO/CEI 9506
General Information
Relations
Standards Content (Sample)
TECHNICAL
ISO/IEC
REPORT
TR 13345
First edition
1994-07-15
Industrial automation Systems -
Specification of subsets of the protocol for
ISO/IEC 9506
Systemes d ’automatisation industrielle - Spkification de sous-
ensembles du protocole pour I’lSO/CEI 9506
Reference number
ISO/IEC TR 13345:1994(E)
---------------------- Page: 1 ----------------------
o ISO/IEC
ISO/IEC TR 13345:1994(E)
Page
Cmtents
. . .
vlll
For~od .
1
Scope .
1
1
Normative references .
2
3 ProtOd subset specification .
31 . Notation .
...........................
32 Determination of the effkctive protocol
...............................
33 Protocol for companion standards
6
4 Protocolmodule .
6
41 . MMspdu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7
4.2 GxGrmed-RequestPDU .
........................................... 7
43 Un~~~-PDU
7
.....................................
44 . G&irmed-ResponsePDU
........................................ 8
45 Confirmed-ErrorPDU
8
46 . Meer .
8
47 . ConGrmedSewiceRequest .
..................................... 14
48 . Additionaktice-Request
........................................... 16
49 CS-RequestDetail
........................................ 16
4-10 Un~nfirmedSenke.
....................................... 17
4-11 CS-Unconfkmed-Detail
.................................... 17
4-12 G&irmedSeti~Response
.................................... 23
4-13 Additionakrvice-Response
.......................................... 25
4-14 CS-Response-Detail
25
4-15 SenriceError .
28
4 ’16 AdditionaIServi~-Error .
29
4-17 TiiimeOfDay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
29
4-18 Identifier .
29
Integer ’s .
4-19
29
4io ObjectName .
30
ApplicationReference .
4.21
30
FileName .
4.22
30
Prior@ .
4.23
................................................... 30
4.24 Severity
.............................................. 30
42!5 Initiate-PDU ’s
............................................. 31
4.26 InitiateDetaiI ’s
........................................ 31
4.27 ~~UP~~~tions
..................................... 34
4.28 ParameterSupportOptions
@ ISO/IEC 1994
All rights reserved. Unless otherwise specified, no part of this publication may be
reproduced or utilized in any form or by any means, electronie or mechanical, including
photocopying and microfilm, without Permission in writing from the publisher.
ISO/IEC Copyright Office l Case postale 56 l CH-121 1 Geneve 20 l Switzerland
Printed in Switzerland
ii
---------------------- Page: 2 ----------------------
ISO/IEC TR 13345: 1994(E,
o ISO/IEC
4.29 ~nchcle=PDU ’s .
3d
430 tand-PDS'S .
35
431 RejectPDU .
35
432 S~~.~ . 36
433 RobotStatus .
37
434 unsolicitedstatus .
37
435 GetNameList .
3E
436 &4dditionalObjectClasses
..................................... 31
437 Identify .
35
438 Renate .
31
439 GetCapabilityList .
40
4.40 InitiateDownloadSequence
..................................... 4cjl
4.41 Dwvhad&gment .
4In,
4.42 TerminateDownloadSequence
.................................. 4G
4.43 InitiateUploadSequence
....................................... 4:
4.44 Uloadsegment .
41
4.45 TerminateUploadSequence
.................................... 41
4.46 RequestDomahDownload 41
.....................................
4-47 RequestDomainUpload
....................................... 411
4.48 LoadDomaincontent
......................................... 42
4.49 StoreDomainContent
......................................... 42
450 DeleteDomain .
42
451 GetT)nmiu ’n .
42
452 DomainState .
47
453 CreateProgramInv~tion
...................................... 43
454 DeleteProgramInv~tion
...................................... 4.h
455 Start .
44
456 ProgramInvocationState
....................................... 4-h
457
4&
StoP
R~~e ’::::::::::::::::::::::::::::::::::::::::::::::::::: 4;
458
459 Reset .
45
4-60 Kill .
4q
4.61 GetPmgramInvocationAttriiutes
................................ 4;:
452 TypeSpeciEication .
46
4.63 AltemateAccess . 41
4.64 AccessResult .
48
4.65 Data .
48
4.66 DataAccesError
............................................ 49
4.67
VariableAccessSpecification 49
....................................
468 VariableSpecification . 49
4-69 ScatteredAccesDescription
.................................... 50
4.70
Address . 5CJ
4.71 .
Read 50
4.72 .
write SG
4.73
InformationReport. . 5G:
4.74 GetVariableAccessAttriiutes 51
...................................
. . D
11s
---------------------- Page: 3 ----------------------
o ISO/IEC
ISO/IEC TR 13345:1994(E)
51
........................................
4.75 DefineNamedVariable
51
........................................
4-76 DefineScatter ed.ibes
51
Attributes .
4.77 GetScatteredAcces
52
........................................
4.78 DeleteVariableAccess
52
.....................................
4.79 DefineNamedVariableList
52
................................
4.80 GetNamedVariableI&Attriiutes
53
.....................................
4.81 DeleteNamedVariableList
53
...........................................
4.82 DefineNamedTF
53
.....................................
4.83 GetNamedT~Atiriiiiiutes
53
...........................................
4x4 DeleteNamedT~
54
...............................................
4x5 TakeControl
54
...........................................
4.86 Relinquishtintrol
54
4x7 DefineSemaphore . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
55
...........................................
4.88 DeleteSemaphore
55
ReportSemaphoreStatus .
4.89
55
ReportPoolSemaphoreStatus .
4.90
55
ReportSemaphoreEntryStatus .
4.91
56
AttachToSemaphore .
4.92
56
............................................
4.93 SemaphoreEntry
56
.....................................................
4.94 Input
56
....................................................
4.95 output
57
DefineEventCondition .
4,%
57
DeleteEventCondition .
4.97
57
...................................
GetEventConditionAttriYibutes
498
58
...................................
ReportEventConditionStatus
4.99
58
.................................
AlterEventConditionMonitoring
4.100
59
TriggerEvent .
4.101
59
DefineEventAction .
4.102
59
DeleteEventAction .
4.103
59
.....................................
GetEventActionAttriiutes
4.104
60
4.105 ReportEventActionStatus .
60
DefineEventEnrollment .
4.106
61
.......................................
4,107 DeleteEventEnrollment
61
GetEventEnrollmentAttributes .
4.108
61
............................................
4.109 EventEnrollment
62
..................................
4.110 ReportEventEnrollmentStatus
62
........................................
4.111 AlterEventEnrollment
62
4.112 Eventnotification .
63
..................................
4,113 AcknowledgeEventNotiEication
63
4.114 GetAlamlsummary .
64
..................................
4.115 GetAlarmEnrollmentSummary
65
......................................
4,116 AttachToEventCondition
65
4.117 EC-Class .
65
4-118 EC-State .
65
EE-state .
4.119
m -19 ~
66
4ao lr~i~io~.
IV
---------------------- Page: 4 ----------------------
o ISO/IEC ISO/IEC TR 13345: 1994(E
66
............................................
AktrmAckRule.
4.121
66
..................................................
EE-class
4.122
66
EE-Duration .
4.123
66
.........................................
4.124 EN-Additional-Detail
67
.................................................
4.125 EventTiiii
67
...............................................
4.126 ReadJoumal
67
...............................................
4.127 Writdoumal
67
.............................................
4.128 Initi~oumal
68
4.129 ReportJournalStatus .
68
..............................................
4.130 CreateJoumzil
68
..............................................
4.131 DeleteJoumal
68
Entrycont .
4.132
69
..............................................
4.133 ExchangeData
.................................... 69
4.134 GetDataExchangeAttn ’butes
69
.............................................
4.135 Ölnation
...................................... 69
4.136 DefineAccessControlList
................................. 70
4.137 GetAuxscontrolListAttriiutes
................................. 71
RepoWGntrolledObjects
4.138
...................................... 71
DeleteAccessControlList
4.139
72
ChangeAccessControl .
4.140
73
ObtainFile .
4.141
73
VMDstop .
4.142
73
................................................
4.143 VMDReset
73
.....................................................
4.144 Ölst
............................... 73
AlterPro~a.mInvocationAttriiutes
4.145
74
.............................................
4.146 ControlElement
....................................... 74
4.147 InitiateUnitContro~ad
74
.....................................
4.148 UnKontrolLoadSegment
.......................................... 74
4.149 UnitControlUpload
75
StartUnitControl .
4.150
............................................ 75
StopUnitControl
4.151
75
4.152 Createunitcontrol .
4.153 ~dToU~tCOntTO1. 75
76
4.154 Re~eF~mUnitC .
76
.....................................
4.155 GetUnitControlAttriiutes
76
.....................................
4.156 ~dUnitControlF ’romFile
76
.......................................
4.157 StoreUnitControlToFile
77
4.158 ~~~U~t~n~ol .
77
.....................................
4.159 DefineEventConditionList
77
.....................................
4.160 DdeteEventC
............................... 77
4.161 AddEventConditionListReference
............................ 78
4.162 RemoveEventConditionListReference
78
................................
4.163 CtEventConditionListAttriiutes
................................ 78
ReportEventConditionListStatus
4.164
......................................... 79
EventCixxlitionStatus
4.165
.............................. 79
4.166 AlterEventConditionIistMonitoring
---------------------- Page: 5 ----------------------
o ISO/IEC
ISO/IEC TR 13345:1994(E)
80
An.nexAFileManagementProtocol .
80
Al l?ikOpen .
80
FileRead .
80
Filetlose. .
A.3
81
FileRename .
A4
81
FileDelekte .
81
F&dkxtory .
A6
vi
---------------------- Page: 6 ----------------------
ISO/IEC TR 13345:1994(E)
0 ISO/IEC
Foreword
ISO (the International Organization for Standardization) and IEC (the Inter-
national Electrotechnical Commission) form the specialized System for
worldwide standardization. National bodies that are members of ISO or IEC
participate in the development of International Standards through technical
comrnittees established by the respective organization to deal with particular
fields of technical activity. ISO and IEC technical committees collaborate in
fields of mutual interest. Other international organizations, govemmental and
non-govemmental, in liaison with ISO and IEC, also take part in the work.
In the field of information technology, ISO and IEC have established a joint
technical committee, ISOLIEC JTC 1.
The main task of technical committees is to prepare International Standards,
but in exceptional circumstances a technical committee may propose the
publication of a Technical Report of one of the following types:
- type 1, when the required support cannot be obtained for the
publication of an International Standard, despite repeated efforts;
- type 2, when the subject is still under technical development or where
for any other reason there is the future but not immediate possibility of
an agreement on an International Standard;
- type 3, when a technical committee has collected data of a different
kind from that which is normally published as an International
Standard ( “state of the art ”, for example).
Technical Reports of types 1 and 2 are subject to review within three years of
publication, to decide whether they tan be transformed into International Stan-
dards. Technical Reports of type 3 do not necessarily have to be reviewed until
the data they provide are considered to be no longer valid or useful.
ISO/IEC TR 13345, which is a Technical Report of type 2, was prepared by
Technical Committee ISO/TC 184, industriaL automution Systems and
integration, Subcommittee SC 5, Architecture and communication.
This document is being issued in the type 2 Technical Report series of
publications (according to subclause G.4.2.2 of part 1 of the ISO/IEC
Directives, 1992) as a “prospective Standard for provisional application” in the
field of industrial automation because there is an urgent need for guidance on
how Standards in this field should be used to meet an identified need.
vii
---------------------- Page: 7 ----------------------
0 ISO/IEC
ISO/IEC TR 13345: 1994(E)
This document is not be regarded as an “International Standard ”. It is
proposed for provisional application so that information and experience of its
use in practice may be gathered. Comments on the content of this document
should be sent to the ISO Central Secretariat.
A review of this type 2 Technical Report will be carried out not later than two
years after its publication with the Options of: extension for another two years;
conversion into an International Standard; or withdrawal.
Annex A forms an integral patt of this Technical Report.
. . .
VI11
---------------------- Page: 8 ----------------------
TECHNICAL REPORT o ISO/IEC
ISOIIEC TR 13345:1994(E)
Industrial automation Systems - Specification of subsets
of the protocol for ISO/IEC 9506
1 Scope
ISO/IEC 9506-1 and ISO/IEC 9506-2 were published in 1990. Since publication, considerable
experience has been gained by implernentors identifying defects and other shortcomings. One major
shortcoming of ISO/IEC 9506-2 is that although it allows subsetting of the protocol in accordance with
Parameters declared at the time of association establishment, no clear notation for describing the subsets
is present. Moreover, for some combinations of Parameters, there are possible ambiguities in the
specification of the subset.
MMS prescribes a procedure, used at the time of association establishment, in which sets of Parameters
are exchanged for the purpose of identifying the Services that may be performed during the association.
The effect of identifying these Parameters is such that the protocol available to be used during the
association is limited to a proper subset of the entire protocol specified in ISO/IEC 9506-2. The
Parameters exchanged are of two types:
a) those that are announced by the two MMS users, the Service conformance building block (CBB),
b) those that are negotiated between the two MMS users, the Parameter CBB. These CBBs are
proposed by the association initiator and either accepted or rejected by the association responder.
Negotiation always works to reduce the set proposed, never to augment it.
Declaration of support of any Service CBB requires inclusion of the protocol related to that Service in the
protocol set to be used on that association. Support of a Parameter CBB usually results in the inclusion of
some optional fields within the protocol of some Service request or response. However, in some cases,
support of a Parameter CBB implies support of one or more Service CBBs, regardless of whether or not
support for those Service CBBs has been declared. It is in such situations that ambiguity may arise. This
Technical Report specifies a uniform technique for resolving such ambiguities.
It introduces a formal notation to describe the subsets in an unambiguous form, and a complete
specification of the MMS protocol using this new notation. The notation also supports the protocol of the
Companion Standards. The protocol of the Robot Companion Standard (ISO/IEC 9506-3), of the NCC
Companion Standard (ISOLIEC 9506-4), and of the Process Industries Companion Standard (the subject
of future International Standard ISO/IEC 9506-6) are included.
Annex A specifies the File Management Protocol, the subject of annex C of ISO/IEC 9506-2.
---------------------- Page: 9 ----------------------
0 ISO/IEC
ISO/IEC TR 13345:1994(E)
2 Normative references
The following Standards contain provisions which, through reference in this text, constitute provisions of
this Technical Report. At the time of publication, the editions indicated were valid. All Standards are
and Parties to agreements based on this Technical Report are encouraged to
subject to revision,
investigate the possibility of applying the most recent editions of the Standards listed below. Members of
ISO and IEC maintain registers of currently valid International Standards.
Manufacturing Message SpeciJication -
ISO/IEC 9506- 1: 1990, Industrial automation Systems -
Part 1: Service definition.
ISOIIEC 9506-2: 1990, Industrial automation Systems - Manufacturing Message Specification -
Part 2: Protocol specification.
Manufacturing Message Speciflcation -
ISO/IEC 9506-l/Amd. 1: 1993, Industrial automation Systems -
Part 1: Service definition AMENDMENT 1 Data exchange.
Manufacturing Message Specification -
ISOIIEC 9506-2lAmd.l: 1993, Industrial automation Systems -
Part 2: Protocol specification AMENDMENT 1 Data exchange.
- Manufacturing Message Specifkation -
1 > Industrial automation Systems
ISO/IEC 9506- l/Amd.2:-
Part 1: Service definition AMENDMENT 2 Conditioned Service response.
Q Industrial automation Systems - Manufacturing Message Specification -
ISO/IEC 9506-2/Amd.2:-
Part 2: Protocol specification AMENDMENT 2 Conditioned Service response.
Manufacturing Message Specification -
ISO/IEC 9506-3: 199 1, Industrial automation Systems -
Part 3: Companion Standard for robotics.
Manufacturing Message Specification -
ISO/IEC 9506-4: 1992, Industrial automation Systems -
Part 4: Companion Standard for numerical control.
ISOIIEC 8824: 1990, Information technology - Open Systems Interconnection - Specification of
Abstract Syntax Notation One (ASN.1).
3 Protocol subset specification
3.1 Notation
The notation being introduced by this technical report has the form of a preprocessor language in which
ASN.l is embedded. It is very similar in concept to the macro preprocessor for the C language. There
are only three commands used in this notation:
- IF ( )
- ELSE
- ENDIF.
1) To be published.
2
---------------------- Page: 10 ----------------------
o ISO/IEC ISO/IEC TR 13345:1994(E)
The IF command requires an argument list enclosed in parentheses; the arguments are the names of the
conformance building blocks, either Service or Parameter. One or more such arguments must appear.
If there is more than one argument, the arguments are separated by one or more spaces. The argument
is treated as a boolean variable that has the value true if the corresponding Service or Parameter building
block is supported as a result of the MMS Initiate exchange. If there is one argument, then the lines
following the IFstatement up to the EISE Statement or to the matthing ENDIF Statement (if no EISE
Statement appears) are to be included in the resulting ASN.l definition if and only if the conformance
building block so named in supported. If there is more than one argument, the lines following the IF
Statement are to be included if any of the conformance building blocks in the argument list is supported.
(This tan be thought of as a ‘logical OR’ function of the conformance building blocks.)
IF Statements may be nested to any depth; the effect of
wx)
WY 1
is to include the lines following these commands if and only if both x and y are true, that is if conformance
block x and conformance block y are both included. (This tan be thought of as a ‘logical AND’ function
of the conformance building blocks.)
The EISE Statement may appear to allow ASN.l Statements to be included if a conformance building
block is not true. Its use is similar to the normal use of EISE in programming languages.
The ENDIF Statement is used to end the scope of an IF Statement or EISE Statement. Esch IF
Statement must have a matthing ENDIF Statement.
3.2 Determination of the efkctive protocol
The protocol effective for any specific combination of Service and Parameter CBBs tan be determined
by the following procedure:
a) For each Service CBB and Parameter CBB declared or negotiated by the Initiate exchange,
set the corresponding argument equal to true.
b) Process the entire ASN. 1 module specified in clause 4 and in Annex A. For each IF Statement,
evaluate the argument.
i) If any of the elements in the argument is true, retain the Statements following the IF
Statement up to a matthing ENDIF or EISE Statement, if present. Discard the
Statements following the EISE Statement up to the matthing ENDIF.
ii) If all the elements of the argument are false, discard the Statements following up to
the matthing EISE or ENDIF. If an EISE Statement is present, retain the Statements
following it to the matthing ENDIF.
3
---------------------- Page: 11 ----------------------
0 ISO/IEC
ISO/IEC TR 13345:1994(E)
iii) Discard the IF Statement, its matthing ENDIF, and the EISE, if present. The result
should be an ASN.1 module devoid of IF, EISE, and ENDIF Statements.
c) In each production replace any occurrence of a comma followed immediately by a right brate
with a right brate; i.e., delete such commas.
d) Form an ASN.l working module of productions containing only the first production (i.e. the
production MMSPDU from 4.1).
e) Add to the ASN.l working module any productions referenced in the working module that
are not already contained in that module.
f) Repeat step e) until no new productions are added.
The resulting ASN.1 module is the module that is effective for this combination of CBBs. Receipt of a
PDU which is not consistent with this module should result in a reject.
3.3 Protocol for companion standards
In addition to the protocol of ISO 9506-2, the protocol for all the amendments and companion Standards
has also been included in this report. In Order to generate the protocol for a companion Standard, the
set of Parameter CBBs has been augmented with three new symbols:
csr - true if this is an instance of the companion Standard for robots,
csnc - true if this is an instance of the companion Standard for NC equipment,
cspi - true if this is an instance of the companion Standard for the process industries.
Except for the fact that the companion Standards define a different abstract Syntax that must be
negotiated using presentation negotiation, each companion Standard acts just like a Parameter CBB.
In Order to accomodate these companion Standards, the list of Service and Parameter CBBs is augmented
by the Service and Parameter CBBs from those Standards.
The complete list of Service CBBs is:
Status defineNamedVariableList
getNameList getNamedVariableListAttributes
deleteNamedVariableList
identify
rename defineNamedTlpe
read getNamed ’QpeAttributes
write deleteNamedQpe
getVariableAccessAttributes
input
defineNamedVariable output
defineScatteredAccess
takeContro1
getScatteredAccessAttributes
relinquishtintrol
deleteVariableAccess definesemaphore
---------------------- Page: 12 ----------------------
ISO/IEC TR 13345:1994(E)
o ISO/IEC
deletesemaphore createJouma1
reportSemaphoreStatus deleteJouma1
reportPoolSemaphoreStatus getCapabilityList
reportSemaphoreEntryStatus fileopen
initiateDownloadSequence fileRead
downloadSegment filetlose
terminateDownloadSequence fileRename
initiateUploadSequence fileDelete
uploadSegment fileDirectory
terminateUploadSequence unsolicitedStatus
requestDomainDownload informationReport
eventNotification
requestDomainUpload
1oadDomainContent attachToEventCondition
StoreDomainContent attachToSemaphore
deleteDomain conclude
getDomainAttributes cancel
createProgramInvocation getDataExchangeAttributes
deleteProgramInvocation exchangeData
Start vMDStop
stop vMDReset
resume select
alterProgramInvocationAttributes
reset
initiateUnitControlLoad
kill
getProgramInvocationAttributes uniKontrolLoadSegment
obtainFile unitControlUpload
defineEventCondition startUnitContro1
deleteEventCondition stopUniKonWo
getEventConditionAttributes createUnitContro1
reportEventConditionStatus addToUnitContro1
alterEventConditionMonitoring removeFromUnitContro1
triggerEvent getUnitControlAttributes
defineEventAction 1oadUnitControlFromFile
deleteEventAction storeUnitControlToFile
getEventActionAttributes deleteUnitContro1
reportEventActionStatus defineEventConditionList
defineEventEnrollment deleteEventConditionList
deleteEventEnrollment addEventConditionListReference
removeEventConditionListReference
alterEventEnrollment
getEventConditionListAttributes
reportEventEnrollmentStatus
reportEventConditionListStatus
getEventEnrollmentAttributes
acknowledgeEventNotification alterEventConditionListMonitoring
getAlarmSummary defineAccessControlList
getAlarmEnrollmentSummary getAccessControlListAttributes
readJouma1 reportAccessControlledObjects
writeJoumal deleteAccessControlList
initializeJouma1 changeAccessContro1
reportJournalStatus
The complete list of Parameter (and parameter-like) CBBs is:
strl real
strz cei
vnam des
valt dei
vadr recl
csr
csnc
tPY
vlis
cspi
---------------------- Page: 13 ----------------------
o ISO/IEC
ISO/IEC TR 13345:1994(E)
4 Protocol module
This clause presents the entire protocol module using the macro notation described in Clause 3. It
includes all of the protocol for the companion Standard for robots, ISO 9506-3, the companion Standard
for NC equipment, ISO 9506-4, and the companion Standard for the process industries, ISO 9506-6. It
also includes the protocol for the Data Exchange Services and the Conditioned Service Response
services.
4.1 MMspdu
IF ( csr csnc cspi )
IF ( csr )
ISO-9506.MMS-ROBOT-1 (iso Standard 9506 part(3) mms-robot-moduleversionl(2) )
EN
...
Questions, Comments and Discussion
Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.