FL-netとはPLCやCNCなどのFAコントローラを接続し、制御データを高速に相互交換するために生まれたオープンネットワークです。
FANUCはEthernet技術を用いたFL-net(OPCN-2)に対応しており、異なるメーカーのPLCと接続してビットデータとワードデータを取り合えます。
このビット、ワードデータをサイクリックデータを呼びます。
ただしFANUCでFL-netを実装する際に注意する点があります。
- FL-netボード(ハードウェア)が必要
- FL-netオプションパラメータ(ソフトウェア)が必要
- ワードデータがPMCアドレスの割付点数を超える際、PMCメモリの変更が必要
ここでは通信プロトコルやFL-netの通信仕様などの難しい話はなしにして、どうやってFL-netを使ってサイクリックデータをやり取りするのかに的を絞り解説します。
対象機種
本解説における対象機種は次のとおりです。
- Series 30i/31i/32i-A
- Series 30i/31i/32i/35i-B
- Power Motion i-A
- Series 0i-F
旧タイプだとオプションボードとオプション型式が違うだけで、パラメータの内容はほとんど一緒です。
なのでパラメータ設定がわからない方にとっての参考資料にもなると思います。
実装に必要なオプション
先述したとおりFANUCでFL-netを実装するには、ハードウェアとソフトウェアのオプションが必要です。
ハードウェアオプション
使用するモデルにより手配品仕様が違います。
適用機種に対応したオプションボード手配仕様(型式)を、FANUCに伝えて購入してください。
適用機種 | Series 30i/31i/32i-A |
オプションボード手配仕様(型式) | A02B-0303-J272 |
プリント板図番 | A20B-8101-0031 |
適用機種 | Series 30i/31i/32i/35i-B、Power Motion i-A |
オプションボード手配仕様(型式) | A02B-0323-J147 |
プリント板図番 | A20B-8101-0770 |
適用機種 | Series 0i-F |
オプションボード手配仕様(型式) | A02B-0338-J147 |
プリント板図番 | A20B-8101-0770 |
ソフトウェアオプション
使用するモデルに関係なく共通です。
FL-netを実装するだけなら、図番A02B-xxxx-J692を注文します。
機能名 | 図番 | 説明 |
---|---|---|
イーサネット機能 | A02B-xxxx-S707 | イーサネット機能(FOCASE2/Ethernet機能など)を利用できます |
データサーバ機能 | A02B-xxxx-S737 | データサーバ機能を利用できます |
FL-net機能 | A02B-xxxx-J692 | FL-net機能を利用できます |
FL-net PORT2機能 | A02B-xxxx-R964 | FL-net機能を同時に2つ利用できます |
ソフトウェアオプションを有効にする際は、FANUCから受け取ったデータをCNC本体へインストールしてください。
FL-netオプションボードの取り付け
CNCコントローラには2種類あり、FL-netボードの取り付け方法が違います。
- 表示器とCNCコントローラが一緒になった一体型ユニット
- CNCコントローラが独立している分離型ユニット
ご自身の設備がどちらに該当するのか、下記の画像と説明から判断してください。
一体型ユニットへの実装
オプションボードは、コントロールユニットのオプションスロットへ実装します。
ただし多機能イーサネット機能付きコントロールユニットを使用している場合は、基盤に実装されているためオプションボードの追加は不要です。
分離ユニットへの実装
別置のCNCコントロールユニットにあるオプションスロットへ実装します。
割付表から設定パラメータを導き出す
同一ライン内の設備間でインターロック信号をやり取りする際は、ほとんどの場合において客先や搬送を主導するメーカーからFL-net割付表が渡されます。
ここでは仮想のFL-netネットワークを構築するために作成した割付表を参考に設定していきます。
FL-net割付表の一例
今回のFL-net回線を構成する仮想ラインでは、合計7台の設備がネットワークに参加します。
あなたの担当する設備は『加工機3』です。
設備名称 | ノードNo | IPアドレス | コモンメモリ領域1 (ビット) | ビット信号数 | コモンメモリ領域2 (ワード) | ワード信号数 |
---|---|---|---|---|---|---|
集中制御盤 | 1 | 192.168.1.1 | 0000h ~ 0003h | 64ビット | 0000h ~ 03FFh | 1024ワード |
加工機1 | 2 | 192.168.1.2 | 0004h ~ 0007h | 64ビット | 0400h ~ 07FFh | 1024ワード |
加工機2 | 3 | 192.168.1.3 | 0008h ~ 000Bh | 64ビット | 0800h ~ 0BFFh | 1024ワード |
加工機3 | 4 | 192.168.1.4 | 000Ch ~ 000Fh | 64ビット | 0C00h ~ 0FFFh | 1024ワード |
加工機4 | 5 | 192.168.1.5 | 0010h ~ 0013h | 64ビット | 1000h ~ 13FFh | 1024ワード |
加工機5 | 6 | 192.168.1.6 | 0014h ~ 0017h | 64ビット | 1400h ~ 17FFh | 1024ワード |
測定機 | 7 | 192.168.1.7 | 0018h ~ 001Bh | 64ビット | 1800h ~ 1BFFh | 1024ワード |
- その他仕様
- トークン監視タイムアウト時間
└ 10 ms - 最小許容フレーム間隔
└ 100us
- トークン監視タイムアウト時間
同じ割付で三菱電機製MELSEC-Qシリーズを使った、FL-net実装の解説もしています。
FL-netのことをもっと詳しく知りたい方は【三菱PLC】MELSEC-Q FL-net実装マニュアル|サイクリックデータ編をあわせてご覧ください。
割付表からパラメータ設定に必要な情報を決める
FL-netにおいて自ノードが設定するパラメータは次の2つです。
- 自ノードが専有するコモンメモリの領域
- 他ノードが専有するコモンメモリの情報をPMCに紐付ける設定
ビットデータのやり取り(コモンメモリ領域1)
設備間でビットデータをやり取りする際は、FL-net回線のコモンメモリ1を使います。
FANUCでは受信したいコモンメモリ全体の領域と、自ノードが専有するコモンメモリの領域を指定します。
まずは全体感を掴むために、図の内容をパラメータにまとめてみましょう。
領域1アドレス | 12 ワード目 |
領域1サイズ | 4 ワード分 |
PMC先頭アドレス | E0000 |
領域1先頭アドレス | 0 ワード目 |
割付けサイズ(ワード) | 28 ワード分 |
自ノードのコモンメモリ1専有領域を決めるため、『領域1アドレス』と『領域1サイズ』を考えます。
- 領域1アドレス
└ 自ノードが専有するコモンメモリの先頭アドレスをワード単位で指定します。
≫ 先頭アドレスを12ワード(192ビット)目に設定します。 - 領域1サイズ
└ 自ノードが専有するコモンメモリの領域をワード単位で指定します。
≫ 専有領域を4ワード(64ビット)分に設定します。
次に読み込むコモンメモリ1領域と転送先のPMCアドレスを決めるため、『PMC先頭アドレス』、『領域1先頭アドレス』、『割付サイズ(ワード)』を考えます。
- PMC先頭アドレス
└ コモンメモリのデータをPMCに転送する際に格納されるアドレスの頭番号を指定します。
≫ PMCアドレスの先頭番号をE0000に設定します。 - 領域1先頭アドレス
└ コモンメモリ1から読出し始めるアドレス番号をワード単位で指定します。
≫ 読出し開始アドレス番号を0000hに設定します。 - 割付サイズ
└ 先頭アドレスから指定したワード数だけPMCアドレスへデータを転送する量を指定します。
≫ 自ノード専有分を除いた、0000h~001Bhまでの28ワード分をPMCアドレスE0000に転送します。
ワードデータのやり取り(コモンメモリ領域2)
文字データや測定値などをやり取りする際は、コモンメモリ2を介してワードデータ転送を使います。
コモンメモリ2に対するパラメータ割付は次のとおりです。
領域2アドレス | 3072 ワード目 |
領域2サイズ | 1024 ワード分 |
PMC先頭アドレス | D0000 |
領域2先頭アドレス | 0 ワード目 |
割付けサイズ(ワード) | 7168 ワード分 |
自ノードのコモンメモリ2専有領域を決めるため、『領域2アドレス』と『領域2サイズ』を考えます。
- 領域2アドレス
└ 自ノードが専有するコモンメモリ2の先頭アドレスをワード単位で指定します。
≫ 先頭アドレスを3072ワード目に設定します。 - 領域2サイズ
└ 自ノードが専有するコモンメモリ2の領域をワード単位で指定します。
≫ 専有領域を1024ワードに設定します。
次に読み込むコモンメモリ2領域と転送先のPMCアドレスを決めるため、『PMC先頭アドレス』、『領域1先頭アドレス』、『割付サイズ(ワード)』を考えます。
- PMC先頭アドレス
└ コモンメモリ2のデータをPMCに転送する際に格納されるアドレスの頭番号を指定します。
≫ PMCアドレスの先頭番号はD0000に設定します。 - 領域2先頭アドレス
└ コモンメモリ2の領域から読出し始めるアドレス番号をワード単位で指定します。
≫ 読出し開始アドレス番号を0000hに設定します。 - 割付サイズ
└ 先頭アドレスから指定したワード数だけPMCアドレスへデータを転送する量を指定します。
≫ 自ノード専有分を除いた、0000h~1BFFhまでの7168ワード分をPMCアドレスD0000に転送します。
データテーブルのアドレス(D)において、D9999以降にコモンメモリ2のデータを転送したいをときは、PMCメモリをC・D・Eのいずれかに設定してください。
データ種類 | PMCメモリA | PMCメモリB | PMCメモリC | PMCメモリ D・E | 0i-F PMC/L | DCSPMC |
---|---|---|---|---|---|---|
データテーブル | D0 ~ D2999 | D0 ~ D9999 | D0 ~ D19999 | D0 ~ D59999 | D0 ~ D2999 | D0 ~ D2999 |
実際のパラメータ設定画面
前項で導き出したサイクリック伝送パラメータをCNC本体へ反映させます。
FL-netパラメータ割付設定
- IPアドレス
└ 192.168.001.004 - ノード名
└ 4 - 領域1アドレス
└ 12 (ワード) - 領域1サイズ
└ 4 (ワード) - 領域2アドレス
└ 3072 (ワード) - 領域2サイズ
└ 1024 (ワード) - トークン監視時間(ms)
└ 10 (ms) - 最小許容フレーム間隔(100us)
└ 100 (us) ※100us単位
- 自ノードステータス
└ E9000 - 参加ノード一覧
└ E9010 - パラメータ1
- CYC => “0”
※サイクリックデータのバイトスワップ無効 - WRD => “0”
※メッセージデータのバイトスワップ無効 - BYT => “0”
※バイトブロックデータのバイトスワップ無効 - RSV => すべて”0″
- CYC => “0”
- パラメータ2
- BAK => 必ず”0″
- AUT => “0”
※オートネゴシエーション無効 - DTL => “0”
※サイクリック領域2のDI/DO個別割付無効 - RSV => すべて”0″
- PMC先頭アドレス
└ E0000 - 領域1先頭アドレス
└ 12 (ワード目) - 割付サイズ(ワード)
└ 4 (ワード分)
- PMC先頭アドレス
└ D0000 - 領域1先頭アドレス
└ 0 (ワード目) - 割付サイズ(ワード)
└ 7168 (ワード分)
今回はメッセージ伝送を使用しないため、無効になるよう設定します。
- クライアント機能I/F
└ E0000 - I/Fサイズ(バイト)
└ 0 - サーバ機能I/F
└ E0000 - I/Fサイズ(バイト)
└ 0
※I/Fサイズを”0″にすると機能を無効にできます
パラメータとコモンメモリ領域の関係
コモンメモリ領域とパラメータの相関をかんたんな図と表にまとめました。
各パラメータの詳細な説明はこちらから確認してください。
コモンメモリ領域1
パラメータ名 | 説明 | パラメータ 番号 |
---|---|---|
領域1アドレス | 自ノードのDOとして割り付けるコモンメモリ1の先頭アドレス | Pa11 |
領域1サイズ | 自ノードのDOとして割り付けるコモンメモリ1のデータサイズ | Pa12 |
PMC先頭アドレス (DI/DO共用) | コモンメモリ領域1に割り付けられるPMCのE/R領域の先頭アドレス | Pa30 |
領域1先頭アドレス (DI/DO共用) | PMCのE/R領域に割り付けられるコモンメモリ領域1の先頭アドレス | Pa31 |
割付サイズ (DI/DO共用) | コモンメモリ領域1とPMCアドレスがデータ交換をおこなうデータサイズ | Pa32 |
コモンメモリ領域2
パラメータ名 | 説明 | パラメータ 番号 |
---|---|---|
領域2アドレス | 自ノードのDOとして割り付けるコモンメモリ2の先頭アドレス | Pa13 |
領域2サイズ | 自ノードのDOとして割り付けるコモンメモリ2のデータサイズ | Pa14 |
PMC先頭アドレス (DI/DO共用) | コモンメモリ領域2に割り付けられるPMCのE/R領域の先頭アドレス | Pa47 |
領域2先頭アドレス (DI/DO共用) | PMCのE/R領域に割り付けられるコモンメモリ領域2の先頭アドレス | Pa48 |
割付サイズ (DI/DO共用) | コモンメモリ領域2とPMCアドレスがデータ交換をおこなうデータサイズ | Pa49 |
【まとめ】コモンメモリ領域とPMCアドレスのデータ形式に違いに注意してパラメータを設定しよう
FANUCのPMCアドレスが8ビット単位に対して、FL-netのサイクリックデータ領域はワード単位なので、単位変換の際に計算を間違えないよう注意してください。
さらにFL-netパラメータを指定する際は、すべてワード単位で入力を求めてくる点も忘れずに。
FL-netのパラメータ設定はコモンメモリ領域とPMC領域のデータ転送が理解できて、単位計算を間違わなければ難しい話ではありません。
この記事を参考にして、ご自身が構築したいFL-net回線の条件を当てはめていけば、きっと実装できることでしょう。
参考資料
FANUC Series 30i-Model A/B
FANUC Series 31i-Model A/B
FANUC Series 32i-Model A/B
FANUC Series 35i-Model B
FANUC Power Motion i-MODEL A
FANUC Series 0i-MODEL F
FL-netボード結合説明書 B-64163JA/04
コメント