成長ログ

【PLC勉強会】#1Ethernet/IP通信設定&異常解析

kyocha
相談者の悩み
  • デバイスの信号がどこから来るか理解できない
  • 通信設定の見方が難しい
  • トラブル調査に時間がかかりすぎる

PLCのトラブル調査で「デバイスがどこから来ているのか分からない」「Ethernet IP通信設定の見方が難しい」と悩む技術者からのご相談。

本記事では、メインPLCとサブPLC間の通信設定の仕組みから、設定確認のポイント、トラブル防止の考え方まで、現場で即使える知識をまとめて解説します。

実際にマンツーマンで指導した内容を公開しています。

PLC制御を覚えたいけど、相談相手がいない人をサポート中。

サポートに関する詳細はここをクリック

PLC勉強会の概要

PLC間のEthernet/IP通信の基本、PLC間のデータ送受信の仕組みについて解説

KV STUDIOのユニットエディタを使ったIPアドレスや通信設定の方法、タグ設定によるデータ送信、そして受信側のユニット設定について。

ポート番号の役割、サブネットマスクの概念、デバイスのメモリ割り当てに関する注意点についても、具体的な例や質疑応答を交えて理解を深めた。

トラブルシューティングの第一歩として、通信設定の理解が重要であることを伝えています。

Ethernet/IP通信設定の確認

PLC(今回はKeyence KVシリーズ)間のEthernet/IP通信において、メインPLCとサブPLCがどのようにデータを送受信しているかを確認する。

その為の設定箇所と手順について解説。

PLC2台を通信する前提で指導しています。

1台目:メインPLC

2台目:サブPLC

通信設定の要点

  • PLC間通信では、各PLCが送信側と受信側の両方の役割を持つ
  • データは、オンオフ制御の「ビット」と数字をやり取りする「ワード」の2種類
  • メインPLCからサブPLCへ送るデータ(送信)、サブPLCからメインPLCへ送る(受信)の2つの流れが存在する
  • サブPLCが複数台ある場合、その台数分だけ送受信のペアが増える。

LANケーブル1本でどんなデータでもやり取り可能

メインPLC側の設定確認

CL4

受信データ(サブPLC⇒メインPLC)の確認

  1. KV StudioでメインPLCのプログラムを開き、「ユニットエディタ編集モード」で「KV-8000」をダブルクリックする。
  2. 右側の「ユニット設定」タブ内にある「Ethernet/IP設定」をクリックする。
  3. 接続されている機器の一覧が表示される。各サブPLC(例:IPアドレス 172.16.0.10)の項目の左側にある「+」マークをクリックする。
  4. 展開された「B」(ビット)と「W」(ワード)が、そのサブPLCから受信するデータエリアを示す。例えば、「Bの100から」「Wの100から」と表示されていれば、それがsub1から送られてくるデータが格納されるアドレスとなる。

送信データ(メインPLC⇒サブPLC)の確認

  1. 「Ethernet/IP設定」画面で、一番上にある自分自身のPLC(例:IPアドレス 172.16.1.10)を右クリックし、「タグ設定」を選択する。
  2. 「タグ1セル」などの名前が設定されており、これが送信データを入れる「箱」の役割を果たす。この名前を使ってデータをやり取りするというルールになっている。
  3. 「タグ1セル」を選択すると、下部に「デバイス割り付けの領域」が表示される。ここに設定されている「B200」「W200」「B2000」などが、サブPLCへ送信するためのデータが格納されているアドレスとなる。
  4. この領域は自由に設定可能で、ビットだけでもワードだけでも構成できる。アドレスが連番でなく飛んでいる場合(例:B200とB2000)は、元々使っていた領域が他の用途で埋まってしまい、新しい領域を追加した可能性がある。

サブPLC側の設定確認

受信データ(メインPLC⇒サブPLC)の確認

  1. KV StudioでサブPLCのプログラムを開き、「ユニットエディタ編集モード」で「KV-8000」をダブルクリックする。
  2. 右側の「ユニット設定」タブ内にある「Ethernet/IP設定」をクリックする。
  3. メインPLCの「Ethernet/IP設定」でサブ1(172.16.0.10)を見ると、入力としてB(ビット)がB100から、W(ワード)がW100から割り付けられている。これは、サブ1からのデータがメインPLCのB100番台とW100番台に入ってくることを意味する。

送信データ(サブPLC⇒メインPLC)の確認

  1. 「Ethernet/IP設定」画面で、一番上にある自分自身のPLC(例:IPアドレス 172.16.1.10)を右クリックし、「タグ設定」を選択する。
  2. メインPLCの「タグ設定」で「タグ1セル」が定義されている。このタグに割り付けられたデバイス領域(例: B200, W200, B2000)が、サブ1へ送信するデータを格納する場所となる。ラダープログラム上でB200をONにすると、その情報がサブ1に送られる。

PLCのデータ領域設定の説明

PLCの通信設定において、送受信するデータのサイズを「ワード」という単位で指定します。1ワードは16ビットに相当します。

具体的に説明

  • 例えば、開始アドレスBの200、サイズ2ワードの場合、Bの200からBの21Fまでの32ビットが確保される。
  • 64ワードの場合、Wの200からWの23Fまでの領域が確保される。
  • 1ワード = 16ビット。
  • 2ワード = 32ビット。
  • データサイズとして指定したワード数に応じて、PLCのメモリ領域が確保される。

既存の回路で使用しているアドレスと重複しないように、新しいデータ領域を割り当てる必要がある。

重複するとトラブルの原因となるため、既に使用されていないアドレスに追加するのが一般的。

IPアドレスとポート番号の考え方

  • IPアドレスは、ネットワーク上の機器を識別するための住所、重複しないように設定する。
  • ポート番号については、Ethernet/IP通信などPLCの初期設定でうまくいくことが多く、トラブルの原因になることは比較的少ない。
  • 通信相手のポート番号を指定する必要がある場合は、設定項目に正しい番号を入力すればよく、深く意識しなくても接続できることが多い。

IPアドレスもポート番号も、設定で困った経験は少ない。

(困った記憶が全然ありません)

10年以上もPLC設計をしていますが、問題になっていないので過度に考え込む必要はないと判断してます。

サブネットマスクは?

  • サブネットマスクの「255」は、IPアドレスの対応する部分が同じでなければならないことを示す。
  • サブネットマスクの「0」は、IPアドレスの対応する部分が異なっていてもよいことを示す。
  • 一般的に、ネットワーク設定で一番最後の数値だけを変更するのは、サブネットマスクが「255.255.255.0」の場合である。
  • 通信設定を変更する際は、サブネットマスクによって変更して良いIPアドレスの範囲が決まる。

サブネットマスクは、IPアドレスのネットワーク部とホスト部を識別するための数値で、通信できる範囲を決定します。一般的に「255.255.255.0」のように表記されます。

実例で解説

サブネットマスクの「255」が指定されている部分は、対応するIPアドレスの数値が同じでなければ通信できません。

「0」の部分は異なる数値でも通信が可能。

例えば、サブネットマスクが「255.255.0.0」の場合、IPアドレスの最初の2つのブロック(例:172.16)が同じである必要があります。

一方、「255.255.255.0」の場合は、最初の3つのブロックが同じでなければなりません。このルールにより、どの範囲のIPアドレスと通信できるかが決まります。

トラブルシューティング

PLCの回路(プログラム)内で、あるデバイスがどのタイミングで、なぜON/OFFするのかを調査するためのアプローチ。

Ethernet/IP通信が絡む場合は、まず通信設定を確認し、デバイスが内部処理によるものか、他の機器との外部処理によるものかを切り分けることが重要。

トラブルの要点を確認

  1. 回路を調べる際、あるデバイス(例:B200)の動作要因が自PLC内に見つからない場合、Ethernet/IP通信によって外部から操作されている可能性を疑う。
  2. 通信設定資料や設定画面を確認し、「入力(受信)」か「出力(送信)」か、どの機器とどのデバイスでやり取りしているかを特定する。
  3. この特定作業を行って初めて、デバッグのスタートラインに立てる。
  • 回路を追う際は、まずそのデバイスが内部処理か通信かを切り分ける意識を持つ。
  • 通信に関わるデバイスの動作を追う際は、相手側のPLCプログラムも確認する必要が出てくる。

事前準備

  • 事前準備として、通信で使用しているデバイスのアドレス範囲(例:「Bの0~1000番は通信用」など)を把握しておくことが推奨。
  • アドレス範囲を認識しておくことで、回路を読んでいる際に、そのデバイスが自PLC内のI/Oなのか、他PLCとの通信用I/Oなのかを素早く判断でき、トラブル解決までの時間を短縮できる。

資料不足と間違いはどこでも多発している

  • Ethernet/IPの設定内容は、知っている人でないと解読が難しい場合があるため、チーム内で情報共有やドキュメント化が重要。
  • 通信設定のドキュメント(シート)と実際のPLC設定は、どちらかを正として統一する必要がある。両者が異なると混乱の原因になる。

アドバイス

手順の固定化で考える時間を短縮

原因追跡を短縮するため「誰が何を送受信するか」を矢印とアドレスで先に可視化する。

【画面共有しながら使用したEXCEL資料】

  • 送受信の矢印と範囲を事前定義しないと調査は迷路化する。
  • IP・タグで源泉と宛先を確定してから命令と回路を読む。

割付に一貫性を持たせる

番号は意味ある連番と整合表で固定し、拡張はオフセットで安全に増設する。

  • B/W領域の役割を明示分離し、任意番号を廃してタグと対応表で統制する。
  • ワード数は連続領域宣言と捉え、設計後のアドレス変更を避ける。
  • 既存領域を避けて末尾へ増設し、重複と不具合を未然防止する。

AIからの評価

良い点

全体として、具体的な操作を示しながらEthernet/IP通信の複雑な概念を解説されており、非常に分かりやすかった。

実際にKV8000を画面共有して教えています。

Excelで図解を交えながら説明されたことで、メインPLCとサブPLC間の送受信の役割分担が明確になりました。

図解と解説を併用して理解するまで何度でも伝える!

生徒もIPアドレスのネットワーク部が違う点に気づくなど、深い理解につながっている様子が見えた。

声やリアクションで生徒の反応が伺えます。

*顔出しはお互いしていません

講義の構成は論理的で、ペースも適切でした。

特に、サブネットマスクの概念を説明する際に、具体的な例(255.255.0.0と255.255.255.0)を挙げて、どの部分が固定され、どの部分が変更可能なのかを明確に示した点は非常に効果的でした。生徒の反応も良く、理解が深まったようです。

現状と変えた場合を説明して、別の場面でも役に立つような指導を実施。

改善点

改善提案としては、タグ設定におけるデバイス割り付けの自由度について触れた際、「一般的」「そういうルール」といった表現が少しだけ抽象的に聞こえる可能性がありました。

実践的に理解しなくても問題ない部分はどんどん省略してました。

専門用語(ワード、ビットなど)を説明する際に、より身近な例え話を加えると、さらに理解が促進されるかもしれません。

もっと伝わりやすい言い方を常に探していきます!

まとめ

近年は単体設備での運用よりも、ロボットを使用した無人化のライン設備が極端に多くなっています。

多数の設備をつなげてデータのやり取りする場面が多くなってきているので、Ethernet/IPの接続方法や調べ方、根本の考え方を把握していることが重要になってきます。

工程間の通信は複数の業者を介いて行いますので、1つ間違えると多くの方と再度意思疎通が必要になるのでかなり面倒になります。

後から修正しやすいように、最初から理解してもらいやすいように設計するのが大切。

PLCに関する困りごとがあった際にはこちらを一度見てみてください。詳細はこちら

ABOUT ME
きょうちゃ
きょうちゃ
人生の足跡を残す人
静岡県出身。人生に深みを求める会社員
できなかったことを、少しずつできるように。 日常の挑戦や成長の気づきを記録しています。
【一歩ログ】で自分らしく前へ。
記事URLをコピーしました