Safety Service Data Object (SSDO)

Một phần của tài liệu Bsi bs en 61784 3 13 2010 (Trang 57 - 65)

Safety Service Data Objects (SSDOs) shall be used for accessing the Object Directory (SOD) of an SSDO-Server by an SSDO-Client. SSDO telegrams shall be identified by bits 7, 6 and 5 (111b) of the ID. Bit 3 and 4 of the ID shall identify an SOD-access (00b). Bit 2 shall identify request (0b) and response (1b) telegrams.

7.3.2 SSDO telegram types

The ID field identifies the telegram. The following telegram types are specified:

⎯ SSDO Service Request

⎯ SSDO Service Response

Table 13 specifies the coding of the ID field.

Table 13 – SSDO telegram types (ID field, bits 2, 3 and 4)

Bit number of ID field

7 6 5 4 3 2 1 0

Telegram type

1 1 1 0 0 0 SSDO_Service_Request

1 1 1 0 0 1 SSDO_Service_Response

The SSDO Service Request telegram (SSDO_Service_Request) shall be used by an SSDO client to access the SOD of an SSDO server. With an SSDO_Service_Request, an SSDO client shall provide the server SN address (ADR), the length of the payload data (LE), the Access Request Number SANo (CT field). It shall also specify in the first data octet in the

"Command Octet" (SACmd, see Table 14) access type (Read/Write), transfer type (expedited/segmented), toggle bit and initialize or last segment of the transfer. In data octets 1 and 2, the index of the accessed object dictionary entry, in data octet 3 the sub index of the accessed entry shall be specified. The SN address of the SSDO client shall be provided in TADR.

The SSDO Service Response telegram (SSDO_Service_Response) shall be used by an SSDO server to respond to a request from an SSDO client. The SOD Access Request Number (SANo) shall be unique for each connection and incremented by one with every new SOD Access Request telegram. The response telegram shall contain the SANo value of the corresponding service request.

The maximum number of payload data shall be 250 octets.

The SOD Access Command (SACmd) bit encoding is specified in Table 14.

Table 14 – SOD Access Command (SACmd) – bit coding

Bit No. Name Value Meaning 0 SOD Read Access

0 Access Type

1 SOD Write Access

1 Reserved 1 0 Reserved

0 Successful transfer 2 Abort transfer

1 Abort transfer 3 Segmentation 0 Expedited SOD access

Bit No. Name Value Meaning

1 Segmented SOD access

0 4 Toggle

1

This bit shall alternate for each subsequent segment and not change its value in case of a repeated transmission. The first segment shall have the toggle bit set to 0. The toggle bit shall be equal for the request and the response telegram.

0 No initiate transfer 5 Initiate

transfer

1 Initiate transfer 0 More segments to transfer

6 End segment

transfer

1 No more segments to transfer

7 Reserved 2 0 Reserved

7.3.3 SSDO services and protocols The following SSDO services shall be defined:

⎯ SSDO Download, which is subdivided into:

⎯ SSDO Download Initiate,

⎯ SSDO Download Segment;

⎯ SSDO Upload, which is subdivided into:

⎯ SSDO Upload Initiate,

⎯ SSDO Upload Segment;

⎯ SSDO Abort.

Figure 24 defines the SSDO segmented and expedited download protocols.

Client Server Client Server

SSDO segmented download SSDO expedited download

SSDO download initiate

SSDO download segment

SSDO download segment

SSDO download segment (last)

SSDO download initiate

Figure 24 – SSDO download protocols Figure 25 defines SSDO segmented and expedited upload protocols.

Client Server Client Server SSDO segmented upload SSDO expedited upload

SSDO upload initiate

SSDO upload segment

SSDO upload segment

SSDO upload segment (last)

SSDO upload initiate

Figure 25 – SSDO upload protocols 7.3.4 SSDO Initiate Download

Figure 26 specifies the initiate download protocol.

Figure 26 – SSDO Initiate Download protocol

Table 15 specifies the fields of an Initiate Download SSDO_Service_Request telegram.

Table 15 – Fields of Initiate Download SSDO_Service_Request telegram

Field Information Content / Value ADR Address of SSDO Server to be accessed DSADR

ID SSDO_Service_Request 111000xxb

LE Length of payload data 4 -- 254

CT SOD Access Request number (SANo) 1 -- 65 535, 0 not allowed DB0 SOD Access Command (SACmd) expedited or segmented 00100001b or 00101001b DB1, DB2 Index of SOD entry to be accessed 0 -- 65 535

DB3 Sub index of SOD entry to be accessed 0 -- 255 DB4 – DBn Payload data (In case of a segmented download, DB4-DB7

contains the data size of the payload data of the block. If the data size is 0, the size is not indicated.)

Payload data

TR Not used 0

TADR Address of SSDO Client SSADR

Table 16 specifies the fields of an Initiate Download SSDO_Service_Response telegram.

Table 16 – Fields of Initiate Download SSDO_Service_Response telegram

Field Information of Content / Value ADR Address of SSDO Client to be responded DSADR

ID SSDO_Service_Response 111001xxb

LE Length of payload data 4

CT Echo of SOD Access Request number 1 -- 65 535, 0 not allowed DB0 SOD Access Command (SACmd) expedited or

Segmented

00100001b or 00101001b DB1, DB2 Index of SOD entry to be accessed 0 -- 65 535 DB3 Sub index of SOD entry to be accessed 0 -- 255

TR Not used 0

TADR Address of SSDO Server SSADR

7.3.5 SSDO Segmented Download

Figure 27 specifies the Segmented Download protocol.

Figure 27 – SSDO Segmented Download protocol

Table 17 specifies the fields of a Segmented Download SSDO_Service_Request telegram.

Table 17 – Fields of Segmented Download SSDO_Service_Request telegram

Field Information Content / Value ADR Address of SSDO Server to be accessed DSADR

ID SSDO_Service_Request 111000xxb

LE Length of payload data 4 -- 254

CT SOD Access Request number (SANo) 1 -- 65 535, 0 not allowed DB0 SOD Access Command (SACmd) middle segment or end

segment

000x1001b or 010x1001b DB1, DB2 Index of SOD entry to be accessed 0 -- 65 535

DB3 Sub index of SOD entry to be accessed 0 -- 255

DB4 – DBn Payload data Payload data

Field Information Content / Value

TR Not used 0

TADR Address of SSDO Client SSADR

Table 18 specifies the fields of a Segmented Download SSDO_Service_Response telegram.

Table 18 – Fields of Segmented Download SSDO_Service_Response telegram

Field Information Content / Value ADR Address of SSDO Client to be responded DSADR

ID SSDO_Service_Response 111001xxb

LE Length of payload data 4

CT Echo of SOD Access Request number 1 -- 65 535, 0 not allowed DB0 SOD Access Command (SACmd) middle segment or end

segment

000x1001b or 010x1001b DB1, DB2 Index of SOD entry to be accessed 0 -- 65 535

DB3 Sub index of SOD entry to be accessed 0 -- 255

TR Not used 0

TADR Address of SSDO Server SSADR

7.3.6 SSDO Initiate Upload

Figure 28 specifies the Initiate Upload protocol. The Initiate Upload telegram shall always be expedited. Based on the response the SSDO client shall continue with expedited or segmented transfer.

Figure 28 – SSDO Initiate Upload protocol

Table 19 specifies the fields of an Initiate Upload SSDO_Service_Request telegram.

Table 19 – Fields of Initiate Upload SSDO_Service_Request telegram

Field Information Content / Value ADR Address of SSDO Server to be accessed DSADR

ID SSDO_Service_Request 111000xxb

LE Length of payload data 4

CT SOD Access Request number (SANo) 1 -- 65 535, 0 not allowed

Field Information Content / Value DB0 SOD Access Command (SACmd) expedited 00100000b

DB1, DB2 Index of SOD entry to be accessed 0 -- 65 535 DB3 Sub index of SOD entry to be accessed 0 -- 255

TR Not used 0

TADR Address of SSDO Client SSADR

Table 20 specifies the fields of an Initiate Upload SSDO_Service_Response telegram.

Table 20 – Fields of Initiate Upload SSDO_Service_Response telegram

Field Information Content / Value ADR Address of SSDO Client to be responded DSADR

ID SSDO_Service_Response 111001xxb

LE Length of payload data 4 -- 254

CT Echo of SOD Access Request number 1 -- 65 535, 0 not allowed DB0 SOD Access Command (SACmd) expedited or

Segmented

00100000b or 00101000b DB1, DB2 Index of SOD entry to be accessed 0 -- 65 535

DB3 Sub index of SOD entry to be accessed 0 -- 255 DB4 – DBn Payload data (In case of a segmented upload, DB4-DB7 contains

the data size of the payload data of the block. If the data size is 0, the size is not indicated.)

Payload data

TR Not used 0

TADR Address of SSDO Server SSADR

7.3.7 SSDO Segmented Upload

Figure 29 specifies the Segmented Upload protocol. The SSDO client always requests a middle segment. Based on the response, the SSDO client shall decide whether a middle segment or the end segment was sent.

Figure 29 – SSDO Segmented Upload protocol

Table 21 specifies the fields of a Segmented Upload SSDO_Service_Request telegram.

Table 21 – Fields of Segmented Upload SSDO_Service_Request telegram

Field Information Content / Value ADR Address of SSDO Server to be accessed DSADR

ID SSDO_Service_Request 111000xxb

LE Length of payload data 4

CT SOD Access Request number (SANo) 1 -- 65 535, 0 not allowed DB0 SOD Access Command (SACmd) middle segment 000x1000b

DB1, DB2 Index of SOD entry to be accessed 0 -- 65 535 DB3 Sub index of SOD entry to be accessed 0 -- 255

TR Not used 0

TADR Address of SSDO Client SSADR

Table 22 specifies the fields of a Segmented Upload SSDO_Service_Response telegram.

Table 22 – Fields of Segmented Upload SSDO_Service_Response telegram

Field Information Content / Value ADR Address of SSDO Client to be responded DSADR

ID SSDO_Service_Response 111001xxb

LE Length of payload data 4 -- 254

CT Echo of SOD Access Request number 1 -- 65 535, 0 not allowed DB0 SOD Access Command (SACmd) middle segment or end

segment

000x1000b or 010x1000b DB1, DB2 Index of SOD entry to be accessed 0 -- 65 535 DB3 Sub index of SOD entry to be accessed 0 -- 255

DB4 -- DBn Payload data Payload data

TR Not used 0

TADR Address of SSDO Server SSADR

7.3.8 SSDO Abort

Figure 30 specifies the SSDO Abort protocol.

Figure 30 – SSDO Abort protocol

Table 23 specifies the fields of an Abort SSDO_Service_Request telegram.

Table 23 – Fields of Segmented Upload SSDO_Service_Request telegram

Field Information Content / Value ADR Address of the SSDO Client to be informed DSADR

ID SSDO_Service_Request 111000xxb

Field Information Content / Value

LE Length of payload data 8

CT SOD Access Request number (SANo) 1 -- 65 535, 0 not allowed

DB0 SOD Access Command (SACmd) 00000100b

DB1, DB2 Index of SOD entry 0 -- 65 535

DB3 Sub index of SOD entry 0 -- 255

DB4 -- DB7 Abort code, see Table 25 Abort code

TR Not used 0

TADR Address of the SSDO Server initiating the abort SSADR

Table 24 specifies the fields of an Abort SSDO_Service_Response telegram.

Table 24 – Fields of Segmented Upload SSDO_Service_Response telegram

Field Information Content / Value ADR Address of the SSDO Client to be informed DSADR

ID SSDO_Service_Response 111001xxb

LE Length of payload data 8

CT SOD Access Request number (SANo) 1 -- 65 535, 0 not allowed

DB0 SOD Access Command (SACmd) 00000100b

DB1, DB2 Index of SOD entry 0 -- 65 535

DB3 Sub index of SOD entry 0 -- 255

DB4 -- DB7 Abort code, see Table 25 Abort code

TR Not used 0

TADR Address of the SSDO Server initiating the abort SSADR

The payload data of the SSDO Abort telegram shall contain an error code as specified in Table 25. The abort code shall be encoded as UNSIGNED32 value. Abort codes not listed in Table 25 shall be reserved.

Table 25 – SSDO Abort codes

Abort code a Description 05030000h Reserved

05040000h SSDO protocol timed out

05040001h Client/server Command ID not valid or unknown 05040002h Invalid block size

05040003h Invalid sequence number 05040004h Reserved 05040005h Out of memory

06010000h Unsupported access to an object 06010001h Attempt to read a write-only object 06010002h Attempt to write a read-only object

06020000h Object does not exist in the object dictionary 06040041h Object cannot be mapped to the SPDO

06040042h The number and length of the objects to be mapped would exceed SPDO length 06040043h General parameter incompatibility

06040047h General internal incompatibility in the device 06060000h Access failed due to a hardware error

06070010h Data type does not match, length of service parameter does not match 06070012h Data type does not match, length of service parameter too high 06070013h Data type does not match, length of service parameter too low 06090011h Sub index does not exist

Abort code a Description 06090030h Value range of parameter exceeded (only for write access) 06090031h Value of parameter written too high

06090032h Value of parameter written too high 06090036h Value of parameter written too high 08000000h Value of parameter written too high

08000020h Data cannot be transferred or stored to the application

08000021h Data cannot be transferred or stored to the application because of local control 08000022h Data cannot be transferred or stored to the application because of the present

device state

08000023h Data cannot be transferred or stored to the application because application is busy a The Abort code is shown in hexadecimal notation, as designated by the "h" suffix.

Một phần của tài liệu Bsi bs en 61784 3 13 2010 (Trang 57 - 65)

Tải bản đầy đủ (PDF)

(180 trang)