• 検索結果がありません。

概要 4

ドキュメント内 untitled (ページ 122-125)

4 フィールドバス通信

4.2 MODBUS の機能

4.2.1 概要 4

MODBUSはメーカに依存しないオープンなフィールドバス規格であり、製造お

よびプロセスオートメーションにおけるさまざまなアプリケーションに使用さ れます。

MODBUSプロトコルは、プロセスイメージ、フィールドバス変数、カプラに関

する各種設定や情報の転送を目的とし、最新のインターネットドラフトに従っ て実装されます。

フィールド側のデータ転送はTCPやUDPを用いて行われます。

MODBUS/TCPプロトコルはMODBUSプロトコルの一種であり、TCP/IPを用い

た通信に対して最適化されています。

このプロトコルは、フィールドレベルでのデータ交換(プロセスイメージ内の I/Oデータのやりとり)を目的に設計されたものです。

TCPによるパケット転送はすべてポート番号502を用いて行われます。

MODBUS/TCPのセグメント

MODBUS/TCPの一般的なヘッダ構成は次のようになっています。

バイト 0 1 2 3 4 5 6 7 8 - n

識別子

(受信側が 設定)

プロトコルID

(「0」で 固定)

データ長

(上位バイト、

下位バイト)

ユニットID

(スレーブの アドレス)

MODBUS の機能 コード

データ

図 4-12:MODBUS/TCPのヘッダ

詳細情報

データグラムの構造は各機能によって異なります。詳しくはMODBUS機能コー ドの説明をご覧ください。

MODBUSプロトコルでは、TCP上で15本のコネクションが使用できます。

そのためフィールドバスノードに保存されているデジタルとアナログの出力 データの直接読み出しや、MODBUSの簡単な機能コードを使った特殊機能の実 行が、15箇所の端末から同時に行えます。これを実現するため、「Open MODBUS/TCP Specification」に規定されるMODBUS機能が実装されています。

詳細情報

「Open MODBUS/TCP Specification」についてはインターネットのウェブサイト

(www.modbus.org)で見ることができます。

MODBUSプロトコルは次のような基本的なデータタイプに基いています。

• 117

MODBUSの機能

データタイプ 長さ 意味

個別入力 1 Bit デジタル入力

コイル 1 Bit デジタル出力

入力レジスタ 16 Bit アナログ入力データ 出力レジスタ 16 Bit アナログ出力データ

これらの機能を使うことにより、デジタルまたはアナログの入出力データや内 部変数を設定したり、フィールドバスノードから直接読み出すことができます。

機能コード

16進 機能 アクセス

方法解説 リソースへのアクセス

FC1: 0x01 コイルの読み出し 単一入力ビット

の複数読み出し

R:プロセスイメージ、PFC 変数

FC2: 0x02 デジタル入力値の

読み出し

入力ビットの複 数読み出し

R:プロセスイメージ、PFC 変数

FC3: 0x03 複数レジスタの

読み出し

入力レジスタの 複数読み出し

R:プロセスイメージ、PFC 変数、内部変数、NOVRAM

FC4: 0x04 入力レジスタの

読み出し

入力レジスタの 複数読み出し

R:プロセスイメージ、PFC 変数、内部変数、NOVRAM

FC5: 0x05 コイルの書き込み 各出力ビットの

書き込み

W:プロセスイメージ、PFC 変数

FC6: 0x06 1つのレジスタの

書き込み

各出力レジスタ の書き込み

W:プロセスイメージ、PFC 変数、内部変数、NOVRAM FC 11: 0x0B 通信イベント

カウンタの取得

通信イベントカ ウンタ

R:なし

FC 15: 0x0F 複数コイルの設定 出力ビットの複

数書き込み

W:プロセスイメージ、PFC 変数

FC 16: 0x0010 複数レジスタの 書き込み

出力レジスタの 複数書き込み

W:プロセスイメージ、PFC 変数、内部変数、NOVRAM FC 22: 0x0016 書き込みレジスタ

のマスク

W:プロセスイメージ、PFC 変数、NOVRAM

FC 23: 0x0017 レジスタの 読み書き

出力レジスタの 複数読み書き

R/W:プロセスイメージ、

PFC変数、NOVRAM

表 4-3:フィールドバスカプラのMODBUS機能一覧

機能を実行するには、対応する機能コードと選択した入力または出力データの アドレスを指定します。

注  意

記載例の数値は16進(0x0000)で表示しています。アドレスは「0」で始まり ます。

表示形式とアドレスの開始番地はソフトウェアおよび制御系によって異なる場 合があります。アドレスは必要に応じて変換することが必要です。

118 •

MODBUSの機能

4.2.2 MODBUS 機能の使用例

下図の例ではフィールドバスノードを図示し、MODBUS機能を使ってプロセス イメージのデータにアクセスする様子を示しています。

入力モジュール

ワード1 ワード2

MODBUSアドレス FC3(複数レジスタの読み出し)

FC4(入力レジスタの読み出し)

上位バイト

出力モジュール

ワード1 ワード2 ワード1

ワード2 ワード1 ワード2 ワード1 ワード2 ワード1 ワード2

下位バイト ワード1

ワード2 ワード1 ワード2

FC3(複数レジスタの読み出し)

FC4(入力レジスタの読み出し)

FC6(1つのレジスタの書き込み)

FC16(複数レジスタの書き込み)

FC1(コイルの読み出し)

FC2(デジタル入力値の読み出し)

MODBUSアドレス

MODBUSアドレス

MODBUSアドレス

MODBUSアドレス MODBUS

アドレス

FC5(コイルの書き込み)

FC15(複数コイルの設定)

FC1(コイルの読み出し)

FC2(デジタル入力値の読み出し)

上位バイト 下位バイト

上位バイト 下位バイト

4-13MODBUS機能の使用例 G012918e

注  意

アナログデータはレジスタ機能①を、またデジタルデータはコイル機能②を用い てアクセスすることを推奨します。

• 119

MODBUSの機能

ドキュメント内 untitled (ページ 122-125)