(57)【特許請求の範囲】
【請求項１】
ＰＬＣ（プログラマブルロジックコントローラ）におけるＦＢ（ファンクションブロック）が参照する設定データを生成する設定データ生成部と、
前記設定データ生成部によって生成された前記設定データを前記ＰＬＣに送信する送信部とを備え、
前記設定データ生成部によって生成された前記設定データが、前記ＰＬＣによって制御される制御対象機器の動作設定値を変更させる前記ＦＢによって利用されるものであり、
前記ＦＢは、前記設定データを前記制御対象機器に送信し、当該設定データに基づいて前記制御対象機器の前記動作設定値を書き換えるものである
ことを特徴とするＰＬＣ制御データ生成装置。
【請求項２】
前記設定データ生成部が、前記設定データにおける少なくとも１つの項目を表示画面に表示させ、ユーザからの入力によって、前記項目の値を設定する制御を行う表示入力制御部を備えていることを特徴とする請求項１記載のＰＬＣ制御データ生成装置。
【請求項３】
前記制御対象機器の動作設定値を示す少なくとも１つの項目に関する動作設定項目情報を外部の所定のサーバから取得する項目情報取得部をさらに備え、
前記設定データ生成部が、前記項目情報取得部によって取得された前記動作設定項目情報に基づいて、前記設定データを生成することを特徴とする請求項１または２記載のＰＬＣ制御データ生成装置。
【請求項４】
前記設定データ生成部が、ユーザからの指示に基づき、前記設定データとして、（１）全ての項目の情報、（２）所定の一部の項目の情報、および（３）変更された項目の情報のうち、いずれか１つを含む設定データファイルを生成することを特徴とする請求項１〜３のいずれか一項に記載のＰＬＣ制御データ生成装置。
【請求項５】
前記制御対象機器に対して直接動作設定値を変更させる動作設定値変更データを生成する変更データ生成部をさらに備え、
前記送信部が、当該ＰＬＣ制御データ生成装置とケーブルで直接接続された前記制御対象機器に対して、前記変更データ生成部によって生成された動作設定値変更データを前記ケーブルを介して直接送信することを特徴とする請求項１〜４のいずれか一項に記載のＰＬＣ制御データ生成装置。
【請求項６】
ＰＬＣ（プログラマブルロジックコントローラ）におけるＦＢ（ファンクションブロック）が参照する設定データを生成する設定データ生成ステップと、
前記設定データ生成ステップにて生成された前記設定データを前記ＰＬＣに送信する送信ステップとを有し、
前記設定データ生成ステップにて生成された前記設定データが、前記ＰＬＣによって制御される制御対象機器の動作設定値を変更させる前記ＦＢによって利用されるものであり
前記ＦＢは、前記設定データを前記制御対象機器に送信し、当該設定データに基づいて前記制御対象機器の前記動作設定値を書き換えるものである
ことを特徴とするＰＬＣ制御データ生成方法。
【請求項７】
請求項１に記載のＰＬＣ制御データ生成装置としてコンピュータを機能させるためのＰＬＣ制御データ生成プログラムであって、前記設定データ生成部および前記送信部としてコンピュータを機能させるためのＰＬＣ制御データ生成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＰＬＣと通信可能に接続されるＰＬＣ制御データ生成装置、そのようなＰＬＣ制御データ生成装置によるＰＬＣ制御データ生成方法、及び、そのようなＰＬＣ制御データ生成装置が実行するＰＬＣ制御データ生成プログラムに関する。
【背景技術】
【０００２】
産業用のオープンなネットワークしてEtherCAT（登録商標）が知られている。このEtherCATはフィールドネットワークとして利用されている。また、センサーやアクチュエータなどのデバイスとポイントツーポイント通信を行うマスタで構成されるIO-Link（登録商標）システムが知られている。
【０００３】
このEtherCATのマスタとしての機能を備えたプログラマブルコントローラと、EtherCATのスレーブとしての機能とIO-Linkマスタの機能を備えた装置と、IO-Linkデバイスとによって構成されるネットワークシステムが従来から利用されている。
【０００４】
ＰＬＣには、IO-Linkデバイスの動作設定値をIO-Linkデバイスから取得するためのファンクションブロック（設定値読出用ＦＢ）、及び、ＰＬＣが保持している前記動作設定値をIO-Linkデバイスに反映させるためのファンクションブロック（設定値書込用ＦＢ）が実装されている。
【０００５】
ＰＬＣのベンダと前記装置のベンダが同じベンダである場合、ユーザは、パーソナルコンピュータをＰＬＣに接続することにより、パーソナルコンピュータにインストールされている所定のツールアプリケーションを用いて、IO-Linkデバイスの設定データを変更することができる。
【０００６】
また、ＰＬＣのベンダと前記装置のベンダが同じベンダではない場合、ユーザは、パーソナルコンピュータをIO-Linkデバイスに直接接続することにより、パーソナルコンピュータにインストールされている所定のツールアプリケーションを用いてIO-Linkデバイスの設定データを変更することができる。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ところで、前記ネットワークシステムの本稼働中において、IO-Linkデバイスに所望の動作を行わせるためにIO-Linkデバイスの設定を変更しようとする現場作業者は、前記ツールアプリケーションに詳しい者ではないことが通常である。
【０００８】
現場作業者が簡単にIO-Linkデバイスの設定を変更することを可能にするために、システム管理者が、前記ネットワークシステムの本稼働前に以下の作業を行うことが考えられる。
１．システム管理者は、前記ツールアプリケーションを用いた設定データの変更によりIO-Linkデバイスが所望の動作を行うことを確認する。
２．システム管理者は、ＰＬＣに対し、IO-Linkデバイスが所望の動作を行うことを確認した時の動作設定値をIO-Linkデバイスから取得させる。即ち、システム管理者は、設定値読出用ＦＢをＰＬＣに実行させる。
【０００９】
これにより、現場作業者は、前記ネットワークシステムの本稼働中において、設定値書込用ＦＢをＰＬＣに実行させる操作を行うだけで、IO-Linkデバイスに所望の動作を行わせることができる。
【００１０】
しかしながら、言うまでもなく、システム管理者は、IO-Linkデバイスを稼働させなければ、前記作業を行うことができない。即ち、現場作業者がシステムの本稼働中に多数のIO-Linkデバイスの設定を簡単に変更することを可能にするためには、システム管理者は、本稼働前に、多数のIO-Linkデバイスを１台１台テスト稼働させるという手間をかけなければならない。
【００１１】
本発明は、前記課題に鑑みて成されたものであり、その主な目的は、本稼働中の制御対象機器の設定を現場作業者に簡単に変更させるための本稼働前の作業を簡略化させることが可能なＰＬＣ制御データ生成装置を実現することにある。
【課題を解決するための手段】
【００１２】
前記課題を解決するために、本発明の一態様に係るＰＬＣ制御データ生成装置は、ＰＬＣ（プログラマブルロジックコントローラ）におけるＦＢ（ファンクションブロック）が参照する設定データを生成する設定データ生成部と、前記設定データ生成部によって生成された前記設定データを前記ＰＬＣに送信する送信部とを備え、前記設定データ生成部によって生成された前記設定データが、前記ＰＬＣによって制御される制御対象機器の動作設定値を変更させる前記ＦＢによって利用されるものである。
【００１３】
従来、ＰＬＣによって制御される制御対象機器の動作設定値を変更するには、次の３つの方法があった。第１の方法としては、制御対象機器と、該制御対象機器の動作設定値を変更可能なプログラムを実行するＰＣとを直接に接続して行う方法である。
【００１４】
第２の方法としては、まずＰＬＣが、事前に設定値読出用ＦＢを用いて動作設定値変更対象の制御対象機器から動作設定値を読み出して保存しておく。その後、設定値書込用ＦＢを用いて該動作設定値を適宜読み出して、該制御対象機器の動作設定値を変更させる。
【００１５】
第３の方法としては、前記プログラムを使用してＰＬＣを介してネットワーク経由で制御対象機器の動作設定値を変更させる方法である。
【００１６】
第１の方法の場合、制御対象機器とＰＣとを直接接続するという手順が必要となるので、制御対象機器が多数ある場合、変更が非常に煩雑になるという問題がある。また、制御対象機器が稼働している状態で動作設定値を変更することはできない。
【００１７】
第２の方法の場合、事前に制御対象機器を所定の動作設定値に設定した状態にして、該動作設定値を設定値読出用ＦＢを用いて読み出す、という作業が必要になる。この作業は、動作設定値のバリエーションとして必要な回数行う必要があり、非常に煩雑となる。
【００１８】
これに対して、前記構成によれば、ＰＬＣ制御データ生成装置においてＦＢの設定データが生成され、この設定データがＰＬＣに送信されて記憶される。ＰＬＣでは、記憶されている設定データに基づいて設定値書込用ＦＢが動作することによって、制御対象機器の動作設定値を変更する。よって、前記第１の方法および第２の方法と比較して、制御対象機器の動作設定値を変更するための作業を大幅に簡略化することができる。
【００１９】
また、第３の方法は、制御対象機器が稼働している状態で（即ち、システムの本稼働中に）動作設定値を変更できる方法であるが、現場担当者は、制御対象機器の動作設定値を変更することを所望する度にシステム管理者を呼ばなければならない。
【００２０】
これに対して、前記構成によれば、現場担当者は、システム管理者を呼ぶことなく、制御対象機器の動作設定値を変更することができる。
【００２１】
なお、前記構成では、ＰＬＣに前記ＦＢを実行させる操作によって制御対象機器の動作設定値を変更することが可能である。よって、該操作を行う現場作業者は、制御対象機器が本稼働中の状態でも動作設定値を簡単に変更することが可能である。
【００２２】
前記課題を解決するために、本発明の一態様に係るＰＬＣ制御データ生成方法は、ＰＬＣ（プログラマブルロジックコントローラ）におけるＦＢ（ファンクションブロック）の設定データを生成する設定データ生成ステップと、前記設定データ生成ステップにて生成された前記設定データを前記ＰＬＣに送信する送信ステップとを有し、前記設定データ生成ステップにて生成された前記設定データが、前記ＰＬＣによって制御される制御対象機器の動作設定値を変更させる前記ＦＢによって利用されるものである。
【００２３】
前記構成によれば、前記ＰＬＣ制御データ生成方法は、前記ＰＬＣ制御データ生成装置と同様の作用効果を奏する。
【００２４】
本発明の一態様に係るＰＬＣ制御データ生成装置では、前記設定データ生成部が、前記設定データにおける少なくとも１つの項目を表示画面に表示させ、ユーザからの入力によって、前記項目の値を設定する制御を行う表示入力制御部を備えていてもよい。
【００２５】
前記構成によれば、ユーザは、表示画面に表示された設定データの項目を見て、各項目の値を入力設定することが可能となる。
【００２６】
本発明の一態様に係るＰＬＣ制御データ生成装置は、前記制御対象機器の動作設定値を示す少なくとも１つの項目に関する動作設定項目情報を外部から取得する項目情報取得部をさらに備え、前記設定データ生成部が、前記項目情報取得部によって取得された前記動作設定項目情報に基づいて、前記設定データを生成してもよい。
【００２７】
前記構成によれば、前記ＰＬＣ制御データ生成装置は動作設定項目情報を外部から取得することができるので、ユーザは、制御対象機器の動作設定値に対応する設定データの作成を容易に行うことが可能となる。
【００２８】
本発明の一態様に係るＰＬＣ制御データ生成装置では、前記設定データ生成部が、ユーザからの指示に基づき、前記設定データとして、（１）全ての項目の情報、（２）所定の一部の項目の情報、および（３）変更された項目の情報のうち、いずれか１つを含む設定データファイルを生成してもよい。
【００２９】
前記構成によれば、ユーザは、設定データファイルに含める項目を切り替えることが可能となる。よって、ユーザは、使用状況に応じて、適切なデータサイズの設定データファイルを作成することが可能となる。
【００３０】
本発明の一態様に係るＰＬＣ制御データ生成装置は、前記制御対象機器に対して直接動作設定値を変更させる動作設定値変更データを生成する変更データ生成部をさらに備え、前記送信部が、前記制御対象機器に対して、前記変更データ生成部によって生成された動作設定値変更データを送信してもよい。
【００３１】
前記構成によれば、前記ＰＬＣ制御データ生成装置は、制御対象機器に対して直接動作設定値を変更させることが可能となる。すなわち、前記ＰＬＣ制御データ生成装置は、制御対象機器の動作設定値の変更を、ＰＬＣのＦＢ経由で行うことも、ＰＬＣのＦＢを経由せずに直接制御対象機器に対して行うこともできる。よって、ユーザは状況に応じて両者を切り替えることができるので、前記ＰＬＣ制御データ生成装置は、より高い利便性をユーザに提供することができる、と言える。
【００３２】
本発明の範疇には、前記いずれかの態様に係るＰＬＣ制御データ生成装置としてコンピュータを機能させるための制御プログラムであって、前記設定データ生成部および前記送信部としてコンピュータを機能させるための制御プログラムも含まれる。
【発明の効果】
【００３３】
本発明の一態様に係る端末装置は、本稼働中の制御対象機器の設定を現場作業者に簡単に変更させるための本稼働前の作業を簡略化させることができる、という効果を奏する。
【図面の簡単な説明】
【００３４】
【図１】本発明の実施形態１に係るパーソナルコンピュータ（ＰＣ）及びプログラマブルロジックコントローラ（ＰＬＣ）の要部構成を示すブロック図である。
【図２】図１のＰＣ及びＰＬＣを含む実施形態１に係る産業用ネットワークシステムの構成を概略的に示す図である。
【図３】図１のＰＣのディスプレイに表示されるツールアプリケーションの画面の一例を示した図である。
【図４】図１のＰＣのディスプレイに表示されるツールアプリケーションの画面の別の一例を示した図である。
【図５】図１のＰＣのディスプレイに表示されるツールアプリケーションの画面の更に別の一例を示した図である。
【図６】図１のＰＣが作成する設定データファイルのデータ構造について説明するための図である。
【図７】図１のＰＬＣが制御対象機器であるIO-Linkデバイスにその動作設定値を変更させるために実行する設定値書込用ＦＢについて説明するための図である。
【図８】前記設定値書込用ＦＢについて説明するための別の図である。
【図９】実施形態２に係るＰＣと実施形態１に係るＰＬＣとを含む実施形態２に係る産業用ネットワークシステムの構成を概略的に示す図である。
【発明を実施するための形態】
【００３５】
＜実施形態１＞
以下、図１〜図８を参照して、本発明の実施形態１に係る産業用ネットワークシステムについて説明する。
【００３６】
（システムの概要および構成）
まず、本実施形態に係る産業用ネットワークシステムの概要および構成について図１及び図２を参照しながら説明する。
【００３７】
図１は、本実施形態に係るＰＣ１００（ＰＬＣ制御データ生成装置）及びＰＬＣ２００の構成を示すブロック図である。図２は、本実施形態に係る産業用ネットワークシステム１の構成を示した図である。
【００３８】
図１及び図２からわかるように、システム１は、ＨＭＩ１０、ＰＣ（パーソナルコンピュータ）１００、ＰＬＣ（プログラマブルロジックコントローラ）２００、スレーブ機器３００−１、３００−２、IO-Linkデバイス４００（以下、「機器４００」「制御対象機器」とも称する）、及び、スレーブ機器５００（以下、「機器５００」「制御対象機器」とも称する）を含んでいる。
【００３９】
ＨＭＩ（ヒューマンマシンインタフェース）１０は、現場作業者がIO-Linkデバイス４００の動作設定を変更するために使用する装置である。ＨＭＩ１０には、タッチパネル式のディスプレイが設けられている。
【００４０】
システム１の本稼働中には、このディスプレイに多数のＵＩ部品が表示されている。現場作業者は、多数のＵＩ部品の中から選択した適切なＵＩ部品（特定のＵＩ部品）にタッチすることで、複数台の機器４００のうちの所望の機器４００（制御対象機器）に所定の複数種類の動作のうちの所望の動作を行わせることができる。
【００４１】
ＨＭＩ１０は、ＵＩ部品に対するタッチ操作を受け付けると、所望の機器４００に所望の動作を行わせるための制御を行うようにＰＬＣ２００に指示する。即ち、ＨＭＩ１０は、具体的な指示の内容を示す指示データをＰＬＣ２００に送信する。
【００４２】
ＰＣ１００は、システム管理者が、機器４００に所望の動作を行わせるための各種動作設定値を含む設定データファイルを作成し、作成した設定データファイルをＰＬＣ２００に記録するために使用するパーソナルコンピュータである。
【００４３】
ＰＬＣ２００は、EtherCATマスタであり、スレーブ機器とEtherCAT通信を行う。
【００４４】
ＰＬＣ２００は、機器４００（制御対象機器）の各種動作設定値を変更させる機能を有するファンクションブロック（設定値書込用ＦＢ）を保持している。
【００４５】
ＨＭＩ１０からの指示（設定変更指示）をトリガとしてＰＬＣ２００が設定値書込用ＦＢを呼び出すと、設定値書込用ＦＢは次の動作を行う。即ち、設定値書込用ＦＢは、ＰＬＣ２００が保持している多数の設定データファイルのうちの、前記特定のＵＩ部品に対応する特定の設定データファイルを参照し、参照した設定データファイルを制御対象機器に送信する。
【００４６】
スレーブ機器（機器３００−１、３００−２）は、EtherCATスレーブ及びIO-Linkマスタとして機能するデバイスである。該スレーブ機器は、自機とポイントツーポイント接続されているIO-Linkデバイス４００の動作設定値を変更させるための設定データファイルをＰＬＣ２００から取得すると、設定データファイルをIO-Linkデバイス４００に転送する。
【００４７】
機器３００−１、３００−２についてより具体的に説明すると以下の通りである。
【００４８】
機器３００−１は、複数の機能ユニットがシステムバスを介してデータ交換可能に接続されている機器である。前記複数の機能ユニットのうちのひとつは、EtherCATマスタとの通信、および、システムバスを介した他の機能ユニットとのデータ交換を制御する。また、前記複数の機能ユニットのうちの別のひとつは、IO-Linkデバイス４００と接続されて通信を行うIO-Linkマスタとして動作する。
【００４９】
機器３００−２は、EtherCATマスタと通信する機能およびIO-Linkデバイスと通信する機能を備えている。
【００５０】
機器４００は、スレーブ機器３００−１、３００−２から設定データファイルが転送されると、設定データファイルの内容に基づいて自機の各種動作設定値を変更し、現場作業者の所望する動作を行う。
【００５１】
機器５００は、EtherCATスレーブとして機能するが、IO-Linkマスタとしては機能しない制御対象機器（例えば、センサ、アクチュエータ）である。
【００５２】
次に、ＰＣ１００及びＰＬＣ２００の構成について図１を参照しながら説明する。
【００５３】
（ＰＣ１００の構成）
図１の（ａ）に示すように、ＰＣ１００は、ＣＰＵ１１０、記憶部１２０、表示部１３０、操作部１４０、及び、イーサネット（登録商標）Ｉ／Ｆ部１５０を備えている。
【００５４】
ＣＰＵ１１０は、ＰＣ１００全体を統括的に制御する。
【００５５】
記憶部１２０は、所定のツールアプリケーション（ＰＬＣ２００に機器４００をどのように制御させるかを制御するためのデータ（ＰＬＣ制御データ）である設定データファイルを作成するためのアプリケーション）がインストールされている記録媒体である。記憶部１２０には、ツールアプリケーション（ＰＬＣ制御データ生成プログラム）によって作成される設定データファイルも格納される。なお、ツールアプリケーションの詳細については後述する。
【００５６】
表示部１３０は、ツールアプリケーションの画面が表示されるディスプレイ（表示画面）である。
【００５７】
操作部１４０は、ツールアプリケーションを操作するための操作デバイス（キーボード等）である。
【００５８】
イーサネット（登録商標）Ｉ／Ｆ部１５０は、イーサネット通信（ＴＣＰ／ＩＰ通信）を行う通信インタフェースである。
【００５９】
ＣＰＵ１１０は、ツールアプリケーションを読み出すことによって、設定データ生成処理部１１１（設定データ生成部）、及び、送信処理部１１２（送信部）として機能する。
【００６０】
設定データ生成処理部１１１は、ＰＬＣ２００における設定値書込用ＦＢが参照する設定データファイルを生成する。
【００６１】
設定データ生成処理部１１１は、表示入力制御部１１１１及びIODDファイル取得処理部１１１２（項目情報取得部）を含んでいる。
【００６２】
表示入力制御部１１１１は、機器４００の動作設定値を示す少なくとも１つの項目に関するファイルであるIODDファイル（動作設定項目情報）から設定データファイルを作成し、設定データファイルにおける少なくとも１つの項目が示されたツールアプリケーションの画面を表示部１３０に表示する。また、表示入力制御部１１１１は、ユーザからの入力によって、前記項目の値を設定する制御を行う。
【００６３】
IODDファイル取得処理部１１１２は、IODDファイルを外部（本実施形態では所定のサーバ）から取得する。本実施形態におけるIODDファイルは、機器４００の機能項目毎に、当該機能項目について設定可能な値と当該機能項目のデフォルトの動作設定値とが示されたファイルである。
【００６４】
送信処理部１１２は、設定データ生成処理部１１１によって生成された設定データファイルをＰＬＣ２００に送信する。
【００６５】
（ＰＬＣ２００の構成）
図１の（ｂ）に示すように、ＰＬＣ２００は、ＣＰＵ２１０、イーサネットＩ／Ｆ部２２０、ＥｔｈｅｒＣＡＴＩ／Ｆ部２３０、及び、記憶部２４０を備えている。
【００６６】
ＣＰＵ２１０は、ＰＬＣ２００全体を統括的に制御する。
【００６７】
イーサネットＩ／Ｆ部２２０は、イーサネット通信（ＴＣＰ／ＩＰ通信）を行う通信インタフェースである。
【００６８】
ＥｔｈｅｒＣＡＴＩ／Ｆ部２３０は、EtherCAT通信を行う通信インタフェースである。
【００６９】
記憶部２４０は、設定値読出用ＦＢや設定値書込用ＦＢを含む各種ＦＢが記録されている記録媒体である。記憶部２４０には、ＰＣ１００から送信される設定データファイルも記録される。
【００７０】
ＣＰＵ２１０は、設定データ取得処理部２１１、設定変更指示受付部２１２、及び、ＦＢ処理部２１３として機能する。
【００７１】
設定データ取得処理部２１１は、ＰＣ１００がＰＬＣ２００に送信した設定データファイルを取得し、取得した設定データファイルを記憶部２４０に記録する。
【００７２】
設定変更指示受付部２１２は、ＨＭＩ１０からの設定変更指示をトリガとして、ＦＢ処理部２１３に対し、設定値書込用ＦＢを呼び出させる。
【００７３】
ＦＢ処理部２１３は、各種ＦＢを読み出し、読み出したＦＢを実行する。
【００７４】
ＦＢ処理部２１３がＨＭＩ１０からの設定変更指示によって設定値書込用ＦＢを呼び出した場合、設定値書込用ＦＢは、設定変更指示の内容に応じた特定の設定データファイルを記憶部１２０から読み出し、読み出した設定データファイルをEtherCATネットワーク（制御対象機器と接続されているスレーブ機器）に送信する。
【００７５】
ＦＢ処理部２１３は、機器照合部２１３１及び宛先特定部２１３２を含んでいる。
【００７６】
機器照合部２１３１は、設定値書込用ＦＢの所定の入力変数の値が所定の値である場合に、現場作業者によって指定された機器４００からベンダＩＤ及びデバイスＩＤ（機器ＩＤ）を取得する。機器照合部２１３１は、設定データファイルに格納されているベンダＩＤが機器４００から取得したベンダＩＤと一致し、且つ、設定データファイルに格納されているデバイスＩＤが機器４００から取得したデバイスＩＤと一致する場合に「照合成功」を示す情報を出力し、そうでない場合に「照合失敗」を示す情報を出力する。
【００７７】
なお、本実施形態では、機器照合部２１３１は、産業用ネットワークシステム１の設定に応じて、前記照合処理を実行するか否かを切り替え可能になっている。
【００７８】
宛先特定部２１３２は、ＨＭＩ１０からの設定変更指示に基づき、いずれかの方法によって、制御対象機器の宛先を特定する。
【００７９】
（方法１）前述の特定の設定データファイルに含まれる宛先情報に基づいて制御対象機器の宛先を特定する。この場合における前述の「特定の設定データファイル」は、例えば、制御対象機器の名前と設定変更後の動作の内容とを示すファイル名のファイルであって、宛先情報と設定変更後の動作に対応する各種動作設定値とを含む設定データファイルである。
【００８０】
（方法２）別途指定される宛先情報（ＨＭＩ１０からの指示データに含まれる宛先情報）に基づいて、制御対象機器の宛先を特定する。この場合における前述の「特定の設定データファイル」は、例えば、設定変更後の動作の内容を示すファイル名のファイルであって、宛先情報と設定変更後の動作に対応する各種動作設定値を含む設定データファイルである。
【００８１】
宛先特定部２１３２は、産業用ネットワークシステム１の設定に応じて、前記方法１及び前記方法２を適宜切り替えることができる。
【００８２】
なお、本実施形態における前記宛先情報は、（１）ＰＬＣ２００が管理しているEtherCATネットワークのノードアドレス、（２）ＰＬＣ２００に接続されている、複数のユニットを有する機器（図示せず）のユニット番号、及び、（３）ＰＬＣ２００に接続されている、複数のポートを有するスレーブ機器のポート番号、のうちのいずれか１つ、又は、それらの３つのうちの２つ若しくは３つの組み合わせである。前記宛先情報の例としては、ノードアドレスとユニット番号との組み合わせ、及び、ノードアドレスとポート番号との組み合わせが挙げられる。
【００８３】
以上、ＰＣ１００及びＰＬＣ２００の構成について説明した。
【００８４】
（設定データファイルの作成について）
以下では、ＰＣ１００にインストールされているツールアプリケーションを用いて設定データファイルをどのように作成するかについて図３〜図５を参照しながら詳細に説明する。図３〜図５は、ツールアプリケーションの画面を例示した図である。
【００８５】
ＰＣ１００がツールアプリケーションを起動すると、ツールアプリケーション（表示入力制御部１１１１）は、産業用ネットワークシステム１内のＰＬＣ２００及び１台以上のスレーブ機器を検出し、検出結果に基づいて、例えば、図３に示すような、ネットワーク構成を示す画面を表示部１３０に表示する。
【００８６】
ユーザ（システム管理者）が図３の画面を通じてIO-Linkマスタとして機能するスレーブ機器を選択する操作を行うと、ツールアプリケーション（表示入力制御部１１１１）は、選択したスレーブ機器に接続されている１台以上の機器４００を検出し、図４に示すように、検出した１台以上の機器４００のリストを表示部１３０に表示する。
【００８７】
更に、ユーザが図４の画面を通じて機器４００（IO-Linkデバイス４００）を選択する操作を行うと、ツールアプリケーション（IODDファイル取得処理部１１１２）は、選択された機器４００に関するIODDファイルを所定のサーバからダウンロードする。
【００８８】
そして、ツールアプリケーション（表示入力制御部１１１１）は、ダウンロードされたIODDファイルを読み出し、図５に示すような画面を表示部１３０に表示する。
【００８９】
ユーザが、図５の画面を通じて、機器４００に関する各種動作設定値を変更し、画面上部のテキストボックスにファイル名を入力した上で「ALL EXPORT」ボタン又は「Changed part Export」ボタンを押すと、ツールアプリケーション（設定データ生成処理部１１１）は、入力されたファイル名の設定データファイルであって、各種項目の動作設定値の変更が反映された設定データファイルを生成する（設定データ生成ステップ）。
【００９０】
具体的には、設定データ生成処理部１１１は、「ALL EXPORT」ボタンが押された場合には全ての項目の情報（機器４００に関する全ての設定データ）を含む設定データファイルを生成し、「Changed part Export」ボタンが押された場合には、変更されていない項目の動作設定値を含まず、変更された項目の動作設定値を含む設定データファイルを生成する。
【００９１】
そして、ツールアプリケーション（送信処理部１１２）は、生成された設定データファイルをＰＬＣ２００に送信する（送信ステップ）。
【００９２】
なお、ユーザは、選択した機器４００について前記作業をＮ（Ｎ≧１）回以上を行うことによって、Ｎ個の設定データファイルを作成することができる。即ち、ユーザは、Ｎ種類の動作の各々について、選択した機器４００に該動作を行わせるための動作設定値を含む設定データファイルを作成することができる。
【００９３】
（図５の画面に関する付記事項１）
図５の画面における「Set default value」ボタンは、全項目の動作設定値をデフォルト値に戻すためのボタンである。また、図５の画面における「DownLoad」ボタンは、ツールアプリケーション（変更データ生成部）に、全ての項目の情報を含む動作設定値変更データ（制御対象機器に対してＰＣ１００’から直接動作設定値を変更させるためのデータ）を生成させ、生成させた動作設定値変更データを直接制御対象機器に送信（ダウンロード）させるためのボタンである。
【００９４】
（図５の画面に関する付記事項２）
ユーザが機器４００を選択する操作を行った場合、図５の画面にエクスポート用の第３のボタンを設けたものに相当する画面を表示してもよい。そして、設定データ生成処理部１１１は、前記第３のボタンが押された場合、所定の一部の項目の情報（機器４００に関する一部の設定データ）を含む設定データファイルを生成してもよい。
【００９５】
（設定データファイルの詳細について）
設定データファイルの詳細について図６を参照しながら説明する。図６は、ＰＣ１００が作成する設定データファイルのデータ構造について説明するための図である。
【００９６】
図６に示すように、設定データファイルは、宛先情報と、設定データ情報とを含んでいる。図６に示すように、宛先情報には、制御対象機器の宛先に関する各種情報が含まれており、設定データ情報には、１つ以上の設定データと、設定データファイルに含まれている設定データの個数を示す情報とが含まれている。
【００９７】
設定データはメタ情報及び実情報を含んでおり、設定データのメタ情報は、設定データの実情報に関する各種情報（実情報のデータ長等）を含んでいる。
【００９８】
（指示データおよび設定値書込用ＦＢの詳細について）
指示データ及び設定値書込用ＦＢの詳細について図７及び図８を参照しながら説明する。図７及び図８は、設定値書込用ＦＢについて説明するための図である。本実施形態では、ＰＬＣ２００は、設定値書込用ＦＢとして、図７の（ａ）のEC_IOLWRITE、及び／又は、図７の（ｂ）のNX_IOLWRITEを利用する。
【００９９】
図７及び図８からわかるように、EC_IOLWRITE及びNX_IOLWRITEは、５つの入力変数を受けて動作する。これら５つの入力変数は指示データに含まれている。
【０１００】
これら５つの入力変数の詳細が図８の（ａ）〜（ｃ）に示されている。本実施形態では、図８に示されている入力変数のうち、NodeAdr、UnitProxy、PortNo、及び、IDcheckの４つの入力変数に特徴があるので、これらについて以下に詳細に説明する。
【０１０１】
（変数NodeAdr及び変数UnitProxyについて）
変数NodeAdrは、制御対象機器（機器４００）の宛先を特定するためにEC_IOLWRITEが参照する変数である。
【０１０２】
変数UnitProxyは、制御対象機器の宛先を特定するためにNX_IOLWRITEが参照する変数である。図８の（ｂ）に示すように、変数UnitProxyは構造体型の変数であり、変数UnitProxyの複数のメンバ変数のうちの１つは、前述の変数NodeAdrである。
【０１０３】
ＨＭＩ１０は、前述の方法１を用いるように設定されている場合には変数NodeAdrの値"0"を含む指示データをＰＬＣ２００に送信し、前述の方法２を用いるように設定されている場合には、変数NodeAdrの値ｉ（i：１以上１９２以下の整数）を含む指示データをＰＬＣ２００に送信する。
【０１０４】
図７の（ａ）及び図８の（ａ）からわかるように、EC_IOLWRITEは、指示データに含まれている入力変数NodeAdrの値が"0"である場合には設定データファイルに含まれるノードアドレスに基づいて宛先を特定し、入力変数NodeAdrの値が"0"でない場合には入力変数NodeAdrの値に基づいて宛先を特定する。
【０１０５】
また、図７の（ｂ）及び図８の（ｂ）からわかるように、NX_IOLWRITEは、指示データに含まれているメンバ変数NodeAdrの値が"0"である場合には設定データファイルに含まれるノードアドレスに基づいて宛先を特定し、メンバ変数NodeAdrの値が"0"でない場合にはメンバ変数NodeAdrの値に基づいて宛先を特定する。
【０１０６】
（変数PortNoについて）
変数PortNoは、制御対象機器の宛先を特定するためにEC_IOLWRITE及びNX_IOLWRITEが参照する変数である。
【０１０７】
ＨＭＩ１０は、前述の方法１を用いるように設定されている場合には変数PortNoの値"0"を含む指示データをＰＬＣ２００に送信し、前述の方法２を用いるように設定されている場合には、変数PortNoの値ｊ（ｊ：１以上１６以下の整数）を含む指示データをＰＬＣ２００に送信する。
【０１０８】
図７及び図８の（ａ）からわかるように、EC_IOLWRITE（NX_IOLWRITE）は、指示データに含まれている変数PortNoの値が"0"である場合には設定データファイルに含まれるポート番号に基づいて宛先を特定し、変数PortNoの値が"0"でない場合には変数PortNoの値に基づいて宛先を特定する。
【０１０９】
（変数IDcheckについて）
変数IDcheckは、前記照合処理を実行すべきか否かを判定するためにEC_IOLWRITE及びNX_IOLWRITEが参照する変数である。即ち、変数IDcheckは、前述の「所定の入力変数」である。
【０１１０】
ＨＭＩ１０は、照合処理の実行を有効にする設定がされている場合には変数IDcheckの値"FALSE"（前述の「所定の値」）を含む指示データをＰＬＣ２００に送信し、照合処理の実行を無効にする設定がされている場合には変数IDcheckの値"TRUE"を含む指示データをＰＬＣ２００に送信する。
【０１１１】
図７及び図８の（ａ）からわかるように、EC_IOLWRITE（NX_IOLWRITE）は、変数IDcheckの値が"FALSE"である場合には前記照合処理を実行すべきであると判定し、変数IDcheckの値が"TRUE"である場合には前記照合処理を実行すべきでないと判定する。
【０１１２】
EC_IOLWRITE（NX_IOLWRITE）は、前記照合処理を実行すべきであると判定した場合には、前記照合処理を実行する。
【０１１３】
EC_IOLWRITE（NX_IOLWRITE）は、前記照合処理を実行した結果、設定データファイルに格納されているベンダＩＤが機器４００から取得したベンダＩＤと一致しないか、又は、設定データファイルに格納されているデバイスＩＤが機器４００から取得したデバイスＩＤと一致しない場合には、「照合失敗」を示す情報を出力する。即ち、EC_IOLWRITE及びNX_IOLWRITEは、「照合失敗」を示す出力変数ErrorIDの値を含む、図８の（ｃ）の５つの出力変数の値を出力する。
【０１１４】
一方、EC_IOLWRITE（NX_IOLWRITE）は、機器照合ステップにて前記照合処理を実行した結果、設定データファイルに格納されているベンダＩＤが機器４００から取得したベンダＩＤと一致し、且つ、設定データファイルに格納されているデバイスＩＤと機器４００から取得したデバイスＩＤとが一致する場合には「照合成功」を示す情報を出力する。EC_IOLWRITE（NX_IOLWRITE）は、「照合成功」を示す情報を出力した場合には、設定データファイルをEtherCATネットワーク（制御対象機器と接続されているスレーブ機器）に送信する。
【０１１５】
（その他の変数について）
入力変数FileNameは、EC_IOLWRITE（NX_IOLWRITE）が記憶部２４０から読み出して制御対象機器に送信すべき前述の「特定の設定データファイル」（即ち、制御対象機器がリストアすべき設定データファイル）のファイル名を示す変数である。
【０１１６】
以上、指示データ及び設定値書込用ＦＢの詳細について説明した。
【０１１７】
設定値書込用ＦＢが以上の処理を実行した結果、制御対象機器は、リストアすべき設定データファイルの受信及び記録を行い、リストアした設定データファイルに基づいて自機の動作設定値を変更することになる。即ち、制御対象機器は、現場担当者の所望する動作を行うことになる。
【０１１８】
＜実施形態２＞
以下、更に図９を参照して、本発明の別の一実施形態に係る産業用ネットワークシステムについて説明する。なお、説明の便宜上、実施形態１にて説明した部材と全く同じ機能又は略同じ機能を有する部材については、基本的には、同じ符号を付記した上でその説明を省略する。
【０１１９】
図９は、本実施形態に係る産業用ネットワークシステムの構成を示した図である。
【０１２０】
図９に示すように、本実施形態に係る産業用ネットワークシステム１’には、実施形態１に係るＰＣ１００の代わりに、ＰＣ１００’が含まれている。
【０１２１】
ＰＣ１００’は、ＰＣ１００と以下の点で相違している。
【０１２２】
即ち、ＰＣ１００’のツールアプリケーションは、ユーザが図４の画面において機器４００を選択する操作を行った場合、図５の画面にダウンロード用の第４のボタン及び第５のボタンを設けたものに相当する画面を表示する。
【０１２３】
そして、ツールアプリケーションは、ＰＣ１００’と制御対象機器とがケーブルで直接接続されている状態において前記第４のボタン又は前記第５のボタンが押された場合、以下の処理を行う。
【０１２４】
即ち、前記第４のボタンが押された場合、ツールアプリケーション（変更データ生成部）は、所定の一部の項目の情報を含む動作設定値変更データ（制御対象機器に対してＰＣ１００’から直接動作設定値を変更させるためのデータ）を生成し、生成した動作設定値変更データを機器４００に送信（ダウンロード）する。
【０１２５】
同様に、前記第５のボタンが押された場合、ツールアプリケーション（変更データ生成部）は、変更されていない項目の動作設定値を含まず、変更された項目の動作設定値を含む動作設定値変更データを生成し、生成した動作設定値変更データを機器４００に送信（ダウンロード）する。
【０１２６】
（実施形態１、２に関する変形例）
産業用ネットワークシステムが設置されている現場は、複数の区画に区分されていてもよい。そして、各区画には、１台の機器４００又は同じ種類の複数台の機器４００が設置されていてもよい。
【０１２７】
この場合、ＨＭＩ１０は、前記複数の区画の各々について、対象の区画内に設置されている全ての機器４００（制御対象機器）に所望の動作を行わせるためのＵＩ部品を表示してもよい。また、システム管理者は、ＰＬＣ２００が機器４００の宛先を特定するための方法として前述の方法２を用いるように産業用ネットワークシステムを設定してもよい。
【０１２８】
現場担当者が特定のＵＩ部品をタップする操作を行うと、ＨＭＩ１０は、そのＵＩ部品に対応する区画内の全ての機器４００（Ｑ台の制御対象機器）について「機器４００のノードアドレスを示す変数NodeAdrの値」を含むような指示データを生成してもよい。
【０１２９】
ＰＬＣ２００がＨＭＩ１０が生成した指示データを取得すると、宛先特定部２１３２は、指示データに含まれるＱ個の変数NodeAdrの各値（別途指定される情報）を参照し、この情報に基づいて制御対象機器の宛先を複数（Ｑ個）特定してもよい。
【０１３０】
なお、本変形例では、システム管理者は、区画毎に、現場担当者が対象の区画に設置されている機器４００に実行させることを所望する動作の種類の数と同数の設定データファイルを作成すればよい。
【０１３１】
即ち、本変形例では、システム管理者は、機器毎に、現場担当者が対象の機器４００に実行させることを所望する動作の種類の数と同数の設定データファイルを作成する必要はない。
【０１３２】
従って、本変形例では、システム管理者は、少ない手間で、必要な全ての設定データファイルを作成することができる。
【０１３３】
＜実施形態３＞
実施形態１、２のＰＣ（ＰＣ１００、１００’）及びＰＬＣ２００の制御ブロック（特に、設定データ生成処理部１１１、送信処理部１１２、及び、ＦＢ処理部２１３）は、集積回路（ＩＣチップ）等に形成された論理回路（ハードウェア）によって実現してもよいし、ＣＰＵ（Central Processing Unit）を用いてソフトウェアによって実現してもよい。
【０１３４】
後者の場合、ＰＣ及びＰＬＣは、各機能を実現するソフトウェアであるプログラムの命令を実行するＣＰＵ、前記プログラム及び各種データがコンピュータ（又はＣＰＵ）で読み取り可能に記録されたＲＯＭ（Read Only Memory）又は記憶装置（これらを「記録媒体」と称する）、前記プログラムを展開するＲＡＭ（Random Access Memory）などを備えている。そして、コンピュータ（又はＣＰＵ）が前記プログラムを前記記録媒体から読み取って実行することにより、本発明の目的が達成される。上記記録媒体としては、「一時的でない有形の媒体」、例えば、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、前記プログラムは、該プログラムを伝送可能な任意の伝送媒体（通信ネットワークや放送波等）を介して前記コンピュータに供給されてもよい。なお、本発明は、前記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
【０１３５】
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。さらに、各実施形態にそれぞれ開示された技術的手段を組み合わせることにより、新しい技術的特徴を形成することができる。
【産業上の利用可能性】
【０１３６】
本発明は、産業用ネットワークシステムに好適に利用することができる。
【符号の説明】
【０１３７】
１００、１００’      ＰＣ（ＰＬＣ制御データ生成装置）
１１０                  ＣＰＵ
１１１                    設定データ生成処理部（設定データ生成部）
１１２                    送信処理部（送信部）
１１１１                    表示入力制御部
１１１２                    ＩＯＤＤファイル取得処理部（項目情報取得部）
２００                ＰＬＣ（プログラマブルロジックコントローラ）
２１０                  ＣＰＵ
２１３                    ＦＢ処理部
２１３１                    機器照合部
２１３２                    宛先特定部
２４０                  記憶部
３００−１、３００−２  スレーブ機器
４００                IO-Linkデバイス（制御対象機器）
【図１】
0006477178.tif 000002
【図２】
0006477178.tif 000003
【図３】
0006477178.tif 000004
【図４】
0006477178.tif 000005
【図５】
0006477178.tif 000006
【図６】
0006477178.tif 000007
【図７】
0006477178.tif 000008
【図８】
0006477178.tif 000009
【図９】
0006477178.tif 000010