CX8030 ADS-Interface

ADS NetId der PROFIBUS-Schnittstelle

Für die ADS-Kommunikation wird eine NetId benötigt. Diese ist im TwinCAT System Manager dem Karteireiter ADS des PROFIBUS-Interfaces zu entnehmen.

CX8030 ADS-Interface 1:

ADS-Interface

Sämtliche azyklischen Daten werden mit ADS-Read, ADS-Write oder ADS-Write-Control an die bzw. von dem CX8030 übertragen. Das PROFIBUS Interface des CX8030 hat eine eigene Net-ID und unterstützt die folgenden Ports:

Port

Beschreibung

200

damit wird das PROFIBUS-Interface selbst adressiert, d.h. Daten, die lokal auf dem PROFIBUS-Interface liegen, bei denen in der Regel kein zusätzlicher Buszugriff nötig ist.

0x1000 - 0x107E

damit wird ein angeschlossener PROFIBUS-Teilnehmer adressiert, wobei sich Adresse aus Port-0x1000 berechnet (oder 0x1000 + Slave Adresse), es wird auch immer ein Buszugriff durchgeführt.

ADS-Read

Es folgt eine Übersicht der von dem CX8030 unterstützten IndexGroup/IndexOffset bei ADS-Read.

IndexGroup bei lokaler Adressierung des CX8030 (Port 200)

IndexGroup
(Lo-Word)

IndexGroup
(Hi-Word)

IndexOffset

Beschreibung

0xF181

0x0000-0x007E

BYTE-Offset innerhalb der Daten

Damit werden die Diagnosedaten eines projektierten DP-Slaves ausgelesen, die Stationsadresse berechnet sich aus dem IndexGroup(Hi-Word). Wenn der ADS-Read ohne Fehler (Error-Code = 0) beantwortet wird, enthalten die Daten die im Kapitel Slave-Diagnose beschriebenen Diagnosedaten eines projektierten DP-Slaves.

0xF830

0x0000-0x007E

immer 0

Damit kann festgestellt werden, welche DP-Slaves am PROFIBUS vorhanden sind, unabhängig davon, ob sie projektiert wurden oder nicht, die Stationsadresse wird im IndexGroup (Hi-Word) eingetragen. Wenn der ADS-Read ohne Fehler (Error-Code = 0) beantwortet wird, hat der entsprechende DP-Slave korrekt geantwortet, die Daten enthalten die Ident-Nummer des Slaves (BYTE-Offset 0-1) und die ausgelesenen CfgData (ab BYTE-Offset 2).

IndexGroup bei Adressierung eines projektierten PROFIBUS-Teilnehmers (Port 0x1000-0x107E)

IndexGroup
(Lo-Word)

IndexGroup
(Hi-Word)

IndexOffset

Beschreibung

0x00-0xFF

0x00

0x00-0xFF

Damit wird ein DPV1-Read an den entsprechenden, projektierten DPV1-Slave über eine Class-1-Verbindung gesendet, die DPV1-Slot-Nummer entspricht der IndexGroup, der DPV1-Index entspricht dem IndexOffset. Wenn der ADS-Read ohne Fehler (Error-Code = 0) beantwortet wird, enthalten die Daten die ausgelesenen DPV1-Daten (siehe Kapitel DPV1)

ADS-Write

Es folgt eine Übersicht der von dem CX8030 unterstützten IndexGroup/IndexOffset bei ADS-Write.

IndexGroup bei Adressierung eines projektierten PROFIBUS-Teilnehmers (Port 0x1000-0x107E)

IndexGroup
(Lo-Word)

IndexGroup
(Hi-Word)

IndexOffset

Beschreibung

0x00-0xFF

0x00

0x00-0xFF

Damit wird ein DPV1-Write an den entsprechenden, projektierten DPV1-Slave über eine Class-1-Verbindung gesendet, die DPV1-Slot-Nummer entspricht der IndexGroup, der DPV1-Index entspricht dem IndexOffset (siehe Kapitel DPV1).

ADS-WriteControl

Es folgt eine Übersicht der von dem CX8030 unterstützten Dienste beim ADS-WriteControl.

ADS-WriteControl bei Adressierung eines projektierten PROFIBUS-Teilnehmer (Port 0x1000-0x107E)

AdsState

DeviceState

State der FC310x/EL6731

Beschreibung

STOP (6)

0x00

RUN (5)

Damit wird der Slave gestoppt, d.h. die Prozessdatenverbindung zu dem entsprechenden DP-Slave (Data_Exchange) wird abgebaut (mit SetPrm,Unlock).

RUN (5)

0x00

STOP (6)

Damit wird der Slave nach einem Stoppen erneut gestartet, d.h. die Prozessdatenverbindung zu dem entsprechenden DP-Slave (Data_Exchange) wird wieder aufgebaut (normaler DP-Hochlauf).