Ethenet フィールドバスコントローラを使って
三菱社 PLC と MC プロトコル通信をするサンプルプログラム
NO. 0400 10/08/031 MC プロトコルの概要
MC プロトコル(MELSEC コミュニケーションプロトコル)とは三菱社 Q シリーズ PLC と Ethernet またはシリアル デバイスによって通信をすることにより、シーケンサ内部のデバイスに書込/読込をすることができるプロトコル です。 通信手順が公開されており、当社 Ethernet フィールドバスコントローラでもプログラムを作成・書込することに よって通信することが可能です。2 本サンプルプログラムの概要
本サンプルプログラムでは幾つかの項目を入力するだけで MC プロトコル(UDP)で通信することができるように なっています。 三菱社製 PLC へは最大 500 点(送信/受信)のデータを送信できます。また、本サンプルプログラムでは実入出力 領域をそのままMCプロトコル領域へ変換しています。 例) 送信 D100~D105設定の場合、%IW0~%IW5 を三菱 PLC にて読み出し可能 プログラムは 750-841 用サンプルプログラムと 750-842/843 用サンプルプログラムの 2 種類が用意されていま す。 750-841 用サンプルプログラムは WebVisu を使用してインターネットエクスプローラーから設定をすることがで きるようになっています。(750-842,843 用サンプルプログラムは Codesys 上プログラムによって設定)3 三菱シーケンサの設定
GX-Developer の パラメータ – ネットワークパラメータ – Ethernet/CC IE/MELSECNET を開き、QJ71E71-100 の設定を行ないます。
続いてオープン設定を選択し、下記のように設定を行ないます 交信相手 IP アドレスの項目は IP アドレスに255.255.255.255を入力し、一斉同報に設定します。 以上で GX-Developer での設定は終了です。 シーケンサに設定を書き込んで WAGO-I/O-SYSTEM の設定に移ります。
4 サンプルプログラムのダウンロード
4-1 750-841 の場合
750_841MC_Sample_UDP_RW&Webvisu_rev*.pro (* はリビジョン番号)を CodesysV2.3 で開き、通常の手順にてサ ンプルプログラムをダウンロードします。 ファイルパスに日本語が含まれている場合は下図のようなエラーが発生しますが、そのまま OK を押します。プログラムのダウンロードが完了したら続いてマニュアル用の画像及び WebVisu 日本語表示用差分ファイルを ダウンロードします。
Online – Write file to PLCを実行し、 ・Manual1.jpg
・Manual2.jpg ・Manual3.jpg ・Webvisu.htm
4-2 750-842,750-843 の場合
750_842_843_MC_Sample_UDP_RW.pro を CodesysV2.3 で開き、通常の手順でのダウンロードを実行してください。 なお、本サンプルプログラムではターゲット設定が 750-843 になっております。750-842 にダウンロードをする場 合は Resources – Target Settings を開き、Configurationを 750-842 に設定してください。
750-842,750-843 の場合、次項の MC プロトコルの通信設定を Codesys プログラム上で行うことになります。
5-2 750-842,750-843 の場合の通信設定 を設定頂いた後にプログラムのダウンロードを実行することをおすす
5 MC プロトコル通信設定
5-1 750-841 の場合の通信設定
750-841 は WebVisu で MC プロトコルの通信設定を行うことができます。
インターネットエクスプローラーでアドレスバーに IP アドレスを入力し、Web-based Management を開き、WebVisu リンクを実行します。
<設定画面の解説> ●PLC IP アドレス 三菱 Ethernet ユニットの IP アドレスを入力してください。 ●PLC 通信 PORT GX-Developer で設定した自局ポート番号(2000)を入力してください。 ●通信サイクルタイム 1 回の通信にかける時間です。この項目は ms 単位で入力します。(例:1 秒設定の場合は 1000 を入力) 通信時間を短くしすぎるとデータの読み飛ばしを発生することがあります。その場合は通信サイクルタイム を長めに取るようにしてください。 ●通信タイムアウト時間 ここで設定した時間の間受信データに変化がない場合、通信異常とみなします。 この項目は ms 単位で入力します。(例:1 秒設定の場合は 1000 を入力) 通信異常の場合、com_error(BOOL)の値が TRUE になります。 ●データレジスタ方式 DもしくはWの左にあるチェックボックスでデータレジスタを選択します。 また、各レジスタを選択した場合の先頭アドレスと最終アドレスが表示されます。 ●受信(送信)先頭アドレス 三菱 PLC の MC プロトロルで読み出し(書き出し)をしたい先頭アドレスを指定します。 ●受信(送信)点数 前項の先頭アドレスを起点に何点分データを読み出すかを10進数で指定します。 ●受信(送信)ON/OFF このチェックボックスを ON にすると実際に三菱 PLC と通信を開始します。
5-2 750-842,750-843 の場合の通信設定
750-842、750-843 の通信設定は Codesys プログラム上で行ないます。 Settings[PRG]を開き、プログラムを直接変更してダウンロードをしてください。 <設定の解説> ●(* 宛先 IP アドレスの設定 *) 三菱 Ethernet ユニットの IP アドレスを入力してください。 STRING データとなっていますので ‘192.168.1.1’ のような方式で入力します。 (データ部の最初と最後にはアポストロフィーを入力する) ●(* PLC 通信 PORT の設定 *) GX-Developer で設定した自局ポート番号(2000)を入力してください。●(* 通信タイムアウト時間の設定 *) ここで設定した時間の間受信データに変化がない場合、通信異常とみなします。 通信異常の場合、com_error(BOOL)の値が TRUE になります。 TIME データとなっていますので T#2000ms のような方式で入力します。 ●(* リンクデバイスの選択 *) 使用したいデバイスに TRUE を、使用しないデバイスに FALSE を指定します。 必ずどちらかが選択されるように指定してください。 ●(* 先頭アドレスの設定 *) 三菱 PLC の MC プロトロルで読み出し(書き出し)をしたい先頭アドレスを指定します。 Dレジスタを選択した場合は 10 進数でそのまま数値を入力します。 Wレジスタを選択した場合は 16 進数データのため 16#100 のような方式で入力します。 ●(* デバイス点数の設定 *) 前項の先頭アドレスを起点に何点分データを読み出し(書き出し)するかを10進数で指定します。
6 プログラムの概略
この章では三菱 PLC へ送信/受信するデータの指定方法及び注意事項について説明します。6-1 WAGO-I/O → 三菱 PLC 送信データの指定方法
本サンプルプログラムでは WAGO_to_Mitsubishi[PRG] にて 実入出力領域(%IW**,%QW**)のデータを D200 ~ D204 (750-841) , W200 ~ W204 (750-842,750-843) にアサインしています。 三菱 PLC へは最大 500 ワードまでデータの送信が可能になっています。 任意のデータを送信したい場合はプログラムを変更する必要があります。 変更箇所は次のとおりです。(※750-841 用のプログラムの場合)① SendDataAssign_W[PRG]内 47 ステップ目の FOR ~ END_FOR 間を削除するか、(* *)でくくり、実行されな いようにする。 ② 50 ステップ目の (* を削除。 ③ 351 ステップ目の *) を削除。 ④ 送信したいデータを%MW1000 以降にアサインする 三菱 PLC へデータを送信するためのバッファエリアは %MW1000 以降 で用意されています。 %MW1000 以降にデータをアサインすると MC プロトコルによってデータを送信することができます。