Birden çok kez çağrılan fonksiyon bloklarının örneklerini tespit eder. Bunu yapmak
için, fonksiyon bloklarının {attribute 'analysis:report-multiple-instance-calls'} pragması ile işaretlenmesi gerekir.
Gerekçe: Bazı fonksiyon blokları, döngü içinde yalnızca bir kez çağrılabilecek şekilde tasarlanmıştır. Bu test, bir aramanın birden fazla konumda yapılıp yapılmadığını kontrol eder.
Önemliymiş: Düşük
PLCopen kuralı: CP16 / CP20
Örnek
// {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;
ND_VAR
fbA();
fbB(); // SA0105
fbA();
fbB(); // SA0105
--> SA0105: Instance 'fbB' called more than once
Ayrıca bakınız