「EtherNet/IPの通信設定、どっちを使えばいいの?」
新人の頃、分厚いマニュアルを前にして途方に暮れた経験があります。
産業用ネットワークのスタンダードであるEtherNet/IPには、CIP通信という仕組みがあり、その中に大きく分けて2つの通信モードがあります。
- Explicit(エクスプリシット)通信
- Implicit(インプリシット)通信
名前が似ていて混乱しやすいですが、役割は明確に違います。
今回は、教科書的な定義だけでなく、「現場でどう使い分けるのか」「どこでハマりやすいか」という実務経験を交えて解説します。
1. Explicitメッセージ通信(メール・郵便タイプ)
「Explicit(明示的な)」という名の通り、「〇〇のデータをください」「〇〇の設定を変えて」と、明確に宛先と用件を指定して送る通信です。
現場でのイメージ:「メール」や「郵便」
- 送りたい時にだけ送る。
- 相手から返事(レスポンス)が来たら完了。
- ラダープログラム上で、専用の命令語(MSG命令など)を実行する必要があります。

主な使いどころ
- 頻度が低いデータのやり取り(バーコードリーダーの読み取り結果など)
- 設定変更(段取り替えで、サーボアンプのパラメータを書き換えるなど)
- エラー履歴の取得(トラブル発生時だけ詳細データを吸い出す)
メリット・デメリット
- メリット: 必要な時しか通信しないので、ネットワークの帯域を圧迫しにくい。
- デメリット: 都度通信を確立するため、リアルタイム性(決まった時間内に必ず届くこと)は保証されにくい。
2. Implicit通信 / タグデータリンク(ベルトコンベアタイプ)
「Implicit(暗黙的な)」という名の通り、一度設定してしまえば、プログラム上で「送れ」と命令しなくても、裏で自動的に・周期的にデータを送り続ける通信です。「サイクリック通信」とも呼ばれます。
オムロンやRockwellなどのPLCでは「タグデータリンク」という機能名でおなじみですね。
現場でのイメージ:「ベルトコンベア」
- 中身が空っぽでも、変化がなくても、決まったスピードで常に回り続けている。
- ラダープログラムでの命令は不要。設定ソフトで変数(タグ)を割り当てれば、デバイスメモリが勝手に書き換わります。

主な使いどころ
- リアルタイム制御(スタート信号、インターロック信号、現在値データなど)
- PLC間のデータ共有(前工程のPLCと後工程のPLCで信号をやり取りする)
- リモートI/Oの制御
メリット・デメリット
- メリット: 定時性(リアルタイム性)が高く、常に最新のデータが保証される。制御に直結する信号はこれ一択。
- デメリット: データが変わっていなくても送り続けるため、大量に設定しすぎるとネットワーク帯域を消費する。
⚠️ ここが落とし穴!「RPI(通信周期)」の設定
Implicit通信の設定には**「RPI(Requested Packet Interval)」**という項目があります。「どのくらいの間隔でデータを送るか」という設定です。
「早いほうがいいだろう」と何も考えずに全ての機器を最速(例:1ms)に設定するのはNGです!ネットワークの帯域がパンクして、通信エラーが頻発する原因になります。
- 10ms〜20ms: インバータやサーボなど、速度が必要なもの
- 100ms〜500ms: 温度監視やタッチパネルなど、ゆっくりでいいもの
このように、用途に合わせて適切に分散させるのが、止まらない設備を作るコツです。
3. 設定の前に確認!「EDSファイル」入れましたか?
ExplicitでもImplicitでも、設定を始める前に必ず確認してほしいことがあります。
それは、EDSファイルのインストールです。
Windowsでいう「ドライバ」のようなもので、これを各機器メーカーのHPからダウンロードして設定ソフトに登録しないと、リストに機器が表示されません。
「マニュアル通りにやっているのに、設定画面に型式が出てこない…」と焦る原因のNo.1です(私はこれで半日悩み、動けなくなったことがあります…)。
4. 【保存版】現場でよくあるトラブルと対処法
現場で「通信できない!」となった時、ExplicitとImplicitでは疑うべきポイントが全く違います。ここが一番重要です。
ケース①:Explicit(メッセージ)がつながらない時
👉 疑うポイント:「宛先アドレス」の入力ミス Explicit通信は、宛先となる「クラスID」「インスタンスID」「アトリビュートID」が一文字でも間違っていると動きません。 マニュアルの「通信仕様書」のページを指差し確認してください。10進数と16進数の入力間違いもよくあるミスです。
ケース②:Implicit(タグデータリンク)がつながらない時
👉 疑うポイント:「データサイズ」の不一致 設定したのに通信ランプが点滅して繋がらない場合、データサイズの不一致が原因であることが多いです。
- PLC側の設定: 10ワード(20バイト)で受信設定
- 機器側の設定: 20ワード(40バイト)で送信設定
このように、お互いの認識しているサイズが異なると、不一致で通信ランプが点滅します。「入力点数を増やしたのに設定を変え忘れていた」なんて時に発生しやすいトラブルです。
「動かない理由」の切り分けができるようになると、現場での信頼度は一気に上がりますよ!
まとめ:現場での使い分け
最後に、両者の違いを表で整理します。
| 項目 | Explicit通信 | Implicit通信 (タグデータリンク) |
| 別名 | メッセージ通信 | I/O通信、サイクリック通信 |
| イメージ | 郵便・メール | ベルトコンベア |
| タイミング | プログラムで命令した時だけ | 常時(自動更新) |
| 用途 | 設定変更、非定常データ | 制御信号、インターロック |
| 注意点 | アドレス指定ミスに注意 | 通信周期(RPI)とデータサイズ不一致に注意 |
【結論】
- 「スイッチを押したら動く」ような制御信号はImplicit
- 「たまにしか行わない」設定変更などはExplicit
基本はこの使い分けでOKです。
まずは基本となるImplicit通信(タグデータリンク)をしっかり設定できるようになりましょう。「基本を疎かにしない」ことが、安全な制御への第一歩です。
