(57)【要約】【課題】  設定作業を、人手を煩わすことなく自動的に実行可能な生産設備用制御装置を得る。【解決手段】  生産設備用制御装置を、ネットワーク1と生産設備用制御装置2を接続すべく設けられたネットワーク接続手段9と、生産設備用制御装置2に取り込まれたデータに基づき所定の処理プログラムを実行するサービス手段5と、ネットワーク1を介して少なくとも自己のIPアドレスおよびポート番号、自己の固有識別番号、自己の固有識別名のいずれか一つ以上を他の生産設備用制御装置2に一定周期で送信する自サービス公布手段6と、ネットワーク1を介して他の生産設備用制御装置2に対してデータの入出力を行う自他サービス接続手段8と、ネットワーク1を介して他の生産設備用制御装置2に対してデータを検索する他サービス探知手段7と、で構成し、ネットワーク1を介した他のの生産設備用制御装置2の自サービス公布手段6と他サービス探知手段7間の通信方法としてマルチキャスト通信を、かつ自他サービス接続手段8間の通信方法としてユニキャスト通信を適用する。【選択図】        図２
2004171540.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して生産設備を制御すべく設けられた生産設備用制御装置であって、
前記ネットワークに接続すべく設けられたネットワーク接続手段と、
他の生産設備用制御装置から前記ネットワークを介して送信され前記ネットワーク接続手段を経由して取得されたデータおよび／または直結された前記生産設備から取得されたデータに基づき所定の処理プログラムを実行するサービス手段と、
前記ネットワーク接続手段を経由して前記ネットワークを介して少なくとも自己のＩＰアドレスおよびポート番号、自己の固有識別番号、自己の固有識別名のいずれか一つ以上を前記他の生産設備用制御装置に対して一定周期もしくは可変周期で送信する自サービス公布手段と、
前記ネットワーク接続手段を経由して前記ネットワークを介して前記他の生産設備用制御装置に対してデータの入出力を行う自他サービス接続手段と、
前記ネットワーク接続手段を経由して前記ネットワークを介して前記他の生産設備用制御装置に対してデータを検索する他サービス探知手段と、を備え、
前記ネットワークを介した前記他の生産設備用制御装置における前記自サービス公布手段と前記他サービス探知手段との間の通信方法としてマルチキャスト通信を、かつ前記自他サービス接続手段間の通信方法としてユニキャスト通信を適用することを特徴とする生産設備用制御装置。
【請求項２】
前記生産設備に対してデータを入出力すべく設けられ、前記データの入出力を実行するプログラムおよび／またはハードウェアを具備した生産設備制御手段を備えたことを特徴とする請求項１記載の生産設備用制御装置。
【請求項３】
前記生産設備制御手段が、少なくとも前記ＩＰアドレス、前記固有識別番号、前記固有識別名、前記ポート番号のいずれかのデータを保持する記憶領域を有し、前記データは前記一定周期毎もしくは可変周期毎に送信されたデータによって更新され、一定経過時間以上前記データが送信されない場合は前記記憶領域の前記データが削除されることを特徴とする請求項１または２記載の生産設備用制御装置。
【請求項４】
前記サービス手段内のプログラムおよび／またはハードウェア毎に固有の前記ＩＰアドレスと前記ポート番号が付与されていることを特徴とする請求項１または２記載の生産設備用制御装置。
【請求項５】
前記ネットワークが、相互に直接接続されていない複数のネットワークで構成されている場合に、前記複数のネットワークを相互に結合させる複数のネットワーク接続手段を具備し、双方のネットワーク間で行なわれるべきデータ通信の中継および中継拒否をすることを特徴とする請求項１または２記載の生産設備用制御装置。
【請求項６】
前記生産設備が加工機であり、前記サービス手段が最適な加工パラメータあるいは加工経路あるいは加工手順を算出するプログラムを有し、前記ネットワークを介して前記複数の生産設備用制御装置間で前記プログラムを並列に処理する機能を具備することを特徴とする請求項１または２記載の生産設備用制御装置。
【請求項７】
複数の生産設備用制御装置が、前記ネットワーク接続手段を介して前記ネットワークに接続されている場合に、前記自サービス公布手段によって自己の前記ＩＰアドレス、固有識別番号、固有識別名、前記ポート番号のいずれか１つ以上および生産設備用制御装置間の接続順序を表すデータを他の生産設備用制御装置にマルチキャスト送信あるいはユニキャスト送信することによって、生産設備用制御装置間の接続形態を順次決定する機能を具備することを特徴とする請求項１または２記載の生産設備用制御装置。
【請求項８】
複数の生産設備用制御装置における前記各サービス手段内で自己のサービス手段が有していないプログラムがある場合に、必要に応じて前記プログラムを有する他の生産設備用制御装置から前記ネットワークを介して送信することによって前記プログラムを前記自己のサービス手段内にコピーする機能を具備することを特徴とする請求項１または２記載の生産設備用制御装置。
【請求項９】
前記サービス手段の内容を表示する画像表示装置を備えたことを特徴とする請求項１または２記載の生産設備用制御装置。
【請求項１０】
前記画像表示装置が、画像上に表示された複数の生産設備用制御装置のうち１台を選択した場合に、前記選択された生産設備用制御装置に関するデータがさらに表示される機能を具備することを特徴とする請求項９記載の生産設備用制御装置。
【請求項１１】
前記画像表示装置が、前記各生産設備用制御装置と前記ネットワークによって構成されたネットワーク接続図を画像上に表示し、前記各生産設備用制御装置に関するデータをツリー構造として固定的あるいはアニメーション的に表示し、前記データを取得するためのコンピュータプログラムコードを併せて表示することを特徴とする請求項１０記載の生産設備用制御装置。
【請求項１２】
前記自他サービス接続手段が、ＨＴＴＰ(Hyper Text Transfer Protocol)クライアント、もしくはＳＯＡＰ(Simple Object Access Protocol)クライアント、もしくはＷｅｂＤＡＶ(Web-based Distributed Authoring and Versioning) クライアント、もしくはＦＴＰ（Ｆｉｌｅ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ） クライアント、もしくはＳＭＴＰ（Simple Ｍａｉｌ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）、
もしくはＸＭＬ（ｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）プロトコルクライアント、もしくはＩＭＡＰ（Ｉｎｔｅｒｎｅｔ  Ｍａｉｌ  Ａｃｃｅｓｓ）クライアント、もしくはＰＯＰ（Ｐｏｓｔ  Ｏｆｆｉｃｅ  Ｐｒｏｔｏｃｏｌ）クライアント、ＤＣＯＭ（登録商標：Ｄｉｓｔｒｉｂｕｔｅｄ  Ｃｏｍｐｏｎｅｎｔ  Ｏｂｊｅｃｔ  Ｍｏｄｅｌ）クライアント、ＣＯＲＢＡ（登録商標:Ｃｏｍｍｏｎ  Ｏｂｊｅｃｔ  Ｒｅｑｕｅｓｔ  Ｂｒｏｋｅｒ  Ａｒｃｈｉｔｅｃｔｕｒｅ）クライアント、で構成されていることを特徴とする請求項１または２記載の生産設備用制御装置。
【請求項１３】
ネットワークを介して生産設備を制御すべく設けられた複数の生産設備用制御装置による生産設備の制御方法であって、
ネットワーク接続手段によって前記ネットワークと前記生産設備用制御装置を接続するステップと、
前記他の生産設備用制御装置から前記ネットワークを介して送信され前記ネットワーク接続手段を経由して前記生産設備用制御装置に取り込まれたデータおよび／または直結された前記生産設備から取得されたデータに基づきサービス手段内の所定の処理プログラムを実行するステップと、
自サービス公布手段によって前記ネットワーク接続手段を経由して前記ネットワークを介して一定周期で、少なくとも自己のＩＰアドレス、ポート番号、固有識別番号、固有識別名のいずれか１つ以上を前記他の生産設備用制御装置に送信するステップと、
自他サービス接続手段によって前記ネットワーク接続手段を経由して前記ネットワークを介して前記他の生産設備用制御装置に対してデータの入出力を行うステップと、
他サービス探知手段によって前記ネットワーク接続手段を経由して前記ネットワークを介して前記他の生産設備用制御装置に対してデータを検索するステップと、を含んでなり、
前記ネットワークを介した前記複数の生産設備用制御装置における前記自サービス公布手段と前記他サービス探知手段との間の通信方法としてマルチキャスト通信を、かつ前記自他サービス接続手段間の通信方法としてユニキャスト通信を適用することを特徴とする生産設備用制御装置による生産設備の制御方法。
【請求項１４】
ネットワークを介して生産設備を制御すべく設けられた複数の生産設備用制御装置による生産設備の制御方法であって、
前記複数の生産設備用制御装置中の特定の１台のサービス手段に実装された第１の最適化プログラムにより前記生産設備である加工機の加工経路を最適化する第１の最適解を演算するステップと、
自他サービス接続手段を経由して前記ネットワークを介して他の生産設備用制御装置のサービス手段に前記第１の最適解をユニキャスト送信するステップと、
前記複数の生産設備用制御装置のサービス手段に実装された第２の最適化プログラムによって前記第１の最適解に基づき各生産設備用制御装置毎に第２の最適解を演算するステップと、
前記各生産設備用制御装置毎に演算された前記第２の最適解を前記特定の１台の生産設備用制御装置にユニキャスト送信するステップと、
前記各生産設備用制御装置毎に演算された前記第２の最適解に基づきそれぞれ前記加工機の加工経路を演算し、最短の加工経路が得られる第２の最適解を選択するステップと、を含んでなる生産設備用制御装置による生産設備の制御方法。
【請求項１５】
前記各生産設備用制御装置のサービス手段の一部に前記ネットワークを介して共用するファイル記憶領域が設けられていることを特徴とする請求項１または２記載の生産設備用制御装置。
【請求項１６】
ネットワークを介して生産設備を制御すべく設けられた生産設備用制御装置であって、
前記生産設備用制御装置の電源投入後に通信上のパラメータあるいはアプリケーションの動作パラメータについて、自動決定もしくは前記生産設備用制御装置間で合議制で決定するための手段を設けたことを特徴とする生産設備用制御装置。
【請求項１７】
請求項１または２記載の生産設備制御装置がネットワークを介して複数台接続されたことを特徴とする生産設備制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、生産設備用制御装置、生産設備制御システムおよび生産設備用制御装置による生産設備の制御方法に関し、特にネットワークに接続された生産設備用制御装置、生産設備制御システムおよび生産設備用制御装置による生産設備の制御方法に関するものである。
【背景技術】
【０００２】
従来の生産設備用制御装置（以下、制御装置と言う）による生産ラインは、例えば、特許文献１の図１に示されるような構成を有していた。図中の各制御装置にはＴＣＰ／ＩＰ通信におけるＩＰアドレスが割り当てられている。かかるＩＰアドレス付与後、所定の動作が起動され、稼動状態の集計およびＮＣプログラムの選択的ダウンロードが開始されて、生産活動が進行する。特許文献１記載の発明では、このとき収集されるデータの整理方法を工夫することで通信量を減らそうというものであった。
【０００３】
また、特許文献２の図１には、従来の他の制御装置が示されている。図中の生産設備制御手段はプロトコル変換器としての制御装置を介してネットワークに接続されており、各生産設備制御手段はＴＣＰ／ＩＰ通信におけるＩＰアドレスおよびポート番号により識別される。従来の他の制御装置は、予め設計された生産計画を表すガントチャートと、実際に生産設備を稼動させて得られる生産実績データに基づくガントチャートを比較することで正確な状況把握と生産計画の立案を行なうものであった。
【０００４】
さらに、特許文献３の図１には、従来の他の制御装置が示されている。図中の各制御装置にはＴＣＰ／ＩＰ通信におけるＩＰアドレスが割り当てられている。かかる従来の他の制御装置は、生産ラインを流れるワークの現在位置やラインとしての稼動状態を把握するために、制御装置間で「ワークオブジェクト」と称するデータをやり取りするように構成されていた。これにより生産設備において、現在到着しているワークに適した制御が可能で、メモリ容量を削減できる効果があった。
【０００５】
【特許文献１】特開平５−２０２２７号公報
【特許文献２】特開平９−２７２０４７号公報
【特許文献３】特開平１１−２４９７１７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
従来の制御装置は、各生産設備に直接接続している生産設備制御手段あるいは制御装置に対しては、以下の設定作業を生産開始前に実施する必要があった。例えば、稼動情報を表すデータの送信先はメインデータベースを持った制御装置であることを、各制御装置に対して個別に、システムエンジニアあるいはメンテナンス要員らが人手作業でパラメータ設定して回る必要があった。具体的には、どの装置にどのＩＰアドレスおよびホスト名を割り当てるのかというＴＣＰ／ＩＰネットワークの設計を行なった後、割り当てられた各ＩＰアドレスを表す文字列を各装置の設定画面に対して入力したり、各ホスト名を表す文字列を打ち込む等の作業である。さらに、ＮＣプログラムをどのＩＰアドレスの制御装置からダウンロードすればよいかについても同様に人手を使って設定して回る必要があった。さらに、生産ラインの構成が変更されたときにも人手作業で設定変更を実施する必要があった。このため、制御装置の数が多くなるにつれて、人手による設定作業は一層困難になっていくという問題があった。
【０００７】
また、設定作業を行なうメンテナンス要員はネットワークに関する知識、生産設備に関する知識、アプリケーションソフトに関する知識を併せ持つ必要がありその教育に時間がかかる、人により能力差が大きくメンテナンスにむらができるなどの問題点があった。
【０００８】
さらに、近年インターネットの発展普及によってこれまで述べてきたような構内のネットワークをインターネットにも接続し、インターネット側から構内の制御装置にアクセスして情報のやり取りを行なうことが一般化しつつある。しかしながら、ＩＰアドレスの設定、ルータと呼ばれるインターネット接続装置の設定、アプリケーションのインターネット対応設定など、複数の専門領域の知識を必要とする設定作業は増える方向にあり、一層その教育に時間がかかるという問題があった。
【０００９】
一方、ネットワーク内のすべての制御装置が受信すべきデータパケットを流すことでネットワーク内の制御装置の所在を確認することも可能である。要するに、いわゆるブロードキャスト通信を用いる方式である。しかし、このようなブロードキャスト通信を制御装置間の通信手段として適用すると、以下の問題が生じた。
【００１０】
まず、ネットワークの通信量が増加することと、データパケットの到達範囲の制御が困難になること等の問題が生じた。近年のネットワーク、とりわけイーサネット（登録商標）を用いたＩＰネットワークはスイッチング・ハブとルータにより構成されることが一般的である。これらのネットワーク機器はデータパケットの到達範囲、流通先を制御することで通信量の抑制を行なっている。しかしながら、ブロードキャスト通信はこのようなスイッチング・ハブを素通りするので、通信量の抑制の効果が全く得られなくなり、他のデータ通信に悪影響を及ぼす旧態なネットワークに逆戻りする事態となった。
【００１１】
また、各装置のネットワーク通信インターフェース回路は、通常、マルチキャストパケットはインターフェース回路内で処理してＯＳ（オペレーティングシステム、基本ソフト）にそのパケットを引き渡すか、無関係なパケットとして破棄するかの処理を行なう一方、ブロードキャストパケットは引渡しあるいは破棄の判断処理を行なわずに通過させる処理が行なわれる。この結果、同報通信の目的にマルチキャストもしくはブロードキャスト通信のいずれかを使用した場合、一見同じように目的が達成されるかに見えて、ブロードキャスト通信ではＯＳに不要なパケットの処理をゆだねており、ある装置にとって無関係なブロードキャスト通信が多くなるにつれ、その装置は無意味な処理の負荷が増すことになる。このようにブロードキャスト通信では、最新のネットワーク技術を享受できないばかりか、他の演算処理に無意味に悪影響を及ぼすという重大な問題があった。
【００１２】
さらに、ネットワーク内に複数の種類のサービスを存在させたい場合に、ブロードキャスト通信で自己のサービスの存在やサービス内容を公布することにすると、データパケット上にそれなりのデータフォーマットを設計しておき、そのフォーマットに適応した利用を行わねばならない。よって、新しいサービスを実行するアプリケーションを後から付け加えたい場合には、それが可能になるようにデータフォーマットの再設計が必要となった。簡単な再設計で済むのなら問題は生じないが、大幅に変更したくなったときに変更しきれなくなる場合があった。なお、ここでいうサービスとは、例えば、ある装置が他の装置からの依頼に応じて提供することが可能な演算処理などを指しているが詳細は後述する。
【００１３】
上述のように、ブロードキャスト通信の適用は他のデータ通信との干渉、サービスの追加の面に問題が生じた。要するに、最初に設計したアプリケーションのみが利用され、新しいアプリケーションの追加を許さず、ネットワークもこの目的のデータ通信のみを行なうことにするという独善的システムになってしまう問題が生じた。
【００１４】
また、複数の制御装置の動作状態を表すデータを収集して複数の生産設備からなる生産ラインの稼動状態を把握するための情報システムを構築する際は、制御装置側をいわゆるサーバとし、生産ラインの統括制御装置側をいわゆるクライアントとして、クライアント―サーバの形態をとるが、かかる形態では、各制御装置でごくまれに発生するエラー状態を検知するために統括制御装置が複数の制御装置に順番に問い合わせていくことになる。各制御装置の数が少ないうちはよいが装置数が多くなってくると、全く無駄な問い合わせデータが大量に流れて通信量が増大するので、統括制御装置の計算能力も極めて高性能である必要があった。
【００１５】
この発明は、上記のような問題点を解決するためになされたものであり、従来と同様、物理的にネットワーク配線は行なうが、その次の段階の各制御装置の設定作業を、メンテナンス要員あるいはシステムエンジニアらの人手を煩わすことなく、自動的に実行可能な制御装置、制御装置システムおよび生産設備の制御方法の提供を目的とする。また、ネットワーク上の通信量を抑制し、かつデータパケットの到達範囲の制御が容易である制御装置、制御装置システムおよび生産設備の制御方法の提供を目的とする。
【課題を解決するための手段】
【００１６】
本発明に係る生産設備用制御装置は、ネットワークを介して生産設備を制御すべく設けられた生産設備用制御装置であって、上記ネットワークに接続すべく設けられたネットワーク接続手段と、他の生産設備用制御装置から上記ネットワークを介して送信され上記ネットワーク接続手段を経由して取得されたデータおよび／または直結された上記生産設備から取得されたデータに基づき所定の処理プログラムを実行するサービス手段と、上記ネットワーク接続手段を経由して上記ネットワークを介して少なくとも自己のＩＰアドレスおよびポート番号、自己の固有識別番号、自己の固有識別名のいずれか一つ以上を上記他の生産設備用制御装置に対して一定周期で送信する自サービス公布手段と、上記ネットワーク接続手段を経由して上記ネットワークを介して上記他の生産設備用制御装置に対してデータの入出力を行う自他サービス接続手段と、上記ネットワーク接続手段を経由して上記ネットワークを介して上記他の生産設備用制御装置に対してデータを検索する他サービス探知手段と、を備え、上記ネットワークを介した上記他の生産設備用制御装置における上記自サービス公布手段と上記他サービス探知手段との間の通信方法としてマルチキャスト通信を、かつ上記自他サービス接続手段間の通信方法としてユニキャスト通信を適用することとした。
【発明の効果】
【００１７】
本発明に係る生産設備用制御装置は上述のように構成されるので、生産設備用制御装置の設定作業において、メンテナンス要員あるいはシステムエンジニアらの人手を煩わすことなく、設定作業が自動的に実行可能となる効果がある。また、ネットワーク上の通信量を抑制し、かつデータパケットの到達範囲の制御が容易となる効果がある。
【発明を実施するための最良の形態】
【００１８】
実施の形態１．
図１は、この発明を実施するための実施の形態１による生産設備用制御装置（以下、制御装置と言う）であり、図２は本実施の形態の制御装置が複数存在する際の動作を説明するための構成図である。
【００１９】
図１中、１はネットワーク、２は制御装置、３は制御装置２により制御される生産設備、４は生産設備制御手段、５はサービス手段、６は自サービス公布手段、７は他サービス探知手段、８は自他サービス接続手段、９はネットワーク接続手段、をそれぞれ示す。
【００２０】
図２では、図１の制御装置２が複数台設置され、複数の生産設備を制御するよう構成された形態を示す。図２中、２Ａは第１制御装置、２Ｂは第２制御装置、２Ｃは第３制御装置、２Ｄは第４制御装置、３Ａは第１生産設備、３Ｂは第２生産設備、５Ａは第１制御装置のサービス手段、５Ｂは第２制御装置のサービス手段、５Ｃは第３制御装置のサービス手段、５Ｄは第４制御装置のサービス手段、をそれぞれ示す。
【００２１】
次に、本実施の形態の制御装置２の動作について説明する。まず、図１に示した制御装置２の各手段の個別の役割について述べる。
【００２２】
（１）ネットワーク
ネットワーク１は後述するサービス手段５による通信を行なうために設けられたもので、主としてＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）通信が実行可能なネットワーク設備を意味し、例えば、イーサネット（登録商標）や無線ＬＡＮ、ハブ、リピータ、ブリッジ、スイッチ、ルータ、モデム、電話回線、ＤＳＬ（Ｄｉｇｉｔａｌ  Ｓｕｂｓｃｒｉｂｅｒ  Ｌｉｎｅ）回線、ＩＳＤＮ回線、光ファイバー回線、電力線ＬＡＮ、赤外線、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）、ＩＥＥＥ１３９４等で構成される。
【００２３】
（２）制御装置
制御装置２は、ＣＰＵ、主メモリ、例えばハードディスクのような２次記憶装置を備え（図示せず）、ネットワーク接続手段９を備える。さらに、キーボード、マウス、タブレット等の入力装置、ＣＲＴや液晶等のディスプレイ装置（画像表示装置）を備える場合もある（図示せず）。また、制御装置２に直結された生産設備３を直接制御する場合には生産設備制御手段４を備える。例えばＰＬＣ（Ｐｒｏｇｒａｍｍａｂｌｅ  Ｌｏｇｉｃ  Ｃｏｎｔｒｏｌｌｅｒ）、ＮＣ（Ｎｕｍｅｒｉｃａｌ  Ｃｏｎｔｒｏｌｌｅｒ）、プラント制御装置等がこれに該当する。
【００２４】
（３）生産設備制御手段
生産設備制御手段４は、後述する生産設備３を制御するために設けられており、前述の制御装置２と同一のＣＰＵで生産設備３を制御できるようなソフトウェアと生産設備３との物理インターフェースから構成されている場合と、制御装置２を構成するハードウェアとは独立した制御専用ＣＰＵ、メモリ、２次記憶装置、生産設備３との物理インターフェース等から構成された独立専用ハードウェアの場合がある。後者の装置構成では、制御装置２と生産設備制御手段４の間は内部バス、シリアルあるいはパラレル回線接続、共有２ポートメモリ等、なんらかの通信可能な手段により接続される。
【００２５】
なお、本実施の形態の制御装置は上述したように生産設備３を制御するためのものであるが、単に生産設備３と上記通信手段を介して通信し、生産設備３の稼動状態を取得しサービス手段５でその稼動状態データを利用させるという機能に限定する構成が可能であり、この場合は例えば生産ラインのモニタリングという機能を果たす。
【００２６】
（４）生産設備
生産設備３は、具体例を挙げると工場内に設置された切削加工機、放電加工機、レーザー加工機、プレス加工機等の各種加工装置、反応槽等のバッチ処理装置、ロボット、搬送機など、水処理プラント、化学合成プラント等の連続系生産プラント等、半導体や液晶、プリント基盤組み立てなどの組み立て装置であり、制御装置２により制御される各種設備を指している。なお、上述の生産設備制御手段４は、それぞれの生産設備３の制御を直接的に行なう目的で設けられている。
【００２７】
（５）サービス手段
サービス手段５はソフトウェア（各種プログラム）で構成される。但し、ハードウェアで構成することも可能である。
（ａ）サービス手段の動作例１
サービス手段５は、生産に必要なデータ、例えばＮＣプログラム、あるいは加工条件と呼ばれる制御パラメータの組み合わせを保持しつつ、他のサービス手段５からの要請に応じてこれらをデータとして提供し、あるいは他のサービス手段５に要請を行なって他のサービス手段５の保持するデータを取得するような動作を実施する。かかるデータの提供や要請はネットワーク接続手段９を経由してネットワーク１を介して行うデータ交換を指す。なお、通信に必要な手順における送受信の部分を除いて、注目するデータの送信元を提供側、受信側を要請側とここでは呼ぶ。
【００２８】
（ｂ）サービス手段の動作例２
サービス手段５の別の動作例として、生産設備設備２を加工機とし、かかる加工機でワークを加工する場合を以下に説明する。この加工機はその可動部を所定の軌道もしくは加工経路で動かすよう制御されることでワークの加工を行なうが、加工時間あるいは仕上がりは軌道もしくは加工経路の良し悪しに依存する。したがって、加工時の軌道もしくは加工経路の最適化ないし準最適化が必要となる。このとき、サービス手段５によって、ワークの加工開始前に軌道もしくは加工経路を最適化ないし準最適化するための演算を実行できるように準備しておく。かかる演算はある制御装置のサービス手段５が、他の制御装置のサービス手段５からの要請に応じて実施し、その制御装置に結果を返すよう動作する。あるいは自己の制御装置のサービス手段５に対しこの演算を要請する。これらの演算の結果、サービス手段５が取得した最適ないし準最適な軌道もしくは加工経路が生産設備制御手段４に渡され、生産設備３たる加工機が加工を開始する。
【００２９】
（ｃ）サービス手段の動作例３
さらに、サービス手段５の別の動作の一例として、生産設備制御手段４が加工機の軌道を利用して制御動作している最中に、必要な演算を他のサービス手段５からの要請に応じて実行し、あるいは他のサービス手段５にこれを要請するような動作が挙げられる。
【００３０】
（ｄ）サービス手段の動作例４
さらに、サービス手段５の別の動作例の一例として、ある特定の制御装置２から他の生産設備制御手段４の動作状態を外部からモニタリングする際、モニタリング周期や複雑な動作をモニタリングするとき大量のデータが流れることになるが、このデータの流通配信を中継して他の制御装置のサービス手段５に送るように特定の制御装置のサービス手段５が動作し、あるいは中継を実行している他の制御装置のサービス手段５からのデータを特定の制御装置が受け取る動作が挙げられる。データの中継ということで、自分から次の中継先を知る必要があるが、これは他のサービス手段５と同じ制御装置内にある自サービス公布手段６と他サービス探知手段７により与えられる。本動作例の制御装置の適用により、データ中継先は動的に、つまり複数の制御装置に対して適宜中継先を変化させるような構成が可能となる。
【００３１】
（ｅ）サービス手段の動作例５
さらに、サービス手段５の別の動作の一例として、生産設備制御手段４から得られる生産設備３の動作状態を他の制御装置のサービス手段５に提供し、もしくは他の制御装置のサービス手段５から提供された動作状態を保持することで工場全体の稼動情況情報としてまとめるような動作も挙げられる。
【００３２】
（ｆ）サービス手段の動作例６
さらに、サービス手段５の別の動作の一例として、ネットワーク・システム内にどのようなサービス手段５が存在するかの一覧を保持し、これを提供するような動作も挙げられる。
【００３３】
なお、上述の各サービスの内容はサービス手段５の中に、一つだけ備える場合もあり得るし、複数備える場合もあり得る。また、それぞれのサービスについての提供と要請は、各制御装置２のサービス手段５が提供と要請を両方とも行なう場合もあり得るし、いずれか一方のみ行なうこともあり得る。これらサービス手段５の様々な動作内容はコンピュータのソフトウェア（プログラム）として実装される。
【００３４】
（６）自サービス公布手段
自サービス公布手段６は、上記のようなサービス手段５が他の制御装置２のサービス手段５に対して提供可能な内容をネットワーク１を介して他の制御装置２のサービス手段５に公知する手段で、ソフトウェアで実装される。例えば、ネットワーク１としてイーサネット上でＴＣＰ／ＩＰ通信を使用している場合には、一定の周期でネットワーク１内にマルチキャスト通信を行なう方法により実施される。あるいは、ネットワーク１上の他の制御装置２のサービス手段５が提供可能なサービス内容の一覧を保持する動作を行なう。ＩＰマルチキャスト送信においては、送信を行なう制御装置のＩＰアドレスは通信の規約上必ず含まれることになるが、送信する制御装置のＩＰアドレス、ホスト名、ポート番号等の通信上の識別番号、あらかじめ取り決めた記号、文字列を含めて送信することもできる。
【００３５】
さらに、他の制御装置２のサービス手段５に対し、自己の制御装置２のサービス手段５が提供可能なサービス内容を通知する方法もある。この場合は、保持動作を行なっているサービス手段５を備えた制御装置２のＩＰアドレス、ホスト名、ポート番号等の通信上の識別番号、記号、文字列を予め知っておくか、あるいは後述する他サービス探知手段７により保持動作を行なっているサービス手段５を備える制御装置２のＩＰアドレス、ホスト名、ポート番号等を知る必要がある。前述したようにＩＰアドレス、ホスト名、ポート番号等の通信上の識別番号、予め取り決めた記号、文字列を含めて送信することで、このような目的に利用することができる。なお、ホスト名、ポート番号等の通信上の識別番号、予め取り決めた記号、文字列は固有識別名と呼ばれる。このようにして得られたＩＰアドレス、ホスト名、ポート番号等に対し自サービスの内容を送信する。異なるＩＰアドレス体系のネットワークをアクセスする際に、ＩＰアドレスが重複している事態もありえるが、識別番号や固有識別名の適用により、そのような場合にも本発明の目的とする動作が可能となる。つまり、例えＩＰアドレスが重複していても、ホスト名、ポート番号等の通信上の識別番号、固有識別名が重複していなければ動作可能である。
【００３６】
（７）他サービス探知手段
他サービス探知手段７は、他の制御装置２のサービス手段５、および自己の制御装置２のサービス手段５に要請可能なサービス内容を知るための手段である。他サービス探知手段７では、他の制御装置２のサービス手段５が公布している内容、すなわちマルチキャスト通信により送信しているデータを受信し、そのデータを記憶する。また、他サービス探知手段７では、上述した他の制御装置の自サービス公布手段６により送信された内容の保持動作を行なっているサービス手段５からデータを転送する。
【００３７】
（８）自他サービス接続手段
自他サービス接続手段８は、２つ以上のサービス手段５同士の間で、サービスに関するデータ通信を行なうための手段であり、ソフトウェアで実装される。例えば、上述の経路最適化計算の場合では、自他サービス接続手段８により、要請側のサービス手段５から最適化前の加工経路を表すデータが提供側に送り込まれ、最適化ないし準最適化後の加工経路データが返されてくる。要請側のサービス手段５は、他の複数のサービス手段５に対し、この自他サービス接続手段８を用いて最適化前加工経路データを送信し、帰ってきた複数の最適ないし準最適加工経路の中から最も優秀な経路を選択する。自他サービス接続手段８間の通信手段としては、ユニキャスト通信が用いられる。これは、該当するサービス手段間のみでデータパケットがやり取りされれば充分だからである。
【００３８】
（９）ネットワーク接続手段
最後に、ネットワーク接続手段９は、上述のネットワーク１に使用するハードウェアに適合したハードウェアで構成される。例えば、ネットワーク１としてイーサネットを用いて、ネットワーク接続手段９にイーサネット用のＩＣチップ群を用いることが一般的である。ネットワーク接続手段９は、一般的にこれらのイーサネット用ＩＣチップを動作させるためのいわゆるデバイスドライバソフトウェアおよびＩＰ通信を行なうための通信プロトコルスタックと呼ばれるソフトウェアにより構成される。上述の通り、イーサネット以外のハードウェアがネットワーク１に使用される場合は、それ相応のハードウェアチップとデバイスドライバソフトウェアに変更する。
【００３９】
制御装置２を複数台使用する場合における上述の各手段の動作を以下に説明する。図２は、２台の生産設備３Ａ，３Ｂが４台の制御装置２Ａ〜２Ｄにより制御されている形態を表している。まず、第１生産設備３Ａおよび第２生産設備３Ｂから構成される加工セルの稼動状態を第３制御装置２Ｃにて集計する場合について説明する。この場合、第３制御装置２Ｃのサービス手段５Ｃは稼動状態の集計データベースを備えることになる。また、第１制御装置２Ａのサービス手段５Ａと第２制御装置２Ｂのサービス手段５Ｂは、それぞれの生産設備制御手段４Ａ、４Ｂからそれぞれの生産設備３Ａ、３Ｂの稼動状態を表すデータを得て、自他サービス接続手段８、ネットワーク接続手段９、ネットワーク１を介して、ユニキャスト通信によって第３制御装置２Ｃのサービス手段５Ｃにそのデータを送信する動作を行なう。しかしながら、かかる動作は以下に述べるような手順に従った自動構成動作が行なわれた後の動作である。本実施の形態の制御装置の特徴の一つは、以下に説明するような自動構成動作が行なわれる点にあり、かかる自動構成動作によって、各制御装置２Ａ〜２Ｄの設定作業をメンテナンス要員あるいはシステムエンジニアらの人手を煩わすことなく、自動的に実行できる。
【００４０】
まず、はじめに第３制御装置２Ｃの自サービス公布手段６Ｃの動作を説明する。図３のフローチャートに示すように、予め指定されているマルチキャストＩＰアドレスの指定ポートにデータパケットをマルチキャスト通信によって送信し（ステップＳＴ３０１）、その後、予め定められた時間待ちを行い（ステップＳＴ３０２）、再びデータパケットの送信（ステップＳＴ３０１）を繰り返している。要するに、マルチキャスト通信によって一定周期でデータパケットを送信している。因みに、本動作例では１５秒に１回送信するように設定されている。マルチキャストＩＰアドレスは、例えば、２３４．５．６．７とし、ポート番号は５６７０とする。データパケットの中身は、本動作例では“p2p-mon"という文字列を送信している。ただしこの場合は、文字列として意味のある利用はしていない。文字列自体は、何ら動作に影響しないからである。
【００４１】
このＩＰアドレス、ポート番号は本実施の形態における他の動作例とは異なるアドレス、番号を選択している。このように特定の動作に対して固有のアドレス、番号を付与することにより、他のサービスおよびアプリケーションと何ら不都合なく共存できる。
【００４２】
第３制御装置２Ｃの自サービス公布手段６Ｃは、第３制御装置２Ｃの電源が入ると同時に動作を開始する。例えば、タスクあるいはスレッドあるいはプロセスと呼ばれるコンピュータプログラムの実行形態にて他の手段の動作とは独立した実行を行なうようにすれば、スレッドであってもプロセスであっても同等の効果が得られる。因みに、本動作例ではスレッドと呼ばれる態様で実装している。なお、ＩＰアドレス２３４．５．６．７のポート番号５６７０にデータを送出する制御装置２では、稼動状態の集計データベースを備えることは、各制御装置が動作する前に予め取り決めておく。また、マルチキャストＩＰアドレスと、各制御装置２に割り当てられたＩＰアドレスは異なる。マルチキャストＩＰアドレスはラジオやテレビジョン放送におけるチャンネルのようなもので、そのＩＰアドレスの特定ポート番号にデータパケットを送信すれば、そこにチューニングをあわせてデータパケットの到着を待っている機器全てで、データが受信される仕組みである。一方、他の通信方法としてブロードキャスト送信があるが、こちらは待っていてもいなくても、好むと好まざるに関わらず全ての機器に一律にデータが届けられる方式である。
【００４３】
マルチキャスト通信によって第３制御装置２Ｃから送信されたマルチキャストのデータパケットは、第１制御装置２Ａおよび第２制御装置２Ｂの他サービス探知手段７Ａ，７Ｂにより受信されて処理される。この第１制御装置２Ａおよび第２制御装置２Ｂの他サービス探知手段７Ａ，７Ｂの動作を図４に示す。他サービス探知手段７Ａ，７Ｂも各制御装置の電源が入ると同時に動作を始める。これもスレッドとして実装されている。図４のフローチャートに示すとおり、予め指定されているマルチキャストＩＰアドレスの指定ポートにてデータパケットの到着を待ち（ステップＳＴ４０１）、データパケット到着の際には、予め定められたディレクトリ（記憶）領域（ステップＳＴ４０２）（ファイルシステムの構成によるが、本動作例では予め取り決めておいたディレクトリ領域にファイルを作成するようにしている）に送信元のＩＰアドレスをファイル名としたファイルを作成するような動作（ステップＳＴ４０３）を行なっている。同一ファイル名のファイルが既に存在するときは、そのファイルに付加されている更新日付情報が更新される。ファイルの更新日付情報の存在はファイルシステムに依存するが、本動作例のファイルシステムはこれを備えているものとしている。マルチキャストＩＰアドレス２３４．５．６．７のポート番号５６７０でデータパケットの到着を待っている。届けられたデータパケットの中身が作成されたファイルに書き込まれるようにしている。
【００４４】
さらに、第１制御装置２Ａおよび第２制御装置２Ｂの他サービス探知手段７Ａ，７Ｂでは、図５に示すような手順を実行するスレッドが実装されている。この手順では、送信元ＩＰアドレスをファイル名にしたファイルが書き込まれるディレクトリ領域（記憶領域）を１５秒に１回調べ、ファイルの最終更新から６０秒以上経過している場合はそのファイルを削除する動作を行なう。これにより送信元からマルチキャストデータパケットが１５秒に１回送信されているはずのところ、最後にその送信元からの送信を受信してから６０秒以上経過した場合にその送信元は何らかの都合でネットワーク１内に存在しなくなったか、ネットワーク１が分断されたと判断する。以下、図５のフローチャートに基づき、詳細な動作を説明する。
【００４５】
まず、上述のディレクトリ領域（ステップＳＴ５０１）に保持されているファイル名の一覧リストを取得する（ステップＳＴ５０２）。そして一覧リストの中の個々のファイル名についてループを回している（ステップＳＴ５０３）。個々のファイル名の指し示すファイルの更新日時と現在日時をそれぞれ取得し、個々のファイルについての作成後の経過時間を計算して（ステップＳＴ５０４）、両者を比較する（ステップＳＴ５０５）。時間差が６０秒以上ある場合にはそのファイルをディレクトリ領域（ステップＳＴ５０１）から削除して（ステップＳＴ５０６）、次のファイル名の処理を行う（ステップＳＴ５０３）。経過時間が６０秒未満の場合は何もせず、次のファイル名の処理を行う（ステップＳＴ５０３）。すべてのファイル名の処理を終えたらループを抜け出して、１５秒の時間待ちに入り（ステップＳＴ５０７）、その後、先頭から処理を繰り返す（ステップＳＴ５０２）。
【００４６】
さらに、第１制御装置２Ａおよび第２制御装置２Ｂの他サービス探知手段７Ａ，７Ｂは別のスレッドを実装している。上述した２つのスレッドの動作は他の制御装置２のサービス手段５を利用するための準備段階を示すものであったが、以下に説明するスレッドは他のサービス手段５を直接的に利用する段階のものである。かかるスレッドの動作を図６のフローチャートに示す。なお、図６のフローチャートには他サービス探知手段７以外の部分も記載されている。図６のフローチャートにおける他サービス探知手段７の動作は点線四角で囲んだ範囲である。それ以外の部分は後述するサービス手段５で実行される範囲を表している。図６のフローチャートで示される動作では、ユニキャスト通信によって６０秒に１回、自己が制御している生産設備３の稼動状態を表すデータを送信する。その送信先は、他サービス探知手段７を用いて探した他の制御装置２のサービス手段５である。
【００４７】
図６のフローチャートに従って、動作を詳細に説明する。まず、生産設備３の稼動状態を表すデータを取得する（ステップＳＴ６０１）。次に、上述した所定のディレクトリ領域（ステップＳＴ６０２）からファイル名一覧を取得する（ステップＳＴ６０３）。続いて、各ファイル名について処理を行なうループを回す（ステップＳＴ６０４）。ループの中では各ファイル名の指し示すＩＰアドレスに向かって、先に取得された稼動状態データを送信する（ステップＳＴ６０５）。すべてのファイル名を処理し終えると６０秒間待機する（ステップＳＴ６０６）。その後、再び処理の先頭に戻って稼動状態の取得が開始される（ステップＳＴ６０１）。本スレッドはすべてのファイル名についてのループに関して実行されるが、上述の動作例では第３制御装置２ＣのＩＰアドレスをファイル名とするファイルのみであるので、ループはかかるファイルに対してのみ、すなわち１回だけ実行される。因みに、第３制御装置２ＣのＩＰアドレスすら入っていない場合は、ネットワーク１か第３制御装置２Ｃになんらかの障害発生の可能性があり、この場合は稼動状態の送信は行なわれない。
【００４８】
さて、上記動作例においては稼動状態を表すデータを「送信する」と単に述べたが、かかるデータパケットを作成し、所定のプロトコルによってユニキャスト通信により送受信する部分が自他サービス接続手段８の役割である。図６に示した動作は、ファイル一つという非常に単純な場合であるので、送信側は稼動状態を一つのパケットに書き込んでユニキャストソケットで送信するだけであるし、受信側もユニキャストソケットを受信モードで開けて待機し、届けられた一つのパケットを受け取って、中身を解釈するだけである。
【００４９】
例えば、送信したいデータが加工経路の場合のように、Ｘ座標、Ｙ座標の組み合わせが複数在るような場合にはこの自他サービス接続手段８に予めそれを送受信するプロトコルを定めればよい。例えば、Ｘ座標、Ｙ座標をテキスト形式にてスペースで区切って、１つの点は１行で送信、最終行を送り終えたら行頭にピリオドだけの行が送られる、等と取り決めればよい。
【００５０】
なお、第１制御装置２Ａおよび第２制御装置２Ｂのサービス手段５の動作は、図６で示したフローチャートそのものである。
【００５１】
第３制御装置２Ｃのサービス手段５Ｃの動作を図７のフローチャートに示す。図７に示すとおり、自分のＩＰアドレスの５５５０番ポートにおいてＩＰユニキャストパケットの受信待ちを行なっている（ステップＳＴ７０１）。受信されたＩＰユニキャストパケットは第１制御装置２Ａあるいは第２制御装置２Ｂからの稼動状態のパケットであるので、受信時刻、送信元、受信パケットデータを一つのレコードに仕立て、リレーショナルデータベース（ステップＳＴ７０２）の所定の記録用テーブルに格納し（ステップＳＴ７０３）、次のデータパケット受信待機状態になる（ステップＳＴ７０１）。
【００５２】
以上述べた本実施の形態における制御装置の全体の動作を図８のフローチャートに示す。かかるフローチャートから、稼動状態の記録システムが動作していることが分かる。しかも、生産設備３Ａ，３Ｂを制御している各第１制御装置２Ａおよび第２制御装置２Ｂには予めマルチキャストＩＰアドレス、ユニキャストＩＰアドレス、ポート番号を設定しておく必要があるが、それだけ決定した上でネットワーク１に接続すれば、稼動状態を収集している制御装置が第３制御装置２Ｃであることを自動的に検知し、第３制御装置２Ｃに向けて稼動状態を送信し始める。かかる動作により自動的に稼動状態の記録システムを構成することができる。
【００５３】
本動作例において、マルチキャスト通信で送受信されるデータパケットの中身の文字列は利用されていない場合を説明したが、この文字列として第３制御装置２Ｃが稼動状態を待っているポート番号を追加することで、第１制御装置２Ａおよび第２制御装置２Ｂに予め設定する情報が一つ減る効果が得られる。さらに、この文字列に、サービス手段５の提供するサービスを利用するための手順を実装することもできる。提供されるサービスが関数であるのなら、その引数並びに関する情報が実装される。あるいはサービス提供側で実行できるコンピュータプログラムそのものが実装されており、サービス利用側は自己のサービス手段にそのプログラムをコピーした上で実行することもできる。つまり、かかる実行により他のサービス手段が提供しているサービスを利用できる。
【００５４】
一方、第３制御装置２Ｃと同時に第４制御装置２Ｄ（図２）が起動した場合、第１制御装置２Ａおよび第２制御装置２Ｂは、第３制御装置２Ｃおよび第４制御装置２Ｄの両方に稼動状態を表すデータパケットをユニキャスト通信によって送信する。この場合、第３制御装置２Ｃあるいは第４制御装置２Ｄの一方が何らかの障害により停止したとしても、正常に動いている他方にデータが蓄積されていく。
【００５５】
通常は第３制御装置２Ｃで運用し、第３制御装置２Ｃをメンテナンスするために停止する直前に第４制御装置２Ｄを起動し、その後、第３制御装置２Ｃを停止してメンテナンスした後、第３制御装置２Ｃを起動、第４制御装置２Ｄの自サービス公布手段６Ｄを停止し、第４制御装置２Ｄのリレーショナルデータベースに蓄積されたデータを第３制御装置２Ｃのリレーショナルデータベースに転送し、第４制御装置２Ｄを停止という運用手段をとる。
【００５６】
なお、上述したように本実施の形態では、各制御装置側から発信し、リレーショナルデータベースを持つ制御装置にデータパケットを送信する例を示している。つまり、各制御装置がクライアント側となり、リレーショナルデータベースを持つ制御装置がサーバ側として動作する。
【００５７】
なお、上述の動作説明では生産設備３Ａ，３Ｂを制御する制御装置が第１制御装置２Ａ、第２制御装置２Ｂの２台の場合（図２）について述べたが、かかる仕様の制御装置が何台あっても同様に動作するし、生産設備と直接接続されていない第３制御装置２Ｃ、第４制御装置２Ｄのような仕様の制御装置に関しても何台あったとしても同様に動作する。
【００５８】
また、制御装置の自他サービス接続手段８をユニキャストソケットにより構成する例について説明してきたが、ＨＴＴＰプロトコル、ＳＯＡＰプロトコル、ＷｅｂＤＡＶプロトコル、ＦＴＰプロトコル、ＳＭＴＰプロトコル、ＰＯＰプロトコル、ＩＭＡＰプロトコル、ＸＭＬプロトコル、ＤＣＯＭ（登録商標）プロトコル、ＣＯＲＢＡ（登録商標）プロトコルであっても同様の効果が得られる。
【００５９】
本動作例ではＩＰアドレス、ポート番号は本実施の形態における制御装置２の他の動作例とは異なるものを選択している。こうすることにより、他のサービスおよびアプリケーションとなんら無理なく共存することができるのであるが、サービスの内容がほとんど同じ場合には他のＩＰアドレス、ポート番号と同一のものであってもよい。ただし、似ているが異なるサービスであることを区別するためには送信されるデータパケットのデータフォーマットを予め設計する必要がある。
【００６０】
また、本実施例では自サービス公布手段６において、一定周期でパケットを送出する例について説明したが、これを可変周期としても良い。例えば、制御装置の電源投入直後には１０秒周期で送信を行ない、電源投入からたとえば５分経過したら、３０秒ごとに行なうようにする、などの動作を行なっても良い。この場合にはネットワークの付加を減らす効果が得られる。しかし、他サービス探知手段７が探し出すのに、より時間がかかる欠点も生じる。その他にも１０秒周期でパケットを送信している他の制御装置が検出された場合には、自分の送出周期も５分間は１０秒間にする、などの手段を実施することもできる。この場合は、他の制御装置より後から電源が投入された制御装置があった場合に、後から電源を投入された制御装置が先に電源が投入されてすでに動いている制御装置を発見するのを迅速に完了させる効果がある。
【００６１】
また、これらＩＰ通信はＩＰのバージョン４による例で説明したがバージョン６（ＩＰｖ６）であっても同様に動作し、同様の効果がある。
【００６２】
以上、実施の形態１の制御装置によると、各制御装置の設定作業が、メンテナンス要員あるいはシステムエンジニアらの人手を煩わすことなく自動的に実行可能となる。また、各制御装置間における自サービス公布手段と他サービス探知手段間の通信手段としてマルチキャスト通信を適用し、かつ自他サービス接続手段間の通信手段としてユニキャスト通信を適用することにより、ネットワーク上の通信量が抑制でき、かつデータパケットの到達範囲の制御が容易となる。
【００６３】
実施の形態２．
上述の実施の形態１においては第１制御装置２Ａおよび第２制御装置２Ｂが自己の制御する生産設備3Ａ、３Ｂの稼働状態を第３制御装置２Ｃあるいは第４制御装置２Ｄに送信する形態について説明したが、実施の形態２においては図２の構成図に示すような第１制御装置２Ａおよび第２制御装置２Ｂが、他からの稼働状態の問い合わせに対して稼働状態を表すデータを返送するようなサービス内容を具備するサービス手段5Ａ，５Ｂをそれぞれ有している。さらに、自サービス公布手段6Ａ，６Ｂにより、このような問い合わせに対して返送する動作を行なうサービス手段5Ａ，５Ｂが存在することをネットワーク1にＩＰマルチキャストパケットとして送信し、第３制御装置２Ｃあるいは第４制御装置２ＤがそのＩＰマルチキャストパケットを受信して、どの制御装置に問い合わせてデータを集めるかを決定するように構成している。要するに、所定のＩＰマルチキャストパケットの送信元を、ネットワーク１上に存在する制御装置として記憶する。この場合も実施の形態１に示したのと同様に、第１制御装置２Ａおよび第２制御装置２Ｂの稼動状態を収集する制御装置が自動的に得られる効果がある。
【００６４】
さらに、実施の形態２においては、稼働情報を集める対象となる第１制御装置２Ａおよび第２制御装置２Ｂが正常に稼動しており、かつネットワーク1に障害が発生していないことが明らかな時間帯に、第３制御装置２Ｃおよび第４制御装置２Ｄにおける他サービス探知手段７Ｃ，７Ｄ中の図５のフローチャートに示すような削除手順を動作させ、その後、一定時間経過後にこの削除手順のみを停止するよう構成している。各制御装置が正常に稼動していること、およびネットワークに障害が発生していないことの確認は人間が行なうことにしている。一定時間経過後、というのは人間が確認作業を完了したときに経過する時間を指す。
【００６５】
削除手順が動作している間は、新たな制御装置が設置されたこと、及びそれまで存在していた制御装置の撤去されたことが、ＩＰマルチキャストパケットを受信することで得られている存在情報に反映されることになる。例えば、第１制御装置２Ａおよび第２制御装置２Ｂが存在することが、第３制御装置２Ｃあるいは第４制御装置２Ｄにより検知されて全体の稼動が始まり、その後、第１制御装置２Ａが撤去された場合、第３制御装置２Ｃあるいは第４制御装置２Ｄは第１制御装置２Ａが存在していることを表すデータを削除し、第２制御装置２Ｂのみが存在していることを表すデータを保持するようになる。このようにして、存在情報に反映される。つまり、各制御装置の設定作業が、メンテナンス要員あるいはシステムエンジニアらの人手を煩わすことなく、自動的に実行可能となる効果が得られる。
【００６６】
削除手順が停止させたときは、制御装置が新たに設置された場合には存在情報が変化するが、撤去されるか、あるいはなんらかの障害が発生してＩＰマルチキャストパケットが受信できなくなった場合でも存在情報は変化しなくなる。つまり、第１制御装置２Ａ、第２制御装置２Ｂあるいはネットワーク1に何らかの障害が発生して所定のディレクトリ領域（記憶領域）のファイルが更新されなくなったとしても、第１制御装置２Ａあるいは第２制御装置２Ｂの存在を表すデータが削除されなくなる。削除されないので自他サービス接続手段８は接続できない相手と通信しようとするが、当然通信できないので、この結果、第１制御装置２Ａあるいは第２制御装置２Ｂに障害が発生しているか、ネットワーク1に障害が発生していることを検知できる。削除手段を動作させている場合、障害が発生した制御装置の存在を表すデータが削除されるので、その制御装置とは通信しなくなるので障害の発生がわからない。本実施の形態では削除手段を停止しているので存在を示すデータの表す制御装置と通信しようとするので障害を検知することが可能となる。また、削除手段は任意のタイミングで動作を再開させる。これにより最新の設置、撤去情報を更新する。
【００６７】
なお、本実施の形態では生産設備3を制御する制御装置を第１制御装置２Ａ、第２制御装置２Ｂの2台で構成する場合について説明したが、かかる仕様の制御装置が何台あっても同様に動作するし、第３制御装置２Ｃ、第４制御装置２Ｄについても、かかる仕様の制御装置が何台あっても同様に動作する。
【００６８】
さらに、本実施の形態においては削除手段を停止および動作することにして説明したが、以下の動作方法でも、制御装置もしくはネットワークの障害を検知することができる。
【００６９】
まず、上述したような人間の確認作業が行なわれる。このときに得られたＩＰマルチキャストパケット受信データによる制御装置の存在情報を「正」として記憶保持しておく。確認作業終了後に、先の動作例では削除時手段を停止することにしていたが、本動作例では削除手段を停止しない。したがって、障害が発生した制御装置の存在を表すデータは削除される。ネットワークに障害が発生した場合にあってはすべてのデータが削除されることになる。このような各時点での制御装置の存在を表すデータと、先に記憶保持した「正」のデータを比較することで制御装置の撤去、障害発生、ネットワークの障害発生を判定する。この動作例によれば、実際に対象となる制御装置と通信を試みて、通信できないことで障害の発生等を知るのに比して、通信を試みる前に障害等を知ることができる効果が得られる。よって、メンテナンス要員あるいはシステムエンジニアらの人手を煩わすことなく、通信障害を事前に察知できる。
【００７０】
実施の形態３．
図９は実施の形態３の制御装置の構成図である。図９において１０は広域ネットワークである。１は構内ネットワークとしているが、他の実施の形態におけるネットワーク１と同一のものである。
【００７１】
図９における第１制御装置２Ａは、第１生産設備３Ａの制御を実行しつつ、サービス手段５Ａが構内ネットワーク１あるいは広域ネットワーク（インターネット)１０上の第３制御装置２Ｃのサービス手段５Ｃを利用したり、逆に第３制御装置２Ｃが第１制御装置２Ａのサービス手段５Ａを利用する場合を示している。通常、構内ネットワーク１と広域ネットワーク１０はルータと呼ばれる接続装置で結合されるが、そのルータを第２制御装置２Ｂで構成した例について説明する。かかる構成では、第２制御装置２Ｂは構内ネットワーク１用と広域ネットワーク１０用の２つのネットワーク接続手段９Ｂ１，９Ｂ２を備えている。第２制御装置２Ｂはこれら２つのネットワーク間のデータパケットの転送を制御する機能を具備しており、あるパケットは転送するし、あるパケットは転送しないという振り分けを行なう。これがルータ機能であり、広域ネットワーク１０側からの不正なデータ通信要求を選択的に排除する振り分けを行なう機能を前面に出せばファイヤーウォールとして使用できる。
【００７２】
さて、第１制御装置２Ａが第３制御装置２Ｃのサービス手段５Ｃのサービスにユニキャスト通信で接続したいとする。通常は第２制御装置２Ｂの2つのネットワーク接続手段９Ｂ１，９Ｂ２のデータ転送は実施されないようにし、第１制御装置２Ａが第３制御装置２Ｃに接続するときのみデータ転送を実行するようにすることで広域ネットワーク１０からの不正な侵入、構内ネットワーク１の中からの意図せぬデータ漏洩、不正な通信を防ぐことができる。そして、第２制御装置２Ｂのサービス手段５Ｂはこのデータ転送を行なうか、止めるかに関するサービスを行っている。第１制御装置２Ａの自他サービス接続手段８Ａは第２制御装置２Ｂの自他サービス接続手段８Ｂに接続し、自分から第３制御装置２Ｃへの通信データの転送を実行してもらうように依頼する。すなわち、第２制御装置２Ｂの２つのネットワーク接続手段９Ｂ１，９Ｂ２の間のデータ転送の実行を依頼する。
【００７３】
次に、第１制御装置２Ａは第３制御装置２Ｃへの接続を行なう。データ転送が実行されているので通信路が確立する。データ通信が完了すれば、再び第２制御装置２Ｂに接続し、データ転送を停止する依頼をする。一方、外部から第１制御装置２Ａのサービス手段５Ａを利用させるために、やはり第２制御装置２Ｂの自他サービス接続手段８Ｂに接続し、第３制御装置２Ｃから自分への通信データの転送を実行してもらうように依頼する。そして以下同様の手順でデータ転送は終了する。なお、第２制御装置２Ｂがデータ転送を行なうサービスを実行できることは自サービス公布手段６Ｂにより、第１制御装置２Ａの知るところとなっていることはいうまでもない。以上の一連の動作はすべて自動的に行われるので、各制御装置の設定作業が、メンテナンス要員あるいはシステムエンジニアらの人手を煩わすことなく、自動的に実行可能となる効果が得られる。
【００７４】
さらに、ネットワーク接続手段９Ｂ１がＩＰｖ６通信を行ない、ネットワーク接続手段９Ｂ２がＩＰｖ４通信を行なっている場面を考えることができる。また、その逆も可能である。かかる場合は、構内はＩＰｖ6通信を行なう一方で、インターネット上のＩＰｖ4通信を利用する必要のある場面に対応できる効果が得られる。
【００７５】
実施の形態４．
図１０の構成図は、生産設備３を２台の制御装置２Ａ、２Ｂで制御している実施の形態４の制御装置の例である。本実施の形態における第１制御装置２Ａの生産設備制御手段４Ａは生産設備３Ａの状態の計測信号およびモーターなどアクチュエータへのエネルギー供給指令信号あるいは位置指令信号、速度指令信号、接点開閉信号等の制御指令信号を自他サービス接続手段６Ａおよびサービス手段５Ａを介して第２制御装置２Ｂの生産設備制御手段４Ｂに接続している。これにより第２制御装置２Ｂが生産設備３Ａの状態に対応した制御指令を、第１制御装置２Ａの生産設備３Ａに送ることで制御動作が実現する。以上の一連の動作はすべて自動的に行われるので、各制御装置の設定作業が、メンテナンス要員あるいはシステムエンジニアらの人手を煩わすことなく、自動的に実行可能となる効果が得られる。
【００７６】
実施の形態５．
実施の形態５における制御装置の構成図を図１１に示す。生産設備３が２台で制御装置２は４台で構成されている。本実施の形態では第１生産設備３Ａおよび第２生産設備３Ｂは、レーザー穴あけ加工機のような加工経路の良し悪しが加工時間に影響する加工機である。以下に加工機の動作を説明する。図１２はワークの平面図であり、四角いワークに５つの穴を開ける様相を示す図である。このとき、図１２（ａ）に示すような順番でワークに穴を開けていくより、図１２（ｂ）に示すような順番でワークに穴を開けたほうが、加工経路が短い。したがって、第１生産設備３Ａあるいは第２生産設備３Ｂにおいて図１２に示すような加工を実際に行なう前に、図１２（ｂ）のように穴の配置に対して最適な加工順番を得ておくことが重要である。加工経路が短いと加工時間が短縮され、この結果、例えば１日の操業でより多くのワークを加工することができ、生産性が一層向上するからである。図１１中の第１生産設備３Ａが、このような最適な加工順番、言い換えると加工経路の最適化ないし準最適化演算を必要としている場合に、かかる最適化演算を４台の制御装置２Ａ〜２Ｄにより実行するのが本実施の形態における各制御装置の機能である。
【００７７】
まず、最短な加工経路を求める演算について説明する。通常は、ワークとそのワークに開けるべき穴の配置のみが与えられたところから加工経路の計画が開始される。最初は乱数等によって穴の順番を適当に並べ、その後、いわゆる最適化アルゴリズムを適用して、最も加工経路が短くなる最適加工経路、あるいは最も加工経路が短いものに近いであろう準最適化経路を求める。これは、巡回セールスマン問題と呼ばれる問題そのものである。
【００７８】
このような巡回セールスマン問題を解くための最適化アルゴリズムには、例えば山登り法、シミュレーテッドアニーリング法、遺伝的アルゴリズム法、全探索法等の方法がある。開ける穴の数が少ないときには全探索も可能であるが、通常、実用的な加工における穴の数において、実用的な時間内に全探索が完了することは無く、全探索法が使われることは無い。そこで、他のアルゴリズムによるが、それぞれ得失があるので、ここでは複数の手法を組み合わせることで、各手法の長所を活かすような動作例を説明する。
【００７９】
上述した各方法のうち、比較的局所的な最適解に陥ることが無く、迅速に最適化が進行するのはシミュレーテッドアニーリング法（第１の最適化プログラム）である。しかし、このシミュレーテッドアニーリング法はある程度最適化が進行した後は、計算を続けても良い解が得られなくなってくる。そこで、シミュレーテッドアニーリング法で演算を始めて、しばらくはかかる演算方法を続行し、そしてあるところで得られた解（第１の最適解）に基づき、山登り法（第２の最適化プログラム）に切り替えて最適化を継続し、さらなる最適解（第２の最適解）を求める。ここで一つ問題がある。つまり、山登り法は局所最適解に容易に陥ってしまい、良い解が得られなくなることが多い一方、驚くほど良い解が短時間で得られる場合もある。このような問題を解決するためには、山登り法に切り替えた後は複数の山登り法演算スレッドを複数同時に動かして最終的に最も良い解を出している山登り法の解（第２の最適解）のみ採用すればよい。１０００回計算すれば１０００通りの答になるので、できるだけ多くのスレッドを同時に動かすことが好適である。
【００８０】
図１３のグラフは本動作例による演算結果を表している。横軸が山登り法の繰り返し演算の回数、縦軸は加工経路の総延長距離である。複数のプロット曲線は複数のスレッドの各実行結果を表している。図１３のグラフでは１０個のスレッドで計算しているので、スレッドに対応して曲線も１０本ある。図１３のグラフから判るように、ある演算回数において比較すると、各スレッドの加工経路の総延長距離はばらついている。よって、より最適な解を得るために、ばらついている各演算結果中から総延長距離が最小となっているようなスレッドの解（第２の最適解）を選択する。
【００８１】
一方、遺伝的アルゴリズムにより最適化演算を行なった場合には、このような複数スレッド山登り法に比べて繰り返し演算を重ねることで最終的には良い解が得られるにせよ、解が得られるまでの時間は長くなることが実験的に判っている。複数スレッド山登り法と同じ時間で遺伝低アルゴリズムの演算を打ち切ることもできるが、その場合には複数スレッド山登り法よりも良い解が得られないことも実験的に判っている。
【００８２】
以上で述べたようなシミュレーテッドアニーリング法（第１の最適化プログラム）と複数スレッド山登り法（第２の最適化プログラム）を組み合わせた方法の手順を図１４のフローチャートに示す。以下、図１４のフローチャートに従って説明する。加工は２次元平面に複数の穴を指定された位置にあけていくというものである。したがって、各穴はＸ，Ｙ座標の組み合わせが複数並べられたものとして表現される（ステップＳＴ１４０１）。演算の開始は複数のＸ，Ｙ座標の組み合わせで表現されている問題を取得することである（ステップＳＴ１４０２）。次に、初期解として開ける穴の順番を乱数により決定する（ステップＳＴ１４０３）。続いて、この乱数による初期解を出発点とするシミュレーテッドアニーリング法を実行する（ステップＳＴ１４０４）。このシミュレーテッドアニーリング法は一定時間で打ち切られる。他の打ち切り方としては、一定の演算回数で打ち切る方法、解が徐々に良い値（この場合は総延長距離がより短い値）になっていく速さがある値より小さくなったときに打ち切る方法が挙げられる。
【００８３】
続いて、山登り法に移行する。上述したように、山登り法は複数のスレッドで実行する（ステップＳＴ１４０５）。因みに、図１４のフローチャートでは４つのスレッドで演算した例を示している(ステップＳＴ１４０６,ステップＳＴ１４０７,ステップＳＴ１４０８,ステップＳＴ１４０９)。各スレッドはそれぞれ山登り法で繰り返し演算を行なうが、演算の中で乱数を使用するので既述の図３のフローチャートに示したとおりで、同じ初期解から演算を開始しても、その経過と結果は異なるものになる。この山登り法は予め定められた演算回数で打ち切られる。他の打ち切りかたとして、一定時間で打ち切る、解の改善速度が鈍ったら打ち切るなどの方法も挙げられる。
【００８４】
すべてのスレッドが終了したことを判定し（ステップＳＴ１４１０）、それぞれのスレッドの解が出揃う。その後、すべての解を総延長距離でソートし、最短の値を最終的な解（第２の最適解）として（ステップＳＴ１４１１）、穴を開ける順番とともに結果記録ファイルに記録して（ステップＳＴ１４１２）、終了する。
【００８５】
本実施の形態では図１４のフローチャートに示した演算方法の中で、複数スレッドによる山登り法（第２の最適化プログラム）の実際の演算部分を複数の制御装置２により実行する。すなわち、複数の制御装置によって山登り法を並列に処理している。図１１に示すように、上記の山登り法を計算するサービスが第１ないし第４制御装置２Ａ〜２Ｄそれぞれのサービス手段５Ａ〜５Ｄで並列に実行可能であるように予め構成する。そして、４つの制御装置２Ａ〜２Ｄそれぞれの自サービス公布手段６Ａ〜６Ｄによってネットワーク１内に向けて、ＩＰマルチキャストアドレス２３４．５．６．７、ポート番号４５６７にて、データパケットがマルチキャスト送信される。このＩＰマルチキャストアドレスとポート番号は予め定めておく。
【００８６】
ここで、このＩＰアドレス、ポート番号は本発明の他の実施の形態における動作例とは異なる値を選択している。つまり、このＩＰアドレス、ポート番号は固有の値を有している。この結果、他のサービスおよびアプリケーションと異なるＩＰアドレス、ポート番号を有することになるため、各サービスおよびアプリケーションは互いになんら無理なく共存できる。
【００８７】
上述のサービスで、送信されるデータパケットは“P2P-TSP”という文字列を含んでいる。第１制御装置２Ａの他サービス探知手段７ＡはこのＩＰマルチキャスト送信データパケットを受信し（図４のフローチャートと同等の動作。ただし、受信待ちＩＰアドレスおよびポート番号は異なる)、ディレクトリ領域に順次記憶する。マルチキャストパケットの受信が第１制御装置２Ａにて観測されないときにディレクトリ領域から削除される動作も図５のフローチャートと同様である。
【００８８】
さて、第１制御装置２Ａにおいて、これから加工するワークに関するデータの取り扱いが始まったとする。そして、図１４のフローチャートに示したような動作が第１制御装置２Ａのサービス手段５Ａで実施される。まず、第１制御装置２Ａのサービス手段５Ａにおいて乱数による初期解が演算され、それに続いてシミュレーテッドアニーリング法による最適化演算が実行され、第１の最適解が得られる。次に、図６のフローチャート中に点線で囲んだ領域に示した他サービス探知手段７Ａと同等の動作により、記憶領域から山登り法を実行可能な制御装置２Ａのサービス手段５Ａが読み出される。図６のフローチャートに示すように各サービス手段５ＡのＩＰアドレスがファイル名として得られる。
【００８９】
続いて、各サービス手段５Ａ〜５Ｄに対し、シミュレーテッドアニーリング法にて得られている解が配信される。かかる解の配信に際しては、自他サービス接続手段８Ａが用いられる。上述したように、自他サービス接続手段８Ａは自己以外の他の制御装置２Ｂ〜２Ｄのサービス手段５Ｂ〜５Ｄを利用するために必要なデータのやり取りを行なうために設けられた手段である。本実施の形態においては、第１制御装置２Ａの自他サービス接続手段８Ａは、まずは複数のＸ，Ｙ座標の組み合わせを他のサービス手段５Ｂ〜５Ｄに配信するために用いられる。
【００９０】
以下、図１５のフローチャートに従って、本実施の形態の制御装置の動作を説明する。第１制御装置２Ａの動作においてシミュレーテッドアニーリング法を終えたら（ステップＳＴ１５０４）、他サービス探知手段７Ｂ〜７Ｄにより得られた（ステップＳＴ１５０６）山登り法を担当できる他の制御装置２Ｂ〜２Ｄのサービス手段５Ｂ〜５Ｄに対して、それぞれスレッドを起動し（ステップＳＴ１５０８）、各スレッド毎に、複数のＸ、Ｙ座標の組み合わせを自他サービス接続手段８Ａを用いてユニキャスト通信によって送信する（ステップＳＴ１５１０）。かかる送信が完了したら、その印として行頭に『．』(ピリオド)を持ったデータをさらにユニキャスト通信によって送信する（ステップＳＴ１５１１）。送信後は、結果が返ってくるまで待機する（ステップＳＴ１５１２）。各スレッドを起動し終えた元スレッドは各スレッドが終了するまで待機する（ステップＳＴ１５１６）。各スレッドにおいては自他サービス接続手段８Ｂ〜８Ｄにより最短の総延長距離（ステップＳＴ１５１２）、その距離を与える複数のＸ、Ｙ座標の組み合わせ（ステップＳＴ１５１５）、行頭に『．』(ピリオド)（ステップＳＴ１５１４）、の順でデータが帰ってくるのでこの順序に従ってデータを受け取り、終了する。すべてのスレッドが終了したら、各スレッドの返してきた総延長距離をソートして（ステップＳＴ１５１７）その中から最短のものを選択し、同時にその最短距離を与えるＸ、Ｙ座標を選び出して（ステップＳＴ１５１８）演算を終える。
【００９１】
一方、山登り法を担当できる各制御装置２Ａ〜２Ｄの自他サービス接続手段８Ａ〜８Ｄにおいては同様のデータ伝送手順を実装しており（ステップＳＴ１５２０からステップＳＴ１５２２）、受け取ったＸ、Ｙ座標の並びを初期解とする山登り計算を所定回数行ない（ステップＳＴ１５１３）、結果を先に述べたような手順で送信元に送り返す（ステップＳＴ１５２４からステップＳＴ１５２６）。以上により、最適な加工経路が得られたので第１生産設備３Ａにおいて加工を開始することができる。
【００９２】
なお、本実施の形態では加工経路が問題になる加工機の場合について説明したが、加工開始前に加工パラメータを演算する加工機、プラント、組み立てラインなどの生産設備の場合であっても、サービス手段におけるサービスの中身を、問題に対応した最適化演算に変更することで、同様の効果が得られる。
【００９３】
また、これらＩＰ通信はＩＰのバージョン４による例で説明したが、バージョン６（ＩＰｖ６）であっても同様に動作し、また、同様の効果がある。
【００９４】
本実施の形態ではＩＰアドレス、ポート番号は他の動作例とは異なる値を選択している。こうすることにより、他のサービスおよびアプリケーションとなんら無理なく共存することができるのであるが、サービスの内容がほとんど同じ場合には他のＩＰアドレス、ポート番号と同一のものであってもよい。ただし、似ているが異なるサービスであることを区別するためには送信されるデータパケットのデータフォーマットを予め設計する必要がある。
【００９５】
以上、本実施の形態の制御装置による生産設備の制御方法によると、複数の制御装置を用いて最適化プログラムの一部を実行したので、生産設備の一種である加工機において最適ないし準最適な加工経路による加工を実行できる効果がある。
【００９６】
実施の形態６．
実施の形態６における制御装置は、構成としては上述の図２に示すような生産ラインとほぼ同一である。図２における制御装置の構成では、第１制御装置２Ａのサービス手段５Ａは、第１生産設備３Ａの現在の動作状態を表すデータを他の制御装置２Ｂ〜２Ｄのサービス手段５Ｂ〜５Ｄに対して送出するが、３台の制御装置２Ｂ〜２Ｄにのみ送信することで自分の負荷を押さえている。一方、制御装置２Ｂ〜２Ｄのサービス手段５Ｂ〜５Ｄは受け取った動作状態を表すデータをさらに他の制御装置のサービス手段に中継転送するサービスを具備している。それぞれの自サービス公布手段８Ａ〜８Ｄは動作状態を送出できる旨、もしくは中継できる旨をネットワーク１内にマルチキャスト送信している。さらに、それぞれの他サービス探知手段７Ａ〜７Ｄは中継してくれる制御装置を探すし、元データを送出できる制御装置を探す。
【００９７】
かかる動作をするように各制御装置が構成されている場合に、ネットワーク１に制御装置２Ａ〜２Ｋの計１１台が接続されると、これら一群の制御装置２Ａ〜２Ｋは、それぞれの自サービス公布手段６、他サービス探知手段７により、どの制御装置からデータを受け取って、どこの制御装置に送信することにするのかが、人手作業を介することなく自動的に決定されていく。制御装置２Ｂ〜２Ｋは、自己は中継可能であると自サービス公布手段６でマルチキャスト通信によって送信する。このとき、第１制御装置２Ａは中継を実行可能な制御装置として、例えば、制御装置２Ｂ〜２Ｄの３台を選択する。そして自他サービス接続手段８同士が接続を開始する。次に、制御装置２Ｂ〜２Ｄの３台は、それぞれ中継を実行可能な制御装置として例えば、制御装置２Ｅ〜２Ｇ，制御装置２Ｈ〜２Ｊおよび制御装置２Ｋを選択する。この際、各制御装置２Ｅ〜２Ｋは中経路の末端にあることを自サービス公布手段６でマルチキャスト通信によって送信する。各制御装置２Ｅ〜２Ｋが末端ではなく中継点になったときには、末端であることの公布は中止される。これで図１６に模式的に示すような中経路が完成する。
【００９８】
第１制御装置２Ａの稼動状態をモニタリングしたい制御装置はこれら末端の制御装置に接続することでモニタリングを行なう。このあたりの中継点、末端の選択と接続は「早い者勝ち」としている。
【００９９】
上述の「早い者勝ち」の意味について詳細に説明する。モニタリング作業を実行したい制御装置が現れたとき、他サービス探知手段７で「中継の末端である」と公布している制御装置を探知し、複数の「末端」が見つかったとき、どれか一つを選択して接続する。ランダムに制御装置を選択するという方法を行っているので、各制御装置の接続関係は、予め決まった順序にならないし、ネットワーク１内に現れる順番が変わればできあがっていく中経路も毎回同じにはならない。
【０１００】
「早い者勝ち」という情況が生じるのは、例えば中継路の、より始まりに近い所に位置する「末端」に接続したほうがデータの遅延が少ないことが予想されるので、そのようなデータの遅延が少ない上流の、接続可能な「末端」が早い者勝ちで取られていくからである。
【０１０１】
つまり、各制御装置の自サービス公布手段６を通して自分が「末端」であって接続可能である、と公布するときに、最上流から数えて何番目であるかをデータとして同時に公布するので、この公布データを受信した他の制御装置の自他サービス接続手段８は、複数の公布データの中から最も最上流に近い、すなわち何番目という値が最も少ないサービス手段５に接続するように構成されているので、早くネットワーク１に現れた制御装置が上流に近い「末端」と接続でき、この結果、上述の如く「早い者勝ち」となる状況が生じる。
【０１０２】
本実施の形態の制御装置は、以上のように構成し動作することで、第１生産設備３Ａの動作状態をモニタリングしたい制御装置が複数台あった場合に、従来ならその台数分データを送出する必要があるが、本実施の形態の制御装置では制御装置２Ｂ〜２Ｄに送るだけですむので３台分の送出負荷しかかからないので、ネットワーク上の通信量を抑制し、かつデータパケットの到達範囲の制御が容易となる。また、モニタリングしたい制御装置がさらに増加した場合には中継できるサービス手段５を具備する制御装置を単に増やすだけで自動的に中経路が広がり、簡単に対応でき、各制御装置の設定作業が、メンテナンス要員あるいはシステムエンジニアらの人手を煩わすことなく、自動的に実行可能となる効果が得られる。
【０１０３】
実施の形態７．
実施の形態７における制御装置では、上述の図２に示すような制御装置の構成において、各サービス手段５における動作内容はソフトウェアで実装される。ソフトウェアであるのでネットワーク１上のデータとして容易に伝送可能となる。このとき、サービス手段５で実行される動作手順を他の制御装置に対し伝送するサービスを、サービス手段５に予め具備させておく。これにより、他のサービス手段５の内容をコピーして同じ動作を行なえる制御装置が得られる。あるいは他の複数の制御装置に対してサービス手段５の中身を配布するよう動作する制御装置が得られる。
【０１０４】
この結果、あるサービスを実行するサービス手段５を増やしたいときに簡単にそれを実現する制御装置が得られる効果がある。また、全く新しいサービス手段５の内容であるソフトウェア（プログラム）の配布、バージョンアップしたソフトウェアを配布することで人手作業によるインストール作業に依存しない制御装置が得られる効果がある。
【０１０５】
実施の形態８．
実施の形態８における制御装置では、上述の図２に示すような制御装置の構成において、自他サービス接続手段８をＨＴＴＰ(Hyper Text Transfer Protocol)クライアント、もしくはＳＯＡＰ(Simple Object Access Protocol) クライアント、もしくはＷｅｂＤＡＶ(Web-based Distributed Authoring and Versioning) クライアントにより構成する。いわゆる上位情報系がＷｅｂアプリケーションサーバに実装される場合が多く、ＨＴＴＰプロトコルあるいはＷｅｂＤＡＶプロトコルのサーバ側として動作するので、制御装置はこのような上位情報系に対し直接データを送信できる。もしくは上位情報系がＷｅｂサービスとして実装され始めており、同様に制御装置はこのような上位情報系に対し直接データを送信でき、各制御装置の設定作業が、メンテナンス要員あるいはシステムエンジニアらの人手を煩わすことなく、自動的に実行可能となる効果が得られる。
【０１０６】
実施の形態９．
実施の形態９における制御装置は、図１７に示すような複数の制御装置により制御されている生産ラインのモニタリングシステム、つまり画像表示装置を具備する。各制御装置のサービス手段５は自己の制御する生産設備３の稼動状態を表すデータを他の制御装置からの要求に応じて送信することができるよう構成されている。送信可能なデータは自サービス公布手段６によりネットワーク１内にＩＰマルチキャスト送信されるように構成される。要求と送信は自他サービス接続手段８により実装されている。
【０１０７】
かかる構成では、第４制御装置２Ｄにはグラフィックディスプレー（画像表示装置）とマウスに代表されるポインティングデバイスにより構成されたグラフィカルユーザーインターフェースを備える（図示せず）。そして、このグラフィカルユーザーインターフェース上には図１８に示すような図形情報が描画され、オペレーターが図形情報をマウスの操作により選択指示を行なうことで描画状態を変化させるよう、サービス手段５にプログラミングされている。図１８に示したグラフィカルユーザーインターフェースの左側には、他サービス探知手段７により得られた他の制御装置のネットワーク構成情報を元に、生産ラインのネットワーク構成間略図が描画されている。ここに描かれる四角や丸がそれぞれ一つの制御装置を表している。オペレーターはマウスによりこれらのうちの一つを選択している。この選択により、グラフィカルユーザーインターフェースの右上にその制御装置が送信可能な稼動状態を表すデータの種類がツリー上に表示される。ツリー情報は、その制御装置２のサービス手段５に自他サービス接続手段８を用いて接続して要求することで得られる。例えばＸＭＬ（ｅＸｔｅｎｄｅｄ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）と呼ばれるデータ形式はここで述べているようなツリー構造を表現するのに好適である。そしてツリー上に描かれた図形の中で、例えばＺ座標をマウスで選択することで図１８の右下部分に実際の値が表示される。データはやはり自他サービス接続手段８を介して得たものである。
【０１０８】
さらに、ネットワーク構成図を図１９に示すように３次元的に表示することもできる。そしてマウスで制御装置２の一つを選択すると、その制御装置２から送信することのできるデータ名をツリー上に表示する図形が選択している図形から、あたかもにょきにょき生えてきたかのようにアニメーション表示することもできる。かかるモニタリングシステムを具備することにより、各制御装置の設定作業を、メンテナンス要員あるいはシステムエンジニアらの人手をなるべく煩わすことなく、より円滑に実行できる。
【０１０９】
実施の形態１０．
実施の形態９で選んだ制御装置において、選択したデータの実際の値は、選択している実際の制御装置２からネットワーク１を介して取得するものであることは上述したとおりである。その選択されたデータを取得するためのプログラムコードが存在して、データとして取り出し自在である。そのようなプログラムコードに対して、注目している制御装置２のＩＰアドレスと取り出したいデータ種類がプログラムコードに対するパラメータとして付与される。このプログラムコードは、自他サービス接続手段８にて利用されるが、プロシージャ、クラス、関数など（プログラミング言語により異なる）として実装されている。各プログラムコードに対しては、これらの引数等としてパラメータがそれぞれ付与される。
【０１１０】
本実施の形態では、図２０のモニタリングシステム（画像表示装置）に示したように、注目する制御装置および欲しいデータを、これまでの動作例と同様の操作でマウスで選択した場合に、各種プログラミング言語による引数を含んだプログラムのソースコードを自動生成し、画面上に表示するか、ファイルに保存するよう構成されている。これによりモニタリングシステムを記述する際にプログラミングの補助に有効な効果がある。モニタリングシステムのプログラマーは表示されたコードを自分のプログラムにカット＆ペーストすればよい。かかるモニタリングシステムを具備することにより、各制御装置の設定作業を、メンテナンス要員あるいはシステムエンジニアらの人手をなるべく煩わすことなく、より円滑に実行できる。
【０１１１】
実施の形態１１．
本実施の形態では、各制御装置は図２に示すがごとく構成される。すなわち生産設備Ａを制御するために設けられた第1制御装置２Ａ、生産設備Ｂを制御するために設けられた第2制御装置２Ｂ、その他の制御装置、第３制御装置２Ｃ、第４制御装置２Ｄがネットワーク１を介してデータを交換するようにしてある。各制御装置２は、それぞれ自サービス公布手段６、他サービス探知手段７、自他サービス接続手段８、ネットワーク接続手段９を備えている。それぞれの制御装置の自サービス公布手段６は図３に示すように、ＩＰマルチキャスト通信の方法に従ってパケットを送信することを一定時間毎に繰り返し行なう（ＳＴ３０１およびＳＴ３０２）。ここでは、ＩＰアドレスは２３４．５．６．７とし、ポート番号５６７０、送信間隔は１５秒毎としているが、これらの値はシステム全体であらかじめ定めておけば別の値でも差し支えない。送信間隔は実施の形態１において述べたように可変にしても良い。これと同時に各制御装置２の他サービス探知手段は図４に示した動作を行ない、上述のマルチキャストパケットを受信し（ＳＴ４０１）、それを送信した制御装置のＩＰアドレスおよび送信されてきた内容をディレクトリ領域に記憶する（ＳＴ４０２）。これらの受信動作は繰り返し行なわれる。
【０１１２】
ここで送信されてくる内容について説明する。本実施の形態は、ファイルの格納領域をお互いに供出しあうことを実現するためのものであるので、この目的のための情報を送信内容に含めることにしている。
【０１１３】
送信内容の第1の例としてはある制御装置２が、他の制御装置２に対して供出可能なファイル格納領域の大きさを送信内容に含めることであり、格納可能なバイト数を用いることにしている。後述するが、この格納可能なバイト数がわかると、ある制御装置が今から他の制御装置に格納したいファイルのサイズと、他の制御装置がそれぞれ公布している内容、すなわち格納可能なサイズとを比較し、自分のファイルをどの制御装置に送れば格納可能かを判断できるようになる。あるいは、各制御装置が公布しているシステム全体としてまんべんなく均等にファイルの分散を行なうことができるか、などの計画をすることができるようになる。
【０１１４】
内容の第２の例としては、送信している制御装置の地理的な位置をその内容に含めることである。これにより各制御装置は、他の制御装置の公布する地理的位置と自分の地理的位置からそれぞれの間の地理的な距離を計算し、自分の近くにある制御装置、遠くにある制御装置を把握することが可能となる。この演算の後、例えば他の制御装置群の中から最も近い位置にある制御装置と最も遠くに位置する制御装置を選んで、送りたいファイルを送信するように動作する。これはデータのバックアップを作るという観点から理にかなっている。つまり、バックアップを取り出して使いたい場面が訪れたときに通信路が不達となるリスクの少ない近所のバックアップデータを利用するという考え方、および天災、火事の被害などを同時に受けるリスクの少ない地理的に離れた場所存在するバックアップデータを利用するという考え方の２つを実現しているのである。
【０１１５】
図２１および図２２は本実施の形態の一連の動作を表す説明図（フローチャート）である。図に示すとおり一連の動作は複数のスレッド（もしくはプロセスあるいはタスク）から構成されている。まず、常駐させるスレッドが起動される（ＳＴ２１０１）。以下、起動されるスレッドをそれぞれ説明する。ここで起動されるスレッドはＳＴ２１０２、ＳＴ２１０７、ＳＴ２１１１、ＳＴ２１３３の４つである。
（１）スレッドＳＴ２１０２
ＳＴ２１０１により、ＳＴ２１０２スレッドが起動される。ＳＴ２１０２スレッドは、他の制御装置が公布する内容を受信するスレッドの開始点である。ＳＴ２１０３にてＩＰマルチキャストパケットの受信待ちをする。ＩＰアドレスは２３４．５．６．７というＩＰｖ４のマルチキャストＩＰアドレスで、ポート番号は５６７０である。マルチキャストパケットが他の制御装置から送信されてくると（ＳＴ２１０４）、ＳＴ２１０５にて受信内容を取り出し、ＳＴ２１０６の記憶領域Ａに受信内容を格納する。受信内容とは前述したように例えば他の制御装置それぞれが格納可能なファイル容量であったり、地理的な位置であったりする。
（２）スレッドＳＴ２１０７
さらにＳＴ２１０１により起動されるスレッドＳＴ２１０７について説明する。ＳＴ２１０８においてＩＰマルチキャストパケットを送信する。このＩＰマルチキャストパケットは他の制御装置のＳＴ２１０３において受信されるのである（ＳＴ２１０９）。送信後はＳＴ２１１０において１５秒間の時間待ちをした後、再びＳＴ２１０８に戻る。
（３）スレッドＳＴ２１１１
ＳＴ２１０１により、さらにＳＴ２１１１が起動される。ＳＴ２１１１はＦＴＰサーバのスレッドである。ＳＴ２１１２にてＦＴＰサーバであり、他の制御装置の備えるＦＴＰクライアント（ＳＴ２１１７およびＳＴ２１３１：後述）からの接続に備える。接続があった場合には、その要求にしたがってファイルを受け取ってファイル領域ＳＴ２１１３に格納したり、ファイル領域ＳＴ２１１３に格納されているファイルのファイル名の一覧を送り返したり、要求されたファイルそのものを送り返したりといった動作を行なうのであるが、ＦＴＰ動作の詳細については例えばＩＥＴＦ（Ｉｎｔｅｒｎｅｔ  Ｅｎｇｉｎｅｅｒｉｎｇ  ＴａｓｋＦｏｒｃｅ）のＲＦＣ９５９、ＲＦＣ１５７９等の文献に示された内容の手順にしたがって動作を実行するものである。
【０１１６】
さらに、スレッドＳＴ２１３３が起動されるのであるが、他のスレッドＳＴ２１２０の説明後のほうがＳＴ２１３３の動きを理解しやすいので、詳細については後述する。
【０１１７】
以上の手順、ＳＴ２１０２、ＳＴ２１０７、ＳＴ２１１１、ＳＴ２１３３の起動により、全体の動作としてはとりあえず安定した状態に入る。この次の段階としては、ある制御装置が自分のデータファイルを他の制御装置に送ろうとする時、および他の制御装置がＳＴ２１１３に格納しているファイルを取り出して自分のＳＴ２１１３に格納しようとするときにスレッドが起動される段階である。以下、これら２つのスレッドついて説明する。
（４）スレッドＳＴ２１１４
まず、ある制御装置が自分のデータファイルを他の制御装置に送ろうとする時に起動されるスレッドＳＴ２１１４について説明する。起動直後のＳＴ２１１５にて、記憶領域Ａ（ＳＴ２１０６）から各制御装置の公布内容を取り出す。次に、ＳＴ２１１６にて制御装置のＩＰアドレスを一つ、もしくは複数選択する。続いて、ＳＴ２１１７にてＦＴＰクライアントを用いて、送信したいデータファイルを選択した制御装置に送信する。ＳＴ２１１８にて複数選択した場合にはＳＴ２１１７を繰り返す判定を行ない、全て繰り返した場合にはＳＴ２１１９にて本スレッドは終了する。
（５）スレッドＳＴ２１２０
続いて、他の制御装置がＳＴ２１１３に格納しているファイルを取り出して自分のＳＴ２１１３に格納しようとするときに起動されるスレッドＳＴ２１２０について説明する。まず、ＳＴ２１２１にてユニキャストパケットを受信待ちするための準備が行なわれる。ソフトウェア的にはＴＣＰ／ＩＰのソケットを用意し（ｓｏｃｋｅｔ（）システムコール）、パケット待ちポート番号を割り当てて（ｂｉｎｄ（）システムコール）、実際にパケット到着を待ち始める（ｌｉｓｔｅｎ（）システムコール）、などといった処理が行なわれる。この準備が済んだときにＳＴ２１２２スレッドが起動され、ＳＴ２１２３でＩＰマルチキャストパケットが他の制御装置に向けて送信される（ＳＴ２１２４）。送信後は、このスレッドは終了する（ＳＴ２１２５）。
【０１１８】
一方ＳＴ２１２６にて、ＩＰユニキャストパケットの受信待ちに入っているのであるが、他の制御装置からパケットが送信されると（ＳＴ２１２７：ＳＴ２１２７は他の制御装置のＳＴ２１３８と接続される）、ＳＴ２１２８にて送信された内容を記憶領域Ｂに記憶する（ＳＴ２１２９）。本実施の形態においてはＳＴ２１２８にて受信したパケットから、それを送信した制御装置のＩＰアドレスを抽出して記憶するようにしているが、その他の実施例としては保持しているファイル名のファイルサイズ、各種日付（最初のファイル作成日時、ファイルの最終更新日時、写真撮影日時などファイルの内容に関する日時など）、ファイルの内容のチェックサム、制御装置の地理的な位置、ファイル作成者情報、ファイルの来歴（どの制御装置からいつ受信したか、どの制御装置にいつ送出したか）をやり取りすることもできる。その後、再びＳＴ２１２６にて受信待ちに入る。
【０１１９】
さて、ＳＴ２１２６にて、受信開始から１０秒間受信待ちを行なうが、その後、いずれかの制御装置が送信してきたか否かにかかわらず、１０秒後にはＳＴ２１３０に進む。ＳＴ２１３０では記憶領域Ｂ（ＳＴ２１２９）に記憶された制御装置から任意の一つを選択することにしている。このとき上述の他の実施例によれば、任意の一つを選ぶのでなく、何らかの意図を持って選択をすることができる効果がある。例えば最も新しい日付をもつもの、チェックサムが正しいものを多数決で選ぶ、地理的に最も近くにあるもの、最も遠くにあるもの、作成者から見て正しそうなもの、等の意図をもって選択できるようになるのである。もちろん、記憶領域Ｂ（ＳＴ２１２９）に何も格納されていない場合は、どの制御装置も指定したファイルを持っていなかったのであるから、本スレッドはそこで終了する（図示せず）。ＳＴ２１３０で一つ制御装置を選んだのち、ＳＴ２１３１に移行する。ＳＴ２１３１はＦＴＰクライアントである。一つ選んだ制御装置のＦＴＰサーバ（ＳＴ２１１２）と通信して目的のファイルを自己のファイル領域（ＳＴ２１１３）にコピーする動作を行なう。以上で本スレッドの動作は完了しＳＴ２１３２で終了する。
（６）ＳＴ２１３３スレッド
最後に、説明を保留してきたスレッドＳＴ２１３３の動作について説明する。このスレッドＳＴ２１３３は初期動作として起動される４スレッド（ＳＴ２１０２、ＳＴ２１０７、ＳＴ２１１１、ＳＴ２１３３）のうちの一つである。スレッドＳＴ２１１４やＳＴ２１２０、ＳＴ２１２２が起動される頃にはすでに動作を開始しているものである。ＳＴ２１３４ではＩＰマルチキャストパケットの受信動作待ちをしている。ここに、先に説明したスレッドＳＴ２１２２において、他の制御装置に送られるＩＰマルチキャストパケットＳＴ２１２４が受信される。すなわち、指定されたファイルがあるかどうかを探索する目的のパケットである。パケットが受信されたらファイル領域ＳＴ２１１３に対して、パケットに含まれるファイル名のデータ・ファイルが存在するかどうかをファイルサーチする（ＳＴ２１３６）。例えばマイクロソフト社のＷｉｎ３２ ＡＰＩではＦｉｎｄＦｉｒｓｔＦｉｌｅ（）というＯＳへのシステムコールを発行することで実装できる。ファイルが見つからなければＳＴ２１３４に戻る（図示せず）が、ファイルが見つかった場合にはＩＰユニキャスト通信を行なって、先のＳＴ２１３５のパケットを送信してきた制御装置にその結果を送信する（ＳＴ２１３８）。ＳＴ２１３８が接続される先は他の制御装置のＳＴ２１２７である。その後ＳＴ２１３４に戻る。以上がスレッドＳＴ２１３３の動作である。本スレッドの目的は、他の制御装置上のスレッドＳＴ２１２０に対してファイルが存在するかどうかの問い合わせの返事を行なうことにある。
【０１２０】
以上ですべての動作を説明したが、すべての制御装置は、図２１および図２２に示す一連の動作が可能である。すなわち同一構造のソフトウェアを搭載している。同一構造の通信上のクライアントとサーバを対向させることで、システム全体として、目的に沿った動作を行なっているのである。
【０１２１】
本実施の形態によれば、各制御装置の動作上必要な初期設定の内容、もしくは動作結果として収集蓄積されたロギングファイルを、お互いのファイル記憶領域を共用して保存保持するシステムが実現するので、パソコンサーバなど新たに特別なファイル記憶領域を設けることなく、データファイルを保存・保持できる効果がある。
【０１２２】
実施の形態１２．
制御装置は電源が投入されると、いわゆるファームウェアが起動し、ハードウェアチェック（無いこともある）したのち、ＯＳが起動して、ＴＣＰ／ＩＰ通信上のパラメータ（ＩＰアドレス、ネットマスク、ゲートウェイＩＰアドレス、ＤＮＳサーバＩＰアドレス、時刻サーバＩＰアドレス、メールサーバＩＰアドレスなど）がＯＳの通信プロトコルスタックに対して設定され、その後、計測制御のためのアプリケーションプログラムが各種設定パラメータを読み込みつつ、起動される。このときの通信上のパラメータおよびアプリケーションプログラムのパラメータは不揮発性のメモリかファイルシステムに記憶されているもので、通常は制御装置の据付調整時に作業者が設計に従って決定後、制御装置の設定画面に打ち込んだり、パラメータファイルとして制御装置にコピーするのである。これに対し、本実施の形態においては、制御装置の起動時に、通信上のパラメータ、アプリケーションのパラメータを自動設定することにしている。
【０１２３】
まず通信上のパラメータであるが、ネットワーク内にＤＨＣＰサーバ（Ｄｙｎａｍｉｃ  Ｈｏｓｔ  Ｃｏｎｆｉｇｒａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ  Ｓｅｒｖｅｒ）が存在するときには、通信プロトコルスタックの初期化時に問い合わせパケットをネットワークに向けて送出、ＤＨＣＰサーバが返答してきたパケットから通信パラメータを取り出して、自分の通信上のパラメータとして利用する。これはＩＥＴＦのＲＦＣ２１３１示された手順による。また、ＤＮＳ解決のため、自己の「ホスト名」と呼ばれるパラメータをダイナミックＤＮＳと呼ばれる手順によりＤＮＳサーバに自己のＩＰアドレスと組み合わせて登録する（ＲＦＣ２１３６）。なおこのＤＮＳ登録についてはＤＨＣＰサーバがＩＰアドレスを割り当ててくれたときにＤＮＳサーバにも同時に登録してくれることもある。ＤＨＣＰサーバが無い場合には例えばＩＥＴＦのＲＦＣ２４６２に示されたＡｕｔｏＩＰの手順により、ＩＰアドレスを自動決定する。
【０１２４】
さらにアプリケーションが動作を開始する際にも各種パラメータの事前設定が必要となる。その一つはＩＰマルチキャストＩＰアドレス、ポート番号である。これについてどのような値をネットワーク・システム内で利用するかについて、アプリケーション起動前に、各制御装置が合議制で決めてからアプリケーションを起動すればよい。すなわち、ＯＳが起動し、アプリケーション起動の準備が整った段階で、あるサービスに関するマルチキャストＩＰアドレスはいくつかを問い合わせるブロードキャストあるいはマルチキャストパケットを送信する。これに対して返事があった場合にはその値を利用する。所定時間内にどの制御装置も返事を返してこない場合には自己決定してアプリケーションを起動し、同時に前記問い合わせに対して今決めた値を返答するサーバ動作を開始する。
【０１２５】
さらに、本実施の形態では、システム上の機能分担も合議制で決定する。例えば、システムの監視データを蓄積するサーバをどの制御装置にするかを決定する際に、いずれかの制御装置から、「合議の実施要求」パケットが送信される。受信した各制御装置は合議に参加するモードに移行し、自己のファイル容量を「公約」としてパケット送信する。各制御装置は「公約」パケットを受信し、最も容量の大きなファイルを有する制御装置を「認許」したパケットを送信し、合議は終了する。以降蓄積サーバとして、各制御装置は認許された制御装置にデータを送信することになる。「合議」の後から起動された制御装置は、蓄積サーバの有無を問い合わせるパケットを送出し、蓄積サーバがこれに答えて、それ以降後から起動された制御装置は蓄積サーバにデータを送信するようになる。あるいは「合議の実施要求」パケットを送信してもよい。
【０１２６】
以上述べてきたように本実施の形態によれば、ＩＰアドレスをはじめ各種通信上のパラメータ、アプリケーションのパラメータをあらかじめ決定しておかなくても自動決定できる制御装置が得られる効果があり、さらに、制御装置を追加する際にも通信パラメータの再設定が必要でなくなる効果がある。
【図面の簡単な説明】
【０１２７】
【図１】実施の形態１の生産設備用制御装置の構成図である。
【図２】実施の形態１、２、７および８の生産設備用制御装置の構成図である。
【図３】実施の形態１の生産設備用制御装置の動作を示すフローチャートである。
【図４】実施の形態１の生産設備用制御装置の動作を示すフローチャートである。
【図５】実施の形態１の生産設備用制御装置の動作を示すフローチャートである。
【図６】実施の形態１の生産設備用制御装置の動作を示すフローチャートである。
【図７】実施の形態１の生産設備用制御装置の動作を示すフローチャートである。
【図８】実施の形態１の生産設備用制御装置の動作を示すフローチャートである。
【図９】実施の形態３の生産設備用制御装置の構成図である。
【図１０】実施の形態４の生産設備用制御装置の構成図である。
【図１１】実施の形態５の生産設備用制御装置の構成図である。
【図１２】生産設備（加工機）における加工経路を示す模式図である。
【図１３】加工経路の総延長距離と繰り返し演算の回数を示す図である。
【図１４】実施の形態５の生産設備用制御装置の動作を示すフローチャートである。
【図１５】実施の形態５の生産設備用制御装置の動作を示すフローチャートである。
【図１６】実施の形態６の生産設備用制御装置の構成図である。
【図１７】実施の形態９の生産設備用制御装置の構成図である。
【図１８】実施の形態９の生産設備用制御装置における画像表示装置上の画像の模式図である。
【図１９】実施の形態９の生産設備用制御装置における画像表示装置上の画像の模式図である。
【図２０】実施の形態１０の生産設備用制御装置における画像表示装置上の画像の模式図である。
【図２１】実施の形態１１の生産設備用制御装置の一連の動作を示すフローチャートである。
【図２２】実施の形態１１の生産設備用制御装置の一連の動作を示すフローチャートである。
【符号の説明】
【０１２８】
１  ネットワーク、  ２，２Ａ〜２Ｋ  生産設備用制御装置、  ３，３Ａ〜３Ｄ  生産設備、  ４  生産設備制御手段、  ５，５Ａ〜５Ｄ  サービス手段、  ６、６Ａ〜６Ｄ  自サービス公布手段、  ７、７Ａ〜７Ｄ  他サービス探知手段、  ８、８Ａ〜８Ｄ  自他サービス接続手段、  ９、９Ａ〜９Ｄ、９Ｂ１，９Ｂ２  ネットワーク接続手段、  １０  広域ネットワーク。
【図１】
2004171540.tif 000003
【図２】
2004171540.tif 000004
【図３】
2004171540.tif 000005
【図４】
2004171540.tif 000006
【図５】
2004171540.tif 000007
【図６】
2004171540.tif 000008
【図７】
2004171540.tif 000009
【図８】
2004171540.tif 000010
【図９】
2004171540.tif 000011
【図１０】
2004171540.tif 000012
【図１１】
2004171540.tif 000013
【図１２】
2004171540.tif 000014
【図１３】
2004171540.tif 000015
【図１４】
2004171540.tif 000016
【図１５】
2004171540.tif 000017
【図１６】
2004171540.tif 000018
【図１７】
2004171540.tif 000019
【図１８】
2004171540.tif 000020
【図１９】
2004171540.tif 000021
【図２０】
2004171540.tif 000022
【図２１】
2004171540.tif 000023
【図２２】
2004171540.tif 000024