三菱入力モジュール Q64AD から入力信号の平均値を取得する必要があります。GX Works 2 で構造化テキストを使用しています。
これは、Codesysで平均値を取得するために使用した方法です:
timer_sr(IN:= NOT timer_sr.Q , PT:= T#5s );
SUM1:= SUM1 + napr1;
Nsum:=Nsum + 1;
IF timer_sr.Q THEN
timer_sr(IN:= NOT timer_sr.Q , PT:= T#5s);
outsr := SUM1 /Nsum;
Nsum := 0;
SUM1 := 0;
END_IF;
napr1 - モジュールからの値です
このコードは GX Works 2 では機能しません。これは、SUM1 が INT データ型ではなく、Word[signed] 型であるためだと思います。
SUM1 を INT 型にする方法はありますか、またはその解決策に別のロジックがある可能性がありますか?