(57)【要約】【課題】安定的に高い処理効率を確保することできる並列分散処理システムを提供すること。【解決手段】マスタサーバは、工具軌跡（ＣＬ）を工具とワークとの位置関係により区分（関係区分）し、ＣＬ計算処理を、切削部、リトラクト部／アプローチ部、ピック部、及びエアカット部の各関係区分毎のＣＬ計算処理に分割する（ステップ４０３）。そして、マスタサーバは、上記各関係区分毎のＣＬ計算において、かかる関係区分の各小軌跡を操作区間毎に特定し、スレーブサーバに分散処理単位としてその処理を依頼する（ステップ４０４〜ステップ４０７）。【選択図】  図５
2005018266.tif 000002
【特許請求の範囲】
【請求項１】
複数のスレーブサーバと、基礎データ及び計算条件に基づいて処理すべき計算を所定の分散処理単位に分割し前記各スレーブサーバにその処理を依頼するマスタサーバとを備え、前記各スレーブサーバは、前記マスタサーバに依頼された処理を実行しその処理結果を返信する並列分散処理システムであって、
前記マスタサーバは、ＮＣ加工機の作動を制御するＮＣデータを作成するためのＮＣデータ作成処理を実行するものであり、
前記ＮＣデータ作成処理を構成するＣＬ計算処理において、
工具軌跡を工具とワーク又はモデルとの位置関係により複数の関係区分に区分し、前記ＣＬ計算処理を前記各関係区分毎の前記ＣＬ計算処理に分割し、
前記各スレーブサーバに対し、前記関係区分の各小軌跡を操作区間毎に特定し、前記分散処理単位としてその処理を依頼すること、
を特徴とする並列分散処理システム。
【請求項２】
請求項１に記載の並列分散処理システムにおいて、
前記マスタサーバは、前記スレーブサーバから受信した処理結果を前記関係区分及び操作区間に基づいて整合することにより各工具単位のＮＣデータを作成し、該各工具単位のＮＣデータを整合することにより全体のＮＣデータを作成すること、を特徴とする並列分散処理システム。
【請求項３】
請求項１又は請求項２に記載の並列分散処理システムにおいて、
前記ＣＬ計算処理は、自由曲面を複数の三角形群で表現するＳＴＬデータと、該ＳＴＬデータで表現されるＳＴＬモデルを格子状の小区画に区画し該小区画とＳＴＬモデルの各三角面との位置関係を特定する区画データとを前記基礎データとして処理されること、を特徴とする並列分散処理システム。
【請求項４】
請求項１〜請求項３に記載の並列分散処理システムにおいて、
前記各スレーブサーバに対し、少なくとも一の前記処理を依頼するものであって、該処理の処理結果を受信した場合には、該処理を返信した前記スレーブサーバに対し一の前記処理を依頼すること、を特徴とする並列分散処理システム。
【請求項５】
請求項１〜請求項４に記載の並列分散処理システムにおいて、
前記マスタサーバは、前記依頼する前に予め前記基礎データ及び計算条件をブロードキャスト配信すること、を特徴とする並列分散処理システム。
【請求項６】
複数のスレーブサーバと、基礎データ及び計算条件に基づいて処理すべき計算を所定の分散処理単位に分割し前記各スレーブサーバにその処理を依頼するマスタサーバとを備え、前記各スレーブサーバは、前記マスタサーバに依頼された処理を実行しその処理結果を返信する並列分散処理システムにより、ＮＣ加工機の作動を制御するＮＣデータを作成するＮＣデータ作成処理を実行するＮＣデータ作成方法であって、
前記ＮＣデータ作成処理を構成するＣＬ計算処理において、
工具軌跡を工具とワーク又はモデルとの位置関係により複数の関係区分に区分し、前記ＣＬ計算処理を前記各関係区分毎の前記ＣＬ計算処理に分割するステップと、
前記各スレーブサーバに対し、前記関係区分の各小軌跡を操作区間毎に特定し、前記分散処理単位としてその処理を依頼するステップとを備えたこと、
を特徴とするＮＣデータ作成方法。
【請求項７】
請求項６に記載のＮＣデータ作成方法おいて、
前記スレーブサーバから受信した処理結果を前記関係区分及び操作区間に基づいて整合することにより各工具単位のＮＣデータを作成するステップと、
前記各工具単位のＮＣデータを整合することにより全体のＮＣデータを作成するステップとを備えたこと、を特徴とするＮＣデータ作成方法。
【請求項８】
請求項６又は請求項７に記載のＮＣデータ作成方法において、
前記ＣＬ計算処理は、自由曲面を複数の三角形群で表現するＳＴＬデータと、該ＳＴＬデータで表現されるＳＴＬモデルを格子状の小区画に区画し該小区画とＳＴＬモデルの各三角面との位置関係を特定する区画データを前記基礎データとして処理すること、を特徴とするＮＣデータ作成方法。
【請求項９】
複数のスレーブサーバと、基礎データ及び計算条件に基づいて処理すべき計算を所定の分散処理単位に分割し前記各スレーブサーバにその処理を依頼するマスタサーバとを備え、前記各スレーブサーバは、前記マスタサーバに依頼された処理を実行しその処理結果を返信する並列分散処理システムに、ＮＣ加工機の作動を制御するＮＣデータを作成するためのＮＣデータ作成処理を実行させるＮＣデータ作成プログラムであって、
前記ＮＣデータ作成処理を構成するＣＬ計算処理において、
前記マスタサーバに、
工具軌跡を工具とワーク又はモデルとの位置関係により複数の関係区分に区分し、前記ＣＬ計算処理を前記各関係区分毎の前記ＣＬ計算処理に分割させるステップと、
前記各スレーブサーバに対し、前記関係区分の各小軌跡を操作区間毎に特定し、前記分散処理単位としてその処理を依頼させるステップとを備えたこと、
を特徴とするＮＣデータ作成プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ＮＣ加工データ作成工程におけるＣＬ（Ｃｕｔｔｅｒ  Ｌｏｃａｔｉｏｎ）計算等を処理するための並列分散処理システム、ＮＣデータ作成方法及びＮＣデータ作成プログラムに関するものである。
【０００２】
【従来の技術】
現代の製造業では、あらゆる分野においてＣＡＤ／ＣＡＭシステムを用いた設計・製造が行われている。例えば、金型の製造では、先ず、ＣＡＤを用いて金型のモデルデータが作成され、その後、このモデルデータを基準として金型のＮＣ加工が行われる。
【０００３】
ところで、ＮＣ加工を行うためには、モデルデータを基礎データとしてＮＣ加工機の作動を制御するＮＣデータを作成する工程が必要である。しかし、このＮＣデータ作成工程は、例えば、加工時に工具が辿る工具軌跡（ＣＬ：Ｃｕｔｔｅｒ  Ｌｏｃａｔｉｏｎ）を計算するＣＬ計算処理等、大量の計算を処理する必要があるため非常に時間がかかる。そのため、ＮＣデータ作成工程においては、計算処理の効率化及び高速化が一つの課題となっている。
【０００４】
従来、このような大量の計算を高速に処理するシステムとして、一連の計算を所定の分散処理単位に分割し、ネットワークを介して相互に接続された複数の情報処理装置により並列的且つ分散的に処理する並列分散処理システムがある（特許文献１参照）。
【０００５】
【特許文献１】
特開２００２−１５７２３０号公報
【０００６】
【発明が解決しようとする課題】
しかし、ＮＣデータ作成工程に用いられる従来の並列分散処理システムは、例えば、ＣＬ計算処理の場合、その分散処理単位が、切削工程単位や工具単位等の計算条件及びモデルが完全に独立した比較的大きな単位であるため、各情報処理装置が負担する処理量にバラツキがでやすい。そのため、特定の情報処理装置の負荷が極端に大きくなるおそれがあり、また処理待ちが発生する場合もあるため、結果的に並列分散処理システムとしての処理効率が低下し、ＮＣデータ作成に時間を要する場合があるという問題がある。
【０００７】
本発明はこうした実情に鑑みてなされたものであり、その目的は、安定的に高い処理効率を確保することできる分散処理システム、ＮＣデータ作成方法及びＮＣデータ作成プログラムを提供することにある。
【０００８】
【課題を解決するための手段】
以下、上記目的を達成するための手段及びその作用効果について記載する。
請求項１に記載の発明は、複数のスレーブサーバと、基礎データ及び計算条件に基づいて処理すべき計算を所定の分散処理単位に分割し前記各スレーブサーバにその処理を依頼するマスタサーバとを備え、前記各スレーブサーバは、前記マスタサーバに依頼された処理を実行しその処理結果を返信する並列分散処理システムであって、前記マスタサーバは、ＮＣ加工機の作動を制御するＮＣデータを作成するためのＮＣデータ作成処理を実行するものであり、前記ＮＣデータ作成処理を構成するＣＬ計算処理において、工具軌跡を工具とワーク又はモデルとの位置関係により複数の関係区分に区分し、前記ＣＬ計算処理を前記各関係区分毎の前記ＣＬ計算処理に分割し、前記各スレーブサーバに対し、前記関係区分の各小軌跡を操作区間毎に特定し、前記分散処理単位としてその処理を依頼することを要旨とする。
【０００９】
この並列分散処理システムによれば、スレーブサーバへ依頼する個々の処理の計算量が少なくなる。これにより、各処理間の計算量のバラツキが小さくなり、特定のスレーブサーバへの負荷集中及び処理待ちの発生が防止される。従って、並列分散処理システム全体としての処理効率を向上させ、ＮＣデータ作成工程の短縮化を図ることができる。
【００１０】
請求項２に記載の発明は、前記マスタサーバは、前記スレーブサーバから受信した処理結果を前記関係区分及び操作区間に基づいて整合することにより各工具単位のＮＣデータを作成し、該各工具単位のＮＣデータを整合することにより全体のＮＣデータを作成することを要旨とする。
【００１１】
この並列分散処理システムによれば、ＮＣデータ作成工程におけるＣＬ計算処理について、工程単位、工具単位、更に関係区分単位のＣＬ計算処理に分割して処理するので、スレーブサーバへ依頼する個々の処理の計算量が少なくなる。これにより、各処理間の計算量のバラツキが小さくなり、特定のスレーブサーバへの負荷集中及び処理待ちの発生が防止される。従って、並列分散処理システム全体としての処理効率を向上させ、ＮＣデータ作成工程の短縮化を図ることができる。
【００１２】
また、ＣＬ計算処理を小さな計算処理単位に分割したので、マスタサーバへの処理結果の送信が断続的に分散して行われる。従って、ネットワーク負荷が小さくなり、ネットワーク状態が安定する。
【００１３】
請求項３に記載の発明は、前記ＣＬ計算処理は、自由曲面を複数の三角形群で表現するＳＴＬデータと、該ＳＴＬデータで表現されるＳＴＬモデルを格子状の小区画に区画し該小区画とＳＴＬモデルとの各三角面の位置関係を特定する区画データを基礎データとして処理されることを要旨とする。
【００１４】
この並列分散処理システムによれば、ＳＴＬモデル（の各三角面）は、小区画ごとに管理されるので、工具が位置する小区画を特定することにより、工具とＳＴＬモデルの三角面の位置関係が明確となる。従って、ＳＴＬデータを参照する際には、関連する小区画のＳＴＬデータのみを参照して処理をすることができ、処理効率を向上させることができる。
【００１５】
請求項４に記載の発明は、前記マスタサーバは、前記各スレーブサーバに対し、少なくとも一の前記処理を依頼するものであって、該処理の処理結果を受信した場合には、該処理を返信した前記スレーブサーバに対し一の前記処理を依頼することを要旨とする。
【００１６】
この並列分散処理システムによれば、各スレーブサーバに依頼する処理の計算量にバラツキがある場合でも、計算量の少ない処理を実行するスレーブサーバが、計算量の多い処理を実行するスレーブサーバよりも、より多くの数の処理を実行することにより、各スレーブサーバ間の処理量が均一化される。また、各スレーブサーバ間に処理能力の差異がある場合であっても、処理能力が高いスレーブサーバは、処理能力の低いスレーブサーバが処理を終了するのを待機することなく、多くの数の処理を実行することが可能になる。その結果、並列分散処理システム全体の処理効率を向上させることができる。
【００１７】
更に、マスタサーバと各スレーブサーバとの間の受送信が分散化されるので、ネットワーク負荷を軽減することができ、ネットワーク状態を安定化させることができる。加えて、マスタサーバから各スレーブサーバへの処理依頼は、一の処理依頼に対する処理結果の送信で完結するので、各スレーブサーバの数を動的に増減することができる。
【００１８】
請求項５に記載の発明は、前記マスタサーバは、前記依頼する前に予め前記基礎データ及び計算条件をブロードキャスト配信することを要旨とする。
この並列分散処理システムによれば、基礎データ及び計算条件データを予めブロードキャスト配信することにより、ネットワーク負荷を軽減することができ、ネットワーク状態を安定化させることができる。特に、基礎データ及び計算条件データを頻繁に参照するような計算を処理する場合には、その効果が大きいことに加え、各スレーブサーバが基礎データ及び計算条件データを保持し個々に参照することにより処理効率が向上し、結果としてシステム全体としての処理効率を向上させることができる。
【００１９】
請求項６に記載の発明は、複数のスレーブサーバと、基礎データ及び計算条件に基づいて処理すべき計算を所定の分散処理単位に分割し前記各スレーブサーバにその処理を依頼するマスタサーバとを備え、前記各スレーブサーバは、前記マスタサーバに依頼された処理を実行しその処理結果を返信する並列分散処理システムにより、ＮＣ加工機の作動を制御するＮＣデータを作成するＮＣデータ作成処理を実行するＮＣデータ作成方法であって、前記ＮＣデータ作成処理を構成するＣＬ計算処理において、工具軌跡を工具とワーク又はモデルとの位置関係により複数の関係区分に区分し、前記ＣＬ計算処理を前記各関係区分毎の前記ＣＬ計算処理に分割するステップと、前記各スレーブサーバに対し、前記関係区分の各小軌跡を操作区間毎に特定し、前記分散処理単位としてその処理を依頼するステップとを備えたことを要旨とする。
【００２０】
このＮＣデータ作成方法によれば、スレーブサーバへ依頼する個々の処理の計算量が少なくなる。これにより、各処理間の計算量のバラツキが小さくなり、特定のスレーブサーバへの負荷集中及び処理待ちの発生が防止される。従って、並列分散処理システム全体としての処理効率を向上させ、ＮＣデータ作成工程の短縮化を図ることができる。
【００２１】
請求項７に記載の発明は、前記スレーブサーバから受信した処理結果を前記関係区分及び操作区間に基づいて整合することにより各工具単位のＮＣデータを作成するステップと、前記各工具単位のＮＣデータを整合することにより全体のＮＣデータを作成するステップとを備えたことを要旨とする。
【００２２】
このＮＣデータ作成方法によれば、ＮＣデータ作成工程におけるＣＬ計算処理について、工程単位、工具単位、更に関係区分単位のＣＬ計算処理に分割して処理するので、スレーブサーバへ依頼する個々の処理の計算量が少なくなる。これにより、各処理間の計算量のバラツキが小さくなり、特定のスレーブサーバへの負荷集中及び処理待ちの発生が防止される。従って、並列分散処理システム全体としての処理効率を向上させ、ＮＣデータ作成工程の短縮化を図ることができる。
【００２３】
請求項８に記載の発明は、前記ＣＬ計算処理は、自由曲面を複数の三角形群で表現するＳＴＬデータと、該ＳＴＬデータで表現されるＳＴＬモデルを格子状の小区画に区画し該小区画とＳＴＬモデルの各三角面との位置関係を特定する区画データを基礎データとして処理することを要旨とする。
【００２４】
このＮＣデータ作成方法によれば、ＳＴＬモデル（の各三角面）は、小区画ごとに管理されるので、工具が位置する小区画を特定することにより、工具とＳＴＬモデルの三角面の位置関係が明確となる。従って、ＳＴＬデータを参照する際には、関連する小区画のＳＴＬデータのみを参照して処理をすることができ、処理効率を向上させることができる。
【００２５】
請求項９に記載の発明は、複数のスレーブサーバと、基礎データ及び計算条件に基づいて処理すべき計算を所定の分散処理単位に分割し前記各スレーブサーバにその処理を依頼するマスタサーバとを備え、前記各スレーブサーバは、前記マスタサーバに依頼された処理を実行しその処理結果を返信する並列分散処理システムに、ＮＣ加工機の作動を制御するＮＣデータを作成するためのＮＣデータ作成処理を実行させるＮＣデータ作成プログラムであって、前記ＮＣデータ作成処理を構成するＣＬ計算処理において、前記マスタサーバに、工具軌跡を工具とワーク又はモデルとの位置関係により複数の関係区分に区分し、前記ＣＬ計算処理を前記各関係区分毎の前記ＣＬ計算処理に分割させるステップと、前記各スレーブサーバに対し、前記関係区分の各小軌跡を操作区間毎に特定し、前記分散処理単位としてその処理を依頼させるステップとを備えたことを要旨とする。
【００２６】
このＮＣデータ作成プログラムによれば、スレーブサーバへ依頼する個々の処理の計算量が少なくなる。これにより、各処理間の計算量のバラツキが小さくなり、特定のスレーブサーバへの負荷集中及び処理待ちの発生が防止される。従って、並列分散処理システム全体としての処理効率を向上させ、ＮＣデータ作成工程の短縮化を図ることができる。
【００２７】
【発明の実施の形態】
以下、本発明を具体化した一実施形態について図面を参照しつつ説明する。
図１は、本実施形態の並列分散処理システムの構成を示す概略構成図である。
【００２８】
同図に示すように、本実施形態の並列分散処理システム１は、ネットワーク２を介して相互に接続された、クライアント端末３と、マスタサーバ４と、複数のスレーブサーバ５ａ〜５ｃとを備えている。
【００２９】
クライアント端末３は、計算の基礎データＤｂ及び計算条件データＤｃｃを入力するための情報処理装置であり、入力された基礎データＤｂ及び計算条件データＤｃｃをマスタサーバ４に転送し、その処理を依頼する信号（依頼信号）を発信する。そして、マスタサーバ４及びスレーブサーバ５ａ〜５ｃは、入力された基礎データＤｂ及び計算条件データＤｃｃに基づいて処理すべき計算を並列的且つ分散的に処理する。
【００３０】
詳述すると、マスタサーバ４は、クライアント端末３からの依頼信号を受信すると、入力された基礎データＤｂ及び計算条件データＤｃｃに基づいて、処理すべき計算を所定の分散処理単位に分割し、その処理を各スレーブサーバ５ａ〜５ｃに依頼する。各スレーブサーバ５ａ〜５ｃは、マスタサーバ４から依頼された処理を実行し、その処理結果をマスタサーバ４に送信（返信）する。そして、マスタサーバ４は、各スレーブサーバ５ａ〜５ｃから受信した処理結果を整合し、依頼信号に対応する計算の処理結果としてクライアント端末３へ転送する。
【００３１】
本実施形態では、マスタサーバ４は、各スレーブサーバ５ａ〜５ｃに対し、少なくとの一の処理を依頼する。詳しくは、各スレーブサーバ５ａ〜５ｃのＣＰＵの数に比例する数の処理（一のＣＰＵに対し一つの処理）を依頼する。例えば、マスタサーバ４は、一のＣＰＵ６，７を有するスレーブサーバ５ａ，５ｃには、それぞれ一の処理を依頼し、二つのＣＰＵ８ａ，８ｂを有するスレーブサーバ５ｂには、二つの処理を依頼する。
【００３２】
そして、マスタサーバ４は、一の処理結果を受信する毎に、当該処理結果の送信先のスレーブサーバに対し、再び一の処理を依頼する。例えば、マスタサーバ４は、スレーブサーバ５ａから一の処理結果を受信した場合には、再びスレーブサーバ５ａに一の処理を依頼する。
【００３３】
また、本実施形態では、マスタサーバ４は、各スレーブサーバ５ａ〜５ｃに対し最初の処理を依頼する前、即ち並列分散処理を開始する前に、予め基礎データＤｂ及び計算条件データＤｃｃをブロードキャスト配信する。各スレーブサーバ５ａ〜５ｃには、このブロードキャスト配信された基礎データＤｂ及び計算条件データＤｃｃを受信する機能が実装されており、各スレーブサーバ５ａ〜５ｃは、受信した基礎データＤｂ及び計算条件データＤｃｃを記憶装置９ａ〜９ｃに記憶する。そして、各スレーブサーバ５ａ〜５ｃは、マスタサーバ４から依頼された処理する実行する際には、記憶装置９ａ〜９ｃから基礎データＤｂ及び計算条件データＤｃｃを読み出すことによりその処理を行う。
【００３４】
尚、本実施形態では、各スレーブサーバ５ａ〜５ｃが受信する基礎データＤｂ及び計算条件データＤｃｃは、そのＣＰＵの数にかかわらず一つ（一組）であり、各スレーブサーバ５ａ〜５ｃにおいて、そのＣＰＵの数に応じてコピー又はエイリアシングされる。
【００３５】
また、本実施形態では、ネットワーク２には、マスタサーバ４及び各スレーブサーバ５ａ〜５ｃが実行すべき計算処理のスケジューリングを行うジョブコントローラ１０が接続されており、クライアント端末３から発信された依頼信号は、ＪＯＢとしてジョブコントローラ１０のジョブデータベース１０ａに登録される。そして、ジョブコントローラ１０は、設定されたスケジュール又は起動条件に従ってマスタサーバ４にＪＯＢ起動命令を送信する。そして、マスタサーバ４は、このＪＯＢ起動命令を受信することにより、対応する計算の処理を開始する。
【００３６】
尚、並列分散処理システム１を構成する情報処理装置が提供するクライアント端末３、マスタサーバ４、複数のスレーブサーバ５ａ〜５ｃ及びジョブコントローラ１０としての機能は、各情報処理装置上で実行されるコンピュータプログラムにより実現される。このようなプログラムは、可搬媒体に格納された状態で提供され、又は、ネットワーク上に接続された他の情報処理装置の記憶装置からネットワークを介して提供される。提供されたプログラムは記憶装置にインストールされ、起動時にメモリ（図示せず）にロードされて実行されるものである。
【００３７】
本実施形態では、マスタサーバ４及び各スレーブサーバ５ａ〜５ｃを構成する各情報処理装置には、同一のモジュール構成を有するプログラムがインストールされている。そして、上記ＪＯＢ起動命令を受信した際にＪＯＢ起動命令に対応する基礎データＤｂ及び計算条件データＤｃｃを保有する情報処理装置、即ちクライアント端末３から基礎データＤｂ及び計算条件データＤｃｃが転送された情報処理装置がマスタサーバとなる。
【００３８】
次に、本実施形態の並列分散処理システムによる並列分散処理の態様について説明する。
図２に示すように、マスタサーバ４は、ＪＯＢ起動命令（依頼信号）を受信すると、先ず、各スレーブサーバ５ａ〜５ｃに対し、並列分散処理の開始宣言を配信する（ステップ１０１）。そして、受信したＪＯＢ起動命令に対応する基礎データＤｂ及び計算条件データＤｃｃを読出し、処理すべき計算を所定の分散処理単位に分割する（ステップ１０２）。
【００３９】
一方、各スレーブサーバ５ａ〜５ｃは、マスタサーバ４が配信した並列分散処理の開始宣言を受信すると（ステップ２０１）、マスタサーバ４に対し、処理依頼待ち信号を送信する（ステップ２０２）。このステップ２０２において、各スレーブサーバ５ａ〜５ｃは、依頼された処理の実行が可能な状態のＣＰＵ（処理能力に余裕があるＣＰＵ）の数と同数の処理依頼待ち信号を送信する。従って、上記ステップ２０１の開始宣言の受信直後の場合には、各スレーブサーバ５ａ〜５ｃは、一のＣＰＵについて一の処理依頼待ち信号を送信する。
【００４０】
次に、マスタサーバ４は、各スレーブサーバ５ａ〜５ｃが送信した処理依頼待ち信号を受信すると（ステップ１０３）、その処理依頼待ち信号を送信したスレーブサーバに対し、一の処理依頼待ち信号について一の処理を依頼する（ステップ１０４）。そして、各スレーブサーバ５ａ〜５ｃは、マスタサーバ４から送信された処理依頼を受信する（ステップ２０３）。
【００４１】
次に、各スレーブサーバ５ａ〜５ｃは、マスタサーバ４から並列分散処理の終了宣言が配信されているか否か（終了宣言を受信したか否か）を判断する（ステップ２０４）。そして、終了宣言を受信しない場合には、上記ステップ２０３において受信した処理（依頼された処理）を実行し（ステップ２０５）、その処理結果をマスタサーバ４に送信（返信）する（ステップ２０６）。
【００４２】
そして、上記ステップ２０２に戻り、再びマスタサーバ４に対して処理依頼待ち信号を送信する。そして、各スレーブサーバ５ａ〜５ｃは、上記ステップ２０４で終了宣言を受信したと判断するまで上記ステップ２０２〜ステップ２０６までの処理を繰り返す。
【００４３】
一方、マスタサーバ４は、各スレーブサーバ５ａ〜５ｃから処理結果を受信すると、その処理結果を記憶装置４ａ（図１参照）に書き込む（ステップ１０５）。尚、本実施形態では、この書き込み処理の終了を待たずに次のステップ１０６の処理へ移行する。即ち、マスタサーバ４は、処理依頼の送信と、処理結果の書込とを同時並列的に行う。
【００４４】
次に、マスタサーバ４は、各スレーブサーバ５ａ〜５ｃに依頼した処理の処理結果を全て受信したか否か（受信した処理結果の数が依頼した処理の数と等しいか否か）を判断する（ステップ１０６）。そして、マスタサーバ４は、スレーブサーバに依頼した処理の処理結果を全て受信するまで、上記ステップ１０３〜ステップ１０６までの処理を繰り返す。そして、マスタサーバ４は、依頼した全ての処理の処理結果を受信した場合には、各スレーブサーバ５ａ〜５ｃに終了宣言を配信し、その処理を終了する（ステップ１０７）。
【００４５】
［ＮＣデータ作成処理］
次に、本実施形態の並列分散処理システムによるＮＣデータ作成処理について詳述する。
【００４６】
ＮＣデータ作成処理は、ＮＣ加工の各工程で使用する各工具について、加工時にその工具が辿る工具軌跡（ＣＬ：Ｃｕｔｔｅｒ  Ｌｏｃａｔｉｏｎ）を計算するＣＬ計算処理を行い、作成された各工具単位でのＮＣデータ（工具単位ＮＣデータ）を整合することによりＮＣ加工全体のＮＣデータを作成する処理である。
【００４７】
図１に示すように、本実施形態の並列分散処理システム１は、クライアント端末３にモデルデータＤｍ及び計算条件データＤｃｃが入力されることにより、ＮＣ加工機１５の作動を制御するＮＣデータを作成する処理（ＮＣデータ作成処理）を実行する。
【００４８】
詳述すると、クライアント端末３は、モデルデータＤｍ及び計算条件データＤｃｃが入力されると、このモデルデータＤｍ及び計算条件データＤｃｃをマスタサーバ４に転送し、ＮＣデータ作成処理の実行を依頼する信号を発信する。そして、マスタサーバ４は、依頼信号（ＪＯＢ起動命令）を受信することにより、このＪＯＢ起動命令に対応するＮＣデータ作成処理を開始する。
【００４９】
尚、本実施形態では、モデルデータＤｍとして面モデルデータが用いられ、計算条件データＤｃｃには、ＮＣ加工の各工程（加工工程）Ｓ、各工程で使用する工具Ｔ、及びその工具に関する情報（各工具の仕様Ｔｖ、その工具を用いた加工方法Ｔｍ）等が含まれる（図３参照）。
【００５０】
次に、並列分散処理システムによるＮＣデータ作成処理について詳述する。
図４は、ＮＣデータ作成処理のフローチャートである。
同図に示すように、マスタサーバ４は、ＮＣデータ作成処理に関するＪＯＢ起動命令を受信すると（ステップ３０１）、各スレーブサーバ５ａ〜５ｃに対しモデルデータＤｍ及び計算条件データＤｃｃをブロードキャスト配信する。そして、各スレーブサーバ５ａ〜５ｃは、受信したモデルデータＤｍ及び計算条件データＤｃｃを、その記憶装置９ａ〜９ｃに記憶する（ステップ３０２）。
【００５１】
次に、マスタサーバ４（及び各スレーブサーバ５ａ〜５ｃ）は、各工程で使用する各工具について、それぞれＣＬ計算処理を行い、それぞれの工具単位ＮＣデータを作成する（ステップ３０３〜ステップ３０９）。例えば、計算対象のＮＣ加工が第１〜第３工程の３工程あり、各工程でそれぞれ２種類の工具を使用する場合、マスタサーバ４（及び各スレーブサーバ５ａ〜５ｃ）は、第１工程第１工具〜第３工程第２工具までの６工具、それぞれについてＣＬ計算処理を行い、それぞれの工具単位ＮＣデータＤｄｎｃを作成する。
【００５２】
詳述すると、マスタサーバ４は、先ず、計算条件データＤｃｃから工程数Ｓｎを読み出す（ステップ３０３、図１及び図３参照）。そして、マスタサーバ４は、同じく計算条件データＤｃｃから第ｉ工程で使用する工具数Ｔｎを読み出す（ステップ３０４）。
【００５３】
次に、マスタサーバ４及び各スレーブサーバ５ａ〜５ｃは、モデルデータＤｍを基礎データとして面近似計算処理を行い、ＣＬ計算処理を実行するための基礎データとなるＳＴＬデータＤｓｔｌを作成する（ステップ３０５）。
【００５４】
面近似計算処理は、モデルデータＤｍが表現する面モデルの自由曲面（三次元自由曲面）を三角形（三角パッチ）で近似し（面近似計算）、これらの三角形群及びその座標によりモデルを表現するＳＴＬデータ（標準三角パッチ言語：Ｓｔａｎｄａｒｄ  Ｔｒｉａｎｇｕｌａｔｉｏｎ  Ｌａｎｇｕａｇｅ）Ｄｓｔｌを生成する計算処理である。尚、ここでいう面モデルの自由曲面は、平面、円筒面等を含む。
【００５５】
このステップ３０５において、マスタサーバ４は、面モデルの各面を分散処理単位として各スレーブサーバ５ａ〜５ｃに面近似計算の処理を依頼する。そして、各スレーブサーバ５ａ〜５ｃは、ステップ３０２において記憶装置９ａ〜９ｃに記憶したモデルデータＤｍ及び計算条件データＤｃｃを読み出すことにより、依頼された処理（モデルの各面毎の面近似計算）を実行し、その処理結果をマスタサーバ４に送信（返信）する。そして、マスタサーバ４は、各スレーブサーバ５ａ〜５ｃから受信した処理結果を整合しＳＴＬデータＤｓｔｌを作成する。
【００５６】
次に、マスタサーバ４は、上記ステップ３０５において作成されたＳＴＬデータＤｓｔｌを、以下に示すＣＬ計算処理の基礎データとしてブロードキャスト配信する。そして、各スレーブサーバ５ａ〜５ｃは、上記ステップ３０２の場合と同様に、受信したＳＴＬデータＤｓｔｌを、その記憶装置９ａ〜９ｃに記憶する（ステップ３０６）。
【００５７】
次に、マスタサーバ４及び各スレーブサーバ５ａ〜５ｃは、上記ステップ３０５において作成したＳＴＬデータＤｓｔｌ、及び計算条件データＤｃｃに基づいて、第ｉ工程においてｊ番目に使用する工具、即ち第ｉ工程第ｊ工具のＣＬ計算処理を実行する。そして、マスタサーバ４は、その処理結果、即ち第ｉ工程第ｊ工具の工具単位ＮＣデータＤｄｎｃとして記憶装置４ａ（図１参照）に書き込む（ステップ３０７）。
【００５８】
尚、本実施形態では、ＣＬ計算上、要求されるモデル面の近似精度（三角形の大きさ）は各工具ごとに異なるため、上記ステップ３０５，３０６における面近似計算処理及びＳＴＬデータＤｓｔｌの配信は各工具ごとに行われる。そして、このステップ３０７で行うＣＬ計算処理では、第ｉ工程第ｊ工具用のＳＴＬデータＤｓｔｌが基礎データとして参照される。
【００５９】
例えば、荒取り工程の第１工具と細仕上げ工程の最終工具とでは、工具の加工精度に従ってその要求するモデル面の近似精度も大きく異なる。そのため、荒取り工程第１工具のＣＬ計算処理では、荒取り工程第１工具用のＳＴＬデータＤｓｔｌが、細仕上げ工程最終工具のＣＬ計算処理では、細仕上げ工程最終工具用のＳＴＬデータＤｓｔｌが基礎データとして参照される。
【００６０】
次に、第ｉ工程第ｊ工具のＣＬ計算処理が終了すると、マスタサーバ４（及び各スレーブサーバ５ａ〜５ｃ）は、第ｉ工程において使用する全ての工具のＣＬ計算処理が終了したか否か（ｊ＝ｊ＋１，ｊ＞Ｔｎ）を判断する（ステップ３０８）。そして、マスタサーバ４（及びスレーブサーバ５ａ〜５ｃ）は、第ｉ工程における全ての工具のＣＬ計算処理が終わるまで、上記ステップ３０５〜ステップ３０８の処理を繰り返す。
【００６１】
例えば、上記ステップ３０７において第１工程における第１工具のＣＬ計算処理が終了すると、マスタサーバ４は、次のステップ３０８において第１工程に第２工具があるか否かを判断する。そして、第１工程に第２工具がある場合には、再びステップ３０５に戻り、第１工程第２工具用の面近似処理及びＳＴＬデータＤｓｔｌの配信、そして第１工程第２工具のＣＬ計算処理を実行する。そして、第１工程で使用する全ての工具についてＣＬ計算処理を実行するまで上記ステップ３０５〜３０８の処理を繰り返す。
【００６２】
次に、マスタサーバ４は、ステップ３０８において第ｉ工程で使用する全ての工具についてのＣＬ計算処理が終了したと判断すると、ＮＣ加工における全工程に関するＣＬ計算処理が終了したか否か（ｉ＝ｉ＋１，ｉ＞Ｓｎ）を判断する（ステップ３０９）。そして、全ての工具のＣＬ計算処理が終わるまで、上記ステップ３０４〜ステップ３０９の処理を繰り返す。
【００６３】
例えば、第１工程で使用する全ての工具のＣＬ計算処理が終了すると、マスタサーバ４は、ステップ３０９において第２工程があるか否かを判断する。そして、第２工程がある場合には、再びステップ３０４に戻り、ステップ３０５〜３０８の処理を繰り返すことにより、第２工程で使用する全ての工具についてのＣＬ計算処理を実行する。
【００６４】
そして、全工程における全工具についてのＣＬ計算処理が終了すると、マスタサーバ４は、上記ステップ３０５〜ステップ３０９により作成された各工具単位ＮＣデータＤｄｎｃを整合し、ＮＣ加工全体のＮＣデータＤｎｃを作成する（ステップ４１０）。そして、マスタサーバ４が、作成したＮＣデータをクライアント端末３へと転送することにより、ＮＣデータ作成処理が終了する。
【００６５】
尚、本実施形態の並列分散処理システム１では、クライアント端末３に送信されたＮＣデータは、記憶媒体（ＮＣテープ）に記録されてＮＣ加工機１５に転送される構成であるが、クライアント端末３とＮＣ加工機１５とをネットワーク接続し、ＮＣデータを直接ＮＣ加工機１５へ送信する構成としてもよい（図１参照）。
【００６６】
次に、ＣＬ計算処理について詳述する。
図５はＣＬ計算処理の態様を示すフローチャートであり、図６はＣＬ計算処理におけるモデル管理の態様を示す説明図、図７は加工時の工具軌跡（ＣＬ）の説明図である。
【００６７】
図５に示すように、マスタサーバ４及びスレーブサーバ５ａ〜５ｃは、先ず、ＳＴＬデータＤｓｔｌ及び計算条件データＤｃｃを基礎データとして区画計算処理を行い、ＳＴＬモデルＭｓｔｌの各三角面（ＳＴＬデータＤｓｔｌにより表現される面）を管理をするための区画データＤｄｉｖを生成する（ステップ４０１）。
【００６８】
図６に示すように、区画計算処理は、ＳＴＬモデルＭｓｔｌを格子状の小区画２５に区画し、ＳＴＬモデルＭｓｔｌの三角面２７（又はＳＴＬデータＤｓｔｌの三角座標の頂点）と各小区画２５との位置関係を特定する計算処理であり、例えば、小区画２５ａには、三角面２７ａ，２７ｂが含まれるという情報が区画データＤｄｉｖである。
【００６９】
そして、本実施形態では、マスタサーバ４及び各スレーブサーバ５ａ〜５ｃは、ＣＬ計算処理において基準モデルとなるＳＴＬモデルＭｓｔｌの三角面２７を各小区画２５毎に管理する。詳述すると、小区画２５の格子単位（小区画２５の一片の長さ）Ａ０は、工具３０のピッチ（切削幅）Ａ１の２分の１〜３分の１に設定されており、工具３０が位置する小区画は工具３０の工具軌道及びピッチＡ１から容易に特定することができる。そして、各小区画２５は、ＳＴＬモデルＭｓｔｌの三角面２７と関連付けられているため、ＳＴＬデータＤｓｔｌと区画データＤｄｉｖとの両方をＣＬ計算処理の基礎データとすることで、ＳＴＬモデルＭｓｔｌを工具３０との関係を各小区画２５単位で管理することができる。
【００７０】
このステップ４０１において、マスタサーバ４は、小区画２５を分散処理単位として各スレーブサーバ５ａ〜５ｃに区画計算の処理を依頼する。そして、各スレーブサーバ５ａ〜５ｃは、依頼された処理（各小区画２５に含まれる三角面２７に関する情報）を実行し、その処理結果をマスタサーバ４に送信（返信）する。そして、マスタサーバ４は、各スレーブサーバ５ａ〜５ｃから受信した処理結果を整合し区画データＤｄｉｖを生成する。
【００７１】
次に、マスタサーバ４は、上記ステップ４０１において生成された区画データＤｄｉｖをＣＬ計算処理を構成するステップ４０３以降の処理の基礎データとしてブロードキャスト配信する。そして、各スレーブサーバ５ａ〜５ｃは、受信した区画データＤｄｉｖをその記憶装置９ａ〜９ｃに記憶する（ステップ４０２）。
【００７２】
次に、マスタサーバ４は、ＳＴＬデータＤｓｔｌ及び区画データＤｄｉｖを基礎データとして、工具軌跡を工具とワーク（モデル）との位置関係により区分（関係区分）し、ＣＬ計算処理を各関係区分毎のＣＬ計算処理に分割する（ステップ４０３）。
【００７３】
詳述すると、図７に示すように、ＮＣ加工時の工具軌跡３３は、一定の関係区分及び操作単位により区分することができる。例えば、加工方法が走査線加工である場合、その工程において、工具３０は、先ず、基準点Ｏから開始点Ｐ０へと移動する。次に、工具３０は、ワーク３１に向かって図中Ｘ方向へと移動し、ワーク３１に接触する。そして、工具３０は、切削面３１ａを切削しながら更にＸ方向に移動し、切削面３１ａを通過しワーク３１から離間した後も所定距離だけ同方向に移動する。次に、ワークから所定距離の位置まで移動すると、工具３０は、そのピッチ（切削幅）分だけＹ方向に軌道をずらし（ピック移動）、Ｘ方向反対側へと移動する。そして、工具３０は、このようなワーク３１への接触、切削、離間、ピック移動からなる操作単位を繰り返しＸ方向に往復運動しつつ、その軌道を徐々にＹ方向にずらしながら切削面３１ａを切削していく。そして、終了点Ｐ１まで移動すると、工具３０は、再び基準点Ｏへと移動する。そして、工具３０が基準点Ｏに復帰することにより、一工程が終了する。
【００７４】
本実施形態では、上記のような工具軌跡３３について、工具３０とワーク３１との位置関係の区分、即ち関係区分において、工具３０が、ワーク３１に接触しその切削面を切削する区間を切削部Ｒｃ、ワーク３１から離間し所定距離移動する区間をリトラクト（ＲＴＲ）部Ｒｒと定義している。同様に、工具３０が、ピック移動する区間をピック部Ｒｐ、ピック移動から再びワーク３１に接触する区間をアプローチ（ＡＰＲ）部Ｒａとし、基準点Ｏから開始点Ｐ０或いは終了点から基準点Ｏへ移動する場合等の工具３０が空走する区間をエアカット部Ｒａｃと定義している。
【００７５】
そして、ステップ４０３において、マスタサーバ４は、ＣＬ計算処理を、上記の切削部Ｒｃ、リトラクト部Ｒｒ／アプローチ部Ｒａ、ピック部Ｒｐ、及びエアカット部Ｒａｃの各関係区分毎のＣＬ計算処理に分割する。
【００７６】
次に、マスタサーバ４及びスレーブサーバ５ａ〜５ｃは、上記ステップ４０３において分割した各関係区分毎のＣＬ計算処理を順次実行する（ステップ４０４〜ステップ４０７）。
【００７７】
また、本実施形態では、使用する加工方法の操作単位毎、例えば、図７に示す走査線加工の場合、工具３０がアプローチ部Ｒａからピック部ＲｐまでＸ方向に移動する区間を一の操作区間Ｕと定義している。尚、図７に示すような走査線加工の場合は、エアカット部Ｒａｃが最初と最後しかないため、本実施形態では、各エアカット部Ｒａｃについては、それ自体を独立した操作区間Ｕとして取り扱っている。
【００７８】
そして、マスタサーバ４は、このステップ４０４〜ステップ４０７における各関係区分毎のＣＬ計算において、その関係区分の各小軌跡を操作区間Ｕごとに特定し分散処理単位として、その処理をスレーブサーバ５ａ〜５ｃに依頼する。
【００７９】
例えば、マスタサーバ４は、ステップ４０４の切削部ＲｃのＣＬ計算処理においては、関係区分としての切削部Ｒｃの各小軌跡３５を各操作区間Ｕ毎に特定し分散処理単位として、その処理をスレーブサーバ５ａ〜５ｃに依頼する。そして、スレーブサーバ５ａ〜５ｃは、ＳＴＬデータＤｓｔｌ及び区画データＤｄｉｖを基礎データとして、依頼された処理（各小軌跡３５のＣＬ計算）を実行し、その処理結果をマスタサーバ４に送信（返信）する。そして、マスタサーバ４は、各スレーブサーバ５ａ〜５ｃから受信した処理結果、即ち、切削部Ｒｃに含まれる各小軌跡３５のＮＣデータを区分ＮＣデータＤｒｃとして記憶装置４ａ（図１参照）に書き込む。
【００８０】
そして、マスタサーバ４は、以下のステップ４０５〜ステップ４０７において、上記ステップ４０４と同様の処理を行い、リトラクト部Ｒｒ／アプローチ部Ｒａ、ピック部Ｒｐ、及びエアカット部Ｒａｃの各小軌跡３６〜３８を各操作区間Ｕ毎に特定し分散処理単位として、その処理を各スレーブサーバ５ａ〜５ｃに依頼する。そして、マスタサーバ４は、各スレーブサーバ５ａ〜５ｃから受信した処理結果を、区分ＮＣデータＤｒａｒ，Ｄｒｐ，Ｄｒａｃとして記憶装置４ａに書き込む。
【００８１】
そして、マスタサーバ４は、区分ＮＣデータＤｒｃ，Ｄｒａｒ，Ｄｒｐ，Ｄｒａｃとして記憶装置４ａに格納された切削部Ｒｃ、リトラクト部Ｒｒ／アプローチ部Ｒａ、ピック部Ｒｐ、及びエアカット部Ｒａｃの各小軌跡３５〜３８のＮＣデータを各関係区分及びその操作区間Ｕに基づいて整合し、工具単位ＮＣデータＤｄｎｃを作成する（ステップ４０８）。
【００８２】
例えば、先ず、エアカット部Ｒａｃの小軌跡３８ａについての区分ＮＣデータＤｒａｃに、第１番目の操作区間Ｕの切削部Ｒｃ、リトラクト部Ｒｒ／アプローチ部Ｒａ及びピック部Ｒｐの小軌跡３５ａ〜３７ａについての区分ＮＣデータＤｒｃ，Ｄｒａｒ，Ｄｒｐを整合する。そして、以下同様に第２番目以降の操作区間Ｕの小軌跡３５〜３７の区分ＮＣデータＤｒｃ，Ｄｒａｒ，Ｄｒｐを整合していく。そして、マスタサーバ４は、最終的に全ての区分ＮＣデータＤｒｃ，Ｄｒａｒ，Ｄｒｐ，Ｄｒａｃを整合することにより、工具単位ＮＣデータＤｄｎｃを作成する。
【００８３】
以上説明した本実施形態によれば、次の効果を得ることができる。
（１）マスタサーバ４は、各スレーブサーバ５ａ〜５ｃに対し、少なくとも一の処理を依頼し、一の処理結果を受信する毎に、当該処理結果の送信先のスレーブサーバに対し、再び一の処理を依頼する。
【００８４】
このような構成とすれば、各スレーブサーバ５ａ〜５ｃに依頼する個々の処理に計算量のバラツキがある場合でも、計算量の少ない処理を実行したスレーブサーバが、計算量の多い処理を実行するスレーブサーバよりも、より多くの数の処理を実行することにより、各スレーブサーバ５ａ〜５ｃ間の処理量が均一化される。
【００８５】
また、各スレーブサーバ間に処理能力の差異がある場合であっても、処理能力が高いスレーブサーバは、処理能力の低いスレーブサーバが処理を終了するのを待機することなく、多くの数の処理を実行することができるので、並列分散処理システム１全体の処理効率を向上させることができる。従って、互いに処理能力の異なる情報処理装置を用いても処理効率の高い並列分散処理システム１を構成することができる。
【００８６】
さらに、マスタサーバ４と各スレーブサーバ５ａ〜５ｃとの間での受送信が分散されるので、ネットワーク負荷を安定化することができる。加えて、マスタサーバ４から各スレーブサーバ５ａ〜５ｃへの処理依頼は、一の処理依頼に対する処理結果の送信で完結するので、各スレーブサーバの数を動的に増減することができる。
【００８７】
（２）マスタサーバ４は、各スレーブサーバ５ａ〜５ｃへの最初の処理依頼を送信する前、即ち並列分散処理を開始する前に、予め基礎データＤｂ及び計算条件データＤｃｃをブロードキャスト配信する。
【００８８】
このような構成とすれば、ネットワーク負荷が軽減されるので、ネットワーク状態を安定化させることができる。また、基礎データＤｂ及び計算条件データＤｃｃを頻繁に参照するような計算を処理する場合には、各スレーブサーバ５ａ〜５ｃが基礎データＤｂ及び計算条件データＤｃｃを保持することで、処理効率が向上する。
【００８９】
（３）マスタサーバ４は、工具軌跡（ＣＬ）を工具とワークとの位置関係により区分（関係区分）し、ＣＬ計算処理を、切削部、リトラクト部／アプローチ部、ピック部、及びエアカット部の各関係区分毎のＣＬ計算処理に分割する。そして、マスタサーバ４は、上記各関係区分毎のＣＬ計算において、かかる関係区分の各小軌跡を操作区間Ｕ毎に特定し、スレーブサーバ５ａ〜５ｃに分散処理単位としてその処理を依頼する。
【００９０】
このような構成とすれば、スレーブサーバ５ａ〜５ｃへ依頼する各処理間のバラツキが小さくなり、特定のスレーブサーバへの負荷集中及び処理待ちの発生を防止することができるので、並列分散処理システム全体としての処理効率を向上させることができる。
【００９１】
（４）マスタサーバ４及び各スレーブサーバ５ａ〜５ｃは、ＳＴＬモデルＭｓｔｌを格子状の小区画２５に区画し、その各三角面２７と各小区画２５との位置関係を特定する区画データＤｄｉｖを生成する。そして、この区画データＤｄｉｖをＳＴＬデータＤｓｔｌととももに、ＣＬ計算処理の基礎データとして、基準モデルとなるＳＴＬモデルＭｓｔｌの各三角面２７を各小区画２５毎に管理する。
【００９２】
このような構成とすれば、工具３０が位置する小区画２５を特定することにより、工具３０とＳＴＬモデルＭｓｔｌの三角面２７とが明確となるので、ＣＬ計算処理においては、ＳＴＬデータＤｓｔｌを参照する際に、関連する小区画２５のＳＴＬデータＤｓｔｌのみを参照して、ＣＬ計算の処理をすることができる。従って、各スレーブサーバ５ａ〜５ｃの処理が小さくなるので、処理効率を向上させることができる。
【００９３】
以上説明した実施形態は、次のように変更しても良い。
・本実施形態では、ネットワーク２を介してクライアント端末３とマスタサーバ４とを接続し、計算の基礎データＤｂ及び計算条件データＤｃｃは、クライアント端末３から入力することとした。しかし、これに限らず、クライアント端末３としての機能をマスタサーバ４に持たせても良い。
【００９４】
・本実施形態では、ネットワーク２には、ジョブコントローラ１０を接続し、クライアント端末３から発信された依頼信号は、一度、ジョブコントローラ１０に登録され、ＪＯＢ起動命令としてマスタサーバ４に送信される構成とした。しかし、これに限らず、クライアント端末３から発信された依頼信号が、ジョブコントローラ１０を介さずに、直接、マスタサーバ４に送信される構成であってもよい。
【００９５】
・本実施形態では、ＣＬ計算処理において、加工方法として走査線加工に具体化したが、等高線加工やその他の加工方法に具体化してもよい。
次に、上記各実施形態及び別例から把握できる技術思想について以下に追記する。
【００９６】
（イ）請求項９に記載のＮＣデータ作成プログラムおいて、
前記スレーブサーバから受信した処理結果を前記関係区分及び操作区間に基づいて整合することにより各工具単位のＮＣデータを作成させるステップと、
前記各工具単位のＮＣデータを整合することにより全体のＮＣデータを作成させるステップとを備えたこと、を特徴とするＮＣデータ作成プログラム。
【００９７】
（ロ）  請求項９又は前記（イ）に記載のＮＣデータ作成プログラムにおいて、
前記ＣＬ計算処理は、自由曲面を複数の三角形群で表現するＳＴＬデータと、ＳＴＬデータで表現されるＳＴＬモデルを格子状の小区画に区画し該小区画とＳＴＬモデルの各三角面との位置関係を特定する区画データを前記基礎データとして処理させること、を特徴とするＮＣデータ作成プログラム。
【００９８】
【発明の効果】
以上、詳述したように、本発明によれば、安定的に高い処理効率を確保することできる並列分散処理システム、ＮＣデータ作成方法及びＮＣデータ作成プログラムを提供することが可能になる。
【図面の簡単な説明】
【図１】並列分散処理システムの構成を示す概略構成図。
【図２】並列分散処理システムによる並列分散処理の態様を示すフローチャート。
【図３】計算条件データのデータ構造を概念的に示す説明図。
【図４】ＮＣデータ計算処理のフローチャート。
【図５】ＣＬ計算処理のフローチャート。
【図６】ＣＬ計算処理におけるモデル管理の態様を示す説明図。
【図７】加工時の工具軌跡（ＣＬ）の説明図。
【符号の説明】
１…並列分散処理システム、２…ネットワーク、３…クライアント端末、４…マスタサーバ、５ａ〜５ｃ…スレーブサーバ、１５…ＮＣ加工機、２５，２５ａ…小区画、２７，２７ａ，２７ｂ…三角面、３０，Ｔ…工具、３１…ワーク、３３…工具軌跡（ＣＬ）、３５〜３８，３５ａ，３６ａ，３７ａ，３８ａ…小軌跡、Ｄｃｃ…計算条件データ、Ｄｂ…基礎データ、Ｄｍ…モデルデータ、Ｄｓｔｌ…ＳＴＬデータ、Ｄｄｉｖ…区画データ、Ｍｓｔｌ…ＳＴＬモデル、Ｄｎｃ…ＮＣデータ、Ｄｄｎｃ…工具単位ＮＣデータ、Ｄｒｃ，Ｄｒａｒ，Ｄｒｐ，Ｄｒａｃ…区分ＮＣデータ、Ｒｃ…切削部、Ｒｒ…リトラクト部、Ｒａ…アプローチ部、Ｒｐ…ピック部、Ｒａｃ…エアカット部、Ｕ…操作区間。
【図１】
2005018266.tif 000003
【図２】
2005018266.tif 000004
【図３】
2005018266.tif 000005
【図４】
2005018266.tif 000006
【図５】
2005018266.tif 000007
【図６】
2005018266.tif 000008
【図７】
2005018266.tif 000009