Modbus TCP
Mech-MSRは外部機器とModbus TCP通信を行うことができます。以下の内容を読む前に、Mech-MSRで 通信設定 を完了してください。
概要
Mech-MSRはModbus TCPプロトコルを使用してPLCと通信することをサポートしています。この通信方式では、Mech-MSRはサーバーとして動作し、PLCはクライアントとして動作します。すべてのリクエストはPLCから送信され、Mech-MSRが応答します。
Mech-MSRでModbus TCP通信サービスを有効にすると、ソフトウェアはポート502(デフォルト)で1つ以上のModbusクライアントからの接続を待機し始めます。
入力・出力信号一覧
入力(PLCからMech-MSRへ) | 出力(Mech-MSRからPLCへ) | ||||||
---|---|---|---|---|---|---|---|
モジュール |
名前 |
バイト数 |
保持レジスタのアドレス(4x) |
モジュール |
名前 |
バイト数 |
保持レジスタのアドレス(4x) |
有効化 |
1 バイト |
40001 |
ハートビート |
1 バイト |
40033 |
||
コマンドトリガー |
コマンドトリガー ACK |
||||||
データ読み取り完了 |
データ準備完了 |
||||||
出力データリセット |
コマンド実行完了 |
||||||
予約語 |
予約語 |
||||||
予約語 |
予約語 |
||||||
予約語 |
予約語 |
||||||
予約語 |
エラー |
||||||
予約語 |
3 バイト |
40002 |
全体判定結果 |
1 バイト |
40034 |
||
予約語 |
|||||||
予約語 |
|||||||
予約語 |
|||||||
予約語 |
|||||||
予約語 |
|||||||
予約語 |
|||||||
予約語 |
|||||||
予約語 |
2 バイト |
40035 |
|||||
コマンドコード |
2 バイト |
40005 |
ステータスコード |
2 バイト |
40037 |
||
コマンドパラメータ1 |
2 バイト |
40007 |
RESERVED |
予約語 |
2 バイト |
40039 |
|
コマンドパラメータ2 |
2 バイト |
40009 |
ID 1の判定結果 ID 2の判定結果 ID 3の判定結果 ... |
8 バイト |
40041 |
||
コマンドパラメータ3 |
2 バイト |
40011 |
|||||
コマンドパラメータ4 |
2 バイト |
40013 |
|||||
ID 1の測定結果 ID 2の測定結果 ID 3の測定結果 ... |
256 バイト (4 バイト × 64) |
40049 |
入力(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.1 |
全体判定結果(ブール値) |
プロジェクトの総合判定結果で、0は合格(OK)、1は不合格(NG)となります。 |
1.2~1.7 |
予約語(ブール値) |
予約されたフィールドとなります。 |
STATUS_CODE(ステータスコード)
Mech-MSRが返すステータスコードは以下の5つです。
-
正常ステータスコード:0、コマンドが正常に実行されたことを示します。
-
エラーコード:-1、-2、-3、-4。詳細については、エラーコードの説明 をご参照ください。
JUDGE(判定結果)
出力管理 画面の「通信出力」タブに追加された測定項目の品質判定結果で、0は合格(OK)、1は不合格(NG)を示します。
単一のプロジェクトに対して、最大64個の判定結果を一度に出力することがサポートされています。 |