KV-Xシリーズ × NQシリーズ
EtherNet/IP™ 接続ガイド
PDFとして使用する場合、画面右上の「このページを印刷する」をクリック後、プリンターの設定で「PDFとして保存」を選択し、保存してください。
KV-Xシリーズ × NQシリーズ EtherNet/IP™ 接続ガイド
EtherNet/IP対応通信ユニット NQシリーズ
目次
Step1:接続に必要な機器
NQシリーズを使用して、KV-XシリーズとGP-Mシリーズを接続する場合を例に説明します。必要に応じて、使用する機器に読み換えてください。
- ※ケーブル長やコネクタ形状により、使用するケーブルが異なります。NQシリーズのマニュアルを参照の上、必要なケーブルを用意してください。
One point
NQシリーズは本体にイーサネットが2ポートあるため、以下のように配線することで、1台のKV-Xシリーズに複数台のNQシリーズを接続できます。
- ※実際に接続できるNQシリーズの台数は、NQシリーズに接続するIO-Linkデバイスの種類や消費電流に依存します。
詳細は、NQシリーズのユーザーズマニュアルを参照してください。
Step2:NQシリーズの設定
本資料ではNQシリーズとPCに以下のIPアドレスを割り当てる場合を例に説明します。以下の手順を実施する前に、PCとNQシリーズをEthernetケーブルで接続してください。
- NQシリーズ …… 192.168.0.1
- PC …… 192.168.0.100(PCのIPアドレスは事前に設定してください)
1NQ Sensor Monitorを起動し、〔新規作成〕をクリックします。NQシリーズに接続するかを確認するダイアログが表示されるので、〔はい(Y)〕をクリックします。
2[ 機器検索 ] ダイアログが表示されます。〔IP Setting Tool の起動〕をクリックします。
- ※PCにIP Setting Toolがインストールされていない場合は、初回起動時にインストールウィザードが表示されるので、ウィザードに従ってIP Setting Toolをインストールしてください。
- ※NQシリーズに既にIPアドレスが設定されている場合は、IP Setting Toolを起動せずに、手順6へ進んでください。
3IP Setting Tool が起動します。IPアドレスが未設定のNQシリーズを選択した状態で、〔IP アドレス設定(T)〕をクリックします。
4[IPアドレス設定] ダイアログで以下のとおり設定し、〔OK〕をクリックします。
5IPアドレスの設定が反映されていることを確認し、〔終了(X)〕をクリックします。
6[機器検索]ダイアログ上のネットワークアダプタで、NQシリーズと接続しているアダプタを選択した状態で〔検索〕をクリックします。
7IP アドレスを割り当てたNQシリーズが表示されるので、選択した状態で〔OK〕をクリックします。
8〔ポート設定〕をクリックし、NQシリーズに接続されているセンサの情報が正しく反映されていることを確認します。設定が問題なければ〔転送〕をクリックし、設定内容をNQシリーズに転送します。
以上でNQシリーズのネットワーク設定は終了です。その他の設定は必要に応じて行ってください。
設定内容の詳細は、NQシリーズのユーザーズマニュアルを参照してください。
Step3:KV-Xシリーズの設定
このステップではKV-Xシリーズの設定手順を説明します。キャプチャ中に表示されている"Vendor Series"という文字列は、実際に接続する機器名に読み換えてください。
1KV STUDIOを起動し、プロジェクトを新規作成します。
対応機種に「KV-X550※」を選択し、〔OK〕をクリックします。
[ユニット構成設定の確認]ダイアログが表示されるので、〔はい(Y)〕をクリックし、ユニットエディタを開きます。
- ※対応機種は使用される機種にあわせて選択してください。
2ユニットエディタの「ユニット設定(2)」タブで、KV-XシリーズのIPアドレスを設定します。
KV-X500シリーズではポート2がEtherNet/IP通信を使用できます。
ポート2のIPアドレスとサブネットマスクを設定してください。
ここでは、以下のとおり設定します。
3[EtherNet/IP設定]を起動します。
ユニットエディタ上でEtherNet/IP設定のアイコンをクリックします。
設定方法を選択するダイアログが表示されるので、KV-Xシリーズと接続する機器をEthernetケーブルで接続した状態で〔自動設定(オートコンフィグレーション)(A)〕をクリックします。
4実機とユニットエディタの構成が異なる場合、プロジェクトの転送を確認するダイアログが表示されるので、PCとKV-XシリーズをUSBケーブルで接続した状態で〔はい(Y)〕をクリックし、プロジェクトを転送します。
5プロジェクトの転送が完了すると、[機器検索設定]ダイアログが表示されるので、〔検索(F)〕をクリックします。オートコンフィグレーション完了後、接続する機器が自動で登録されるので、〔OK〕をクリックして[EtherNet/IP設定]ウィンドウを閉じます。
6ユニットエディタの〔OK〕をクリックし、[ユニットエディタ]ウィンドウを閉じます。
7下記のダイアログが表示されるので、〔OK〕をクリックし、コネクションで使用する変数を作成します。
8[EtherNet/IP機器 変数設定]ウィンドウが表示されます。変数名を入力して2回〔OK〕をクリックし、サイクリック通信用の構造体変数を作成します。
登録した変数は[変数編集]ウィンドウから確認できます。
One point
機器を手動で追加する場合
「EtherNet/IP設定」の[機器一覧(1)]タブで、接続する機器をドラッグ&ドロップして機器設定を作成します。
配下に各種センサアンプやI/Oユニットを接続する機器を設定する際は、その配下に接続する各種機器も併せて登録します。
下図は、架空の通信ユニットVendor Series Comに、架空のセンサVendor Series Sensorを接続する場合の例です。
キャプチャ中のVendor Series Com・Vendor Series Sensorという文字列は、実際に接続する通信ユニット・センサ等に読み換えてください。
One point
EtherNet/IPの送受信データにリンクデバイス(B/W)を割り付ける方法
【表示(V)】>【CPU システム設定(P)】>【システムの設定】>【その他の設定】で〔EtherNet/IP 通信の送受信データにデバイスを割り付ける(D)〕にチェックし、〔EtherNet/IP 設定更新時に変数設定ダイアログを表示する(E)〕のチェックを外した状態で〔OK〕をクリックすると、EtherNet/IP 設定時はリンクデバイス(B/W) に割り付くようになります。
One point
キーエンス社製センサ設定ファイル(ez1ファイル)をインポートする方法
機器一覧に接続する機器が表示されない(センサ設定ファイルがインポートされていない)場合、キーエンス社製センサ設定ファイル(ez1ファイル)のインポートが必要です。
[EtherNet/IP設定]ウィンドウから、【EDSファイル(D)】→【登録(I)】を選択し、使用される機器のキーエンス社製センサ設定ファイル(ez1ファイル)をインポートします。
One point
コネクションを変更することで、最大16ワード(32バイト)のプロセスデータを取得できます。[コネクション設定]ダイアログから設定してください。デフォルトでは16ワード(32バイト)のプロセスデータを取得できます。
プロセスデータは、NQシリーズのポートごとに割り付けられます。例えば、デフォルト(16ワード)の設定では以下のとおり、1ポートにつき3ワードずつ割り付けられています。
| 先頭からのオフセット | データ |
|---|---|
| +0 | P1_プロセス入力データ 0 |
| +1 | P1_プロセス入力データ 1 |
| +2 | P1_プロセス入力データ 2 |
| +3 | P2_プロセス入力データ 0 |
| : | : |
プロセスデータで取得できる内容については、接続するIO-Linkデバイスのマニュアルを参照してください。
Step4:設定データの転送とモニタ
このステップでは接続する機器の情報をモニタする方法について説明します。
キャプチャ中に表示されている"Vendor Series"という文字列は、実際に接続する機器名に読み換えてください。
1メニューから【モニタ / シミュレータ(N)】>【PLC 転送 → モニタモード(C)】を選択します。KV-Xシリーズ に設定データを転送し、モニタモードに移ります。
2ワークスペースの接続する機器を右クリックし、【センサIOモニタ(M)】を選択すると、機器の情報を簡単にモニタできます。
One point
リアルタイムチャートモニタ(RTCM)でモニタする方法
リアルタイムチャートモニタを起動して、グラフで確認することもできます。
「センサ IOモニタ」上で右クリックし、【リアルタイムチャートモニタ (H)】を選択します。
リアルタイムチャートモニタは自動でスケーリングを実行するので、レンジ調整は不要です。
参考:変数割付
使用可能なコネクション
入力(NQ-MP8L→KV-X)
| 変数名 | データ型 | 項目 | |
|---|---|---|---|
| メンバ名 | |||
| VariableName_IN | NQ_MP8L_IN122 | ||
| Diagnostics | BOOL | 診断情報 | |
| V2_Voltage | BOOL | V2電圧低下 | |
| V1_Voltage | BOOL | V1電圧低下 | |
| P1_Pin4_Input | BOOL | P1_ピン4_入力 | |
| P1_Pin2_Input | BOOL | P1_ピン2_入力 | |
| P2_Pin4_Input | BOOL | P2_ピン4_入力 | |
| P2_Pin2_Input | BOOL | P2_ピン2_入力 | |
| P3_Pin4_Input | BOOL | P3_ピン4_入力 | |
| P3_Pin2_Input | BOOL | P3_ピン2_入力 | |
| P4_Pin4_Input | BOOL | P4_ピン4_入力 | |
| P4_Pin2_Input | BOOL | P4_ピン2_入力 | |
| P5_Pin4_Input | BOOL | P5_ピン4_入力 | |
| P6_Pin4_Input | BOOL | P6_ピン4_入力 | |
| P7_Pin4_Input | BOOL | P7_ピン4_入力 | |
| P8_Pin4_Input | BOOL | P8_ピン4_入力 | |
| P1_ProcessDataValid | BOOL | P1_プロセスデータ有効 | |
| P2_ProcessDataValid | BOOL | P2_プロセスデータ有効 | |
| P3_ProcessDataValid | BOOL | P3_プロセスデータ有効 | |
| P4_ProcessDataValid | BOOL | P4_プロセスデータ有効 | |
| P5_ProcessDataValid | BOOL | P5_プロセスデータ有効 | |
| P6_ProcessDataValid | BOOL | P6_プロセスデータ有効 | |
| P7_ProcessDataValid | BOOL | P7_プロセスデータ有効 | |
| P8_ProcessDataValid | BOOL | P8_プロセスデータ有効 | |
| P1_ProcessDataInput | ARRAY[0..2] OF UINT | P1_プロセス入力データ | |
| P2_ProcessDataInput | ARRAY[0..2] OF UINT | P2_プロセス入力データ | |
| P3_ProcessDataInput | ARRAY[0..2] OF UINT | P3_プロセス入力データ | |
| P4_ProcessDataInput | ARRAY[0..2] OF UINT | P4_プロセス入力データ | |
| P5_ProcessDataInput | ARRAY[0..2] OF UINT | P5_プロセス入力データ | |
| P6_ProcessDataInput | ARRAY[0..2] OF UINT | P6_プロセス入力データ | |
| P7_ProcessDataInput | ARRAY[0..2] OF UINT | P7_プロセス入力データ | |
| P8_ProcessDataInput | ARRAY[0..2] OF UINT | P8_プロセス入力データ | |
| P1_V1_OverCurrent | BOOL | P1_V1_過電流 | |
| P2_V1_OverCurrent | BOOL | P2_V1_過電流 | |
| P3_V1_OverCurrent | BOOL | P3_V1_過電流 | |
| P4_V1_OverCurrent | BOOL | P4_V1_過電流 | |
| P5_V1_OverCurrent | BOOL | P5_V1_過電流 | |
| P6_V1_OverCurrent | BOOL | P6_V1_過電流 | |
| P7_V1_OverCurrent | BOOL | P7_V1_過電流 | |
| P8_V1_OverCurrent | BOOL | P8_V1_過電流 | |
| P5_V2_OverCurrent | BOOL | P5_V2_過電流 | |
| P6_V2_OverCurrent | BOOL | P6_V2_過電流 | |
| P7_V2_OverCurrent | BOOL | P7_V2_過電流 | |
| P8_V2_OverCurrent | BOOL | P8_V2_過電流 | |
| P1_DO_OverCurrent | BOOL | P1_DO_過電流 | |
| P2_DO_OverCurrent | BOOL | P2_DO_過電流 | |
| P3_DO_OverCurrent | BOOL | P3_DO_過電流 | |
| P4_DO_OverCurrent | BOOL | P4_DO_過電流 | |
| P1_DevMissmatch | BOOL | P1_デバイス不一致 | |
| P1_DataStorageErr | BOOL | P1_データストレージエラー | |
| P1_HardwareErr | BOOL | P1_ハードウェアエラー | |
| P1_ProcessDataInvalid | BOOL | P1_プロセスデータ無効 | |
| P1_UndefinedEvt | BOOL | P1_定義外イベント | |
| P1_MaintenanceEvt | BOOL | P1_メンテナンスイベント | |
| P1_ParameterErr | BOOL | P1_パラメータエラー | |
| P1_TemperatureErr | BOOL | P1_温度異常 | |
| P1_LLExceeded | BOOL | P1_測定値下限超過 | |
| P1_ULExceeded | BOOL | P1_測定値上限超過 | |
| P1_InsufficientVolt | BOOL | P1_電源電圧不足 | |
| P1_PowerOverVolt | BOOL | P1_電源過電圧 | |
| P1_OverLoad | BOOL | P1_過負荷 | |
| P1_GeneralErr | BOOL | P1_一般エラー | |
| P2_DevMissmatch | BOOL | P2_デバイス不一致 | |
| P2_DataStorageErr | BOOL | P2_データストレージエラー | |
| P2_HardwareErr | BOOL | P2_ハードウェアエラー | |
| P2_ProcessDataInvalid | BOOL | P2_プロセスデータ無効 | |
| P2_UndefinedEvt | BOOL | P2_定義外イベント | |
| P2_MaintenanceEvt | BOOL | P2_メンテナンスイベント | |
| P2_ParameterErr | BOOL | P2_パラメータエラー | |
| P2_TemperatureErr | BOOL | P2_温度異常 | |
| P2_LLExceeded | BOOL | P2_測定値下限超過 | |
| P2_ULExceeded | BOOL | P2_測定値上限超過 | |
| P2_InsufficientVolt | BOOL | P2_電源電圧不足 | |
| P2_PowerOverVolt | BOOL | P2_電源過電圧 | |
| P2_OverLoad | BOOL | P2_過負荷 | |
| P2_GeneralErr | BOOL | P2_一般エラー | |
| P3_DevMissmatch | BOOL | P3_デバイス不一致 | |
| P3_DataStorageErr | BOOL | P3_データストレージエラー | |
| P3_HardwareErr | BOOL | P3_ハードウェアエラー | |
| P3_ProcessDataInvalid | BOOL | P3_プロセスデータ無効 | |
| P3_UndefinedEvt | BOOL | P3_定義外イベント | |
| P3_MaintenanceEvt | BOOL | P3_メンテナンスイベント | |
| P3_ParameterErr | BOOL | P3_パラメータエラー | |
| P3_TemperatureErr | BOOL | P3_温度異常 | |
| P3_LLExceeded | BOOL | P3_測定値下限超過 | |
| P3_ULExceeded | BOOL | P3_測定値上限超過 | |
| P3_InsufficientVolt | BOOL | P3_電源電圧不足 | |
| P3_PowerOverVolt | BOOL | P3_電源過電圧 | |
| P3_OverLoad | BOOL | P3_過負荷 | |
| P3_GeneralErr | BOOL | P3_一般エラー | |
| P4_DevMissmatch | BOOL | P4_デバイス不一致 | |
| P4_DataStorageErr | BOOL | P4_データストレージエラー | |
| P4_HardwareErr | BOOL | P4_ハードウェアエラー | |
| P4_ProcessDataInvalid | BOOL | P4_プロセスデータ無効 | |
| P4_UndefinedEvt | BOOL | P4_定義外イベント | |
| P4_MaintenanceEvt | BOOL | P4_メンテナンスイベント | |
| P4_ParameterErr | BOOL | P4_パラメータエラー | |
| P4_TemperatureErr | BOOL | P4_温度異常 | |
| P4_LLExceeded | BOOL | P4_測定値下限超過 | |
| P4_ULExceeded | BOOL | P4_測定値上限超過 | |
| P4_InsufficientVolt | BOOL | P4_電源電圧不足 | |
| P4_PowerOverVolt | BOOL | P4_電源過電圧 | |
| P4_OverLoad | BOOL | P4_過負荷 | |
| P4_GeneralErr | BOOL | P4_一般エラー | |
| P5_DevMissmatch | BOOL | P5_デバイス不一致 | |
| P5_DataStorageErr | BOOL | P5_データストレージエラー | |
| P5_HardwareErr | BOOL | P5_ハードウェアエラー | |
| P5_ProcessDataInvalid | BOOL | P5_プロセスデータ無効 | |
| P5_UndefinedEvt | BOOL | P5_定義外イベント | |
| P5_MaintenanceEvt | BOOL | P5_メンテナンスイベント | |
| P5_ParameterErr | BOOL | P5_パラメータエラー | |
| P5_TemperatureErr | BOOL | P5_温度異常 | |
| P5_LLExceeded | BOOL | P5_測定値下限超過 | |
| P5_ULExceeded | BOOL | P5_測定値上限超過 | |
| P5_InsufficientVolt | BOOL | P5_電源電圧不足 | |
| P5_PowerOverVolt | BOOL | P5_電源過電圧 | |
| P5_OverLoad | BOOL | P5_過負荷 | |
| P5_GeneralErr | BOOL | P5_一般エラー | |
| P6_DevMissmatch | BOOL | P6_デバイス不一致 | |
| P6_DataStorageErr | BOOL | P6_データストレージエラー | |
| P6_HardwareErr | BOOL | P6_ハードウェアエラー | |
| P6_ProcessDataInvalid | BOOL | P6_プロセスデータ無効 | |
| P6_UndefinedEvt | BOOL | P6_定義外イベント | |
| P6_MaintenanceEvt | BOOL | P6_メンテナンスイベント | |
| P6_ParameterErr | BOOL | P6_パラメータエラー | |
| P6_TemperatureErr | BOOL | P6_温度異常 | |
| P6_LLExceeded | BOOL | P6_測定値下限超過 | |
| P6_ULExceeded | BOOL | P6_測定値上限超過 | |
| P6_InsufficientVolt | BOOL | P6_電源電圧不足 | |
| P6_PowerOverVolt | BOOL | P6_電源過電圧 | |
| P6_OverLoad | BOOL | P6_過負荷 | |
| P6_GeneralErr | BOOL | P6_一般エラー | |
| P7_DevMissmatch | BOOL | P7_デバイス不一致 | |
| P7_DataStorageErr | BOOL | P7_データストレージエラー | |
| P7_HardwareErr | BOOL | P7_ハードウェアエラー | |
| P7_ProcessDataInvalid | BOOL | P7_プロセスデータ無効 | |
| P7_UndefinedEvt | BOOL | P7_定義外イベント | |
| P7_MaintenanceEvt | BOOL | P7_メンテナンスイベント | |
| P7_ParameterErr | BOOL | P7_パラメータエラー | |
| P7_TemperatureErr | BOOL | P7_温度異常 | |
| P7_LLExceeded | BOOL | P7_測定値下限超過 | |
| P7_ULExceeded | BOOL | P7_測定値上限超過 | |
| P7_InsufficientVolt | BOOL | P7_電源電圧不足 | |
| P7_PowerOverVolt | BOOL | P7_電源過電圧 | |
| P7_OverLoad | BOOL | P7_過負荷 | |
| P7_GeneralErr | BOOL | P7_一般エラー | |
| P8_DevMissmatch | BOOL | P8_デバイス不一致 | |
| P8_DataStorageErr | BOOL | P8_データストレージエラー | |
| P8_HardwareErr | BOOL | P8_ハードウェアエラー | |
| P8_ProcessDataInvalid | BOOL | P8_プロセスデータ無効 | |
| P8_UndefinedEvt | BOOL | P8_定義外イベント | |
| P8_MaintenanceEvt | BOOL | P8_メンテナンスイベント | |
| P8_ParameterErr | BOOL | P8_パラメータエラー | |
| P8_TemperatureErr | BOOL | P8_温度異常 | |
| P8_LLExceeded | BOOL | P8_測定値下限超過 | |
| P8_ULExceeded | BOOL | P8_測定値上限超過 | |
| P8_InsufficientVolt | BOOL | P8_電源電圧不足 | |
| P8_PowerOverVolt | BOOL | P8_電源過電圧 | |
| P8_OverLoad | BOOL | P8_過負荷 | |
| P8_GeneralErr | BOOL | P8_一般エラー | |
| EV1_EvtClassPortNo | UINT | EV1_ポート&分類コード | |
| EV1_EvtCode | UINT | EV1_イベントコード | |
| EV2_EvtClassPortNo | UINT | EV2_ポート&分類コード | |
| EV2_EvtCode | UINT | EV2_イベントコード | |
| EV3_EvtClassPortNo | UINT | EV3_ポート&分類コード | |
| EV3_EvtCode | UINT | EV3_イベントコード | |
| EV4_EvtClassPortNo | UINT | EV4_ポート&分類コード | |
| EV4_EvtCode | UINT | EV4_イベントコード | |
| EV5_EvtClassPortNo | UINT | EV5_ポート&分類コード | |
| EV5_EvtCode | UINT | EV5_イベントコード | |
| EV6_EvtClassPortNo | UINT | EV6_ポート&分類コード | |
| EV6_EvtCode | UINT | EV6_イベントコード | |
| EV7_EvtClassPortNo | UINT | EV7_ポート&分類コード | |
| EV7_EvtCode | UINT | EV7_イベントコード | |
| EV8_EvtClassPortNo | UINT | EV8_ポート&分類コード | |
| EV8_EvtCode | UINT | EV8_イベントコード | |
| EV9_EvtClassPortNo | UINT | EV9_ポート&分類コード | |
| EV9_EvtCode | UINT | EV9_イベントコード | |
| EV10_EvtClassPortNo | UINT | EV10_ポート&分類コード | |
| EV10_EvtCode | UINT | EV10_イベントコード | |
| EV11_EvtClassPortNo | UINT | EV11_ポート&分類コード | |
| EV11_EvtCode | UINT | EV11_イベントコード | |
| EV12_EvtClassPortNo | UINT | EV12_ポート&分類コード | |
| EV12_EvtCode | UINT | EV12_イベントコード | |
| EV13_EvtClassPortNo | UINT | EV13_ポート&分類コード | |
| EV13_EvtCode | UINT | EV13_イベントコード | |
| EV14_EvtClassPortNo | UINT | EV14_ポート&分類コード | |
| EV14_EvtCode | UINT | EV14_イベントコード | |
| EV15_EvtClassPortNo | UINT | EV15_ポート&分類コード | |
| EV15_EvtCode | UINT | EV15_イベントコード | |
| EV16_EvtClassPortNo | UINT | EV16_ポート&分類コード | |
| EV16_EvtCode | UINT | EV16_イベントコード | |
出力(KV-X→NQ-MP8L)
| 変数名 | データ型 | 項目 | |
|---|---|---|---|
| メンバ名 | |||
| VariableName_OUT | NQ_MP8L_OUT151 | ||
| P1_Pin2_Output | BOOL | P1_ピン2_出力 | |
| P2_Pin2_Output | BOOL | P2_ピン2_出力 | |
| P3_Pin2_Output | BOOL | P3_ピン2_出力 | |
| P4_Pin2_Output | BOOL | P4_ピン2_出力 | |
| P1_ProcessDataOutput | ARRAY[0..2] OF UINT | P1_プロセス出力データ | |
| P2_ProcessDataOutput | ARRAY[0..2] OF UINT | P2_プロセス出力データ | |
| P3_ProcessDataOutput | ARRAY[0..2] OF UINT | P3_プロセス出力データ | |
| P4_ProcessDataOutput | ARRAY[0..2] OF UINT | P4_プロセス出力データ | |
| P5_ProcessDataOutput | ARRAY[0..2] OF UINT | P5_プロセス出力データ | |
| P6_ProcessDataOutput | ARRAY[0..2] OF UINT | P6_プロセス出力データ | |
| P7_ProcessDataOutput | ARRAY[0..2] OF UINT | P7_プロセス出力データ | |
| P8_ProcessDataOutput | ARRAY[0..2] OF UINT | P8_プロセス出力データ | |
| P1_V1_PowerControl | BOOL | P1 V1 電源制御 | |
| P2_V1_PowerControl | BOOL | P2 V1 電源制御 | |
| P3_V1_PowerControl | BOOL | P3 V1 電源制御 | |
| P4_V1_PowerControl | BOOL | P4 V1 電源制御 | |
| P5_V1_PowerControl | BOOL | P5 V1 電源制御 | |
| P6_V1_PowerControl | BOOL | P6 V1 電源制御 | |
| P7_V1_PowerControl | BOOL | P7 V1 電源制御 | |
| P8_V1_PowerControl | BOOL | P8 V1 電源制御 | |
| P5_V2_PowerControl | BOOL | P5 V2 電源制御 | |
| P6_V2_PowerControl | BOOL | P6 V2 電源制御 | |
| P7_V2_PowerControl | BOOL | P7 V2 電源制御 | |
| P8_V2_PowerControl | BOOL | P8 V2 電源制御 | |
入力(NQ-EP4L→KV-X)
| 変数名 | データ型 | 項目 | |
|---|---|---|---|
| メンバ名 | |||
| VariableName_IN | NQ_EP4L_IN122 | ||
| Diagnostics | BOOL | 診断情報 | |
| V2_Voltage | BOOL | V2電圧低下 | |
| V1_Voltage | BOOL | V1電圧低下 | |
| P1_Pin4_Input | BOOL | P1_ピン4_入力 | |
| P1_Pin2_Input | BOOL | P1_ピン2_入力 | |
| P2_Pin4_Input | BOOL | P2_ピン4_入力 | |
| P2_Pin2_Input | BOOL | P2_ピン2_入力 | |
| P3_Pin4_Input | BOOL | P3_ピン4_入力 | |
| P3_Pin2_Input | BOOL | P3_ピン2_入力 | |
| P4_Pin4_Input | BOOL | P4_ピン4_入力 | |
| P4_Pin2_Input | BOOL | P4_ピン2_入力 | |
| P1_ProcessDataValid | BOOL | P1_プロセスデータ有効 | |
| P2_ProcessDataValid | BOOL | P2_プロセスデータ有効 | |
| P3_ProcessDataValid | BOOL | P3_プロセスデータ有効 | |
| P4_ProcessDataValid | BOOL | P4_プロセスデータ有効 | |
| P1_ProcessDataInput | ARRAY[0..2] OF UINT | P1_プロセス入力データ | |
| P2_ProcessDataInput | ARRAY[0..2] OF UINT | P2_プロセス入力データ | |
| P3_ProcessDataInput | ARRAY[0..2] OF UINT | P3_プロセス入力データ | |
| P4_ProcessDataInput | ARRAY[0..2] OF UINT | P4_プロセス入力データ | |
| P1_DO_OverCurrent | BOOL | P1_DO_過電流 | |
| P2_DO_OverCurrent | BOOL | P2_DO_過電流 | |
| P3_DO_OverCurrent | BOOL | P3_DO_過電流 | |
| P4_DO_OverCurrent | BOOL | P4_DO_過電流 | |
| P1_DevMissmatch | BOOL | P1_デバイス不一致 | |
| P1_DataStorageErr | BOOL | P1_データストレージエラー | |
| P1_HardwareErr | BOOL | P1_ハードウェアエラー | |
| P1_ProcessDataInvalid | BOOL | P1_プロセスデータ無効 | |
| P1_UndefinedEvt | BOOL | P1_定義外イベント | |
| P1_MaintenanceEvt | BOOL | P1_メンテナンスイベント | |
| P1_ParameterErr | BOOL | P1_パラメータエラー | |
| P1_TemperatureErr | BOOL | P1_温度異常 | |
| P1_LLExceeded | BOOL | P1_測定値下限超過 | |
| P1_ULExceeded | BOOL | P1_測定値上限超過 | |
| P1_InsufficientVolt | BOOL | P1_電源電圧不足 | |
| P1_PowerOverVolt | BOOL | P1_電源過電圧 | |
| P1_OverLoad | BOOL | P1_過負荷 | |
| P1_GeneralErr | BOOL | P1_一般エラー | |
| P2_DevMissmatch | BOOL | P2_デバイス不一致 | |
| P2_DataStorageErr | BOOL | P2_データストレージエラー | |
| P2_HardwareErr | BOOL | P2_ハードウェアエラー | |
| P2_ProcessDataInvalid | BOOL | P2_プロセスデータ無効 | |
| P2_UndefinedEvt | BOOL | P2_定義外イベント | |
| P2_MaintenanceEvt | BOOL | P2_メンテナンスイベント | |
| P2_ParameterErr | BOOL | P2_パラメータエラー | |
| P2_TemperatureErr | BOOL | P2_温度異常 | |
| P2_LLExceeded | BOOL | P2_測定値下限超過 | |
| P2_ULExceeded | BOOL | P2_測定値上限超過 | |
| P2_InsufficientVolt | BOOL | P2_電源電圧不足 | |
| P2_PowerOverVolt | BOOL | P2_電源過電圧 | |
| P2_OverLoad | BOOL | P2_過負荷 | |
| P2_GeneralErr | BOOL | P2_一般エラー | |
| P3_DevMissmatch | BOOL | P3_デバイス不一致 | |
| P3_DataStorageErr | BOOL | P3_データストレージエラー | |
| P3_HardwareErr | BOOL | P3_ハードウェアエラー | |
| P3_ProcessDataInvalid | BOOL | P3_プロセスデータ無効 | |
| P3_UndefinedEvt | BOOL | P3_定義外イベント | |
| P3_MaintenanceEvt | BOOL | P3_メンテナンスイベント | |
| P3_ParameterErr | BOOL | P3_パラメータエラー | |
| P3_TemperatureErr | BOOL | P3_温度異常 | |
| P3_LLExceeded | BOOL | P3_測定値下限超過 | |
| P3_ULExceeded | BOOL | P3_測定値上限超過 | |
| P3_InsufficientVolt | BOOL | P3_電源電圧不足 | |
| P3_PowerOverVolt | BOOL | P3_電源過電圧 | |
| P3_OverLoad | BOOL | P3_過負荷 | |
| P3_GeneralErr | BOOL | P3_一般エラー | |
| P4_DevMissmatch | BOOL | P4_デバイス不一致 | |
| P4_DataStorageErr | BOOL | P4_データストレージエラー | |
| P4_HardwareErr | BOOL | P4_ハードウェアエラー | |
| P4_ProcessDataInvalid | BOOL | P4_プロセスデータ無効 | |
| P4_UndefinedEvt | BOOL | P4_定義外イベント | |
| P4_MaintenanceEvt | BOOL | P4_メンテナンスイベント | |
| P4_ParameterErr | BOOL | P4_パラメータエラー | |
| P4_TemperatureErr | BOOL | P4_温度異常 | |
| P4_LLExceeded | BOOL | P4_測定値下限超過 | |
| P4_ULExceeded | BOOL | P4_測定値上限超過 | |
| P4_InsufficientVolt | BOOL | P4_電源電圧不足 | |
| P4_PowerOverVolt | BOOL | P4_電源過電圧 | |
| P4_OverLoad | BOOL | P4_過負荷 | |
| P4_GeneralErr | BOOL | P4_一般エラー | |
| EV1_EvtClassPortNo | UINT | EV1_ポート&分類コード | |
| EV1_EvtCode | UINT | EV1_イベントコード | |
| EV2_EvtClassPortNo | UINT | EV2_ポート&分類コード | |
| EV2_EvtCode | UINT | EV2_イベントコード | |
| EV3_EvtClassPortNo | UINT | EV3_ポート&分類コード | |
| EV3_EvtCode | UINT | EV3_イベントコード | |
| EV4_EvtClassPortNo | UINT | EV4_ポート&分類コード | |
| EV4_EvtCode | UINT | EV4_イベントコード | |
| EV5_EvtClassPortNo | UINT | EV5_ポート&分類コード | |
| EV5_EvtCode | UINT | EV5_イベントコード | |
| EV6_EvtClassPortNo | UINT | EV6_ポート&分類コード | |
| EV6_EvtCode | UINT | EV6_イベントコード | |
| EV7_EvtClassPortNo | UINT | EV7_ポート&分類コード | |
| EV7_EvtCode | UINT | EV7_イベントコード | |
| EV8_EvtClassPortNo | UINT | EV8_ポート&分類コード | |
| EV8_EvtCode | UINT | EV8_イベントコード | |
| EV9_EvtClassPortNo | UINT | EV9_ポート&分類コード | |
| EV9_EvtCode | UINT | EV9_イベントコード | |
| EV10_EvtClassPortNo | UINT | EV10_ポート&分類コード | |
| EV10_EvtCode | UINT | EV10_イベントコード | |
| EV11_EvtClassPortNo | UINT | EV11_ポート&分類コード | |
| EV11_EvtCode | UINT | EV11_イベントコード | |
| EV12_EvtClassPortNo | UINT | EV12_ポート&分類コード | |
| EV12_EvtCode | UINT | EV12_イベントコード | |
| EV13_EvtClassPortNo | UINT | EV13_ポート&分類コード | |
| EV13_EvtCode | UINT | EV13_イベントコード | |
| EV14_EvtClassPortNo | UINT | EV14_ポート&分類コード | |
| EV14_EvtCode | UINT | EV14_イベントコード | |
| EV15_EvtClassPortNo | UINT | EV15_ポート&分類コード | |
| EV15_EvtCode | UINT | EV15_イベントコード | |
| EV16_EvtClassPortNo | UINT | EV16_ポート&分類コード | |
| EV16_EvtCode | UINT | EV16_イベントコード | |
出力(KV-X→NQ-EP4L)
| 変数名 | データ型 | 項目 | |
|---|---|---|---|
| メンバ名 | |||
| VariableName_OUT | NQ_EP4L_OUT151 | ||
| P1_Pin2_Output | BOOL | P1_Pin2_出力 | |
| P2_Pin2_Output | BOOL | P2_Pin2_出力 | |
| P3_Pin2_Output | BOOL | P3_Pin2_出力 | |
| P4_Pin2_Output | BOOL | P4_Pin2_出力 | |
| P1_ProcessDataOutput | ARRAY[0..2] OF UINT | P1_プロセス出力データ | |
| P2_ProcessDataOutput | ARRAY[0..2] OF UINT | P2_プロセス出力データ | |
| P3_ProcessDataOutput | ARRAY[0..2] OF UINT | P3_プロセス出力データ | |
| P4_ProcessDataOutput | ARRAY[0..2] OF UINT | P4_プロセス出力データ | |
参考:サンプルプログラム
以下は、FBを使用してNQシリーズのポート1に接続されているGP-MTシリーズの「圧力上側設定値(出力1) SP1/FH1」(index番号:115 subindex番号:0)のパラメータを読み書きする参考プログラムです。
変数リスト
| 変数 | データ型 | コメント |
|---|---|---|
| NQ_Message_Sample | NQ_Message | |
| auiData | ARRAY[0..49] OF UINT | Data Area |
| udiIOL_ErrorID | UDINT | IO-Link error code |
| uiCIP_Status | UINT | CIP status |
| uiIOL_index | UINT | IO-Link Index |
| uiIOL_subindex | UINT | IO-Link sub-index |
| uiNQ_PortNo | UINT | NQ port number |
| uiReadByte | UINT | Data length read |
| uiSwapMode | UINT | Swap mode |
| uiWriteByte | UINT | Data length to be written |
| xBusy | BOOL | Execution in progress |
| xDone | BOOL | Execution completed |
| xError | BOOL | Error |
| xReqRead | BOOL | Read request |
| xReqWrite | BOOL | Write request |
| xRequest | BOOL | NQ FB execution request |
| xUnitError | BOOL | Unit number setting error |
| xWriteMode | BOOL | Write mode |
プログラム
- ※ボックス型STの内容やIPアドレスは、通信相手機器の設定やパラメータに応じて書き換えます。
動作説明
「UnitNo」で指定したユニットから「NQ_IPAddress」と「NQ_PortNo」に接続しているIO LinkデバイスとEtherNet/IPメッセージ通信を行います。
通信内容は、「IOL_index」、「IOL_subindex」、「WriteMode」、「WriteByte」、「SwapMode」により変わります。
実行中、「Data」領域は一度クリアされます。
正常終了した場合は「ENO」がONし、読み出しモードでは受信データが「Data」領域に格納されます。
異常終了した場合は「Error」がONし、「CIP_Status」にCIPステータスが、「IOL_Error ID」にIO Linkエラーコードが格納されます。
受信したデータがある場合は、「ReadByte」に受信したデータ長が格納されます。
One point
IO-Linkデバイスとの通信用ファンクションブロック
NQシリーズに接続されたIO-Linkデバイスのデータを読み書きするためのファンクションブロック(以下FB)について説明します。FBがインポートされたサンプルプログラムを提供しています。サンプルプログラムの入手方法については、最寄りの営業所にお問い合わせください。
- ※KV-5000/3000シリーズやKV Nanoシリーズでは使用できません。
- ※サンプルプログラムには、変数を使用して作成したプログラムも用意しています。変数のサンプルプログラムを使用する場合は、以下の内容を変数に読み換えてください。
以下はKV-Xシリーズ用FBの場合です。
| 引数 | タイプ | データ型 | 初期値 | コメント |
|---|---|---|---|---|
| EN | IN | BOOL | - | 実行要求 |
| UnitNo | IN | _UNIT_ID_ADR | - | EtherNet/IPユニット番号 |
| NQ_IPAddress | IN | STRING[255] | " | NQシリーズのIPアドレス |
| NQ_PortNo | IN | UINT | - | NQシリーズのポート番号 |
| IOL_index | IN | UINT | 0 | インデックス番号※1 |
| IOL_subindex | IN | UINT | 0 | サブインデックス番号※1 |
| WriteMode | IN | BOOL | FALSE | メッセージモード(FALSE=read/TRUE=write) |
| WriteByte | IN | UINT | 0 | 書き込みデータ長 |
| SwapMode | IN | UINT | - | スワップモード (0=no swap / 1=16bit swap / 2=32bit swap)※2 |
| Data | IN-OUT | UINT[0..49] | - | データ領域 |
| ENO | OUT | BOOL | - | 実行完了 |
| ReadByte | OUT | UINT | - | 読み出しデータ長 |
| Busy | OUT | BOOL | - | 実行中 |
| Error | OUT | BOOL | - | エラー |
| CIP_Status | OUT | UINT | - | CIPステータス※3 |
| IOL_ErrorID | OUT | UDINT | - | IO-Linkエラーコード※4 |
- ※1 値の内容については、接続しているIO-Linkデバイスのマニュアルを参照してください。もしくは、キーエンス製のIO-Linkデバイスを使用している場合は、別紙『キーエンス製IO-Linkデバイスのパラメータ一覧』を参照してください。別紙の入手方法については、最寄りの営業所にお問い合わせください。
- ※2 値の内容については、KV-XシリーズのEtherNet/IP機能マニュアル「4-4 メッセージ通信(クライアント)機能」を参照してください。
- ※3 値の内容については、接続しているIO-Linkデバイスのマニュアルを参照してください。
One point
マニュアルレスでラダー作成可能!
オペランド入力時に、構造体のメンバコメントの一部を入力するだけで接点などの入力ができます。(RT エディット機能)
効率よく変数を検索でき、プログラム作成工数削減につながります。
サイクリック通信用変数名などを対象にRT エディットを有効にさせるために以下の手順が必要です。
① [ 変数編集] ウィンドウで右クリックして、【構造体定義コメント登録(W)】をクリックします。
② 下記ダイアログが表示されます。〔OK〕をクリックします。
③ 構造体のメンバコメントの一部に「trg」が入っている変数の一覧が表示されます。
選択してラダープログラムに入力できます。