MINATAと学ぶオートメーション #42:HMIとPLCをつなぐ — 配線の前に、タグと状態を設計する
HMIとPLCをつなぐ:配線の前に、タグと状態を設計する
HMIが信用できるのは、タグの対応表、書き込みの権限、通信の状態が、PLCから画面まで通して設計されているときだけである。先に配線して、タグはあとで考える。これは、今日は動くが、誰かが機能を足したり保全に入ったりした瞬間に分からなくなる系をつくる、いちばん速い道でもある。
タグ一覧は約束事である
PLCとHMIのあいだでやり取りするすべての値に、名前、データ型、単位、そして持ち主を与える。名前の付け方には役割と単位を入れておく。名前を読めば分かる、という状態にしたい。
| タグ | 意味 |
|---|
Cmd_Start | HMIからPLCへ下ろす指令 |
Sts_Running | PLCが上げてくる本当の状態 |
PV_Pressure_bar | 測った値。単位付き |
SP_Speed_rpm | 設定値 |
一つに決めたタグ一覧があると、電気とソフトと製造が同じ言葉で話せる。次に機能を足すときも、名前を当てずっぽうで探さずに済む。
誰が書き、誰が読むだけか
ほかのどの決まりより大事なことが一つある。HMIから出力の接点へ、直接あちこち書き込まない。 HMIが書くのは指令のタグである。PLCがその指令を読み、許可の条件を確かめ、そのうえで出力を動かす。こうすれば、動く部分ごとに判断する場所が一か所に保たれる。複数の場所が同じ出力に書き、どの走査でどれが勝ったのか誰も分からない、という事態を避けられる。
通信の状態は見えていなければならない
回線は切れることがある。HMIには、つながっているかどうかの表示と、古くなった値の扱いの決まりが要る。切れたときに、最後の数字をそのまま正しいかのように出し続けてはいけない。無応答と見なす時間を決め、最後に更新した時刻を出し、値は凍りついた数字ではなく無効の状態へ移す。
番地の割り付け
HMIとPLCが同じメーカーなら、タグはたいてい変数名にそのまま対応する。一方でモドバスのような規約を使う場合は、レジスタの番地とタグの対応表をつくり、型式とファームウェアごとに管理する。見た目が似ているというだけで、型式の違う機器のあいだで対応表を写さないこと。
参考になる現場の一場面
HMIの診断画面に、HMIとPLCのつながりの状態、重要な入出力の点、そしてプログラムの版数を出しておく。試運転のときも、交替の引き継ぎのときも、担当者はその一画面を見れば、通信が生きているか、どの版のソフトが動いているかが分かる。
最終的なタグ一覧、書き込みの権限、番地の対応は、機械の資料と、実際に付いている機器の資料と一致していなければならない。
よくある間違い
- タグ一覧を決める前に、配線と通信の設定を進めてしまう。
- 指令のタグを介さず、HMIから出力の接点へ直接書かせてしまう。
- 切断の表示がなく、古い値がまだ正しいかのように出続ける。
- 単位のない思いつきの名前を付け、機能を足すときに探せなくなる。
- 型式の違う機器のあいだで、レジスタの対応表を写す。
接続のチェックリスト
- [ ] タグ一覧がある。名前、型、単位、持ち主、読み書きの別。
- [ ] HMIは指令のタグ経由で書き、出力の判断はPLCが持っている。
- [ ] つながりの表示と、切れたときの値の扱いの決まりがある。
- [ ] 番地の対応が、型式とファームウェアに正確に合っている。
- [ ] 診断画面に通信の状態と版数が出ている。
配線の前にタグと状態を設計しておくと、HMIは初日から信用できるものになる。次の #43 ではモドバスRTUに入る。機器をつなぐ前に、RS-485の回線そのものを正しく読む話である。
MINATAで自動化の知識をもっと読む:https://minatavn.com/ja/blog/industrial-automation
前の記事 — #41:機械のためのHMI入門:https://minatavn.com/ja/blog/automation-41-basic-hmi-ja
次の記事 — #43:RS-485上のモドバスRTU:https://minatavn.com/ja/blog/automation-43-modbus-rtu-ja
MINATAの技術記事をすべて見る