今回の記事では、Safety Controllerとして OMRON NX102-9000 + NX-SL5500 を使用し、CIP Safety Targetとして NXR-SXD1204-CST をEtherNet/IPネットワーク上に接続します。
NXR-SXD1204-CST側には、非常停止スイッチとSafety Output機器を接続し、Safety Inputの状態をCIP Safety経由でNX-SL5500へ送信します。
さ、FAを楽しもう!

NXR-SXD1204?
NXR-SXD1204-CSTは、OMRONのCIP Safety対応・耐環境型リモートSafety I/Oです。IP67対応のため盤外や機械近傍に設置でき、EtherNet/IP経由でSafety PLCと接続できます。

主な特徴
- Safety Input 12点
- Safety Output 4点を持ち
- Remote I/Oだけでなく、本体内部に簡易Safety Logicを持たせる
- Safety Input 12点 / Safety Output 4点を持つ
- 非常停止、Safety Door Switch、Light Curtainなどを直接接続できる。
- IP67で制御盤内ではなく機械近傍への設置
- 簡易Safety Logicを本体内で実行可能で、ローカルに安全判断できる。
- Safety PLC側では、単純なI/Oだけでなく各Input/OutputのStatusや診断情報まで取得可能
- Safety Input Assemblyは複数あり、2 byte / 5 byte / 9 byteから必要な診断量に応じて選べる
- Type 1 / Type 2a / Type 2b SafetyOpenに対応し、Configuration方法を選択できる。
- M12コネクタ中心の構成で、現場に配線しやすい
- Web UIを持っており、I/O状態や診断、設定確認がしやすい
- DLRにも対応しており、EtherNet/IPのリング構成も可能
製品構成
また、今回オムロンは2つの製品を同時リリースしています。
- NXR-SXD1204-CST
- NXR-SXD1204B-CST

項目 | NXR-SXD1204-CST | NXR-SXD1204B-CST |
|---|---|---|
Safety Input | 12点 | 12点 |
Safety Output | 4点 | 4点 |
Safety Input Port | P1~P6 | P1~P4 |
Safety Output専用Port | P7~P8 | なし |
Safety I/O Port | なし | P5~P6 |
P5/P6の内容 | Safety Input | Safety Input + Test Output + Safety Output |
Safety Outputの場所 | P7/P8 | P5/P6内 |
Safety Output最大負荷電流 | 2.0 A/点 | 0.7 A/点 |
I/Oコネクタ | M12 A-coded 5pin | P1~P4: 5pin / P5~P6: 8pin |
システム構成例
こちらは自動車製造ラインの各工程・エリアにNXR-Sを分散配置し、非常停止やライトカーテンなどの安全機器を各NXR-Sへ直接接続する構成例です。
従来、Safety SensorやE-STOPから盤内のSafety I/Oまで長い配線を引く構成では、設備が大きくなるほどSafety配線が増えていきます。この構成ではNXR-SをSafety Deviceの近くに配置できるため、Safety Scanner→CIP Safety→NXR→短いハード配線→Safety Deviceとできます。

特長
電源とSafety信号を1本
NXR-Sでは、ライトカーテンなどのSafety Deviceに対して、電源とSafety信号を1本のケーブルで接続できる構成を想定しています。

Smart Click
Smartclickコネクタを採用しており、締結時にトルクレンチを必要とせず、配線作業の簡素化を狙っています。

内蔵ロジック
さらに、NXR-S本体にはあらかじめ用意されたSafety Applicationに加え、Add-on ApplicationやUser-defined Application、Logic機能を搭載しています。そのため、単純なRemote Safety I/Oとして使うだけでなく、NXR-S自身でSafety Logicを実行することもできます。

図の動作例では、非常停止スイッチとSafety Light CurtainをNXR-Sへ接続しています。非常停止スイッチを押した場合はSegment AとSegment Bの両方を停止し、一方でSafety Light Curtainが遮光された場合は、Segment Aは運転を継続し、Segment Bだけを停止する例が示されています。

WEB UI対応
NXRは専用のソフトウェアは不要で、内蔵のWeb UIにより、トラブルシューティングやユニットの交換などが行えます。

Type1 / Type2a / Type2b のSafetyOpen方式
NXR-SはCIP Safety Targetとして、Type1 / Type2a / Type2b のSafetyOpen方式を、立上げ・運転・変更といったフェーズに応じて使い分けられる設計になっています。
特にType1では、I/O Block Parameterだけでなく、User-defined Logicまで自動設定可能です。これにより、NXR-S側でSafety Logicを実行する分散制御と、Originator側からのConfiguration管理を組み合わせることができます。
また、1台のNXR-Sが複数のCIP Safety Originatorと通信できるため、OriginatorごとにSafety DeviceやNXR-Sを重複配置する必要を減らし、システム構成を簡素化できます。
国際安全規格への対応
NXR-Sは、グローバル市場での長期使用を想定し、国際的なSafety Standardへの適合を重視して設計されています。
資料では、IEC 61508およびISO 13849-1:2023(第4版)への対応が明記されています。さらに、北米向けではUL FSPC、欧州向けではMachinery Directiveへの適合が示されています。
これにより、NXR-Sは日本国内だけでなく、北米・欧州を含むグローバル設備への展開を想定したSafety I/Oとして位置付けられています。

CIP Safety 通信?
CIP Safetyは、EtherNet/IPを利用して機能安全データを伝送するためのSafety Protocolです。CIP Safetyでは、Connectionを開始するデバイスをOriginator、接続を受けるデバイスをTargetと定義しています。NXR-SはCIP Safety Targetとして動作し、上位のSafety Controllerと周期的にSafety I/O Dataを交換します。これにより、現場の非常停止やSafety Sensorなどの入力状態をネットワーク経由で上位へ伝送するとともに、Safety ControllerからのSafety DataをNXR-S側で受信して安全制御に利用できます。

オープンタイプ
Open Typeは、CIP Safety Connection確立時のConfiguration確認方法を決める設定です。
OriginatorからTargetへConnectionを開設する際に指定し、Type 1 / Type 2a / Type 2bによって、Configurationの転送やSafety Signatureの照合方法が異なります。
Type | SafetyOpenにConfiguration Data | SCID | Target側の動作 |
|---|---|---|---|
Type1 | あり | — | Safety DeviceのConfigurationに必要なデータをSafetyOpenで受け取る |
Type2a | なし | 0以外 | Target側にあるConfigurationのSCIDと比較し、一致した場合だけ接続を受け入れる |
Type2b | なし | 0 | SCIDチェックをスキップして接続 |

コネクションタイプ
CIP Safetyでは、通信方式としてMulticastとPoint-to-Pointの2種類を選択できます。
Multicastは、1つのInput Assemblyを1つのPacketで複数のOriginatorへ配信する方式です。同じSafety Dataを複数のControllerで受信したい場合に、通信負荷を抑えやすいのが特徴です。
一方、Point-to-Pointは、各Originatorに対して個別にDataを送信する方式です。そのため、同じInput Assemblyを複数のOriginatorへ送る場合は、その分だけ通信が増えます。
なお、Multicastで同じInput Assemblyを複数のOriginatorへ配信する場合は、各Connectionで Connection Type、Connection I/O Type、EPI、Timeout値 を揃える必要があります。
また、Multicast Packetがネットワーク全体へ不要に広がると通信負荷の原因になるため、通常はMulticast Filter機能を持つSwitching Hubを使用して、必要なNodeだけに配信する構成が推奨されます。

EPI(Expected Packet Interval)
EPI(Expected Packet Interval)は、CIP Safety通信でSafety I/O Dataをどの周期で更新するかを決める設定値です。
EtherNet/IPでは、このEPIをConnectionごとに設定し、その周期に従ってデータ交換を行います。
EPIを短くするとData更新は速くなりますが、その分Network TrafficやDevice負荷は増加します。逆に、EPIを長くすると通信負荷は下がりますが、Safety Dataの更新間隔も長くなります。
そのため、EPIは単純に「短いほどよい」というものではなく、使用するSafety ControllerやTarget Deviceの性能、Connection数、必要なResponse Timeなどを考慮して設定する必要があります。各Deviceには設定可能なEPIの範囲があるため、その仕様に従って適切な値を選択します。

I/O Assembly
I/O Assemblyは、CIP Safety OriginatorとTargetの間で周期的にやり取りするSafety I/O Dataのまとまりです。
NXR-Sでは複数のI/O Assemblyが用意されており、必要な情報量に応じて使用するAssemblyを選択します。1本のCIP Safety Connectionには、1つのI/O Assemblyを割り当てます。
Input側には、例えば以下のAssemblyが用意されています。
- 0x25C:2 Byte
- 0x3C0:5 Byte
- 0x3C1:9 Byte
Assemblyごとに含まれる情報量が異なり、基本的なSafety Inputだけを扱うものから、各ChannelのStatusやSafety Outputの状態など、より詳細な診断情報を含むものまで選択できます。
そのため、単純なSafety I/O監視であれば小さいAssemblyを、保全や故障診断まで重視する場合は情報量の多いAssemblyを選ぶ、といった使い分けが可能です。

セーフティIO動作
セーフティ入力機能
非常停止スイッチやセーフティリミットスイッチのような接点式Safety Deviceは、Safety Input(Si)とTest Output(T)を組み合わせて接続します。

デュアルチャネル構成では、2系統の接点をそれぞれ独立したSafety Inputへ接続し、対応するTest Outputから監視用信号を供給します。図の例では、T00-Si00 と T01-Si01 をそれぞれ1つのチャネルとして使用しています。
このTest Outputを利用することで、単に接点のON/OFF状態を見るだけでなく、配線の短絡や一部の異常を検出しやすくなります。
なお、Safety InputとTest Outputは同じ番号同士で組み合わせて使用します。例えばSi00にはT00、Si01にはT01を対応させます。また、この構成ではT00、T01のTest Output Modeを 「Test Output」 に設定します。

Test Output端
NXR-SのTest Output端子は、Safety Inputを補助するための出力として使用されます。
用途に応じて、Test Pulse付き出力、24V電源供給、Standard Outputとして使い分けることができます。
メカ接点式Safety Deviceでは、Test Output モードを選ぶことで、一定間隔のTest Pulseを含むDC24Vを出力し、入力側でその信号を監視します。これにより、単純なON/OFFだけでなく、配線異常の検出にも利用できます。
一方、Test Pulseを必要としない接点機器や半導体出力機器に対しては、Power Supply モードで連続DC24Vを供給できます。半導体出力機器の電源供給用途としても使用可能です。
また、Standard Output モードでは、Test Output端子を通常のデジタル出力として使用できます。表示灯やPLC入力への信号出力などに利用できますが、これはSafety機能ではなく、非安全用途の出力です。
Test Output Mode | 主な用途 | 出力内容 |
|---|---|---|
Test Output | メカ接点Safety Deviceの監視 | Test Pulse付きDC24V |
Power Supply | 接点機器・半導体機器への電源供給 | 連続DC24V |
Standard Output | 表示灯、PLC入力など | 通常の非安全デジタル出力 |

テストパルス評価機能
テストパルス評価機能は、Test Outputから出力したPulse信号をSafety Input側で監視し、外部機器や配線の異常を検出する機能です。
メカ接点式Safety Deviceを使用する場合、Test Output端子から一定周期でTest Pulseを含むDC24Vを出力し、その信号が接点を経由してSafety Inputへ戻ってくるかを確認します。
これにより、単純な入力ON/OFFだけでなく、入力信号線と電源線の短絡や、他の入力信号線との短絡などの配線異常を検出できます。
デュアルチャネルで使用する場合は、たとえば T00-Si00、T01-Si01 のように、同じ番号のTest OutputとSafety Inputを組み合わせて使用します。

デュアルチャネル評価機能
Dual Channel Evaluationは、2つのSafety Inputを1組として監視し、両者の状態が正しく連動しているかを確認する機能です。
片方のInputが変化してから、もう片方が変化するまでの時間を監視し、その差が設定した Discrepancy Time を超えた場合は異常と判定します。
Channel Modeには、2つのInputが同じ状態になることを期待する Dual Channel Equivalent Input と、互いに反対の状態になることを期待する Dual Channel Complementary Input があります。
Discrepancy Timeは 10~64000 ms の範囲で設定でき、5 ms単位で調整できます。工場出荷時は500 msです。

Mode | 正常と判断されるInput状態 |
|---|---|
Dual Channel Equivalent | 0/0 または 1/1 |
Dual Channel Complementary | 0/1 または 1/0 |
入力フィルタ機能
Input Filter機能は、Safety Inputに接続された外部機器のチャタリングやノイズによる誤検出を抑えるための機能です。
入力がONからOFFへ変化するとき、またはOFFからONへ変化するときに一定の遅延時間を設け、その時間より短い一時的な信号変化を無視することで、入力を安定させます。
NXR-Sでは、ON→OFF Delay と OFF→ON Delay を個別に設定でき、どちらも 0~1600 ms、5 ms単位で調整できます。工場出荷時は0 msです。
遅延時間を長くするとノイズやチャタリングへの耐性は高くなりますが、その分Safety Inputの応答も遅くなります。そのため、ノイズ対策だけでなく、必要なSafety Response Timeとのバランスを考えて設定する必要があります。

入力エラーラッチ時間
入力エラーラッチ時間は、Safety Inputで異常を検出したあと、その異常状態を一定時間保持するための設定です。
瞬間的に異常条件が消えてもすぐ正常へ戻さず、設定した時間だけエラー状態を継続させることで、Originator側が確実に異常を認識できるようにします。
設定範囲は 0~65530 ms、10 ms単位です。0 msに設定した場合はLatchしません。工場出荷時は 1000 ms です。
設定値を決める際は、NXR-SとCIP Safety Originator間のNetwork Response Timeも考慮し、異常を取りこぼさず検出できる時間に設定する必要があります。
なお、異常原因を取り除いたうえで、該当Safety InputをInactive(OFF)状態にするとErrorが解除されます。

セーフティ出力機能
NXR-SのSafety Outputは、接続する外部Safety Deviceの診断にも利用できます。
出力はPNP方式で、Safety Relay、Contactor、Solenoid Valveなどを接続できます。
接続する機器やChannel構成に応じて、Single Channel / Dual Channel、およびTest Pulseの有無を設定します。
Test Pulseを有効にした場合は、出力信号に診断用Pulseを重ねることで、出力回路や外部配線の異常検出に利用できます。一方、接続機器がTest Pulseに対応していない場合は、Test Pulseなしで使用します。

EDM フィードバック
EDMは External Device Monitoring(外部機器監視) のことです。
ここでいう外部機器は、たとえば Safety RelayやContactor です。NXR-SがSafety OutputをOFFにしたとしても、実際のContactor接点が溶着していたら、機械側は止まりません。そこで補助接点などをSafety Inputへ戻して、「本当に外部機器がOFFになったか」 を監視します。

出力遅延
出力遅延は、Safety OutputのON/OFF切り替えを意図的に遅らせる機能です。
User-defined Applicationでは、外部機器の動作特性に合わせて、Safety OutputがONからOFF、またはOFFからONへ変化するまでのDelayを設定できます。
ON→OFF Delay は、MotorやBrakeなどの機械的な停止特性を考慮し、急停止による機械損傷を避けたい場合に使用します。
OFF→ON Delay は、外部機器が復帰したあと、動作が安定してからSafety OutputをONさせたい場合に使用します。
設定値は 0~1500 ms の範囲で、100 ms単位です。工場出荷時は0 msです。

コンフィグレーションロック
Configuration Lockは、NXR-Sに設定したSafety関連のConfigurationを不用意に変更されないよう保護する機能です。
Lockを有効にすると、Safety ParameterやSafety Applicationなど、Safety動作に関わる設定の変更を制限できます。
これにより、立上げ完了後や量産運転中に、誤操作や意図しない設定変更によってSafety Configurationが変わることを防止できます。
Configuration Lockは1台ずつ設定することも、Sysmac Studio上に登録された複数のNXR-Sへまとめて適用することも可能です。設定・解除はSysmac StudioまたはWeb UIから行えます。

コンフィグレーションロックを有効にすると、NXR-Sの主要なSafety設定や通信設定を変更できなくなります。
Lock状態は本体のLOCK LEDで確認でき、点灯中はLock状態、点滅または消灯時はLock解除状態です。
Lockの対象には、TUNIDを含むCIP Safety通信設定、Safety Application設定、EtherNet/IPやTCP/IPなどの通信設定が含まれます。また、I/O Wiring Check、BackupからのRestore、Memory All Clearといった操作もLock中は実行できません。
さらに、Configuration Lock後にロータリースイッチの設定を変更して電源を入れると、設定変更を検出してユニットが動作停止する仕様になっています。つまり、Lock後はSoftware設定だけでなく、Hardware側のMode選択も含めて構成を保護する仕組みになっています。
Lock対象 | 主な内容 |
|---|---|
CIP Safety通信設定 | TUNIDを含むSafety通信設定 |
Safety Application設定 | Add-on / User-defined / Remote I/O mode用Application |
非Safety通信設定 | EtherNet/IP、TCP/IP、LINK、Ethernet Port、LLDPなど |
実行禁止機能 | I/O Wiring Check、Restore、Memory All Clear |
Safety Assembly
次はSafety Assemblyを紹介します。
Safety Input Assembly
Safety Input Assemblyには、単純なSafety InputのON/OFFだけでなく、各InputのStatus、Test OutputやSafety Outputの状態、電源異常、Connection状態などの診断情報も含めることができます。
そのため、上位のSafety Controllerでは「入力がONかOFFか」だけでなく、その信号が正常な状態なのか、Outputに異常がないか、Connectionが確立しているかといった情報まで確認できます。
要素 | 意味 |
|---|---|
Safety Input N | Si入力の論理値。0=OFF/異常中、1=ON |
Safety Input N Status | 各Si入力の正常/異常状態 |
Safety Input Status | 全Safety Inputの集約Status |
Test Output N Monitor | Test Output端子の実際のON/OFF状態 |
Test Output N Status | Test Output端子の正常/異常状態 |
Safety Output N Monitor | So出力端子に実際に出ているON/OFF状態 |
Safety Output N Status | 各Safety Outputの正常/異常状態 |
Safety Output Status | 全Safety Outputの集約Status |
Output Power Supply Error Flag | Output用電源の異常有無 |
Application Number | 現在のSafety Application番号 |
Cnxn Status | CIP Safety Connection確立状態 |
Safety Output Assembly
Safety Output Assemblyは、CIP Safety OriginatorからNXR-Sへ送る出力データのまとまりです。実際のSafety Output端子を制御するデータだけでなく、Test OutputをStandard Outputとして使うためのデータや、NXR-S内部Logicへ渡すRemote Outputも含まれます。
要素 | 意味 |
|---|---|
Safety Output N | 物理Safety Output SoN のON/OFF |
Standard Output N | Test Output端子 TN を非安全の通常出力としてON/OFF |
Remote N Output M | NXR-S内部Logicへ渡すSafety信号 RoN-M のON/OFF |
Implementation
これからプログラムを構築します。
ロータリスイッチ設定
NXR-Sには、動作モードやIPアドレス設定に使用するロータリースイッチがあります。
SETTING側では、使用するSafety Applicationや各種機能を選択します。SW1とSW2は同じ値に設定して使用し、設定値によってRemote I/O Mode、Fixed Application、Add-on Application、User-defined Applicationなどを切り替えます。
また、ADDRESS側は2個のロータリースイッチで16進数2桁を表し、IP Address設定に使用します。
なお、ロータリースイッチの設定を変更した場合は、電源OFF/ONまたはRestartが必要です。

SETTING値 | 動作内容 |
|---|---|
0 | Remote I/O Mode |
1~3 | Fixed Application |
4~7 | Reserved |
8 | IP Address表示機能 |
9~D | Add-on Application |
E | I/O配線チェック機能 |
F | User-defined Application |
WEB Serverアクセス
NXRのDefault IPアドレスは192.168.250.1です。Firefoxなどからhttps://192.168.250.1をアクセスします。

NXRデバイスのLogin画面が表示されています。

今回はパスワードを変更しませんので、”Continue using the initial safety password”を選び→Setで進みます。

Done!

こちらはNXRのWeb Serverになります。

プログラム構築

安全PLC SL5000 追加
SL5500 Safety PLCをハードウェア構成に追加します。Configurations and Setup→CPU Rack→NX-SL5500を追加します。


Done!SL5500が追加されました。

EDSファイルをダウンロード
次はオムロンのHPからNXRのEDS FILEをダウンロードしてください。


EDSファイルのインストール
MultiviewからSafety CPUを選びます。

Go to Configurations and Setup>Communications>Safety>Safety I/O>EtherNet/IP Safety Connection Settings、Connection Settings(Originator)をダブルクリックします。

空きのところで右クリック>EDS Library CIP Safetyします。

CIP Safety Library が表示されました。

InstallボタンでEDS FileをImportします。

先程DownloadしたEDS Fileを選んでください。

EDS File がインストールされました。

”X”ボタンでCIP Safety Libraryを閉じます。

NXR追加
NXRをCIP Safetyネットワークに追加していきます。Communications→Safety→Ethernet/IP Safety Connection Settings→Connection Settings(Originator)をクリックします。

NXR-SXD1204-CSTを追加します。

Done!NXR-SXD1204-CSTをCIP Safety ネットワークに追加しました。

IPアドレス
先程追加したNXR-SXD1204-CSTをダブルクリックします。

General TabにあるIPアドレス欄にIPアドレスを設定します。

IO Configuration
次はIO Configuration Tabを開きます。

こちらはNXR-SXD1204-CSTのIO構成設定画面です。

安全入力設定
今回の記事ではSi00とSi01を非常停止と接続するので、Input Device:Safety Switch→Emergency Stop Switch for Dual ChannelをSi0にDropします。

Done!

安全出力設定
次はOutputのメニューを開き、So00をDual Output without Test PulseにDropしていきます。

TUNID設定
次はツールがオンラインしてる状態で、先程追加したNXR-SXD1204-CSTを右クリック→Set TUNIDします。

Done!これでTUNIDが設定されました。

変数宣言
次は先程追加したNXR-SXD1204-CSTの変数を宣言するためにI/O Mapをクリックします。

この画面からIO変数を宣言できます。

Safey Inputを一括選択し→右クリックし→Create Device Variable with Prefixします。

変数名を定義します。

Done!出力変数にも同じ操作で変数を宣言してください。

プログラム
最後は安全プログラムを作成します。

今回は下記のようにSF_EmergencySTOPを使用し、Si00とSi01がONすると、So00とSo01をTrueするようにします。

プログラムをダウンロードする
Safety アプリケーションだけではなく、プロジェクト全体もCPUにDownloadする必要があります。Multiview ExplorerからControllerを選びます。

to Controllerでプロジェクト をCPUにDownloadします。

Executeします。

Yesします。

Yesします。

完成です!

コンフィグレーションロック
最後はNXR-SXD1204-CSTのコンフィグレーションをロックします。こちらはWeb Server経由でロック操作します。WEB Serverにアクセスし、Executive Command→Configuration Lockします。

Confirmボタンをクリックすれば、NXR-SXD1204-CSTをLock→UnlockもしくはUnlock→Lockに変更できます。

Sysmac StudioからLock・Unlockしたデバイスを右クリック→Target Device→UnlockもしくはLockしてください。

結果
いまから接続状態を確認します。Multiview ExplorerからSafety CPUを選択します。

CIP Safety Monitorを起動します。

CIP Safety Monitor画面から現在CIP Safety通信正常であることを確認できました。

WirsharkからもSafety Forwardリクエストの発行できます。

CIP Safety IOメッセージにも確認できます。

こちらの動画で動作確認できます。