この記事では、データレジスタの練習問題を3ヶ出題します。
この記事中の問題を解くことができれば、
・データレジスタの基本が理解できている。
・基本的な転送命令を使うことができる。
・インクリメント命令・デクリメント命令を使うことができる。
・タイマを活用できる。
と言えます。
データレジスタとはなんだろう…?という方は、下記の記事でデータレジスタについて解説しているので、宜しければご覧ください。
データレジスタ(D)の概要と使用例この記事中のPLCは三菱電機製シーケンサ:FX3G-60MT/ESS、ラダープログラムはソフトウェア:GX Works2を使用しています。
別のプログラムでも動作が同じであれば問題ありません。
目次
1. 【1問目】データレジスタを1秒毎に加算
下記仕様を満たすラダープログラムを作成してください。
データレジスタ(D0)を1ずつ加算するために、インクリメント命令(INC命令)を使用します。
タイムチャート
タイムチャートは以下のようになります。
X0がONしている間、D0は1秒毎に1ずつ加算します。X0がOFFするとD0は加算をしなくなり、その時の値を保持します。
GOTの動作イメージ
GOTの動作イメージは以下のようになります。
スイッチ(X0)を押している間、データレジスタ(D0)の値を1秒毎に1ずつ加算します。
解答ラダープログラム
解答のラダープログラムは以下のようになります。
【解説】
データレジスタ(D0)を1ずつ加算させるため「1秒毎にONするタイマ」を用意します。タイマ(T0)はX0がONしている間、1秒毎に1スキャンのみONするタイマです。タイマ(T0)は自分自身のb接点で入力条件をOFFしているため、この部分を自滅タイマ回路と呼びます。
タイマ(T0)の設定値はK10になっているため、タイマ(T0)のa接点は「スイッチ(X0)が押されている間、1秒毎に1スキャンのみON」します。
タイマ(T0)を入力条件とするインクリメント命令(INC命令)でデータレジスタ(D0)をインクリメント(加算)します。
自滅タイマ回路 【三菱FXシリーズ】インクリメント(INC)・デクリメント(DEC)命令の指令方法とラダープログラム例2. 【2問目】データレジスタを1秒毎に加算・減算
下記仕様を満たすラダープログラムを作成してください。
スイッチ(X1)を押している間、データレジスタ(D0)の値を1秒毎に1ずつ減算する。
データレジスタ(D0)を1ずつ減算するために、デクリメント命令(DEC命令)を使用します。
タイムチャート
タイムチャートは以下のようになります。
X0がONしている間、D0は1秒毎に1ずつ加算します。X1がONしている間、D0は1秒毎に1ずつ減算します。
GOTの動作イメージ
GOTの動作イメージは以下のようになります。
スイッチ(X0)を押している間、データレジスタ(D0)の値を1秒毎に1ずつ加算します。
スイッチ(X1)を押している間、データレジスタ(D0)の値を1秒毎に1ずつ減算します。
解答ラダープログラム
解答のラダープログラムは以下のようになります。
【解説】
【1問目】の仕様にスイッチ(X1)の処理を追加したものになります。
減算用にはタイマ(T1)を使用します。
タイマ(T1)を入力条件とするデクリメント命令(DEC命令)でデータレジスタ(D0)をデクリメント(減算)します。
3. 【3問目】データレジスタに定数0を転送
下記仕様を満たすラダープログラムを作成してください。
スイッチ(X1)を押している間、データレジスタ(D0)の値を1秒毎に1ずつ減算する。
スイッチ(X2)を押すと、データレジスタ(D0)に定数0を転送する。
【2問目】にスイッチ(X2)の処理が追加されました。定数0を転送するためには転送命令(MOV命令)を使用します。
タイムチャート
タイムチャートは以下のようになります。
X0でインクリメント、X1でデクリメントする処理は【2問目】と同様です。
X2がONするとD0に定数0が転送されます。
GOTの動作イメージ
GOTの動作イメージは以下のようになります。
スイッチ(X0)を押している間、データレジスタ(D0)の値を1秒毎に1ずつ加算します。スイッチ(X1)を押している間、データレジスタ(D0)の値を1秒毎に1ずつ減算します。
スイッチ(X2)を押すと、データレジスタ(D0)に定数0を転送します。
解答ラダープログラム
解答のラダープログラムは以下のようになります。
【解説】
【2問目】の仕様にスイッチ(X2)の処理を追加したものになります。
X2がONしたとき、D0に定数0を転送するために転送命令(MOV命令)を使用します。
[MOV K0 D0]はD0に定数0を転送する命令になります。 【三菱FXシリーズ】転送(MOV)命令の指令方法とラダープログラム例4. おわりに
基礎的なデータレジスタの練習問題を3ヶ出題しました。転送命令・インクリメント命令・デクリメント命令はいずれも使用する頻度が多い命令になるので、理解しておくと色々な場面で使用できるかと思います。