説明

モーションシステム

【課題】モーションシステムの制御用途を詳細に判定できるようにするとともに、オンラインでシステム内の一部機械ユニットが交換されるようなケースでも、それに対応してアプリケーションプログラムを切り替え可能なモーションシステムを提供する。
【解決手段】コントローラ1は、機器構成情報収集部100と、機種情報収集部101と、制御プログラム選択部102と、制御プログラム取得部103と、機器構成情報104と、全機器機種情報と、判定用データベース106と、制御アプリケーションプログラム格納エリア107を有し、制御対象機器2iは、機種情報通知部200iと、機種情報保持部201iを有し、アプリケーションサーバー4は、制御プログラム送信部400と、各種制御アプリケーションプログラムエリア401を有する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数の制御対象機器、コントローラ、アプリケーションサーバー、モーションネットワークを備えたモーションシステムに関し、特に、コントローラアプリケーションプログラムの自動構築を可能とするモーションシステムに関する。
【背景技術】
【0002】
従来のモーションシステムでは、適用すべき機械システム向けに組み付けられ、その機械を最適に制御できるようにプログラムされたアプリケーションプログラムが、ユーザの指示にてコントローラに書き込まれ実行されるようになっている。この場合アプリケーションプログラムは、産業用ロボットシステムのように、ロボットを制御するための基本的なプログラムがロボット装置ベンダーにてあらかじめ書き込まれ、さらにそのロボットをどのように動かすかというさらに上位のプログラムがロボットシステムのユーザによって組まれて書き込まれるというように、アプリケーションプログラム自体が階層化していることもある。しかし、いずれの場合も人の判断によって書き込まれるプログラムが指示・選択されている。
一方、アプリケーションプログラムが定型化されており、その中から選択すれば済むような場合には、制御機器の構成から、どのアプリケーションプログラムを書き込めばよいか、コントローラ自身で選択してインストールすることにより、アプリケーションプログラムの書き込みを自動化しているものもある(例えば、特許文献1参照)。
【0003】
図14は、従来技術を示すアプリケーションプログラムを自動的にインストールするモーションシステムの機能ブロック図である。
図14において、801はコントローラ、803は機器判定部、804はドライバインストーラ、805はドライバ、806はアプリケーション判定部、807はアプリケーションインストーラ、808はアプリケーション、809はコントローラ801の基本プログラム、810は計算機内アプリケーション記憶部、811は計算機、821、822は制御機器、830はネットワーク、861は機器構成と対応表の比較部、862はアプリケーション判定用の機器構成との対応表、863は機器記録部である。
以下、図14を用いて、従来技術によるアプリケーションプログラムを自動的にインストールするモーションシステムの構成および動作について説明する。
コントローラ801は、ネットワーク830を介して上位の計算機811に接続されている。コントローラ801内のコントローラソフトウェア内には、機器判定部803、アプリケーション判定部806がある。
まず、コントローラ801が起動されるとこの機器判定部803が実行され、配下の制御機器821、822をサーチして情報を収集する。アプリケーション判定部806は、機器判定部803で判定された制御機器821、822の種類、個数に基づいてインストールすべきアプリケーションを判定する。尚、図14では機器構成を比較するための対応表862を上位計算機811側においているが、コントローラ801側にあってもかまわない。
次に、アプリケーション判定部806で判定されたアプリケーションは、計算機811からコントローラ801にネットワーク830経由で送信され、アプリケーションインストーラ807によってインストールされる。
【0004】
このように従来のモーションシステムは、ユーザが接続した制御機器に応じたアプリケーションの選択とインストール工程を意識することなく、コントローラにアプリケーションをインストールするものである。
【特許文献1】特開2002−182919号公報(第9頁、第.10図)
【発明の開示】
【発明が解決しようとする課題】
【0005】
しかしながら、従来技術では、制御機器の種類とその数によってのみアプリケーションプログラムを判断するので、同じ組み合わせでも別のアプリケーションプログラムが組まれている場合には正しい選択・判断ができずコントローラにアプリケーションプログラムをインストールすることができないといった問題があった。
また、従来技術ではアプリケーションプログラムの選択・インストールはシステム起動時に限定され、例えば途中で機械の一部ユニットを交換しつつ作業を継続するような場合、例えば指状のマニュピュレータ部分をねじ締め用工具に取り替える場合などでは一旦装置の電源を切って人手で交換した後、再立ち上げが必要であった。
【0006】
本発明はこのような問題点に鑑みてなされたものであり、モーションシステムの制御用途を詳細に判定できるようにするとともに、オンラインでシステム内の一部機械ユニットが交換されるようなケースでも、それに対応してアプリケーションプログラムを切り替え可能なモーションシステムを提供することを目的とする。
【課題を解決するための手段】
【0007】
上記問題を解決するため、請求項1に記載の発明は、複数の制御対象機器がモーションネットワークで接続されたコントローラと、前記モーションネットワークとは別のネットワークで前記コントローラと接続され、前記コントローラ用の複数の制御アプリケーションプログラムを保持するアプリケーションサーバーと、を備えたモーションシステムにおいて、前記コントローラは、前記モーションネットワークを通じてトポロジーを含めた前記モーションネットワーク上の機器構成情報を収集する機器構成情報収集部と、前記各制御対象機器の保持する機種を特定するための機種情報を収集する機種情報収集部と、前記制御アプリケーションプログラムで必要とされる機種構成を記述した判定用データベースと、収集した前記機器構成情報と全ての前記制御対象機器の前記機種情報および前記判定用データベースに基づいて前記制御アプリケーションプログラムを選択する制御プログラム選択部と、選択された前記制御アプリケーションプログラムを前記アプリケーションサーバーに要求し取得する制御プログラム取得部と、を有するものであり、前記制御対象機器は、自機器の前記機種情報を保持する機種情報保持部と、前記機種情報収集部からの要求に応じて自機器の前記機種情報を通知する機種情報通知部を有するものであり、前記アプリケーションサーバーは、前記制御プログラム取得部からの要求に応じて要求された前記制御アプリケーションプログラムを送信する制御プログラム送信部を有するものであることを特徴とするものである。
【0008】
また、請求項2に記載の発明は、請求項1に記載のモーションシステムにおいて、前記コントローラは、モーションシステム起動時に、先ず、前記機器構成情報収集部で前記機器構成情報を収集し、次に、機種情報収集部で前記モーションネットワークに接続される全ての前記制御対象機器の前記機種情報を収集し、次に、制御プログラム選択部でこれら収集した各情報と前記判定用データベースとを比較することにより前記制御用アプリケーションプログラムを特定し、次に、制御プログラム取得部で前記アプリケーションサーバーから前記制御アプリケーションプログラムを取得し、前記制御アプリケーションプログラムを実行する、というシーケンスを有することを特徴とするものである。
【0009】
また、請求項3に記載の発明は、請求項1に記載のモーションシステムにおいて、前記コントローラの保持する前記判定用データベースは、前記モーションネットワークに接続された全ての制御対象機器数と、機種別機器数と、ネットワークトポロジーパタンと対応する制御アプリケーションプログラム名データと、を含むレコードからなることを特徴とするものである。
【0010】
また、請求項4に記載の発明は、請求項2に記載のモーションシステムにおいて、前記コントローラは、前記モーションネットワークに接続された一部の前記制御対象機器が取り除かれたり、新たな前記制御対象機器が接続されたりして機器構成が変更された場合にこの事象を検出する機器構成変更検出部を有し、前記事象発生時には、前記制御アプリケーションプログラムの実行を停止後、前記モーションシステム起動時と同様のシーケンスを実行し、新たな制御アプリケーションプログラムを特定し、前記アプリケーションサーバーから前記新たなアプリケーションプログラムを取得することを特徴とするものである。
【0011】
また、請求項5に記載の発明は、請求項1に記載のモーションシステムにおいて、前記制御対象機器は、機能毎にユニット化され、該ユニット内に複数の前記制御対象機器が前記モーションネットワーク用の配線で接続されてまとめられており、前記制御対象機器内に保持される前記機種情報には、どのユニットに含まれる機器であるかを識別するコードであるユニットIDが含まれていることを特徴とするものである。
【0012】
また、請求項6に記載の発明は、請求項1または2に記載のモーションシステムにおいて、前記モーションネットワークは、IEEE1394であり、前記機器構成情報は、IEEE1394規定のトポロジーマップであることを特徴とするものである。
【0013】
また、請求項7に記載の発明は、請求項4に記載のモーションシステムにおいて、前記機器構成変更検出部は、IEEE1394で定義されているバスリセット信号に基づいて機器構成の変更を検出するものであることを特徴とするものである。
【発明の効果】
【0014】
請求項1、2、3に記載の発明によると、モーションネットワーク中の制御対象機器の機種とその個数だけでなく、機器構成情報収集部によって収集されたネットワークトポロジーを含めた機器構成情報と、判定用データベース中の制御アプリケーションプログラムで必要とされているネットワークトポロジーとを照合することができるため、システムを構成する制御対象機器の機種と個数が他のアプリケーションプログラムと同一の構成であっても、制御アプリケーションプログラムが同一であるかどうか特定でき、モーションシステムの制御用途を詳細に判定できる。
【0015】
また、請求項4に記載の発明によると、オンラインでシステムの一部機械ユニットが交換されるようなケースでは、コントローラ内部の機器構成変更検出部がこれを検出し、いったんアプリケーションプログラムの実行を停止後、再度あらたな制御対象機器構成に対応した制御アプリケーションプログラムを取得することができるため、オンラインでシステム内の一部機械ユニットが交換されるようなケースでも、それに対応してアプリケーションプログラムを切り替え、動作を継続させることができる。
【0016】
また、請求項5に記載の発明によると、モーションシステム内の機械がユニット化されている場合に、コントローラの制御プログラム選択部にて機器構成、機種構成の判断を行う際に、各機器のユニットIDを読み出すことによって、システムを構成する制御対象機器の機種と個数が他のアプリケーションプログラムと同一構成の判定とネットワークトポロジーの判定に加え、ユニット構成が同一であるかを判定することができるようになるため、制御アプリケーションプログラムの特定が、一層詳細に判定できる。
【0017】
また、請求項6に記載の発明によると、モーションネットワークとしてIEEE1394を適用するので、機器構成情報収集部としてトポロジーマップの収集機能を利用でき、請求項1または2に記載の発明の効果を容易に実現することができる。
【0018】
また、請求項7に記載の発明によると、制御対象機器が、ユニット単位で交換された場合、交換されたことをバスリセット信号によって検出し、新たなユニットに対応した制御アプリケーションプログラムに切替える手順をとるので、オンラインでのユニット単位での自動交換がなされた場合でも、制御用アプリケーションプログラムを対応して切替えることができるようになる。
【発明を実施するための最良の形態】
【0019】
以下、本発明の具体的実施例について、図を参照して説明する。
【実施例1】
【0020】
図1は、本発明を適用するモーションシステムの構成図である。
図1において、1はコントローラ、2i(i=1、2、・・・)は制御対象機器、4はアプリケーションサーバー、5はコントローラと制御対象機器を接続するモーションネットワーク、6は例えばイーサネット(Ethernet登録商標)などの上位ネットワークである。図1では制御対象機器2i(i=1、2、・・・)は、2am サーボドライブ(m=1、2、・・・)、と2bn I/O(n=1、2、・・・)から成るものとして例示している。
また、図2は、本発明の第1実施例を示すモーションシステムの各内部機能ブロック図であり、図1におけるコントローラ1、制御対象機器2i(サーボドライブ2am、I/O2bnから成る)、アプリケーションサーバー4の各内部機能ブロック図を示している。
図2において、100は機器構成情報収集部、101は機種情報収集部、102は制御プログラム選択部、103は制御プログラム取得部、104は機器構成情報、105は全機器機種情報、106は判定用データベース、107はコントローラ1にインストールされた制御アプリケーションプログラム格納エリアであり、これらはコントローラ1内にあるものとする。
また、200iは機種情報通知部、201iは機種情報保持部であり、これらは制御対象機器2i内にあるものとする。
また、400は制御プログラム送信部、401は複数の制御アプリケーションプログラムの実体のファイルを格納している各種制御アプリケーションプログラムエリアであり、これらはアプリケーションサーバー4内にあるものとする。
本発明の特徴とする点は以下のとおりである。
すなわち、コントローラ1は、モーションネットワーク5とは別のネットワーク、例えばイーサネット(登録商標)6でアプリケーションサーバー4と接続され、モーションネットワーク5を通じてトポロジーを含めたモーションネットワーク5上の機器構成情報を収集する機器構成情報収集部100と、各制御対象機器2iの保持する機種を特定する機種情報を収集する機種情報収集部101と、制御アプリケーションプログラムで必要とされる機種構成を記述した判定用データベース106と、収集した機器構成情報と全ての制御対象機器2iの機種情報および判定用データベース106に基づいて制御アプリケーションプログラムを選択する制御プログラム選択部102と、選択された制御アプリケーションプログラムをアプリケーションサーバー4に要求し取得する制御プログラム取得部103と、を有するものであり、制御対象機器2iは、自機器の機種情報を保持する機種情報保持部201iと、コントローラ1の機種情報収集部101からの要求に応じて自機種情報を通知する機種情報通知部200iを有するものであり、アプリケーションサーバー4は、コントローラ1用の複数の制御アプリケーションプログラムを保持し、コントローラ1の制御プログラム取得部103からの要求に応じて制御アプリケーションプログラムを送信する制御プログラム送信部400を有するものであるとしている点である。
【0021】
なお、図2では、コントローラ1内の制御プログラム取得部103とアプリケーションサーバー4内の制御プログラム送信部400は、例えばイーサネット(登録商標)などの上位ネットワーク6で接続されており、実際にはFTPなどTCP/IPベースのファイル転送プロトコルによって制御アプリケーションファイルの読み出しなどで実現可能であるが、本実施例中では制御プログラム要求600とそれに対する制御プログラム応答601として説明している。
また、コントローラ1内の機種情報収集部101と制御対象機器2i内の機種情報通知部200iとはモーションネットワーク5(本実施例ではIEEE1394を前提として説明している)で接続されており、実際にはIEEE1394のAsynchronous通信で提供されているCSRレジスタReadサービスなどで容易に実現可能であるが、本実施例中では機種情報要求500iとそれに対する機種情報応答501iのやりとりとして説明している。
なお、図2の中で本来コントローラとして機能するための機能ブロックや通信処理を実行するための機能ブロックは当然備わっているものであるが、本発明の説明には直接関係しないため図示していない。
【0022】
図3、4は、本発明における機器構成情報104のデータ構造例の説明図である。
また、図5は、本発明における全機器機種情報105のデータ構想例の説明図である。
また、図6は、本発明における判定用データベース106のデータ構成例の説明図である。
また、図7〜10は、本発明の第1実施例を示すモーションシステムにおけるフローチャートであり、図7は本発明におけるコントローラ初期化処理手順、図8は本発明における機器構成情報収集部の処理手順、図9は本発明におけるノード#2i機種情報収集部の処理手順、図10は本発明における制御プログラム選択部の処理手順、図11は本発明における制御アプリケーションプログラムを取得する処理手順を示すフローチャートである。
以下、図3〜11を用いて本発明のモーションシステムにおける処理動作を順を追って説明する。
はじめに、ステップST1000で機器構成情報収集部100が実行される。
機器構成情報収集部100は起動されるとステップST1100でIEEE1394通信機能により標準的に備わっているトポロジーマップの読み出し、ノード数の読み出しを行う。このトポロジーマップ構成は図4に概略のデータ構造を示しているが、詳細はIEEEStd.1394−1995E.3.4章(p.309)に記載されている。次にステップST1101でコントローラ1内部の機器構成情報104を更新する。この機器構成情報104のデータ構造はIEEE1394のトポロジーマップと等価な内容であるが、ここではソフトウェアによる情報処理が容易なポインターチェインによるtree構造に変換して格納するものとする。
こうして機器構成情報収集部100が終了するとステップST1000で取得したノード数に基づき、ステップST1002をノード数分ループ実行する。ステップST1002ではノード#2iに対し機種情報収集部101を実行して機種情報201iの読み出しを実行する。
機種情報収集部101では、まずステップST1200にてノード#2iに機種情報要求500iを送信する。これを受信したノード#2iの機種情報通知部200iは機種情報201iのデータを読み出して機種情報応答501i電文を編集し、機種情報収集部101に該応答を返信する。機種情報収集部101ではステップST1201でこの機種情報応答501i受信を待ち、受信したらステップST1202にてコントローラ1内部の全機器機種情報105の対応するノード#2i行のデータを更新する。このデータ構造は図5(a)に示してあり、例えばノードID#0の制御対象機器の場合、読み出した機種情報中に、機種をグルーピングしている機種コード(この例の場合、I/O=1)、と型式コード(aaa−0001)を格納するとともに、図5(b)の表データとなっている機種コード別のカウンタ値(この場合機種コード1に治するカウンタ値)を1インクリメントする。
こうして全ノードの機種情報収集部101処理が終了すると、次にステップST1003で制御プログラム選択部102を起動する。制御プログラム選択部102では、まずステップST1400〜ST1402のループの中で判定用データベース106のレコードをj=0〜最終レコードまで順に取り出して、ステップST1000、ST1002で収集した機器構成情報104、全機器機種情報105の内容との一致判定を行う。一致判定は、ステップST1401にてまず総ノード数が一致するか判定し、一致した場合ステップST1404〜ST1406にて機種コード毎のノード数が全て一致するかを判定し、さらに一致した場合にはステップST1407にてトポロジーパタンが機器構成情報104のtree構造と一致するかを判定する。こうしてステップST1407で一致の判定であれば、そのレコードjに記されているアプリケーションファイル名(例えばapp_1.2.3tar.zなど)を戻り値として制御プログラム選択部102を終了する。一方、全てのレコードjをチェックしても一致すると判定できなかった場合には、実際の機器構成に相当する制御アプリケーションプログラムが用意されていないことになるので、しかるべきエラー処理、すなわちステップST1403における全レコード不一致処理が実施されて制御プログラム選択部102は異常終了する。ここで判定用データベースのレコード構成については図6に例示している。
こうして正常に制御アプリケーションプログラム名を判定用データベース106から取得できた場合には、ステップST1004で制御プログラム取得部103が起動される。
制御プログラム取得部103ではステップST1500にて、まずアプリケーションサーバー4に対し制御プログラム要求600を送信し、ステップST1003で取得した制御アプリケーションプログラム名に相当するファイルを要求する。これを受信したアプリケーションサーバー4内の制御プログラム送信部400では、各種制御アプリケーションプログラム401の中から指定された制御アプリケーションプログラム名に相当するファイルデータを読み出し、制御プログラム応答601として返信する。実際にはプログラムファイルは大きなデータ量となり、1回の通信パケットでは転送できないケースも考えられるが、このようなデータパケットの分割・組み立ての仕組みなどは上位ネットワーク内の標準的な通信機能、例えば、TCP/IP、FTPなどのプロトコルにて実現可能であるため本実施例では、詳細説明は省略する。制御プログラム取得部103ではこの制御プログラム応答601の受信をステップST1501にて待ち、受信した場合にはステップST1502にてコントローラ1内部の制御アプリケーションプログラム格納エリア107に格納する。
【0023】
なお、本実施例では判定用データベース106をコントローラ1内にあるものとして説明したが、データベース自体は制御アプリケーションサーバー4やその他のサーバー機器から必要に応じてロードするものとしてもよい。
【0024】
このように、本実施例に係るモーションシステムは、機種別のノード数を照合するだけでなく、ネットワーク中のトポロジーパタンを比較するので、より詳細に制御アプリケーションプログラムの選択判定を行わせることができるのである。
【実施例2】
【0025】
図12は、本発明の第2実施例を示すモーションシステムの構成図である。
図12において、110は機器構成変更検出部である、尚、図1、2と同じ説明符号のものは図1、2と同じ構成要素を示しているものとし、その説明は省略する。
本実施例が第1実施例と異なる点は、本実施例は制御対象機器が複数のユニットにまとめられている点と、コントローラ1内に機器構成変更検出部110が追加されている点である。
さらに図示していないが、制御対象機器であるサーボ(2aAm、2aBm、・・・)やI/O(2bAn、2bBn、・・・)内の機種情報中には機種コードや型式コードの他に、どのユニットに属すかを示すユニットIDが含まれている。機器構成変更検出部110は、モーションネットワーク5がIEEE1394ベースの場合には、IEEE1394通信部からのバスリセット信号処理として実現することができる。
【0026】
図13は、本発明の第2実施例を示すモーションシステムにおける動作のフローチャートである。
図12ではモーションシステム内にはユニットA、ユニットB、ユニットCの3種類のユニットがモーションネットワークを介してコントローラと接続されている。ここでマニュピュレート用ユニットCを交換し、別の工具のついたユニットDにオンライン作業中に取替えを行う場合について、図12および図13のフローチャートを使って説明する。
図12においてユニットCをオンライン中にモーションネットワーク5から切り離したり別のユニットDに接続を切替えた場合には、IEEE1394のバスリセット信号がネットワーク上の各ノードで発生する。このバスリセット信号を割込みとして受信したコントローラ1内のバスリセット割込みハンドラ、すなわち機器構成変更検出部110は、まず実行中の処理が残っていれば安全サイドで実行停止処理、すなわち通常の通信異常時の処理を行い、次に第1実施例で述べたコントローラ初期化処理を起動する。これら処理は既に第1実施例において図7〜10のフローチャートに沿って詳述された通りであり、最終的には、あらたな機器構成に対応した制御アプリケーションプログラムを取得して、実行を再開さえることができる。この際、本実施例では各制御対象機器2iのそれぞれが持つ機種情報201iに、ユニットID(A、B、C、D・・・)を含むので、判定用データベース106でも、機種コードとその個数、トポロジーパタンに加えて、ユニットIDの構成に関する情報が付加され、ユニット構成に応じた制御アプリケーションプログラムの対応付けができるように拡張されている。
【0027】
このように、本実施例に係るモーションシステムは、制御対象機器2iが、ユニット単位で交換された場合、交換されたことをバスリセット信号によって検出し、新たなユニットに対応した制御アプリケーションプログラムに切替える手順をとるので、オンラインでのユニット単位での自動交換がなされた場合でも、制御用アプリケーションプログラムを対応して切替えることができるようになる。またその際機種情報にユニットIDを含んでいるため、より詳細に制御アプリケーションプログラムの選択判定を行わせることができ、ユニットに応じた適切な制御アプリケーションを選択することができる。
【産業上の利用可能性】
【0028】
本発明は、モーションコントローラの制御ソフトウェアを自動で更新することが要求されるマニュピュレート装置などに適用して好適である。
【図面の簡単な説明】
【0029】
【図1】本発明を適用するモーションシステムの構成図
【図2】本発明の第1実施例を示すモーションシステムの各内部機能ブロック図
【図3】本発明における機器構成情報104のデータ構造例の説明図
【図4】本発明における機器構成情報104のデータ構造例(IEEE1394トポロジーマップ)の説明図
【図5】本発明における全機器機種情報105のデータ構想例の説明図
【図6】本発明における判定用データベース106のデータ構成例の説明図
【図7】本発明におけるコントローラ初期化処理手順のフローチャート
【図8】本発明における機器構成情報収集部の処理手順を示すフローチャート
【図9】本発明におけるノード#2i機種情報収集部の処理手順を示すフローチャート
【図10】本発明における制御プログラム選択部の処理手順を示すフローチャート
【図11】本発明における制御アプリケーションプログラムを取得する処理手順を示すフローチャート
【図12】本発明の第2実施例を示すモーションシステムの構成図
【図13】本発明の第2実施例を示すモーションシステムにおける動作のフローチャート
【図14】従来技術を示すアプリケーションプログラムを自動的にインストールするモーションシステムの機能ブロック図
【符号の説明】
【0030】
1 コントローラ
2i(i=1、2・・・) 制御対象機器
2am(m=1、2、・・・) 制御対象機器の一例:サーボドライブ
2bn(n=1、2、・・・)制御対象機器の一例:I/O
4 制御アプリケーションサーバー
5 モーションネットワーク(IEEE1394)
6 上位ネットワーク
100 機器構成情報収集部
101 機種情報収集部
102 制御プログラム選択部
103 制御プログラム取得部
104 機器構成情報
105 全機器機種情報
106 判定用データベース
107 制御アプリケーションプログラム格納エリア
110 機器構成変更検出部
200i(i=1、2、・・・) 機種情報通知部
201i(i=1、2、・・・) 機種情報保持部
400 制御プログラム送信部
401 各種制御アプリケーションプログラムファイル格納エリア
500i(i=1、2、・・・) 機器情報要求
501i(i=1、2、・・・) 機器情報応答
600 制御プログラム要求
601 制御プログラム応答
801 コントローラ
803 機器判定部
804 ドライバインストーラ
805 ドライバ
806 アプリケーション判定部
807 アプリケーションインストーラ
808 アプリケーションプログラム
809 コントローラの基本ソフトウェア
810 アプリケーション記憶部
811 計算機
821、822 制御機器
830 ネットワーク
861 機器構成と対応表の比較部
862 アプリケーション判定用の機器構成との対応表
863 機器構成の記録部

【特許請求の範囲】
【請求項1】
複数の制御対象機器(2i)がモーションネットワーク(5)で接続されたコントローラ(1)と、
前記モーションネットワーク(5)とは別のネットワーク(6)で前記コントローラ(1)と接続され、前記コントローラ(1)用の複数の制御アプリケーションプログラムを保持するアプリケーションサーバー(4)と、
を備えたモーションシステムにおいて、
前記コントローラ(1)は、
前記モーションネットワーク(5)を通じてトポロジーを含めた前記モーションネットワーク(5)上の機器構成情報を収集する機器構成情報収集部(100)と、
前記各制御対象機器(2i)の保持する機種を特定するための機種情報を収集する機種情報収集部(101)と、
前記制御アプリケーションプログラムで必要とされる機種構成を記述した判定用データベース(106)と、
収集した前記機器構成情報と全ての前記制御対象機器(2i)の前記機種情報および前記判定用データベース(106)に基づいて前記制御アプリケーションプログラムを選択する制御プログラム選択部(102)と、
選択された前記制御アプリケーションプログラムを前記アプリケーションサーバー(4)に要求し取得する制御プログラム取得部(103)と、を有するものであり、
前記制御対象機器(2i)は、
自機器の前記機種情報を保持する機種情報保持部(201i)と、
前記機種情報収集部(101)からの要求に応じて自機器の前記機種情報を通知する機種情報通知部(200i)を有するものであり、
前記アプリケーションサーバー(4)は、
前記制御プログラム取得部(103)からの要求に応じて要求された前記制御アプリケーションプログラムを送信する制御プログラム送信部(400)を有するものであることを特徴とするモーションシステム。
【請求項2】
前記コントローラ(1)は、
モーションシステム起動時に、
先ず、前記機器構成情報収集部(100)で前記機器構成情報を収集し、
次に、機種情報収集部(101)で前記モーションネットワーク(5)に接続される全ての前記制御対象機器(2i)の前記機種情報を収集し、
次に、制御プログラム選択部(102)でこれら収集した各情報と前記判定用データベース(106)とを比較することにより前記制御用アプリケーションプログラムを特定し、
次に、制御プログラム取得部(103)で前記アプリケーションサーバー(4)から前記制御アプリケーションプログラムを取得し、
前記制御アプリケーションプログラムを実行する、というシーケンスを有することを特徴とする請求項1記載のモーションシステム。
【請求項3】
前記コントローラ(1)の保持する前記判定用データベース(106)は、
前記モーションネットワーク(5)に接続された全制御対象機器数と、機種別機器数と、ネットワークトポロジーパタンと対応する制御アプリケーションプログラム名データと、を含むレコードからなることを特徴とする請求項1記載のモーションシステム。
【請求項4】
前記コントローラ(1)は、
前記モーションネットワーク(5)に接続された一部の前記制御対象機器が取り除かれたり、新たな前記制御対象機器が接続されたりして機器構成が変更された場合にこの事象を検出する機器構成変更検出部(110)を有し、
前記事象発生時には、前記制御アプリケーションプログラムの実行を停止後、前記モーションシステム起動時と同様のシーケンスを実行し、新たな制御アプリケーションプログラムを特定し、前記アプリケーションサーバー(4)から前記新たなアプリケーションプログラムを取得することを特徴とする請求項2記載のモーションシステム。
【請求項5】
前記制御対象機器(2i)は、機能毎にユニット化され、
該ユニット内に複数の前記制御対象機器が前記モーションネットワーク(5)用の配線で接続されてまとめられており、
前記制御対象機器(2i)内に保持される前記機種情報には、どのユニットに含まれる機器であるかを識別するコードであるユニットIDが含まれていることを特徴とする請求項1記載のモーションシステム。
【請求項6】
前記モーションネットワーク(5)は、IEEE1394であり、
前記機器構成情報は、IEEE1394規定のトポロジーマップであることを特徴とする請求項1または2記載のモーションシステム。
【請求項7】
前記機器構成変更検出部(110)は、IEEE1394で定義されているバスリセット信号に基づいて機器構成の変更を検出するものであることを特徴とする請求項4記載のモーションシステム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate