はじめに
MELSEC-QのPCパラメータ「デバイス設定」について解説します。
デバイス設定は活用していますか?人によってはラッチ設定以外触ったことがないという方もいらっしゃるかもしれません。
使用できるデバイスの個数は可変なので、使い方によって個数を増やしたり減らしたりすると便利です。全体の容量は決まっていますが、個々のデバイスの点数は変更可能です。
そのため、使わないデバイスがあるのであれば減らして、よく使うデバイスに点数を振ると効率的です。ホームセンターで売っている仕切りの位置が変えられる小物ケースのイメージですね。
各デバイスの詳細な説明は以下の記事に記載しています:
MELSEC-Qのデバイス解説
デフォルト設定(Q06UDVCPUの場合)
下記はデフォルトの場合です。
例ではQ06UDVCPUを想定しています。ファイルレジスタは拡張SRAMカセットを使用せずに内蔵を全点(384K点)ZRに割り付けています。
ケース1:増加(M, L)、減少(F, V, S, T, SB, SW)
M、Lを増やして、使用頻度が少ないデバイスを減らしています。
削減対象の理由
- F(ファイルレジスタ): 使うことが少ない
- V(インデックス修飾): ループ内でパルス命令を処理する場合しか使わないので減らします
- S(ステップ): SFCを使わないので減らしています(0点にすると警告が出て面倒なので最小設定)
- T(タイマー): 1点につき1.125Word+2Bitを使用します(T/C/STも同様)。そのためタイマ使用量を減らすと空きがたくさん増えます
- SB/SW(リンクビット/リンクワード): 512点あればMELSECNET/H通信ユニット2枚分なので十分かと思います
ケース2:増加(M, L, B, V, T, C, D, W)、減少(F, S, SB, SW, ZR)
もっと欲張りなケースです。ビットデバイスとワードデバイス両方ともたくさん欲しいという場合ですね。
ポイント
データレジスタ、リンクレジスタを0点にして他のデバイスに振り、拡張データレジスタ、拡張リンクレジスタを使っているところです。
拡張データレジスタ、拡張リンクレジスタとは
ZRが大量にあっても使わないけどD、Wがたくさんほしいということはあるかもしれません。ファイルレジスタをD、Wとして使う機能がユニバーサルモデルから追加されています。
重要な注意事項
拡張データレジスタ、拡張リンクレジスタを使う場合は、データレジスタ、リンクレジスタは0点にした方が良いです。
マニュアルにも書いてありますが、内部デバイスと拡張デバイスの境界線をまたぐような処理をすると問題が発生します(境界をまたいでの指定はOPERATION ERROR(エラーコード: 4101)になります)。
参考資料:
- [SH-080802 QnUCPUユーザーズマニュアル(機能解説・プログラム基礎編)/4.8 拡張データレジスタ(D),拡張リンクレジスタ(W)]
- [SH-080804 MELSEC-Q/Lプログラミングマニュアル(共通命令編)/3.6 プログラミング時の注意事項]
残念なのは拡張データレジスタ、拡張リンクレジスタに自動割付デバイス設定はできないことです。そういう仕様だそうです。
ラッチ(1)、ラッチ(2)
- ラッチ(1): ラッチ操作でクリア可能なラッチ範囲
- ラッチ(2): ラッチ操作でクリア不可能なラッチ範囲
ということで、ラッチクリア操作可能か否かで区分されるようです。
ラッチクリア操作について
ラッチクリアは古いCPUであればCPUのユニット前面スイッチ(L.CLR)でクリアすることができましたが、ユニバーサルモデルはリモート操作のみになりました。
まとめ
MELSEC-Qのデバイス設定は、使用するデバイスに応じて柔軟にカスタマイズできます。全体の容量は固定ですが、各デバイスの点数は変更可能です。
効率的なデバイス設定のポイント:
- 使用頻度の低いデバイスは削減
- よく使うデバイスに点数を振り分け
- 拡張デバイスを活用する場合は注意事項を確認
- ラッチ設定は用途に応じて適切に設定
この設定により、より効率的なPLCプログラムの開発が可能になります。