今回の記事ではTRUCKのTBPN-L1-FDIO1-2IOLとSiemensのS71516-FでPROFIsafeを立ち上げ、モジュールはキーエンスのGL-R SEIRESセーフティライトカーテンと配線します。
さ、FAを楽しもう。
TBPN-L…-FDIO1-2IOL?
TBPN-L…-FDIO1-2IOL は PROFIsafe 用の分散 型セーフティモジュールです。このモジュールはフィールド 信号を収集し、PROFIsafe マスタに安全に転送します。40…+70 °Cの温度範囲とIP67/IP69Kの 保護等級により、このモジュールは産業環 境を要求する機械に直接使用できます。
このモジュールは、例えば非常停止ボタン、ポジションスイッチ、OSSDのような、人、材料、機械の保護に使用される信号デバイスを制御するために使用されます。
安全関連以外の機能については、Safety-Hybrid-Modulにはユニバーサル入力チャンネルが追加されているほか、IO-Linkセンサを接続するための2つのIO-Linkマスタチャンネル、最大32のI/O信号に拡張できるIO-Linkハブがあります。
TBPN-L…-FDIO1-2IOLは以下のアプリケーションに使用できます:
- SIL 3 (IEC 61508準拠)までのアプリケーション
- SIL CL3までのアプリケーション(EN 62061に準拠)
- カテゴリー4およびパフォーマンスレベルeまでのアプリケーション(EN ISO 13849-1に準拠)
Layout
こちらはTBPN-L…-FDIO1-2IOLのLayoutになります。
Safety function
TBPN-L…-FDIO1-2IOLは2つの安全なデジタルSIL3入力(FDI)と2つのSIL3コネクタ(FDX)を提供し、入力または出力として設定可能です。
セーフティ入力には、以下のデバイスを接続できます:
- 1チャンネルおよび2チャンネルのセーフティスイッチおよびセンサー
- 接点式スイッチ(非常スイッチ、保護ドアスイッチなど
- OSSDスイッチング出力付きセンサ
- アンチバレントスイッチングOSSDセンサ
- 2つの安全SIL3出力は、PP-またはPM-スイッチングを使用できます。
Safe Status
安全状態では、デバイス出力はLOW状態(0)です。入力はLOW 状態(0)をロジックにFeedbackします。
- 致命的なエラー
- 出力の誤配線(容量性負荷、エネルギッシュリカバリーなど)
- ライン制御出力T2での短絡
- 誤った電源供給
- 強いEMC妨害
- 内部デバイスのエラー
Safety inputs (FDI)
安全入力は、安全関連センサーの接続に適しています:
- 最大4個の2チャンネルセーフティスイッチとセンサー
- 接点式スイッチ(非常スイッチ、保護ドアスイッチなど
- テストパルス付きOSSDスイッチ出力付きセンサ
- OSSDスイッチ出力付きセンサ(テストパルスなし)
Safety outputs (FDO)
安全なSIL3出力は、PP-またはPM-スイッチを使用でき、最大2チャンネル安全出力(出力はV1経由で供給)になります。
Universal standard I/Os
安全でないユニバーサルI/OはC4/C5で使用できます。
:
IO-Link master channels
安全でない IO-Link マスターチャンネルはC6️/C7で使用できます。
Power Supply
X1/X2は電源供給用のPortになります。
F address
TBPN-L…-FDIO1-2IOLには3つのロータリースイッチがついており、Profisafe通信用のF-Addressを設定できます。
Safe electronic input (OSSD)
今回記事で使用するのはキーエンスのGL-R SEIRESセーフティライトカーテンなので、安全入力はOSSD入力として設定する必要があります。この接続と対応するパラメータ設定により、1番ピンと5番ピンのパルスはオフになります。5ピンの電源電圧は再びオンになります。
また、エラーを避けるため、センサーに5ピンケーブルを使用しないでください。
Input Data
こちらはTBPN-L…-FDIO1-2IOLの入力データMappingになります。
Output Data
こちらはTBPN-L…-FDIO1-2IOLの出力データMappingになります。
GL-R Series?
今回記事で使用するのはキーエンスのGL-R SEIRESセーフティライトカーテンです。実際記事を進める前に少し配線などの説明を致します。
Layout
こちらはGL-R SEIRESの外形図です。
Wiring
こちらGL-R SEIRESの配線図です。
OSSD?
OSSD は安全関連の制御出力であり、FSDやMPCEなどの外部機器(負荷)に接続します。GL-Rは、出力回路(OSSD)の診断を行うために内部制御回路で自己診断信号を生成します。これらの信号は、検出ゾーンに割り込みが存在しない場合、OSSDを周期的に一時的にOFF状態にします。
自己診断により内部制御回路にフィードバック信号(OFF信号)が入力された場合、GLRは出力回路が正常に動作していると判断します。このOFF信号が内部制御回路に戻らなければ、GL-Rは出力回路または配線に異常があると判断し、エラー状態に移行する。
GL-Rと機械制御系の安全関連部との配線は、安全性を確保するため、OSSD 1とOSSD 2の両方を必ず機械制御系の安全関連部に配線してください。機械制御システムの安全関連部分に片方のOSSDしか配線されていない場合、万一OSSDの誤動作が発生した場合、重傷事故や死亡事故を含む重大な被害が機械オペレータに及びます。
Implementation
Turkc Side
最初にTURCKのProfisafeIO TBPN-L…-FDIO1-2IOLを構築します。
Wiring
こちらはTURCKのProfisafeIO TBPN-L…-FDIO1-2IOLとキーエンスのGL-R SEIRESセーフティライトカーテンの配線です。
Install the Tools
今度は下記のサイトからTurckのSafety ConfiguratorをDownloadしてください。
注意するのはソフトウエアのDownloadするにはクーポンコードが必要で、ローカルのTurck Officeに問い合わせしてください。
https://www.turck.jp/ja/product/SW_Turck_Safety_Configurator
Install.exeをダブルクリックしソフトウエアのインストレーションを開始します。
言語を選び、Installで進みます。
しばらく待ちます…
Next>で進みます。
ライセンスに同意し、Nextで進みます。
Nextで進みます。
インストレーションを開始します。
しばらく待ちます…
Done!
インストーラーを閉じます。
次はライセンスの入力が求められ、Yesで進みます。
Coupon Codeを選び、先程ソフトウェアをDownloadしたときで使用したCoupon Codeを入力しましょう。
しばらく待ちます…
Done!
Create your project
TurckのSafety Configuratorを起動します。
File>New>New Workspaceで新しいWorkspaceを作成します。
Workspaceの保存先を設定します。
Checkを入れてOKで進みます。
プロジェクトで使用するSafety IO Blockを選びます。
PC->Monitor
ツールにあるPC->Monitorをクリックし、ConfigurationをモジュールにDownloadすることができます。
YesでネットワークInterfaceを設定します。
Interfaceの設定画面が表示されます。
Ethernetを設定し、Seach for deviceをクリックしネットワーク内のTurckデバイスを検索しましょう。
複数のNetwork Interfaceが接続されてる場合、ツールからエラーが表示されるので、使用しないInterfaceを無効にしましょう。
Done!Turckデバイスが見つかりました。
赤枠のボタンをクリックしTURCKデバイスを確認しましょう。
TURCKデバイスはこのように点滅します。
https://youtube.com/shorts/tXK0bZZvBF8
SetupボタンをクリックしTURCKデバイスを設定しましょう。
こちらの画面からIPアドレス・デバイス名などを設定できます。
Changer device nameのCheckboxを入れ、Profientデバイス名を変更できます。
次はアプリケーションに合わせてIPアドレスを設定しましょう。
Done!最後はOKボタンをクリックし設定を適用しましょう。
Yesでデバイスを再起動します。
Searchボタンをクリックしもう一度デバイスを検索します。
Done!IPアドレスが変更されます。
Configuration
IO Configuration
次はIOモジュールの安全入出力を設定します。
安全入力FDI 0/1はOSSDと接続してますが、DefaultはE-STOP接続になっています。その設定を変更するには”Expert”ボタンをクリックします。
I/O Type
I/O TypeをSafe input(OSSD)に設定してください。
Graphic
Grapicは実際のハードウェアにつながっているデバイスに変えましょう。
Device Type
Device Typeをアプリケーションに合わせてください。
Output
Output assogmentをクリックしProfinet/ProfisafeのFieldbus Bitを設定します。
こちらの画面からProfinet/Profisafe Controllerと交換するデータを設定できます。
F-CPU Input 17/18をProfisafe の1.6,1.7に設定します。
それはProfisafe F-Hostの1 Byteの6Bit目・7Bit目とLinkします。
また、同じF-CPU Input 17/18をFieldbus の0.6,0.7に設定します。
それはProfisafe F-Hostの0 Byteの6Bit目・7Bit目とLinkします。
Safety Program
次は簡単な安全プログラムを作成しましょう。キーエンスのOSSD入力がOFF Delayの確認してからF-HostのProfinet/Profisafe デバイスにFeedbackします。
Send
最後はPC->MonitorをクリックしプロジェクトをモジュールにDownloadしましょう。
Safety Passwordを設定します。
少々お待ち下さい…
Done!
プロジェクトを変更したエンジニアの名前とPasswordを入力しましょう。
WebServer
また、TURCKのProfisafe IO モジュールにはWeb Serverがついており、現在のモジュール情報を確認できます。
Siemens Side
次はSiemens側を構築します。
Download GSDML File
下記のLinkからTURCK Profisafe IOモジュールのGSDML FileをDownloadしましょう。
https://www.turck.de/en/product/6814053
New Project
TIAを起動し、Start>Create new project>プロジェクト名を入力し、Createで新規プロジェクトを作成しましょう。
Project viewをクリックします。
こちらはTIAをのプロジェクト作成画面になります。
Install GSDML
Options>Manage general Station description files(GSD)をクリックします。
GSDMLの管理画面が表示され、…ボタンをクリックします。
先程DownloadされたGSDML Folderを選びましょう。
Done!GSDML Fileが見つかりました。InstallでGSDML Fileをインストールします。
Done!
Add PLC
Project>Add new devieで新しいシーメンスのPLCを追加しましょう。
現在使用しているCPUの型式がわからない場合、Unspecified CPU 1500を設定しましょう。
Done!次は”Detect”でネットワークにあるS71500 CPUを検索しましょう。
Start Searchをクリックし、ネットワークにあるデバイスを検索します。
そして適切なCPUを選びましょう。
Connectで進みます。
Security Setting
TIA V18からCPUに関するセキュリティ設定を事前に設定する必要があります。今回は実際の運用ではありませんので、すべてのセキュリティ設定を無効にします。
Protects the PLC configuration data from the TIA..のCheckboxを外し、Next>>で進みます。
Only allow secure.. のCheckboxを外し、Next>>で進みます。
PasswordなしのFull accessに設定し、Next>>で進みます。
最後にもう一度確認し、Finishで設定を保存します。
Result
Done!S71516F-3が追加されました。
F-Activation
S71516F-3のF-Host機能を有効にするためにFail-safe>F-activationでSafety機能を有効にしましょう。
Program
これからシーメンスのプログラムを作成します。
PLC Data Type
DUT_Array_2bytes
こちらは長さ2Bytesの構造体です。
DUT_Array_4bytes
こちらは長さ4Bytesの構造体です。
DUT_Array_6bytes
こちらは長さ6Bytesの構造体です。
DUT_Array_8bytes
こちらは長さ8Bytesの構造体です。
DUT_Array_14bytes
こちらは長さ14Bytesの構造体です。
DUT_Array_64bytes
こちらは長さ64Bytesの構造体です。
DUT_diagnostic
こちらはTBPN-L…-FDIO1-2IOLとProfinet通信するときに使用する診断用のSlotのための構造体です。
DUT_IOLINKEVENT
こちらはTBPN-L…-FDIO1-2IOLとProfinet通信するときに使用するIOLinkイベンドのSlotのための構造体です。
DUT_SafetyStatus
こちらはTBPN-L…-FDIO1-2IOLとProfinet通信するときに使用するProfisafe StatusのSlotのための構造体です。
DUT_SafetyStatus_Connector
こちらはProfisafe Statusに各Portの状態をまとめる構造体になります。
DUT_SafetyStatus_FConfig
こちらはProfisafe StatusのF_Configをまとめる構造体になります。
DUT_SafetyStatus_SafetyUnit
こちらはProfisafe Statusの安全Unitをまとめる構造体になります。
DUT_TBPN_L1_Datas
最後は先程定義した構造体をまとめたDUT_TBPN_L1_Datasになります。
sDUT_Array_1bytes
こちらは長さ1Bytesの安全タイプ構造体です。
sDUT_Array_2bytes
こちらは長さ2Bytesの安全タイプ構造体です。
Tags
先ほど作成した構造体を使ってTagを定義しましょう。
Main_Safety_RTG1
次は安全プログラムを作成します。
Network1はTBPN-L1-FDIO1-2IOLがQBADが発生したときをリセットするロジックです。
Network2はすべてのSafety DevicesをリセットするFunction Blockを呼び出します。
Network3はTBPN-L1-FDIO1-2IOLからのセーフティライトカーテン信号を可視化します。
DB_Data
こちらはTBPN-L1-FDIO1-2IOLの情報を格納するData Blockです。
Function Block
FB_TBPN_L1_Diagnostic
こちらはTBPN-L1-FDIO1-2IOLの診断情報を構造体にDecodeするためのFunction Blockです。
FB_TBPN_L1_IOLinkEvent
こちらはTBPN-L1-FDIO1-2IOLのIOLINK Eventを構造体にDecodeするためのFunction Blockです。
FB_TBPN_L1_SafetyStatus_Connector
こちらはTBPN-L1-FDIO1-2IOLのPort情報を構造体にDecodeするためのFunction Blockです。
FB_TBPN_L1_SafetyStatus_FConfig
こちらはTBPN-L1-FDIO1-2IOLのF-Config情報を構造体にDecodeするためのFunction Blockです。
FB_TBPN_L1_SafetyStatus_ProfiSAFEErrorCode
こちらはTBPN-L1-FDIO1-2IOLのProfiSAFEエラー情報を構造体にDecodeするためのFunction Blockです。
FB_TBPN_L1_SafetyStatus_SafetyUnit
こちらはTBPN-L1-FDIO1-2IOLの安全Unit情報を構造体にDecodeするためのFunction Blockです。
FB_TBPN_L1_SafetyStatus
こちらはTBPN-L1-FDIO1-2IOLのSafety情報を構造体にDecodeするためのFunction Blockです。
FB_TBPN_L1
最後は先程作成したFunction Blockをまとめて呼び出しましょう。
Main OB1
最後はOB1にFB_TBPN_L1を呼び出します。
Add Turck TBPN-L1-FDIO1-2IOL Devices
ProfinetネットワークにTURCKのTBPN-L1-FDIO1-2IOLを追加します。
TBPN-L1-FDIO1-2IOLのFirmwareに合わせて適切なGSDML Fileを追加しましょう。
Done!
Assign Network
次はTURCKのTBPN-L1-FDIO1-2IOLをProfinetに割り付けます。
Done!
Assign IP
次はIPアドレスを設定します。
現在デバイスのIPアドレスが表示されます。
実際のアプリケーションに合わせて設定しましょう。
Device Name
Profientのデバイス名はProperties>PROFINET interface>ETHERNET interfaceで設定できます。
もしTIAツールに自動生成されたデバイス名を変更したい場合、”Generate PROFINET devicer name automatically”のCheckboxを外し、PROFINET device nameを入力しましょう。
Configure Slot
今度はTBPN-L1-FDIO1-2IOLの各Slotを設定します。
Hardware Catalog>CatalogにTBPN-L1-FDIO1-2IOLのSlotにModule追加しましょう。
Done!
Profisafe Address
Profisafe通信にはデバイスのF-Addressを実機に合わせる必要があります。
黄色ICONがついてるSlotを選択し>PROFIsafe>F_Dest_Addの設定を実機に合わせて行いましょう。
CRC
次はパラメータCRCをTIAプロジェクトに設定する必要があります。
先ほどTURCK Safety ツールからパラメータのCRC値が表示されました。
そのCRC値をF_iPar_CRCに入力しましょう。
Assign device name
最後はデバイス名を実機に振り分けましょう。
Update listでProfientネットワークにあるデバイスを検索します。
TBPN-L1-FDIO1-2IOLを選び>Assign nameをクリックします。
Done!
Download
Hardware ConfigurationとプログラムをCPUにDownloadしてください。
Result
もしCRC値が正しく設定されてない場合はTBPN-L1-FDIO1-2IOLにCRC Mismatchのエラーが表示されます。
TBPN-L1-FDIO1-2IOLにQBAD信号がなく、モジュールの状態は正常です。
Profinetにもネットワークのエラーもありません。
こちらの動画で実際の動作を確認できます。
Downlaod Project
こちらのLinkからSampleプロジェクトをDownloadしましょう。
https://github.com/soup01Threes/Siemens/blob/main/Project_TestingWIthTurck_TBPN-L1-FDIO1-2IOL.zap18