今回の記事では三菱IQ-RのRJ71GN11-T2を使用し、CC-Link IE TSN Masterを立ち上げ、CC-Link IE TSN SlaveはWeidmullerのUR20-FBC-CC-TSN CouplerとOPTEXのUR-MS16-DTと接続します。
また、記事の中でCC-Link IE TSNに関する知識を紹介します。
さ、はじめよう!
TSN?
Ethernet は、機器間でデータを伝送するための、世界で最も普及している通信媒体である。そのスピード、手頃なコスト、多用途性から、多くの業界で普及しています。
そしてEthernetの規格は年々進化し、1970年代、イーサネットの最初のバージョンは10Mbpsの速度しか出なかったが、1995年にEthernetが100Mbpsの速度で利用可能になりました。現在では、gigabit Ethernetが利用可能な時代になりました。
また、イーサネットがほとんどの産業でユビキタスになってきたため、コンポーネントの価格も手頃になり、実装も容易になってきた。そのため、イーサネット・ネットワークは、アプリケーションを実現するために多種多様なプロトコルを採用することができる。
イーサネットの速度が年々向上しているとはいえ、もうひとつ重要な性能要因がある: 決定性です。決定性が高いネットワークは、定義された待ち時間で正確な方法でデータを交換することが求められます。
ですが、イーサネット通信はbest effort 原理に基づいているため、イーサネット・ネットワークのデータ交換には決定性が欠けています。標準的な情報技術ネットワーク機器には “時間 “の概念がなく、同期や正確なタイミングを提供することはできません。データを確実に配信することは、特定の時間内に配信することよりも重要であるため、遅延や同期の精度には何の制約もない。
Time Sensitive Networking (TSN)はそれを変えることを目指しています。
IEEE 802.1で規定されているAVB/TSN標準の各文書は、ポイント・ツー・ポイント接続のための決定論的なサービス品質(QoS)を持つスイッチド・イーサネット・ネットワークをベースとした完全なリアルタイム通信ソリューションに必要な3つの基本的な主要コンポーネント・カテゴリーに分類することができます。
各標準仕様は、それぞれ単独で使用することができ、ほとんどの場合、自己充足的である。しかし、協調して使用されてこそ、通信システムとしてのTSNはその潜在能力を最大限に発揮することができる。基本的な構成要素は以下の3つである:
Time synchronization
時間の同期: リアルタイム通信に参加するすべてのデバイスは、時間を共通に理解する必要があります。
Scheduling and traffic shaping
Scheduling and traffic shaping: リアルタイム通信に参加するすべてのデバイスは、通信パケットの処理と転送において同じルールに従う。
WHAT IS TSN?
TSNとは、イーサネットをデフォルトで決定論的にするIEEE 802規格のセットのことである。TSNは、ISO/OSIモデルのレイヤー2に位置する新しい技術で、イーサネット・ネットワークの決定性とスループットを保証するための定義が追加されます。以下は、TSNを構成するIEEE標準の一部である:
- Enhanced synchronization behavior (IEEE 802.1AS)
- Suspending (preemption) of long frames (IEEE 802.1-2018)
- Enhancements for scheduled traffic (IEEE 802.1Q-2018)
- Path control and bandwidth reservation (IEEE 802.1Q-2018)
- Seamless redundancy (IEEE 802.1CB)
- Stream reservation (IEEE 802.1Q-2018)
TSNは、業界がオーディオ/ビデオ配信を使用し、より多くのデバイスと同期された通信の必要性から発展しました。ネットワーク上にはかつてないほど多くのデバイスが存在し、より多くの情報が共有・分析されています。そのため、イーサネットがより優れた性能を発揮することになります。
TSNは複数の国際規格で構成されている。主な規格はIEEE802.1AS(時刻同期方式を規定)とIEEE802.1Qbv(時刻共有方式を規定)である。これらをイーサネット規格と組み合わせることで、時間厳守、一定時間内の伝送確保、他の通信プロトコルとの混在実装が可能となります。
TSN FOR INDUSTRIAL AUTOMATION?
多くの産業が決定論的イーサネットを必要としており、産業オートメーションもそのひとつです。オートメーション業界は、高速で決定論的で堅牢な通信を実現するソリューションを求め続けてきました。現在、PROFINET IRT、Sercos III、Varanなど、この目的に特化したいくつかのソリューションが利用可能です。TSNは、業界全体のリアルタイムイーサネットの標準化を支援することができます。
Industrie4.0やIndustrial Internet of Thingsのような現在の産業トレンドは、拡大し続けるコンバージド・ネットワークにおけるネットワーク・トラフィックの増加につながる。このようなネットワークでは、小型デバイスからビッグデータ・サーバーシステムまでをサポートする柔軟性とスケーラビリティが要求される一方、タイムクリティカルな通信では遅延が制限される。TSNは、これらすべての要件をカバーすることを意図している。TSNは、決定論的通信と非決定論的通信を同時に使用するための標準化されたメカニズムを提供する。
先程も言いましたが、TSNには時間の共有概念がメインコンセプトです。全てのネットワークエレメント(エンドデバイスとブリッジ)による802.1AS(将来的には802.1ASRev)の実装がTSNには必要です。
802.1AS PTPプロファイルは、すべてのTSNネットワークエレメントが同じ時間の概念を共有することを可能にします。TSN フレームのオンタイムデリバリを提供する鍵は、802.1Qbv で は、特定の TSN イーサネットフレームをスケジュールで送信する一方、非 TSN イーサネットフレームを TSN フレームの周囲でベストエフォートベースで送信できるようにする手段を定します。
すべてのネットワーク・エレメントが同じ時間を共有するため、Qbvを実装するエンド・デバイスやブリッジは、クリティカルな通信を非常に速く、配信に識別できるようなジッターを発生させずに配信することができます。IEEE 802.1Qbvの良い例は列車システムです。
イーサネット・ブリッジを都市に見立て、ブライド間のリンクを都市間の線路に見立てる。各都市間には1本の線路がある。列車はスケジュールに基づいて、ある都市から別の都市へと向かう。
線路は時間を共有しなければならない希少資源である。同時に2つの列車が線路上にいることはできない。列車システムは、線路が十分に使用され、競合がないことを確認しながら、駅からの各列車の出発時刻をスケジュールする。
TSNでは、イーサネット・ブリッジによって、予定されていないトラフィックがあるときにリンクを使用することができる。列車システムの場合、都市内列車が線路を使用していないときに、地域列車やローカル列車が線路を使用することになる。
CCLink TSN?
CC-Link IE TSNは、ギガビットイーサネット帯域幅とTime-Sensitive Networking(TSN)を組み合わせた初めての製品で、パフォーマンスと機能性をさらに強化しながら、オープン性を高めています。
TSN technology and protocol layers
CC-Link IE TSNのプロトコルは、OSI参照モデルのLayer3からLayer2を使用し、Layer2はTSN技術をベースにしている。
Integration of OT and IT
CCLink TSNはリアルタイム性を確保した制御通信を実現するとともに、他のオープンネットワークやITシステム情報との通信を同一ネットワーク上で統合することで、システム構成の自由度を高め、配線コストを削減できます。
Communication methods
従来のCC-Link IEはtoken passing方式を採用している。自局のデータを送信した後、tokenを転送することにより、自局の送信権を次局に移譲する。
CC-Link IE TSNは、ネットワーク全体で同期された共通の時刻を使用します。入力通信フレームと出力通信フレームを一定時間で双方向に同時に伝送する。この方式とTSNを組み合わせることで、ネットワークのサイクリック・データ更新時間を短縮できる。
CC-Link IE TSNは、同一ネットワーク内で複数の通信サイクルを使用することができます。これにより、サーボアンプのように高性能な通信サイクルを必要とする機器の性能はそのままに、リモートI/Oのように高速な通信サイクルを必要としない機器を、それぞれの機器の特性に合わせて接続することができる。
そして通信サイクルを最適化し、ドライブ制御性能を最大化し、時間を短縮することがで ます。
Reduction for start-up, operation, and maintenance
CC-Link IE TSNはSNMPにも対応し、汎用のSNMP監視ツールを使えば、CC-Link IE TSN機器とスイッチやルータなどのIP通信機器を解析することができます。
TSNが規定する時刻同期プロトコルを用いて、CC-Link IE TSN対応機器間の時差を校正し、高精度に同期を保ちます。それによって、マスター局とリモート局の両方に保存された時間情報はマイクロ秒単位で同期されます。
ネットワークエラーが発生した場合、時間情報はマイクロ秒単位で同期されているからこそ、操作ログを確認し、エラー発生までのイベントを時系列で正確にトレースすることが可能になります。
また、生産現場の情報や正確な時間情報をITシステムに提供することも可能だ。これにより、AIを活用したデータ分析が可能となり、予知保全による更なるプロセス改善が実現できるではないかと期待されています。
Compatible through various development methods
CC-Link IE TSNはハードウェアとソフトウェアの両方のプラットフォームでの実装をサポートしており、ASICとFPGAベースのハードウェア方式がサポートされています。
また、マスター・ステーションとデバイス・ステーションの両方で利用可能である。いずれの場合も、100Mbitと1Gbitの物理層がサポートされている。
この柔軟性により、デバイス・ベンダーは市場投入までの時間を最小限に抑えながら、最適な方法で製品を開発することができます。
CC-Link IE TSN Specifications
RJ71GN11‐T2
CC-Link IE TSNのマスタ局/ローカル局として使用でき、リアルタイム性が要求される制御通信と、TCP/IP通信を混在できるモジュールです。
また、ネットワーク構成機器の自動検出や接続局へのパラメータ配信により、ネットワーク構築が簡単に実現できます。
UR20-FBC-CC-TSN
UR20-FBC-CC-TSN フィールドバスカプラは CC-Link IE TSN 仕様に準拠したリモートステーション(CC-Link IE TSN スレーブ)です。
- Class B に従った CC-Link IE TSN 固有の通信および関連サービスを可能
- u-remoteシステムバスのヘッドモジュールで、最大64台のアクティブu-remoteモジュールを接続可能
- CC-Link IE TSNマスタとI/Oデータを交換可能
- 診断とアラームはアラームメッセージプロトコル(SLMP)を介して交換できる
- USBサービスインターフェースまたはイーサネットを介して、ウェブサーバーアプリケーションでアクセスできます。
- 診断
- ステータス値
- パラメータを読み取る
- 接続されたすべてのモジュールをシミュレート
- 強制ON/OFF
また、ステーションの主電源はカプラに内蔵されている。電源は2つの4極コネクターから供給され、入力と出力の電流経路に分かれています。
Power
こちらはUR20-FBC-CC-TSNの電源配線図になります。
Addressing
フィールドバスカプラのアドレスは DIP スイッチで 0 から 254 の間で設定できます。アドレスはカプラのパワーアップ時に認識されます。
UR20-16DI-P
UR20-16DI-Pデジタル入力モジュールは、最大16個のバイナリ制御信号を検出できます。各コネクタに4個のセンサを1線式で接続でき、各チャネルにステータスLEDが割り当てられています。
UR20-4AI-UI16
UR20-4AI-UI-16アナログ入力モジュールは以下の測定範囲で使用でき、パラメータ設定により定義されます。
- ±10 V、±5 V
- 0 …10V
- ±5V
- 0… 10 V,
- 0 … 5 V,
- 2 … 10 V
- 1 … 5 V
- 0 … 20 mA
- 4 … 20 mA。分解能は
注意するには入力は電圧サージと過電流から保護されていますが、30Vを超える電圧はモジュールの破壊を引き起こす可能性があります。
UR20-4AO-UI-16
アナログ出力モジュールUR20-4AO-UI-16は、最大4つのアナログアクチュエータを制御可能で、パラメータ設定により定義されます。
- 0 …10 V
- 0 … 5 V
- 2 … 10 V
- 1 … 5 V
- 0 … 20 mA
- 4 … 20 mA。
分解能は各チャンネル16ビット。アクチュエーターは各コネクターに2線式または4線式で接続でき、内部切替は自動的に行われます。
UR20-8DO-P
UR20-8DO-Pデジタル出力モジュールは、最大8個のアクチュエータをそれぞれ最大0.5Aで制御できます。アクチュエータは各コネクタに2線式で接続でき、ステータスLEDが割り当てられています。出力には出力電流経路(IOUT)から電力が供給されます。
UR-MS16DT
UR-MS16DT]はOPTEX社が開発した産業用イーサネットに対応した高機能 IO-Link マスターで、デジタルシンク(NPN)/ソース(PNP)16チャンネル入出力機器の混在接続を1台で完結できます。 (最短サイクルタイム0.3ms)
Startup..
こちらはUR-MS16-DTの本体です、
Station Number
電源を入れる前に CC-Link IE FieldまたはCC-Link IE TSN ユニットを接続し、局番(Station No.)をロータリースイッチに設定してください。
Connect the LAN Cable
イーサネットケーブルを CC-Link IE Fieldまたは CC-Link IE TSNのマスター局に接続します。左右どちらでも接続可能。
Connect the Power
ユニット電源(+24 V、0 V)とI/O電源(L+、M)を並列に接続します。
Wiring‐IO Link Master
こちらはUR-MS16-DTの端子とIO-LINK デバイスの配線図です。
Wiring-PNP Output
こちらはUR-MS16-DTの端子とPNPデジタル出力デバイスの配線図です。
Wiring-PNP Input
こちらはUR-MS16-DTの端子とPNPデジタル入力デバイスの配線図です。
Implementation
Download CSP
下記のLinkからweidmuelleのUR20-FBC-CC-TSN CouplerとUR-MS16-DTのCSP FileをDownloadしてください。
https://mdcop.weidmueller.com/mediadelivery/asset/900_213743
https://www.cc-link.org/sch/C020?langSeqNo=2&CL=2&prodId=PD2020121396
Module Configuration
Module Configurationから今回使用するRJ71GN11-T2を追加します。
Tool>Check Parameterでパラメータをチェックしましょう。
Register Profile
CC-Link TSNを使用するにはメーカーのHPからCSP FileにGXWORKS3を登録すると便利です。Tool>Profile Managnment>Registerをクリックします。
先程weidmuellerとOPTEX HPからDownloadしたCSP Fileを登録してください。
しばらく待ちます…
Done!
Configuration
次は今回記事で使用するRJ71GN11-T2の基本設定を行うため、Parameter>Module Information>RJ71GN11-T2をクリックしてください。
こちらはRJ71GN11-T2の基本設定画面です。
Station Type
今回RJ71GN11-T2はMaster Stationとして他社のCCLINK TSN Slaveと接続するので、Station TypeをMaster Stationに設定してください。
Yesで進みます。
次はMaster StationのIPアドレスを設定しましょう。
Network
CCLINK TSNネットワークを構築するため、Basic Setting>Network Configuration Settingsを開きます。
先ほど登録されたCCLINK TSN Slaveがありました。
Add UR20-FBC-CC-TSN
DIPSwitch
TSN CouplerにはDIPスイッチがあり、CouplerのIPアドレスを設定することができます。
最初にUR20-FBC-CC-TSNをネットワークに追加します。
Done!
Station
Station番号はアプリケーションに合わせて設定してください。
Rx/Ry/Rwr/Rww Setting
次はProcess IO番号を設定しましょう。こちらの番号はのちほどのReflesh Settingと関連します。
IP Address
IP Addressは先ほどDPをスイッチに設定した値を入力してください。
Configuration
次はTSN Couplerの設定を行います。先程追加したUR20-FBC-CC-TSNを右クリック>Open Extension Module Configurationをクリックします。
こちらはUR-20-FBC-CC-TSN Couplerの設定画面です。
UR20-16DI-P
Slot1にインストールされたUR20-16DI-PをNetwork Configurationに追加します。
Module ListからUR20-16DI-PをDropしてください。
Done!
UR20-4AI-UI-16
Slot2にインストールされたUR20-4AI-UI-16をNetwork Configurationに追加します。
Module ListからUR20-4AI-UI-16をDropしてください。
Done!
次はUR20-4AI-UI-16の設定を行うため、<Detail Setting>をクリックします。
各Channelのアナログ入力計測Rangeを設定してください。
UR20-4AO-UI-16
Slot3にインストールされたUR20-4AI-UI-16をNetwork Configurationに追加します。
Module ListからUR20-4AO-UI-16をDropしてください。
Done!
次はUR20-4AO-UI-16の設定を行うため、<Detail Setting>をクリックします。
各Channelのアナログ出力Rangeを設定してください。
UR20-8DO-P
Slot4にインストールされたUR20-8DO-PをNetwork Configurationに追加します。
Module ListからUR20-8DO-PをDropしてください。
Done!
次はUR20-8DO-Pの設定を行うため、<Detail Setting>をクリックします。
各Channelデジタル出力のFault状態をどうするか設定してください。
Save Configuration
最後はExtension Module Configuration>Cloas with Enabing the SettingでUR20−FBC-CC-TSNの設定を保存しましょう。
Add UR-MS-16DT(TSN)
UR-MS-16DT(TSN)をネットワークに追加します。
Rotary Switch
UR-MS-16DT本体にはRotaryスイッチ2つがあり、該当するデバイスのStation番号を設定できます。また、そのStation番号にもIP 192.168.X.YのYになります。
なので、下図では16を設定しました。そのデバイスのIPは192.168.3.16になります。
Station/IP Address
Station番号とIPアドレスは先程のRotaryスイッチに合わせて設定しましょう。
Configuration
次はUR-MS-16DT(TSN)のパラメータを設定するため、モジュールを右クリック>Parameter of Device Stationを開きます。
こちらはUR-MS-16DT(TSN)のパラメータ設定画面になります。
Port0
UR-MS-16DT(TSN)のPort0はオムロンのIO-LINK Sensorと繋がっています。
Method SelectionのDrop-Listから11[Channel 0] Write all parametersを選択します。
M10 I/O SettingをIO-Linkに選択することにより、Port0はIO-Link Portとして使用されます。
Execute Parameter ProcessをクリックしパラメータをモジュールにDownloadしましょう。
Yesで進みます。
Port1
UR-MS-16DT(TSN)のPort1はスイッチと繋がっています。
Method SelectionのDrop-Listから13[Channel 1] Write all parametersを選択します。
M10 I/O SettingをPNP Inputに選択することにより、Port0はPNP Inputとして使用されます。
PortF
UR-MS-16DT(TSN)のPortFはランプのデジタル出力と繋がっています。
Method SelectionのDrop-Listから41[Channel F] Write all parametersを選択します。
M10 I/O SettingをPNP Outputに選択することにより、Port0はPNP Outputとして使用されます。
Reflesh
Reflashing Settingを開き、Rx/Ry/RWw/RWrとCPU内部のMappingを設定します。
Reflashing Setting画面が表示されます。
アプリケーションに合わせて設定しましょう。
こちらはUR-MS16-DTとUR20-FBC-CC-TSN CouplerのMappingになります。
Checkボタンで設定を確認し、Applyボタンで設定を保存しましょう。
Program
次は簡単なプログラムを作成します。
Add Module Label
Rj71GN11-T2 Moduleラベルをプロジェクトに追加します。
MAIN
UR-MS16-DTとUR20-FBC-CC-TSN Couplerのデータを受送信するためのプログラムを作成します。
//UR-MS16DT bPort1Switch:=B21; bPortFLamp:=bPort1Switch; B12F:=bPortFLamp; wEvent.0:=B30; wEvent.1:=B31; wEvent.2:=B32; wEvent.3:=B33; bAccessRdy:=B34; bOverCurrent:=B35; bOverPowerSupply:=B36; bhasNewEvenet:=B37; wLastErrorChannel.0:=B38; wLastErrorChannel.1:=B39; wLastErrorChannel.2:=B3A; wLastErrorChannel.3:=B3B; bAccessError:=B3C; bSysnc:=B3D; bIOLinkRdy:=B3E; bError:=B3F; wDectectValue:=D101; //UR20-FBC-CC-TSN bWeidmuller_DI_In0:=B50; bWeidmuller_DI_In2:=B52; bWeidmuller_DO_Out2:=bWeidmuller_DI_In0 OR (bWeidmuller_DI_In2 AND SM412); B152:=bWeidmuller_DO_Out2; |
Result
Diagnostics>CC-Link IE TSN/CC-Link IE Field DiagnosticsをクリックしCC-Link IE TSNのネットワーク状態を確認します。
プロジェクトに複数のCC-Link IE ネットワークがある場合、TSNのネットワークを選びましょう。
Done!いまTSNネットワークはエラーがありません。
各Moduleの正常状態のときのLED状態です。
こちらの動画で実際の動作を確認できます。