Modbus TCP/IP:産業用ネットワークの基礎知識と構築

Modbus TCP/IPは、産業用ネットワークで広く利用されている通信プロトコルです。
工場の生産ラインやビルの空調システムなど、産業の現場では様々な機器が連携して動いています。これらの機器がスムーズに通信するために重要な役割を果たしているのが「Modbus TCP/IP」です。この記事では、Modbus TCP/IPの基本的な仕組みから、イー・フォースが提案する実装例、将来の展望までを分かりやすく解説します。産業用ネットワークの構築に興味がある方は、ぜひ最後までお読みください。

▶︎Modbus Organizationについて

Modbusの歴史とTCP/IP採用の背景

Modbusは、1979年にModicon(現Schneider Electric)社によって開発されたプログラマブルロジックコントローラー(PLC)で使用するためのシリアル通信プロトコルです。当時、規格の異なるPLCごとの通信を標準化するニーズがあり、Modbusはその役割を担いました。その後、インターネット技術の発展に伴い、ModbusをTCP/IP上で動作させるModbus TCP/IPが登場しました。これにより、イーサネットを介したModbus通信が可能になり、より広範囲なネットワークでの利用が促進されました。

Modbus TCP/IPの仕組み:通信の基本構造

Modbus TCP/IPは、クライアント・サーバモデルで動作します。クライアントはModbusマスターに相当し、サーバはModbusスレーブに相当します。クライアントはサーバに対してデータの読み書きを要求し、サーバは要求に応じてデータを提供します。通信はTCP/IPプロトコル上で行われるため、信頼性が高く、既存のネットワークインフラを活用できます。Modbus TCP/IPメッセージは、基本的にイーサネットTCP/IPカバーで圧縮されたModbus通信データメッセージです。

Modbusプロトコルの通信モード一覧

Modbusプロトコルには以下のような通信モードが存在します。
ASCIIモードとRTUモードはシリアル通信のため、通信速度は約20kbps程度と非常に低速です。

通信モード 特徴
Modbus ASCII
  • 1バイトのデータを2文字のASCIIコードとして送受信
  • 解析しやすいが、伝送時間が遅い
Modbus RTU
  • 1バイトのデータをそのままバイナリとして送受信
  • データ量が少なく伝送時間が速い
Modbus TCP
  • TCP/IP上でModbus通信を行うためのプロトコル
  • 通信速度が非常に速い

Modbus TCPは、ModbusプロトコルをTCP/IPに拡張したプロトコルで、インターネット環境でのメッセージのやり取りが可能です。クライアント・サーバモデルで通信を行っており、クライアントは従来のModbusプロトコルのマスターに相当し、サーバはスレーブに対応します。すなわちマルチマスター、マルチスレーブのシステム構成が可能になります。

Modbus RTUとの違い:イーサネット活用のメリット

Modbus RTUはシリアル通信をベースとするModbusの形式で、主にRS-485などの物理層で使用されます。一方、Modbus TCP/IPはイーサネット上で動作します。
この違いにより、Modbus TCP/IPは以下のメリットがあります。

Modbus TCP/IPのメリット
  1. 通信速度の向上:イーサネットの高速なデータ転送速度により、Modbus RTUよりも高速な通信が可能です。
  2. ネットワークの拡張性:TCP/IPネットワークを利用するため、広範囲なネットワークに容易に拡張できます。
  3. 既存インフラの活用:既存のイーサネットインフラをそのまま利用できるため、導入コストを抑えられます。

Modbus TCPの実現方法

ここからは、イー・フォースのμNet3-ModBusを利用して、Modbus TCPを実現する方法をご紹介します。

μNet3-ModBusとは

μNet3-ModBus は、イー・フォースのRTOS「μC3」とTCP/IP プロトコルスタック「μNet3」上で動作するModBusマスタ・スレーブで構成されています。 製品パッケージにはサンプルプログラムや導入に必要なマニュアルなどが同梱されています。

▶︎μNet3-ModBus紹介ページ

μNet3-ModBusをTCP動作する場合

μNet3-ModBusをTCP動作する場合の環境は以下となります。

項目内容
RTOS イー・フォース社製 μC3
TCP/IPプロトコルスタック イー・フォース社製 μNet3
Modbus イー・フォース社製 μNet3-Modbus
Ethernetドライバ イー・フォース社製 uNet3デバイスドライバ

μNet3-ModBusをRTU動作する場合

μNet3-ModBusをRTU動作する場合の環境は以下となります。

項目内容
RTOS イー・フォース社製 μC3
TCP/IPプロトコルスタック イー・フォース社製 μNet3
Modbus イー・フォース社製 μNet3-Modbus
デバイスドライバ イー・フォース社製 eForce COMドライバ + CPU依存シリアルドライバ (μC3パッケージ同梱) 
イー・フォース社製 CPU依存Timerドライバ (μNet3-ModBusに同梱またはユーザ作成)

μNet3-Modbusサポートベンダ

μNet3-Modbus のサポートベンダは以下となります。

サポートベンダ 提供サービス
イー・フォース株式会社 サンプルプログラムおよびアプリケーションノート
イー・フォース株式会社 RTOSおよびTCP/IPスタックのライセンス
各ボードメーカー SW開発、HW開発

対応済み評価ボード

対応している評価ボードは以下です。
TSSR TS-TCS07298

μNet3-ModbusとμC3を組み合わせてできること

RTOSを使用する事により、Modbus TCPだけでなくUSBやSDなどのマルチタスク処理が可能となり、高効率で最適化されたシステムの構築が可能となります。μC3が持つ豊富なCPUラインナップから、お客様にあったCPUや開発環境を選定し開発を行うことができます。
詳細な内容はユーザーズガイドにも掲載されておりますので、ぜひご確認ください。

資料のダウンロード

ユーザーズガイド

ユーザーズガイドは、以下よりダウンロード可能です。μNet3-Modbus向けにご用意しております。

価格とライセンス

製品の価格、ライセンス情報は「プロダクトガイド」の21-22ページを参照ください。以下よりダウンロード可能です。

お問い合わせ

お問い合わせは以下より、お気軽にお問い合わせください。