Modbus TCP

現在ご覧いただいているのは最新版の内容です(V2.1.1)。異なるバージョンを参照する場合は、画面右上のボタンから切り替えが可能です。

■ ご利用中のバージョンが分からない場合や、サポートが必要な場合はお気軽にサポート窓口までご連絡ください。

Mech-MSR は外部機器とModbus TCP通信を行うことができます。以下の内容を読む前に、Mech-MSR で 通信設定 を完了してください。

概要

Mech-MSR はModbus TCPプロトコルを使用してPLCと通信することをサポートしています。この通信方式では、Mech-MSR がサーバー(スレーブ)、PLC がクライアント(マスター)となります。すべてのリクエストはPLCによって送信され、Mech-MSR が応答します。

Mech-MSR で Modbus TCP 通信サービスを有効にすると、ソフトウェアはポート 502(デフォルト)で1つ以上のModbusクライアントからの接続を待機し始めます。

通信フロー

Modbus TCP通信は、下図のようなフローで行います。

各信号の意味については、入力・出力信号一覧 をご参照ください。
handshake flow modbus

入力・出力信号一覧

Mech-MSR は、以下の標準的な Modbus ファンクションコードをサポートしており、保持レジスタ(Holding Registers) へのアクセスに使用されます。

ファンクションコード 説明

0x03

保持レジスタの読み取り

0x06

単一の保持レジスタへの書き込み

0x10

複数の保持レジスタへの書き込み

保持レジスタのアドレスは論理アドレス(表示アドレス)であり、例えば 4000140005 などです。先頭の4 は、レジスタが 4x アドレス空間(保持レジスタ) に属することを示しており、その後の番号がレジスタ番号です。

実際の通信ではベースアドレスとして1が使用されるため(つまり、保持レジスタのアドレスは 40001 から始まる)、次のように換算されます:実アドレス = 表示アドレス - 40001。例えば、表示アドレス 40001 に対応する実アドレスは 0、表示アドレス 40005 に対応する実アドレスは 4 です。

入力(PLC から Mech-MSR へ) 出力(Mech-MSR から PLC へ)

モジュール

名前

バイト数

保持レジスタのアドレス(4x)

モジュール

名前

バイト数

保持レジスタのアドレス(4x)

CONTROL_INPUT

有効化

1 バイト

40001

CONTROL_OUTPUT

ハートビート

1 バイト

40017

コマンドトリガー

コマンドトリガー ACK

データ読み取り完了

データ準備完了

出力データリセット

コマンド実行完了

予約語

予約語

予約語

予約語

予約語

予約語

予約語

エラー

予約語

3 バイト

先頭1バイト:40001、後続2バイト:40002

全体判定結果

1 バイト

40017

予約語

予約語

予約語

予約語

予約語

予約語

予約語

予約語

2 バイト

40018

COMMAND

コマンドコード

2 バイト

40003

STATUS_CODE

ステータスコード

2 バイト

40019

COMMAND_PARAM

コマンドパラメータ1

2 バイト

40004

RESERVED

予約語

2 バイト

40020

コマンドパラメータ2

2 バイト

40005

JUDGE

ID 1の判定結果

ID 2の判定結果

ID 3の判定結果

...

8 バイト

40021~40024

コマンドパラメータ3

2 バイト

40006

コマンドパラメータ4

2 バイト

40007

予約語

-

18 バイト

40008~40016

VALUE

ID 1の測定結果

ID 2の測定結果

ID 3の測定結果

...

256 バイト

(4 バイト × 64)

40025~40152

入力(PLC から Mech-MSR へ)

CONTROL_INPUT(入力制御)

アドレス データ 説明

0.0

有効化(ブール値)

「有効化」信号が1に設定されているときのみ、他の入力信号が有効とみなされます。

0.1

コマンドトリガー(ブール値)

コマンドトリガー信号が 0 から 1(立ち上がり)に変わるとき、Mech-MSR はコマンドコードとコマンドパラメータを読み取ります。Mech-MSR が コマンドトリガー ACK 信号を返すと、コマンドトリガー信号を 0 に設定できます。

0.2

データ読み取り完了(ブール値)

PLC がデータの読み取りを完了したら、この信号を 1 に設定します。PLC が データ準備完了 信号が0に変わった後、この信号を 0 に設定できます。

0.3

出力データリセット(ブール値)

この信号が1に設定されると、PLC が受信した判定結果と測定結果(出力)がクリアされます。この時、PLC は新しいコマンドを送信できます。関連するステータスコード信号もリセットされます。

0.4

予約語(ブール値)

予約されたフィールドとなります。

0.5

予約語(ブール値)

予約されたフィールドとなります。

0.6

予約語(ブール値)

予約されたフィールドとなります。

0.7

予約語(ブール値)

予約されたフィールドとなります。

1.0~3.7

予約語(バイト)

予約されたフィールドとなります。

COMMAND & COMMAND_PARAM(コマンドコードとコマンドパラメータ)

現在のプロトコルでサポートされているコマンドと対応するコマンドコード(COMMAND)、コマンドパラメータ(COMMAND_PARAM)、および説明は以下の表の通りです。

コマンド COMMAND COMMAND_PARAM 説明

execute

1

プロジェクト番号、1 回に1つのみ設定可能

プロジェクトの実行をトリガーし、そのプロジェクトの判定結果と測定結果を取得するために使用されます。

trigger

2

プロジェクト番号、1 回に 1〜4 個設定可能

プロジェクトの実行をトリガーするために使用されます。

return

3

プロジェクト番号、1 回に1つのみ設定可能

指定したプロジェクトの判定結果と測定結果を取得するために使用されます。

judge

4

指定したプロジェクトの全体判定結果または個別の測定項目の品質判定結果を取得するために使用されます。

value

5

主に指定されたプロジェクトの測定値を取得するために使用されます。

プロジェクト番号の確認方法については、プロジェクトリスト をご参照ください。

出力(Mech-MSR から PLC へ)

CONTROL_OUTPUT(出力制御)

アドレス データ 説明

0.0

ハートビート信号(ブール値)

システムのハートビート、1秒ごとに反転します。これにより、PLC と Mech-MSR 間の通信接続が正常か中断されているかを判定できます。

0.1

コマンドトリガー ACK(ブール値)

Mech-MSR が コマンドトリガー 信号の立ち上がりを受信すると、この信号が 1 に設定されます。コマンドトリガー信号の立ち下がり時に、この信号が 0 に設定されます。

0.2

データ準備完了(ブール値)

Mech-MSR が出力ポートにデータを書き込み、PLC が読み取るのを待ちます。データ読み取り完了 信号が 1 のとき、この信号は 0 に設定されます。

0.3

コマンド実行完了(ブール値)

コマンドの実行が完了すると、この信号が 1 に設定され、コマンドが処理されたことを示します。

0.4

予約語(ブール値)

予約されたフィールドとなります。

0.5

予約語(ブール値)

予約されたフィールドとなります。

0.6

予約語(ブール値)

予約されたフィールドとなります。

0.7

エラー(ブール値)

Mech-MSR が返すステータスコードが 0 以外の場合、エラーが発生したことを示し、この信号は 1 に設定されます。

1.0

全体判定結果(ブール値)

プロジェクトの総合判定結果で、0 は合格(OK)、1 は不合格(NG)となります。

1.1~1.7

予約語(ブール値)

予約されたフィールドとなります。

2.0~3.7

予約語(バイト)

予約されたフィールドとなります。

STATUS_CODE(ステータスコード)

Mech-MSR が返すステータスコードは以下の5つです。

  • 正常ステータスコード:0、コマンドが正常に実行されたことを示します。

  • エラーコード:-1、-2、-3、-4。詳細については、エラーコードの説明 をご参照ください。

JUDGE(判定結果)

出力管理 画面の「通信出力」タブに追加された測定項目の品質判定結果で、0 は合格(OK)、1 は不合格(NG)を示します。

単一のプロジェクトに対して、最大 64 個の判定結果を一度に出力することがサポートされています。

VALUE(測定結果)

出力管理 画面の「通信出力」タブに追加された測定項目の測定結果です。

単一のプロジェクトに対して、最大 64 個の測定値を一度に出力することがサポートされています。

この情報は役に立ちましたか?

ご意見・ご要望がございましたら、以下よりお寄せください:

Mech-Mindは、お客様のプライバシーを重視しています

このサイトでは最高の体験を提供するために Cookie を使用しています。サイトの閲覧を続ける場合、Cookie の使用に同意したことになります。「拒否する」を選択すると、このサイトを訪れた際に追跡や記憶が行われないように単独の Cookie が使用されます。