この記事では、Profisafe/Profinet を Murrelektronik の 55510, IO-link ポート付き Profisafe/Profinet IOブロックで構成する方法を1から説明します。また、IO-link デバイスにはTurck と Nassmagnet を使用します。
さ、始めよう。
Reference Link
Reference Video
Siemens.Murrelektronik 55510 Blockを使ってみよう
55510?
今回記事の中に使用するMURRELEKTRONIK社の55510 BlockIOではProfisafe・Profinet対応できる上位モジュールです。このモジュールでは以下の特徴があります。
- PROFINET/PROFIsafe/IO-Link・小型デバイス、メタルバージョン
- US1~US2 電流的に分離された供給ライン
- PushPull, 5-pin Power Connector
- スイッチ内のIRTループスルー
- fast start-up機能対応
- LLDP
- MRP機能対応
- Shared Device機能対応
- PROFIenergy機能対応
Layout
こちらはMURRELEKTRONIK社の55510 のLayoutになります。
Rotary Switch
MURRELEKTRONIK社の55510にはProfisafe設定できるロータリースイッチがあります。
Safety Data Mapping
次は55510のMappingを説明します。
INPUT
こちらはX0-X2の安全入力データMappingです。
Output
こちらはX3の安全出力データMappingです。
Non-Safety Data Mapping
これから非安全データのMappingを説明します。IOLINK部分はただ入出力データのByte占有数の違いだけなので、詳しく説明しません。
ですが、X4とX5はPortベース・Pinベースの設定によってMappingが異なりますので、ご注意ください。
Port based
Port Basedを設定した場合、X4とX5のMappingは以下になります。
Pin Based
Pin Basedを設定した場合、X4とX5のMappingは以下になります。
How to Config?
TIAからX4/X5を選択すると、Pin/Port based IO Layoutという項目がありますので、アプリケーションに合わせて設定しましょう。
NASS Smart Connector
こちらはnassmagnet社のSmart Connectorで、デバイスの特徴としては:
- M12
- IO-Link V1.1
- PWM 制御l
- 温度監視
- LED color settings
などなどです。
Process Data‐Input
こちらはNASS Smart Connectorの入力データMappになります。
Process Data‐Output
こちらはNASS Smart Connectorの出力データMappになります。
Turck IOLU69X2?
TurckのIOL69X2は誘導センサーで、なおかつアナログ出力およびIO-Link通信が付いています。そのIOL69X2は、
- M12
- IO-Link V1.1
- 12Bit Data 0.2‐3mm
- Temperature Monitoring
- Analog output, 0…10 V (2…10 V parameterizable)
の特徴があります。
Process Data
こちらはIOLU69X2の入力データになります。
Device in the PROFINET System
MVK デバイスは PROFINET IO デバイスであ り、PROFIsafe デバイスでもあります。
このデバイスは “PROFIsafe – Profile for Safety Technology on PROFIBUS DP and PROFINET IO” バージョンに準拠した PROFIsafe デバイスになります。
F-Controllerは安全な入力データを処理し、安全な 出力データを PROFIsafe スレーブに周期的に送信します。PROFIsafe のテレグラムは制御 ビットとステータスビットを含みます。テレグラムはマスタ/スレー ブの状態を通知し、必要であれば状態変更します。
Shared Device?
PROFINET IO 機能で、2 つの IO コントローラから IO デバイスにアクセスできます。
Advantages?
標準制御装置とフェールセーフ制御装置を備えたシステムで共有装置の使用ができます。
Safety SubSlotはSafety Controllerに割り当てられ、Normal Subslotは標準Controllerに割り当てられる。また、すべてのSubSlotはSafety Controllerに割り当てられる。
Implementation
MURRELEKTRONIK Side
Download GSDML
下記のLinkからMurrelektronikの55510 MVK IO BlcokのGSDML FileをDownloadします。
https://shop.murrelektronik.com/en/I-O-Systems/MVK-Metal/MVK-Fusion-55510.html
Download Safety Configuration Tool
次はSafety Configuration toolもDownloadし、インストールしてください。こちらのツールではMVK IO BlockのCRCを計算するツールになります。
Configuration
こちらは今回のConfigurationです。
Siemens Side
New Project
TIAを起動し、Start>Create new project>プロジェクト名を入力し、Createで新規プロジェクトを作成しましょう。
Project viewをクリックします。
こちらはTIAをのプロジェクト作成画面になります。
Add PLC
Project>Add new devieで新しいシーメンスのPLCを追加しましょう。
今回使用するのはCPU 1212FC DC/DC/DCのProfisafe マスターに対応するCPUになります。
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!S71200 CPUが追加されました。
IP Configuration
CPUを選び>PROFINET interfaceを開き、CPUのIPアドレスを設定しましょう。
Add murrelektronik
次はmurrelektronikの55510 IO BlockをProfinet ネットワークに追加します。
Install GSDML
Options>Manage general Station description files(GSD)をクリックします。
GSDMLの管理画面が表示され、…ボタンをクリックします。
先程DownloadされたGSDML Folderを選びましょう。
Done!GSDML Fileが見つかりました。InstallでGSDML Fileをインストールします。
Done!
Add Devices
右のカタログ画面から55510を検索し、55510 MVK PN..のデバイスをDropしましょう。
Done!Murreletronikの55510がProfinet ネットワークに追加されました。
Assign Profinet
Not assignedのところをクリックし、Murreletronikの55510 IO BlockをCPU S71200のProfietネットワークと接続しましょう。
Done!
Change IP
今度はMurreletronikのデバイスのIPアドレスを変更するために、紫の目アイコンをクリックします。
Profinet上にあるすべてのデバイスのIPアドレスが表示されています。
IPアドレスをアプリケーションに合わせて調整してください。
Configure Device Name
次はMurreletronikのIO Blockのデバイス名を変更します。TIAではDefaultで自動的にデバイス名を生成しますが、もし変更したい場合、PROFINET項目にある”Generate PROFINET device name automatically”のCheckboxを外し、アプリケーションに合わせてデバイス名を設定してください。
Configure Slot
次は各Slotを設定します。
下図のように各Slotもアプリケーションに合わせて変更可能です。
X0-X3
X0からX3は安全入出力のPortなので、特に変更する必要がありませんが、I/Qアドレスを揃えたほうが、PLC Tagsを定義するとき便利になります。
Safety Parameters
次はProfisafeのパラメータを変更します。Slot2 1を選び>General>PROFISAFEの項目に安全通信に関するパラメータを設定できます。
F_Dest_AddrはF-DevicesのPROFISAFEアドレスなので、Murreletronik 55510本体にあるロータリースイッチの設定に合わせて設定してください。
また、Module ParametersにはX0-X3のPortのパラメータを設定できます。
今回の記事ではTest Signalを有効にし、2 Channel入力を変更します。
Configure CRC
安全通信にはパラメータのCRC Checkがあり、現在安全通信を行うデバイスのパラメータが変更されていないことを、F-HOST側に確認されます。また、もしF-HOSTとF-DevicesのCRC値が一致しない場合、通信は確立できませんので、注意してください。
Murreletronik社では55510 IO BlockのCRC計算ツールが提供されていますので、Slot 2 1を右クリックし>Start device toolでそのツールを起動します。
Startでツールを起動しましょう。
Done!こちらはMurreletronikのCRC計算ツールです。
すべてのPortのパラメータ設定を確認し、”I have checked the parameter entries!”のCheckboxを入れ、”Calcalate F_iPar_CRC”のボタンをクリックします。
Done!CRCが計算しました。表示ForamtをHexに変更し、”Copy F_iPar_CRC to the clipboard”のボタンをクリックします。
そのCRC値をF_iPar_CRCに貼り付けましょう。
X4‐X5
次はX4-X5の入出力Portの設定です。
Module parameters>General parameters>Pin/port-based IO layoutの設定項目で、X4-X5のMappingはPortベースになるか、Pinベースになるかをアプリケーションにアプリケーション設定しましょう。
X6
X6はNass magnet社のIO LinkデバイスSmart Connecotrと接続されていますので、IOL_I/OのSlotをX6に追加してください。
X7
X7はTurck社のIO LinkデバイスIOL69X2と接続されていますので、IOL_I/OのSlotをX7に追加してください。
Program
PLC Data Type
DUT_Murr_55510_SDI_b0
こちらはMurreletronik 55510のX0-X2の安全入力現在値のデータタイプになります。
DUT_Murr_55510_SDI_b3
こちらはMurreletronik 55510のX3の安全出力現在値のデータタイプになります。
DUT_Murr_55510_SDIs
こちらはX0からX2までをまとめたデータタイプになります。
DUT_Murr_55510_SDO_b0
こちらはX3の安全出力コマンドデータ・タイプになります。
DUT_Murr_55510_SDOs
こちらはMurreletronik 55510の安全出力をまとめたデータタイプになります。
DUT_Murr_55510_X4X5_PortBased_b0
こちらはMurreletronik 55510のX4/X5 非安全入出力データをまとめた構造体になります。
DUT_Murr_55510_X4X5_PortBased_Data
こちらはSiemens CPUのDBに定義する、Murreletronik 55510のX4/X5 非安全入出力データをまとめた構造体になります。
DUT_Nassmagnet_SmartConnector_IN
こちらはNass magnet 社のIO LinkデバイスSmart ConnectorのProcess Input Dataをまとめた構造体になります。
DUT_Nassmagnet_SmartConnector_OUT
こちらはNass magnet 社のIO LinkデバイスSmart ConnectorのProcess Output Dataをまとめた構造体になります。
DUT_Nassmagnet_SmartConnector_Data
こちらはNass magnet 社のIO LinkデバイスSmart ConnectorのProcess Input/Output Dataをまとめた構造体になります。
DUT_TurckIOLU69X2_IN
こちらはTurck社のIO LinkデバイスIOLU69X2のProcess Input Dataをまとめた構造体になります。
DUT_TurckIOLU69X2_Data
こちらはTurck社のIO LinkデバイスIOLU69X2のProcess Data(DB定義用)をまとめた構造体になります。
PLC Tags
各Portの設定を完了したので、次はタグを追加するために、PLC Tags Folderを開きます。
先ほどHardware Configurationで各Port定義したIOアドレスに合わせてタグを追加しましょう。
Data Block
プログラムに使用するDBを定義します。
DB_55510
こちらはMurreletronik 55510にある各Portにデータがあります。
DB_SafetyExchange
こちらは安全データと非安全データを交換する領域になります。
Function Block
次はMurreletronik IO-LINK Masterや各IO-LINKデバイスのFunction Blockを定義します。
FB_Nassmagnet_SmartConnector
こちらはNass magnet 社のIO LinkデバイスSmart ConnectorのFunction Blockになります。
Interface
Intetfaceには3つのInoutパラメータがあり、Murreletronik 55510経由で取得したIO-LINKデータ・送信するコマンド・そしてDBにまとめる構造体になります。
NTW2‐5
Network2-5はIO-LINK経由で取得したデータを別の変数に転送するプログラムになります。
NTW6-8
Network6‐8もIO-LINK経由で取得したデータを別の変数に転送するプログラムになります。
NTW9-10
Network9-10はNass magnetのSmart Connectorに出力するコマンドになります。
FB_TurckIOLU69X2
こちらはTurck社のIO LinkデバイスIOLU69X2のFunction Blockになります。
Interface
Intetfaceには2つのInoutパラメータがあり、Murreletronik 55510経由で取得したIO-LINKデータ・そしてDBにまとめる構造体になります。
NTW1-3
Network1-3はIO-LINK経由で取得したデータを別の変数に転送するプログラムになります。
NTW4-5
Network4-5はTurckのIO-LINKデバイスから計測した距離値を0.2-3mmにScalingします。
FB_55510
こちらはMurreletronik 55510のFunction Blockですが、各Portにインストールされているデバイスに応じて、先程定義したFBを呼び出します。
Interface
Turck・Nass MagnetのFunction Blockを使用するに必要なInstanceを定義します。
NTW1
こちらはTurck IOLINK デバイスIOLU69X2のFunction Blockになります。
NTW2
こちらはNass Magnet IOLINK デバイスのSmart ConnectorのFunction Blockになります。
NTW3
こちらはSafety Function Blockに送信するリセットボタン信号になります。
NTW4
こちらはX4のランプ出力を制御するプログラムです。
Main_Safety_RTG1
最後は安全プログラムを作成します。
Interface
Interfaceには非常停止とグローバルリセットのFunction BlockのInstanceします。
NTW1
こちらはETSOP1のSiemens 標準のSafety Function Blockを利用し非常停止を制御するプログラムです。
NTW2
こちらはProfisafeモジュールをリセットするSafety Function Blockです。
NTW3
こちらは55510をリセットするプログラムです。
OB1
最後はOB1でFunction Blockを呼び出しましょう。
Download
Hardware ConfigurationとプログラムをCPUにDownloadしてください。
Result
Done!Siemens S7 1212FCと55510のProfinet・Profisafe通信が整理しました。
次はMURRELEKTRONIKのDevices ToolsからIOLINK デバイスの状態を確認しましょう。
Done!55510が見つまりました。
該当するデバイスを右クリック>Assignをクリックします。
Done!デバイスをプロジェクトにUploadしました。次はGo Onlineボタンをクリックします。
Yesで進みます。
次はCheck DeviceでIOLINK Portと接続されているデバイスと照合します。
Done!Take devices into EngineeringをクリックしデバイスをプロジェクトにUploadしましょう。
Done!
各PortのIOLinkデバイスもちゃんと認識しました。
こちらの動画でMURRELEKTRONIK 55510の安全IOの動作を確認できます。
Murrelektronik.MVK PN FDI6/3 FDO2/1 DIO4 IOL2 IRT PP Safety IO Operation
こちらの動画でMURRELEKTRONIK 55510とTurck IOLINK デバイスの連携を確認できます。
Murrelektronik.MVK PN FDI6/3 FDO2/1 DIO4 IOL2 IRT PP IOLink with Turck IOLU69X2
こちらの動画でMURRELEKTRONIK 55510とNassmagnet IOLINK デバイスの連携を確認できます。
Murrelektronik.MVK PN FDI6/3 FDO2/1 DIO4 IOL2 IRT PP IOLink with Nassmagnet SmartConnector
Download
こちらのLinkからプロジェクトをDownloadしてください。
https://github.com/soup01Threes/Siemens/blob/main/ProjectMurr-55510-en.zap18