BS EN 61158-6-2:2012
$215.11
Industrial communication networks. Fieldbus specifications – Application layer protocol specification. Type 2 elements
Published By | Publication Date | Number of Pages |
BSI | 2012 | 270 |
IEC 61158-6-2:2010 provides common elements for basic time-critical and non-time-critical messaging communications between application programs in an automation environment and material specific to Type 2 fieldbus. The term “time-critical” is used to represent the presence of a time-window, within which one or more specified actions are required to be completed with some defined level of certainty. Failure to complete specified actions within the time window risks failure of the applications requesting the actions, with attendant risk to equipment, plant and possibly human life. It specifies interactions between remote applications and defines the externally visible behavior provided by the Type 2 fieldbus application layer. This second edition cancels and replaces the first edition published in 2007 and constitutes a technical revision. The main changes with respect to the previous edition are: – update of normative and bibliographic references; – update of abbreviations; – update list of service request/response PDUs (Time Sync and Parameter ASEs/objects); – update of Time Sync ASE/object; – new Parameter ASE/object; – update/add object and services codes for Time Sync and Parameter ASEs; – new QoS specification. This bilingual version published in 2012-07 corresponds to the English version published in 2010-08.
PDF Catalog
PDF Pages | PDF Title |
---|---|
7 | CONTENTS |
17 | INTRODUCTION |
18 | 1 Scope 1.1 General 1.2 Specifications |
19 | 1.3 Conformance 2 Normative references |
20 | 3 Terms, definitions, symbols, abbreviations and conventions 3.1 Terms and definitions from other ISO/IEC standards |
21 | 3.2 Terms and definitions from IEC 61158 5 2 3.3 Additional terms and definitions |
27 | 3.4 Abbreviations and symbols 3.5 Conventions |
28 | Figures Figure 1 – Attribute table format and terms Figure 2 – Service request/response parameter |
29 | Tables Table 1 – Get_Attribute_All response service rules Table 2 – Example class level object/service specific response data of Get_Attribute_All |
30 | Table 3 – Example Get_Attribute_All data array method |
31 | Table 4 – Set_Attribute_All request service rules Table 5 – Example Set_Attribute_All attribute ordering method Table 6 – Example Set_Attribute_All data array method |
32 | 3.6 Conventions used in state machines Figure 3 – Example of an STD |
33 | 4 Abstract syntax 4.1 FAL PDU abstract syntax Table 7 – State event matrix format Table 8 – Example state event matrix |
36 | Table 9 – UCMM_PDU header format Table 10 – UCMM command codes |
37 | Table 11 – Transport class 0 header |
38 | Table 12 – Transport class 1 header Table 13 – Transport class 2 header Table 14 – Transport class 3 header Table 15 – Classes 4 to 6 header format |
39 | Table 16 – Real-time data header – exclusive owner |
40 | Table 17 – Real-time data header– redundant owner |
42 | Table 18 – Forward_Open request format |
43 | Table 19 – Forward_Open_Good response format Table 20 – Forward_Open_Bad response format |
44 | Table 21 – Large_Forward_Open request format |
45 | Table 22 – Large_Forward_Open_Good response format Table 23 – Large_Forward_Open_Bad response format |
46 | Table 24 – Forward_Close request format Table 25 – Forward_Close_Good response format |
47 | Table 26 – Forward_Close_Bad response format |
48 | Table 27 – Unconnected_Send request format Table 28 – Unconnected_Send_Good response format |
49 | Table 29 – Unconnected_Send_Bad response format Table 30 – Get_Connection_Data request format |
50 | Table 31 – Get_Connection_Data response format Table 32 – Search_Connection_Data request format |
51 | Table 33 – Get_Object_Owner request format Table 34 – Forward_Open_Good response format |
52 | Figure 4 – Network connection parameters |
54 | Figure 5 – Time tick Table 35 – Time-out multiplier Table 36 – Time tick units |
56 | Figure 6 – Connection establishment time-out |
58 | Table 37 – Selection of connection ID Table 38 – Transport class, trigger and Is_Server format |
59 | Table 39 – MR_Request_Header format Table 40 – MR_Response_Header format |
60 | Table 41 – Structure of Get_Attribute_All_ResponsePDU body Table 42 – Structure of Set_Attribute_All_RequestPDU body Table 43 – Structure of Get_Attribute_List_RequestPDU body Table 44 – Structure of Get_Attribute_List_ResponsePDU body Table 45 – Structure of Set_Attribute_List_RequestPDU body |
61 | Table 46 – Structure of Set_Attribute_List_ResponsePDU body Table 47 – Structure of Reset_RequestPDU body Table 48 – Structure of Reset_ResponsePDU body Table 49 – Structure of Start_RequestPDU body Table 50 – Structure of Start_ResponsePDU body |
62 | Table 51 – Structure of Stop_RequestPDU body Table 52 – Structure of Stop_ResponsePDU body Table 53 – Structure of Create_RequestPDU body Table 54 – Structure of Create_ResponsePDU body Table 55 – Structure of Delete_RequestPDU body Table 56 – Structure of Delete_ResponsePDU body |
63 | Table 57 – Structure of Get_Attribute_Single_ResponsePDU body Table 58 – Structure of Set_Attribute_Single_RequestPDU body Table 59 – Structure of Set_Attribute_Single_ResponsePDU body Table 60 – Structure of Find_Next_Object_Instance_RequestPDU body Table 61 – Structure of Find_Next_Object_Instance_ResponsePDU body |
64 | Table 62 – Structure of Apply_Attributes_RequestPDU body Table 63 – Structure of Apply_Attributes_ResponsePDU body Table 64 – Structure of Save_RequestPDU body Table 65 – Structure of Save_ResponsePDU body Table 66 – Structure of Restore_RequestPDU body Table 67 – Structure of Restore_ResponsePDU body |
65 | Table 68 – Structure of Group_Sync_RequestPDU body Table 69 – Structure of Group_Sync_ResponsePDU body Table 70 – Identity object class attributes Table 71 – Identity object instance attributes |
66 | Table 72 – Identity object bit definitions for status instance attribute |
67 | Table 73 – Bits 4 – 7 of status instance attribute Table 74 – Class level object/service specific response data of Get_Attribute_All |
68 | Table 75 – Instance level object/service specific response data of Get_Attribute_All Table 76 – Modified instance level object/service specific response data of Get_Attribute_All |
69 | Table 77 – Object-specific parameter for Reset Table 78 – Message Router object class attributes Table 79 – Message Router object instance attributes |
70 | Table 80 – Class level object/service specific response data of Get_Attribute_All Table 81 – Instance level object/service specific response data of Get_Attribute_All Table 82 – Assembly object class attributes Table 83 – Assembly object instance attributes |
71 | Table 84 – Acknowledge Handler object class attributes |
72 | Table 85 – Acknowledge Handler object instance attributes Table 86 – Structure of Add_AckData_Path_RequestPDU body Table 87 – Structure of Remove_AckData_Path_RequestPDU body |
73 | Table 88 – Time Sync object instance attributes |
76 | Table 89 – ClockIdentity encoding for different network implementations Table 90 – ClockClass values |
77 | Table 91 – TimeAcuracy values Table 92 – TimePropertyFlags bit values |
78 | Table 93 – TimeSource values Table 94 – Types of Clock Table 95 – Parameter object class attributes |
79 | Table 96 – Parameter Class Descriptor bit values |
80 | Table 97 – Parameter object instance attributes Table 98 – Semantics of Descriptor Instance attribute |
82 | Table 99 – Minimum and Maximum Value semantics |
83 | Table 100 – Scaling Formula attributes Table 101 – Scaling links |
84 | Table 102 – Structure of Get_Enum_String_RequestPDU body Table 103 – Structure of Get_Enum_String_ResponsePDU body Table 104 – Enumerated strings Type versus Parameter data type |
85 | Table 105 – Connection Manager object class attributes Table 106 – Connection Manager object instance attributes |
86 | Table 107 – Connection object class attributes |
87 | Table 108 – Connection object instance attributes |
88 | Table 109 – Values assigned to the state attribute Table 110 – Values assigned to the instance_type attribute |
89 | Figure 7 – Transport Class Trigger attribute Table 111 – Possible values within Direction Bit Table 112 – Possible values within Production Trigger Bits |
90 | Table 113 – Possible values within Transport Class Bits |
91 | Table 114 – Transport Class_Trigger attribute Table 115 – Values defined for the CP2/3_produced_connection_id attribute |
92 | Figure 8 – CP2/3_initial_comm_characteristics attribute format Table 116 – Values defined for the CP2/3_consumed_connection_id attribute |
93 | Table 117 – Values for the Initial Production Characteristics nibble |
94 | Table 118 – Values for the Initial Consumption Characteristics nibble |
97 | Table 119 – Values for the watchdog_timeout_action |
98 | Table 120 – Structure of Connection_Bind_RequestPDU body |
99 | Table 121 – Object specific status for Connection_Bind service Table 122 – Structure of Producing_Application_Lookup_RequestPDU body Table 123 – Structure of Producing_Application_Lookup_ResponsePDU body Table 124 – Producing_Application_Lookup Service status codes |
100 | Figure 9 – Segment type |
101 | Figure 10 – Port segment Table 125 – Possible port segment examples |
102 | Table 126 – TCP/IP link address examples |
103 | Figure 11 – Logical segment encoding |
104 | Table 127 – Electronic key segment format |
105 | Table 128 – Logical segments examples Table 129 – Network segments |
107 | Figure 12 – Extended network segment Table 130 – Extended subtype definitions Table 131 – Data segment |
108 | Table 132 – ANSI_Extended_Symbol segment Table 133 – Addressing categories |
109 | Table 134 – Class code ID ranges Table 135 – Attribute ID ranges Table 136 – Service code ranges |
110 | Table 137 – Class codes Table 138 – Reserved class attributes for all object class definitions |
111 | Table 139 – Common services list |
112 | Table 140 – Acknowledge Handler object specific services list Table 141 – Parameter object specific services list Table 142 – Services specific to Connection Manager Table 143 – Services specific to Connection object |
113 | Table 144 – Device type numbering |
114 | Table 145 – Connection Manager service request error codes |
119 | Table 146 – General status codes |
121 | Table 147 – Identity object status codes |
123 | 4.2 Data abstract syntax specification |
127 | 4.3 Encapsulation abstract syntax Figure 13 – Encapsulation message |
128 | Table 148 – Encapsulation header Table 149 – Encapsulation command codes |
129 | Table 150 – Encapsulation status codes |
130 | Table 151 – Options flags Table 152 – Nop request encapsulation header Table 153 – RegisterSession request encapsulation header |
131 | Table 154 – RegisterSession request data portion Table 155 – Options flags Table 156 – RegisterSession reply encapsulation header Table 157 – RegisterSession reply data portion |
132 | Table 158 – UnRegisterSession request encapsulation header Table 159 – ListServices request encapsulation header |
133 | Table 160 – ListServices reply encapsulation header Table 161 – ListServices reply data portion Table 162 – Service type codes Table 163 – Communications capability flags |
134 | Table 164 – ListIdentity request encapsulation header Table 165 – ListIdentity reply encapsulation header |
135 | Table 166 – ListIdentity reply data portion Table 167 – ListInterfaces request encapsulation header |
136 | Table 168 – ListInterfaces reply encapsulation header Table 169 – SendRRData request encapsulation header Table 170 – SendRRData request data portion |
137 | Table 171 – SendRRData reply encapsulation header Table 172 – SendUnitData request encapsulation header |
138 | Table 173 – SendUnitData request data portion Table 174 – Common packet format Table 175 – Address and data item structure Table 176 – Address type ID’s |
139 | Table 177 – Data type ID’s Table 178 – Null address type Table 179 – Connected address type |
140 | Table 180 – Sequenced address type Table 181 – UCMM data type Table 182 – Connected data type Table 183 – Sockaddr info items |
141 | 5 Transfer syntax 5.1 Compact encoding |
142 | Table 184 – BOOLEAN encoding Table 185 – Example compact encoding of a BOOL value Table 186 – Encoding of SignedInteger values Table 187 – Example compact encoding of a SignedInteger value Table 188 – UnsignedInteger values |
143 | Table 189 – Example compact encoding of an UnsignedInteger Table 190 – FixedLengthReal values Table 191 – Example compact encoding of a REAL value Table 192 – Example compact encoding of a LREAL value Table 193 – FixedLengthReal values |
144 | Table 194 – STRING value Table 195 – STRING2 value Table 196 – STRINGN value Table 197 – SHORT_STRING value Table 198 – Example compact encoding of a STRING value |
145 | Figure 14 – FixedLengthBitString compact encoding bit placement rules Figure 15 – Example compact encoding of a SWORD FixedLengthBitString Figure 16 – Example compact encoding of a WORD FixedLengthBitString Table 199 – Example compact encoding of STRING2 value Table 200 – SHORT_STRING type |
146 | Figure 17 – Example compact encoding of a DWORD FixedLengthBitString Figure 18 – Example compact encoding of a LWORD FixedLengthBitString Table 201 – Example compact encoding of a single dimensional ARRAY |
147 | Table 202 – Example compact encoding of a multidimensional ARRAY Table 203 – Example compact encoding of a STRUCTURE |
148 | 5.2 Data type reporting |
149 | Table 204 – Identification codes and descriptions of elementary data types |
150 | Figure 19 – Example 2 of formal encoding of a structure type specification Table 205 – Example 1 of formal encoding of a structure type specification |
151 | Figure 20 – Example of abbreviated encoding of a structure type specification Figure 21 – Example 1 of formal encoding of an array type specification |
152 | Figure 22 – Example 2 of formal encoding of an array type specification Figure 23 – Example 1 of abbreviated encoding of an array type specification |
153 | 6 Structure of FAL protocol state machines 7 AP-Context state machine 7.1 Overview 7.2 Connection object state machine Figure 24 – Example 2 of abbreviated encoding of an array type specification |
154 | Figure 25 – I/O Connection object state transition diagram Table 206 – I/O Connection state event matrix |
158 | Figure 26 – Bridged Connection object state transition diagram |
159 | Table 207 – Bridged Connection state event matrix |
160 | Figure 27 – Explicit Messaging Connection object state transition diagram |
161 | Table 208 – Explicit Messaging Connection state event matrix |
163 | 8 FAL service protocol machine (FSPM) 8.1 General 8.2 Primitive definitions |
164 | Table 209 – Primitives issued by FAL user to FSPM |
165 | Table 210 – Primitives issued by FAL user to FSPM |
167 | 8.3 Parameters of primitives Table 211 – Primitives issued by FSPM to FAL user |
168 | 8.4 FSPM state machines Table 212 – Parameters used with primitives exchanged between FAL user and FSPM |
169 | 9 Application relationship protocol machines (ARPMs) 9.1 General 9.2 Connection-less ARPM (UCMM) |
170 | Table 213 – Primitives issued by FSPM to ARPM Table 214 – Primitives issued by ARPM to FSPM |
171 | Table 215 – Parameters used with primitives exchanged between FSPM and ARPM Table 216 – UCMM client states |
172 | Figure 28 – State transition diagram of UCMM client Table 217 – State event matrix of UCMM client |
173 | Figure 29 – State transition diagram of high–end UCMM server Table 218 – High-end UCMM server states |
174 | Table 219 – State event matrix of high-end UCMM server |
175 | Figure 30 – State transition diagram of low–end UCMM server Table 220 – Low-end UCMM server states |
176 | Table 221 – State event matrix of low–end UCMM server |
177 | Figure 31 – Sequence diagram for a UCMM with one outstanding message |
178 | Figure 32 – Sequence diagram for a UCMM with multiple outstanding messages |
179 | 9.3 Connection-oriented ARPMs (transports) Figure 33 – TPDU buffer Table 222 – Notification |
180 | Table 223 – Transport classes Table 224 – Primitives issued by FSPM to ARPM |
181 | Table 225 – Primitives issued by ARPM to FSPM Table 226 – Parameters used with primitives exchanged between FSPM and ARPM |
182 | Figure 34 – Data flow diagram using a client transport class 0 and server transport class 0 Figure 35 – Sequence diagram of data transfer using transport class 0 |
183 | Figure 36 – Class 0 client STD Table 227 – Class 0 transport client states Table 228 – Class 0 client SEM |
184 | Figure 37 – Class 0 server STD Table 229 – Class 0 transport server states Table 230 – Class 0 server SEM |
185 | Figure 38 – Data flow diagram using client transport class 1 and server transport class 1 |
186 | Figure 39 – Sequence diagram of data transfer using client transport class 1 and server transport class 1 |
187 | Table 231 – Class 1 transport client states |
188 | Figure 40 – Class 1 client STD Table 232 – Class 1 client SEM |
189 | Figure 41 – Class 1 server STD Table 233 – Class 1 transport server states |
190 | Table 234 – Class 1 server SEM |
191 | Figure 42 – Data flow diagram using client transport class 2 and server transport class 2 |
192 | Figure 43 – Diagram of data transfer using client transport class 2 and server transport class 2 without returned data |
193 | Figure 44 – Sequence diagram of data transfer using client transport class 2 and server transport class 2 with returned data |
194 | Figure 45 – Class 2 client STD Table 235 – Class 2 transport client states |
195 | Table 236 – Class 2 client SEM |
196 | Figure 46 – Class 2 server STD Table 237 – Class 2 transport server states |
197 | Table 238 – Class 2 server SEM |
199 | Figure 47 – Data flow diagram using client transport class 3 and server transport class 3 |
200 | Figure 48 – Sequence diagram of data transfer using client transport class 3 and server transport class 3 without returned data |
201 | Figure 49 – Sequence diagram of data transfer using client transport class 3 and server transport class 3 with returned data |
202 | Table 239 – Class 3 transport client states |
203 | Figure 50 – Class 3 client STD Table 240 – Class 3 client SEM |
205 | Table 241 – Class 3 transport server states |
206 | Figure 51 – Class 3 server STD |
207 | Table 242 – Class 3 server SEM |
208 | Figure 52 – Data flow diagram using transport classes 4 and 5 |
209 | Figure 53 – Sequence diagram of message exchange using transport classes 4 and 5 Table 243 – Write and trigger events in class 4 and 5 transport |
210 | Figure 54 – Sequence diagram of messages overwriting each other |
211 | Figure 55 – Sequence diagram of queued message exchange using transport classes 4 and 5 Figure 56 – Sequence diagram of retries using transport classes 4 and 5 |
212 | Figure 57 – Sequence diagram of idle traffic using transport classes 4 and 5 |
213 | Figure 58 – Classes 4 and 5 basic structure |
214 | Figure 59 – Class 6 basic structure Table 244 – Common states for transport classes 4 to 6 |
215 | Figure 60 – Classes 4 to 6 general STD Table 245 – Classes 4 to 6 general SEM |
217 | Figure 61 – Class 4 sender STD Table 246 – Class 4 transport sender states |
218 | Table 247 – Class 4 sender SEM |
219 | Table 248 – Class 4 transport receiver states |
220 | Figure 62 – Class 4 receiver STD |
221 | Table 249 – Class 4 receiver SEM |
223 | Figure 63 – Sequence diagram of three fragments using transport class 5 |
224 | Figure 64 – Sequence diagram of fragmentation with retries using transport class 5 Figure 65 – Sequence diagram of two fragments using transport class 5 |
225 | Figure 66 – Sequence diagram of aborted message using transport class 5 |
226 | Figure 67 – Class 5 sender STD Table 250 – Class 5 transport sender states |
227 | Table 251 – Class 5 sender SEM |
229 | Figure 68 – Class 5 receiver STD Table 252 – Class 5 transport receiver states |
231 | Table 253 – Class 5 receiver SEM |
234 | Figure 69 – Data flow diagram for transport class 6 |
236 | Figure 70 – Sequence diagram of message exchange using transport class 6 Figure 71 – Sequence diagram of retries using transport class 6 |
237 | Figure 72 – Sequence diagram of idle traffic using transport class 6 |
238 | Figure 73 – Sequence diagram of request overwriting null Figure 74 – Sequence diagram of response overwriting ACK of null |
239 | Figure 75 – Sequence diagram of three fragments using transport class 6 |
240 | Figure 76 – Sequence diagram of fragmentation with retries using transport class 6 Figure 77 – Sequence diagram of two fragments using transport class 6 |
241 | Figure 78 – Sequence diagram of aborted fragmented sequence using transport class 6 |
242 | Figure 79 – Class 6 client STD Table 254 – Class 6 transport client states |
243 | Table 255 – Class 6 client state event matrix |
244 | Table 256 – Class 6 transport server states |
245 | Figure 80 – Class 6 server STD |
247 | Table 257 – Class 6 server SEM |
250 | 10 DLL mapping protocol machine 1 (DMPM 1) 10.1 General 10.2 Link producer Figure 81 – Data flow diagram for a link producer and consumer |
251 | 10.3 Link consumer 10.4 Primitive definitions Table 258 – Primitives issued by ARPM to DMPM Table 259 – Primitives issued by DMPM to ARPM Table 260 – Parameters used with primitives exchanged between ARPM and DMPM |
252 | Table 261 – Primitives exchanged between data-link layer and DMPM Table 262 – Parameters used with primitives exchanged between DMPM and Data-link |
253 | 10.5 DMPM state machine Figure 82 – State transition diagram for a link producer Table 263 – Link producer states Table 264 – State event matrix of link producer |
254 | 10.6 Data-link Layer service selection 11 DLL mapping protocol machine 2 (DMPM 2) 11.1 General Figure 83 – State transition diagram for a link consumer Table 265 – Link consumer states Table 266 – State event matrix of link consumer |
255 | 11.2 Mapping of UCMM PDUs |
256 | Table 267 – Network Connection ID selection |
259 | Table 268 – Example multicast assignments |
260 | 11.3 Mapping of transport class 0 and class 1 PDUs Table 269 – UDP data format for class 0 and class 1 |
261 | 11.4 Mapping of transport class 2 and class 3 PDU’s 11.5 Mapping of transport classes 4 to 6 11.6 IGMP Usage |
262 | 11.7 Quality of Service (QoS) for CP 2/2 messages |
264 | Figure 84 – DS field in the IP header Figure 85 – IEEE 802.1Q tagged frame Table 270 – Default DSCP and IEEE 802.1D mapping |
265 | 11.8 Management of an encapsulation session |
266 | 12 DLL mapping protocol machine 3 (DMPM 3) |
267 | Bibliography |