Skip to main content

SA0105: Mehrfache Instanzaufrufe

Ermittelt die Instanzen von Funktionsbausteinen, die mehrfach aufgerufen werden. Dazu müssen die Funktionsbausteine mit folgendem Pragma gekennzeichnet sein:

{attribute 'analysis:report-multiple-instance-calls'}

Begründung: Einige Funktionsbausteine sind so designt, dass sie nur einmal im Zyklus aufgerufen werden können. Dieser Test prüft, ob ein Aufruf an mehreren Stellen erfolgt.

Wichtigkeit: Niedrig

PLCopen-Regel: CP16 / CP20

Beispiel 93. Beispiel
// {attribute 'analysis:report-multiple-instance-calls'} Deactivated
FUNCTION_BLOCK FB_DoA
VAR_INPUT
END_VAR
VAR_OUTPUT
END_VAR
VAR
    iA : INT;
END_VAR
iA := iA + 1;
{attribute 'analysis:report-multiple-instance-calls'}
FUNCTION_BLOCK FB_DoB
VAR_INPUT
END_VAR
VAR_OUTPUT
END_VAR
VAR
    iB : INT;
END_VAR
iB := iB + 1;
PROGRAM PLC_PRG
VAR
    fbA : FB_DoA;
    fbB : FB_DoB;
END_VAR
fbA();
fbB();    // SA0105
fbA();
fbB();    // SA0105

Ausgabe unter Ansicht Meldungen:

  • sa_icon_message.png SA0105: Instanz 'fbB' mehrmals aufgerufen