LoginSignup
1
0

CODESYSハンズオン 【チャート:折れ線グラフ】

Last updated at Posted at 2023-09-28

はじめに

CODESYSを勉強中です。間違いなどございましたら優しく教えていただけると嬉しいです。

CODESYSとは

CODESYSは、PLCプログラミング言語の国際標準規格であるIEC 61131-3に準拠したソフトウェアPLCです。

基本的な操作などは以下のページを参考にしました。

チャート:折れ線グラフを作る

このようなグラフを作っていきます。

chart2.png

ハンズオン(画面)

まずはCODESYSを起動して新規プロジェクトを作ってください。
その後にApplication上で右クリック→ビジュアライゼーションを追加します。

chart0.png

ビジュアライゼーションをダブルクリックで開き、デカルト座標XYグラフを追加します。

chart1.png

グラフを選択するとプロパティを設定できる画面が表示されると思います。
XYChartをダブルクリックしましょう。
※ここでX軸とY軸の設定ができます。後述のプログラム作成編で「PLC_PRG_ST」を作ります。
X軸:PLC_PRG_ST.DataX
Y軸:PLC_PRG_ST.DataY

chart5.png

(グラフを選択→右クリック→Configure XYChart Settingからでも同じ設定画面が開きます)

chart4.png

ハンズオン(プログラムST言語)

グラフに表示するデータを作っていきます。
プログラムはApplication右クリック→オブジェクトの追加→POUです。
プログラム名:PLC_PRG_ST

変数の定義
PROGRAM PLC_PRG_ST
VAR
	DataX : ARRAY [1..200] OF REAL ;//X軸のデータ
    DataY : ARRAY [1..200] OF REAL ;//Y軸のデータ
    xDoIt : BOOL := FALSE;          //TRUEの時にグラフ更新する
    ix : INT;                       //Forループ用Index
END_VAR
プログラム名:PLC_PRG_ST
IF xDoIt THEN
    xDoIt := FALSE;
    FOR ix := 1 TO 200 BY 1 DO
        DataX[ix] := (ix * 0.2) + 0.1;
		DataY[ix] := (ix * 0.1);        
    END_FOR
    xDoIt := TRUE;
END_IF

作ったプログラムはタスクに追加しましょう。

ハンズオン(デバッグ)

作成したプログラムを動かすと以下のようなグラフが表示されると思います。
※データの更新にはxDoItをTRUEにする必要があります。

chart2.png

表示するデータを少し変えてみると...

chart6.png

IF xDoIt THEN
    xDoIt := FALSE;
    FOR ix := 1 TO 200 BY 1 DO
        DataX[ix] := (ix * 0.2) + 0.1;
		IF ix <= 100 THEN
			DataY[ix] := (ix * 0.1);
		ELSE
			DataY[ix] := DataY[ix-1] - 0.1;
		END_IF        
    END_FOR
    xDoIt := TRUE;
END_IF

ちゃんと動いてますね。
お疲れ様でした!

いいね や コメント いただけると励みになります。
よろしくお願いいたします。

参考ページ

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0