今回の記事ではBeckhoff C6920からEtherCAT Masterを立ち上げ、EL6910の組み合わせでweidmueller社UR20-FBC-EC-ECO(EtherCAT Coupler)とUR20-4DI-4DO-PN-FSOE-V2(FSOE SubDevicesモジュール)を繋がって、EtherCATとFSoEの通信設定を説明します。
さ、はじめよう!
Reference Link
Download ESI File
下記のLinkからESI FileをDownloadしてください。
https://catalog.weidmueller.com/catalog/Start.do?localeId=en&ObjectID=2659690000
UR20-FBC-EC-ECO?
UR20-FBC-EC-ECOフィールドバスカプラはEtherCAT Technology Groupによって認証されたEtherCAT1)参加製品で、カプラはu-remoteシステムバスのヘッドモジュール、最大16台のアクティブu-remoteモジュールを接続できます。
EtherCATカプラは2つのイーサネットポートを持ち、内蔵スイッチはラインネットワーク構造をサポートします。カプラはイーサネット経由でシステムに依存しないウェブサーバアプリケーションでアクセスできます。
このため、診断、ステータス値、パラメータなどのすべての情報を読み取ることができ、接続されたすべてのモジュールをシミュレーションまたは強制的に動作させることができます。イーサネット経由でカプラにアクセスするには、EoEプロトコル(Ethernet over EtherCAT)をサポートするコントローラが必要です。
コントローラでEoEを有効にし、コントローラコンフィグレーションでカプラに有効なIPアドレスを割り当てる必要があります。
注意するのはステーションの主電源はカプラに内蔵され、電源は4極コネクターから供給されています。
Power Supply
こちらはUR20-FBC-EC-ECOの電源図です。
UR20-4DI-4DO-PN-FSOE-V2?
デジタル入出力モジュールUR20-4DI-4DO-PN-FSOEまたはUR20-4DI-4DO-PN-FSOE-V2は、Fail Safe Over EtherCAT(FSoE)プロトコル用の安全I/Oモジュールです。
各モジュールはそれぞれ4つのデジタル入力と出力を提供し、最大4つのバイナリ制御信号を検出し、最大4つのアクチュエータをそれぞれ最大0.5Aで制御することができる。
2つの入力と出力はそれぞれ、P-またはN-スイッチングをパラメータ化できます。センサーは、2線式、3線式、または4線式でコネクター1と2に接続できます。
プラグ1個あたり0.8Aの供給電流で十分でない場合は、同じ電源セグメント内の別のモジュール(例えば電位分布モジュール)の補助出力を使用してセンサーの供給を実現する必要があります。
センサーの供給は、同じ電源セグメント内の別のモジュール(電位分布モジュールなど)の補助出力を使用して実現する必要があります。
アクチュエータは、2線式接続でコネクタ3と4に接続できる。各チャンネルにステータスLEDが割り当てられています。モジュール・エレクトロニクスは、出力電流経路(IOUT)から入力と出力に電力を供給します。
入力のテストパルスチェックは、入力信号と電源電圧間、異なる入力信号間、または他の信号間のクロスサーキット検出としてパラメータ化することができます。従って
入力がアクティブになるのは、専用の補助出力の信号が保留されているときだけです。
独自のテストパルスを生成する OSSD 出力を持つセーフティリレーが接続されている場合は、テストパルスを無効にする必要があります。
Wiring
こちらはUR20-4DI-4DO-PN-FSOE-V2の配線図です。
LED
こちらはUR20-4DI-4DO-PN-FSOE-V2のLED状態の意味です。
FSOE Address setting
UR20-4DI-4DO-PN-FSOE-V2モジュールの隣にFSoEアドレスを設定できるDIPスイッチです。
Implementation
Beckhoff Side
Install ESI File
先ほどweidmuellerのHPからDownloadしたESI Fileを下記のDirectoryに格納してください。
C:\TwinCAT\3.1\Config\Io\EtherCAT
Add EtherCAT Master
EthernetCAT Masterを追加するため、I/O>Devices>右クリック>Add New Itemします。
EtherCAT>EtherCAT Masterを選び、Okで進みます。
EtherCAT Masterとして使用するEthernet Interfaceを選び、OKで進みます。
Done!
Auto Scan
Auto Scan機能を使用し、ネットワーク内にあるEtherCAT Slaveを検索します。
Done!UR20-FBC-EC-ECOを検索できました。
UR20-FBC-EC-ECOにインストールされたUR20-4DI-4DO-PN-FSOE-V2と他のモジュールも自動的にプロジェクトに追加されました。
UR20-FBC-EC-ECO Configuration
Input/Output Data
今回使用するUR20-4DI-4DO-PN-FSOE-V2のDI/DO信号なども直接Mappingできます。FSoE Masterは今回 EL6910を使用しますが、他社のFSoE Masterと接続する場合でもこちらからProcess IOにアクセスできます。
Slot Cofiguration
また、アプリケーションによってSlot変更がある場合、SlotsのTabでモジュール構成を追加などができます。
Add PLC
PLCを右クリック>Add New Itemで新しいPLCプロジェクトを追加します。
Standard PLC Projectを選び、Addで進みます。
Add GVL
次はSafety プロジェクトと通信するGlobal Variables Listを追加しましょう。
GVL名を入力し作成しましょう。
下記のようにSafety プロジェクトとやりとりする変数を宣言します。
{attribute ‘qualified_only’} VAR_GLOBAL RunStop AT %Q*:BOOL; ErrorAck AT %Q*:BOOL; EStopReset AT %Q*:BOOL; ESTOPStatus ,FBErr ,CommErr ,OutErr ,OtherErr ,FbRun AT %I*:BOOL; END_VAR |
Program
非常停止リセットのButtonを実際のIOとMappingするように、Process Input変数を定義します。
Build
Build > Build Solutionでプロジェクトをコンパイルします。
Map
今回記事の中にはEL1088が配置されたので、その中のChannel1を使用します。
Channel1>Input>Change Linkします。
先ほどMainプログラムで定義した変数を設定しましょう。
Add Safety Project
今回はEL6910を使用しますので、Safety>Add New Projectで新しいSafety プロジェクトを追加します。
TwinCAT Safety Project Preconfigured ErrAckを選び>Addで進みます。
Done!新しいSafetyプロジェクトが追加されました。
Setup Target System
Project>Target SystemでEL6910の設定を行います。
こちらはFSOE Masterの設定画面になります。
Target System
Target SystemのDrop-Listから今回記事で使用するEL6910を設定します。
次はPhysical Deviceをクリックします。
先ほどTwinCATの自動Scan機能で検索したEL6190を選択してください。
Done!
Hardware Address
次はEL6910のFSOEアドレスを設定します。EL6910の横にもDIPスイッチがあり、そこでアドレスを設定できます。
Add FSoE Connection
次はWeidmuellerのUR20-4DI-4DO-PN-FSOE-V2モジュールをSafety Groupに追加するため、Alias Devices>右クリック>Add>New Itemをクリックします。
Safety>EtherCAT>UR20-4DI-4DO-PN-FSOE-V2を追加しましょう。
Done!UR20-4DI-4DO-PN-FSOE-V2が追加されました。
Configuration
引き続き、UR20-4DI-4DO-PN-FSOE-V2の設定を行います。
FSoE Address
FSoEアドレスはモジュール横にあるDIPスイッチに合わせて入力しましょう。
Physical Device
次はPhysical Deviceを設定します。つまりこのSafety EtherCAT ConnectionはEtherCATネットワーク内で、どちらのUR20-4DI-4DO-PN-FSOE-V2を使用するかを指定します。
UR20-4DI-4DO-PN-FSOE-V2を選び>OKします。
Done!
プロジェクトを一回保存すれば、Input/Outputも自動的に更新されます。
Safety Parameters
モジュールのパラメータもアプリケーションに合わせて設定してください。
今回は1対2の非常停止入力を使用し、AUX0とAUX1でTest Inputを使用します。
Add Alias Devices
今度はNormal PLCプロジェクトとやり取りする変数を定義します。
Alias Devices>右クリック>Add >New Itemします。
1Digital Input(Standard)を選び>Addで追加します。
Mapinng
次はNormal変数のMappingを行います。
Linked To をクリックします。
先程PLCプロジェクトで定義した変数とMappingしましょう。
Add Other Alias
同じ操作でInput/Output変数を定義し、Normal PLCプロジェクトの変数とMappingしましょう。
Add GVL
今度はSafety プロジェクトにGlobal Variable Listを追加します。
GVLが追加されました。
こちらはSafety GVLの編集画面です。
Mapping
アプリケーションに合わせてMappingします。
こちらはNormal PLCとINPUT/OUTPUTのMappingになります。
Safety Project
最後はSafety プログラムを作成します。
FunctionBlocks(boolean)にsafeEstop Function Blockを追加します。
Done!
Link Input
Function BlockのEStopIn1に変数とリンクするため、EStopIn1を右クリックし>Change Linkします。
WeidmüllerのUR20-4DI-4DO-PN-FSOE-V2にあるデジタル入力と繋がりましょう。
Done!
下図のように、ESTOP入力・出力信号・リセット信号も繋がりましょう。
Build
Safetyプロジェクトをコンパイルし、エラーがないかをCheckします。
”Download Safety Project”をクリックし、SafetyプロジェクトをEL6910にDownloadしましょう。
User Name・EL6910のシリアル番号・EL6910のPasswordも入力しましょう。
Complete Project DataをDownloadしましょう。
Download結果を確認し、Nextで進みましょう。
Checkbox入れ、Nextで進みます。
もう一回Passwordを入力し、Safety プロジェクトを有効します。
Activate Configuration
最後はActivate ConfigurationをクリックしHardware ConfigurationなどをDownloadします。
OKで進みます。
Run Modeにシフトします。
Login
プロジェクトにLoginします。
Result
ErroAckのたち下げ信号を発行しSafety Groupをリセットします。そのあとRunStop信号をTrueしSafety Groupを実行しましょう。
Done!いまSafety GroupはRunしています。
UR20-4DI-4DO-PN-FSOE-V2も現在緑点灯になり、UR20-FBC-EC-ECO EtherCAT Couplerもエラーなしの状態です。
非常停止とランプしかつながっていませんが、下記の動画で実際の操作を確認できます。