KV-Xシリーズ × VSシリーズ
接続ガイド
PDFとして使用する場合、画面右上の「このページを印刷する」をクリック後、プリンターの設定で「PDFとして保存」を選択し、保存してください。
KV-Xシリーズ × VSシリーズ EtherNet/IP™ 接続ガイド
EtherNet/IP対応通信ユニット VSシリーズ
目次
Step1:接続に必要な機器
下記の機器を準備してください。
Step2:VSシリーズの設定
VSシリーズの設定方法を説明します。
ネットワーク設定をおこなう前に、以下の項目をあらかじめ決めておいてください。
- KV-Xシリーズに割り当てるIP アドレス …………… (例:192.168.0.10(初期値))
- VSシリーズに割り当てるIP アドレス …………… (例:192.168.0.1) ※192.168.0.10が初期値です。
1VS Creator(VSシリーズ用のソフト)を起動して、「デバイス接続」画面に対象のVSシリーズデバイスが表示されることを確認します。
- ※パソコンと対象のVSシリーズが同一ネットワークアドレスグループで接続されている必要があります。
2デバイス一覧でリスト行を選択すると、IPアドレスの隣に
が表示されます。アイコンをクリックすると、[ネットワーク設定]ダイアログが表示され、リスト行で選択したデバイスのネットワーク設定を変更できます。設定変更が完了したら、〔接続〕を選択します。
今回は以下のように設定します。
3「メイン画面」が表示されます。
4【環境設定】の【産業用イーサネット設定】を選択します。
- ※設定モード時のみ変更可能です。
[産業用イーサネット設定]ダイアログの「EtherNet/IP」画面で、以下のとおり設定してください。
| 設定項目 | 設定値 |
|---|---|
| 有効・無効設定 | 有効(右) |
| PLC種別 | Keyence KV |
| 周期通信データサイズ | 496バイト(初期値) |
| エンディアン | リトルエンディアン |
必要に応じて「送受信データの割り付け」、「ユーザー定義領域」を調整します。
詳細はVSシリーズユーザーズマニュアルをご確認ください。
5確認ダイアログが表⽰された場合は、〔保存して今すぐ再起動〕を選択します。
One point
VSシリーズの[Ethernet]設定、[EtherNet/IP]設定は、再起動時に設定変更が反映されます。
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)】を選択します。
リアルタイムチャートモニタは自動でスケーリングを実行するので、レンジ調整は不要です。
参考:変数割付
サイクリック通信で取得できるパラメータ一覧
サイクリック通信でやり取りできるパラメータの一覧を以下に記載しています。
サイクリック通信で取得できるパラメータ一覧
サイクリック通信で取得できるパラメータは、KV-XシリーズとVSシリーズの間で一定周期ごとに自動で更新されるため、データを読み書きするためのプログラムは不要です。以下に、B000、W000をVSシリーズのリンクデバイスの先頭デバイスに割り当てた場合のデバイスマップを記載しています。
入力(VS→KV-X)
| 変数名 | データ型 | 項目 | |
|---|---|---|---|
| メンバ名 | |||
| VariableName_IN | VS_Series_IN100_V2 | ||
| Trigger_Ready | BOOL | Trigger Ready | |
| Trigger_Ack | BOOL | Trigger Ack | |
| Pass | BOOL | Pass | |
| Fail | BOOL | Fail | |
| Result_Ready | BOOL | Result Ready | |
| Run_Status | BOOL | Run Status | |
| Error0_Status | BOOL | Error0 Status | |
| Error1_Status | BOOL | Error1 Status | |
| Command_complete | BOOL | Command complete | |
| Command_Error | BOOL | Command Error | |
| Command_Ready | BOOL | Command Ready | |
| Prog_Load_Comp | BOOL | Program Load Complete | |
| Prog_Load_Comp_SD | BOOL | Program Load Complete from SD | |
| Soft_Event_Ack | ARRAY[0..7] OF BOOL | Soft Event Ack | |
| Assignable | ARRAY[0..23] OF BOOL | Assignable | |
| Tool_Judge | ARRAY[0..31] OF BOOL | Total Judge | |
| Error0_Code | UDINT | Error0 Code | |
| Error1_Code | UDINT | Error1 Code | |
| Program_Number | UDINT | Program Number | |
| Total_Count | UDINT | Total Count | |
| Command_Result | UDINT | Command Result | |
| Command_Data | ARRAY[0..5] OF UDINT | Command Data | |
| From_VS_Data | ARRAY[0..109] OF UDINT | From VS Data | |
出力(KV-X→VS)
| 変数名 | データ型 | 項目 | |
|---|---|---|---|
| メンバ名 | |||
| VariableName_OUT | VS_Series_OUT101_V2 | ||
| Trigger | BOOL | Trigger | |
| Trigger_Disable | BOOL | Trigger Disable | |
| Output_Disable | BOOL | Output Disable | |
| Reset | BOOL | Reset | |
| Rslt_Hndshk_Enable | BOOL | Result Handshake Enable | |
| Result_Ack | BOOL | Result Ack | |
| Go_to_Run | BOOL | Go to Run | |
| Go_to_Setting | BOOL | Go to Setting | |
| Error0_Clear | BOOL | Error0_Clear | |
| Error1_Clear | BOOL | Error1_Clear | |
| Command_Request | BOOL | Command Request | |
| Prog_Load_Exec | BOOL | Program Load Execute | |
| Prog_Load_Exec_SD | BOOL | Program Load Execute from SD | |
| Soft_Event | ARRAY[0..7] OF BOOL | Soft Event | |
| Assignable | ARRAY[0..23] OF BOOL | Assignable | |
| Program_Number | UDINT | Program Number | |
| Command_Number | UDINT | Command Number | |
| Command_Param | ARRAY[0..5] OF UDINT | Command Parameter | |
| To_VS_Data | ARRAY[0..113] OF UDINT | To VS Data | |
参考:サンプルプログラム
モード切換制御
変数リスト
| 変数 | データ型 | コメント |
|---|---|---|
| xRun | BOOL | Go to Run |
| xSet | BOOL | Go to Setting |
プログラム
<ニモニックリスト>
LDP xRun
AND VS_IN.Command_Ready
OR VS_OUT.Go_to_Run
ANB VS_IN.Run_Status
OUT VS_OUT.Go_to_Run
LDP xSet
AND VS_IN.Command_Ready
OR VS_OUT.Go_to_Setting
AND VS_IN.Run_Status
OUT VS_OUT.Go_to_Setting
動作説明
現在のモード(VS_IN.Run_Status) を実行条件に入れて、モードの切替要求(VS_OUT.Go_to_Run, VS_OUT.Go_to_Setting) をONします。
コマンドNo. を指定して撮像指令
変数リスト
| 変数 | データ型 | コメント |
|---|---|---|
| xChange | BOOL | コマンド指定 |
| udiCommandNo | UDINT | コマンド番号 |
| udiCommandParam | UDINT | コマンドパラメータ |
| udiErrorCode | UDINT | エラーコード |
プログラム
<ニモニックリスト>
LDP xChange
AND VS_IN.Command_Ready
ANB VS_IN.Command_complete
ANB VS_IN.Command_Error
MOV.D uiCommandNo VS_OUT.Command_Number
MOV uiCommandParam VS_OUT.Command_Param[#0]
OUT VS_OUT.Command_Request
LDP VS_IN.Command_Error
MOV.D VS_IN.Command_Result uiErrorCode
LDP VS_IN.Command_complete
AND VS_IN.Trigger_Ready
OR VS_OUT.Trigger
ANB VS_IN.Trigger_Ack
OUT VS_OUT.Trigger
動作説明
コマンドNo.(VS_OUT.Command_Number) とプログラムNo.(VS_OUT.Command_Param[#0]) を指定して、コマンド要求(VS_OUT.Command_Request) をON、その後、トリガ(VS_OUT.Trigger) をONします。
結果の取得
変数リスト
| 変数 | データ型 | コメント |
|---|---|---|
| audiResult | ARRAY[0..9] OF UDINT | 結果 |
プログラム
<ニモニックリスト>
LDP VS_IN.Result_Ready
BMOV.D VS_IN.Command_Result audiResult[#0] #10
LDP VS_IN.Result_Ready
OR VS_OUT.Result_Ack
AND VS_IN.Result_Ready
OUT VS_OUT.Result_Ack
動作説明
撮像結果を取得し、取得完了(VS_OUT.Result_Ack) をONします。
※VSシリーズの出力データを必要に応じて設定する必要があります。
One point
マニュアルレスでラダー作成可能!
オペランド入力時に、構造体のメンバコメントの一部を入力するだけで接点などの入力ができます。(RT エディット機能)
効率よく変数を検索でき、プログラム作成工数削減につながります。
サイクリック通信用変数名などを対象にRT エディットを有効にさせるために以下の手順が必要です。
① [ 変数編集] ウィンドウで右クリックして、【構造体定義コメント登録(W)】をクリックします。
② 下記ダイアログが表示されます。〔OK〕をクリックします。
③ 構造体のメンバコメントの一部に「trg」が入っている変数の一覧が表示されます。
選択してラダープログラムに入力できます。
参考:通信データの設定
ここでは、VSシリーズとPLC間の通信データの設定方法を説明します。
1ここでは例として、VS Creatorの設定において、以下のデータを出⼒するための設定をおこないます。
「通信」の〔+〕ボタンをクリックすると「ツール⼀覧」ダイアログが表示されます。
「出⼒」タブから「データ出⼒(産業⽤イーサネット)」を選択後、〔追加〕を選択します。