DP-V1 Kommunikation

C1-Verbindung (MSAC-C1)

Die C1-Verbindung ist für den Master reserviert, die mit dem Slave zyklischen Datenaustausch durchführt (C1-Master). Um die C1-Verbindung bei einem Slave nutzen zu können, muss der Slave DPV1 unterstützen (in der GSD-Datei müssen dafür die Zeile "DPV1_Slave = 1" und das Schlüsselwort "C1_Max_Data_Len" mit einer entsprechenden Länge eingetragen sein). Weiterhin ist in der Regel die C1-Funktionalität durch Setzen des Bit 7 von PrmData-Byte 0 (s. Karteireiter PROFIBUS des Slaves) bei dem entsprechenden Slave zu aktivieren (bei Beckhoff-Geräten, die DPV1 unterstützen, passiert das automatisch).

MSAC-C1-Read ist auf ADS-Readind, MSAC-C1-Write auf ADS-Writeinc abgebildet:

PROFIBUS DPV1

Der DP-Slave unterstützt eine DPV1-MSAC_C1-Server-Verbindung, die zusammen mit der zyklischen Verbindung aufgebaut wird. Diese kann benutzt werden, um neben den zyklischen Daten noch größere Mengen azyklische Daten übertragen zu können. Ein vom Master empfangenes DPV1-Read-Telegramm wird als ADS-Read-Indication an die PLC gemeldet, ein vom Master empfangenes DPV1-Write-Telegramm wird als ADS-Write-Indication an die PLC gemeldet. Das PLC-Programm ist dann für die Read bzw. Write-Antwort verantwortlich, dazu sind die Funktionen ADS-Read-Response bzw. ADS-Write-Response aufzurufen.

Einstellung im System Manager

Um die DP-V1 Dienste in die SPS zu transportieren muss diese Funktion durch die Angabe des Ports aktiviert werden.
DP-V1 Kommunikation 1:

Port 0 deaktiviert, 802 SPS-Laufzeit 1, Task 1

 

MSAC-C1 Read

Eine DPV1-MSAC_C1-Read-Indication wird wie folgt auf eine ADS-Read-Indication abgebildet:

ADS-Read-Indication-Parameter  

Bedeutung  

Source-Net-ID (NETID)

Net-ID des Slaves (s. Karteireiter ADS des Devices)

Source-Port (PORT)

0x1000+Slave Adresse

Invoke-ID (INVOKEID)

eindeutige Nummer, muß bei Response wieder auftauchen

IndexGroup (IDXGRP)

Slot-Number (DPV1-Parameter)

IndexOffset (IDXOFFS)

Index (DPV1-Parameter)

Length (LENGTH)

Länge der auszulesenden Daten

Eine ADS-Read-Response wird wie folgt auf eine DPV1-MSAC_C1-Read-Response abgebildet:

ADS-Read-Response-Parameter  

Bedeutung  

Destination-Net-ID (NETID)

Net-ID des Slaves (s. Karteireiter ADS des Devices)

Destination-Port (PORT)

0x1000+Slave Adresse

Invoke-ID (INVOKEID)

eindeutige Nummer, wie bei Indication

Result (RESULT)

Result des Read: 0 = kein Fehler, sonst: Bit 0-15 = Standard-ADS-Fehlercodes, Bit 16-23 = Error_Code_1, Bit 24-31 = Error_Code_2,
siehe: DP-V1 Fehler Codes.

Length (LENGTH)

Länge der gelesenen Daten

Data (DATAADDR)

gelesene Daten

MSAC-C1 Write

Eine DPV1-MSAC_C1-Write-Indication wird wie folgt auf eine ADS-Write-Indication abgebildet:

ADS-Write-Indication-Parameter  

Bedeutung  

Source-Net-ID (NETID)

Net-ID des Slaves (s. Karteireiter ADS des Devices)

Source-Port (PORT)

0x1000+Slave Adresse

Invoke-ID (INVOKEID)

eindeutige Nummer, muß bei Response wieder auftauchen

IndexGroup (IDXGRP)

Slot-Number (DPV1-Parameter)

IndexOffset (IDXOFFS)

Index (DPV1-Parameter)

Length (LENGTH)

Länge der zu schreibenden Daten

Data (DATAADDR)

zu schreibende Daten

Eine ADS-Read-Response wird wie folgt auf eine DPV1-MSAC_C1-Read-Response abgebildet:

ADS-Read-Response-Parameter  

Bedeutung  

Destination-Net-ID (NETID)

Net-ID des Slaves (s. Karteireiter ADS des Devices)

Destination-Port (PORT)

0x1000+Slave Adresse

Invoke-ID (INVOKEID)

eindeutige Nummer, wie bei Indication

Result (RESULT)

Result des Read: 0 = kein Fehler, sonst: Bit 0-15 = Standard-ADS-Fehlercode, Bit 16-23 = Error_Code_1, Bit 24-31 = Error_Code_2,
siehe: DP-V1 Fehler Codes.

Length (LENGTH)

Länge der gelesenen Daten