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.
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 | IndexGroup | 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 | IndexGroup | 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 | IndexGroup | 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). |