今回の記事では、横河電機のF3LN01を使用し、Ethernet/IP Scannerを立ち上げ、TURCKのCodesys PLCとBELDENの0980 XSL‐3912‐121‐007D0-01FとEthernet/IPで接続します。
さ、FAを楽しもう。
Reference link
Implementation
Belden Side
IP Setting
0980‐XSL 3912-121の本体にあるRotaryスイッチを使ってIPアドレスを設定してください。
EtherNet/IP Setting
次は0980‐XSL 3912-121の本体にあるRotaryスイッチを使って通信Protocolを設定してください。
今回の記事ではEthernet/IPを使用しますので、RotaryスイッチをE/IPに設定してください。
Assembly types
ConsumingデータとProducingデータイメージは、接続されているすべての IO-Link デバイスの完全な入出力データサイズと追加の入力ステータス情報に依存する動的なサイズを持っています。各接続の一般的な入出力プロセスデータサイズは、エンジニアリングツールで設定できます。各 IO-Link デバイスのプロセスデータサイズは、モジュール構成データで設定できます。
Connections
ダイナミックデータサイズは、接続されているすべての IO-Link デバイスの完全な入出力データサイズと、追加の入力ステータス情報によって決まります。
各接続の一般的な入出力プロセスデータサイズは、エンジニアリングツールで設定できます。各 IO-Link デバイスのプロセスデータサイズは Module Configuration Data で設定できます。
Process data assignment
次はBELDENの0980‐XSL 3912-121がEthernet/IP Modeとして使用する場合のMappingをリストアップします。
OutputData
こちらは0980‐XSL 3912-121がEthernet/IP Modeとして稼働するとき出力データのMappingになります。
InputData
こちらは0980‐XSL 3912-121がEthernet/IP Modeとして稼働するとき入力データのMappingになります。
Digital input channel status、Start from byte Offset0
Byte Offset0から2Bytesのデータは0980‐XSL 3912-121のデジタル入力データになります。
General diagnostics
Byte Offset2から2Bytesのデータは0980‐XSL 3912-121のモジュール診断情報になります。
ITEM | Meaning |
LVS | 低電圧システム/センサー供給 |
LVA | 低電圧アクチュエータ電源 |
SCS | 短絡センサー |
SCA | 短絡アクチュエータ/UL/UAux |
DTU | デバイスの温度不足 |
DTO | デバイス温度オーバーラン |
FME | フォース・モード有効 |
IME | 内部モジュールエラー |
IVE | IO-Link バリデーションエラー |
IDE | IO-Link デバイスエラー |
IDW | IO-Link デバイスの警告 |
IDN | IO-Link デバイス通知 |
Sensor diagnostics
Byte Offset4から2Bytesのデータは0980‐XSL 3912-121の入力診断情報になります。
Actuator/UL/UAux diagnostics
Byte Offset6から2Bytesのデータは0980‐XSL 3912-121の出力診断情報になります。
IO-Link diagnostics
Byte Offset8から6Bytesのデータは0980‐XSL 3912-121のIO-LINK診断情報になります。
ITEM | Meaning |
ICE1..8 | IO-Link ポート COM エラー(デバイスの紛失、断線、短絡など) |
IVE1..8 | IO-Link ポート検証エラー |
IDE1..8 | IO-Link ポートデバイスエラー |
IDW1..8 | IO-Link ポートデバイスの警告 |
IDN1..8 | IO-Link ポートデバイス通知 |
IO-Link portX data
0980‐XSL 3912-121の各PortのIO-LINK入力データになります。
IO-Link portX PQI
0980‐XSL 3912-121の各PortのIO-LINK PQI(Port Qualifier Information)データになります。
ITEM | Meaning |
NewPar | 機器パラメータの更新を検出 |
SubDev | 異なるデバイスが検出された(異なるシリアル番号) |
PortActive | ポート有効中 |
DevCom | デバイスが検出され、PREOPERATE または OPERATE 状態にある。 |
DevErr | デバイスまたはポートに割り当てられたエラー/警告が発生した |
PQ | デバイスからの有効なI/Oプロセスデータ |
Extended status
0980‐XSL 3912-121の各PortのIO-LINKの拡張情報データになります。
ITEM | Meaning |
OLE | 出力プロセスデータ長エラー(デバイス不一致) |
ILE | 入力プロセスデータ長エラー(デバイス不一致) |
SPE | 起動時のパラメータ設定エラー(ダイレクトパラメータエラー) |
BUI | バックアップの不整合(パラメータ保存エラー) |
ICT | 無効なサイクルタイム |
Events
0980‐XSL 3912-121の各PortのIO-LINKのイベンド情報データになります。
ITEM | Meaning |
Instance | 不明(「0」)、予約(物理層 PL(「1」)、データリンク層 DL物理層 PL (「1」)、データリンク層 DL(「2」)、アプリケーション層AL(「3」) ) |
Type | 通知(「1」)、警告(「2」)、エラー(「3」) |
Mode | シングルショット(「1」)、イベント消失(「2」)、イベント出現(「3」) |
Download EDS File
下記のサイトからBELDENの0980‐XSL 3912-121のEDS FILEをDownloadしてください。¥
https://www.belden.com/products/i-o-systems/io-link-master/0980-xsl-3912-121-007d-01f
Configure IO
次は0980‐XSL 3912-121のWeb Serverにアクセスし、モジュール設定を行います。
PortXの設定を変更したい場合、FieldbusとModuleを切り離し、ピンク枠のボタンをクリックします。
アプリケーションに合わせてPort Modeを設定してください。
TURCK Side
TURCKのTBEN-L5-PLC-11側にも少々設定があります。
Configure Double MAC ModeRORYTT SW
TBEN-L5-PLC-11のWeb Serverにアクセスし、Parameters画面を開きます。
今回使用するのはEthernet Port2なので、IPアドレスをアプリケーションに合わせて設定しましょう。
そして”SET NETWORK CONFIGURATION”をクリックし設定を適用します。
Add Ethernet Adapter
次はEthenret/IP Adapterとして使用するEthenet Adapterを設定するため、Device>右クリック>Add Deviceします。
Ethernet Adapter>Ethernet を選び、Add Deviceで進みます。
Done!Ethernet Adapterが追加されました。
Configure IP Address
General Tabを開き、Browseをクリックし、アプリケーションで使用するAdapterを設定しましょう。
今回の記事ではTBEN-L5-PLC-11のPort2を使用すので、eth1を選択します。
Insert Devices
Ethenret/IP Adapterを追加するため、先程のEthernet Adapterを右クリック>Add Deviceします。
ここで注意するのはEthernet IP Slave・Ethernet/IP Adapterとという複数の選択肢が出る場合がございます。TURCKのTBEN-L5-PLC-11にEthenret/P Adpterを使用するには、VendorがTURCKだと表示されているEthernet IP Slaveを設定してください。
VendorがCodesysのEthernet/IP Adapterを使用すると別のライセンスが必要になります。
次はEthenret/IP Adapter用交換データ領域を追加します。
今回の記事では256 Bytesの入出力データを追加しました。
GVL
GVLでTURCKのTBEN-L5-PLC-11のEthernet/IP 変数とLED変数を定義します。
{attribute ‘qualified_only’} VAR_GLOBAL LED :DUT_Turck_PLC_LED; EIP_OutData AT %QW1000 : ARRAY[0..127]OF WORD; EIP_InData AT %IW1000: ARRAY[0..127]OF WORD; END_VAR |
Program
こちらのプログラムはEthenret/IP Scannerに検証用のデータを送り、また、Ethenret/IP ScannerからTURKCのTBEN-L5-PLC-11のLEDを制御するようにします。
PROGRAM PLC_PRG VAR _temp1,_temp2:WORD; END_VAR GVL2.EIP_OutData[1]:=12; GVL2.LED.LED4_Green:=GVL2.EIP_InData[0].0; GVL2.LED.LED4_Red:=GVL2.EIP_InData[0].1; GVL2.LED.LED5_Green:=GVL2.EIP_InData[0].2; GVL2.LED.LED5_Red:=GVL2.EIP_InData[0].3; GVL2.LED.LED6_Green:=GVL2.EIP_InData[0].4; GVL2.LED.LED6_Red:=GVL2.EIP_InData[0].5; GVL2.LED.LED7_Green:=GVL2.EIP_InData[0].6; GVL2.LED.LED7_Red:=GVL2.EIP_InData[0].7; GVL2.LED.APPL_LED_Green:=GVL2.EIP_InData[0].8; GVL2.LED.APPL_LED_Rad:=GVL2.EIP_InData[0].9; _temp1:=GVL2.EIP_InData[126]; _temp2:=GVL2.EIP_InData[127]; |
LED
TRUCK社のTBEN-L5-PLC-11にはLED4-7・またALのLEDがあり、赤・緑の出力をプログラムから制御できます。
TURCKのCODESYS Runtimeでは本体のLEDを赤・緑の出力制御が可能です。
LEDs I/O Mappingの変数を先程GVLで定義したものと紐つけましょう。
IO Mapping
Ethernet/IP AdapterではCODESYSの固定アドレス機能を使用します。先程GVLで%IX1000.0と%QX1000.0と定義しましたので、Ethernet/IP のMappingにアドレス先頭を%IW1000と%QW10000さえ設定すればOKです。
Download
最後はプロジェクトをTURCKのTBEN-L5-PLC-11にDownloadしましょう。
Yesで進みます。
Start
Runtimeを起動します。
Download EDS File
TURCKのPLCのEDS Fileを下記のLinkからDownloadしてください。
https://www.turck.jp/ja/product/100000272
YOKOGAWA Side
Tool Installation
F3LN01のEthernet/IPネットワーク構成を設定するため、横河電機のポータルサイトにアクセスし、PLC/PAC && Embedded Controllerをクリックします。
https://partner.yokogawa.com/global/itc/index.htm
FA-M3 Software Download>Configuration Toolをクリックします。
ライセンスを同意します。
FA M3 Configuration Tool Ethernet/IP Interface Moduleをクリックします。
このサイドからConfiguration Tool・EDS File・取説をDownloadできます。
ポータルサイトからDownloadしたZIP Fileに解凍し、Setup.exeを起動します。
Next>で進みます。
しばらく待ってください…
Next>で進みます。
Next>で進みます。
Installで進みましょう。
しばらく待ってください…
Done!
Configure FA-M3
先程インストールしたFAM3ConfigurationToolEtherNetIPを起動します。
こちらはFA-M3のEthernet/IP Configurationツール画面になります。
IP Setting
F3-LN01のIPアドレスを設定するにはモジュール本体の蓋を開けてください。
Rotaryスイッチを使ってIPアドレスを設定しましょう。
Connec to Module
Online>ConnectでPCとモジュールを接続します。
Connectをクリックします。
Done!ツールとモジュール・CPUと接続しました。
Monitor
Online>Monitorで現在モジュールの状態を監視できます。
Yesでプロジェクトを保存します。
Done!
IO Data XY
F3-LN01のXY入出力データ・エラーなどの情報確認できます。
例えば80000804の入力データは実際X501-532の入力状態と一致します。
Import EDS File
EDS FileをImportするため、Edit>Read EDS Fileをクリックします。
先程DownloadしたEDS Fileを選択します。
Done!
TURCK社のTBEN-L5-PLC-11 EDS FileもImportしてください。
Scan Adapter
ツールの検索機能を使って同じネットワーク内にあるAdapterを検索してみます。
Online>Scanning Adaptersをクリックします。
Scanning Adapter画面が表示されます。
Startボタンをクリックし検索を始めましょう。
Done!2つのNodeを見つけました。
Configure Ethernet/IP Network
BELDENの0980 XSL 3912-121-007D-01FをEthernet/IP ネットワークに追加しましょう。
Done!
Setup IP Addres
BELDENの0980 XSL 3912-121-007D-01FのIPアドレスを実機に合わせて設定するため、右画面にあるIP Addressに適切な値を入力し、Applyで適用します。
Ping
Ping機能を使用し、BELDENの0980 XSL 3912-121-007D-01Fと接続してるかを確認しましょう。
Done!
Read
また、Read機能を使用し該当するデバイスの情報を読み出すことができます。
Network Parameter
次はBLEDENの0980 XSL 3912-121‐007D-01の接続パラメータを設定しましょう。
アプリケーションに合わせてネットワークパラメータを設定しましょう。
Register Allocation
Ethernet/IP経由でやり取りするデータをPLCのメモリと紐つけるため、0980 XSL 3912-121‐007D‐01Fを右クリック>Tag、Link Register(W) Allocationをクリックします。
こちらはメモリの割り付け画面になります。
基本的にはEthernet/IP Adapterの設定はEDS FILEに沿って行いますので、ここで設定するのはW(Link Register)を先頭アドレスのみです。
Auto Set機能を使用し自動でデバイスを割り付けることもできますが、この機能はCPUのメモリ番地の限界を見ていないことに注意してください。
Done!
これでBLEDENの0980 XSL 3912-121‐007D‐01FのEthernet/IP Adapter設定が完了しました。
先と同じ操作でTURCK社のTURCKのTBEN-L5-PLC-11 Ethernet/IP Adapteを追加しましょう。
Result
Done!
Download
Ethernet/IPネットワークの設定完了したら、Online>Download[PC=>F3LN01]にConfigurationをDownloadしましょう。
Yesで進みましょう。
Result
Online>Monitorをクリックし、Ethernet/IPネットワークの状態を確認します。
Y33をONにします(Ethernet/IP通信開始)。2つのEthernet/IP Adapterも緑に表示され、つまりF3LN01と正常な通信を行っています。
Program
次はプログラムを組みます。今回の記事では3つの部分に分けます。
- EIPST2(TURCKのTBEN-L5-PLC-11)の制御部分
- EIPST1(BELDENの0980‐XSL 3912-121)の制御部分
- PROGRAM1(メイン部分)
PROGRAM1
まずはPROGRAM1から作成します。
こちらはF3-LN01のモジュール状態を確認し、Ethernet/IPモジュールの通信開始・停止するプログラムです。
EIPST1
今度はEIPST1プログラムです。
こちらはBELDENの0980‐XSL 3912-121のデジタル入力状態を確認するプログラムです。
こちらはBELDENの0980‐XSL 3912-121のモジュール診断情報を確認するプログラムです。
こちらはBELDENの0980‐XSL 3912-121の入力診断情報を確認するプログラムです。
こちらはBELDENの0980‐XSL 3912-121のデジタル出力の診断情報を確認するプログラムです。
こちらはBELDENの0980‐XSL 3912-121のIO-Link Port情報を確認するプログラムです。
Port1
こちらはBELDENの0980‐XSL 3912-121のモジュールのPort1と接続してるOMRON E3A3-HL500lMN IO-LINKデバイスを制御するプログラムです。
該当するPORTがエラーがあるかをチェックするプログラムです。
こちらはBELDENの0980‐XSL 3912-121のモジュールのPort1と接続してるOMRON E3A3-HL500lMN IO-LINKのVendor IDとDevice IDを取得するプログラムです。
こちらはBELDENの0980‐XSL 3912-121のモジュールのPort1と接続してるOMRON E3A3-HL500lMN IO-LINKのEvent Codeなどを取得するプログラムです。
こちらはBELDENの0980‐XSL 3912-121のモジュールのPort1と接続してるOMRON E3A3-HL500lMN IO-LINKのProcess Data Mappingです。
Port2
こちらはBELDENの0980‐XSL 3912-121のモジュールのPort2と接続してるOMRON E2E-X3B4-IL3-2M IO-LINKのProcess Dataを取得するプログラムです。
こちらはBELDENの0980‐XSL 3912-121のモジュールのPort2と接続してるOMRON E2E-X3B4-IL3-2M IO-LINKの診断情報を取得するプログラムです。
該当するPORTがエラーがあるかをチェックするプログラムです。
こちらはBELDENの0980‐XSL 3912-121のモジュールのPort2と接続してるOMRON E2E-X3B4-IL3-2M IO-LINKの取得するプログラムです。
こちらはBELDENの0980‐XSL 3912-121のモジュールのPort2と接続してるOMRON E2E-X3B4-IL3-2M IO-LINKデバイスのEvent Codeなどを取得するプログラムです。
こちらはBELDENの0980‐XSL 3912-121のモジュールのPort2と接続してるOMRON E2E-X3B4-IL3-2MのProcess Data Mappingです。
Port8
こちらはBELDENの0980‐XSL 3912-121のモジュールのPort8と接続してるNass Smart Connector IO-Linkデバイスを制御するプログラムです。
こちらはBELDENの0980‐XSL 3912-121のモジュールのPort8と接続してるNass Smart Connector IO-LinkデバイスのProcess Data Mappingです。
EIPST2
次はTURCKのTBEN-L5-PLC-11を制御するプログラムを作成します。
こちらはTRUCK社のLED4-7、またAL LEDのランプに出力するプログラムです。
Download
最後はプロジェクトをCPUにDownloadするため、Online>Download[PC->CPU]>Projectでプロジェクトを転送します。
Result
Done!TURCKのTBEN-L5-PLC-11と接続に成功しました。
F3LN01にも2つのEthernet/IP Adpaterにも通信成功です。
Ethernet/IP通信の開始信号も出力され、エラー信号もありません。
TBEN-L5-PLC-11にはF3LN01から送信したデータも受信できます。
そしてTBEN-L5-PLC-11から送信したデータを、F3LN01にも受信できました。
BELDENの0980 XSL 3912-121-007D-01Fの各PortのデータもF3LN01から確認できました。
こちらはBELDENの0980 XSL 3912-121-007D-01FがEthernet/IP正常通信してるときのLEDS状態です。
こちらは横河電機側のF3LN01が正常ときのLED状態です。
Download
こちらのLinkで今回のプロジェクト(横河電機・TURCKのCODESYSプロジェクト)をDownloadできます。
https://github.com/soup01Threes/Codesys/blob/main/Tutorial_Yokogawa_TURCK_PLC_EIP_Part1.rar