(57)【特許請求の範囲】
【請求項１】
総合的板金製造および生産システムにして、
製造する板金パーツの２次元単一平面図、又は平面図・正面図・側面図を含む２次元３面図、又は３次元フレーム図から、曲げ加工前の２次元展開図と曲げ加工後の３次元画像を含む曲げモデルを生成するための高知能製造システムと；
前記曲げモデルに基づいて、前記板金パーツを製造するための曲げプランを生成し提案するためのエキスパート計画システムと；
各曲げに付随するコストを概算するためのコスト概算手段にして、このコストに基づいて、前記エキスパート計画システムが曲げプランを生成するものと
を含むシステム。
【請求項２】
請求項１の総合的板金製造および生産システムにして、前記エキスパート計画システムは、前記コストが最小となる経路を発見し、その経路に基づいて曲げ順を決定することを特徴とするシステム。
【請求項３】
製造する板金パーツの２次元単一平面図、又は平面図・正面図・側面図を含む２次元３面図、又は３次元フレーム図から、曲げ加工前の２次元展開図と曲げ加工後の３次元画像を含む曲げモデルを生成するための高知能製造システムと；
この曲げモデルに基づいて、前記板金パーツを製造するための曲げプランを生成するためのエキスパート計画システムと
を含む総合的板金製造および生産システムにして、
前記エキスパート計画システムは、各曲げに付随するコストを概算するためのコスト概算手段を含み、このコストに基づいて、前記曲げプランを生成することを特徴とするシステム。
【請求項４】
請求項３の総合的板金製造および生産システムにして、前記エキスパート計画システムは、前記コストが最小となる経路を発見し、その経路に基づいて曲げ順を決定することを特徴とするシステム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
関連する出願
この出願は以下の出願に関連する。
【０００２】
米国仮出願第６０／０１６，９５８（１９９６年５月６日出願、発明の名称  「板金製造設備を通して設計及び製造情報を管理し且つ分配するための装置及び方法」）
米国特許出願第０８／６９０，０８４（１９９６年７月３１日出願、発明の名称「設計及び製造情報を板金製造設備を通して管理し且つ分配するための装置及び方法」）
米国特許出願第０８／３３８，１１５（１９９４年１１月９日出願、発明の名称「ロボット運動を計画し制御するための方法」）
米国特許出願第０８／３８６，３６９（１９９５年２月９日出願、発明の名称「板金曲げ計画を生成し且つ実行するための高知能システム」）
著作権通知
この明細書の一部は著作権の対象となるものを含む。この著作権の所有者は、この著作権の全ての権利を保留する。
【０００３】
発明の背景
発明の分野
この発明は曲げ板金要素の製造に一般的に関連する。更に、この発明は高知能製造システムをエキスパート曲げ計画作成システムと統合するための装置及び方法に関連する。前記高知能製造システムは、製造設備を通して設計製造情報を管理し且つ分配する。前記エキスパート曲げ計画作成システムは、板金要素の製造のための曲げ計画及び制御情報を生成する。
【０００４】
【従来の技術】
従来、曲げ板金要素の製造は一連の製造工程を含む。第１の段階は、設計段階であり、その間に板金パーツの設計が顧客の明細に基づいて生成される。顧客は、一般的にその設備或いは工場で製造されるべき特定の板金要素のための注文を出す。前記顧客の注文は、前記要素がその設備で製造されるように、必要な製造及び設計情報を含む。この情報は例えば、前記パーツの幾何学的寸法、前記パーツの材料、特殊成形部についての情報、数量、出荷日等を含む。
【０００５】
この設計段階において、板金パーツ（板金部品）の設計は、適宜のコンピュータ補助設計システム（ＣＡＤ）を用いて前記製造設備における設計事務所で生成される。前記顧客の明細に基づいて、前記板金パーツの２次元モデルが前記ＣＡＤシステムを用いてプログラマにより生成される。典型的には、顧客は、前記要素の青写真或いは図面及び前記パーツ（部品）の重要なる幾何学的寸法を提供する。前記図面は、また前記パーツに含まれる任意の特殊な成形部或いはマーク部及び前記板金パーツの表面における穴の位置或いは他のタイプの開口部の位置を示す。設計プログラマは、前記ＣＡＤシステム上で２次元モデルを生成するために、この青写真又は図面を用いる。前記２次元モデルは前記板金パーツの平面図及び１つ或いはそれ以上の他の斜視図を含み、それらは曲げ線及び寸法情報を含む。
【０００６】
前記板金要素の実際の曲げ加工が行われる前に、前記パーツは最初にパンチ加工され、或いは当初の板金在庫材料から切り離される。パンチプレス或いはプラズマ或いはレーザ切断機械を操作して前記在庫材料を加工するために、コンピュータ数値制御（ＣＮＣ）或いは数値制御（ＮＣ）システムが用いられる。前記材料材料の加工を促進するために、コンピュータ補助製造システム（ＣＡＭ）或いはＣＡＤ／ＣＡＭシステムが前記設計プログラマにより使用され前記２次元モデルに基づいて制御コードが生成される。前記制御コードは前記在庫材料から板金要素を切断し或いはパンチ加工するために前記パンチプレス及び／又は切断機械へ供給され且つその機械により使用されるところのパートプログラムを有する。
【０００７】
前記製造工程における次の段階は曲げ計画作成段階である。この段階で、曲げ計画が、工場フロアにおいて曲げオペレータにより生成される。前記オペレータには、１つ或いはそれ以上の切断され或いはパンチ加工された在庫材料のサンプルと共に、前記要素の青写真或いは２次元図面が提供される。これらの材料を用いて、オペレータは曲げ計画を生成し、それは使用される工具を定義し且つ実行される曲げの順番を定義する。曲げワークステーションはＣＮＣプレスブレーキのごときＣＮＣ板金曲げ機械装置を含み、それはオペレータが前記曲げ計画に基づいて曲げコード或いはプログラムを生成し且つデータを入力するのを可能にする。
【０００８】
一旦曲げ計画が生成されると、オペレータは前記曲げ順の最初のテスト加工のために前記ワークステーションをセットアップ（或いは設定又は組み立て）する。このテスト加工段階において、前記パンチ加工され或いは切断された在庫材料はマニュアルで前記プレスブレーキに搬入され、且つ、前記プレスブレーキが操作され、前記ワークピースに対してプログラムされた曲げ順が実行される。前記オペレータは最終的な曲げ板金パーツを分析し且つそれが顧客の明細に適合しているかどうか調べる。前記プレスブレーキの最初の運転の結果に基づいて、前記オペレータは前記曲げプログラムを編集することにより曲げ順を修正する。前記曲げ板金要素が所望の設計明細の範囲内に収まるまで、更なるテスト加工が典型的には行われる。
【０００９】
前記製造工程における最後の段階の１つは曲げ加工の段階である。前記曲げ計画が生成され且つテストされた後、前記曲げオペレータは前記曲げステーションに対して所望の工具を取付け、前記曲げ計画及び格納された曲げプログラム或いはコードに基づいて前記プレスブレーキを操作する。必要な数量のパンチ加工され或いは切断された在庫材料が所定の時間に前記曲げステーションにおいて利用可能であるように、そして要求された出荷日までに他の作業が終了するように、作業スケジュールがまた行われる。最終的な曲げ板金パーツ（又板金部品）が製造された後、前記パーツ（又は部品）は顧客に対する出荷のために集められ且つ荷造りされる。
【００１０】
上記した従来の生産及び製造工程は幾つかの欠点及び不利な点を有する。例えば、各顧客の注文についての設計及び製造データは、通常物理的に（例えばファイルキャビネットにおける紙により）或いは電気的に（例えばディスク或いは磁気テープに格納することにより）生成されるが、そのようなデータは通常別個に格納され且つ容易に読み出しすることができない。更にそのようなデータはしばしば、失われ或いは破壊され、前記設計製造情報を、工場フロアに或いは製造設備における他の位置へ分配するために貴重な時間が失われる。前記板金パーツの設計データ及び曲げ計画の生成のために非常に多くの製造時間が失われる。というのは、前記パーツ設計データ及び曲げ計画の生成は、主に前記設計プログラマ及び曲げオペレータにより行われ、個人の知識及び技術及び経験に大きく依存するからである。
【００１１】
近年、前記従来の板金製造工程を改良し且つ全体的作業工程の効率を改良するための研究及び試みがなされている。例えば、商業的に入手可能なＣＡＤ／ＣＡＭシステムにおける２次元或いは３次元モデルの生成或いはその使用は、前記製造工程及び前記曲げ板金要素のモデル化を促進し且つ改良している。前記パーツの２次元及び３次元表現は、前記デザインプログラマ或いはオペレータにより使用され、前記パーツの幾何形状をより良く理解し且つ前記パーツの設計データ及び曲げ順コードを効率的に生成するのを可能とする。データを電気的に格納し且つ転送する能力もまた、前記設計事務所から前記工場フロアの各場所への情報の流れを改良する。コンピュータ及びデータ通信ネットワークの発展により古い紙テープ或いは磁気ディスクのキャビネット或いはファイルの検索を行う必要がなくなった。
【００１２】
他の最近の発展もまた設計及び製造工程の効率を改良し、前記板金要素の製造工程におけるコードの自動化をもたらした。例えば、曲げ加工を行うためにプレスブレーキにおいて板金ワークピースを操作し且つ位置決めするために、ロボットマニピュレータ或いはコントローラが開発された。更に材料操作装置が、ロボットが把持することができる位置へワークピースを搬入し且つ位置決めするために、及び、製造されたワークピースを搬出するために提供された。またロボットがワークピースを把持する位置を変更し或いは再配置する間に前記プレスブレーキにおいてワークを操作するために、リポジション・グリッパが導入された。
【００１３】
例えば種々の制御装置へダウンロードされた、マニュアル製造によるプログラムの制御のもとに、板金パーツ（ワークピース）１１６を曲げ加工するための従来の曲げワークステーション１１０が図１に図示されている。図１の典型的曲げステーション１１０は、アマダアメリカＩｎｃ．のＢＭ１００ワークステーションを含む。図１に示されるように、前記曲げワークステーション１１０は以下を含む。すなわちワークピース１１６を曲げ加工するためのプレスブレーキ１２９と、前記プレスブレーキにおいてワークピース１１６を操作し且つ位置決めするための５つの自由度を有するロボットマニピュレータ（ロボット）１１２と、未加工ワークピースを、前記ロボット１１２が把持することができる位置へ搬入し且つ位置決めするための材料搬入搬出装置（Ｌ／ＵＬ）１３０と、前記ロボット１１２がその把持位置を変更する際に前記ワークピース１１６を保持するためのリポジション・グリッパ１３２とである。
【００１４】
図１に示されるように、前記プレスブレーキ１２９はダイレール１２２の上に置かれる少なくとも１つのダイ１１９と、パンチ工具ホルダ１２０により保持される少なくとも対応するパンチ工具１１８とを含む。前記プレスブレーキ１２９は更に、バックゲージ機構１２４と、１つ或いはそれ以上の曲げステージ（図１の例では３つの曲げステージが図示されている）とを含む。更に、前記ロボットのアーム１１２は、前記ワークピース１１６を掴むために使用されるロボットアームグリッパ１１４を含む。前記材料搬入搬出装置１３０は、幾つかの吸引カップ１３１を含み、それは前記板金ワーク１１６を持ち上げるための上向きの吸引力を生成し、従って前記搬入搬出装置１３０は、前記ロボット１１２のグリッパ１１４に対してワークピース１１６を手渡し且つ引き続いて加工されたワークピース１１６を前記グリッパ１１４から取り出し、当該加工されたワークピースを搬出する。
【００１５】
前記装置の動作は以下の通りである。搬入搬出装置１３０は材料置き場（図示せず）から未加工のワークピース１１６を取り出し、当該ワークピース１１６を上昇させ前記ロボット１１２のグリッパ１１４により把持される位置へそれを移動する。前記ロボット１１２は次に、前記曲げワークステーション１１０における特定の曲げステージに対応する位置へ移動する。図１に示されるように、ステージ１は前記プレスブレーキ１２９の左端部分におけるステージであり、ステージはダイレール１２２に沿って前記ステージ１の左側に位置し、ステージ３は図においてステージ２の右側に位置する。例えば、ステージ１で曲げ加工が行われる場合、ロボット１１２は、前記ステージ１へワークピース１１６を移動し、前記パンチ工具１１８及びダイ１１９の間の位置で、それが前記バックゲージ機構１２４の突き当て部に到達し且つ接触するまで、前記プレスブレーキ１２９においてワークピース１１６を操作する。前記バックゲージ機構１２４の助けにより、前記ワークピース１１６の位置がロボットアーム１１２により調整される。次に、前記ダイレール１２２を上方へ移動することにより前記ステージ１においてワークピース１１６に対して曲げ加工が行われる。パンチ工具１１８とダイ１１９が同時にワークピース１１６に接触し、ワークピース１１６が前記プレスブレーキ１２９の内部で比較的安定な姿勢をとる時、前記グリッパ１１４は前記ワークピース１１６における把持を解放し、ワークピース１１６から遠ざかる。プレスブレーキ１２９は、次に、適当な曲げがなされるまで、前記ダイ１１９の上方への移動の完了することにより前記ワークピース１１６の曲げ加工を完了する。実行されるべき次の曲げ加工及び前記ワークピース１１６の形状に応じて、前記グリッパ１１４の把持位置は再配置されなければならない。図１に示されるリポジション・グリッパ１３２はこの目的のために提供される。前記ロボットグリッパ１１４の再配置が必要とされる次の曲げ加工を実行する前に、前記ワークピース１１６はロボット１１２により前記リポジション・グリッパ１３２の方へ移動される。前記リポジション・グリッパ１３２はそこで前記ワークピース１１６を掴み、前記ロボットグリッパ１１４は、次の曲げ加工或いは一連の曲げ加工のための適切な位置において前記ワークピース１１６を再び掴むことができる。
【００１６】
図１に示される曲げワークステーション１１０は、別個に収納されている幾つかの制御装置により制御される。それらの制御装置は、ＭＭ２０−ＣＡＰＳインタフェイス１４０、プレスブレーキ制御装置１４２、ロボット制御装置１４４、及び搬入搬出装置制御装置１４６を含む。前記プレスブレーキ制御装置１４２は、ＮＣ９Ｒプレスブレーキ制御装置を含み、前記ロボット制御装置１４４は２５Ｂロボット制御装置を含み、それらはいずれもアマダアメリカＩｎｃ．から入手可能である。
【００１７】
前記プレスブレーキ制御装置１４２及びロボット制御装置１４４の各々は、それぞれ独自のＣＰＵ及びプログラム環境を有している。前記搬入搬出装置制御装置１４６は、独立プログラム可能論理制御装置（ＰＬＣ）を備え、前記プレスブレーキ制御装置１４２及びロボット制御装置１４４に設けた各々のコンソールに接続されている。
【００１８】
各制御装置１４２，１４４，１４６の各々は異なる型のバス及びアーキテクチャ及びマニュファクチャラを有する。それらは主に、パラレルＩ／Ｏシグナルにより調整される。シリアルインタフェイスは、前記コントローラ（制御装置）へ曲げ及びロボットプログラムを転送するために設けられ、前記コントローラの各々は異なる態様でプログラムされる。例えば前記搬入搬出コントローラ１４６のＰＬＣをプログラムするために論理ダイアグラムが使用され、前記ロボットコントローラ１４４をプログラムするためにＲＭＬが使用される。
【００１９】
前記曲げワークステーション１１０のための計画を作成するために、オペレータは適正な曲げ順及び工具選択及び工具ステージ配置及び所望のロボット運動及びグリッパ再配置（グリッパリポジション）を決定しなければならない。前記計画を決定した後、提供プログラム或いはソフトウエア１４８、例えばＮＣ９Ｒプレスブレーキプログラム及び２５Ｂ−ＲＭＬロボットプログラムが前記種々のコントローラのためにオペレータにより生成される。これらのプログラムの各々はＣＡＤシステムから生成された最初のパーツ設計データを用いて生成される。前記ロボットプログラム及び曲げプログラムのいずれもマニュアルで作成されなければならず極めて多くの労働力を必要とするものである。更に、設計プログラマーが、以前に作成され且つ分類されたプログラムが使用できるか否か或いは新しいプログラムを作成しなければならないか否かを決定するために各パーツのタイプを検査する。しかしながら各々の分類されたプログラムは、狭い範囲の受入れ可能なパーツ寸法のみをサポートするため、しばしば新しいプログラムがオペレータにより作成されなければならない。最後のＲＭＬロボットプログラムは、完成された時コンパイルされ、ＭＭ２０−ＣＡＰＳシステム１４０によりロボットコントローラ１４４へダウンロードされる。曲げプログラムが入力され、前記プレスブレーキコントローラ１４２に設けた制御ペンダントにおいてデバッグされる。
【００２０】
前記システムの欠点に鑑みて、板金要素を製造するために必要な曲げ計画及び他の製造情報を自動的に作成するための高知能システム及びエキスパートシステムの分野において研究及び開発が行われた。例えば米国特許出願第０８／３８６，３６９（発明の名称「板金曲げプランを作成し且つ実行するための高知能システム」）は高知能の自動化曲げシステムを開示し、それは曲げ計画を作成し、次に作成された計画を、曲げ板金要素を製造するために実行する。そこに開示されたシステムは、工具及びロボットによる把持及びロボットの運動に関するエキスパート情報を曲げ順計画装置へ提供するための１つ或いはそれ以上のエキスパートモジュール或いはサブシステムを含み、前記曲げ順計画装置は最終的曲げ計画を決定し且つ作成する。シーケンサがまた提供され、最終的作成計画を実行し且つ曲げ板金要素を製造するために、前記曲げワークステーションにおける種々の構成要素に対する適当なコマンドを定式化し且つ伝送する。更に米国特許出願第０８／３３８，１１５（発明の名称「ロボット運動を計画し且つ制御するための方法」）は板金要素の製造を促進するために、ロボットの運動を計画し且つ制御するためのエキスパートシステムを開示する。ここに開示されたシステムは、障害物により制限された空間内におけるロボットの運動を計画し、従ってロボットは前記曲げ装置により実行される一連の曲げ操作を通して、ワークピースを保持し且つ操作することができる。
【００２１】
他の進歩は、製造設備の全てにおいて、設計及び製造情報を管理し且つ分配するための改良を導いた。例えば、米国仮出願第６０／０１６，９５８に基づく米国特許出願第０８／６９０，０８４は、板金パーツに関連する設計及び製造情報を論理的に格納することにより、格納されたエキスパート知識の効率性及び組織化を改良し、従ってそれらの情報が製造設備における任意の場所から容易にアクセスされ且つ検索されるようにするための装置及び方法を開示する。１つの側面によれば、以前の作業データが中央のデータベース或いはファイル・サーバに格納され、従ってそれらは工場内の任意の場所から容易にアクセスされ、且つ現在作業要求と同じ或いは類似の過去の作業情報が検索され且つ特定されるように検索方法或いはプロセスが提供される。種々の他の特徴がまた米国特許出願第０８／６９０，０８４に開示され、例えばオペレータによる曲げ計画の開発を促進する。
【００２２】
【発明が解決しようとする課題】
上記のような進歩にも拘らず、種々のタイプのワークステーション及び作業要求に対応するために、前記製造プロセスにおける更なる柔軟性を提供し且つ上記したと同様のシステムの機能を一体化する必要が存在する。従って前記ロボット機械装置及びエキスパートシステムは、板金要素の製造における著しい自動化を導いたにも拘らず、そのような構成要素及びシステムは、製造設備全てにわたるワークステーションに対してパーツ情報を管理し且つ分配するための高知能製造システムと一体化（或いは総合）されてはいない。又、ロボットにより操作される機械及び、人間により操作される機械の両方に対してエキスパート知識及び情報を提供するシステムに対する要求がある。そのようなシステムは、前記曲げ計画を作成する際において、オペレータが例えば工具或いは最適の曲げ順を選択し且つ決定する際に助言を提供するために、複数のエキスパートシステムに選択的にアクセスできるようにすることにより生産性を向上させることができる。更に、前記エキスパート製造システム及び高知能製造システムにおいて更に柔軟性及び注文適合化を与えることにより、曲げオペレータ或いはプログラマは、広い範囲の使用に対して前記システムを適合化させ、異なるタイプの曲げステーション或いは機械に適合することができる。
【００２３】
上記に鑑みて、この発明は、種々の側面及び実施例及び特定の特徴或いはその部分的組合わせを介して、以下に記載するごとき１つ或いはそれ以上の目的及び利益をもたらすために提供される。
【００２４】
この発明の一般的な目的は、曲げ板金要素の生産及び製造の効率を増大するために、高知能製造システム及び曲げエキスパートシステムにおいてよりい一層の柔軟性を提供することである。
【００２５】
この発明の更なる目的は、高知能製造システムをエキスパート板金計画・曲げシステムと一体化するための装置及び方法を提供することである。
【００２６】
この発明の他の目的は、オペレータが選択的にエキスパート計画・曲げシステムを注文に応じて適合化し、ロボットの支援による曲げアプリケーション及びロボットの支援によらない曲げアプリケーションを含む種々のアプリケーションに対応することを可能とする方法及び装置を提供することである。
【００２７】
この発明の更に他の目的は、エキスパート計画及び曲げシステムが、高知能製造システムと通信し且つそのメッセージに対して応答することができるようにする装置及び方法を提供することである。そのようなインタフェイスは前記曲げエキスパートシステムに対して及びそこから、質問形式言語において送られるコマンドを作成し且つ伝送し且つそれに応答するための装置及び方法を含む。曲げ計画情報を、前記高知能製造システムへ格納するために、前記エキスパートシステムから受け取ったコマンドまたは情報を翻訳するための方法及び装置が提供される。
【００２８】
この発明の他の目的は、たとえばオペレータにより入力された曲げ順拘束条件に基づいて拘束語句を自動的に作成するための装置及び方法を提供することであり、前記拘束語句は、曲げ計画を作成する際に前記エキスパート計画システムにより使用される。
【００２９】
【課題を解決するための手段】
この発明は従って一体化された総合的板金製造及び生産システムに向けられ、それは、製造されるべき板金パーツの曲げモデルを作成するための高知能製造システムと前記曲げモデルに基づいて板金パーツを製造するための曲げ計画を作成し且つ提案するためのエキスパート計画システムとを有し、前記エキスパート計画システムが、複数のエキスパートモジュールを備え、前記装置は、更に前記エキスパート計画システムを異なる曲げアプリケーションに適合せしめるために、前記複数のエキスパートモジュールを選択するためのシステムを備える。これにより前記エキスパート計画システムは、選択的に起動された複数のエキスパートモジュールに基づいて曲げ計画を作成する。
【００３０】
この発明によれば、また、一体化された板金製造及び生産システムを提供するための方法が提供される。この方法は以下の工程を含む。即ち、製造される板金パーツの曲げモデルを高知能製造システムにより作成する工程と、複数のエキスパートモジュールを含むエキスパート計画システムにより、前記曲げモデルに基づいて板金パーツを製造するための曲げ計画を作成し且つ提案する工程と、異なる曲げアプリケーションに対して前記エキスパート計画システムを適合せしめるために前記複数のエキスパートモジュールを選択的に起動する工程である。これにより前記エキスパート計画システムは、選択的に起動された複数のエキスパートモジュールに基づいて曲げ計画を作成する。
【００３１】
一体化された板金製造及び生産システムが更に提供される。ここにおいて前記システムは、製造されるべき板金パーツの曲げモデルを作成するための高知能製造システムと前記曲げモデルに基づいて板金パーツを製造するための曲げ計画を作成し且つ提案するための曲げ計画システムとを有する。拘束システムが更に提供され、それはオペレータにより入力された拘束条件に基づいて、前記エキスパート計画システムにより作成される曲げプランを選択的に拘束する。前記拘束システムは、オペレータにより入力された拘束条件に応じて拘束語句を作成するための拘束マネージャを含む。前記拘束語句は、前記曲げ計画を作成する際に前記エキスパート計画システムにより利用される。更に、前記拘束条件は、オペレータにより入力される曲げ順拘束条件を含み、前記拘束マネージャは前記曲げ順拘束条件に基づいて拘束語句を作成する。
【００３２】
この発明は更にオペレータにより入力された拘束条件に基づいて拘束語句を作成する方法を含む。前記方法は以下の工程を含む。即ち、製造される板金パーツの曲げモデルを作成する工程と、前記曲げモデルに基づいて板金パーツを製造するための曲げ計画を作成し且つ提案する工程と、オペレータにより入力される拘束条件に基づいて前記作成された曲げ計画を選択的に拘束する工程である。前記方法はまた、オペレータにより入力された拘束条件に応じて拘束語句を作成する工程を含む。ここに、前記拘束語句は、曲げプランを作成する際に利用される。更に、前記拘束条件は、オペレータにより入力される曲げ順拘束条件を含み、前記拘束語句は前記曲げ順拘束条件に基づいて作成されるように構成されている。
【００３３】
この発明はまた、一体化された製造システム及び、高知能製造システムをエキスパート計画システムに対してインターフェースするための方法に向けられる。前記システム及び方法は以下を含む。即ち、高知能製造システムにより製造されるべき板金パーツの曲げモデルを作成する工程と、前記曲げモデルに基づいて、板金パーツを製造するための曲げ計画をエキスパート計画システムにより作成し且つ提案する工程と、メッセージを前記高知能製造システムから前記エキスパート計画システムへインターフェースモジュールにより生成し且つ転送する工程とである。これにより、前記エキスパート計画システムは、前記転送されたメッセージに基づいて曲げ計画を作成する。この発明によれば、前記メッセージは、機能交換言語（ＦＥＬ）に基づくインターフェースモジュールにより生成される。
【００３４】
更に、板金製造のための装置及び方法が提供され、それは以下を含む。即ち製造されるべき板金パーツの曲げモデルを作成するための高知能製造システムと、前記曲げモデルに基づいて板金パーツを製造するための曲げ計画を作成し且つ提案するためのエキスパート計画システムと、前記エキスパート計画システムを異なる曲げアプリケーションに対して選択的に起動するためのシステムである。これによりオペレータは、前記曲げモデルに基づいて曲げ計画を独立して作成することができ、また曲げ計画を作成するためにエキスパート計画システムを選択的に起動することができる。
【００３５】
この発明の上記目的及び特徴及び利点は以下に更に十分に開示される。
【００３６】
【発明の実施の形態】
付録の簡単な説明
この発明の詳細な説明を更に促進するためにこの発明の特徴の非限定的な例として、複数の付録を参照する。ここに、
付録Ａはオペレータにより設定される拘束条件に基づいて、ロボットを有するワークステーションについての曲げ計画を作成するための前記エキスパート計画システムを実行する際に送られる前記ＦＥＬメッセージの事例を含む。
【００３７】
付録Ｂは、オペレータにより入力される拘束条件が存在しない場合においてロボットを有するワークステーションについての曲げ計画を作成する際に前記エキスパート計画システムに対して送られる前記ＦＥＬメッセージの例を含む。
【００３８】
付録Ｃは、前記エキスパートモジュール及び種々のパラメータの状態に関連する情報を含む典型的構成ファイル（コンフィグレーションファイル）を含む。
【００３９】
付録Ｄは、前記エキスパート計画システムにより作成され且つ「ＦＩＮ」ファイルに格納される最終的曲げ計画情報及びＦＥＬメッセージの例を含む。
【００４０】
付録Ｅは、典型的「ＥＶＢ」ファイルであり、それは、Ｘ方向測定情報を有しないバックゲージ設定及びプレスブレーキ運動或いは操作に関連するデータを含む。
【００４１】
付録Ｆは典型的「ＥＶＴ」ファイルであり、それは種々の工具ステージを設定するための工具設定データ及びバックゲージデータを含む。
【００４２】
付録Ｇは典型的「ＥＶＸ」ファイルであり、それは曲げ計画の、提案されたプレスブレーキ運動及びバックゲージ位置に関連するデータを含む。
【００４３】
付録Ｈは典型的「ＲＢ１」ファイルであり、それはＸ方向測定情報を有するロボット運動に関連するデータを有するＦＥＬメッセージを含む。
【００４４】
付録Ｉは典型的「ＲＢ２」ファイルであり、それはＸ方向測定情報を有さないロボット運動を定義するためのＦＥＬメッセージを含む。
【００４５】
この発明は、この発明の非限定的な実施例を説明する複数の図面を参照してなされる以下の詳細な説明において更に説明される。前記図面において類似の参照番号は類似の部品を表す。
【００４６】
この発明の１つの側面によれば、高知能製造システムをエキスパート板金計画・曲げシステムと一体化するための装置及び方法が提供される。前記高知能製造システムは、設計及び製造情報を工場全体に管理し且つ分配するように構成され、且つ前記工場内において種々の要素の設計及び製造を促進するための種々の特徴及びプロセスを提供する。そのような特徴は、中央データベースから以前の作業情報を調査し且つ検索する能力を有し、従って（以前に製造されたパーツの設計及び製造情報を含む）以前の作業情報は、以前に製造されたパーツのそれと同じ又は或いは類似の特徴を有する新しいパーツを製造するための計画を作成する際に使用される。前記高知能作業システムは、また、オペレータによる曲げ計画の作成を促進するために、種々の図形ユーザインタフェースを提供する。以下に記載されるように、米国特許出願第０８／６９０，０８４及び米国仮出願第６０／０１６，９５８に開示された種々の特徴は、ここに開示される高知能製造システムにおいて使用され且つ実行される。
【００４７】
前記エキスパートシステムは、曲げ板金要素を製造するための曲げ計画を作成し且つ実行するための１つ或いはそれ以上のエキスパートモジュールを含む。これらのエキスパートモジュールは、前記曲げ計画のための最適曲げ順及び（工具選択及び工具ステージ配置を含む）工具装備を決定するためのエキスパートシステム或いはサブシステムを含む。更に、ロボットを有するワークステーションについては、ロボット操作運動エキスパートが提供され、前記曲げ計画を実行するためのロボット運動経路及びロボット保持工程を決定する。リポジションエキスパートが更に提供され、リポジション・グリッパの制御及び前記ロボットのリポジション操作に関連するシーケンス及び操作を決定する。米国特許出願第０８／３８６，３６９及び第０８／３３８，１１５に記載される特徴及び側面は、前記エキスパート板金計画・曲げシステムにおいて実行される。前記エキスパートシステムの特徴及びこの発明の装置及び方法において一体化される前記高知能製造システムの特徴の更に詳細なまとめは以下に提供される。
【００４８】
この発明の特徴は非常に広範囲の種類の工場の環境及び設定において使用され、更に、この発明は一連の製造及び生産段階が異なる場所で実行される工場環境において実行される。非限定的な実施例或いは例として、この発明は例えば進歩的板金製造設備における曲げ板金要素の製造を参照して説明される。前記設備は、１つ或いはそれ以上のワークステーションにおけるロボットを有する或いは自動化された機械を含む。
【００４９】
図２（ａ）を参照するに、進歩的板金製造設備３８はこの発明の実施例に基づいて、ブロックダイアグラムの形態で一般的に図示されている。図２（ａ）に示されるように、板金製造設備或いは工場３８は、工場全体に分散される複数の場所（或いはロケーション）１０，１２，１４，…，２０を含む。これらの場所は、設計事務所１０、組立ステーション１２、出荷ステーション１４、パンチ加工ステーション１６、曲げ加工ステーション１８及び溶接ステーション２０を含む。図２（ａ）における板金工場３８は、６個の異なる場所のみを有するように記載されているが前記工場はもちろん６個以上の場所を含むことができ図２（ａ）に図示されている事務所或いはステーションのそれぞれのタイプについて１つ以上のものを含むことができる。例えば前記設備３８についての製造能力要求及びそのサイズに応じて、１つ以上のパンチ加工ステーション１６、曲げ加工ステーション１８又は溶接ステーション２０を設けることができる。更に、工場３８は、１つ以上の設計事務所１０、組立ステーション１２或いは出荷ステーション１４を含み、且つ、それは曲げ板金要素のごとき複数の要素を生産し製造することを促進するための他のタイプの場所を含むこともできる。
【００５０】
前記工場３８内における前記場所１０，１２，１４，…，２０の各々は、前記要素の製造及び生産に関連する個別の製造及び生産段階或いは工程の１つ或いはそれ以上を実行するように構成され且つそのための装置を含む。
【００５１】
例えば設計事務所１０は適当なるＣＡＤ／ＣＡＭシステムを備え、顧客の明細に基づく板金パーツの設計の作成を促進する。前記ＣＡＤ／ＣＡＭシステムは、１つ或いはそれ以上のパーソナルコンピュータ、表示装置、プリンタ及び商業的に入手可能なＣＡＤ／ＣＡＭソフトウエアを有する。非限定的例として、前記設計事務所１０の前記ＣＡＤ／ＣＡＭシステムは、ＡＵＴＯＣＡＤ或いはＣＡＤＫＥＹ、或いはアマダＡＰ４０或いはＡＰ６０ＣＡＤ／ＣＡＭシステムそれはアマダアメリカ株式会社（カリフォルニア州ブエナパークに所在）から入手可能である。を含む。更に、他の商業的に入手可能なＣＡＤシステム例えばＶＥＬＬＵＭが使用可能である。前記はウインドウズに基づくＣＡＤシステムでありＡＳＨＬＡＲ株式会社から入手可能である。前記ＣＡＤ／ＣＡＭソフトウエアにより、設計プログラマは、顧客の注文において提供された図面或いはデータに基づいて前記板金パーツの２次元モデル及び／又は３次元モデルを作成する。前記設計プログラマは、又、在庫材料から板金要素を切断し或いはパンチ加工するために例えばＣＮＣパンチプレス及び／又は切断機械を制御するためのパートプログラムを作成するために、前記板金パーツ設計データに基づいて制御コードを作成する。前記パンチステーション１６及び曲げステーション１８はそれぞれＣＮＣ及び／又はＮＣによる工作機械の組み合わせを備えている。例えば前記パンチステーション１６は、ＣＯＭＡシリーズ及び／又はＰＥＧＡシリーズアマダタレットパンチプレス或いは他の商業的に入手可能なＣＮＣ及び／又はＮＣパンチプレスのごとき１つ或いはそれ以上のＣＮＣ及び／又はＮＣパンチプレスを含む。更に前記曲げステーション１８は、１つ或いはそれ以上のＣＮＣ及び／又はＮＣプレスブレーキを含み、それらは例えばＲＧシリーズアマダプレスブレーキ或いは他の商業的に入手可能な多重軸ゲージプレスブレーキである。完全に自動化された或いはロボットに支援された機械、例えばアマダＣＥＬＬＲＯＢＯ−ＮＩＮＩ及びアマダＰＲＯＭＥＣＡＭも又これらの場所に設けられる。この発明の側面に基づいてロボットが制御されるために、前記アマダＢＭ１００ロボットワークステーションが使用されるのが好ましい。更に、前記板金要素に対して所望の溶接を行うために、適切な溶接機械を備えた溶接ステーション２０が設けられる。前記パンチステーション１６、曲げステーション１８及び溶接ステーション２０は、前記設備３８の工場フロアの種々の領域に配置され、熟練オペレータ（例えばパンチプレスオペレータ、曲げプレスオペレータ等）により操作される機械を含む。所望のパンチング及び曲げ加工及び他の必要な溶接加工は、前記製造工程においてこれらの場所で実行される。これらの加工は、工場の必要性及び要求され及び／又は提供される自動化のレベルに応じてオペレータにより及び／又はロボットに支援された機械により実行される。
【００５２】
図２（ａ）に更に示されるように、前記進歩的板金設備３８は又、組立ステーション１２及び出荷ステーション１４を含む。前記組立ステーション１２及び出荷ステーション１４は、必要な荷造り、発送及び／又は輸送装置を含み、製造された要素の集積及び顧客への出荷を促進する。前記要素の集積及び出荷は、工場の作業員によりマニュアルで実行され或いは制御され或いは機械により自動化され及び／又は機械により支援される。更に、前記集積ステーション１２及び出荷ステーション１４は、物理的に工場フロアに近い位置に配置され（例えば前記パンチステーション１６、曲げステーション１８及び／又は溶接ステーション２０の近くに）又は前記板金工場とは別の設備或いは領域に存在する。
【００５３】
上記したように、この発明は高知能製造システムをエキスパート板金計画・曲げシステムと一体化する。前記高知能製造システムは、重要な設計及び製造情報を電子的に格納し且つ分配することにより、当該情報の管理及び分配を行う。前記高知能製造システムは、従来の紙による作業セットアップ或いはワークシートを、工場の任意の位置から瞬間的にアクセスされる電子的作業シートに置換し或いは少なくともそれを補助する。前記高知能製造システムは又、以前になされた作業に関連する設計及び製造情報の格納を組織化し且つ検索能力を提供する。従って、加工すべき板金パーツと同一又は類似の以前の作業情報は工場内の任意の場所からアクセスされ且つ読み出される。更に、この発明の側面によれば、エキスパート板金計画・曲げシステムの種々のエキスパートモジュールが、前記サーバモジュール３２において実行され、且つ、前記設備３８における任意のステーション１０，１２，１４，…，２０からアクセスされる。以下に説明するように、前記サーバモジュール３２へ質問要求或いはメッセージ及び情報を送ることにより、前記ステーション１０，１２，１４，…，２０は、前記種々のエキスパートモジュールにアクセスし、例えば特定のパーツを製造するための曲げ順及び工具情報を含む曲げ計画情報を受取る。
【００５４】
これらの目的のために、通信ネットワーク２６が提供され、それは前記サーバモジュール３２及びデータベース３０を、前記板金設備３８における複数の場所１０，１２，１４，…，２０の各々に接続する。前記場所１０，１２，１４，…，２０の各々は、前記通信ネットワーク２６及びデータベース３０とインタフェースをするためのステーションモジュールを含む。前記通信ネットワーク２６は、前記場所１０，１２，１４，…，２０及び前記サーバモジュール３２及びデータベース３０に対して及びそこからデータ及び情報を伝送することができる任意のネットワーク又はネットワークの組み合わせを有する。それらのデータ伝送は、電子的に或いは光学的に或いはＲＦ伝送により或いは赤外伝送により行われる。非限定的例として、前記通信ネットワーク２６は、ローカルエリアネットワーク（ＬＡＮ）、ＥＴＨＥＲＮＥＴ或いは同等のネットワーク構造により実行されることができる。更に、前記通信ネットワーク２６は、イントラネット或いはインターネットの使用により実行される。情報及び質問メッセージは、種々の伝送プロトコールの任意の１つにより前記通信ネットワーク２６を介して送られる。前記プロトコールは、伝送制御プロトコール／インターネットプロトコール（ＴＣＰ／ＩＰ）を含む。前記場所１０，１２，１４，…，２０の各々は又、ネットワーク端末装置（例えばコンピュータ、ミニコンピュータ或いはワークステーション）を含むステーションモジュール及び／又は周辺装置（例えば表示モニタ或いはスクリーン、プリンタ、ＣＤ−ＲＯＭ及び／又はモデム）を含み、前記通信ネットワーク２６を介して情報を伝送し且つ受信する。前記ネットワーク端末装置及び周辺装置は、前記通信ネットワーク２６とインタフェースし且つこの発明の種々の側面及び機能を提供するためのハードウエア及び適宜のソフトウエア及びプログラムされた論理を含む。コンピュータが前記工場の場所に提供される場合、前記コンピュータは独立型パーソナルコンピュータ或いはその場所に提供された機械或いは装置のインタフェース装置の一部であるところの汎用コンピュータであることができる。例えば、前記コンピュータはＩＢＭコンパチブルパーソナルあコンピュータであり或いはアマダＡＭＮＣシステムのごとき機械のインタフェース／制御システムの一部であるコンピュータであることができる。
【００５５】
前記サーバモジュール３２及びデータベース３０はまた前記通信ネットワーク２６に接続される。前記サーバモジュール３２は、前記通信ネットワーク２６とインタフェースするための適宜のハードウエア及びソフトウエアを有する、パーソナルコンピュータ、又はミニコンピュータ或いはメインフレームコンピュータのごときネットワーク端末装置を含む。前記サーバモジュール３２はまた、以下により詳細に記述するところの本発明の種々の特徴を実行するためのソフトウエア或いはファームウエアを含む。更に、この発明の１つの側面によれば、前記サーバモジュール３２はまた、各顧客の注文に関連する設計及び製造情報及び他のパーツ曲げ計画情報を格納するためのデータベース３０を含む。前記データベース３０は、工場の顧客の設計及び製造情報を格納し且つ他のデータ、テーブル及びプログラムを格納するための十分なメモリ容量を有する商業的に入手可能なデータベースにより実行される。例えばデータベース３０は４ＧＢ或いはそれ以上の利用可能なメモリ空間を有するＳＣＳＩメモリディスクを有する。前記データベース３０に格納される設計及び製造情報は、前記通信ネットワーク２６を介して、前記板金設備３８における種々の場所１０，１２，１４，…，２０からアクセスされ且つそこに分配される。種々のデータフォーマット例えば構造化された質問言語（ＳＱＬ）が、前記データベースへデータを格納し且つアクセスするために使用される。更に、前記データベース３０に格納される情報は、種々の格納媒体、例えば磁気テープ、光学ディスク或いはフロッピーディスクへ格納されバックアップされる。前記サーバモジュール３２及びデータベースは前記通信ネットワーク２６へ、図２（ａ）に示されるように前記工場３８の異なる領域或いは場所において接続され或いは所定のステーションの１つに近接して或いはその内部に（例えば設計事務所１０の内部に）存在する場所において接続される。図２（ａ）の実施例はデータベース３０がサーバモジュール３２の一部となり、前記通信ネットワーク２６とサーバモジュールを介してインタフェースするようにされているが、前記データベース３０はもちろん前記サーバモジュール３２と物理的に異なる位置に存在することができ、図２（ｂ）に示されるように、前記通信ネットワーク２６とネットワークデータベースモジュールを介して接続されることもできる。
【００５６】
非限定的な例として、この発明の好適な実施例によれば、前記サーバモジュール３２及び前記場所１０，１２，１４，…，２０の各々は、パーソナルコンピュータ、例えばペンティアム或いは同等のプロセッサを含む１００乃至２００メガヘルツの中央プロセッサユニット（ＣＰＵ）と少なくとも３２ＭＢのメモリと高解像度の表示スクリーン、例えば任意の商業的に入手可能な、８００×６００の解像度を有するＳＶＧＡモニタとを有するＩＢＭコンパチブルコンピュータを有する。前記サーバモジュール３２及び前記場所１０，１２，１４，…，２０はまた、表示される情報とインタフェースし且つ制御するための、ジョイスティックまたはマウス装置及びサウンドブラスタ（Ｓｏｕｎｄ−Ｂｌｕｓｔｅｒ）又は調和的音響及びゲームポートアダプタカードを有する。オペレーティングシステムソフトウエアもまた通信をサポートするために設けてある。例えば前記サーバモジュール３２は、マイクロソフトウインドウズニューテクノロジー（ＮＴ）又はウインドウズ９５オペレーティングシステムソフトウエア（それはいずれもワシントン州、Ｒｅｄｍａｎのマイクロソフト株式会社から入手可能である。）を備え、前記場所１０，１２，１４，…，２０の各々はマイクロソフトウインドウズ９５オペレーティングソフトウエアを有する。更に前記サーバモジュール３２及び場所１０，１２，１４，…，２０は、多数の言語（例えば英語及び日本語等）をサポートし、且つオブジェクトリンク／エンベッドサーバ（ＯＬＥ）、例えばＯＬＥ２サーバのためのフルサポートが設けられている。
【００５７】
種々のデータベース言語及び管理システムがまた、前記データベース３０に格納されている情報を生成し且つ維持し観察するために使用される。前記データベース言語、例えばストラクチャ・クエリ言語（ＳＱＬ）が、前記データベース３０においてデータを定義し且つ操作し且つ制御するために使用される。例えばＳＱＬサーバ（それはマイクロソフト株式会社から商業的に入手可能である製品である）が本願発明を実行するために使用される。更に本願発明は、オープンデータベース・コネクティビティ・コンパチブル・ドライバ（ＯＤＢＣ）を備え、前記通信ネットワーク２６を介してデータベース３０からの情報のアクセスを促進する。前記ＯＤＢＣに関する更なる情報は例えばマイクロソフトのオープンデータベース・コテクティビティソフトウエア開発キットプログラマ参照マニュアルに記載される。
【００５８】
図２（ｂ）は、この発明の他の実施例に基づいて構築された進歩的板金製造設備を示す。図２（ｂ）の実施例において、前記データベース３０及びサーバモジュール３２は別個に設けられている。そして前記データベース３０はネットワークデータベースモジュール３４を介して前記通信ネットワーク２６に接続される。上記したように、この発明はこの配置に限定されるものではなく、前記データベース及びサーバモジュール３２は一緒に設けられる（例えば図２（ａ）に示すように）。そして前記データベースへのアクセスを提供する前記ネットワークデータベースモジュール３４の機能は前記サーバモジュールに合体される。
【００５９】
この発明の１つの側面によれば、前記高知能製造システムとエキスパート計画システムの一体化は、部分的には、これらのシステムの主たる機能及びプロセスを前記サーバモジュール３２における２つの別個のアプリケーション（６０及び７０）を介して実行することにより達成される。インタフェースモジュール或いはアプリケーション（図示せず）がまた前記サーバモジュール３２に設けられ、前記２つのアプリケーションの間及び前記ステーションモジュールとサーバモジュールとの間におけるメッセージ或いは情報の伝達を促進する。前記インタフェースアプリケーションは、前記高知能製造システムアプリケーション６０の内部において及び／又は前記エキスパート計画システムアプリケーション７０の内部において、別個のモジュール又はアプリケーションであってもよいし又一体化されたもの（例えば１つ又はそれ以上のサブモジュール）であってもよい。これらのアプリケーションの各々はソフトウエアを介して実行され且つ、前記サーバモジュール３２におけるコンピュータ上のプラットホームにおいて実行されることもできる。更に以下に説明するように、前記サーバモジュール３２は、ウインドウズＮＴのごときオペレーティングシステムソフトウエアを備え、それは同時に実行されるアプリケーションの多重操作を可能とする。更に、種々のアプリケーションが、高レベルのプログラム言語（例えばＣ＋＋）及びオブジェクト指向プログラム技術を用いて開発される。更に、前記場所１０，１２，１４，…，２０のステーションモジュールの各々には実行可能な顧客アプリケーションが提供され、前記高知能製造システム及びエキスパート計画システムに関連する種々の操作を実行する。例えば前記ステーション１０，１２，１４，…，２０は前記データベース３０からのパーツ情報にアクセスし且つ新しい作業要求についての曲げ計画を作成する際に、前記高知能製造システムに関連する他の機能を実行する。前記ステーション１０，１２，１４，…，２０の各々はまた、前記サーバモジュール３２において実行される複数のエキスパートモジュールに選択的にアクセスし、エキスパート計画・曲げ計画情報を受取る。図２（ｃ）を参照するに、種々のハードウエア及びソフトウエア要素を使用することによるこの発明の典型的な実施の態様を以下に説明する。図２（ｃ）において、典型的なステーションモジュール３６は、前記曲げステーション１８に存在するものとして図示されている。図２（ｃ）の例には図示されていないが、同様のステーションモジュール３６（それは同様の或いは異なった機械を有する）が前記設備３８の他の場所に設けられている。
【００６０】
図２（ｃ）に示すように、前記モジュールの各々（即ちサーバモジュール３２、ネットワークデータベースモジュール３４、及びステーションモジュール３６）は、ネットワーク・インタフェースカード或いはポート４２を介して通信ネットワーク２６へ接続されている。前記ネットワーク・インタフェースカード４２は、ベンダに特殊のものであり且つ選択された通信ネットワークのタイプに基づいて選択される。前記モジュール３２，３４，３６の各々はまた前記通信ネットワーク２６とインタフェースするためのネットワークソフトウエア或いはプログラム化されたロジックを有する。前記通信ネットワーク２６は、任意の数の商業的に入手可能なタイプのケーブルを有するイーサネットであり得る。前記ケーブルのタイプは例えば１０ベース／Ｔ（捩じり対線）又は１０ベース／２（同軸線）又は１０ベース／５（太線）である。前記ケーブルのタイプは、設備３８のスケール及び要求されるケーブルの量或いは長さに基づいて選択される。更に、上記したように、通信ネットワーク２６は、１つ或いはそれ以上のネットワークにより実行され、且つイントラネット及び／又はインターネットの使用により実行される。情報或いは質問メッセージは、種々の通信プロトコールのいずれか１つに応じて前記通信ネットワーク２６を介して送信される。前記プロトコールは通信コントローラプロトコール／インターネットプロトコール（ＴＣＰ／ＩＰ）を含む。
【００６１】
図２（ｃ）において、前記サーバモジュール３２は、表示モニタ或いはＣＲＴ４４及び、キーボード又はマウス及び／又はジョイスティックを含む入出力装置４６を備えたパーソナルコンピュータ４０を有する。前記ネットワーク・インタフェーススカード４２は、前記パーソナルコンピュータ４０の利用可能な拡張スロット或いはポートに挿入される。
【００６２】
更に、前記パーソナルコンピュータ４０は、１００乃至２００メガヘルツのスピードを有し且つペンティアム又はペンティアムプロマイクロプロセッサを有するＩＢＭコンパチブルコンピュータを有する。前記パーソナルコンピュータ４０はまた例えば３２メガビット又はそれ以上の利用可能な主メモリ及び１．２ギガビット又はそれ以上の利用可能なランダムアクセスメモリ（ＲＡＭ）を含む。前記表示装置４４は、例えば８００×６００の解像度を有する商業的に入手可能なＳＶＧＡモニタのごとき高解像度の表示スクリーンを有する。前記表示装置４４に表示される種々の図形及び情報をサポートするために、前記パーソナルコンピュータ４０は、商業的に入手可能な、例えばＰＣＩグラフィックカードのごとき図形カードを含む。更に前記コンピュータ４０はサウンドブラスタ（Ｓｏｕｎｄ−Ｂｌｕｓｔｅｒ）或いはコンパチブルな音響及びゲームポートアダプタカードを有し、且つ前記入出力装置４６はキーボード又はジョイスティック及び／又はマウス装置を有する。
【００６３】
この発明の種々の機能を実行するために、前記サーバモジュール３２は、ソフトウエア及び種々のソフトウエアパッケージを備えている。例えばサーバモジュール３２は、マイクロソフトウインドウズＮＴ（バージョン４．０）のごときオペレーティングシステムソフトウエアを備えている。更に前記サーバモジュールに対してこの発明の特殊の機能及び特性を与えるために、前記サーバモジュール３２はソフトウエア又はプログラムロジック実行ルーチンを有している。以下により詳細に説明するように、これらのルーチンはＣ＋＋のごとき高級プログラム言語及びオブジェクト指向プログラム技術を用いて開発される。前記サーバモジュール３２は、またＣＡＤ又はＣＡＤ／ＣＡＭソフトウエア（例えばＶＥＬＬＵＭ又はアマダＡＰ４０又はＡＰ６０ソフトウエア）を含み又はそれとインタフェースし、顧客の明細に基づいてオリジナルの２次元及び３次元図面を入力し及び／又は作成する。この理由により、前記サーバモジュールは前記製造設備３８の設計事務所１０の中に存在し得る。前記データベース３０からのデータにアクセスするために、前記サーバモジュール３２はまたＯＢＤＣドライバ（例えばマイクロソフトＯＤＢＣドライバ）を含み、前記データへアクセスするための標準としてＳＱＬを用いる。ＯＬＥサーバ（例えばＯＬＥ２サーバ）が前記データをリンクするために提供される。
【００６４】
図２（ｃ）の実施例において、前記データベース３０は前記サーバモジュール３２から離れて設けられており、ネットワークデータベースモジュール３４を介して通信ネットワーク２６へ接続される。上記したように、データベース３０は適宜のメモリ空間（例えば１乃至４ギガビット）を有するＳＣＳＩディスクを備える。前記メモリ空間は前記データベースに格納されるべきパーツの量及び曲げ計画情報の量並びに設備３８のスケールに基づいて選択され得る。前記ネットワークデータベースモジュール３４は、パーソナルコンピュータ４０（例えばペンティアムマイクロプロセッサ及び通信ネットワーク２６とインタフェースするためのネットワーク・インタフェースカード４２に適合する拡張スロットを備えたＩＢＭコンパチブルコンピュータ）を有する。前記データベース３０は、データバスを介して前記パーソナルコンピュータ４０に接続され、前記パーソナルコンピュータ４０は標準的表示装置及び入出力装置（例えば表示モニタ或いはＣＲＴ及びキーボード、図２（ｃ）において図示せず）を有する。
【００６５】
ＳＱＬに基づいてデータベース３０へアクセスすることを促進するために、前記ネットワークデータベースモジュール３４のパーソナルコンピュータ４０は、商業的に入手可能なＳＱＬサーバ（例えばマイクロソフトＳＱＬサーバ又はオラクルＳＱＬサーバ）を備えている。ＯＬＥサーバ（例えばＯＬＥ２サーバ）もまたデータをリンクするために設けられる。前記パーソナルコンピュータ４０はまた種々のオペレーティングソフトウエア（例えばＤＯＳ及びマイクロソフトウインドウズＮＴ（バージョン４．０））を備える。
【００６６】
図２（ｃ）の実施例はまたステーションモジュール３６の典型的実施例を含む。この実施例では前記ステーションモジュール３０は曲げステーション１８において実行される。各ステーションモジュールは、表示モニタ又はＣＲＴ４４及び入出力装置４６を備えたコンピュータ４８を有する。前記入出力装置はジョイスティック又はマウス装置を有する。ネットワーク・インタフェースカード４２が前記コンピュータ４０の拡張スロット又はポートに挿入される。上記したように、ステーションモジュール３６のコンピュータは独立型パーソナルコンピュータ又はその場所に提供される装置或いは機械のインタフェース装置の一部を構成する汎用コンピュータである。例えばコンピュータ４８は、１００乃至２００メガヘルツのスピードを有するペンティアム又はペンティアムプロマイクロプロセッサを備えたＩＢＭコンパチブルコンピュータのごとき独立型パーソナルコンピュータであってもよいしまた前記機械のインタフェース／制御システムに組み入れられた又はその一部であるコンピュータ（例えばアマダＡＭＮＣシステム）であってもよい。前記コンピュータ４８はまた例えば３２メガビット又はそれ以上の利用可能なメッシュメモリ及び１．２ギガビット又はそれ以上の利用可能なランダムアクセスメモリ（ＲＡＭ）を含む。表示装置４４は高解像度の表示スクリーン（例えば８００×６００の解像度を有する商業的に入手可能なＳＶＧＡモニタ）を含む。前記表示装置４４に表示される種々の図及び情報をサポートするために、前記コンピュータ４８はまたＰＣＩグラフィックカードのごとき商業的に入手可能なグラフィックカードを含む。更に前記コンピュータ４８はサウンドブラスタ（Ｓｏｕｎｄ−Ｂｌｕｓｔｅｒ）又はコンパチブルサウンド／ゲームポートアダプタ及び前記入出力装置４６としてのジョイスティック又はマウス装置を有する。
【００６７】
この発明の種々の機能を実行するために、前記ステーションモジュール３６はソフトウエア及び種々のソフトウエアパッケージを備える。例えば、前記ステーションモジュール３６はオペレーティングシステムソフトウエア（例えばマイクロソフトウインドウズＮＴ又はウインドウズ９５）を備える。更に前記ステーションモジュールに対して本願発明の特殊の機能及び特性を与えるために、前記ステーションモジュール３６はソフトウエア又はプログラムロジック実行ルーチンを有する。以下により詳細に説明するように、これらのルーチンは高級プログラム言語（例えばＣ＋＋）及びオブジェクト指向プログラム技術を用いて展開される。データにアクセスし且つそれをリンクするために、前記ステーションモジュール３６はＯＢＤＣドライバ（例えばマイクロソフトＯＢＤＣドライバ）及びＯＬＥサーバ（例えばＯＬＥ２サーバ）を含む。前記サーバモジュール３２と同様に、前記ステーションモジュールは前記データベース３０からデータをアクセスするための標準としてＳＱＬを用いる。
【００６８】
前記曲げステーション１８のステーションモジュール３６が独立型パーソナルコンピュータとして提供される場合、所定のソフトウエアが提供され、それは曲げコードデータ（即ちＮＣデータ）を作成し且つ前記機械２５（例えばＣＮＣ又はＮＣ制御プレスブレーキ）とインタフェースする。例えば前記コンピュータ４８はパーソナルコンピュータとして実行され、インタフェース（例えば標準的ＲＳ−２３２−Ｃワイヤインタフェース）を介して曲げ機械２５とインタフェースするためのソフトウエアを有する。このインタフェースは、前記ステーションモジュール３６が曲げ機械２５と曲げコードデータを更新し且つ送信し又は受信することを可能とするために設けられる。このインタフェースの実施例はベンダに特殊のものであり、前記曲げ機械２５に使用されるデータフォーマット及び機械命令群に応じて異なる。前記ステーションモジュール３６から曲げ機械２５へ送られる全てのデータは、従って機械について定義される機械命令群に基づいてフォーマットされる。前記ステーションモジュール３６のコンピュータ４８はまた、前記曲げコードデータを作成するための商業的に利用可能なＣＮＣ又はＮＣソフトウエアを備え、そのような機械のためのＣＮＣ又はＮＣシステム（例えばアマダＡＭＮＣ）の作り付けコンピュータにより通常提供されるところの機能を実行する。更に前記曲げ機械２５が自動装置（例えばロボットマニピュレータ、材料搬入搬出装置と）を含む場合、前記コンピュータ４８は、前記機械２５の全ての曲げ計画を実行し且つ種々の操作を制御するためのシーケンス機能及び制御機能（ハードウエア又はソフトウエア及び／又はプログラムロジックにより実行される）を含む。曲げ機械２５はまた、コンピュータ４８のシーケンス及び制御モジュールとインタフェースし且つ前記曲げ機械２５の種々の装置及びセンサとインタフェースするためのインタフェースアーキテクチャ（図示せず）を含む。前記曲げ機械のシーケンス及び制御はハードウエア及びソフトウエアの任意の適宜の組み合わせにより実行され、米国特許出願第０８／３８６，３６９に記載される技術及びプロセス及び装置はこの目的のために使用される。
【００６９】
上記したように、高知能製造システムは、設備３８を通して設計及び製造情報を管理し分配するようにされており、前記設備の内部で部品の設計及び製造を促進するための種々の機能及びプロセスを提供する。そのような機能は、中央データベースから以前の作業情報を検索する機能及び種々の図形ユーザインタフェースを用いて曲げ計画（曲げシーケンスを選択し且つ工具を決定することを含む）を作成する能力を有する。それらは以下に図３乃至５を参照して説明される。前記エキスパートシステムは曲げ板金要素を製造するための曲げ計画を作成し且つ実行するための１つ或いはそれ以上のエキスパートモジュールを含む。これらのエキスパートモジュールは、前記曲げ計画のための最適の曲げ順及び工具（工具選択及び工具ステージの配置を含む）を決定するためのエキスパートシステム又はサブシステムを含む。更にロボットを有するワークステーションについては、ロボット操作及び運動エキスパートが提供され、ロボット運動の経路を決定し且つ前記曲げ計画を実行するためのワークの把持の工程を決定する。リポジションエキスパートが更に提供され、リポジショングリッパ及び前記ロボットのリポジション操作の制御に関連するシーケンス及び操作を決定する。前記通信ネットワーク２６を介して、前記サーバモジュール３２に供給される前記種々のエキスパートモジュールは、前記設備３８に存在する前記ステーションモジュールから選択的にアクセスされる。前記エキスパート計画システムについての更なる説明及びこれと前記高知能製造システムとの関係並びにこの発明の他の特徴についての更なる説明は図６乃至２４を参照して以下に説明される。
【００７０】
図３乃至５を参照して、この発明において実行される高知能製造システムの種々の特徴が説明される。上記したように、米国特許出願第０８／６９０，０８４の種々の特徴及び側面はこの発明の装置及び方法において利用される。他の特徴及び側面も、以下の説明から容易に理解されるように、この高知能製造システムに提供され且つ合体される。
【００７１】
図３は、この発明の高知能製造システムに関連するサーバモジュール３２及びデータベース３０及び種々のネットワークロケーション（場所）の間のデータフローの典型的実施例を図示する。説明のために、前記サーバモジュール３２及びデータベース３０は（ネットワークデータベースモジュール３４と一体化され）図３において、別個にそして直接的に前記通信ネットワーク２６に接続されるように示されている。そしてこれらの要素の間のデータフローは前記通信ネットワークを介して行われる。もちろん、当業者において理解されるように、これらの要素の間には種々のデータフローの構成が提供される。前記データベース３０が前記サーバモジュール３２と直接接続される場合には、前記データ及び情報は前記サーバモジュール３２から前記データベースへ、通信ネットワーク２６を介することなく直接伝達される。更に説明を簡略化するために、図３における通信ネットワーク２６の記載は簡略化され、パンチングステーション１６及びベンディングステーション１８のみが図示されている。にも拘らず、前記ロケーション（場所）１０，１２，１４，…，２０の間（また前記工場に存在する任意の他のロケーション又は領域の間の）データフローは前記パンチングステーション１６と曲げステーション１８について記載されるそれと同様の方法で実行される。
【００７２】
各顧客の注文に関連する設計及び製造情報は前記データベース３０において組織化され且つ格納される。顧客の注文が最初に受信される時、基本の製造及び設計情報は前記サーバモジュール３２に入力されしかる後データベース３０へ転送され格納される。上記したように、前記サーバモジュール３２はデータを入力するための適宜の手段（例えばキーボード等を有するパーソナルコンピュータ）を有する。パーソナルコンピュータがサーバモジュール３２において使用される場合、オペレータによるデータの入力を促進するために、メニュースクリーンを生成するためのソフトウエアが提供される。前記データ入力プログラムは、例えばヘルプスクリーン及び／又はメニュースクリーン等を有するマイクロソフトのウインドウズに基づくアプリケーションであってもよい。非限定的な例として、前記サーバモジュール３２において入力され或いは作成され前記データベース３０へ転送されるデータはパーツ情報及び曲げモデルデータ、特徴抽出データ、及び曲げ線情報を含む。それらは図３において一般的に示されている。
【００７３】
前記パーツ情報は、例えば部品参照番号又は注文番号及び、顧客名、部品の簡単な説明、バッチサイズ又は数量及び予定出荷日を含む。前記曲げモデルデータは例えば、部品形状及び製造データ、及び部品の全体的寸法（例えば幅及び高さ及び深さ）、及び材料タイプのごとき部品材料情報（例えばスチール、ステンレススチール又はアルミニウム）及び厚さ及び引張り強さを含む。更に特徴抽出データは、マニュアルで入力され及び／又は自動的に生成され、前記部品の重要な特徴を特定し且つ前記データベースの類似部品検索及び他の検索を促進する。この特徴抽出データは、前記データベース３２別個のデータファイルとして格納され或いは各部品についての曲げモデルデータ及び他の作業情報と一緒に格納される。前記特徴抽出データは、例えば以下のものからなる。すなわち表面の数のごときパーツの特徴と、存在する曲げ線の数又はタイプ（例えば２つの面の間の正の曲げ或いは２つの面の間の負の曲げ）と、前記複数の面の間の関係及び／又は前記部品における穴の数又は他のタイプの開口部の数である。そのようなデータは特徴に基づく部品マトリックス及び／又は一連の検索キーで表現され且つ組織化される。最後に曲げ線情報が前記サーバモジュール３２において入力され前記データベース３０に格納される。前記曲げ線情報は例えば以下を含む。すなわち部品における各曲げについての関連する曲げ線情報及び曲げ角度及び曲げ線長さ及び前記曲げの内側半径（ＩＲ）及び収縮の量及び曲げ方向（前方又は後方）である。
【００７４】
前記データベース３０に対して前記通信ネットワーク２６を介してデータをやり取りするために、前記ロケーション１０，１２，１４，…，２０の各々は、通信ネットワークと接続されるステーションモジュール（例えば上記ステーションモジュール３６）を含む。図３においてパンチステーション１６及び曲げステーション１８が前記ステーションモジュールとしてブロックダイアグラムの形で図示されている。上記したように、前記ステーションモジュールは例えばソフトウエア又は制御論理及び独立型パーソナルコンピュータ又はその場所に存在する装置又は機械の一部をなす汎用コンピュータを有する。各顧客の注文のために、（パーツ情報及び曲げ線情報及び曲げモデルデータ）を含む前記設計及び製造情報は、例えば所定の参照番号或いはコードを入力することによりアクセスされ且つ検索される。前記参照番号或いはコードはマニュアルで（例えばキーボード或いはデジタル入力パッドにより）入力されまた前記ステーションモジュールに備えてあるバーコードリーダ或いはスキャナでバーコードをスキャンすることにより入力される。更にこの発明の１つの側面によれば、以前の作業情報は類似部品検索を実行することにより、前記設備３８の任意のロケーション１０，１２，１４，…，２０により前記データベース３０からアクセスされ且つ読み出される。以下に更に詳細に説明するように、前記類似部品検索は、前記データベース３０に格納されている特徴抽出データ又は検索キーに基づいて実行され、同一又は類似の部品に関連する以前の作業情報が、将来の作業の全体的作業時間を短縮するために読み出され且つ使用される。
【００７５】
前記データベースから読み出される前記設計及び製造情報は、前記曲げ計画を作成し且つ試験するために前記工場フロアのオペレータにより使用される。例えば、前記曲げステーション１８におけるオペレータは前記パーツ情報及び曲げ線情報及び曲げモデルデータを前記データベース３０からアクセスし且つ読み出し、前記板金パーツの最適の曲げ順及び必要な工具を決定する。この発明の１つの側面によれば、ＯＢＤＣドライバが提供され、各ステーションモジュールが前記データベース３０及びそのデータベース３０に格納されている情報とインタフェースすることを可能とする。更に、前記サーバモジュール３２或いは前記データベース３０のネットワークデータベースモジュールは、ＳＱＬサーバを備え、前記データベースに格納されているデータのアクセス及び読み出しを促進する。最終的曲げ計画に基づいて曲げコードがプログラムされると、当該曲げコードは、前記曲げ順及び工具取付情報と共に前記曲げステーション１８のステーションモジュールから通信ネットワーク３０を介してデータベース３０へ送られる。これは図３に一般的に示されている。
【００７６】
この情報は前記作業に付随した他の設計及び製造情報と共に格納される。
【００７７】
他の情報もまた前記データベース３０に格納される。例えば、前記パーツの２次元及び３次元画像表面が前記パーツの曲げモデルデータと共に格納される。前記２次元及び３次元表現は前記設計ステーション１０又はＣＡＤ／ＣＡＭシステムを有する他のロケーションで作成され、前記設計ステーション（或いは他の適宜のロケーション）のステーションモジュール及び通信ネットワーク２６を介してデータベース３０へ転送される。或いは、前記２次元又は３次元の画像は適宜のＣＡＤ／ＣＡＭシステム或いはモデル化ソフトウエアとインタフェースすることにより或いはそれらを利用することによりそして一連の機能或いは操作を実行することにより、以下により詳細に記載するように前記サーバモジュール３２において作成される。
【００７８】
図４及び図５を参照するに、前記サーバモジュール３２及び各ロケーション１０，１２，１４，…，２０のステーションモジュールにより実行され且つプログラムされるところの操作及び工程の詳細の説明が行われる。図４及び図５は前記板金製造設備３８における前記サーバモジュール３２及び各ロケーション１０，１２，１４，…，２０のステーションモジュールにより実行される基本的論理フローのフローチャートである。図５は例えば曲げステーション１８において典型的に実行される工程及び操作を示す。しかし他の工程及びステップが、前記設備３８における各特定のロケーションにおいて実行される加工種類に応じて実行されることが理解されるであろう。以下に説明される工程及び操作はソフトウエアによりそして種々のプログラム言語及び技術の１つを用いて実行される。例えばこの発明の１つの側面によれば、図面を参照して以下に説明される工程及び操作はＣ＋＋のごとき高級プログラム言語を用いて且つオブジェクト指向プログラム技術を用いて実行される。更に非限定的な例として、ＶＩＳＵＡＬ−Ｃ＋＋が使用される。これはウインドウズに基づくアプリケーションのためにマイクロソフト株式会社により作成されたＣ＋＋プログラム言語の１つのバージョンである。
【００７９】
図４は前記高知能製造システムアプリケーションが実行される際、前記サーバモジュール３２により実行される基本的工程及び操作のフローチャートである。図４は前記サーバモジュール３２のソフトウエア又はプログラム論理により実行される工程及び操作の基本論理フローを示す。サーバモジュール３２はウインドウズに基づくアプリケーションを含み、それはツールバーアイコン及びヘルプスクリーン及び／又はメニュースクリーンを備え、オペレータ又はユーザが前記サーバモジュールの種々の工程或いは操作を選択し且つ実行するのを支援する。プロセスはステップＳ１で始まり、そこで顧客の注文が板金製造設備３８において受領される。前記顧客の注文は通常、前記設備３８で一定の部品が製造されるように必要な製品及び設計情報を含む。この情報は例えば、前記部品（パーツ）の幾何学的寸法及び前記パーツの材質及び他の設計情報を含む。前記顧客から受領した情報に基づいて、前記サーバモジュール３２はステップＳ３に示すように、前記データベース３０に格納された以前の作業情報を検索する。前記データベース３０に格納された作業情報は種々の検索条件に基づいて検索される。例えば、前記情報は、所定の参照番号又は作業番号に基づいて検索され或いは類似部品検索が、前記部品の所定の設計上の特徴に基づいて実行される。従って同一の部品或いは類似の部品に関連する以前の作業情報が取り出され現在の作業に使用される。使用される類似部品検索のより詳細な説明は米国特許出願第０８／６９０，０８４及び米国仮出願第６０／０１６，９５８に記載される。
【００８０】
ステップＳ５で前記データベースの検索の結果が分析され現在の顧客の注文が新しい部品に関するものか或いは以前の作業に類似する部品に関するものか或いは以前の作業の繰返しかが決定される。もし同一の部品が存在する場合（例えば同一の部品番号或いは参照番号が検索されるとき）そして現在の顧客の注文が前記設備において以前になされた作業の完全な繰返しである場合は、前記作業情報に対する修正は不必要であり、前記以前の作業情報が前記データベースから読み出され、ステップＳ１１に示すように現在の顧客の注文を実行するために使用される。前記データベースの検索は、前記作業情報が前記サーバモジュール３２或いは前記ステーションモジュールのいずれかにおけるオペレータによりデータベースから読み出されるように、前記以前の作業の部品番号又は参照番号及び／又はファイル名を提供する。前記パーツ番号或いは参照番号のみが提供される場合、前記以前の作業情報のファイル名がオペレータによる部品参照番号或いは作業番号の入力に基づいて決定され且つ読み出されるようにするために変換テーブルが提供される。従って例えばサーバモジュール３２におけるオペレータは前記データベース３０から前記作業情報及び２次元及び３次元モデル情報を読み出し前記部品の幾何学データを分析し、それが繰返し注文であることを確認することができる。もし注文が繰返しの注文であることが確認される場合、前記曲げステーション１８のステーションモジュールにおける曲げオペレータは以前の作業情報を読み出し且つ前記作業情報（それは曲げコードデータ及び工具組付情報を含む）を利用し、曲げ加工を実行し前記部品を製造する。そのような格納された熟練者に知識を使用することにより繰返しの注文はより効率的に且つ以前に入力され作成された作業情報を再び作成することなく製造される。
【００８１】
しかし、前記ステップＳ５において、現在の顧客の注文は以前の作業に類似であると決定される場合或いは現在の注文は以前の作業と同一ではあるが例えば作業番号或いは参照番号或いは数量を変更しなければならない場合、ステップＳ７で前記検索により特定された以前の作業データは前記データベース３０から読み出され、前記サーバモジュール３２においてオペレータにより編集され且つ修正される。編集機能が提供され、以前の作業データを編集し且つ修正し新しい作業データを作成することを可能とする。前記新しい作業データは顧客の現在の注文のために前記データベース３０に格納される。必要な編集の量は、以前の作業と現在の作業との間に存在する類似性の程度に依存する。編集の量は、参照番号或いは作業番号或いは数量（バッチサイズ）を変更することを含み、或いは前記部品の寸法を編集し或いは曲げシーケンスを編集するようなより大規模な修正をも含む。以前の作業情報が編集された後、修正された作業情報はステップＳ９で前記データベースに格納される。修正された作業情報は、新しい参照番号或いは作業番号のもとに格納される。更に種々のデータベース管理機能（例えばコピー、削除、保存、名前の付け直し等）が提供され、以前の作業情報をデータベース３０に保持することを可能とし或いは前記以前の作業情報が削除され或いは特殊のコマンドの入力により上書きされるのを可能とする。
【００８２】
現在の作業と合致する類似のもの或いは同一のものが存在しないと決定される場合、従って現在の顧客の注文は新しい作業に関連すると決定される場合、論理フローは、図４に示されるようにステップＳ１５へ進む。この場合、現在の作業は新しい作業に関連するため設計及び製造情報を独立に作成し且つ入力する必要がある。前記サーバモジュール３２によりメニュー及び／又はヘルプのスクリーンが提供されオペレータが全ての必要な作業情報を入力するのを支援する。この高知能製造システムの１つの側面によれば、前記サーバモジュール３２におけるオペレータは前記新しい作業についての基本的部品情報をまず入力することにより新しいファイルを作成する。前記部品情報は、例えば、参照番号又は作業番号、顧客の名前、前記部品の簡単な説明、前記作業について要求されるバッチサイズ或いは数量、及び予定の出荷日を含む。特徴抽出データ或いは検索キーがまたステップＳ１５で入力され、或いはこれらのデータは自動的に作成され或いは前記曲げモデルデータの作成と共に抽出される。他のデータ或いは情報もまた、ステップＳ１５で入力され或いは前記曲げモデルデータの入力の後或いはその際に入力される。前記曲げモデルデータは、曲げ角度及び曲げ半径及び前記部品における各曲げ線の長さを含む曲げ線情報等である。ステップＳ１５の後、論理フローは、曲げモデルデータが、前記サーバモジュール３２においてオペレータにより作成され且つ入力されるように進行する（図４参照）。
【００８３】
前記曲げモデルデータの作成及び入力は前記顧客から提供されるオリジナル図面及び情報に依存する。前記顧客の注文は、例えば製造される部品の２次元単一平面図及び／又は前記部品の２次元３面図（例えば平面図及び正面図及び側面図を含む）を含む。しばしば顧客は部品の３次元ワイヤフレーム図面を提供する。この図面において前記部品の材質の厚さが示されることもあり又示されないこともある。格納される曲げモデルデータは、製造される部品についての展開情報（すなわち２次元平面図表現）及び折曲げ情報（すなわち３次元表現）のいずれをも含む。従って２次元平面図のみが顧客から提供される場合、前記部品の３次元図面を、前記２次元図面に対して例えば折曲げアルゴリズム或いはプロセスを適用することにより生成する必要がある。或いは前記部品の３次元図面のみが提供される場合、前記３次元図面に対して例えば展開アルゴリズムまたはプロセスを適用することにより２次元平面図を生成する必要がある。この高知能製造システムの他の特徴によれば、前記曲げモデルにおいて保存される前記２次元及び３次元モデルは、板金厚さを有しない状態で生成され且つ表現される。これは、全ての板金部品の独自の対称性のために可能となる。前記２次元及び３次元図面を厚さを有しない状態で作成し且つ表現することにより、前記部品のモデル画像及びシミュレーション画像を設計プログラマ或いは曲げプログラマ或いは他のユーザが容易に解釈し且つ理解することができる。厚さの情報を削除することにより、前記高知能製造システムの種々の機能を実行する際に、前記サーバモジュール及びステーションモジュールにより要求される作業時間を短縮し且つ改良することができる。このような機能のより詳細な説明及びこの発明において使用される曲げアルゴリズム及び展開アルゴリズムは米国特許出願第０８／６９０，０８４及び米国仮出願第６０／０１６，９５８に記載されている。
【００８４】
図４は、前記曲げモデルデータを作成する際の一般的な工程及び操作を示す。前記顧客の注文に基づいて受取られ或いは作成されるそして前記曲げモデルデータを作成するために入力される種々の図面が一般的にステップＳ１９，Ｓ２３，Ｓ２７，Ｓ３１に示される。ツール・アイコン・バー及びメニュースクリーン及び／又はヘルプスクリーンが前記サーバモジュール３２により提供され、オペレータがこれらのステップの各々を選択し且つ実行するのを支援する。前記曲げモデルのための前記パーツの２次元及び３次元モデルを作成するためのこれらの図面の加工は最初に提供された図面のタイプに依存する。これらの図面はサーバモジュール３２において手動で入力され或いは作成され或いはそれらはテープ或いはディスクからダウンロードされる。前記サーバモジュール３２は例えば前記設計事務所１０に存在するＣＡＤ／ＣＡＭシステムとインタフェースし或いは前記サーバモジュールが独立型（スタンドアローン）のＣＡＤ／ＣＡＭシステムを含む。更に前記２次元及び３次元図面は、ＤＸＦ或いはＩＧＥＳファイルとして保存され前記サーバモジュール３２に入力される。
【００８５】
２次元単一平面図が提供される場合、前記曲げモデルを作成するためのプロセスは図４に示すようにステップＳ１９で始まる。ステップＳ１９において、受取られ或いは展開された２次元平面図はサーバモジュール３２へ入力される。他の曲げモデルデータ、例えば前記部品の全体的な寸法（例えば幅、高さ、深さ）及び部品の材質情報もまたステップＳ１９で入力される。その後、折曲げアルゴリズム或いはプロセスが使用され、ステップＳ２１に示されるように、最初の２次元単一図面に基づいて３次元モデル（厚さを有しない）が作成される。前記２次元平面図から３次元モデルを作成する際に実行されるプロセス及び操作の例は米国特許出願第０８／６９０，０８４及び米国仮出願第６０／０１６，９５８に記載される。前記部品の３次元ワイヤフレーム図面（厚さを有しない）が受取られ或いは作成される際、その図面情報はステップＳ２７で入力される。更に他の曲げモデルデータ、例えば部品の全体的寸法（例えば幅、高さ、深さ）及び部品の材質情報がステップＳ２７で入力される。しかる後、前記サーバモジュール３２で展開アルゴリズム又はプロセスが実行され、ステップＳ２９に示すように前記部品の２次元モデルが展開される前記３次元図面（厚さを有しない）から前記２次元モデルを作成する際に実行されるプロセス及び操作も前記２件の米国出願に記載される。
【００８６】
前記部品の２次元及び３次元表現は当該部品の曲げモデルの一部として格納される。更に、上記したように、前記２次元及び３次元モデルの作成及び入力の間に、他の曲げモデルデータが入力される（例えば部品材質情報及び他の製造情報）。従ってそれらも前記曲げモデルデータと共に前記データベースに格納される。オブジェクト指向プログラム技術が前記部品の曲げモデルを定義し且つ構造化するために使用される。前記２件の米国特許出願（０８／６９０，０８４及び６０／０１６，９５８）に記載される種々の機能及びデータ構造配置は前記部品の曲げモデルを組織化し且つ格納するために使用される。
【００８７】
図４に示されるように、前記部品の（厚さを有しない）単純３次元図面が最初に作成され或いは受取られない場合、最終的２次元モデルを作成するために必要な展開アルゴリズム又はプロセスを実行する前に（厚さを有しない）前記部品の３次元モデルを作成するために対かのプロセスが必要となる。ステップＳ２３，Ｓ２５，Ｓ３１及びＳ３３は一般的に、前記展開アルゴリズムを実行しステップＳ２９で２次元モデルを作成する前に前記サーバモジュール３２により行われる前記追加のプロセス及び操作を示す。
【００８８】
例えば前記部品の２次元３面図が最初に与えられ或いは作成される場合、ステップＳ２３で前記サーバモジュール３２において或いはそれに対して当該図面が入力され或いは導入される。更に他の曲げモデルデータ、例えば全体的な部品の寸法（例えば幅、高さ、深さ）及び部品材質情報がステップＳ２３で入力される。しかる後、ステップＳ２５で前記部品の単純３次元平面図面が前記入力された２次元３面図に基づいて作成される。作成された３次元図面は図４のステップＳ２９において２次元モデルを作成するために使用される。２次元３面図から３次元モデルを作成するために行われる複数のプロセス及び操作の例は米国特許出願第０８／６９０，０８４及び米国仮出願第６０／０１６，９５８に示される。
【００８９】
しかし例えば厚さを有する３次元図面が最初に受取られ或いは作成される場合、ステップＳ３１で図面情報が入力された後、前記展開アルゴリズムが適用される前に適宜の加工が行われる。他の曲げモデルデータ、例えば部品の全般的寸法（例えば幅、高さ、深さ）及び部品材質情報がまたステップＳ３１で入力される。しかる後、ステップＳ３３で厚さを除去する手続きが行われ前記３次元図面における厚さが除去される。この発明の１つの側面によれば、前記サーバモジュール３２は、オペレータ或いはユーザに対して、前記厚さ除去手続きを実行する際図面における厚さを指摘するように促し且つどの面（内側面或いは外側面）を保持すべきかを指示するように促す。本発明で使用される前記厚さを除去するための手続きの例は前記２つの米国出願に記載される。前記３次元図面における厚さがステップＳ３３で除去された後、論理フローはステップＳ２９へ進む。そこで前記厚さを有しない３次元モデルが使用され、適宜の展開アルゴリズム又はプロセスが適用され最終的な２次元モデルが作成される。前記展開プロセス及び前記３次元図面から２次元モデルを作成する際に実行される種々のプロセス及び操作の例は前記２つの米国特許出願（第０８／６９０，０８４及び第６０／０１６，９５８）に記載される。図４に示すように、全ての関連する情報が作成され及び入力された後、前記顧客の注文に関連する部品情報及び曲げモデル情報及び他のデータは前記サーバモジュール３２から転送され、ステップＳ３５で前記データベース３０に格納される。前記データベース３０に格納されたデータは特徴抽出データ或いは検索データを含み、それはデータベースの検索を行う際に利用される。前記特徴抽出データ或いは検索データは各作業に付随する前記パーツの基本的特徴或いはキーとなる特徴を示す。従って前記データベースの検索が、同じ部品又は類似の部品に関連する作業情報或いは格納されたエキスパート知識を特定するために実行される。前記サーバモジュール３２において入力された前記データ及び情報は前記データベース３０へ直接的に送られ或いは図３に示されるように通信ネットワーク２６を介して転送される。
【００９０】
図５は前記ステーションモジュールの各々において実行される前記高知能製造システムの基本的プロセス及び操作のフローチャートである。前記ステーションモジュールは、前記板金製造設備３８の複数のロケーション１０，１２，１４，…，２０に設けられる。説明のため、図５は、例えば曲げステーション１８に存在するステーションモジュールにより実行されるプロセス或いは操作の基本的論理フローの例を示す。本明細書の記載に基づいて当業者が容易に理解するように、図５に示される論理フローはもちろん各ロケーションの各々において実行される操作及びプロセスの性格に基づいて各ステーションモジュール毎に修正されることができる。更に前記サーバモジュール３２の場合と同様に、以下に記載されるステーションモジュールのプロセス及び操作はソフトウエア又はプログラム論理により実行される。更に前記ステーションモジュールは、ツールバーアイコン又はヘルプスクリーン及び／又はメニュースクリーンを有するウインドウズに基づくアプリケーションを含み、オペレータ或いはユーザが前記ステーションモジュールの種々の工程及び操作を選択し且つ実行するのを促進する。そのようなヘルプスクリーン及び／又はメニュースクリーンは前記ステーションモジュールにおけるデータの入力或いは転送を促進するために設けられる。
【００９１】
図５に示されるように、ステップＳ５１において前記ステーションモジュールを初期化した後、オペレータはステップＳ５３において１つ又はそれ以上のデータベース検索条件或いはキー言語を入力する。前記検索条件は、前記データベース３０に格納された新しい或いは現在の作業に関連する以前の作業情報を特定するために入力される。例えばオペレータは、所定の参照番号或いはコードを入力し前記データベース３０から所定の作業情報を読み出す。例えば、バーコードがルーチンシート或いは在庫材料に張り付けられ、前記ステーションモジュールにおけるバーコードリーダによりスキャンされ前記情報が読み出される。或いは、参照コード或いは番号が前記ステーションモジュールにおけるキーボード又はデジタル入力パッドにより手動で入力される。また変換テーブルが設けられ、以前の作業情報のファイルの名前がオペレータによる部品参照番号或いは作業番号の入力に基づいて決定される。更に、検索条件或いはキーが入力され以前に格納された作業情報に対する類似部品検索が行われる。そのような検索は、前記部品の種々の設計上の特徴或いは特徴抽出データに基づいて行われる。この高知能製造システムにおいて実行される類似部品検索の記載は前記米国出願（第０８／６９０、０８４及び第６０／０１６，９５８）に提供される。
【００９２】
ステップＳ５３において検索条件が入力された後、前記ステーションモジュールはステップＳ５５で前記通信ネットワーク２６及びネットワークデータベースモジュール３４を介して前記データベース３０の検索を実行する。この検索の結果は前記ステーションモジュールへ送り返され、ステップＳ５７で分析され、オペレータ或いはユーザが入力した情報は新しい作業に関連するか或いは以前の作業と類似の作業に関連するか或いは以前の作業の完全な繰返しに関連するかが決定される。
【００９３】
完全に同一のものが検出される場合（すなわち同じ部品番号或いは参照番号が検出される場合）そして以前の作業が繰返されるべきであると決定される場合、前記作業に関連する前記格納された設計及び製造情報が前記データベース３０からステーションモジュールへ転送される。そしてそこでステップＳ５９に示すようにオペレータの観察のため前記情報が表示される。前記ステーションモジュールは、１つもしくはそれ以上のメニュー表示スクリーン又はディレクトリを有し、オペレータが前記データベース３０から読み出された種々の情報を選択し且つ表示することを可能とする。オペレータは、表示された情報を観察し且つステップＳ６１における３次元曲げシミュレーションのごとき種々のシミュレーションを実行し曲げ順における種々の段階を観察しその作業についての前記部品の幾何学形状を理解する。オペレータはまた他の情報（例えば必要な工具及び他の特殊な指示或いは前記作業情報と共に記録されたメッセージ等）を観察する。前記作業情報を確認した後、オペレータは曲げ或いはその他の必要な機械を組立て当該機械を作動し特定の板金部品を製造する。前記データベースから読み出される作業情報は最終的曲げ計画データを含み、それは例えば前記曲げステーション１８における機械を制御するための曲げコードを含む。前記機械の組付操作及び実際操作は、図５のステップＳ６３に示されるようにオペレータにより実行される。
【００９４】
同一の作業情報も或いは類似の作業情報も検索されない場合、そして当該情報は新しい作業に関連すると決定される場合（すなわち予備的な作業情報のみがサーバモジュール３２において入力され完全な作業情報はまだ作成されていない場合）、前記部分的な部品情報及び曲げモデルデータが前記データベースからダウンロードされ前記ステーションモジュールへ送られ、そこでそれはオペレータにより観察される（ステップＳ７７）。前記要求された情報は新しい作業に関連するため、オペレータは必要な工具及び曲げ順を含む曲げ計画を作成し且つ入力する必要がある。従ってステップＳ７９で、前記ステーションモジュールに提供された情報に基づいてオペレータは前記新規の作業について曲げ順及び工具の選択を定義し且つ作成する。ロボットを備える場合は、ロボット運動計画及びリポジション計画もまたオペレータによりプログラムされ作成される。図形ユーザインタフェース（ＧＵＩ）及び他の機能が前記ステーションモジュールに設けられ、曲げオペレータが前記曲げ計画を作成するのを促進する。前記図形ユーザインタフェースはオペレータが、仮の曲げ順を表示し、工具のオプションを表示し、前記部品と工具との間の潜在的な衝突を自動的にチェックし、前記仮の曲げ順における中間の段階の各々をシミュレートすることにより前記曲げ計画を作成するのを支援する。更に、以下に説明するように、オペレータは前記エキスパート計画システムアプリケーションを起動し、前記部品の製造に関連するエキスパート計画情報を受取る。この情報は、曲げ順及び工具情報及びロボット運動及びリポジション計画に関するデータを含む。前記エキスパート計画システムの種々の機能は図６乃至２４を参照して以下に説明される。
【００９５】
前記サーバモジュールにおいて前記曲げ計画を作成し且つ入力した後、オペレータは、ステップＳ８０で曲げ順をプログラムし曲げコード（すなわち前記曲げ機械で曲げ工程を実行するためのＣＮＣまたはＮＣコード）を生成する。前記曲げコードは、前記ステーションモジュールにおいて直接入力され或いは前記曲げ機械のＣＮＣまたはＮＣ制御装置にインタフェースすることにより前記ステーションモジュールへ導入される。しかる後オペレータは機械の組立てを行いステップＳ８１で前記曲げワークステーションにおいて前記曲げ計画を試験する。全ての必要な試験及び前記曲げ計画に対する全ての必要な修正が完了すると、前記最終的曲げデータがステップＳ８３で前記データベース３０へ入力され保存される。最終的な曲げデータは、前記曲げ順及び工具組付情報及び曲げプログラム及び／またはロボット運動制御情報を含む。これらの情報は前記例えば曲げステーション１８のステーションモジュールからデータベース３０へ送られ、当該新しい作業についての他の設計及び製造情報と共に格納される。
【００９６】
図５におけるステップＳ５７において入力された情報は以前の作業に類似の部品に関連するか或いは以前の作業と同じ部品に関連するか例えば異なった参照番号或いは作業番号或いは異なるバッチサイズ（数量）等を有すると判断される場合、論理フローはステップＳ６５へ進む。そしてステップＳ６５で以前の作業情報がデータベース３０から読み出され曲げステーション１８において表示される。曲げオペレータ或いはユーザは従ってこのデータを観察しそのような類似の部品についてどのようなデータに対する変更が必要であるかを決定する。再び、前記ステーションモジュールは一連のメニュー表示スクリーン或いはディレクトリを生成し、オペレータが、どの情報が表示されるべきであるか或いはその情報が表示され変更される方法を選択するのを可能とする。例えばステップＳ６９で、前記ステーションモジュールは読み出された情報に基づいて３次元曲げシミュレーションを行い、オペレータが類似部品についての曲げ計画を作成するのを促進する。前記以前の作業情報を観察した後、オペレータはステップＳ７０で工具情報及び曲げ情報並びに曲げプログラムを修正する。他の作業情報、例えば部品の寸法または参照番号または数量（バッチサイズ）もまたステップＳ７０で修正され或いは編集される。前記エキスパート計画システムの種々の機能（以下に図６乃至２４を参照して記載される）はまた前記において曲げ計画を編集し完成するために利用される。しかる後ステップＳ７１で実際の工具の組付け及び試験が工場フロアの上でオペレータにより実行され修正された曲げ計画が試験される。前記前記曲げ計画の試験及びにそれに対する更なる修正が完了すると、オペレータはステップＳ７３で前記最終的曲げデータを入力し且つそれを新しい作業番号或いは参照番号のもとでデータベースへ格納する。
【００９７】
上記したように以前の作業情報は、格納された他の作業ファイルと共にデータベース３０に保存される。更に種々のデータベース管理機能が前記データベースに格納されたファイルを格納し、削除し、名前書き直し等のために設けられる。
【００９８】
上記したように本発明の高知能製造システムは前記米国出願（第０８／６９０，０８４及び第６０／０１６，９５８に開示されるような種々の機能を有している。例えば種々の図形ユーザインタフェースが提供されオペレータがある部品についての曲げ順及び工具を手動で選択し且つ決定するのを支援する。そのようなインタフェースは、オペレータが、１つ或いはそれ以上の表示スクリーン画像を使用して、前記部品の表示された画像の曲げ線を順番に選択することにより曲げ順を入力することを可能とし或いは使用可能の種々の金型（例えばパンチ、ダイ、ダイレール等）を表すアイコンに基づいて工具を選択することを可能とする。オブジェクト指向プログラム技術がまた使用され曲げモデルデータ及び電気部品に対して実行される曲げ加工を完全な曲げ加工ファイルとしてデータベース中に組織化して格納する（例えばクラス構造或いはライブラリに基づいて）ことを可能とする。前記部品は２次元及び３次元空間において表現され前記高知能製造システムは、オペレータが選択的に前記部品の２次元及び３次元画像を表示しズームし回転し且つパンするのを可能とする。そのような特徴の詳細或いはそれ以外の特徴の詳細は前記米国出願第０８／６９０，０８４及び米国仮出願第６０／０１６，９５８に提供される。
【００９９】
次に図６乃至２４を参照するに前記エキスパート計画システムの種々の特徴及びそれと前記高知能製造システムとの相互作用が説明される。上記したように米国出願第０８／３３８，１１５及び０８／３８６，３６５の種々の特徴及び側面はこの発明の装置及び方法に利用される。他の特徴及び側面もまたこのエキスパート計画システムに取り入れられる。それは以下の記載により容易に理解されるであろう。
【０１００】
図６は、この発明のエキスパート計画システムに関連する種々のネットワークロケーション及びモジュールの間のデータ及びメッセージの流れの典型的実施例を示す。説明を簡単にするため、図６における通信ネットワーク２６の図示は簡単化され、前記データベース３０及びサーバモジュール３２及び曲げステーション１８のみが示されている。しかし、前記設備３８の他のロケーション或いはステーションモジュールとの間のデータの流れは以下に記載されるそれと同様の方法で行われることが理解されるであろう。
【０１０１】
この発明のエキスパート計画システムは曲げオペレータ或いはプログラマが前記エキスパート計画システムの複数のエキスパートモジュールを選択的に起動し、例えば曲げ順選択及び工具選択及びロボット運動計画に関するエキスパート情報を選択的に受取ることを可能とする。この発明の１つの側面によれば、オペレータは種々の拘束条件（例えば完全の曲げ順或いは部分的な曲げ順或いは１つ或いはそれ以上の工具選択）を設定することができる。そして前記拘束条件は、曲げ計画を作成する際前記エキスパート計画システムにより使用される。種々の他の特徴が設けられ、オペレータがエキスパート計画システムの計算結果を観察し且つ前記結果としての情報をデータベース中に格納するか否かを決定し且つ曲げ計画を実行する際当該情報を使用するかどうかを決定することを可能とする。そのような特徴は以下に例えば図８乃至１１及び１２乃至２０を参照して説明される。
【０１０２】
この発明の１つの側面によれば、前記エキスパート計画システムにより実行される主たる機能及びプロセスは前記サーバモジュール３２の内部で実行される。前記サーバモジュール３２は前記工場３８（それは設計事務所１０を含む）の任意の場所に設けられ前記エキスパート計画システムの機能及びプロセスは前記サーバモジュール３２に提供されるコンピュータに基づくプラットホームの上で実行されるソフトウエアにより実行される。そのような特徴は前記板金設備３８全体にわたるロケーション１０，１２，１４，…，２０のそれぞれに提供されることができる。或いは前記設備３８において顧客−サーバの関係が確立されることができ、ここにおいて、前記ロケーション（顧客）の各々は前記通信ネットワーク２６を介して前記サーバモジュール３２へ、そこに設けられている前記エキスパート計画システムにアクセスし且つそれを起動するために、適宜のデータ及びメッセージを送るためのインタフェースを備えることができる。他の構成、例えばホスト−ターミナル構成もまた、この発明の種々の特徴或いは側面を実行するために設けられる。更に通信ネットワーク２６がイントラネット或いはインターネットを介して実行される場合、前記サーバモジュールは地理的に離間した複数の場所から局所的に或いは遠隔的にアクセスされ前記エキスパート計画システムがアクセスされ且つ起動される。
【０１０３】
上記したように、図６は前記サーバモジュール３２及びデータベース３０及びロケーション１８（それは図示の実施例ではステーションモジュールを有する曲げワークステーションとして記載されている）の間の種々のデータ及びメッセージの転送の典型的具体例である。説明のために、図６の実施例は、顧客−サーバ関係に基づいており、そこにおいて前記エキスパート計画システムは前記サーバモジュール３２の内部において実行され、前記ロケーション（曲げワークステーション１８を含む）の各々はサーバモジュール３２に設けられたエキスパート計画システムに通信ネットワーク２６を介してアクセスできるようになっている。前記サーバモジュール３２のエキスパート計画システムが初期化され且つ起動される時、前記部品の幾何学形状及び／またはトポロジーを表す曲げモデルファイルが前記データベース３０からダウンロードされ前記エキスパート計画システムにより読み込まれる。前記部品の曲げモデルは、顧客の注文が受領される際、ＣＡＤまたはＣＡＤ／ＣＡＭシステムにより作成され、データベース３０へ格納される。前記曲げモデルはまた、前記高知能製造システムの種々の機能及び側面（例えば図４に関連して上記したもの）を介して作成され、前記部品に関連する設計及び製造情報を含む。
【０１０４】
前記曲げモデルファイルが前記エキスパート計画システムに読み込まれた後、前記サーバモジュール３２に設けた種々のエキスパートモジュールが実行され曲げ計画が決定され且つ生成される。前記エキスパート計画システムは、例えば前記高知能製造システムにおける類似部品検索の結果不満足な結果が得られた場合或いは新しい部品に対して曲げ計画を作成する際に支援が必要である場合にオペレータにより使用される。図７を参照して以下に説明するように、前記エキスパート計画システムは、曲げ順を決定するため或いは工具を選択するため（それはパンチ及びダイ工具及び工具ステージの配置の選択を含む）或いはロボット運動を計画するための種々のエキスパートモジュールを含む。前記エキスパートモジュールはまたロボットの把持及びリポジションを決定する。曲げ計画が作成された後、前記エキスパート情報は前記サーバモジュール３２から通信ネットワーク２６を介してデータベース３０へ転送され、前記情報は製造されるべき板金部品に関連する曲げモデルファイルに格納される。或いは前記曲げ計画情報は１つ或いはそれ以上のファイルに格納され、作成された曲げ計画に関連する種々のタイプの情報への容易なアクセス及びその情報の容易な読み出しを可能とする。
【０１０５】
前記エキスパート計画システムは前記設備３８全体に設けてある種々のロケーション１０，１２，１４，…，２０からもアクセスされそれらにより使用される。例えば、前記曲げワークステーション１８は、１つ或いはそれ以上のメッセージ（例えばＦＥＬメッセージ）を通信ネットワーク２６を介してサーバモジュール３２へ送信する。これらのメッセージは、どのエキスパートモジュールが起動されるかを示すＦＥＬコマンド及び、前記エキスパート計画システムにより使用される種々の拘束条件を示す拘束語句或いはデータを含む。前記通信ネットワーク２６を介して送られるメッセージは、前記ネットワーク２６を実行するために使用される通信ネットワークのプロトコール（例えばイーサネット・プロトコール或いはＴＣＰ／ＩＰ）に応じて送られる。これらのメッセージ或いは拘束条件データが前記サーバモジュール３２で受取られる時、それらは前記エキスパート計画システムへ転送され、且つ前記エキスパート計画システムが起動される時、前記メッセージが解釈され或いは読み取られ且つ適宜の曲げモデルファイルが前記データベース３０から読み取られ従ってそれに基づいて曲げ計画情報が作成される。作成された結果としてのエキスパート情報は（それは決定された曲げ順及び工具選択及びロボット運動等を含む）前記データベース３０に格納され前記曲げモデルファイルを更新する。実際の最終曲げ計画が実行される時、前記曲げ計画情報は前記データベース３０から例えば曲げワークステーション１８へダウンロードされ、前記板金要素に対して必要な曲げ加工が実行される。或いは最終曲げ情報は、前記サーバモジュール３２からアクセスされ、曲げ加工が行われる時そこから前記曲げワークステーション１８へ送られる。更に上記したように、曲げワークステーション１８のステーションモジュールは、曲げワークステーションにおける種々の機械を前記曲げ計画情報に基づいて制御するための計画装置及びシーケンサを含む。
【０１０６】
図７は、前記エキスパート計画システム７０に設けてある種々のエキスパートモジュール或いはシステムの例を示す。上記したように、高知能製造システム６０とエキスパート計画システム７０は、前記サーバモジュール３２において実行可能なソフトウエアアプリケーションとして設けられている（例えば図２（ｂ）を見よ）。図７に示されるように、エキスパート計画システム７０は計画エキスパート７２及び工具エキスパート８０、保持／把持エキスパート８２及び運動エキスパート８４を含む。以下に更に詳細に説明するように、センサ・エキスパート８６もまた提供される。前記計画エキスパート７２は前記工具エキスパート８０及び把持エキスパート８２及び運動エキスパート８４及びその他のエキスパート（例えばセンサ・エキスパート８６）と協働して作用し、前記例えば曲げステーション１８による部品製造の計画を作成する。前記計画エキスパート７２は以下のような種々の機能を果たす。すなわち例えば、仮想的な曲げ順における特定の曲げ工程を提案し或いは特定の曲げが前記仮想的曲げ順における特定の位置を占めるようにするためにはどのような初期工程がシステムにより行われなければならないかを決定する。提案された曲げの結果を判断するために、前記曲げエキスパート７２は前記工具エキスパート８０に対して提案された曲げを実行するにはどのような工具が必要であるかについて質問し且つ前記保持エキスパート８２に対して提案された曲げを実行しつついかにワークピースを保持することができるかについて質問する。前記計画エキスパート７２はまた、前記運動エキスパート８４に対して、ワークピースを保持しているロボットが前記曲げの実行を支援するように操作できるかどうか或いはどの程度操作できるかについて質問をする。前記センサ・エキスパートが提供される場合、前記計画エキスパート７２は前記センサ・エキスパート８６に対して以下の質問をする。すなわち、前記ワークステーションによる提案された曲げの実行を促進するためにセンサに基づく制御が必要であるかどうか或いは特定のセンサに基づく制御に関連するコストがいかほどであるかである。計画エキスパート７２は完全な曲げ順における第１の曲げから順番に最後の曲げへ至る複数の曲げを連続的に提案するように構成されており従ってこれにより最終的な製品を製造するための一連の完全な複数の曲げ工程が作成される。このようにして適切な曲げ順が作成されると、前記計画エキスパート７２は最終的計画を作成する。その計画は前記工程の一般的なリスト及び前記ワークステーションの機械及び種々のハードウエア要素の実行を制御するのに必要な付随する情報を含む。そして前記計画エキスパート７２は前記計画を前記データベース３２及び／又は例えば前記曲げワークステーションのシーケンサ或いはコントローラへ送る。
【０１０７】
以下前記エキスパート７０の動作を説明する。前記計画エキスパート７２はまず前記データベース３０からの曲げモデルファイルを読み込むことにより設計された部品を分析する。そしてそれは前記曲げワークステーションにより実行される曲げ順を提案する。前記計画エキスパート７２は、状態空間検索方法を使用し、前記曲げワークステーションにより利用できる曲げ加工の効率的順番を決定する。前記計画エキスパート７２は前記工具エキスパート８０及び保持エキスパート８２及び運動エキスパート８４と会話し且つ質問をし、それが決定をするために必要とする情報を獲得する。
【０１０８】
前記工具エキスパート８０は前記計画エキスパート７２によりなされる質問に答え、前記計画エキスパート７２へ、特定の曲げ加工或いは曲げ順に対して必要とされる工具等に関する情報を提供する。更に、工具エキスパート８０は前記計画エキスパート７２へ前記ワークステーションにおける工具の配置を知らせる。工具エキスパート８０は、計画エキスパート７２と共に、工具の取付けを設計し、所定の部品を製造するために（すなわちその部品を製造するための完全な曲げ順を実行するために）最小の数のステージ及び工具を使用するように試みる。
【０１０９】
保持エキスパート８２は保持に関連する決定を行う。例えば前記ロボットが、前記計画エキスパート７２により特定される所定の曲げが行われている間前記ワークを保持していることができるかどうかについてである。保持及び把持エキスパート８２はまた、ワークピースが一連の曲げ加工の間他の物体と衝突することなく且つワークピース上のロボットの把持の位置を変更することなく操作されるようにロボットの前記ワークピースの把持の位置を決定する。更に前記保持エキスパート８２は、ロボットの把持位置が変更される際前記リポジション・グリッパがワークピースを把持する位置を決定し且つワークピースの搬入搬出の際に搬入搬出装置（Ｌ／ＵＬ）の吸引カップがワークピース上のどの位置に位置すべきかを決定する。更に前記運動エキスパート８４は運動計画すなわちワークピースを種々の空間を介してそして複数の曲げを実行するのに必要な種々の経路に沿って移動させるためにロボットを操作する方法を生成する。結果として、種々の曲げ加工を実行する際にロボットによるワークピースの操作を制御するために衝突を生じないロボットの運動経路が決定される。
【０１１０】
前記計画エキスパート７２及び前記各々のエキスパートはモジュール的であり相互に質問に基づく方式で更新する。例えば、曲げ順の一部として特定の曲げを含むことを決定する前に、前記計画エキスパート７２は工具エキスパート８０に当該曲げを実行するための十分な工具があるかどうかを質問する。計画エキスパート７２はそして前記工具エキスパート８０からの応答を待つ。工具エキスパート８０は前記計画エキスパート７２からの質問を認識し返答を返す。その返答は例えば前記計画エキスパート７２により質問された特定の曲げを扱うための十分な工具が存在することを示す。例として、前記計画エキスパート７２はまた前記保持或いは把持エキスパート８２に対してロボットアームグリップは特定の曲げ加工の間そのワークピース上の把持をリポジションすることなく前記ワークピースを把持し続けることができるかどうかを尋ねる。前記保持エキスパート８２はそこで前記計画エキスパート７２によりなされた質問に答え、前記計画エキスパート７２はその情報を次の決定を行うために利用する。
【０１１１】
前記エキスパート計画システム７０の各々のモジュールは幾何学モデル化ライブラリ（図示せず）により提供される１つもしくはそれ以上の機能を利用し、それぞれの決定において必要とされる場合には、前記システムの機械及びハードウエア要素の各々の相対的相互作用及び位置をモデル化する。米国特許出願第０８／３８６，３６９及び第０８／３３８，１１５に記載される種々の機能及び側面はこのエキスパート計画システムの種々の機能を実行するために利用される。前記出願の記載はユニックスに基づいたシステムを示すが、そこにおける種々の機能はＰＣに基づくウインドウズＮＴアプリケーションへ容易に変換され導入される。前記ウインドウズＮＴアプリケーションは前記サーバモジュール３２のコンピュータに基づくプラットホームにおいて実行可能である。種々の他の機能もまた、以下に示すようにエキスパート計画システムに設けてある。
【０１１２】
図７に示される実施例の計画エキスパート７２は２つの主要な機能を実行する。第１に計画エキスパート７２は曲げ順を作成し且つその曲げ順は各曲げに付随する種々の操作を含む。前記計画エキスパート７２はまた前記他のエキスパートモジュールに、それが生成した曲げ順の既決について及び生成された曲げ順を完成するために必要とされる計画の詳細或いはサブ計画について質問をする。最後に、計画エキスパート７２はまた全ての集積された或いは生成された情報をコンパイルし全般的曲げ計画を作成する。そのような計画は、前記板金曲げワークステーションにおける種々の機械の動作を制御する制御装置により前記曲げ順を実行するために必要とされる複数の工程を特定する。更に、前記エキスパート計画システム７０の各エキスパート（工具エキスパート８０、把持エキスパート８２、運動エキスパート８４等）は前記計画エキスパート７２により要請される際３つの主要な機能を果たす。それらは各々曲げ順におけるそれぞれの工程を実行するためのインクリメンタルなコストを決定し且つ提案される或いは中間的な計画情報を作成する。更に前記各エキスパートは前記インクリメンタルなコスト及び計画情報を前記計画エキスパート７２へ送信する。前記提案された或いは中間的な計画情報は２つのタイプの情報を含む。すなわち確定した情報と不確定な情報である。例えば計画中におけるある時点において、前記保持エキスパートは曲げ順におけるある曲げを実行するために前記ロボットグリッパによりワークピースのどの領域が把持されているかを知っている（前記把持領域は確定している）。しかし前記把持エキスパートは正確な把持位置は知らない（正確な把持位置は不確定である）。前記把持エキスパート８２により仮の（不確定な）把持位置が与えられそれは後に変更され得る。上記したように計画エキスパート７２は各エキスパートに、それが作成した曲げ順の既決を質問する。
【０１１３】
前記曲げ順の既決はコストのことまで表現される。それが作成される際の曲げ順のコストは以下の１つ或いはそれ以上の関数として決定される。すなわち、曲げ順における所定の操作を実行するためにそれが要する時間と、曲げ順における操作がその操作の精度及び結果としてのワークピースの質に及ぼす影響の程度と、曲げ順内の所定の点における所定の操作の実行に付随して安全性の懸念が存在するかどうかと、（仮に考慮に入れるとして）曲げ順内の所定の点において１つの操作の代わりに他の操作を実行することを示唆するヒューリスティックが存在するかどうかである。
【０１１４】
前記計画エキスパート７２はまた前記各エキスパートに、前記曲げ順の所定の曲げを実行するためにどの工具形状を利用すべき或いは所定の曲げを実行するのに必要とされる所定のステージを実行するためにどのステージセグメントが必要とされるか或いは曲げ順における１つ或いはそれ以上の曲げを実行する際にロボットのグリッパはワークピースのどこを把持すべき等の情報について質問を行う。更に前記計画エキスパートは前記各エキスパートに以下について質問をする。すなわち曲げ順において何時ワークピースのリポジションを行うべきか或いは曲げ或いはリポジション或いはワークステーションへの搬入或いはワークステーションからの搬出等のシーケンスを通して種々の操作を実行するためにロボット及びワークピースはどのように移動すべきか等である。
【０１１５】
以下に説明するように、曲げワークステーションがロボット制御装置を含まず曲げ操作がマニュアルのプレスブレーキで実行される場合、オペレータは、例えば曲げ順及び工具情報のみを提供するように、選択的に前記複数のエキスパートモジュールを起動する。そのような場合に、前記計画エキスパート７２は例えば前記工具エキスパート８０に対してのみ質問を行い前記保持或いは把持エキスパート８２及び運動エキスパート８４は使用されない。ロボット運動及び把持情報は不要だからである。前記サーバモジュール３２に対して質問に基づくメッセージを送ることにより、前記曲げワークステーション１８は特定の作業に対してどのエキスパートモジュールが使用されるべきかを示すことができる。
【０１１６】
上記したように、図７の計画エキスパートは、種々の技術及びプロセスを利用する。例えば、米国出願第０８／３８６，３６９に示されるように、種々の板金曲げヒューリスティックが、前記曲げ順を決定し且つ作成する際に前記計画エキスパート７２により使用される。これらのヒューリスティックは、例えば以下を含む。すなわち内側のタブを先に曲げること、内側の曲げ線に沿った曲げよりも先に外側の曲げ線に沿った曲げを行うこと、長い辺に沿った曲げの前に短い辺に沿った曲げを行うこと、同一線上の曲げ（共線曲げ）を同時に行うことである。状態空間検索アルゴリズムがまた前記計画エキスパート７２により使用され、所定の順番で種々の曲げを行うことの暗黙的な意味が分析される。各々の曲げに対してコストを付与することにより、機械及びワークピースが各曲げの実行の際に相互に関連し合うときに、当該機械と結果としてのワークピースをモデル化することにより幾何学的意味が使用され、特定の曲げの物理的意味が決定される。前記状態空間検索アルゴリズムはＡ＊アルゴリズムを含む。そしてそのアルゴリズムは、次の本に記載される。すなわち著者Ｎ．Ｊ．ＮＩＬＳＳＯＮ本の名前「人工知能における問題解決方法」出版社マグロウヒルブックカンパニー発行年１９７１年頁４３ｐ乃至６７ｐ．コスト評価がまた、曲げ順を作成する際に前記曲げエキスパート７２により実行される。更に、前記エキスパート計画システム７０は大局的運動計画及び微細運動計画を作成する。これらは米国特許出願第０８／３３８，１１５に例えば記載される。
【０１１７】
製造される部品に付随する幾何学的特徴に依存して、計画されている操作順序における幾つかの点で実行することができない曲げに関連する操作が存在することがある。これらの曲げに関連する操作は、「拘束（或いは拘束条件）」と称される機構を用いて前記曲げ順の所定の場所に拘束される（或いはそれから排除される）ことができる。特徴抽出モジュール（図示せず）が設けられ、ＣＡＤシステム或いは適宜の設計システムにより製造された幾何学的モデルからの幾何学的特徴に対して自動的にラベルが付され、これらの幾何学的特徴ラベルはインタフェース通信言語（例えばＦＥＬ）において法律的語句（例えば拘束語句）を作成するために使用される。前記ＦＥＬのより詳細な説明は以下に提供される。前記拘束（或いは拘束条件）はデータ構造を用いて定義され、そのデータ構造は曲げ操作の特定の配置を、一定の柔軟性の範囲内で特定する。例えば、複数の側面を有するパーツについて（例えば図２３（ｃ）を見よ）、以下の拘束或いは拘束語句或いは陳述が使用され、曲げ１，２，３及び４が行われるところの順番を特定する。すなわち、
（拘束（（１  ２  ３  ４）））。
【０１１８】
この陳述は最初の曲げが２番目の曲げの前に実行され、その２番目の曲げは３番目よりも先に実行され３番目は４番目よりも先に実行されることを意味する。更に前記陳述にはいかなる演算子も含まれていないため、前記曲げ１乃至４のいずれの前にも間にも或いはその後にも他の曲げ操作は実行されない。
【０１１９】
仮に曲げ２は曲げ３の前に実行されなければならないが、曲げ順において曲げ操作の配置に関して他の拘束或いは拘束は存在しない場合には、以下の拘束陳述が使用される。すなわち、
（拘束（（＊２＊３＊）））。
【０１２０】
前記演算子「＊」は「ワイルドカード」として作用し、前記曲げ順におけるその位置において曲げ操作が行われないか或いは任意の数の曲げ操作が行われることを可能とする。更に、前記ワイルドカード演算子の位置において実行される曲げ操作のタイプは、前記拘束命令文（拘束陳述）において指定されていない残りの曲げ操作のうちの任意のものであることができる。更に、そのようなワイルドカード演算子は、前記ワイルドカード演算子の位置において実行されるロボットグリッパのリポジション（再配置）が行われることを意味するために設けられることもできる。
【０１２１】
提供されることがある他のワイルドカード演算子は「？」である。このワイルドカードは、前記曲げ順におけるその位置において、拘束命令文において特定されていない曲げ操作のうちの、ただ１つの曲げ操作が行われることを意味する。従って曲げ２の前に正確にただ１つの曲げ操作が行われる場合（すなわち例えば図２３（ｃ）に示される部品のように）で、しかし前記曲げ２の後の曲げ操作の数或いはタイプには何の制限もない場合（但しそれらは前記曲げ２は含まない）、次の拘束命令文が使用される。すなわち、
（拘束（（？２＊）））。
【０１２２】
前記拘束命令文はまたグループ化の演算子も含む。このグループ化演算子は、ある複数の曲げ操作が１つのグループにグループ化され、そのグループ内では曲げ操作の順番に制限がないことを要求する。例えば、次の拘束命令文（拘束命令文）は、前記曲げ２及び３は前記曲げ順において前記曲げ４の前に行われ、前記曲げ２及び３は１つのグループにグループ化され且つその間にはいかなる曲げ操作も行われないことを要求する。すなわち、
（拘束（（＊｛２  ３｝＊４＊）））。
【０１２３】
１つの拘束命令文（束縛命令文）の中には１つ以上の拘束表現（束縛表現）が含まれ得る。例えば、以下の拘束命令文（束縛命令文）は、前記グループ化の拘束表現と追加の拘束表現を含む。この追加の拘束表現は更に前記曲げ１は前記曲げ４の前に行われ、且つ前記曲げ１及び４に関する他の操作の配置及び追加についてはいかなる追加の制限も存在しないことを要求する。すなわち、
（拘束（（＊｛２  ３｝＊４＊）（＊１＊４＊））。
【０１２４】
１つのグループの中には任意の数の曲げ操作が含まれ得る。そして複数のグループがネスト化（入れ子の状態）にされ、複数のグループが特定の順番に配置されるということはないということを特定する。例えば、次の表現は、曲げ１及び２は曲げ順において相互に隣接し、前記曲げ３及び４は曲げ順において相互に隣接することを特定する。しかし、この拘束表現によれば、他の曲げ操作の挿入或いは配置についてはいかなる拘束もない。
【０１２５】
（＊｛｛１  ２｝＊｝｛３  ４｝｝＊）。
【０１２６】
他の拘束表現の例は（＊７）を含む。これは曲げ操作７は曲げ順において最後の曲げ操作として行われなければならないことを意味する。また表現（＊７？）は、前記曲げ７は曲げ順において後から２番目の曲げとして実行されなければならないことを意味する。
【０１２７】
前記拘束を定義するために使用される演算子のタイプは拡張されることができ、ブール演算子例えばＮＯＴ，ＯＲ，及びＡＮＤを含み得る。例えば、前記ＮＯＴ演算子を有する拘束表現は（＊ＮＯＴ７）である。これは７番目の曲げは前記曲げ順の最後の曲げ操作ではないことを意味する。
【０１２８】
使用される拘束条件（或いは拘束表現）のタイプには制限はない。また、前記エキスパート計画システム内の任意のエンティティ（前記種々のエキスパート及び前記エキスパート計画システムの作業者自身をも含む）が前記拘束（束縛）を定めることができる。これらの拘束は、所望の曲げ順及び工具選択に関連することができ且つ例えば前記曲げワークステーション１８におけるオペレータ（作業者）により入力されることができる。更に、前記高知能製造システム６０またはエキスパート計画システム７０の中に拘束マネージャが提供され、オペレータにより入力された曲げ順（完全曲げ順或いは部分的曲げ順）或いは工具選択に基づいて、拘束語句（或いは束縛語句）を自動的に作成し、且つ前記拘束（或いは拘束条件）の一貫性を保持するのを支援し且つ複数の拘束の間に発生し得る矛盾を解決する。
【０１２９】
オペレータによる曲げに関連する拘束の入力に基づいて自動的に拘束語句を作成する拘束マネージャの具体例のより詳細な説明は図２１乃至２３を参照して以下に与えられる。以下に説明するように、オペレータは、部分的曲げ順或いは完全な曲げ順を入力し、それらの曲げ順は前記エキスパート計画システムにより拘束（或いは拘束条件）として利用される。工具もまたオペレータにより選択され、前記エキスパート計画システムによる工具選択を拘束する。前記拘束マネージャは、オペレータにより入力された例えば曲げ順に基づいて拘束語句を作成する。そのような場合に、前記拘束マネージャは前記部品の幾何学的特徴或いは曲げを分析し、（適当な場合には）検出された同一線上の曲げ（共線曲げ）及びＺ曲げをグループ化し且つ入力された曲げ順に基づいて拘束語句を作成する。従ってその拘束語句は前記エキスパート計画システム７０により利用される。
【０１３０】
複数の拘束表現の間に矛盾があるかどうかを決定するために、前記拘束マネージャは１つのアルゴリズムを含む。このアルゴリズムは、与えられた一対の拘束表現の中に共通の操作が存在するかどうかをチェックする。そして複数の前記拘束表現の中に共通の操作が存在する場合には、それらは１つに合併されそれらは矛盾するかどうかが決定される。種々の拘束表現が分析され、それらは、オペレータの入力拘束及び、機械及び工具の制限により強制される機械的拘束及び、部品の特徴により強制される部品拘束及び、曲げ順の検索をスピードアップするために生成される最適化拘束を含む。例えば、拘束（＊１＊２＊）が拘束（＊２＊３＊）と合併される場合、結果としての合併された拘束表現は（＊１＊２＊３＊）となる。前記拘束（＊１＊２＊）が矛盾する表現例えば（＊２＊１＊）と合併されると、０（空集合）が結果として生成され、前記２つの拘束表現は相互に矛盾することを示す。
【０１３１】
上記したように、計画エキスパート７２は、状態空間検索アルゴリズムを利用する。この状態空間検索アルゴリズムにおいて、解答は最終状態として記述される表現に到達するまで状態記述に対して演算子を演算することにより獲得される。この状態空間検索方法を実行する際に、出発ノードは最初の状態記述に付随し、前記出発ノードに引き続く後のノードは前記ノードに付随する状態記述に対して適用可能な演算子を用いて計算される。前記ノードに引き続くノードの全てを計算することにより前記ノードは拡張される。
【０１３２】
それぞれの後のノードから親のノードへのポインタが設定される。このポインタは後に、最終ノードが最終的に発見された後、前記出発ノードへ戻るための解答経路を示すために用いられる。前記後のノード（後継ノード）は、そのノードに対応する状態記述をチェックする（すなわちそれらが最終状態を記述するかどうかをチェックする）ことによりそれらが最終ノードであるかどうかを見るためにチェックされる。最終ノードがまだ発見されない場合、前記ノードを拡張する工程及び対応するポインタを設定する工程が続けられる。最終ノードが発見されると、前記ポインタは前記出発ノードへさかのぼり、解決経路を作成する。前記経路の曲線に付随する状態記述演算子は次に解決順路へと組み立てられる。
【０１３３】
前記工程が状態空間検索アルゴリズムを構成する。前記アルゴリズムの変形態様はノードが拡張される順番により定義される。前記ノードが、それらが生成される順番で拡張される場合、その検索方法は「広さ−再選方法」と呼ばれる。最も最近に生成されるノードが最初に拡張される場合、その方法は「深さ−再選方法」と呼ばれる。前記「広さ−再選方法」及び「深さ−再選方法」は盲検索アルゴリズムである。というのは前記ノードが拡張される順番は最終ノードの位置に影響されないからである。
【０１３４】
前記グラフの全般的性質についてのヒューリスティック情報及び前記ゴール（最終目的地）の一般的な方向は前記検索方法を修正するために使用される。そのような情報はまず最も可能性の高いノードを拡張する（或いは展開する）ことを目指して、前記ゴールの方向へ前記検索が向くように支援するために使用される。そのようなヒューリスティック検索方法の１つのタイプは例えば前記著者Ｎ．Ｊ．ＮＩＬＳＳＯＮによる本に記載されている。
【０１３５】
前記盲検索アルゴリズム（例えば幅−再選アルゴリズム或いは深さ−再選アルゴリズム）は前記最終ノードへ至る解決経路を見付けるための方法としては網羅的なものである。応用においては、そのような方法を用いることは通常非実用的で時間の浪費である。というのは前記検索は解決経路が発見されるまでに過剰な数のノードを展開（拡張）するからである。前記ノードのそのような網羅的な拡張はより多くのコンピュータメモリを浪費し、前記ノードの拡張及びそれらの点を計算するためのより多くの時間を浪費する。従って、前記盲検索方法に対する効率的な代替方法が望まれる。前記グラフにより表現される問題について利用可能な特殊な情報に基づいて、検索を集中するためにヒューリスティックが適用される。前記検索を集中するための１つの方法は、各拡張されたノードの後継ノードの数を減らすことである。前記検索を集中するための他の方法は、前記検索が、最も可能性が高いと思われるノードの方へ外向きに拡張されるように、前記ノードが拡張される順番を変更することである。ノードの拡張の順番を変更する検索アルゴリズムは順序付け検索アルゴリズムと呼ばれる。前記順序付け検索アルゴリズムは、前記最終ノードへ至る最適な経路の上に存在する確率が最も高いノードを決定するために、拡張に際しての候補である幾つかのノードをランク付けするための評価機能を使用する。前記順序付けされた検索アルゴリズムの操作において、拡張のために可能な各ノードｎｉにおいてｆ値が決定される。ここに前記ｆは、出発ノードから最終ノードへ、前記ノードｎｉを通ることを条件として、至る最小コストの経路のコストの見積もりを表す。最小のｆ値を有する各連続するノードが展開（拡張）の順番として選択される。
【０１３６】
典型的な状態空間検索アルゴリズム（それは本願発明の計画エキスパート７２により使用される）は米国特許出願第０８／３８６，３６９に提供される。種々の他の工程或いは方法が前記エキスパート計画システム７０により実行され、最適な曲げ順及び工具及びロボット運動の情報が決定される。更に、大局的運動及び微細運動の機構が、ロボット運動の経路を提案し且つ決定するために使用される。このために、米国特許出願第０８／３３８，１１５に開示される、ロボット運動を計画し且つ制御するための技術及び方法が利用される。
【０１３７】
前記種々のシステムの間及び前記エキスパート計画システムのモジュールの間で情報及びメッセージの転送を容易にするために、質問に基づく言語（ＦＥＬと呼ばれる）が使用される。このＦＥＬは最初、１９８８年にデイビッド  アランボーンにより開発されそれ以後更に改良されてきている。ＦＥＬに関連する更に詳細な情報については、カーネギーメロン大学におけるロボット研究所により提供される幾つかのユーザガイドを参照されたい。それらは例えば以下の通りである。すなわち「特徴抽出言語プログラマガイド」デイビッド  アラン  ボーン、デューン  Ｔ．ウイリアムス（１９９４年１月１４日）。「次世代コントローラにおける特徴抽出言語の使用」デイビッド  アラン  ボーン、デューン  Ｔ．ウイリアムス、ＣＰＵ−ＲＹ−ＴＲ−９０−１９。「作用的特徴交換言語」デイビッド  アラン  ボーン、ジェフ  ベイアード、ポール  エリオン及びデューンＴ．ウイリアムス、ＣＰＵ−ＲＹ−ＴＲ−９０−０６。
【０１３８】
図２４は典型的ＦＥＬ計画メッセージ１８５を示す。それは表現１８６で示されるように計画エキスパート７２から、表現１８８で示されるように運動エキスパート１８４へ送られる。このＦＥＬ計画メッセージは、計画エキスパート７２からモーションエキスパート８４へ送られる質問コマンドからなる。それは前記運動エキスパート８４へ予備的情報を与え、モーションエキスパート８４はその質問に答える。メッセージ１８５の最初のパラメータ設定部１５０は主たる動詞または命令「ＧＥＴ」１５２のすぐ後に提供され、表現「ＴＹＰＥ  ＭＥＳＳＡＧＥ」１８７及び「ＦＲＯＭ  ＰＬＡＮＮＩＮＧ」１８６及び「ＴＯ  ＭＯＶＩＮＧ」１８８及び「ＳＴＡＴＥ  ＲＥＱＵＥＳＴ」１８９を含む。表現「ＴＹＰＥ  ＣＯＳＴ」１５４は前記設定部１５０のすぐ後に提供され、以下を意味する。すなわちその質問は、前記運動エキスパートに対してなされるものであり、特定の操作がどの程度のコストになるかを前記計画エキスパートへ報告すべきことを要求する。次の表現「ＢＥＮＤＳ…」１５６は曲げ番号６の後になされる曲げ番号３を実行することはどの程度のコストであるかを尋ねる。番号７及び１は、前記曲げ６及び３のために曲げワークステーションのダイの空間へ挿入されるワークピースの面を表す。
【０１３９】
次の表現「ＡＶＥＲＡＧＥ−ＣＯＳＴ  ２．３２１」１５８は前記運動エキスパートに対して以下を通知する。すなわちこれは前記運動エキスパートにより以前に付与されたコストに基づき以前に実行された曲げに関して、１つの曲げ当たりの運動の平均コスト（ｋ−コスト）である。この場合、前記平均コストは以前になされた１つの曲げ当たり２．３２１秒である。次の表現「ＦＬＡＮＧＥ−ＢＥＦＯＲＥ−ＢＥＮＤ」１６０はクリアランスの決定をするために前記運動エキスパートにより使用される関連の最も背の高いフランジの高さ（ミリメートルの単位）を表す。表現「ＦＬＡＮＧＥ−ＡＦＴＥＲ−ＢＥＮＤ」１６２は同様に、曲げがなされた後、存在する最も背の高いフランジの高さ（ミリメートルの単位）を表す（図１８において１７．５ｍｍと記載されている）。次の表現「ＲＯＢＯＴ−ＬＯＣ」１６４は、前記運動エキスパートに対して、ロボットの位置を特定することにより部品の位置を示す（ロボットは以前の曲げの終了の際そこに取り残されるからである）。計画メッセージ１８５の最後の表現「ＢＥＮＤＭＡＰ」１６６は、以前の曲げ及び現在提案されている曲げについての工具ステージを示し且つ各曲げについて各ステージに対してワークがどの位置にあるべきかを示す。第１の数の集合は、以前の曲げに関連する。最初の値１６８は１情報は曲げ番号６に対して与えられることを示し、２番目の値１７０は曲げ番号６が実行されるところのステージを表しこの場合それはステージ番号１である。幾つかの座標が前記第１及び第２の値１６８，１７０の右側に挙げられている。最初の座標値「２５７」は、ステージの左端に対する部品の左端の位置を表し、２番目の座標値「−２５７」はステージに対する部品の左端の位置を表す。値「３５０．７」はステージに対する部品の右端の位置を表す。最後の値「３２０」はダイレールの左端に対するダイレールに沿っての前記ステージの位置を表す。前記値の各々は所定の長さの単位で表現される（例えばミリメートル或いはセンチメートル）。
【０１４０】
前記「ＢＥＮＤＭＡＰ」メッセージ（図２４）における２番目の数字の集合は、現在提案されている曲げに関連する。最初の値１７２は以下の１情報が曲げ番号３に関連することを表し、２番目の数字１７４は曲げ番号３が実行されるステージを表し、それはこの場合ステージ番号１である幾つかの座標値が前記第１及び第２の値１７２，１７４の右側に挙げられている。最初の座標値「７０」はステージの左端に対する部品の左端の位置を表し、２番目の座標値「７０」はステージに対する部品の左端の位置を表す。値「２２５」はステージに対する部品の右端の位置を表す。最後の値「３２０」はダイレールの左端に対する、ダイレールに沿ってのステージの位置を表す。上記したように各々の座標値は所定の長さの単位で表される（例えばミリメートル或いはセンチメートル）。
【０１４１】
一般的に計画メッセージ１８５は、前記運動エキスパートが、前記ワークピースを最初の位置（すなわちワークピースがそれ以前の曲げの完了の後置かれた場所）から提案されている次の曲げのための場所まで移動するためのサブ計画を生成するために必要とする全ての情報を送る。
【０１４２】
前記計画エキスパートと種々のサブエキスパートモジュールとの間の質問に基づくインタフェース構造の特徴は以下の通りである。すなわち、前記計画エキスパートがエキスパートモジュールへ質問を送るとき、それは、エキスパートモジュールがその質問に答えるための全ての背景情報をエキスパートモジュールに伝えることである。従って、エキスパートモジュールは前記情報を保存する必要はなく、単に前記計画エキスパートからの質問に答えるだけでよく、全ての関連する情報を計画エキスパートへ送付しそして保存する。
【０１４３】
図７に示した計画エキスパートシステム７０を形成するために、前記計画エキスパート７２及び各エキスパート８０，８２，８４を含む各エキスパートにはそのスタートの配置ファイルを読み込むためのコマンドが送られる。そのようなコマンドの一例は以下の通りである。
【０１４４】
（ＲＥＡＤ  （（ＴＹＰＥ  ＦＩＬＥ  （ＮＡＭＥ  ＆ＱＵＯＴ；ＣＯＮＦＩＧ．Ｓ  ２．ＦＥＬ＆ＱＵＯＴ；）））
（（ＴＹＰＥ  ＭＥＳＳＡＧＥ）  （ＦＲＯＭ  ＰＬＡＮＮＩＮＧ）  （ＴＯ  ＴＯＯＬＩＮＧ）  （ＮＡＭＥ  ＆ＱＵＯＴ；ＣＯＮＦＩＧ＆ＱＵＯＴ；）））各モジュールがそのスタートの配置ファイルを読んだ後、前記システムは設定され従ってエキスパート７２は以下のようなコマンドを用いて、任意の特定の数のエキスパートを使用することができる。
【０１４５】
（ＳＥＴ  （（ＴＹＰＥ  ＥＸＰＥＲＴＳ）  （ＥＸＰＥＲＴＳ  （ＴＯＯＬＩＮＧ  ＧＲＡＳＰＩＮＧ  ＭＯＶＩＮＧ））））
前記計画エキスパートにより使用されるエキスパートが特定された後、部品設計データが必要に応じて、前記曲げモデルファイルから各モジュールへ読み込まれ、前記計画エキスパート７２が計画工程を開始する。
【０１４６】
表１のテーブルは、前記計画エキスパート７２がエキスパート計画システムの他のモジュール（それは各エキスパートを含む）と会話する際に当該計画エキスパート７２により特定される幾つかのコマンドを列挙する。同様のコマンドが前記高知能製造システムとエキスパート計画システムアプリケーションとの間並びに前記サーバとステーションモジュールとの間においてやり取りされる。それは以下に更に詳細に説明される。
【０１４７】
【表１】
0003549842.tif 000002
表２のテーブルは前記計画エキスパート７２により、前記ステーションモジュール或いはワークステーションに存在するコントローラ或いはシーケンサ装置の実行のために特定される幾つかのコマンドを列挙する。これらのＦＥＬコマンドは通信ネットワーク２６を介して、前記設備３８に存在するロケーション１０，１２，１４，…，２０のいずれかに送られる。
【０１４８】
【表２】
0003549842.tif 000003
前記「読み込み」コマンドはモジュールに対して計画のために必要な所定のファイル（そのファイルは製造される部品設計の表現である）を読み込み且つそれ自体をその部品設計に応じて配列することを指令するために使用される。前記「設定」コマンドを用いることにより、種々のモジュールの機能が設定される。それは例えばいかに情報を表示するか或いは他のモジュールといかにインタフェースするか等である。前記「表示」コマンドは、種々のモジュールのデータをユーザに表示するために使用される。前記データは、例えば提案された曲げ順における種々のコスト或いは子となる曲げを表現する前記Ａ＊アルゴリズムの種々のノードである。
【０１４９】
図８乃至２０を参照して、この発明のエキスパート計画システムの種々の特徴及び側面が以下に説明される。前記エキスパート計画システム７０の特徴及び前記高知能製造システム６０の機能は、前記サーバモジュール３２にて或いは、前記板金製造設備３８全体に設けられている任意のロケーション１０，１２，１４，…，２０からアクセスされ且つ実行される。オペレータが前記エキスパート計画システムを実行するところの場所に応じて、前記サーバモジュール３２及びデータベース３０並びに各ステーションモジュールの間で交換される種々のデータ及び／又はメッセージは異なる。これは図６を参照して上に示した。以下に説明される実施例では、前記エキスパート計画システム７０及び高知能製造システム６０はウインドウズを基本としたアプリケーションとして実行され、前記サーバモジュール３２と前記設備３８における各ロケーション１０，１２，１４，…，２０との間にはサーバ−クライアントの関係が存在する。
【０１５０】
図８は、オペレータにより実行される種々のプロセス或いは操作を示し、それはロボットに基づく機械を有するステーションにおいて板金部品を製造するための曲げ計画を作成する。図８及び関連する図面は、前記エキスパート計画システム７０により実行される種々の工程及び、これと前記高知能製造システム６０により実行される工程及び操作との関係を示す。
【０１５１】
前記サーバモジュール３２及びそのシステムのアプリケーションがステップＳ９８で初期化された後、曲げオペレータは顧客の明細に基づいてステップＳ１００で部品の曲げモデルを作成し或いは移入する。上記したように、顧客は部品の２次元及び／又は３次元図面を提供しその図面は移入され或いは、例えば図４を参照して上記したプロセス及び操作に応じて、オペレータが前記高知能製造システムを用いて前記部品の曲げモデル（前記部品の２次元及び／又は３次元表現を含む）を作成する。この曲げモデルのファイル（それは図１２に示される前記部品の３次元表現を含む）は、前記エキスパート計画システムからの後のアクセス及び読み込みのためにデータベース３０にへ格納される。上記したように、他の部品情報及び製造情報もまた前記曲げモデルファイルに格納される。
【０１５２】
前記部品の曲げモデルを作成した後、オペレータは、前記サーバモジュール或いはステーションモジュールの表示スクリーン上のアイコンを選択し或いはコマンドを入力することにより、ステップＳ１０４でエキスパート計画システムを選択し且つ起動する。
【０１５３】
この発明の１つの側面によれば、オペレータは高知能製造システムの操作環境から前記エキスパート計画システムを、（前記サーバモジュール３２或いは前記ロケーション１０，１２，１４，…，２０のいずれかのステーションモジュールから）選択することができる。例えば図１２に示すように前記高知能製造システムアプリケーション（図において「ＢｅｎｄＣＡＤ」と記載されている）はウインドウズに基づく表示スクリーンを提供し、それは作動コマンド２１８（すなわち「ＤＲ．ＡＢＥ」）及び／又はアイコン２２０（例えば帽子をかぶった人間）を含みそれらのコマンド或いはアイコンが前記エキスパート計画システムを選択し且つ起動する。前記エキスパート計画システムが選択されるとき、それはサーバ・モジュール３２において起動され、そして前記オペレータの場所のスクリーンには他のウインドウズに基づく表示スクリーン（例えば図１３に示されるもの）が表示される。この表示スクリーンは前記部品の２次元の表現を含み、そこにおいて各曲げ線は同定のための番号（例えば１，２，３，…等）により特定される。種々の他の情報及び機能のキーが前記エキスパート計画ウインドウ表示に表示される（それらは以下により詳細に説明される）。
【０１５４】
仮にオペレータが前記曲げ計画を作成するために前記エキスパート計画システムを運転し或いは実行することを決定する場合、ステップＳ１０６で、表示スクリーン上の「スタート」機能キー或いはボタンを選択し或いはコマンドを入力する（それらは例えば図１３に示される）ことにより前記エキスパート計画システムの種々のエキスパートモジュールが実行される。前記エキスパート計画システム７０が運転されると、関連する曲げモデルファイルがデータベース３０から読み込まれ、一連のプロセス及び工程が前記エキスパートモジュールにより実行され、提案曲げ計画が作成される。前記エキスパート計画システム７０は米国特許出願第０８／３８６，３６９に開示された特徴及び側面に基づいて曲げ計画を作成するように構成されている。例えば、前記曲げモデルデータファイルを読み込んだ後、前記エキスパート計画システム７０は「明らかな」拘束を、前記部品の幾何学形状に基づいて及び、１つもしくはそれ以上の曲げヒューリスティックに基づいて決定する。しかる後、前記エキスパートモジュールの各々に質問をすることにより、種々のパンチ及びダイ工具及びロボットのグリッパが前記幾何学的拘束に基づいて選択される。同時に、工具及びリポジションのコストが予想され或いは評価される。しかる後、検索の工程が、例えば状態空間検索アルゴリズムに基づいて実行され、曲げ順が決定され且つ、同時に実際の工具ステージの配置及びリポジションの情報が作成される。そのような工程を行った後、曲げ順及び工具ステージの配置が最終的に決定され、しかる後ロボットの運動或いは（例えば前記プレスブレーキにおける工具の設定を容易にするために）必要なバックゲージの運動が作成される。前記ロボットの運動及び他の必要な情報を最終的に決定した後、前記エキスパート計画システムは前記曲げ計画データを最終的に決定しそれを例えばＦＥＬコマンドを介して前記高知能製造システム６０及び／又はデータベース３０へ送りそこでそれらのデータは格納される。前記高知能製造システムとエキスパート計画システムとの間での前記ＦＥＬメッセージの転送についての詳細な説明は以下に提供される。
【０１５５】
図１４に示されるように、種々のエキスパートモジュールが実行されるとき、前記エキスパート計画システムのウインドー表示はユーザに対して以下の内容を表示する。すなわち、実行されている運転の経過時間（例えば「時間」情報ブロック参照）及び、前記エキスパートモジュールの各々の状態及び、前記状態空間検索プロセス或いは他のプロセスの状態及び、検索／解答経路（例えば図１４における表示の下側部分に提供される大きな情報ウインドウの内部参照）等である。前記各状態についての情報に基づき、オペレータはウインドウ表示上の適宜のキー（例えば機能キー「停止」、「再スタート」及び「中止」）を選択することにより前記エキスパート計画システムの実行を停止し或いは再スタートし或いは中止する。これらの機能キーは前記エキスパート計画システムが実行されているとき何時でもオペレータにより選択され得る。
【０１５６】
更に、図１４に示すように、ウインドウの表示は以下を表示する。すなわち、予想されるステージ・コスト及びリポジション・コスト（例えば「予想ステージ」及び「予想リポ」情報ブロック参照）及び、前記エキスパート計画システムにより選択されたグリッパ及びリポジショングリッパ（例えば「選択グリッパ」及び「選択リポグリッパ」情報ブロック参照）等である。これらの情報はそれらの各項目が前記エキスパート計画システムの実行の間に設定され或いは決定される都度表示される。更に、他の情報が、前記エキスパート計画システムが実行されている際表示される。例えば、各工具ステージ及びグリッパのリポジションに付随する予め定められた操作コストがオペレータに対して表示され指示される（例えば「ステージ・コスト」及び「リポコスト」情報ブロック参照）。前記状態空間検索プロセスに関連するオープン・ノード（開放ノード：将来拡張される可能性のあるノード）の数及びクローズド・ノード（閉鎖ノード：将来拡張される可能性のないノード或いは無限大におけるノード）の数がまた前記検索中にスクリーン上にリアルタイムで表示される（例えば「開ノード」及び「閉ノード」情報ブロック参照）。最終的な提案曲げプランが前記エキスパート計画システムにより完成されたとき、メッセージが前記表示スクリーン上に提供され（例えば図１４におけるメッセージ「計画成功」参照）、オペレータに対して、前記エキスパート計画システムにより、最終的曲げプラン或いは解答が決定されたことを知らせる。他のメッセージがまた提供され、エラー或いは前記エキスパート計画システムにより解答が発見されなかった場合を知らせる（例えば「エラー」或いは「解答発見できず」）。
【０１５７】
ステップＳ１０８で、前記曲げオペレータ或いはプログラマは、提案された曲げ計画（前記エキスパート計画システムにより選択された前記曲げ順及び工具及びロボット運動を含む）を観察する。例えば、前記高知能製造システムアプリケーション・ウインドウへ戻ることにより及び／又は適宜のアイコン或いは機能コマンドを選択することにより、オペレータは前記エキスパート計画システムの実行の結果を観察することができる。種々の機能コマンド或いはアイコンが提供され、（前記高知能製造システム或いはエキスパート計画システムについての表示スクリーンの中で）オペレータが、選択された曲げ順及び工具或いは工具ステージ配置を観察することを可能とする。機能コマンドがまた提供され、オペレータが提案されたロボット運動及びリポジションを含む曲げ計画のシミュレーションを観察することを可能とする。この発明の１つの側面によれば、前記高知能製造システム及びエキスパート計画システムのインタフェース・スクリーンはユーザに対して同時に表示され（例えばカスケード形式或いはオーバラップ形式で）オペレータがそのアプリケーションの中で種々の機能を選択し且つ操作することを可能とする。
【０１５８】
上記したようにオペレータは、前記高知能製造システムアプリケーション・ウインドウを通して適宜のアイコンを選択し或いは適宜の機能コマンドを入力／選択することにより前記エキスパート計画システムにより決定された結果としての曲げ順及び工具及びロボット運動を観察する。或いは図１４に示すように、前記エキスパート計画システムウインドウ表示に他のアクションキー或いはボタンが設けられ、オペレータが前記エキスパート計画システムウインドウ表示から計画システムの結果に直接的にアクセスし且つそれを観察することを可能とする。非限定的な例として、「曲げ順表示」コマンドボタンが提供され（例えば図１４参照）、オペレータは前記エキスパート計画システムにより選択された曲げ順を観察することができる。前記「曲げ順表示」コマンドが選択されるとき、図１５に示すような曲げ順ウインドウが前記オペレータのスクリーン上に提供され、提案された曲げ順をオペレータに対して表示する。オペレータが前記曲げ順ウインドウにおいて表示された各曲げを選択し或いは強調するとき、前記ワークピース及びパンチ工具の断面図が表示され、選択された曲げ工程の直前のワークピース及び工具の向き及び、当該曲げ工程の直後のそれらの向きが表示される（これらの断面図は図１５に示されるようにスクリーンの右側に提供される）。
【０１５９】
更に、前記エキスパート計画システムウインドウ表示における「工具表示」コマンドキー（図１４参照）を選択することにより、図１６に示されるような工具取付設定ウインドウ表示（或いは工具組み付けウインドウ表示又は工具セットアップウインドウ表示）がオペレータに対して提供され、前記エキスパート計画システムにより選択された工具及び工具ステージ配置が示される。図１６に示されるように、工具取付設定ウインドウ表示は、前記プレスブレーキにおいて設定される工具ステージの２次元表示と前記プレスブレーキの各ステージに存在するパンチ及びダイ工具の断面図を提供する。これらの工具の断面図は、スクリーン上でオペレータにより、前記表示されたプレスブレーキの工具ステージが選択される都度、連続的に表示される。再び前記種々の表示スクリーン（それは前記曲げ順ウインドウ表示及び工具組立ウインドウ表示を含む）は他のアプリケーションの表示と共に同時に表示され、オペレータが１つのスクリーン或いはアプリケーションから他のものへ自由に移動することを可能とする。
【０１６０】
更に、前記エキスパート計画システムにより選択されたロボット運動を確認するために、前記ロボットグリッパの運動及び曲げ操作のシミュレーション並びに前記リポジショングリッパのシミュレーションがユーザに対して提供される。図１７は典型的なロボット運動シミュレーションウインドウを示し、それは前記ウインドウ表示の１つにおけるアイコンの選択或いは機能コマンドの入力に応じて表示される。前記ロボット・シミュレーション・ウインドウは前記プレスブレーキ及びロボットアーム及びグリッパ及びリポジショングリッパの３次元表示を含む。オペレータによるコマンドの入力に基づいて（例えばマウス装置のダブルクリック或いはキーボード上の所定のキーの押圧により）、前記エキスパートシステムにより決定された全般的曲げ順及びロボット運動がスクリーン上に動的に表示され、リアルタイムで種々の機械の運動をシミュレートする。前記シミュレーションは曲げ順の全体について提供されることもでき或いは（オペレータにより入力されるコマンドに対応して）前記曲げ順における各曲げに関連する動作について提供されることもできる。前記表示はまた、材料搬入搬出装置の表示を含むことができ且つ前記ロボットと前記材料操作装置或いはリポジショングリッパ（リポジションが必要である場合には）との相互作用の表示を含むこともできる。更に前記シミュレーション・ウインドウ表示はまた前記バックゲージ部材及び／又はセンサの３次元表示を含むこともできる。前記バックゲージは、前記ロボットがプレスブレーキに対してワークピースを整列させることを容易にする。前記曲げ順におけるこれらの部材の間の移動或いは作動のシミュレーションがまた提供される。
【０１６１】
前記エキスパート計画システムにより決定された前記曲げ計画の結果を観察した後、オペレータは図８のステップＳ１１０で、その結果を保存するか否か、或いはその結果をデータベース３０における関連する曲げモデルファイルの中に入れるかどうかを決定する。オペレータが、前記エキスパート計画システムにより作成された曲げプランに満足する場合、オペレータは前記結果を保存し、ステップＳ１１８で前記曲げモデル・データファイルを更新する。前記結果は、表示された機能キー或いはボタンを選択し或いはコマンドを入力することにより保存される（例えば「更新」機能キー参照）。前記キー或いはボタンは前記エキスパート計画システムウインドウを含む任意のアプリケーションウインドウの中に存在する。しかる後、前記曲げ計画は、ステップＳ１２２で、前記最終的曲げ計画情報を前記データベースから例えば前記曲げワークステーション１８へダウンロードすることにより実行される。そして前記機械が前記決定された曲げ計画に基づいて組立てられ（設定され）制御される。更に、オペレータは適宜の作動キー（例えば図１４における「印刷」キー）を選択することにより前記最終的曲げ計画に基づく作業設定シートを印刷する。従って前記シートは他人により検査され或いは工場内の種々の場所に分配され得る。
【０１６２】
オペレータが、前記エキスパート計画システムの結論に満足しない場合、ステップＳ１１４で結果は適宜のコマンドを入力することにより或いは機能キー（例えば図１４に示された「取消」機能キー）を選択することにより取り消される。前記オペレータはそして１つ或いはそれ以上の拘束を入力し或いは曲げモデルファイルを修正することにより、前記エキスパート計画システムを再び起動する。以下に更に詳細に説明するように、オペレータは前記エキスパート計画システムが曲げ計画を作成する方法を拘束し或いは制御するための拘束（或いは拘束条件）を入力することができる。例えばオペレータは、特定の順番或いは方法で実行されなければならないところの所望の全体曲げ順或いは、１つ或いはそれ以上の曲げ工程を入力する。更に、特定の工具がオペレータにより定義され、前記エキスパート計画システムにより行われる工具選択の数を制限する。この機能により、オペレータは特定のアプリケーション及び／又は顧客の明細に対して前記エキスパート計画システムを修正し或いは適合させることができる。
【０１６３】
この発明の他の側面によれば、前記エキスパート計画システムは、オペレータにより入力された１つ或いはそれ以上の拘束に基づいて、ロボットを有する曲げステーションのための曲げ計画を作成するために使用される。これらの拘束は例えば曲げ順拘束と工具選択の拘束とを含む。拘束マネージャが提供され、自動的に拘束語句を作成し、かつ、オペレータにより入力された情報に基づいて複数の拘束の中に存在する矛盾を解決する。前記拘束マネージャは１つの独立した実行可能なモジュールとして、或いは前記サーバモジュール３２における前記高知能製造システムの内部のサブシステムとして提供される。生成された拘束語句は、前記種々のエキスパートモジュールが実行されるときエキスパート計画システムへ渡される。前記拘束マネージャのより詳細な説明及びその拘束語句が、例えば前記ＦＥＬコマンドを用いて前記エキスパート計画システムへ渡される方法は図２１乃至２３を参照して以下に説明される。
【０１６４】
図９を参照するに、オペレータが入力する１つもしくはそれ以上の拘束条件により、ロボット付きワークステーションのための曲げ計画を作成するために実行される種々のプロセス及び操作のフローチャートの典型的な例が提供される。全般的なプロセスは図８を参照して上記に記載されたそれと類似している。すなわち、ステップＳ１２８で、システムのソフトウエア及びサーバモジュール３２が初期化され、ステップＳ１３０で前記部品の曲げモデルが作成され或いはデータベース３０へ導入される。再び、前記高知能製造システムに関連して上記に説明した種々の工程及び操作が利用され、前記部品の曲げモデル（それは前記顧客の部品の２次元及び３次元表現を含む。）が作成される。しかる後、ステップＳ１３４でオペレータは前記曲げ計画において使用される１つもしくはそれ以上の拘束条件を入力する。オペレータはこれらの拘束条件を、前記高知能製造システム操作環境から入力する。例えば、図１２の高知能製造システムウインドウ表示から、オペレータは図１５に示される曲げ順入力ウインドウを起動し且つ表示する（例えば適宜のコマンドを入力し或いはアイコンを選択することにより）。そして前記曲げ順入力ウインドウにより、前記部品に対する所望の曲げ順が入力される。他の拘束情報が前記曲げ順と共に或いはそれと別個に入力される。例えば、図１９に示されるような、工具対話ウインドウを表示するように選択することにより、オペレータは前記曲げ計画において使用される所望のパンチ或いはダイの工具を選択し且つ指示することができる。或いは、前記エキスパート計画システムを選択することにより或いはこれを、前記高知能製造システムウインドウ表示から起動することにより、前記曲げ順及び／又は工具拘束情報が種々の対話ウインドウ及び前記エキスパート計画システムウインドウ表示の機能キーを介して直接入力される（例えば、図１３のウインドウ表示の左上の角を参照）。
【０１６５】
前記オペレータが前記拘束情報を、前記高知能製造システム操作環境から入力した場合、前記エキスパート計画システムは、ステップＳ１３８で選択され（例えば適宜のコマンドを入力し或いはアイコンを選択することにより）前記エキスパート計画システムが起動される。説明のために、オペレータは曲げ順拘束情報のみを入力すると仮定する。すると前記拘束マネージャにより作成された関連する拘束語句が前記エキスパート計画システムへ渡され続いてオペレータに表示される。図１８は前記曲げ順拘束語句を含む（例えば「ＢＥＮＤＣＡＤの曲げ順を使用」と題した情報ブロック参照）エキスパート計画システムウインドウ表示の例を示す。図１８の表示では、前記拘束マネージャにより作成された拘束語句は以下の通りである。
【０１６６】
＊（（２  ５））＊９＊（（１  ６））＊７＊３＊１０＊４＊８＊
前記拘束語句において使用される曲げ同定番号（例えば２，５，９，１，６等）は前記エキスパート計画システムウインドウ表示に表示される前記部品の２次元表現において示されたそれに対応する。スクリーン上の前記拘束語句を分析することにより、オペレータはスクリーン上で直接に前記拘束語句を編集し或いは修正すべく決定し、或いは前記作成された拘束語句を取消し異なる拘束語句を入力する。図１８に示されるように、前記エキスパート計画システムウインドウ表示は、前記拘束語句を入力し及び／又は修正するための種々のキー（例えば「削除」「追加」「クリア」等）を含む。前記拘束語句を修正し或いは前記拘束マネージャにより作成された拘束語句に満足した後、オペレータは、ステップＳ１４２で、前記拘束語句が前記エキスパート計画システムにより使用されるべきであることを示すために、その拘束語句を選択する。前記拘束語句の確認は、種々の方法で行われそれはスクリーン上に表示された拘束語句をマウスでダブルクリックすること或いは適宜のコマンドを入力することを含む。図１８に示されるように、前記曲げ順拘束語句の使用の確認は、前記表示された拘束語句の横に「Ｘ」を提供することによりユーザに対して提供される。
【０１６７】
ステップＳ１４６で、オペレータは、適宜のコマンド（例えば図１８の「スタート」）を入力し或いは選択することにより前記エキスパート計画システムのエキスパートモジュールの運転或いは実行を行う。前記エキスパート計画システムはそこで、前記ユーザにより入力された拘束語句或いは複数の拘束語句に基づいて、曲げ計画（それは最終的曲げ順及び工具選択及びステージの配置及びロボットの運動を含む）を作成する。結果としての最終曲げ計画及び前記エキスパート計画システムにより行われた選択は、ステップＳ１５０で上記したと同様の態様でオペレータにより観察される。前記エキスパート計画システムにより選択された前記曲げ順及び工具及びロボット運動を観察し且つ確認した後、オペレータはステップＳ１５４でその結果を保存すべきかどうかを決定する。オペレータがその結果を保存すると決定する場合、ステップＳ１５８で、前記データベースは当該最終的曲げ計画情報により更新され、その後ステップＳ１６２で曲げ計画が実行される。再び最終的曲げ計画は前記データベース３０中に、前記部品に関連する曲げモデルファイルの一部として格納される。オペレータが前記ステップＳ１５４で結果に満足しない場合、ステップＳ１５６で前記結果は取消されオペレータが前記エキスパート計画システムにより使用される拘束条件を修正し或いは入力する。そしてしかる後、前記エキスパートシステムのエキスパートモジュールがステップＳ１４６で再び実行される。満足すべき曲げ計画が前記エキスパート計画システムにより作成されるまで、更なる改定及び修正がユーザにより行われる。
【０１６８】
本発明の高知能製造システム及びエキスパート計画システムは、オペレータにより選択的に修正され、特定の機械及び／又はアプリケーションに適合させられる。すなわち、前記高知能製造システム及びエキスパート計画システムは、前記ロボットに基づく機械を有するシステムを用いるだけでなく、ロボットを用いない曲げ操作に対する高知能情報及びエキスパート情報を提供するように適合され得る。図１０及び図１１は、マニュアル操作による曲げ加工（それはロボット運動或いはロボット把持に関する情報を必要としない）のための曲げ計画を生成するためにオペレータにより実行される工程及び操作の典型的フローチャートを示す。図１０は、オペレータにより入力される拘束条件が存在しない場合のそのような操作に関連する論理フローの具体例を示し、図１１は、前記と同様の状況における他の事例（すなわち曲げ計画に対してオペレータが入力する拘束が存在する場合）を示す。
【０１６９】
図１０に示すように、ステップＳ１６８で前記サーバモジュール３２及びアプリケーションを初期化した後、前記パーツの曲げモデルがステップＳ１７２で作成され或いは移入される。前記パーツの曲げモデルは前記高知能製造システム操作環境の内部で作成され、当該曲げモデルは、図１２に示されるような部品の３次元表現を含む。そしてステップＳ１７６で、オペレータはどのエキスパートモジュールを実行するかを選択する。前記エキスパートモジュールの選択は構成ファイル（コンフィグレーション・ファイル）或いは環境ファイルを編集することにより、或いは図形ユーザインタフェースの使用により行われる。前記図形ユーザインタフェースはオペレータがどのエキスパートモジュールを起動するかを選択し或いは指示するのを支援する。選択されたエキスパートモジュールに基づいて、ＦＥＬメッセージが前記エキスパート計画システムへ送られ、どのエキスパートモジュールが起動されるべきかを知らせる。前記エキスパート計画システムに対して前記エキスパートモジュールが指示され或いは選択される方法のより詳細な議論は以下に与えられる。
【０１７０】
オペレータがロボットを持たないワークステーションについての曲げ計画を作成しようとする場合、オペレータはどのエキスパートが起動されるべきか（例えば計画エキスパート７２及び工具エキスパート８０）及びどのエキスパートが起動されるべきでないか（例えば把持エキスパート８２及び運動エキスパート８４）を選択的に指示する。従って必要な情報のみが前記エキスパート計画システム７０により作成される。更に、前記ロボットを有するアプリケーション或いはロボットを有さないアプリケーションについて、エキスパート計画システムは特定の情報（例えば曲げ順或いは工具情報）のみを作成するべきであるとオペレータが希望する場合、起動すべきである特定のエキスパートモジュールのみがオペレータにより選択される。前記エキスパートモジュールの状態は、ステップＳ１７８でオペレータによりそれが選択され且つ起動されたとき前記エキスパート計画システムへ送られる。前記エキスパート計画システムの選択及び起動は適宜のアクションコマンド（例えば「ＤＲ．ＡＢＥ」）を入力することにより或いは前記高知能製造システムウインドウ表示における適宜のアイコン（例えば帽子をかぶった人間）を選択することにより行われる。そしてこれは図１２を参照して上記に説明された。
【０１７１】
エキスパート計画システムが選択された後、オペレータはステップＳ１８２で例えば前記エキスパート計画システムウインドウ表示（例えば図１３参照）の「スタート」コマンドキーをダブルクリックすることにより、選択されたエキスパートモジュールを運転し或いは実行する。前記選択されたエキスパートモジュールの実行の間に、前記実行についての現在運転時間及び前記各選択されたエキスパートモジュールの状態を含む各種の情報がオペレータに対して提供される。これらの現状情報に基づいて、オペレータは前記エキスパートモジュールの実行を、前記ウインドウ表示上の適宜のキー（例えば「ストップ」「再スタート」及び「中止」のキー）を選択することにより停止或いは再スタート或いは中止を決定する。これらの機能キーは前記エキスパート計画システムが実行されているときいつでもオペレータにより選択される。
【０１７２】
ステップＳ１８６で、全ての選択されたエキスパートモジュールが実行を完了したとき、オペレータは前記エキスパート計画システムの結果を観察する。上記したように、オペレータは曲げ順ウインドウ或いは工具ステージ配置ウインドウ（例えば図１５及び図１６参照）を表示し、前記エキスパート計画システムにより決定された曲げ順及び工具セットアップ（或いは工具設定、工具組み付け、工具取付）を観察する。更に、前記曲げ順のシミュレーション（それはロボットの運動或いはロボットによる板金の操作を含まない）が起動され、それは図１７に関連して上に説明したのと同様の方法でオペレータに対して提供される。その場合、前記ロボットのアーム及びグリッパは図１７における３次元スクリーンのシミュレーションから削除され、前記プレスブレーキに対するワークピースの運動及び位置決めは、自由空間に前記ワークピースを浮遊させることで表示され、或いはワークピースを３次元表示されたオペレータが操作することで表示される。前記結果を観察した後、オペレータはステップＳ１９０でその結果を保存するか或いは取り消すかを決定する。オペレータがその結果を保存する場合は「更新」機能キーが選択され、前記データベース３０が更新され、且つ、前記曲げ計画情報はステップＳ１９４で前記関連する曲げモデルファイルと共に格納される。しかる後、前記曲げ計画及び必要な曲げ動作が、前記曲げ計画情報をデータベース３０からダウンロードすることにより或いは印刷された作業設定シートを前記ワークステーションへ配布することにより前記ワークステーションにおけるオペレータによりステップＳ１９６で実行される。
【０１７３】
オペレータが結果は満足でないと判断する場合、ステップＳ１９２で前記エキスパート計画システムウインドウ表示から「取消」の機能キーを選択することによりその結果は取り消される。そしてオペレータは新しい拘束条件を入力し或いは以前に使用された拘束条件を修正し、ステップＳ１８２で、選択されたエキスパートモジュールを再び実行する。満足な曲げ計画が前記エキスパート計画システムにより作成されるまで、前記エキスパートモジュールの運転が引き続きオペレータにより実行される。再びこの発明の種々の表示スクリーンがオペレータにより利用され、オペレータはこれにより前記エキスパート計画システムにより選択された曲げ順及び工具等を確認することができる。
【０１７４】
図１１は、１つ或いはそれ以上の、オペレータにより入力された拘束条件に基づいて、ロボットを有しないワークステーションについての曲げ計画を作成するために実行される工程及び操作の典型的フローチャートである。上記プロセスと同様に、前記サーバモジュール３２及びシステムアプリケーションはステップＳ２００において初期化され、次に前記部品の曲げモデルがステップＳ２０４で、前記高知能製造システムの種々の機能を介して作成され或いは前記データベースへ移入される。ステップＳ２０８で、種々のエキスパートモジュールの状態が、前記ワークステーションにおいて実行される曲げ加工及び機械に基づいてオペレータにより選択される。例えばマニュアル方式のプレスブレーキが前記曲げワークステーション１８に提供される場合、ロボット運動計画に関連する種々のエキスパートモジュール（例えば保持／把持エキスパート８２及び運動エキスパート８４）は活性化されず或いは選択されず、曲げ計画を作成するために必要とされる他のエキスパートモジュール（例えば計画エキスパート７２及び工具エキスパート８０）はオペレータにより活性化され或いは選択される。前記エキスパート計画システム７０のオープンアーキテクチャ或いはモジュール式設計のため、オペレータは特定のアプリケーション或いは曲げ環境に対して前記エキスパート計画システムを適合させ或いは修正する柔軟性を与えられる。前記エキスパートモジュールの選択は以下に詳細に説明されるように、ＦＥＬコマンドを用いて前記エキスパート計画システムへ伝えられる。
【０１７５】
前記エキスパートモジュールを選択した後、ステップＳ２１２で、前記エキスパート計画システムを拘束するために、オペレータにより１つ或いはそれ以上の拘束条件が入力される。これらの拘束条件は、オペレータにより入力される完全な曲げ順或いは曲げ順の一部に基づくものであり或いは、１つ或いはそれ以上の曲げ或いは１群の曲げに関連する拘束条件である。図１５に示されるような曲げ順入力ウインドウが提供され、オペレータがそのような曲げに対する拘束条件を入力するのを支援する。更に上記したように、そのような曲げ順に対する拘束条件は、前記エキスパート計画システムウインドウ表示を通して直接入力される。前記曲げに関連する拘束条件を入力すると共にオペレータは、曲げ加工において使用される特定の工具を選択することにより、工具についての拘束条件を入力することもできる。そのような工具についての拘束条件の入力及び選択は、図１９に示されるような工具対話ウインドウを介して実行される。それは、前記高知能製造システムウインドウ表示から、適宜の作業コマンドを入力し或いはアイコンを選択することによりアクセス可能である。
【０１７６】
図１９に示されるように、前記工具対話ウインドウ表示は、工具タイプを表現するアイコン（例えばダイ及びダイホルダ、パンチ、パンチホルダ及びレール）及び、オペレータにより選択された工具タイプに関連する工具形状を表現するアイコンを含む。これらのアイコンは連続的に表示され、利用可能な工具のテーブルが、最終的に、前記オペレータの工具タイプ及び工具形状の選択に基づいて表示される。図１９の例において、「パンチ」のアイコンが工具タイプとして選択され、これにより種々のパンチ工具タイプを表現する複数の工具タイプアイコンが前記画面上に表示される。オペレータによる「サッシュパンチ」のアイコンの選択に基づいて、結果としての利用可能なサッシュパンチ工具が下の方の情報ウインドウに表示される。図１９に表示された実施例において、分割された工具（すなわち、プレスブレーキ上での複数の工具ステージ配置を促進するために、異なったサイズの部分に分割されて製造された工具で、選択された工具タイプに関連した工具ライブラリから利用可能なもの）が表示され、前記工具の選択を促進する。前記工具は次にテーブルにおいて列挙された部分を強調し或いはダブルクリックすることにより選択される。前記工具の断面前方図及び後方図も図１９に示されるように、前記工具対話ウインドウに表示され、オペレータによる工具拘束条件の選択を促進する。「自動選択」機能もまた前記工具対話ウインドウに設けられる。これによれば、前記表示されたテーブルに表示された或いは列挙された複数の工具は、前記部品の厚さ或いは実行される曲げの内側半径に基づいて選択され或いは限定される。
【０１７７】
適宜の拘束条件が選択され或いは入力された後、前記エキスパート計画システムは適宜の機能コマンド（例えば「ＤＥ．ＡＢＥ」）或いはツールアイコン（例えば帽子をかぶった人間）を前記高知能製造システムウインドウ表示（例えば図１２参照）から入力することにより選択され或いは活性化される。前記エキスパート計画システムが、ステップＳ２１６で選択されるとき、前記拘束マネージャにより上記したように拘束語句が作成される。前記オペレータにより入力された曲げ順に関連する拘束語句及び／又はオペレータにより選択された工具に関する拘束語句は前記エキスパート計画システムへ転送され或いは、システムが実行されるとき前記エキスパート計画システムにより読み取られる構成ファイル或いはセットアップファイルに提供される。しかし、前記曲げ拘束条件は、拘束語句により伝えられ且つ前記工具拘束条件はどの工具が選択されるかを示す工具データにより伝えられるのが好ましい。上記したように、前記エキスパート計画システムウインドウ表示は入力された拘束条件をオペレータに対して示す。オペレータはステップＳ２２０で、前記作成された拘束語句を適宜のコマンドを入力することにより或いは情報の上をダブルクリックすることにより修正し及び／又は選択する。例えば、図２０に示されるように、曲げ順に関する拘束及び工具選択に関する拘束が選択され、このような選択を確認するためにＸの印が表示される。（例えば、「ＢＥＮＤＣＡＤの曲げ順を使用」と記載されたウインドウに隣接する「Ｘ」及び「ＢＥＮＤＣＡＤの工具組付けを使用」と記載されたウインドウに隣接する「Ｘ」を見よ。）
しかる後、ステップＳ２２４で、前記エキスパート計画システムウインドウ表示の例えば「スタート」コマンドを選択し或いは押すことにより前記選択されたエキスパートモジュールが実行される。例えば前記計画エキスパート７２及び工具エキスパート８０のような選択されたエキスパートモジュールが従って、前記曲げ順或いはユーザにより入力された工具拘束条件に基づいて最終的曲げ計画を作成する。
【０１７８】
上記したように、エキスパート計画システムウインドウ表示は、オペレータに対してリアルタイムの情報を提供し、選択されたエキスパートモジュールの状態及び操作の運転時間を示す。選択されたエキスパートモジュールが実行を完了すると、計画が完了した旨の表示がオペレータに対してなされ（例えば「計画成功」のごときメッセージが提供される）、オペレータがステップＳ２２８でその結果を観察する。解法又は解答が見付からない或いは運転時間エラーが発生した場合、これを示すためのメッセージがオペレータに対して表示される。更に、前記ウインドウ表示に提供される種々の状態情報をモニタすることにより、オペレータは上記したように、前記エキスパートモジュールの実行を停止し或いは再スタートし或いは中止することを決定する。
【０１７９】
ステップＳ２２８で、成功した計画運転の結果が、前記ウインドウ表示上の例えば「曲げ順表示」或いは「工具表示」のコマンドボタン（図２０参照）を選択することによりオペレータに対し表示され、オペレータは前記曲げ計画の提案曲げ順及び工具ステージ配置を観察する。更に、（ロボット運動を伴わない）曲げ計画のシミュレーションが活性化され、図１７を参照して上記したと同様の態様でオペレータに対して提供される。再び、図１７における３次元表現シミュレーションから前記ロボットアーム及びグリッパは削除され、前記プレスブレーキに対するワークピースの運動及び位置決めは、ワークピースを自由空間で浮遊させ或いはワークピースを３次元表現のオペレータが操作することを示すことにより示される。
【０１８０】
オペレータが、ステップＳ２３２でその結果を保存することを決定する場合、前記エキスパート計画システムにより決定された最終的な曲げ計画は、ステップＳ２３６で、例えば前記ウインドウ表示の上の「更新」機能ボタンを選択することにより前記データベースに格納される。しかる後上記したように、ステップＳ２４０で、最終的曲げ計画が前記曲げワークステーション１８で実行される。
【０１８１】
ステップＳ２３２で、オペレータが前記結果を保存しないことを決定する場合には、ステップＳ２３４で前記結果は取り消され、オペレータは、前記拘束条件を変更し及び／又は新しい拘束情報を入力し、ステップＳ２２４で前記エキスパート計画システムを再び実行する。ステップＳ２３４で、より満足できる結果が得られるようにオペレータがエキスパートモジュールの選択を変更することも可能である。
【０１８２】
図２１乃至２３を参照するに、オペレータにより入力された拘束条件に基づいて拘束語句を作成するために実行される工程及び操作に関連する種々の特徴或いは側面が提供される。上記したように、前記オペレータにより入力された拘束に基づいて拘束語句を作成するために拘束マネージャが提供される。前記拘束マネージャはまた、複数の拘束条件の間の矛盾を解決し、前記エキスパート計画システムのエキスパートモジュールに対して種々の拘束情報を提供する。前記拘束マネージャは、独立に実行可能なアプリケーションとして提供され或いは前記サーバモジュール３２の中のモジュールとして提供され或いは、前記高知能製造システム６０或いはエキスパート計画システム７０の内部のサブシステム或いはサブモジュールとして提供される。以下に記載される前記拘束マネージャの操作及び工程は、高級プログラム言語（例えばＣ＋＋）を用いるソフトウエアを介して実行される。
【０１８３】
図２１に示されるように、前記拘束マネージャは、ステップＳ２６０で、前記エキスパート計画システムがオペレータにより選択され或いは活性化されると常に初期化される。或いは、前記拘束マネージャの初期化はオペレータにより、前記高知能製造システム６０或いはエキスパート計画システム７０の内部に拘束条件が入力されるとき常に実行される。説明のために、図２１の実施例は、前記高知能製造システム操作環境からオペレータにより入力される曲げ順に基づいて拘束語句を作成するためになされる種々の工程及び手続きを示す。しかし、拘束語句は、工具拘束のごとき他の拘束についても作成され得る。そのような工具拘束語句は、オペレータにより入力される工具選択及び／又は工具ステージ配置に関する拘束を表す。
【０１８４】
前記曲げ順を選択し或いは入力し且つ前記エキスパート計画システムを活性化した後、前記拘束マネージャがステップＳ２６０で初期化され、前記ユーザにより入力された曲げ順がステップＳ２６２で評価される。
【０１８５】
上記したように、曲げ同定番号が前記部品の各曲げ線に対して付与され前記曲げ順における各曲げを特定する。曲げ順番号がまた提供され、それはオペレータにより入力された曲げ順に基づいて各曲げ同定番号に付与される。例えば、図２３（ａ）に示された複数の辺を持つ部品は、曲げ同定番号１，２，３，４，５及び６を備えると仮定する。図形ユーザインタフェース或いは他の適宜の手段を用いて、オペレータは、使用されるるべき所望の曲げ順を前記エキスパート計画システムに対する拘束として示す。例えば、図１５に示されるそれのごとき曲げ順入力ウインドウが提供され、オペレータが曲げ順を入力するのを促進する。そのような曲げ順入力ウインドウは前記部品の２次元表示及び前記部品の曲げ線を含む。オペレータは、所望の順番で各曲げ線を選択し或いは強調することにより所望の曲げ順を入力する（例えばマウス装置によりダブルクリックすることにより）。そのようなインタフェースはまたオペレータが、複数の曲げ（例えば同一線上の複数の曲げ（共線曲げ））を１つのグループにまとめ、それらが１つの曲げ加工の間に同時に実行されるようにすることを可能とする。
【０１８６】
図２３（ａ）の実施例において、曲げ１は最初に実行され、曲げ２は最後に実行され、曲げ３は３番目に実行され、曲げ４は４番目に実行され、曲げ５と６は１つのグループにグループ化され最後に実行される。図２３（ｂ）に示されるそれのごとき曲げ順テーブルが作成され且つ提供され、前記拘束マネージャはオペレータにより入力された前記曲げ順を評価する。図２３（ｂ）の典型的テーブルは、各曲げ線の同定番号（ＩＤ１）及び、オペレータにより入力された曲げ順に基づく前記に付随する曲げ順番号（ＳＥＱ１）を含む。そのようなテーブルはデータベース３０のごときメモリに格納され、前記部品の曲げモデルファイルと関係付けられる。
【０１８７】
ユーザにより入力された前記曲げ順に基づいて、前記拘束マネージャは、ステップＳ２６２で、曲げ順における各曲げ同定番号の間に星印演算子「＊」を挿入することにより最初の拘束語句を作成する。曲げ順において複数の曲げがグループ化される場合、前記関連する曲げ同定番号が例えば前記括弧を用いてグループ化され、且つ、前記星印演算子「＊」は前記グループ化された曲げ同定番号の間には挿入されない。上記したように、前記演算子「＊」はワイルドカードとして作用し、前記曲げ順におけるその場所において曲げ加工が行われないこと或いは任意の数の曲げ加工が行われることを許す。そして、その場所において行われる曲げ加工のタイプは、前記拘束命令文において特定されていない残りの曲げ加工のうちのいずれであってもよい。前記演算子「＊」はまた、ワイルドカードとして作用し、任意の所望のロボット或いはワークのリポジションがその拘束語句における「＊」の位置において実行されえることを可能とする。すなわち、全ての曲げが前記拘束語句において示される場合、前記演算子はその場所において、任意の所望のリポジションが行われることを意味する。例えば、図２３（ａ）に示される例において前記曲げ５及び６がオペレータ（作業者）によりグループ化されず前記曲げ順において５番目或いは６番目の曲げ加工として実行されると指示される場合、前記拘束マネージャは以下のような最初の拘束語句を作成する。
【０１８８】
＊１＊４＊３＊２＊５＊６＊。
【０１８９】
上記最初の拘束語句は、曲げ１が最初に行われ曲げ４が２番目に行われ曲げ３が３番目に行われ曲げ２が４番目に行われ曲げ５が５番目に行われ曲げ６が曲げ順において最後に行われることを意味する。前記最初の拘束語句はまた、前記演算子「＊」を含むことにより、前記リポジション或いは他の操作が、前記曲げ加工のいずれかの間で或いは最初の曲げ加工の前、或いは最後の曲げ加工の後に行われ得ることを意味する。オペレータにより入力された曲げ順が１つにグループ化されるべき複数の曲げを含む場合（例えば、図２３（ａ）の例において、曲げ５及び６はグループ化されるべきであり、同一の曲げ同定番号５により定義されるべきである）、前記拘束マネージャにより生成される最初の拘束語句においてそれらの曲げは中括弧或いは小括弧を用いてグループ化されることができる。
【０１９０】
この発明の１つの側面によれば、前記拘束マネージャは、ステップＳ２６４において、前記部品の幾何学形状及び曲げ線を評価し、１つ或いはそれ以上の曲げヒューリスティックにより前記拘束語句を更に正確化する。例えば、前記拘束マネージャは種々の曲げ線を分析し、前記同一線上の曲げ（共線曲げ）及びＺ曲げを特定し、且つ、それらの同一線上の曲げ及び／又はＺ曲げをグループ化し、それらが同時に行われるようにする。前記同一線上の曲げは、同一の軸に沿って存在する複数の曲げに関連し曲げ加工の際に同時に実行されることができる。前記Ｚ曲げは、別個には実行することができない接近した複数の曲げに関連し当該Ｚ曲げ加工を行うためには特殊なＺ曲げ用パンチ及びダイの組が必要となる。前記拘束マネージャにより前記同一線上の曲げ或いはＺ曲げが検出される場合、関連する複数の曲げは１つにグループ化され、例えば前記中括弧或いは小括弧を用いて、前記拘束語句においてそのように示される。
【０１９１】
ステップＳ２６８で、前記拘束マネージャは、部品における同一線上の曲げ（共線曲げ）をチェックする。前記同一線上の曲げは、前記曲げモデルファイルにおける部品の幾何学形状或いはトポロジー情報に示され、或いは前記拘束マネージャは１本の共通の軸或いは線に沿う１つ或いはそれ以上の曲げ線の存在に基づいて複数の曲げ線を同一線上の曲げに関連すると判断する。それらはまたオペレータにより入力される曲げ順に基づいて判断される（すなわち１つ或いはそれ以上の曲げ線同定番号が同じ曲げ順番号を有する）。例えば、図２２（ａ）において、曲げ１及び２が同一線上の曲げと判断され、図２２（ｂ）において、曲げ１及び３はまた同一線上の曲げと判断される。同一線上の曲げ（共線曲げ）が検出され、且つこれらの曲げ順が入力されたときオペレータによりそれらがグループ化されていなかった場合、ステップＳ２７０で、それらの曲げは、最初の拘束語句を修正し且つそれらの曲げを例えば中括弧でグループ化することにより１つにグループ化される。図２３（ａ）の実施例において曲げ５及び６は、同一線上曲げとして提供されている。従ってこれらの曲げは最初の拘束語句を以下のように修正することによりグループ化される。
【０１９２】
＊１＊４＊３＊２＊（（５  ６））＊。
【０１９３】
しかる後、ステップＳ２７２で、前記拘束マネージャは、前記部品の曲げ線及び幾何学を分析しＺ曲げの存在を検出する。Ｚ曲げが存在する場合、そしてこれらの曲げが入力されたときオペレータによりグループ化されていなかった場合、ステップＳ２７４で、各Ｚ曲げに関連する曲げ線が例えば括弧によりグループ化される。図２２（ｃ）は典型的なＺ曲げを示す。前記Ｚ曲げの存在は、ステップＳ２７２において、前記Ｚ曲げ（Ｚ）の高さ及び板金の厚さ（Ｔ）及び所定の係数（Ｎ）に基づいて判断される。前記係数Ｎは顧客により定義され且つ利用可能なＺ曲げ工具及び前記設備３８における機械の能力に関連する。前記Ｚ曲げの存在は前記Ｎ及びＴに対する前記Ｚの関係に基づいて決定される。次の式は、Ｚ曲げが存在するかどうかを決定する際に前記拘束マネージャにより利用される。
【０１９４】
Ｚ≦Ｎ×Ｔ。
【０１９５】
Ｚ≦Ｎ×Ｔとき、Ｚ曲げが行われると判断してそれらの曲げはグループ化され、Ｚ＞Ｎ×ＴときＺ曲げは行われないとして前記複数の曲げはグループ化されない。再び、前記拘束マネージャにより前記複数の曲げをグループ化するために括弧が使用され且つ、前記グループ化される曲げの間に存在する「＊」の演算子は削除される。前記Ｚ曲げの検出はまた、部品の曲げモデルファイルを分析することにより行われる。前記部品の曲げモデルファイルは前記部品の種々の曲げの間の関係を表す特徴データを含み、従ってどの曲げがＺ曲げであるかを示す。
【０１９６】
ステップＳ２６８乃至ステップＳ２７４を実行した後、前記拘束マネージャは、ステップＳ２７６で最終的拘束語句を作成する。前記最終的拘束語句は次にファイルに保存され、ステップＳ２７８で、前記エキスパート計画システムが実行されるとき当該エキスパート計画システムへ送られる。以下に説明するように、前記エキスパート計画システムに対して、前記拘束或いは拘束語句を示すためにＦＥＬコマンドが使用される。そして前記拘束或いは拘束語句は曲げ計画を作成する際に利用される。
【０１９７】
前記曲げ同定番号（それは部品における異なる曲げを特定するために使用される）は、前記高知能製造システム及びエキスパート計画システムにおいて一貫していなければならない。前記高知能製造システムアプリケーションとエキスパート計画システムアプリケーションが類似のプラットホーム（例えばＰＣに基づいたウインドウズのアプリケーションの環境）で作成されている場合、前記曲げモデルファイルにおいて部品情報を格納するためにそしてその部品における曲げ線に前記曲げ同定番号を付与するために共通の規則が用いられる。結果として前記高知能製造システム及びエキスパート計画システムの間で伝達される拘束語句或いは複数の拘束語句における前記曲げ同定番号は適正に或いは一貫してそれらのシステムにより解釈される。しかし高知能製造システム及びエキスパート製造システムを提供するために異なるプラットホームが使用される場合（例えばウインドウズい基づくアプリケーションに対してユニックスに基づくアプリケーションが使用される場合）或いは、部品設計情報を格納し或いは曲げ同定番号を付与する際に異なる規則が使用される場合に、前記拘束語句が前記高知能製造システムと前記エキスパート計画システムとの間で受け渡されるとき、前記曲げ同定番号が前記部品に関して誤って解釈されることがあり得る。例えば、前記システムの１つ（例えば前記高知能製造システム）がデータアレイ及びテーブルに基づいて部品設計情報を分析し且つ格納し、他のシステム（例えばエキスパート計画システム）がポインタ及びリンクされたリストに基づいて前記部品設計情報を分析し且つ格納する場合、そのようなシステムは、部品の同じ曲げ線に対して異なる曲げ同定番号を付与することがあり得る。そのような差異が存在する場合、１つ或いはそれ以上の追加のテーブルが提供され、前記拘束マネージャが、前記エキスパート計画システムにより正しく利用される拘束語句を作成するのを支援する。更に、或いはそれに代わって部品を表現する中間のデータファイル（例えばＡＳＣＩＩに基づくファイル）が利用され、前記曲げ同定番号が１つのシステムから他のシステムへ変換される。
【０１９８】
仮に例えばエキスパート計画システムが、前記高知能製造システムにより製造された図２３（ａ）に示された同じ部品に対して、図２３（ｃ）に示されている曲げ同定番号表現或いは規則を用いる場合、図２３（ｄ）及び２３Ｅに示されるテーブルが使用され、前記エキスパート計画システムに対する最終的拘束語句が作成される。図２３（ｄ）に示されるテーブルは、図２３（ａ）において使用された曲げ同定番号（ＩＤ１）の第１の集合を、図２３（ｃ）において用いられた曲げ同定番号（ＩＤ２）の第２の集合に翻訳し或いは関連させるために設けられる。そのような対応付け同定番号テーブルは、例えば前記高知能製造システムにおいて用いられた曲げ同定番号を前記エキスパート計画システムにおいて用いられたそれと対応させ或いは変換するために用いられる。図２３（ｄ）におけるテーブル及び図２３（ｂ）において提供された曲げ順テーブルに基づいて、最終的曲げ順テーブルが前記拘束マネージャにより、図２３（ｅ）において示されるように作成される。図２３（ｅ）のテーブルは、図２３（ｃ）において用いられた曲げ同定番号システム（例えばそれは前記エキスパート計画システムにより用いられる）に応じて、前記オペレータにより入力された曲げ順を示すために使用される。そのようなテーブルを用いて、前記拘束マネージャは、図に示された典型的部品についての最終的に変換された次の拘束語句を作成する。すなわち、
＊１＊２＊３＊４＊（（５  ６））＊。
【０１９９】
上記テーブルは、また前記エキスパート計画システムからの曲げ計画情報を解釈する際に、前記拘束マネージャ或いは高知能製造システムにより使用される。前記において、前記エキスパート計画システムからの曲げ計画情報は、異なる割当てスキーム或いは規則に基づいて前記部品に割り当てられた曲げ同定番号を含む。
【０２００】
上記したように、前記ＦＥＬメッセージが、前記高知能製造システムとエキスパート計画システムとの間での情報の伝達に使用される。これらのメッセージは、何時全てのエキスパートモジュールが実行されるか、或いは何時選択されたエキスパートモジュールのみが前記エキスパート計画システムの中で実行されるかを示す。更にこれらのメッセージは、前記曲げ計画の作成の際に利用される種々の拘束情報語句を示す。前記種々のモジュール及びシステムアプリケーションの間で前記種々のメッセージ及び情報を伝達するために複数のソケットが利用される。例えば前記高知能製造システム６０及びエキスパート計画システム７０が、ＰＣに基づくウインドウズアプリケーションとして作成されている場合、ウインドウズに基づくソケット（例えばマイクロソフトからのＷＩＮＳＯＣＫバージョン１．１）が用いられ、所定のプロトコール（例えばインターネットプロトコール（ＩＰ））に基づいて、前記各システムアプリケーションの間でメッセージがやり取りされる。前記ＦＥＬメッセージはまた、前記種々のステーションモジュールから前記サーバモジュールへ、前記通信ネットワーク２６を介して、任意の数の適宜のプロトコール（それは例えばイーサネット・プロトコール及びＴＣＰ／ＩＰを含む）を用いて送られる。
【０２０１】
前記エキスパート計画システムにより最終的曲げ計画が作成された後、前記ＦＥＬメッセージは前記最終曲げ計画情報を前記高知能製造システムへ送り返すためにも用いられる。前記ＦＥＬメッセージは、前記高知能製造システム或いはインタフェースモジュールにより解釈され、結果としての曲げ計画情報は前記ＦＥＬメッセージから取り出され或いは瀘過され従って、そのような情報は前記曲げモデルファイル或いはその他の別個のファイルの中に他の情報と共に格納される。
【０２０２】
上記動作（それは以下に更に詳細に説明される）は前記サーバモジュール３２におけるインタフェースモジュールにより取り扱われる。このインタフェースモジュールは、それが初期化されたとき、前記適宜のＦＥＬメッセージを前記エキスパート計画システム７０へ送る。また前記インタフェースモジュールは、前記エキスパート計画システムから前記高知能製造システム６０へ送り返されるＦＥＬメッセージを解釈する。前記インタフェースモジュールは、前記サーバモジュール３２の中に別個に実行可能なアプリケーションとして設けられ、前記高知能製造システムアプリケーション６０とエキスパート計画システムアプリケーション７０との間のメッセージの伝達を促進し或いはこれに協力する。前記インタフェースモジュールは、前記高知能製造システム及び／又はエキスパート計画システムの中にサブシステム或いはサブモジュールとして提供されることもできる。Ｃ＋＋のごとき高級プログラム言語が、前記ＦＥＬコマンドを取扱い且つ伝達するための以下に説明するインタフェース或いは種々の工程及び操作を実行するために使用される。
【０２０３】
前記エキスパート計画システムアプリケーション７０がオペレータにより選択され且つ起動されるとき、一連のＦＥＬメッセージが、前記エキスパート計画システムへ送られ、これを初期化し且つ種々の情報を提供する。前記エキスパート計画システムのエキスパートモジュールが、前記曲げワークステーションのための曲げ計画を作成するために使用されるとき、前記高知能製造システム或いはインタフェースモジュールから前記エキスパート計画システムへ複数のパラメータ及びデータファイル名が送られる。前記ＦＥＬメッセージは、前記部品の曲げモデルのファイル名を示すのみならず、前記工具ライブラリ及び／又はグリッパライブラリのファイル名を示す。後者のライブラリは、特定のワークステーションについて利用可能な工具及びロボットグリッパに関する情報を含む。機械データファイル及び／又はロボットデータファイルのファイル名もまた提供されそれは、前記ワークステーションにおける前記曲げ機械及び／又はロボットの配置或いは幾何学形状に関するデータを含む。前記機械データファイルは、前記曲げ機械の現在の或いは前回の設定（セットアップ或いは組付け）を指示する設定データ（セットアップデータ或いは組付けデータ）を含む。上記ファイルの各々は、例えばデータベース３０或いは前記サーバモジュール３２に設けたローカル格納装置に格納される。
【０２０４】
種々のＦＥＬコマンド及びメッセージが、データのファイル名を前記エキスパート計画システムへ伝達するために使用される。これらのメッセージは、「ＴＹＰＥ  ＰＡＲＡＭＳ」ＦＥＬコマンドを有するところの、図２４に関連して説明した設定部を含む。非限定的な例として、以下のＦＥＬメッセージが前記インタフェースモジュール或いは高知能製造システム（すなわち「ＦＲＯＭ  ＩＮＴＥＲＡＣＴＩＮＧ」）からエキスパート計画システム（すなわち「ＴＯ  ＰＬＡＮＮＩＮＧ」）へ送られ、種々の部品のファイル名（「ＦＩＬＥ  ＮＡＭＥ」）及び工具ライブラリのファイル名（「ＴＯＯＬＩＮＧ  ＤＡＴＡＢＡＳＥ」）及びグリッパライブラリのファイル名（「ＧＲＩＰＰＥＲ  ＤＡＴＡＢＡＳＥ」）及び機械データベースファイル名（「ＭＡＣＨＩＮＥ  ＤＡＴＡＢＡＳＥ」）及び機械セットアップデータベースのファイル名（「ＳＥＴＵＰ  ＤＡＴＡＢＡＳＥ」）が伝達される。
【０２０５】
0003549842.tif 000004
更に、ＦＥＬコマンド「ＴＹＰＥ  ＰＡＲＴ」が、前記メモリに格納される曲げモデルデータファイルのタイプを指示するために使用される。これに関して、以下に示されるような典型的ＦＥＬメッセージが前記高知能製造システム６０（或いはインタフェースモジュール）から、前記エキスパート計画システム７０へ送られる。すなわち、
0003549842.tif 000005
上記したように、上記ＦＥＬメッセージは前記エキスパート計画システム７０に対して送られ、種々のパラメータ及び／又は変数を初期化し設定する。「ＴＹＰＥ  ＰＡＲＡＭＳ」のごときＦＥＬメッセージがまた用いられ、それはリポジションコスト（ＲＥＰＯ  ＣＯＳＴ）及びステージ時間コスト（ＳＴＡＧＥ  ＴＩＭＥ  ＣＯＳＴ）を含む種々のコストを初期化し或いは設定する。非限定的な例として、種々のＦＥＬコマンドが前記高知能製造システム或いはインタフェースモジュールからエキスパート計画システムへ送られ、種々のパラメータ及び／又は変数を設定する。すなわち、
0003549842.tif 000006
前記種々のＦＥＬコマンド及びメッセージが前記エキスパート計画システム７０へ送られた後、前記オペレータにより入力され例えば前記拘束マネージャにより拘束語句に変換された拘束条件が前記エキスパート計画システムへ送られる。上記したように、これらの拘束条件は、オペレータにより入力された種々の拘束に基づき、それらは曲げ順及び工具選択に関する拘束を含む。前記曲げ順或いは部分的な曲げ順に基づいて生成された拘束条件は拘束語句に変換されそれは、「ＴＹＰＥ  ＯＰＴＩＯＮＳ」及び「ＣＯＮＳＴＲＡＩＮＴＳ」のごときＦＥＬコマンドを用いて前記エキスパート計画システムへ送られる。更に、オペレータにより設定された工具拘束条件は、前記工具ライブラリ或いはデータファイルに格納され、そのファイル名は前記エキスパート計画システムへ、上記した「ＴＹＰＥ  ＰＡＲＡＭＳ」及び「ＴＯＯＬＩＮＧ  ＤＡＴＡＢＡＳＥ」のＦＥＬメッセージを用いて送られる。非限定的例として、以下のＦＥＬメッセージが前記高知能製造システム６０（或いはインタフェースモジュール）により前記エキスパート計画システム７０へ送られ、オペレータにより設定された典型的拘束条件を示す。すなわち、
0003549842.tif 000007
前記エキスパート計画システム７０へ送られる前記拘束語句に含まれる演算子は、他の記号により置換され或いは表現され得る。例えば、演算子「＊」は例えば「−」の記号（例えば付録Ａ参照）、或いは前記エキスパート計画システム７０へ送られる実際の拘束語句における他の符号により表現される。前記曲げ計画を作成する際、前記エキスパート計画システム７０の種々のエキスパートモジュールは、前記曲げ計画パラメータの各々を設定し且つ提案するために、そのような拘束語句及び工具についての拘束条件を使用する。
【０２０６】
前記エキスパート計画システム７０が初期化され実行されるとき、当該エキスパート計画システムへ送られる種々のＦＥＬメッセージの例は付録Ａ及びＢに与えられる。付録Ａは、オペレータにより設定された拘束に応じて、前記ロボットに基づくワークステーションのための曲げ計画を作成するために前記エキスパート計画システムを実行するために送られる種々のＦＥＬメッセージの例を示す。付録Ｂは、拘束条件がない場合に、ロボットを有するワークステーションについての曲げ計画を作成する際に前記エキスパート計画システム７０へ送られる種々のＦＥＬメッセージの例を示す。
【０２０７】
上記したように、この発明は、種々の曲げアプリケーションに対応するために、前記エキスパート計画システム７０においてオペレータが種々のエキスパートモジュールを選択的に起動し或いは休止させることを可能とする。そのような場合において、上記したように、前記曲げ計画を作成する際に、オペレータは、前記選択される或いは活性化されるエキスパートモジュールにより利用される種々の曲げ拘束条件を選択し或いは指定する。特定のエキスパートモジュールが活性化されるとき、前記高知能製造システム６０（或いはインタフェースモジュール）から前記エキスパート計画システム７０へ送られる種々のＦＥＬメッセージは、ロボットを有するワークステーションについての完全な曲げ計画を作成するために全てのエキスパートモジュールが使用される場合について上記したものと類似している。しかし、オペレータにより特定のエキスパートモジュールが活性化され他のモジュールが休止される場合、どのエキスパートモジュールが選択され且つ活性化されるかを示すために異なるＦＥＬメッセージが前記エキスパート計画システムへ送られる。
【０２０８】
例えば、「ＴＹＰＥ  ＥＸＰＥＲＴＳ」のごときＦＥＬコマンドが、前記エキスパート計画システムにおける適宜のエキスパートモジュールを初期化するために使用される。例えば、以下のコマンドが、前記高知能製造システム６０（或いはインタフェースモジュール）から、前記エキスパート計画システム７０へ送られ、前記工具エキスパート８０及び把持エキスパート８２及び運動エキスパート８４が、前記曲げ計画のために設定され或いは活性化される。すなわち、
0003549842.tif 000008
これに対して、ロボットを有しない曲げアプリケーションに対して、オペレータは、前記ロボット運動及びリポジション計画に関連するエキスパートモジュールを休止させ、従って以下のＦＥＬメッセージが前記エキスパート計画システム７０へ送られる。すなわち、
0003549842.tif 000009
前記ＦＥＬメッセージは、前記エキスパート計画システム７０及び前記計画エキスパート７２に対して、工具エキスパートモジュール８０のみが活性化されていることを知らせる。前記計画エキスパート７２は、各エキスパートモジュールに対して質問を行うと共に、曲げ順を決定し且つ前記曲げ計画を完成する。従って、前記計画エキスパート７２は、前記エキスパート計画システム７０を実行する場合には常に起動されるのが望ましい。オペレータが、前記エキスパート計画システムから工具情報のみを受け取りたいと考える場合、前記計画エキスパート７２による曲げ順計画を制限するために他の手段が使用され得る。たとえば上記したように、所望の曲げ順を拘束条件として入力することにより、オペレータは、前記エキスパート計画システムにより作成される曲げ順計画の曲げ順を拘束し或いは特定することができる。
【０２０９】
前記エキスパートモジュールの選択された状態は構成ファイルの内部に保存され、それは、各エキスパートモジュールの状態のみならず、種々のファイル名及びパラメータの値をも含む。付録Ｃは、前記エキスパートモジュールの状態に関連する情報を含む典型的構成ファイルを示す。前記エキスパート計画システムが初期化され或いは活性化されるとき、前記高知能製造システム６０（或いはインタフェースモジュール）は、前記構成ファイルを読み込み、前記エキスパートモジュールの選択された状態（例えば、「ＥＸＰＧＲＡＳＰＩＮＧ」及び「ＥＸＰＴＯＯＬＩＮＧ」及び「ＥＸＰＭＯＶＩＮＧ」等）及び種々のパラメータ（例えば「ＲＥＰＯ  ＣＯＳＴ」及び「ＳＴＡＧＥ  ＣＯＳＴ」）についての設定された値を決定する。ＦＥＬメッセージ（例えば「ＴＹＰＥ  ＥＸＰＥＲＴＳ」及び「ＥＸＰＥＲＴＳ」）が作成され、前記エキスパート計画システムへ送られ、種々のエキスパートモジュールの状態を示す。更に、「ＴＹＰＥ  ＴＡＲＡＭＳ」のごときＦＥＬコマンドが用いられ、上記したように前記エキスパート計画システムへメッセージを送り、種々のパラメータの値を示す。付録Ｃの典型的実施例において、前記エキスパートモジュールの種々の状態は、そのモジュールが活性化されていることを示す状態コマンド「ＴＲＵＥ」或いは、その状態が活性化されていないことを示す状態コマンド「ＦＡＬＳＥ」のいずれかにより示される。ロボットを有しないアプリケーションについては、前記把持エキスパート８２及び運動エキスパート８４は前記構成ファイルにおいてオペレータにより「ＦＡＬＳＥ」と設定されなければならない。というのはロボット運動計画は必要ないからである。
【０２１０】
上記したように、前記構成ファイル（コンフィグレーション・ファイル）はオペレータにより直接修正され、或いはオペレータが各エキスパートモジュールの状態を選択し且つそれにより前記構成ファイルを修正するために図形ユーザインタフェースが設けられる。そのようなインタフェースは、サーバモジュール３２或いは、設備３８の全体にわたるロケーション１０，１２，１４，…，２０に設けられる任意のステーションモジュールに提供される図形ユーザインタフェースとして設けられる。そのような図形ユーザインタフェースは、オペレータに対してエキスパートモジュールの現在の設定或いは状態（例えば活性化されているか休止されているか）を示し、或いは、その状態を、特定の曲げアプリケーション（例えばロボットを有する曲げアプリケーションであるか或いはロボットを有しない曲げアプリケーションであるか）に基づいてその状態を変更することを可能とする。更に、前記設備３８における種々の曲げワークステーションに関する情報が格納され、従って、オペレータが、前記曲げ計画が適用されるところのワークステーションの環境を入力すると前記エキスパートモジュールの各々の状態が自動的に設定されるようにすることもできる。機械の設定又は組立（セットアップ）或いはワークステーションの環境のリストがまたオペレータに対して提供され、前記エキスパートモジュールは、オペレータの特定のワークステーションの環境の選択に基づいて設定され得る。種々の他の特徴或いは側面がまた提供され前記エキスパートモジュールの設定を容易にする。
【０２１１】
この発明の他の側面によれば、前記ＦＥＬメッセージはまた、前記曲げ計画の完成の後、前記エキスパート計画システムから前記高知能製造システムへ戻される。前記高知能製造システム６０へ戻される前記ＦＥＬメッセージは、前記オペレータにより入力された（存在する場合には）拘束条件に基づいて前記活性化されたエキスパートモジュールにより作成された最終的曲げ計画情報を含む。この曲げ計画情報は、曲げ順及び工具選択及び工具ステージの配置及びロボット運動及びリポジション及びバックゲージの設定を含む。一連のＢＥＮＤＭＡＰのデータが前記エキスパート計画システムにより提供され、以下のものが示される。すなわち、各曲げについてのステージ配置と曲げ順との関係及び、各曲げについての各ステージの配置及び、工具ステージに対する曲げ線の位置（例えば前記ステージの左端及び／又は右端からの距離）及び、ロボットグリッパ位置及び、ロボット位置或いは向き、等である。前記ＢＥＮＤＭＡＰデータはまた種々のアプリケーションのために前記高知能製造システムにより利用される。例えば、前記データは（図１７に示したように）前記図形インタフェースを介して最終的曲げ計画をシミュレートするために使用され、また、上記したようにオペレータに対して提供される種々のインタフェースにおいて前記曲げ計画情報を表示するために使用される。
【０２１２】
前記エキスパート計画システム７０から前記高知能製造システム６０へ送られるＦＥＬコマンドは、前記サーバモジュール３２に提供される前記インタフェースモジュールにより例えば解釈される。上記したように、このインタフェースモジュールは、別個に実行可能のアプリケーションであり或いは前記高知能製造システムアプリケーション６０の内部に設けられるものである。受け取られた前記ＦＥＬコマンドに基づいて、前記インタフェースモジュールは前記最終曲げ計画情報を解釈し且つ取り出しそれを前記データベース３０へ格納する。前記ＦＥＬメッセージは前記最終曲げ計画情報を示すための「ＦＩＮＡＬＩＺＥ」メッセージを含む。前記種々の最終曲げ計画情報を示すために、追加のＦＥＬコマンド（例えば「ＢＥＮＤＳ」「ＬＯＡＤＥＲ  ＬＯＣＡＴＩＯＮＳ」「ＲＯＢＯＴ  ＬＯＣ」「ＲＥＰＯ  ＬＯＣ」「ＢＥＮＤＭＡＰ」「ＢＧＡＧＥ  ＬＯＣ」）が使用される。更に、他のＦＥＬコマンドが使用され工具及びグリッパの選択を示す（例えば「ＲＯＢＯＴ  ＧＲＩＰＰＥＲ」及び「ＲＥＰＯ  ＧＲＩＰＰＥＲ」）。付録Ｄは、前記最終曲げ計画が作成されるとき前記エキスパート計画システムから高知能製造システムへ送られるＦＥＬメッセージの典型的集合を示す。
【０２１３】
前記高知能製造システム６０へ送られる最終的曲げ計画情報は、組織化されそしてカテゴリのタイプに応じて１つ或いはそれ以上のファイルに格納される。これらのファイルは前記データベース３０に格納され、その最終曲げ計画が実行される際、前記曲げワークステーション或いは他のロケーションに送られる。前記ワークステーションにおける機械或いは要素の種類に応じて、前記ファイルは、前記機械を制御し且つ前記曲げ計画に応じて曲げ加工を実行するためのＮＣデータ及び前記ＦＥＬコマンドを含む。例えばバックゲージの設定及びプレスブレーキの操作を含む曲げ機械に関連するデータを含む「ＥＶＴ」ファイルが、前記最終的曲げ計画情報に基づいて作成され格納される。これらのデータはＸ方向測定情報を有しないで格納される。付録Ｅは前記「ＥＶＴ」ファイルの典型的な例を示し、それは例えば、アマダＦＢＴプレスブレーキを制御するためのＮＣデータを含む。他の格納されるデータは「ＥＶＴ」ファイルであり、それは、プレスブレーキにおける種々の工具ステージを設定するために使用されるバックゲージデータを含む工具設定データを含む。米国特許出願第０８／３８６，３６９において説明された種々の工程或いは操作はプレスブレーキのバックゲージを使用し且つ制御することにより工具ステージの設定を促進するために使用される。付録Ｆは典型的な「ＥＶＴ」ファイルであり、それは例えばアマダＦＢＴプレスブレーキを制御するためのＮＣデータを含む。
【０２１４】
更に、前記ロボット運動を修正するための学習工程を実行するための「ＥＶＸ」データファイルが格納される。このデータファイルは、前記最終曲げ計画において設定された最初のプレスブレーキの運動及びバックゲージの位置を含む。付録Ｇは典型的な「ＥＶＸ」ファイルであり、それは例えば前記アマダＦＢＴプレスブレーキを制御するためのＮＣデータを含む。このデータは、後に、Ｘゲージング運動及び材料搬入高さ情報を用いてロボットの運動を修正するために調整される。これに関連して「ＲＢ１」ファイルがまた提供され、それはＸゲージング情報を有する、前記ワークステーションに対するロボットの方向及び運動を含む。この「ＲＢ１」ファイルはＦＥＬメッセージを含む。付録Ｈは、典型的な「ＲＢ１」ファイルであり、それは、アマダＢＭ１００ワークステーションのロボットを制御するためのＦＥＬメッセージを含む。前記「ＥＶＸ」及び「ＲＢ１」ファイルは、学習機能工程を提供するために同時に用いられる。「ＲＢ２」及び「ＲＢ３」ファイルがまた、前記「ＥＶＸ」ファイルのデータに対してなされる調整及び前記最終曲げ計画情報に基づいて提供され或いは生成される。すなわち、前記「ＲＢ２」ファイルはＸゲージング情報を含まない全てのロボット運動を定義するためのデータを含み、前記「ＲＢ３」ファイルは、前記学習機能工程が実行された後の前記「ＥＶＸ」ファイルに対する全ての調整を含むように、生成され且つ格納される。米国出願第０８／３８６，３６９に示される種々の特徴は、この発明の学習機能を実行するために提供される。前記「ＲＢ２」ファイルはＦＥＬメッセージを含む。付録Ｉは、典型的な「ＲＢ２」ファイルであり、それはアマダＢＭ１００ワークステーションのロボットを制御するためのＦＥＬメッセージを含む。
【０２１５】
更に、「ＦＩＮ」データファイルが、前記高知能製造システム６０により保存され、これにより前記エキスパート計画システム７０により作成された全ての関連する最終的曲げ計画情報が前記システム６０に含まれる。そのようなファイルは、付録Ｄに記載されたものと同様のＦＥＬメッセージ及びデータを含む。前記高知能製造システムに格納された結果としての曲げ計画情報は、前記曲げ計画を実行するために種々のワークステーションに送られ或いはダウンロードされる。上記したようにこの最終曲げ計画情報は、前記部品に関連する曲げモデルファイルと共にデータベース３０に格納される。或いはこれらのファイルは、サーバモジュール３２の格納装置の中に格納される。最終的な曲げ計画を実行するために、前記ファイルは種々の作業を実行するために、前記曲げワークステーションのコントローラ或いはシーケンサに送られる。これらのファイルは、前記ＦＥＬメッセージ及びコマンド及び／又は前記ワークステーションのコントローラ或いはシーケンサにより解釈されるＮＣデータを含む。従って前記ワークステーションの種々の要素及び機械は最終的曲げ計画に応じて操作される。
【０２１６】
例えば前記「ＥＶＴ」ファイル及び他の工具情報が、例えば通信ネットワーク２６を介して前記曲げワークステーションに送られ、前記プレスブレーキ及び／又はワークステーションについての必要な工具が設定される。前記「ＥＶＸ」及び「ＲＢ１」ファイルはまず、前記曲げワークステーションに送られ上記学習機能が実行され、前記エキスパート計画システムにより決定された種々の設定及び運動がテストされ及び／又は修正される。前記最終曲げ計画パラメータに対する適宜の調整がなされた後、前記「ＥＶＢ」及び「ＲＢ３」ファイルが、前記曲げワークステーションに送られ、前記顧客の部品を製造するために前記曲げ計画が実行される。前記「ＲＢ３」ファイルがまた、前記設定及び試験の最初の段階で送られ、ワークピースを使用しないでロボット運動が実行され、前記エキスパート計画システムにより決定されたロボット運動がチェックされそれが満足のいくものであるかどうかが確認される。
【０２１７】
この発明は、幾つかの説明としての実施例を参照して記載されたが、それらの使用された用語は限定の用語ではなく説明の用語である。従ってこの発明の範囲或いは精神或いはその側面から離れることなく、添付された請求範囲を認識の範囲内で変更が可能である。また、この発明は特定の手段、材料及び実施例を用いて説明されたが、この発明はここに記載された特定のものに限定されるわけではなく、またこの発明は添付のクレームの範囲内で均等の構造及び方法及び仕様に拡張され得る。
【０２１８】
0003549842.tif 000010
0003549842.tif 000011
0003549842.tif 000012
0003549842.tif 000013
0003549842.tif 000014
0003549842.tif 000015
0003549842.tif 000016
0003549842.tif 000017
0003549842.tif 000018
0003549842.tif 000019
0003549842.tif 000020
0003549842.tif 000021
0003549842.tif 000022
0003549842.tif 000023
0003549842.tif 000024
0003549842.tif 000025
0003549842.tif 000026
0003549842.tif 000027
0003549842.tif 000028
0003549842.tif 000029
0003549842.tif 000030
0003549842.tif 000031
0003549842.tif 000032
0003549842.tif 000033
0003549842.tif 000034
0003549842.tif 000035
0003549842.tif 000036
0003549842.tif 000037
0003549842.tif 000038
0003549842.tif 000039
0003549842.tif 000040
0003549842.tif 000041
0003549842.tif 000042
0003549842.tif 000043
0003549842.tif 000044
0003549842.tif 000045
0003549842.tif 000046
0003549842.tif 000047
0003549842.tif 000048
0003549842.tif 000049
0003549842.tif 000050
0003549842.tif 000051
0003549842.tif 000052
0003549842.tif 000053
0003549842.tif 000054
0003549842.tif 000055
0003549842.tif 000056
0003549842.tif 000057
0003549842.tif 000058
【図面の簡単な説明】
【図１】ロボットを有する曲げワークステーションの典型的先行技術を示す。
【図２】図２（ａ）は、ブロック図において、この発明の１つの側面に基づく進歩的板金製造設備を表す。図２（ｂ）及び図２（ｃ）はブロック図の形式において、この発明の追加の特徴及び側面に基づく進歩的板金製造設備を示す。
【図３】図３は、高知能製造システムに関連するサーバモジュール及びデータベース及び種々のネットワークロケーションの間のデータフローの典型的実施例を示す。
【図４】図４は、前記高知能製造システムアプリケーションが実行される際に前記サーバモジュールにより実行される基本的工程及び操作の典型的フローチャートである。
【図５】図５は、前記曲げステーションに存在する例えばステーションモジュールにより実行される前記高知能製造システムに関連する工程及び操作の典型的フローチャートである。
【図６】図６は、エキスパート計画システムに関連する種々のネットワーク及びモジュールの間のデータ及びメッセージのフローの典型的実施例を示す。
【図７】図７は、ブロック図の形式において、前記エキスパート計画システムに提供される種々のエキスパートモジュール或いはシステムの例を示す。
【図８】図８は、ロボット付きの機械を有するステーションにおいて板金要素を製造するための曲げ計画を作成するために、オペレータによりなされる種々の操作及び工程の例を示す。
【図９】図９は、１つ或いはそれ以上のオペレータにより入力される拘束条件を付けてロボットを有するワークステーションについての曲げ計画を作成するために実行される種々の工程及び操作の典型的フローチャートである。
【図１０】図１０は、マニュアル・ワークステーションについての曲げ計画を作成するために実行される種々の工程或いは操作の論理フローの例を示す。
【図１１】図１１は、１つ或いはそれ以上のオペレータにより入力される拘束条件を付けて、前記マニュアルワークステーションのための曲げ計画を作成するために実行される種々の工程及び操作の論理フローの例を示す。
【図１２】図１２は、製造されるべき部品の３次元表示を含む典型的高知能製造システムウインドウ表示である。
【図１３】図１３は、製造されるべき部品の２次元表示及びそれに表示された曲げ同定番号を含む典型的エキスパート計画システムウインドウ表示である。
【図１４】図１４は、エキスパート計画システムウインドウ表示の他の例であり、そこにおいて曲げ計画及び前記エキスパートシステムの実行に関連する状況情報が表示されている。
【図１５】図１５は、提案された曲げ順を示すと共に、オペレータがその曲げ順を入力し或いは修正することを可能とするために提供された典型的曲げ順入力ウインドウ表示を示す。
【図１６】図１６は、エキスパート計画システムにより選択された例えば提案工具及び工具ステージ配置を示すために設けられた典型的工具設定ウインドウ表示を示す。
【図１７】図１７は、プレスブレーキ及びロボットアーム及びグリッパ並びにリポジショングリッパを含む典型的ロボット運動シミュレーションウインドウ表示を示す。
【図１８】図１８は、エキスパート計画システムウインドウ表示の他の例を示し、ここにおいてウインドウ表示は曲げ順拘束語句を含む。
【図１９】図１９は、オペレータが、工具拘束条件として使用される所望の工具を選択し且つ指示することを可能とする典型的工具対話ウインドウ表示を示す。
【図２０】図２０は、エキスパート計画システムウインドウ表示の他の例であり、ここにおいて、工具選択拘束条件及び曲げ順拘束条件が選択されこれらの選択を確認するために「Ｘ」が表示されている。
【図２１】図２１は、オペレータにより入力された拘束条件に基づいて拘束語句を作成する際に、拘束マネージャにより実行される種々の工程及び操作を示す。
【図２２】図２２（ａ）及び図２２（ｂ）は同一線上の曲げの例を示す。図２２（ｃ）はＺ曲げの例を示す。
【図２３】図２３（ａ）は、曲げ同定番号及び曲げ順番号を有する板金部品の典型的２次元表現を示す。図２３（ｂ）は、図２３（ａ）の典型的部品に基づく曲げ順テーブルを表し、それは、各曲げの同定番号（ＩＤ１）と、オペレータにより入力された曲げ順に基づく曲げ順番号（ＳＥＱ１）とを含む。図２３（ｃ）は、曲げ同定番号を有する板金部品の他の典型的２次元表現を示し、ここに前記曲げ同定番号は図２３（ａ）におけるそれと異なる規則で割り当てられている。図２３（ｄ）は、図２３（ａ）で用いられた曲げ同定番号（ＩＤ１）を第１の集合へ図２３（ｃ）で用いられた曲げ同定番号（ＩＤ２）を第２の集合へ変換するために設けられる典型的変換テーブルを表す。図２３（ｅ）は、図２３（ｃ）で用いられた曲げ同定番号システムに応じた、曲げオペレータにより入力された曲げ順を示すために使用される典型的曲げ順テーブルを示す。
【図２４】図２４は、エキスパート計画システムの前記計画エキスパートから前記運動エキスパートへ送られるＦＥＬ計画メッセージの一例を示す。
【図１】
0003549842.tif 000059
【図２】
0003549842.tif 000060
【図３】
0003549842.tif 000061
【図４】
0003549842.tif 000062
【図５】
0003549842.tif 000063
【図６】
0003549842.tif 000064
【図７】
0003549842.tif 000065
【図８】
0003549842.tif 000066
【図９】
0003549842.tif 000067
【図１０】
0003549842.tif 000068
【図１１】
0003549842.tif 000069
【図１２】
0003549842.tif 000070
【図１３】
0003549842.tif 000071
【図１４】
0003549842.tif 000072
【図１５】
0003549842.tif 000073
【図１６】
0003549842.tif 000074
【図１７】
0003549842.tif 000075
【図１８】
0003549842.tif 000076
【図１９】
0003549842.tif 000077
【図２０】
0003549842.tif 000078
【図２１】
0003549842.tif 000079
【図２２】
0003549842.tif 000080
【図２３】
0003549842.tif 000081
【図２４】
0003549842.tif 000082