(57)【要約】【課題】  システムにとって、なるべく多くの良い出力を維持する一方、悪い出力を回避すること、に対する一般的なメカニズムを持つ。【解決手段】  オブジェクトを製造するためのコンピュータ制御されたマルチ・ステップ製造システム内で例外取扱い作動を実行するための方法。本システムは、システム・コントローラを含む。システム・コントローラは、製造されるべきオブジェクトのためのオブジェクト仕様のストリームを受け取る。プラナ／スケジューラは、ジョブをインクリメンタリにプラニングし、スケジューリングし、システム・コントローラは、製造システム・モジュールによる、プラニングされ、スケジューリングされたオブジェクトの製造を指令するコマンドを、モジュール・コントローラに送る。【選択図】      図４
2005339544.tif 000002
【特許請求の範囲】
【請求項１】
オブジェクトを製造するためのコンピュータ制御されたマルチ・ステップの製造システム内で例外取扱いを実行するための方法であって、
前記システムが、システム・コントローラを含み、当該システム・コントローラ内に、プラナ／スケジューラ及び少なくとも１つのモジュール・コントローラが存在し、
前記システム・コントローラが、製造されるべきオブジェクトのためのオブジェクト仕様であって、オブジェクトが属するジョブを含む当該オブジェクト仕様のストリームを受け取り、
前記プラナ／スケジューラが、前記ジョブをインクリメンタリにプラニングして、スケジュールし、
前記システム・コントローラが、少なくともつのモジュール・コントローラに、製造システム・モジュールによる、前記プラニングされスケジュールされたオブジェクトの製造を指令するコマンドを送り、
前記方法が、
システム・コントローラ内で、前記マルチ・ステップ製造システム内で現存する問題状況についての通知を受け取るステップであって、前記問題状況が、装置作動問題（issues）、及び、誤って製造され（misproduced），規格外の(out of order)，或いは，紛失した(missing)オブジェクト，のような、悪いオブジェクトからなるグループから選択された少なくとも１つのメンバー（member）を含むものであり、
後続のオブジェクトの製造のためのプラニングを停止させるステップ、
製造を開始していない全てのオブジェクトのためのプランをキャンセルするステップ、
前記問題状況によって影響を受けた全てのオブジェクトを、悪いオブジェクトとしてマーキングするステップ、
システム・コントローラによってプラニングされた例外取扱い／復旧、又は、モジュール・コントローラによって指令された例外取扱い／復旧、の少なくとも１つを適用するステップ、及び、
通常の作動を再開するステップ
を含む方法。
【請求項２】
請求項１に記載のコンピュータ制御されたマルチ・ステップの製造システム内で例外取扱いを実行するための方法であって、
モジュール・コントローラにより指令される例外取扱い／復旧が、
前記システム・コントローラから、前記少なくとも１つのモジュール・コントローラに、悪いと考えられるオブジェクトの身元（identity）を通信するステップ、
少なくとも１つのモジュール・コントローラが、悪いと考えられた前記オブジェクトのための所定の復旧アクションを実行するステップであって、当該所定の復旧アクションが、条件（conditions）であって、製造の開始前に、特定の問題状況において当該条件についてアクションが採られることになる、当該条件についての情報と共に、モデル化され、前記システム・コントローラに対して、既知とされたものであり、及び、
前記少なくとも１つの所定の復旧アクションによって正しく製造されることになる前記オブジェクトの補完（complement）の前記システム・コントローラによるプラニング及びスケジューリングするステップ、
を含む方法。
【請求項３】
請求項２に記載のコンピュータ制御されたマルチ・ステップ製造システム内で例外取扱いを実行するための方法であって、
前記所定の復旧アクションが、前記悪いオブジェクトの前記製造システムからの廃棄、或いは、前記悪いオブジェクトの修理、を含む、代替的アクションの組のいずれかの実行を含む、
方法。
【請求項４】
請求項１に記載のコンピュータ制御されたマルチ・ステップの製造システム内で例外取扱いを実行するための方法であって、
前記システム・コントローラによってプラニングされた例外取扱い／復旧が、
前記システム・コントローラによって、前記製造システムのモデルに基づいて、復旧プランを指定するステップであって、当該モデルが、前記製造システム内の各モジュールの能力及びデフォールトの例外取扱いアクションを含むものであり、
前記少なくとも１つのモジュール・コントローラに、前記悪いオブジェクトの身元（identity）を通知する（informing）ステップ、
前記影響を受けた少なくとも１つのモジュール・コントローラに、前記悪いオブジェクトのための前記復旧プランを通知するステップ、及び、
プランを計算し、そのプランが変更されたオブジェクトのためのプランをキャンセルし、再送信するステップ、
を含む方法。
【請求項５】
オブジェクトを製造するためにコンピュータ制御されたマルチ・ステップの製造システム内で例外取扱いを実行するためのシステムであって、
前記システムが、システム・コントローラであって、当該システム・コントローラ内にプラナ／スケジューラ及び少なくとも１つのモジュール・コントローラが存在する当該システムコントローラを含み、
前記システム・コントローラが、製造されるべきオブジェクトのためのオブジェクト仕様（specifications）であって、オブジェクトが属するジョブを含む当該仕様のストリームを受け取り、
前記プラナ／スケジューラが、ジョブをインクリメンタリにプラニングし、スケジューリングし、
前記システム・コントローラが、製造システム・モジュールによる、プラニングされスケジューリングされたオブジェクトの製造を指令するコマンドを、前記少なくとも１つのモジュール・コントローラに送り、
前記システムが、
前記システム・コントローラ内で、前記マルチ・ステップ製造システム内に現存する問題状況についての通知（notice）を受け取るための手段であって、当該問題状況が、装置作動問題（issues）、及び、誤って製造され(misproduced)，規格外の(out-of-order)，あるいは、紛失した(missing)オブジェクト，のような悪いオブジェクトからなるグループから選択された少なくとも１つのメンバー（member）を含む手段、
後続のオブジェクトの製造のためのプラニングを停止させるための手段、
製造を開始していない全てのオブジェクトのためのプランをキャンセルするための手段、
前記問題状況によって影響を受けた全てのオブジェクトに、悪いオブジェクトとしてマーキングするための手段、
システム・コントローラによって計画された例外取扱い／復旧，或いは，モジュール・コントローラが指令した例外取扱い／復旧，の少なくとも１つを適用するための手段、及び、
通常の作動を再開するための手段、
を備えるシステム。
【請求項６】
請求項５に記載のコンピュータ制御されたマルチ・ステップの製造システム内で例外取扱いを実行するためのシステムであって、
モジュール・コントローラが指令した例外取扱い／復旧が、
前記システム・コントローラから、前記少なくとも１つのモジュール・コントローラに、悪いと考えられるオブジェクトの身元(identity)を通信するための手段、
少なくとも１つのモジュール・コントローラが、悪いと考えられる前記オブジェクトのための所定の復旧アクションを実行するための手段であって、当該所定の復旧アクションが、条件(conditions）であって、製造の開始前に、特定の問題状況(situation)において、当該条件についてアクションが採られることになる当該条件についての情報とともに、モデル化され、前記システム・コントローラにとって既知とされる手段、及び、
前記少なくとも１つの所定の復旧アクションによって正しく製造されることになるオブジェクトの補完の前記システム・コントローラによってプラニングし、スケジューリングするための手段、
を含むシステム。
【請求項７】
請求項５に記載のコンピュータ制御されたマルチ・ステップの製造システム内で例外取扱いを実行するためのシステムであって、
前記システム・コントローラがプラニングする例外取扱い／復旧が、
前記システム・コントローラによって、前記製造システムのモデルに基づいて、前記復旧プランを指定するための手段であって、当該モデルが、前記製造システム内の各モジュールの、能力及びデフォールトの例外取扱いアクションを含む手段、
少なくとも１つのモジュール・コントローラに、前記悪いオブジェクトの身元(identity)を通知する(informing)ための手段、
前記影響を受けた少なくとも１つのモジュール・コントローラに、前記悪いオブジェクトのための前記復旧プランを通知するための手段、及び、
プランを計算し、オブジェクトであってそのプランが変更された当該オブジェクトのためのプランをキャンセルし、再送するための手段、
を備えるシステム。
【請求項８】
コンピュータによって利用可能な媒体内に具体化された、コンピュータ読み取り可能なプログラム・コードを持つ、コンピュータによって利用可能な媒体を備える製品であって、当該媒体が、当該プログラム・コードが、当該コンピュータによって実行されるときに、当該コンピュータが、オブジェクトを製造するためのコンピュータ制御されたマルチ・ステップの製造システム内での例外取扱いを実行するための方法ステップを実行することを引き起こし、
前記システムが、システム・コントローラであって、当該システム・コントローラ内にプラナ／スケジューラ及び少なくとも１つのモジュール・コントローラが存在する、当該システム・コントローラを含み、
前記システム・コントローラが、製造されるべきオブジェクトのためのオブジェクト仕様(specification)であって、当該オブジェクトが属するジョブを含む当該オブジェクト仕様のストリームを受け取り、
プラナ／スケジューラが、ジョブをインクリメンタリにプラニングし、スケジューリングし、
そして、前記システム・コントローラが、製造システムモジュールによってプラニングされ、スケジューリングされたオブジェクトの製造を指令するコマンドを少なくとも１つのモジュール・コントローラに送り、
前記方法が、
前記システム・コントローラ内で、マルチ・ステップの製造システム内に現存する問題状況についての通知を受け取るステップであって、前記問題状況が、装置作動問題(issue)、及び、誤って製造され(misproduced)，規格外の(out-of-order)，あるいは、紛失した(missing)オブジェクト，のような、悪いオブジェクトからなるグループから選択された少なくとも１つのメンバー(member)を含むものであり、
後続のオブジェクトの製造のためのプラニングを停止させるステップ、
製造を開始していない全てのオブジェクトのためのプランをキャンセルするステップ、
前記問題状況によって影響された全てのオブジェクトを、悪いオブジェクトとしてマーキングするステップ、
システム・コントローラによって計画された例外取扱い／復旧、或いは、モジュール・コントローラによって指令された例外取扱い／復旧の少なくとも１つを適用するステップ、及び、
通常の作動を再開するステップ
を含む製品。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一般的に、自動化された製造システムの制御及び管理に関連し、より詳細には、オン・ライン・プラニングと所定のルールを結合する例外取扱いのためのシステム及び方法に関連する。
【背景技術】
【０００２】
製造システムは従来、時間経過とともに非同期的に到来し得る一続きのジョブ・リクエストのプラニングとスケジューリングを必要とした。図１に示すように、一般的な製造プラントは、複数の(multiple)機械(machines)をリンクする輸送(transports)のネットワークとして表わされ得る。プラントは、数台から数百台のいかなる台数の機械と輸送をも持ちうる。原材料の未終了のブロックは、複数の(multiple)ソースからプラントに入り得、完了済みのジョブは、複数の目的地(destinations)に退出(exit)し得る。図１の単純化された概略において、ソース１と２が、材料を、機械１及び２に提供する。これらの機械１及び２は、機械３及び４並びに目的地１及び２とインターフェースする。
【０００３】
そのようなシステムにおけるエラー(errors)は、悪いオブジェクト(objects)が、システム出力に流れることを引き起こしうる。悪いオブジェクトは、出力における期待(expectations)といくらか整合しない(inconsistent with)、例えば、注文されたバッチ中でそれらが規格外(out of order)である、或いは、それらが正しくなく製造，配置，配向，又はその他の、そのオブジェクトに対するオリジナルの仕様に違反する、オブジェクトとして定義される。そのような問題は、複雑な処理経路を持つシステムにおいて、及び、２つ或いはそれ以上の独立のジョブからのオブジェクトが同時にシステム内に存在するシステムにおいて、悪化される。現存するシステムにおいて例外(exceptions)が提示された(addressed)場合に、整合しない(inconsistent)出力を避けるために、現在製造中の全体のバッチを処分する(dispose of)ことがしばしば必要である。また、故障からの復旧のための、そのような決定はしばしば、システム・レベル・コントローラに対して不透明なやり方で、システム内の異なったモジュールによって局所的に(locally)為され、それ故、システム・レベル・コントローラによる最適な判断形成と干渉する。システムにとって、なるべく多くの良い出力を維持する一方、悪い出力を回避すること、に対する一般的なメカニズムを持つことが望ましい。
【発明の開示】
【課題を解決するための手段】
【０００４】
ここに開示された実施例は、上の[背景]の議論で説明された問題及びそこに引用された技術に対する改善された解決法の例を提供する。これらの例に、オブジェクト(objects)を製造するための、コンピュータ制御されたマルチ・ステップ製造システム内での例外の取扱いを実行するための改善された方法が示される。本システムは、システム・コントローラを含み、当該システム・コントローラ内には、プラナ／スケジューラ及びモジュール・コントローラ(module controller(s))が存在する(reside)。システム・コントローラは、製造されるべきオブジェクトのためのオブジェクト仕様(それらが属するジョブを含む)のストリームを受け取る。プラナ／スケジューラは、ジョブを、インクリメンタリにプラニングし、スケジューリングし、システム・コントローラは、製造システム・モジュール(modules)によるプラニングされスケジュールされたオブジェクトの製造を指令するコマンドを、モジュール・コントローラ(controller(s))に送る。本方法は、システム・コントローラ内で、マルチ・ステップ製造システム内で現存する問題状況についての通知(notice)を受け取り、後続オブジェクトの製造のためのプラニングを停止させることを含む。プランは、製造を開始していない全てのオブジェクトのためのキャンセルされたプランであり、問題状況によって影響された全てのオブジェクトは、悪いオブジェクトとしてマークされる(marked)。システム・コントローラによってプラニングされた例外取扱い／復旧、或いは、モジュール・コントローラが指令した例外取扱い／復旧が、適用されて、通常の作動が再開される。
【０００５】
オブジェクトの製造のための、コンピュータ制御されたマルチ・ステップ製造システム内での例外取扱いを実行するためのシステムもが、開示される。このシステムは、システム・コントローラ(この中に、プラナ／スケジューラ及びモジュール・コントローラが存在する)を含む。システム・コントローラは、それらが属するジョブを含む、製造されるべきオブジェクトのためのオブジェクト仕様のストリームを受け取り、プラナ／スケジューラは、インクリメンタルに(incrementally)ジョブをプラニングし、スケジュールする。システム・コントローラは、製造システム・モジュールによるプラニングされてスケジュールされたオブジェクトの製造を指令するコマンドを、モジュール・コントローラに送る。システム・コントローラは、マルチ・ステップ製造システム内に現存する問題状況の通知(notice)を受け取り、後続のオブジェクトの製造のプラニングを停止する。未だ開始していない全てのオブジェクトのためのプランは、キャンセルされ、問題状況によって影響された全てのオブジェクトは、悪いオブジェクトとしてマークされる。システム・コントローラがプラニングした例外取扱い／復旧か、モジュール・コントローラが指令した例外取扱い／復旧かのいずれかが、適用され、システムは、通常の作動を再開する。
【０００６】
更に他の実施例において、媒体に実装(embodied in)されたコンピュータにより読取り可能なプログラム・コードを有するコンピュータによる利用が可能な媒体の形式での製品(article of manufacture)が開示され、この製品は、コンピュータが、オブジェクトを製造するためのコンピュータ制御されたマルチ・ステップの製造システム内での例外取扱い(exception handling)を実行するための方法ステップを実行することを引き起こす。本システムは、システム・コントローラ(この中に、プラナ／スケジューラ及びモジュール・コントローラが存在する)を含む。システム・コントローラは、製造されるべきオブジェクトのためのオブジェクト仕様(specifications)(それらが属するジョブを含む)のストリームを受け取り、プラナ／スケジューラは、ジョブを、インクリメンタリにプラニングし、スケジュールする。システム・コントローラは、製造システム・モジュールによるプラニングされてスケジュールされたオブジェクトの製造、を管理するコマンドを、モジュール・コントローラに送る。本方法は、システム・コントローラ内で、マルチ・ステップ製造システム内に現存する問題状況についての通知(notice)を受け取り、後続のオブジェクトの製造に対するプランを停止することを含む。未だ製造を開始していない全てのオブジェクトのためのプランはキャンセルされ、問題状況によって影響された全てのオブジェクトは、悪いオブジェクトとしてマークされる。システム・コントローラがプラニングした例外取扱い／復旧、或いは、モジュール・コントローラが指令した例外取扱い／復旧アプローチか、のいずれかが適用され、通常の作動が再開される。
【発明を実施するための最良の形態】
【０００７】
ここに開示されるものは、出力予測(output expectations)と不整合なオブジェクトの製造を回避するための、製造環境内での例外取扱いを実行する方法及びシステムである。これを実現するために、本方法は、所定のルールとプラニング(planning)を結合して、局所的な例外の取扱いと復旧のプランの並行的インターリービングを可能とする。このアプローチにおいて、システムのモジュールは、モデル化され、システム・レベル・プラナ及びスケジューラにエクスポート(exported)された、所定の例外取扱いルールを持つ。そして、不整合なオブジェクトの復旧及び再生成(recreation)をプラニングするときに、このシステム・レベル・プラナ及びスケジューラはこれらを考慮する。或いは、プラナ／スケジューラは、所定のルールを使用すること無しに、全ての例外の取扱いのためのアプローチを判断し得る。スケジューリングのための現存するアプローチとは対照的に、ここに説明される本システム及び方法は、システム・レベルのコントローラの知識無しに、ローカルのモジュール・レベルにおいて復旧の判断をしない。何故なら、そのようなアプローチは、システム・レベル・コントローラによる最適な判断決定と干渉するからである。更に、それは、不整合の出力を避けるための、全体の製造バッチを廃棄する必要性を予測する。
【０００８】
本システム及び方法は、製造，印刷，又は，アセンブリのようなマルチ・ステップの製造工程のために使用される制御ソフトウェアに適用され、柔軟なルーティング，最適化された生産性，及び最適な負荷バランシング，を提供するための複雑な経路に亘る複雑な作動の取扱いを提供する。以下の説明において、システム及び方法の完全な理解を提供するために、多くの特定の詳細が設定される。しかし、当業者にとって、そのような特定の詳細(details)無しに、本システム及び方法を実施できることが明白である。他の場合には、本発明を不必要に不明確にしないために、特定の実施詳細は示されない。
【０００９】
種々のコンピューティング環境が、例外取扱い方法及びシステムを取り込み得る。以下の議論は、適切なコンピューティング(computing)環境(この中で、同時発生のプラニング及びスケジューリング方法及びシステムが実施され得る)の、簡略な、一般的説明を提供することが意図される。要求はされないが、本方法及びシステムは、コンピュータ実行可能な命令(ネットワーク化されたコンピュータによって実行されているプログラム・モジュールのような)の一般的なコンテキストで説明される。一般的に、プログラム・モジュールは、特定のタスクを実行する、或いは、特定の抽象データ・タイプを実現(implement)する、ルーチン，プログラム，オブジェクト，コンポーネント，データ構造，等を含む。更に、当業者は、本方法及びシステムが、ハンド・ヘルド装置，マルチ・プロセッサ・システム，マイクロ・プロセッサ・ベースの又はプログラマブル・コンスーマ電子機器，ネットワーク化されたＰＣｓ，マイクロ・コンピュータ，メイン・フレーム・コンピュータ，等を含む、他のコンピュータ・システム構成とともに実施され得ることを理解するであろう。本方法及びシステムは、タスクが、通信ネットワークを通じてリンクされた遠隔の処理装置によって、或いは、集中されたコンピューティング環境において実行されるような、分散されたコンピューティング環境においても実施され得る。分散されたコンピューティング環境において、プログラム・モジュールは、ローカル及びリモートのメモリ記憶装置の双方に配置され得る。
【００１０】
ここに詳細に説明される本方法及び装置は、埋め込まれた(embedded)アプリケーションには限定されないが、以下の議論は、例示の目的のためのみの埋め込まれたシステムに関係する。当業者は、プラニング及びスケジューリング方法及びシステムが、多くの複雑な制御問題、広い範囲のプログラミング問題に対する一般的ソフトウェア・ソリューション、そのソリューションからモデルを分離する柔軟なプログラム、及び、制限問題としての公式化がドメイン知識の表現のために自然である場合の全て、のために有用であることを理解するであろう。追加的にそれは、多数のコンピューティング環境において実施され得る。
【００１１】
例外ハンドラ(handler)は、可能な限り多くの所望の出力を維持しつつ不所望の出力を回避するという全体的目的を持った状態で、オン・ライン・ドメインに適応されたアーキテクチャを用いて実現されてきた。このシステムは、オブジェクトの「バッチ」内の一定の順(order)に属するディスクリートなオブジェクトを操作(manipulate)する。複数のバッチは、必要に応じてオブジェクトを適切な出力目的地に迂回させる(diverting)ことによって、同時にシステム内で処理され得る。システム・コントローラ(プラナ／スケジューラ)は、オブジェクトの適切な順序を記憶する。システム・コンポーネントは、エラーが起こり、悪いオブジェクトが処理システム内にあるときに、コントローラに通知できる。
【００１２】
１つの例示的アプリケーションは、自動化された機械加工システム(この中で、金属のブロックが、ドリリング，ラッチング，及び他の機械加工ステーションの間を運ばれる)であろう。アセンブリ又はパッキングのために、特定のカスタマに対する全てのパーツが、単一の出力ステーションにおいて、特定の順序で現れる(appear)ことが望ましいかもしれない。第２の例は、図２に概略的に図示された、カット・シート印刷システムである。ここで、「印刷ジョブ」は、複数の「(ソース１又はソース２からの)シート」からなる。これらは、印刷，バインディング，折畳み，又は他の操作のために機械１か機械２かのいずれかに運搬される。これらのシートは、指定された画像をその上に持って指定された順序で「出力トレイ」(目的地，或いは，代替的目的地)において現れねばならない。
【００１３】
さて、図３を参照すると、システムは、システム・コントローラ310(この中に、プラナ／スケジューラが存在する)，及び、一つあるいはそれ以上のモジュール・コントローラ320を含む。システム・コントローラ310とモジュール・コントローラ320の間にコーディネータ（不図示）が存在し得る（これは、システム・コントローラ310内に存在し得る）。システム・コントローラは、製造されるべきオブジェクトのためのオブジェクト仕様（specifications）のストリームを受け取る。これらは、インクリメンタリに、プラニングされ、スケジュールされる。同時発生的に（concurrently）、プラニングされ、スケジュールされた、製造されるべきオブジェクトのためのコマンドが、適切なときにモジュール・コントローラに送られる。従って、如何なる時点においても、システム・コントローラが未だその存在を知らないオブジェクト，システム内でプラニングされスケジュールされたオブジェクトであってモジュール・コントローラに未だ通知されていないオブジェクト，及び、モジュール・コントローラ（これに対して製造が開始されているか或いは開始されていない）に通知されたオブジェクト，が存在することになる。
【００１４】
図５は、サンプル・シーケンスに対するシステム内の全てのオブジェクトの状態を示す。システム・コントローラは、どのオブジェクトがそのジョブに属するかを決定するための、オブジェクト及びジョブについての全ての関連する情報を持つ。それは、これらのオブジェクトが完了するまで、製造中のオブジェクトの全てのプランをも記憶する。図５に見られるように、オブジェクト9及びそれ以上のオブジェクトは、未だ、システム・コントローラ（ＳＣ）に知られた、対応するプラン（plans）を持たない。オブジェクト6，7，及び8は、システム・コントローラ内にあり、プラニングされている。オブジェクト5は、プラニングされており、少なくとも１つのモジュール・コントローラ（ＭＣ）に既知であるが、それについて作業（work）は未だ開始されていない。オブジェクト1，2，3，及び4は、現在製造中である。
【００１５】
図４を参照する。ここで、ジョブ補間のプラニング／スケジューリングとインターリーブされた、所定の，復旧ルールの利用のための方法の模範的実施例が説明される。問題状況の通知を受け取ると、410において、システム・コントローラは、後続オブジェクトの製造のプラニングを停止し、未だ製造を開始していない全てのオブジェクトのためのプランをキャンセルする。印刷システムの例を続けると、問題状況は、ミスによって製造された、或いは、規格外のオブジェクトのような悪いオブジェクト、及び、紙切れトレイの問題、未だ十分熱くないバインディング・モジュール、を含む。420において、システム・コントローラは、問題状況によって影響を受けた全てのオブジェクトにも、悪い（bad）としてマークする（marks）。システム・コントローラは、430において、モジュール・コントローラに、悪いと考えられるべきそれらのオブジェクトの身元（identity）を通信する。
【００１６】
悪いと宣言された全てのオブジェクトについて、そのようなオブジェクトに直面した（confronted）モジュール・コントローラは、440において、所定の復旧アクションを実行する。モジュール・コントローラによってとられた所定のアクションは、ａ）オリジナルの、プラニングされたアクションの実行，ｂ）恐らく、オブジェクトの廃棄によるそれの、システムからの除去，或いはオブジェクトの修理（例えば、悪い配向（orientation）の調整），を含む代替的アクションの組のいずれかの実行，を含み得る。これらのアクションのどちらが、各モジュール・コントローラによって採用されるべきかは、製造開始前に、事前に固定されており、システム・コントローラにとって既知である。これらのアクションは、オブジェクトの製造をプラニングし、スケジューリングするためにシステム・コントローラによって用いられる標準的なモジュール・アクション（能力（capabilities））に類似するやり方で、条件（conditions）（これに対して、特定の問題状況（problem situation）においてアクションがとられることになる）についての情報とともに、モデル化され、システム・コントローラにとって既知とされ得る。システム・コントローラは、450において、所定のモジュール・コントローラ・アクションによって正しく製造されることになるオブジェクトの補完（complement）をプラニングし、スケジューリングする。システム・コントローラは、モジュール・コントローラが悪いオブジェクトを廃棄（例えば、システムから排出することによって）できるか、或いは、悪いオブジェクトが、それ自身の、システムを通じたオリジナルのコース（original course）を継続するか、を知っている。460において、次に通常の作動（operation）が再開する。
【００１７】
本方法は、図６に説明される。ここでは、オブジェクト2は、正しく製造されることに失敗し得る。例外取扱いのための方法無しには、元々、正しくない出力がもたらされ得ることに留意して欲しい。現在開示されている方法に続いて、システム・コントローラは、既にプラニングされた、或いは、未だプラニングされていない、オブジェクト6及びそれ以降に対するプランを、モジュール・コントローラに通知（announce）しない。システム・コントローラは、オブジェクト5のためのプランをキャンセルし、オブジェクト3及び4もが、悪いと考えられるべきことを決定し、通信する。問題状況によって影響されたオブジェクトには、例えば、悪いオブジェクトと同じジョブ内にあり、その悪いオブジェクトの後に終了すべきオブジェクト、が含まれる。
【００１８】
本方法は、出力の統一性（integrity）が維持されることを保証するために使用され得る。例えばカット・シート印刷システムにおいて、パージ・トレイは、フィニッシング・ステーションにおいて利用可能となり得る。もし、フィニッシング・ステーションが、悪いシートをパージ・トレイに送るように構成されるならば、次に、所望の印刷ジョブの有効なプレフィックスだけが、通常の出力トレイに現れることになる。システム・コントローラは、オブジェクトが、システムから除去されたか否かを知っているので、それは、何らかの悪いオブジェクトが、通常の出力トレイに到着したか否かを判断できる。全ての悪いオブジェクトが、適切に廃棄されたことが保証されるときに、システム・コントローラは、残っている所望のジョブ（即ち、オリジナルの、正しく製造されたオーダされた（ordered）オブジェクトのグループの補完）に対する新たなプランを生成することになる。
【００１９】
他の例は、化学及び生物学的なサンプルを準備し、処理し、最終的には、出力トレイ又はラックにおいて特定の所望の順序（order）に配置されるための機械装置（この中で、液体のコンテイナが、機械から機械に移動される）のものである。複数のオブジェクトが同時に製造中である複雑なシステムにおいて、処理中に検知された如何なるエラーも間違って順序付けされた出力をもたらさないこと、或いは、全体の高価なサンプルのバッチの廃棄を要求することが重要である。
【００２０】
このアプローチは、オリジナルの「悪いオブジェクト」がシステム内に無いときでさえ、成功した。印刷システムの例に戻ると、未処理のストック（raw stock）の不足は、新たなオブジェクトの、システムへの注入を防ぎ得る。このケースにおいて、システムに亘って移動するようにプラニングされたオブジェクトは、存在しないことになる。そのようなオブジェクトが「悪い」と宣言することによって、システム・コントローラは次に、紛失している（missing）オブジェクトの後の、システム出力に到達することが意図された既にシステム内にある如何なるオブジェクトも、オペレータによって、特定され、適切に破棄される、或いは、除去されることを保証できる。
【００２１】
本方法は、より複雑なシステム（その中で、出力位置に存在するもの以外のモジュールが、オブジェクトを破棄できる）のためにも作動可能であることにもまた、留意すべきである。もし、図6に図示されたアイテム5に見られるように、モジュールがプラニングされたオブジェクトの不存在に耐えられるならば、次に、本方法は、オブジェクトが、排出機能を持つ最も近いモジュールに到達するやいなや、オブジェクトが排出される（ejected）という結果をもたらすことになる。カット・シート印刷の例を継続する。ここで、パージ・トレイは、プリンタ・システム中に配置され得る。上述の方法は、不所望のシートが、当該シートが遭遇する次のパージ・トレイにスタックされる（stacked）という結果をもたらす。悪いシートを受け取るようにプラニングしたシステム・モジュールは、影響を受けない。
【００２２】
更にもし、製造システムが、エラー取扱いについての本方法を用いるように設計されているならば、悪いオブジェクトが直には廃棄されないが、廃棄される前に、実際にはシステムを通じた異なったルートを採るような、悪いオブジェクトについての代替的アクションが設定され得る。これを実現するための単純なアプローチは、そのような悪いオブジェクトのルーティングのためだけに用いられる特別目的の輸送部（transports）を含ませることであろうが、機械的或いは他の制約が悪いオブジェクトに対する代替的ルートを保証するような、より洗練された設計は、悪いオブジェクトのために、自由であり、利用可能であろう（もし、それが用いられる場合、そして、それが用いられるときに、明細書及び請求項の視野によって完全に熟慮される（contemplated）なら）。
【００２３】
図７に移る。ここでは、ジョブ補完のプラニング／スケジューリングとインターリーブされたプラニングされた復旧ルールの利用のための方法の、他の模範的実施例が、図示される。710において、問題状況（situation）の通知を受け取ると、システム・コントローラは、後続のオブジェクトの製造のプラニングを停止させ、製造を開始していない全てのオブジェクトに対するプランをキャンセルする。マルチプル・エンジンのプリンティング・システムの例を続けると、問題状況は、ミス製造された、或いは、壊れた（out-of-order）オブジェクト、のような悪いオブジェクトを含み、壊れた紙トレイ及び未だ熱くないバインディング・モジュールのような問題も含む。720において、システム・コントローラは、問題状況によって影響された全てのオブジェクトにも、やはり、悪いとマークする（marks）。730において、システム・コントローラは、適切に所定の（predetermined）モジュール・アクションを用いて、全ての悪いオブジェクトの復旧をプラニングする。以前と同様に、モジュール・コントローラによって採られた所定のアクションは、ａ）オリジナルの、プラニングされたアクションの実行，又は、ｂ）恐らく、オブジェクトの廃棄によるそれの、システムからの除去，或いはオブジェクトの修理（例えば、悪い配向（orientation）の調整），を含む代替的アクションの組のいずれかの実行，を含み得る。復旧は、修理又は廃棄プラスオブジェクトの再製の形式であり得る。
【００２４】
このアプローチにおいて、悪いオブジェクトに対して採られるべき所定の代替的アクションだけに依存するよりはむしろ、システム・コントローラは、恐らく、能力及び各モジュールのデフォールトの例外取扱いアクションを含むシステムのモデルに基づいた、悪いオブジェクトの修理、を含む、採られるべきアクションを指定できる。一旦、オリジナルの悪いオブジェクトについて通知されると、システム・コントローラは、モジュール・コントローラに、どのオブジェクトが、悪いと考えられるかについて通知する（720）。（オリジナルの悪いもののほかに、追加的オブジェクトが、悪いとラベリングされる（labeled）ように要求され得ることを思い出して欲しい）。この時点において、システム・コントローラは、遭遇する各悪いオブジェクトに応じて各モジュール・コントローラがどのアクションを採るかについての仕様を含み得る。これは、オプショナルのステップ（この中で、システム・コントローラが、モジュール・コントローラが、それらの所定のアクションの中から選択することを助ける）である。所定のアクションだけに依存するよりはむしろ、システム・コントローラは、機械の現在の状態に応じて適切なアクションを判断する柔軟性を持つ。740において、悪いと宣言された全てのオブジェクトについて、システム・コントローラは、影響を受けたモジュール・コントローラに、悪い（bad）オブジェクトのためのプランを通知する。750において、システム・コントローラは、プランを計算し、そのプランが変更されたオブジェクトのためのプランをキャンセルし、再送する。通常と所定の復旧アクションの双方のモデルを与えられると、システム・コントローラは、例えば、システムから悪いオブジェクトを排出することによって、モジュール・コントローラが悪いオブジェクトを廃棄できるか、或いは、悪いオブジェクトが、システムを通じてそのオリジナルのコースを継続するかを知る。次に、760において、通常の作動が再開される。
【００２５】
印刷システムの例に戻る。ここで、システムは、例外の取扱いに留意して注意深く設計されていない場合かもしれない。そして、悪いシートが正しく廃棄されることが保証された、所定のルールの組を発見することが不可能であり得る。採るべきシートについての、多くの有り得る分岐（branching）及び再結合（rejoining）の経路を持つ印刷システムに対して、この状態を容易に想像できる。そのようなシステムにおいて、システム・コントローラは、その時点の機械の状態に依存して、悪いシートのための可能な経路を発見するために、いくつかのプラニング方法の内のいずれかを使用できる。システム内のオブジェクトの輸送を遅くできる、或いは、更に停止できるシステムにおいて、これは特に魅力的である。システム・コントローラは、全ての他のオブジェクトがシステム内で「一次停止（paused）」された状態を保持する一方、悪いオブジェクトをパージ（purge）し得、置換物（replacements）を生成でき得ることに留意して欲しい。システムのための適切なアクションを判断するために、種々の方法が、システム・コントローラ内で使用され得ることに留意して欲しい。
【図面の簡単な説明】
【００２６】
【図１】模範的製造プラントの概略図である。
【図２】他の模範的製造プラント構成の概略図である。
【図３】その中に例外取扱いのためのシステムが存在しうるコンピュータ・システムの１つの実施例の概略図である。
【図４】ジョブ補間(complement)のプラニング／スケジューリングとインターリーブされた所定のオープン復旧ルール(open recovery rules)を実現するための作動のフローの模範的実施例を詳細に説明するフロー図を提供する。
【図５】特定の時刻におけるオブジェクトのシーケンスの状態を示す。
【図６】問題状況を持つオブジェクトのシーケンスの状態を示す。
【図７】ジョブ補間のプラニング／スケジューリングとインターリーブされたプラニングされた復旧ルールを実現するための作動のフローの模範的実施例を詳細に説明するフロー図を提供する。
【図１】
2005339544.tif 000003
【図２】
2005339544.tif 000004
【図３】
2005339544.tif 000005
【図４】
2005339544.tif 000006
【図５】
2005339544.tif 000007
【図６】
2005339544.tif 000008
【図７】
2005339544.tif 000009