Mitsubishi MELSEC
Mech-MSR は、外部機器と Mitsubishi MELSEC 通信を行うことができます。以下の内容を読む前に、Mech-MSR で 通信設定 が完了していることを確認してください。
概要
三菱 MCシリーズPLCは、MC 通信プロトコルを介して Mech-MSR ソフトウェアとデータ通信を行います。この通信方式では、Mech-MSR はクライアントとして動作し、PLC はサーバーとして動作します。
通信フロー
通信に使用される構造タイプは、合計 200 本のDレジスタを占有します。この構造体変数のベースアドレスは、Mech-MSR で設定されている レジスタ(D)のベースアドレス と同じにする必要があります。
Mitsubishi MELSEC 通信設定フローは下図の通りです。
入力信号一覧(PLC から Mech-MSR へ)
| 名前 | 説明 | データタイプ | D レジスタのオフセット |
|---|---|---|---|
有効化 |
ブール値 |
0.0 |
|
コマンドトリガー |
ブール値 |
0.1 |
|
データ読み取り完了 |
ブール値 |
0.2 |
|
出力データリセット |
ブール値 |
0.3 |
|
BIT_SPARE_1 |
予約語 |
ブール値 |
0.4 |
BIT_SPARE_2 |
予約語 |
ブール値 |
0.5 |
BIT_SPARE_3 |
予約語 |
ブール値 |
0.6 |
BIT_SPARE_4 |
予約語 |
ブール値 |
0.7 |
BIT_SPARE_5 |
予約語 |
ブール値 |
0.8~0.15 |
WORD_SPARE_1 |
予約語 |
Word[符号付き] |
1 |
コマンドコード |
Word[符号付き] |
2 |
|
CMD_PARAM_1 |
コマンドパラメータ1 |
Word[符号付き] |
3 |
CMD_PARAM_2 |
コマンドパラメータ2 |
Word[符号付き] |
4 |
CMD_PARAM_3 |
コマンドパラメータ3 |
Word[符号付き] |
5 |
CMD_PARAM_4 |
コマンドパラメータ4 |
Word[符号付き] |
6 |
CMD_PARAM_5 |
コマンドパラメータ5 |
Word[符号付き] |
7 |
CMD_PARAM_6 |
コマンドパラメータ6 |
Word[符号付き] |
8 |
CMD_PARAM_7 |
コマンドパラメータ7 |
Word[符号付き] |
9 |
CMD_PARAM_8 |
コマンドパラメータ8 |
Word[符号付き] |
10 |
CMD_PARAM_9 |
コマンドパラメータ9 |
Word[符号付き] |
11 |
CMD_PARAM_10 |
コマンドパラメータ10 |
Word[符号付き] |
12 |
VAR_1 |
変数1 |
Float[浮動小数点数] |
13~14 |
VAR_2 |
変数2 |
Float[浮動小数点数] |
15~16 |
VAR_3 |
変数3 |
Float[浮動小数点数] |
17~18 |
VAR_4 |
変数4 |
Float[浮動小数点数] |
19~20 |
VAR_5 |
変数5 |
Float[浮動小数点数] |
21~22 |
VAR_6 |
変数6 |
Float[浮動小数点数] |
23~24 |
VAR_7 |
変数7 |
Float[浮動小数点数] |
25~26 |
VAR_8 |
変数8 |
Float[浮動小数点数] |
27~28 |
VAR_9 |
変数9 |
Float[浮動小数点数] |
29~30 |
VAR_10 |
変数10 |
Float[浮動小数点数] |
31~32 |
WORD_SPARE_2 |
予約語 |
Word[符号付き] |
33~63 |
CMD_TRIGGER(コマンドトリガー)
コマンドトリガー信号が 0 から 1(立ち上がり)に変わるとき、Mech-MSR はコマンドコードとコマンドパラメータを読み取ります。Mech-MSR が コマンドトリガー ACK 信号を返すと、コマンドトリガー信号を 0 に設定できます。
DATA_READ_FINISHED(データ読み取り完了)
PLCがデータの読み取りを完了したら、この信号を 1 に設定します。データ準備完了 信号が 0 に変わった後、この信号を 0 に設定できます。
RESET(出力データリセット)
この信号が 1 に設定されると、PLCが受信した判定結果と測定結果(出力)がクリアされます。この時、PLCは新しいコマンドを送信できます。関連するステータスコードもリセットされます。
COMMAND(コマンドコード)
現在のプロトコルでサポートされているコマンドおよび対応するコマンドコード、コマンドパラメータは下表の通りです。
| コマンド | コマンドコード | コマンドパラメータ | 説明 |
|---|---|---|---|
execute |
1 |
プロジェクト番号、1 回に1つのみ設定可能 |
プロジェクトの実行をトリガーし、そのプロジェクトの判定結果と測定結果を取得するために使用されます。 |
trigger |
2 |
プロジェクト番号、1 回に 1〜4 個設定可能 |
プロジェクトの実行をトリガーするために使用されます。 |
return |
3 |
プロジェクト番号、1 回に1つのみ設定可能 |
指定したプロジェクトの判定結果と測定結果を取得するために使用されます。 |
judge |
4 |
指定したプロジェクトの全体判定結果または個別の測定項目の品質判定結果を取得するために使用されます。 |
|
value |
5 |
主に指定されたプロジェクトの測定値を取得するために使用されます。 |
|
recipe |
6 |
プロジェクト番号、パラメータレシピ番号 |
プロジェクトに使用するパラメータレシピを切り替えるために使用されます。 |
solution |
7 |
ソリューションID |
ソリューションを切り替えるために使用されます。 |
SetNumVar |
8 |
グローバル変数番号、1 回に1つのみ設定可能 |
数値型のグローバル変数に値を設定するために使用され、変数値は VAR_INPUT を通じて入力されます。 |
GetNumVar |
9 |
グローバル変数番号、1 回に1つのみ設定可能 |
数値型のグローバル変数の値を読み取るために使用され、読み取り結果は VALUE を通じて返されます。 |
|
VAR_INPUT(変数入力)
SetNumVar コマンドを実行する際、設定する値は VAR_INPUT に書き込まれます。
| 名前 | 説明 | データタイプ | D レジスタのオフセット |
|---|---|---|---|
VAR_1 |
変数1 |
Float[浮動小数点数] |
13~14 |
VAR_2 |
変数2 |
Float[浮動小数点数] |
15~16 |
VAR_3 |
変数3 |
Float[浮動小数点数] |
17~18 |
VAR_4 |
変数4 |
Float[浮動小数点数] |
19~20 |
VAR_5 |
変数5 |
Float[浮動小数点数] |
21~22 |
VAR_6 |
変数6 |
Float[浮動小数点数] |
23~24 |
VAR_7 |
変数7 |
Float[浮動小数点数] |
25~26 |
VAR_8 |
変数8 |
Float[浮動小数点数] |
27~28 |
VAR_9 |
変数9 |
Float[浮動小数点数] |
29~30 |
VAR_10 |
変数10 |
Float[浮動小数点数] |
31~32 |
出力信号一覧(Mech-MSR から PLC へ)
| 名前 | 説明 | データタイプ | D レジスタのオフセット |
|---|---|---|---|
ハートビート信号 |
ブール値 |
64.0 |
|
コマンドトリガー ACK |
ブール値 |
64.1 |
|
データ準備完了 |
ブール値 |
64.2 |
|
コマンド実行完了 |
ブール値 |
64.3 |
|
BIT_SPARE_1 |
予約語 |
ブール値 |
64.4 |
BIT_SPARE_2 |
予約語 |
ブール値 |
64.5 |
BIT_SPARE_3 |
予約語 |
ブール値 |
64.6 |
エラー |
ブール値 |
64.7 |
|
全体判定結果 |
ブール値 |
64.8 |
|
BIT_SPARE_4 |
予約語 |
ブール値 |
64.9~64.15 |
WORD_SPARE_1 |
予約語 |
Word[符号付き] |
65 |
ステータスコード |
Word[符号付き] |
66 |
|
WORD_SPARE_2 |
予約語 |
Word[符号付き] |
67 |
判定結果 |
ブール値(0~63) |
68 |
|
測定結果と変数値 |
浮動小数点数(0~63) |
72 |
TRIGGER_ACKNOWLEDGE(コマンドトリガー ACK)
Mech-MSR が コマンドトリガー 信号の立ち上がりを受信すると、この信号が 1 に設定されます。コマンドトリガー信号の立ち下がり時に、この信号が 0 に設定されます。
DATA_READY(データ準備完了)
Mech-MSR が出力ポートにデータを書き込み、PLC が読み取るのを待ちます。データ読み取り完了 信号が 1 のとき、この信号は 0 に設定されます。
OVERALL_JUDGE(全体判定結果)
プロジェクトの総合判定結果で、1 は合格(OK)、0 は不合格(NG)となります。
| Mech-MSRの 出力管理 画面でプロジェクトに品質判定ルールを設定し、品質判定に必要な測定項目を決定する必要があります。設定が完了した後、プロジェクトを実行することで有効な品質判定結果が得られます。 |
STATUS_CODE(ステータスコード)
Mech-MSR が返す可能性のあるステータスコードは以下の通りです。
-
正常ステータスコード:1、コマンドが正常に実行されたことを示します。
-
エラーステータスコード:-1、-2、-3、-4、-5。詳細については、エラーコードの説明 をご参照ください。
JUDGE(判定結果)
出力管理 画面の「通信出力」タブに追加された測定項目の品質判定結果で、1 は合格(OK)、0 は不合格(NG)を示します。
| 単一のプロジェクトに対して、最大 64 個の判定結果を一度に出力することがサポートされています。 |
VALUE(測定結果)
VALUE モジュールは、以下のデータを返すことができます。
-
出力管理 画面の「通信出力」タブに追加された測定項目の測定結果。
-
GetNumVarコマンドを実行する際、読み取られた数値型グローバル変数の値。
| 単一のプロジェクトに対して、最大 64 個の測定値を一度に出力することがサポートされています。 |