LoginSignup
0
0

【ST言語ことはじめ】タイマーを利用したプログラム例

Last updated at Posted at 2024-01-31

はじめに

タイマーは、プログラム可能なロジックコントローラー(PLC)で時間ベースの制御を実現するための重要な機能です。本記事では、タイマーを活用したプログラム例を紹介します。

使用機材

機種など
PLC Q02CPU, QX41, QY41P, Q62P, Q38B
アプリ GX Works 2

I/O割り付けはこちらを参照

タイマーを利用したプログラム例

以下のサンプルコードは、タイマーを利用して入力信号に応じて出力を制御するプログラム例です。
ボタン1を押してから5秒後にランプ1が点灯します。ボタン2で消灯します。

OUT_T(M1, TC1, K50);

IF X1 THEN
    M1 := TRUE;
END_IF;

IF X2 THEN
    RST(TRUE, T1);
    M1 := FALSE;
END_IF;

Y71 := TS1;

コード解説

  • OUT_T(M1,TC1,K50);:出力 M1 をタイマー TC1 を使用して50単位の時間で制御します。
  • IF X1 THEN M1:=TRUE; END_IF;:入力 X1 が True の場合、出力 M1 を True に設定します。
  • IF X2 THEN RST(TRUE,T1); M1:=FALSE; END_IF;:入力 X2 が True の場合、タイマー T1 をリセットし、出力 M1 を False に設定します。
  • Y71:=TS1;:タイマー TS1 の値を出力 Y71 に代入します。

タイマーを利用したプログラム例 その2

ボタン1を押した3秒後にランプ1、その後も3秒ごとにランプ2、ランプ3と点灯します。ボタン2で消灯します。

OUT_T(M0, TC1, K30);

IF X1 OR M1 THEN
    M0 := TRUE;
END_IF;

IF X2 THEN
    M0 := FALSE;
    M1 := FALSE;
    M2 := FALSE;
    M3 := FALSE;
    RST(TRUE, T1);
END_IF;

IF TS1 AND M2 THEN
    M3 := TRUE;
    M0 := FALSE;
    RST(TRUE, T1);
END_IF;

IF TS1 AND M1 THEN
    M2 := TRUE;
    M0 := FALSE;
    RST(TRUE, T1);
END_IF;

IF TS1 THEN
    M1 := TRUE;
    M0 := FALSE;
    RST(TRUE, T1);
END_IF;

Y71 := M1;
Y72 := M2;
Y73 := M3;

コード解説

  • OUT_T(M0, TC1, K30);:出力 M0 をタイマー TC1 を使用して30単位の時間で制御します。
  • IF X1 OR M1 THEN ... END_IF;:もし入力 X1 またはメモリビット M1 が True の場合、出力 M0 を True に設定します。
  • IF X2 THEN ... END_IF;:もし入力 X2 が True の場合、出力 M0 を False に設定し、M1M2M3T1 をリセットします。
  • IF TS1 AND M2 THEN ... END_IF;:もしタイマー TS1 とメモリビット M2 が同時に True の場合、出力 M3 を有効にし、出力 M0 を無効にし、タイマー T1 をリセットします。
  • IF TS1 AND M1 THEN ... END_IF;:もしタイマー TS1 とメモリビット M1 が同時に True の場合、出力 M2 を有効にし、出力 M0 を無効にし、タイマー T1 をリセットします。
  • IF TS1 THEN ... END_IF;:もしタイマー TS1 が True の場合、出力 M1 を有効にし、出力 M0 を無効にし、タイマー T1 をリセットします。

まとめ

本記事では、タイマーを利用したプログラム例を紹介しました。タイマーを活用することで、時間に基づいた正確な制御を実現することができます。ST言語の基本的な構文とタイマーの使い方をマスターして、効率的な制御プログラムを開発しましょう。

0
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
0
0