PE_I_DEV: PROFIenergy-Kommandos im iDevice steuern (S7-300) - STEP 7

Erweiterte Anweisungen (S7-300, S7-400)

ft:publication_title
Erweiterte Anweisungen (S7-300, S7-400)
Product
STEP 7
Version
V20
Publication date
11/2024
Language
de-DE
PE_I_DEV: PROFIenergy-Kommandos im iDevice steuern

Beschreibung

Die Anweisung "PE_I_DEV" wird zur Abwicklung des PROFIenergy-Profils im intelligenten IO-Device (iDevice) verwendet. Was in einem normalen PROFIenergy-fähigen IO-Device, z. B. der ET 200S, von der Firmware erledigt wird, übernehmen im iDevice die Anweisung "PE_I_DEV" und die zugehörigen Hilfsbausteine:

  • Die Anweisung "PE_I_DEV" wird zyklisch vom Anwenderprogramm des iDevice aufgerufen und empfängt alle PROFIenergy-Kommandos.

  • Die Generierung der PROFIenergy-Antwort erfolgt durch Parametrierung eines Hilfsbausteins. Die Reaktion in der Pause ist frei programmierbar. Die Antwortdaten müssen innerhalb von 10 Sekunden bereitgestellt werden, da sonst am Parameter STATUS der Anweisung im IO-Controller der "Stateconflict 0x80B5" auftritt.

Zur Verwendung der Anweisung sind keine expliziten Kenntnisse des PROFIenergy-Standards erforderlich.

PROFIenergy-Hilfsbausteine (PE-Hilfsbausteine)

Über die PE-Hilfsbausteine generieren Sie das Antworttelegramm. Hierzu geben Sie die Antwortdaten (im Klartext) an den Eingangsparametern des jeweiligen Bausteins an.

Verschaltung der Hilfsbausteine

Die Anweisung "PE_I_DEV" und die Hilfsbausteine sind aufeinander abgestimmt. Die Parameter werden teilweise einfach verschaltet. Die folgende Grafik zeigt, welche der Parameter verschaltet werden müssen.

Parameter

Die folgende Tabelle zeigt die Parameter der Anweisung "PE_I_DEV":

Parameter

Deklaration

Datentyp

Speicherbereich

Beschreibung

RESET

Input

BOOL

E, A, M, D, L

Rücksetzen der Anweisung.

ID

Input

DWORD

E, A, M, D, L oder Konstante

Adresse des iDevice

Die Adresse kann aus der Hardware-Konfiguration übernommen werden.

VALID

Input

BOOL

E, A, M, D, L

Die Antwortdaten für den PROFIenergy-Controller stehen bereit und können gesendet werden.

CMD_PARA

Output

ANY

E, A, M, D, L

Parameter für:

  • Get mode: PE_mode_ID

  • Get measurement values: Liste der Measurement_IDs (Liste der IDs der zu lesenden Variablen; es können entweder eine einzelne Variable oder auch mehrere Variablen auf einmal gelesen werden.)

Maximale Länge: 234 Byte

DATA_ERRORRSP

InOut

ANY

E, A, M, D, L

Zeiger auf den Datenbereich, der die Quittungsdaten für den PROFIenergy-Controller enthält.

Dieser muss mit dem Zeiger übereinstimmen, der auch bei den Hilfsbausteinen verwendet wird.

INDEX

Output

INT

E, A, M, D, L

Datensatznummer des PROFIenergy Records (0x80A0 fest)

CMD

Output

INT

E, A, M, D, L

Service-Request-ID des PROFIenergy-Kommandos entsprechend dem PROFIenergy-Profil (siehe "Parameter CMD und CMD_MODIFIER").

Nach Erweiterungen des PROFIenergy-Profils sind weitere PE- Kommandos (Service-Request-IDs) möglich.

CMD_
MODIFIER

Output

INT

E, A, M, D, L

PROFIenergy-Unterkommando:

  • Nur bei CMD=3 oder CMD=16, siehe "Parameter CMD und CMD_MODIFIER".

  • Bei allen anderen Kommandos: "0".

Nach Erweiterungen des PROFIenergy-Profils sind weitere Unterkommandos möglich.

NEW

Output

BOOL

E, A, M, D, L

Neue Daten vom PROFIenergy-Controller verfügbar.

ERROR

Output

BOOL

E, A, M, D, L

Befehl mit Fehler beendet.

STATUS

Output

DWORD

E, A, M, D, L

Fehlerinformation (siehe "Parameter STATUS").

Weitere Informationen zu den gültigen Datentypen finden Sie unter "Übersicht über die gültigen Datentypen".

Parameter CMD und CMD_MODIFIER

CMD

CMD_
MODIFIER

PROFIenergy-Kommando

Beschreibung

01

0

Start_Pause

Starten des Energiesparmodus oder Wechsel in einen anderen Energiesparmodus.

02

0

End_Pause

Beenden des Energiesparmodus.

03

1

Query_Modes - List energy saving Modes

Ausgeben der unterstützten Energiesparmodi.

2

Query_Modes - Get Mode

Attribute zu dem momentan aktivierten Energiesparmodus ausgeben.

04

0

PEM_Status

Status des Energiesparmodus abfragen.

05

0

PE_Identify

Anzahl und die Beschreibung der unterstützten PE-Kommandos auslesen.

16

1

Query_Measurement - Get_Measurement_List

Auflistung der durch die der PE-Entity unterstützten Messwerte.

2

Query_Measurement - Get_Measurement_Values

Ausgabe der Messwerte der der PE-Entity.

Parameter STATUS

Am Ausgangsparameter STATUS werden Fehlerinformationen ausgegeben. Wird er als ARRAY[1...4] of BYTE interpretiert, hat die Fehlerinformation folgende Struktur:

Feldelement

Name

Bedeutung

STATUS[1]

Function_Num

Fehlerursache

  • B#16#00: Kein Fehler

  • B#16#DE: Fehler beim Lesen des Datensatzes

  • B#16#DF: Fehler beim Schreiben des Datensatzes

  • B#16#C0: Fehlermeldung durch die Anweisung "PE_I_DEV" oder der intern verwendeten Kommunikationsanweisungen "PRVREC" und "RCVREC".

STATUS[2]

Error_Decode

Ort der Fehlerkennung

  • 80: DPV1-Fehler nach Norm IEC 61158-6 oder anweisungsspezifisch

STATUS[3]

Error_Code_1

Fehlerkennung (bei Error_Decode = 80):

  • B1: Write length error (Fehler bei der Schreiblänge oder unzureichende Längenangabe über den Datentyp ANY).

STATUS[4]

Error_Code_2

Bei PROFINET-Fehler: Ausgabe der Fehlermeldung des IO-Controllers. Ist kein PROFINET-Fehler aufgetreten ist der Wert in STATUS[4] = "0".

Hinweis

Fehlermeldungen der Anweisungen "PRVREC" und "RCVREC"

Die Anweisung "PE_I_DEV" verwendet zur Kommunikation die Anweisungen "PRVREC" und "RCVREC". Fehlermeldungen dieser Anweisungen werden entsprechend in den Feldelementen STATUS[1] bis STATUS[4] ausgegeben.

Zur Bedeutung der Fehlercodes der Anweisungen "PRVREC" und "RCVREC" siehe Beschreibung des entsprechenden Parameters STATUS.