DOCA0131DE-03

PKW: Gekapselte azyklische Zugriffe in DP V0

Überblick

Einige PROFIBUS DP-Primärgeräte (Master) bieten keine DP V1-Dienste an. Die PKW-Funktion ist implementiert, um einen azyklischen Lese- oder Schreibzugriff in DP V0 zu ermöglichen.

Diese Funktion wird im PROFIBUS DP-Konfigurationstool durch Auswahl des entsprechenden Moduls aktiviert. Für jedes Modul ist ein zweiter Eintrag mit PKW vorhanden.

Die PKW-Daten werden zu den zyklischen Daten hinzugefügt.

Lese-/Schreib-Register

Mit den PKW-Daten können Sie jedes Register lesen oder schreiben. Die 8 Bytes werden als Anforderungs- oder Antworttelegramm, das in den EIN- und AUSGANGS-Daten gekapselt ist, interpretiert.

PKW-Ausgangsdaten

Anforderungen von PKW OUT-Daten (PROFIBUS DP-Master → LTMR) werden in Modulen abgebildet, die PKW unterstützen.

Um auf ein Register zuzugreifen, müssen Sie einen der folgenden Funktionscodes wählen:

  • R_REG_16 = 0x25 zum Lesen eines Registers

  • R_REG_32 = 0x26 zum Lesen von zwei Registern

  • W_REG_16 = 0x2A zum Schreiben eines Registers

  • W_REG_32 = 0x2B zum Schreiben von zwei Registern

Die Registernummern sind in Register Map (Organization of Communication Variables) angegeben.

Wort 1

Wort 2

Wort 3

Wort 4

Registeradresse

Umschaltbit

(Bit 15)

Funktionsbits

(Bits 8 bis 14)

Nicht verwendet

(Bits 0 bis 7)

Zu schreibende Daten

Registernummer

0/1

R_REG_16

Code 0x25

0x00

_

_

R_REG_32

Code 0x26

_

_

W_REG_16

Code 0x2A

In das Register zu schreibende Daten

_

W_REG_32

Code 0x2B

In Register 1 zu schreibende Daten

In Register 2 zu schreibende Daten

Je nach verwendeter SPS-Plattform finden Sie die Angaben zur Position der einzelnen Felder in jedem Wort in den Tabellen mit der Beschreibung der PKW OUT-Formate „Little Endian“ und „Big Endian“ in Abschnitt Beschreibung der zyklischen Daten.

Jegliche Änderung im Funktionsfeld löst die Bearbeitung der Anforderung aus (außer bei Funktionscode = 0x00).

Das Umschaltbit muss sich bei jeder folgenden Anforderung ändern. Mit diesem Mechanismus kann der Ersteller der Anforderung durch Polling des Umschaltbits in der Antwort feststellen, wenn die Antwort bereitsteht. Wenn dieses Bit in den Ausgangsdaten gleich dem von der Antwort ausgegebenen Umschaltbit in den Eingangsdaten wird, dann ist die Antwort bereit.

PKW IN-Daten

PKW IN-Datenantwort (LTMR → PROFIBUS DP-Master) wird in Modulen abgebildet, die PKW unterstützen. Der LTMR echot dieselbe Registeradresse und denselben Funktionscode oder schließlich einen erkannten Fehlercode:

Wort 1

Wort 2

Wort 3

Wort 4

Registeradresse

Umschaltbit

(Bit 15)

Funktionsbits

(Bits 8 bis 14)

Nicht verwendet

(Bits 0 bis 7)

Zu schreibende Daten

Dieselbe Registernummer wie in der Anforderung

Wie bei Anforderung

ERKANNTER FEHLER

Code 0x4E

0x00

Fehlercode

R_REG_16

Code 0x25

Im Register gelesene Daten

_

R_REG_32

Code 0x26

In Register 1 gelesene Daten

In Register 2 gelesene Daten

W_REG_16

Code 0x2A

_

_

W_REG_32

Code 0x2B

_

_

Je nach verwendeter SPS-Plattform finden Sie die Angaben zur Position der einzelnen Felder in jedem Wort in den Tabellen mit der Beschreibung der PKW IN-Formate „Little Endian“ und „Big Endian“ in Abschnitt Beschreibung der zyklischen Daten.

Wenn der Anforderer versucht, ein TeSys T-Objekt oder -Register mit einem unzulässigen Wert zu beschreiben oder auf ein nicht verfügbares Register zuzugreifen, wird als Antwort ein „Erkannter Fehler“-Code ausgegeben (Funktionscode = Umschaltbit + 0x4E). Der genaue „Erkannter Fehler“-Code ist in den Worten 3 und 4 zu finden. Die Anforderung wird nicht akzeptiert, und das Objekt oder Register behält den ursprünglichen Wert.

Für eine erneute Auslösung genau desselben Befehls müssen Sie wie folgt vorgehen:

  • Setzen Sie den Funktionscode auf 0x00 zurück.

  • Warten Sie auf den Antwortrahmen mit dem Funktionscode gleich 0x00.

  • Setzen Sie ihn auf den vorherigen Wert zurück.

Diese Funktion ist nützlich für ein eingeschränktes Primärgerät (Master) wie eine HMI.

Alternativ dazu können Sie wie folgt vorgehen:

  • Invertieren Sie das Umschaltbit im Byte des Funktionscodes.

Die Antwort ist gültig, wenn das Umschaltbit der Antwort gleich dem in der Anforderung geschriebenen Umschaltbit ist. (Diese Methode ist effizienter, erfordert jedoch Kenntnisse der höheren Programmierung.)

PKW – „Erkannter Fehler“-Codes

Erkannte Schreibfehler

Fehlercode

Erkannter Fehler – Name

Erläuterung

1

FGP_ERR_REQ_STACK_FULL

Externe Anforderung: sendet einen „Erkannter Fehler“-Block zurück

3

FGP_ERR_REGISTER_NOT_FOUND

Register nicht verwaltet (oder Anforderung erfordert Administratorzugriffsrechte)

4

FGP_ERR_ANSWER_DELAYED

Externe Anforderung: Antwort verzögert

7

FGP_ERR_NOT_ALL_REGISTER_FOUND

Ein oder mehrere Register können nicht gefunden werden.

8

FGP_ERR_READ_ONLY

Schreiben auf Register nicht zulässig.

10

FGP_ERR_VAL_1WORD_TOOHIGH

Geschriebener Wert nicht im Bereich des Registers (Wortwert ist zu hoch).

11

FGP_ERR_VAL_1WORD_TOOLOW

Geschriebener Wert nicht im Bereich des Registers (Wortwert ist zu niedrig).

12

FGP_ERR_VAL_2BYTES_INF_TOOHIGH

Geschriebener Wert nicht im Bereich des Registers (MSB-Wert ist zu hoch).

13

FGP_ERR_VAL_2BYTES_INF_TOOLOW

Geschriebener Wert nicht im Bereich des Registers (MSB-Wert ist zu niedrig).

16

FGP_ERR_VAL_INVALID

Geschriebener Wert ist kein gültiger Wert.

20

FGP_ERR_BAD_ANSWER

Externe Anforderung: sendet einen „Erkannter Fehler“-Block zurück

Erkannte Lesefehler

„Erkannter Fehler“-Code

Erkannter Fehler – Name

Erläuterung

1

FGP_ERR_REQ_STACK_FULL

Externe Anforderung: sendet einen „Erkannter Fehler“-Block zurück

3

FGP_ERR_REGISTER_NOT_FOUND

Register nicht verwaltet (oder Anforderung erfordert Administratorzugriffsrechte)

4

FGP_ERR_ANSWER_DELAYED

Externe Anforderung: Antwort verzögert

7

FGP_ERR_NOT_ALL_REGISTER_FOUND

Ein oder mehrere Register können nicht gefunden werden.

QR Code is a registered trademark of DENSO WAVE INCORPORATED in Japan and other countries.

War das hilfreich für Sie?