ADS Interface

All acyclic data are transmitted to or from the FC310x via ADS-Read, ADS-Write or ADS-Write-Control. The FC310x has its own Net-ID and supports the following ports:

Port

Description

200

This addresses the FC310x itself, i.e. data that reside locally on the FC310x, and for which usually no additional bus access is required

0x1000 - 0x107E

This addresses a connected PROFIBUS device, with the address calculated from port-0x1000; this always involves a bus access

ADS-Read

An overview of the IndexGroups/IndexOffsets supported by the FC310x during ADS-Read is provided below.

IndexGroup for local FC310x addressing (port 200)

IndexGroup (Lo-Word)

IndexGroup (Hi-Word)

IndexOffset 

Description

0xF100

0x00

BYTE offset within the data

This reads the diagnostic data from the FC310x. If the ADS-Read is answered without error (error code = 0), the data will contain the diagnostic data of the FC310x described in section Master-Diagnose. The FC310x will reset the FC310x DiagFlag. It will be set again, if the FC310x diagnostic data change again.

0xF181

0x00-0x7E

BYTE offset within the data

This will read the diagnostic data of a configured DP slave. The station address is calculated from the IndexGroup(Hi-Word). If the ADS Read is answered without error (error code = 0), the data will contain the diagnostic data of a configured DP slave described in section Slave-Diagnose.

0xF830

0x8000-0x807E

always 0

This enables detection of the DP slaves present at the PROFIBUS, independent of whether they were configured or not. The station address is calculated from IndexGroup(Hi-Word)-0x8000. If the ADS-Read is answered without error (error code = 0), the corresponding DP slave has answered correctly. The data contain the Ident no. of the slave (BYTE offset 0-1) and the read CfgData (from BYTE offset 2) (see section Upload Configuration).

0xF840

0

BYTE offset within the data

This will read the firmware version and the station address of the FC310x. If the ADS-Read is answered without error (error code = 0), the data will contain the firmware version (BYTE offset 0-1) and the station address of the FC310x (BYTE offset 2).

IndexGroup for addressing of a configured PROFIBUS device (port 0x1000-0x107E)

IndexGroup
(Lo-Word)

IndexGroup
(Hi-Word)

IndexOffset

Description

0x00-0xFF

0x00

0x00-0xFF

This will send a DPV1-Read to the appropriate, configured DPV1 slave via a Class 1 connection; the DPV1 slot number corresponds to the IndexGroup, the DPV1 index corresponds to the IndexOffset. If the ADS-Read is answered without error (error code = 0), the data will contain the read DPV1 data (see section DPV1)

0x100-0x1FF

0x00

0x00-0xFF

This will send a DPV1-Read to the appropriate, configured DPV1 slave via a Class 2 connection; the DPV1 slot number corresponds to the IndexGroup - 0x100, the DPV1 index corresponds to the IndexOffset. If the ADS-Read is answered without error (error code = 0), the data will contain the read DPV1 data (see section DPV1)

0x0000 - 0xFFF

0x10000000 - 0xF0000000

0x00-0xFF

This will transmit a PKW-Read to the appropriate, configured PROFIDRIVE slave; the parameter number (PNU) is contained in the Low WORD of the IndexGroup, the sub-index for access to an array is in the IndexOffset, the addressed axis is in bits 28-31 of the IndexGroup (for a 1-axis unit, this must be 1), the PKW compatibility can be adjusted in bits 26, 27 (unfortunately, not all PROFIDRIVE slaves are compatible, see section PKW-Interface).

0

0x01000000

0

This will send FDL-Read for Siemens AG interfacing to the appropriate configured FDL station (see section S5-FDL).

ADS-Write

An overview of the IndexGroups/IndexOffsets supported by the FC310x during ADS-Write is provided below.

IndexGroup for local FC310x addressing (port 200)

IndexGroup (Lo-Word)

IndexGroup (Hi-Word)

IndexOffset 

Description

0xF100

0x00

0 -2

This will reset the equidistant diagnostic data (IndexOffset = 0), the Repeat counters (IndexOffset = 1) or the NoAnswer counters (IndexOffset = 2) of the FC310x.

IndexGroup for addressing of a configured PROFIBUS device (port 0x1000-0x107E)

IndexGroup (Lo-Word)

IndexGroup (Hi-Word)

IndexOffset 

Description

0x00-0xFF

0x00

0x00-0xFF

This will send a DPV1-Write to the appropriate, configured DPV1 slave via a Class 1 connection; the DPV1 slot number corresponds to the IndexGroup, the DPV1 index corresponds to the IndexOffset (see section DPV1).

0x100-0x1FF

0x00

0x00-0xFF

This will send a DPV1-Write to the appropriate, configured DPV1 slave via a Class 2 connection; the DPV1 slot number corresponds to the 0x100 IndexGroup, the DPV1 index corresponds to the IndexOffset (see section DPV1).

0x400

0x00

0x00

With this, a DPV1 Abort is sent to the appropriate configured DPV1 slave via a class 2 connection; the abort parameters are included in the data (-> section DPV1).

0x0000 - 0xFFF

0x10000000 - 0xF0000000

0x00-0xFF

This will transmit a PKW-Write to the appropriate, configured PROFIDRIVE slave; the parameter number (PNU) is contained in the Low WORD of the IndexGroup, the sub-index for access to an array is in the IndexOffset, the addressed axis is in bits 28-31 of the IndexGroup (for a 1-axis unit, this must be 1), the PKW compatibility can be adjusted in bits 26, 27 (unfortunately, not all PROFIDRIVE slaves are compatible, see section PKW-Interface).

0

0x01000000

0

This will send FDL-Write for Siemens AG interfacing to the appropriate configured FDL station (see section S5-FDL).

0

0x02000000

0

This will send a SetSlaveAddress command to a configured DP slave, whereby the DP slave must be configured with the new station address; the old station address must be entered at BYTE offset 0 of the ADS-Write data. Furthermore, the Ident no. of the slave must be contained under BYTE offset 1 and 2, and BYTE offset 3 must contain information as to whether the slave may be modified later (0) or not (not equal 0). Altogether, 4 bytes of ADS-Write data will therefore have to be sent.

ADS-ReadWrite

An overview of the IndexGroups/IndexOffsets supported by the FC310x during ADS-ReadWrite is provided below.

IndexGroup for addressing of a configured PROFIBUS device (port 0x1000-0x107E)

IndexGroup (Lo-Word)

IndexGroup (Hi-Word)

IndexOffset 

Description

0x100-0x1FF

0x00

0x00-0xFF

This will send a DPV1-Data_Transport to the appropriate, configured DPV1 slave via a Class 2 connection; the DPV1 slot number corresponds to the 0x100 IndexGroup, the DPV1 index corresponds to the IndexOffset (see section DPV1).

0x200

0x00

0x00

With this, a DPV1 Initiate is sent to the appropriate configured DPV1 slave via a class 2 connection; the initiate parameters are included in the data (-> section DPV1).

ADS-WriteControl

An overview of the ADS-Write-Control commands supported by the FC310x is provided below.

ADS-WriteControl for local FC310x addressing (port 200)

AdsState

DeviceState

State of the FC310x

Description

STOP (6)

0x00

RUN (5)

This will stop the FC310x, i.e. the process data connections to all DP slaves (Data_Exchange) are removed (with SetPrm,Unlock).

RUN (5)

0x00

STOP (6)

This will restart the FC310x after a stop, i.e. the process data connections to all DP slaves (Data_Exchange) are re-established (normal DP start-up).

ADS-WriteControl for addressing a configured PROFIBUS device (port 0x1000-0x107E)

AdsState

DeviceState

State of the FC310x

Description

STOP (6)

0x00

RUN (5)

This will stop the slave, i.e. the process data connection to the relevant DP slave (Data_Exchange) is removed (with SetPrm,Unlock).

RUN (5)

0x00

STOP (6)

This will restart the slave after a stop, i.e. the process data connection to the relevant DP slave (Data_Exchange) is re-established (normal DP start-up).

ADS Error Codes

The 32 bit ADS error code always consists of a general ADS error code (Low Word, see ADS documentation) and a FC310x-specific, unique error code (High Word, -> chapter FC310x ADS error codes). The appropriate text message will also be displayed in the TwinCAT System Manager Logger.