Die Module der Vorlage bilden mit ihren Submodulen einen Baum, an dessen Spitze die MainMachine steht. Die Funktion greift auf den Baum zu. Sie durchsucht das angegebene Modul über i_udiModuleId und gibt die ID aller Submodule des Moduls an.
Eingang |
Datentyp |
Beschreibung |
---|---|---|
i_pstMachineStandardItf |
POINTER TO ST_StandardModuleInterface |
Zeiger auf die Standardschnittstellen der MainMachine. Verbindet diesen Eingang immer mit "ADR(SR_MainMachine.stMachineInterface)". |
i_udiModuleId |
UDINT |
ID des Moduls, dessen Submodule ausgelesen werden sollen. |
i_pudiResultSet |
POINTER TO UDINT |
Array, in das die IDs der Submodule geschrieben werden sollen. Beschalten Sie diesen Eingang mit der Adresse einer Variablen vom Typ "ARRAY[1..c_diResultSetSize] OF UDINT"; Beispiel: "ADR(audiResultSelt)". |
i_udiResultSetSize |
UDINT |
Die Größe des Arrays am Eingang i_pudiResultSet. Im obigen Beispiel wäre dies c_diResultSetSize. |
Ausgang |
Datentyp |
Beschreibung |
---|---|---|
q_etDiag |
Allgemeingültige, bibliotheksunabhängige Aussage zur Diagnose. Ein Wert ungleich ET_Diag.Ok entspricht einer Fehlermeldung. |
|
q_etDiagExt |
POU-spezifischer Ausgang des Diagnosegeräts. q_etDiag = ET_Diag.Ok -> Statusmeldung q_etDiag <> ET_Diag.Ok -> Fehlermeldung |
Datentyp |
Beschreibung |
---|---|
UDINT |
>=0 Die Anzahl der Submodule des gesuchten Moduls. Dies entspricht der Zahl der Einträge, die in das Array geschrieben wurden. |
q_etDiag |
q_etDiagExt |
Aufzählungswert |
Beschreibung |
---|---|---|---|
OK |
Ok |
0 |
OK |
OK |
ResultSetSizeRange |
69 |
ResultSetSize ist außerhalb des gültigen Bereichs. |
ExecutionAborted |
MissingExtInit |
56 |
Die Initialisierung der Ext-Struktur fehlt. |
InputParameterInvalid |
ModuleIdInvalid |
67 |
Die ID des Moduls ist ungültig. |
InputParameterInvalid |
PointerMachineStandardItfInvalid |
58 |
Der Zeiger MachineStandardItf ist ungültig. |
InputParameterInvalid |
PointerResultSetInvalid |
68 |
Das Zeiger auf ResultSet ist ungültig. |
InputParameterInvalid |
ResultSetSizeRange |
69 |
ResultSetSize ist außerhalb des gültigen Bereichs. |
UnexpectedProgramBehavior |
UnexpectedFeedback |
10 |
Bei der Ausführung wurde ein unerwarteter Fehler entdeckt. |
Aufzählungsname: |
MissingExtInit |
Aufzählungswert: |
56 |
Beschreibung: |
Die Initialisierung der Ext-Struktur fehlt. |
Problem |
Ursache |
Lösung |
---|---|---|
- |
Initialisierung von Ext fehlgeschlagen |
Der Parameter ET_Diag muss OK sein. |
Aufzählungsname: |
ModuleIdInvalid |
Aufzählungswert: |
67 |
Beschreibung: |
Die ID des Moduls ist ungültig. |
Problem |
Ursache |
Lösung |
---|---|---|
- |
Die Modul-ID ist ungültig. |
Der Parameter ET_Diag muss OK sein. |
Aufzählungsname: |
Ok |
Aufzählungswert: |
0 |
Beschreibung: |
OK |
Die Funktion GetSubmoduleIds wurde fehlerfrei ausgeführt.
Aufzählungsname: |
PointerMachineStandardItfInvalid |
Aufzählungswert: |
58 |
Beschreibung: |
Der Zeiger MachineStandardItf ist ungültig. |
Problem |
Ursache |
Lösung |
---|---|---|
- |
Der Zeiger MachineStandardItf ist ungültig. |
Der Parameter ET_Diag muss OK sein. |
Aufzählungsname: |
PointerResultSetInvalid |
Aufzählungswert: |
68 |
Beschreibung: |
Das Zeiger auf ResultSet ist ungültig. |
Problem |
Ursache |
Lösung |
---|---|---|
- |
Der Zeiger ResultSet ist ungültig. |
Die Variable ResultSet muss >0 sein. |