SA0105:複数のインスタンス呼び出し
複数回呼び出されるファンクションブロックのインスタンスを検出します。この目的のために、関数ブロックは次のプラグマでマークされる必要があります。
{attribute 'analysis:report-multiple-instance-calls'}
理由: 一部の機能ブロックは、サイクル内で 1 回だけ呼び出せるように設計されています。このテストでは、複数の場所で通話が行われているかどうかを確認します。
重要度:低
PLCopenルール:CP16 / CP20
例 93. 例
// {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
での出力 メッセージ ビュー:
SA0105: インスタンス 'fbB' が複数回呼び出されました