(57)【特許請求の範囲】
【請求項１】
プリプレグテープの貼着経路を自動演算するプリプレグテープの経路計算方法であって、
テープの貼着面の三次元データを読み取る三次元データ読取ステップと、
記憶された三次元データに予定されているプリプレグテープの貼着方向に沿って、当該三次元データに与えられた任意の初期座標を始点として、基準レイアップパスを設定する基準レイアップパス設定ステップと、
前記基準レイアップパス設定ステップで設定された基準レイアップパスに基づいて特定される初期座標を始点として、当該基準レイアップパスに隣接する隣接レイアップパスを設定する隣接レイアップパス設定ステップと
を備え、各レイアップパス設定ステップは、
それぞれのレイアップパス設定ステップにおいて特定される初期座標を始点として経路を演算するサブモジュールとして、プリプレグテープの貼着面に予定されているプリプレグテープの貼着方向に基づく微小大きさの探索ベクトルを演算する探索ベクトル演算ステップと、
演算された探索ベクトルの終点から前記貼着面に下ろした垂線の足を演算する垂足演算ステップと
を含み、所定の終了条件が成立するまで、前記垂線の足と前記探索ベクトルの基点とに基づいて新たな探索ベクトルを演算するとともに、この新たな探索ベクトルに基づき、前記垂線の足を次の演算の始点として前記探索ベクトル演算ステップを繰り返すナビゲーティングステップを備えている
ことを特徴とするプリプレグテープの経路計算方法。
【請求項２】
請求項１記載のプリプレグテープの経路計算方法において、
前記隣接レイアップパス設定ステップは、演算の基礎となるレイアップパスを基準ラインとし、この基準ライン上の複数の点を始点とし、各始点を演算したときの探索ベクトルと当該貼着面に対する単位法線ベクトルとの外積を新たな探索ベクトルとして前記ナビゲーティングステップを実行することにより、演算される隣接レイアップパスの演算基準となる基準点を探索する基準点探索ステップと、探索された基準点を繋いで隣接レイアップパスを演算する基準点接続ステップと、演算された隣接レイアップパスを次の演算の基礎となるレイアップパスとして、所定の終了条件が成立するまで、前記基準点探索ステップ及び基準点接続ステップを繰り返すものである
ことを特徴とするプリプレグテープの経路計算方法。
【請求項３】
請求項２記載のプリプレグテープの経路計算方法において、
前記隣接レイアップパス設定ステップは、前記基準レイアップパスを境に貼着面が二分されている場合には、その一方の面について隣接レイアップパスを演算した後、前記外積と逆向きのベクトルを新たな探索ベクトルとして、前記ナビゲーティングステップを前記基準レイアップパスから実行することにより、他方の面について隣接レイアップパスを演算する
ことを特徴とするプリプレグテープの経路計算方法。
【請求項４】
請求項２または３記載のプリプレグテープの経路計算方法において、
前記基準点接続ステップが、各基準点を接続して暫定レイアップパスを演算するものであり、
演算された暫定レイアップパスの端部が当該貼着面の境界に達していない場合には、当該暫定レイアップパスの端部の点を始点とし、且つ当該暫定レイアップパスの端部における進行方向ベクトルに基づいて探索ベクトルを演算し、前記ナビゲーティングステップを実行することにより、当該暫定レイアップパスの端部を当該貼着面の境界まで延長して隣接レイアップパスを完成するレイアップ延長ステップをさらに備えている
ことを特徴とするプリプレグテープの経路計算方法。
【請求項５】
請求項１から４の何れか１項に記載のプリプレグテープの経路計算方法において、
前記探索ベクトル演算ステップは、当該貼着面が稜線によって折れている場合に前記探索ベクトルの終点が前記稜線を超えたときは、当該稜線を挟んで探索済の面に隣接する面に対する垂線の足を演算し、この隣接する面に対する垂線の足が存在する場合には、その垂線の足を次の演算の基礎とし、隣接する面に対する垂線の足が存在しない場合には、稜線に対する垂線の足を演算して、次の演算の基礎とするものである
ことを特徴とするプリプレグテープの経路計算方法。
【請求項６】
請求項１から５の何れか１項に記載のプリプレグテープの経路計算方法において、
前記基準レイアップパス設定ステップは、前記貼着面にテープを積層する場合には、初期座標から求めた垂線の足を通る前記貼着面の法線に沿ってプリプレグテープの厚さ分のオフセット量を求め、その終点を次層の始点として基準レイアップパスを演算するものであり、
前記探索ベクトル演算ステップは、演算の基準となる点から当該貼着面に対する垂線の足を演算し、この垂線の足を通る前記貼着面の法線方向に沿って、テープの厚さ分をオフセットした点を次の演算の始点に設定するものである
ことを特徴とするプリプレグテープの経路計算方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はプリプレグテープの経路計算方法に関する。
【背景技術】
【０００２】
複合材料、特に、繊維材料に樹脂を含浸させたプリプレグテープ（prepreg tape）の使用は、自動車、海洋、航空宇宙産業を含む種々の産業界で増加している。プリプレグテープは、車両の筐体を構成する貼付型（例えばマンドレル）等の被貼付体の表面に貼着され、積層される。
【０００３】
この貼着作業を自動で行うテープレイアップマシンは、平坦レイアップマシンと曲面レイアップマシンとに分類される。平坦レイアップマシンは、プリプレグテープの貼着時の制御が容易であるため、航空機のストリンガー等に利用されている。これに対し、曲面レイアップマシンは、プリプレグテープの貼着（積層）時に、たるみが生じやすく、皺が寄る傾向があり、その解決が困難な課題として残っている。レイアップマシンが適用できない場合、プリプレグテープは、やむなく手張りによって積層されている。そのため、皺の寄りを効果的に防止するため、曲面に適合したテープ経路（または、「レイアップテープパス」とも呼ばれている）を算出する方法を実用化する必要があった。
【０００４】
かかるニーズに応えて、例えば、特許文献１には、複合材料を曲面に貼着するに当たり、テープ経路を算出する方法が開示されている。特許文献１の方法では、製造対象となる製品の三次元の曲面を、当該曲面の境界線も含めて二次元の参照面(reference plane)にマッピングし、この参照面上でテープ経路を算出し、その座標を三次元に変換して、最終的な座標とする方法を採用している。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００７−１８５９４７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１の方法では、皺や弛みの解消が充分ではなかった。
【０００７】
図１及び図２を参照して、加工対象となる製品ＷＳの曲面が各図の（Ａ）に示すような円筒形、または円錐形の場合、これを各図の（Ｂ）に示すように、製品ＷＳの曲面Ｓを比較的精緻に平面に展開することができ、この平面上で最短距離を辿る経路を算出して、テープ経路とすれば、この平面上で最短距離を辿る経路は、概ね直線状に設定され、プリプレグテープの幅方向全域にわたって均等な荷重配分でテープを貼着することが可能になる。
【０００８】
しかしながら、図３に示したように、昨今の製品ＷＳによっては、複雑に湾曲した曲面Ｓを有するものも多数増加している。このような曲面Ｓは、精緻な２次元平面に展開することが困難であるため、自動化が実現されていなかった。
【０００９】
本発明は、上述した課題に鑑みてなされたものであり、様々な曲面に対応して皺無くプリプレグテープの貼着や積層を図ることのできるプリプレグテープの経路計算方法を提供することを課題としている。
【課題を解決するための手段】
【００１０】
上記課題を解決するために、本発明は、プリプレグテープの貼着経路を自動演算するプリプレグテープの経路計算方法であって、テープの貼着面の三次元データを読み取る三次元データ読取ステップと、記憶された三次元データに予定されているプリプレグテープの貼着方向に沿って、当該三次元データに与えられた任意の初期座標を始点として、基準レイアップパスを設定する基準レイアップパス設定ステップと、前記基準レイアップパス設定ステップで設定された基準レイアップパスに基づいて特定される初期座標を始点として、当該基準レイアップパスに隣接する隣接レイアップパスを設定する隣接レイアップパス設定ステップとを備え、各レイアップパス設定ステップは、それぞれのレイアップパス設定ステップにおいて特定される初期座標を始点として経路を演算するサブモジュールとして、プリプレグテープの貼着面に予定されているプリプレグテープの貼着方向に基づく微小大きさの探索ベクトルを演算する探索ベクトル演算ステップと、演算された探索ベクトルの終点から前記貼着面に下ろした垂線の足を演算する垂足演算ステップとを含み、所定の終了条件が成立するまで、前記垂線の足と前記探索ベクトルの基点とに基づいて新たな探索ベクトルを演算するとともに、この新たな探索ベクトルに基づき、前記垂線の足を次の演算の始点として前記探索ベクトル演算ステップを繰り返すナビゲーティングステップを備えているプリプレグテープの経路計算方法である。この態様では、ナビゲーティングステップを実行することにより、多様な曲面を有する貼着面に設定された初期座標を基点として、微少量だけプリプレグテープの貼着方向に進む探索ベクトルを演算し、その探索ベクトルの終点から貼着面に下ろした垂線の足を計算の基準として回帰的に演算を繰り返すことができる。この結果、探索ベクトルの向きが微小移動量毎に曲面に沿うように修正されて、演算の基準となる点が曲面に沿う経路を精緻に計算する基準となるので、回帰的に繰り返される演算によって順次算出された基点に基づいて経路を算出することにより、曲面に沿い、プリプレグテープが皺になりにくい経路を正確に演算することが可能になる。
【００１１】
好ましい態様において、前記基準レイアップパス設定ステップに先立って、前記初期座標から当該貼着面に対する垂線の足を演算し、この垂線の足を初期座標に設定する初期座標設定ステップをさらに備えている。この態様では、初期座標を選択するときの自由度を高めても、精緻な演算が可能になる。
【００１２】
好ましい態様において、前記隣接レイアップパス設定ステップは、演算の基礎となるレイアップパスを基準ラインとし、この基準ライン上の複数の点を始点とし、各始点を演算したときの探索ベクトルと当該貼着面に対する単位法線ベクトルとの外積を新たな探索ベクトルとして前記ナビゲーティングステップを実行することにより、演算される隣接レイアップパスの演算基準となる基準点を探索する基準点探索ステップと、探索された基準点を繋いで隣接レイアップパスを演算する基準点接続ステップと、演算された隣接レイアップパスを次の演算の基礎となるレイアップパスとして、所定の終了条件が成立するまで、前記基準点探索ステップ及び基準点接続ステップを繰り返すものである。この態様では、あるレイアップパスから所定間隔隔てた隣接レイアップパスを算出するに当たり、貼着面の曲面に沿って、基礎となるレイアップパスから次の隣接レイアップパスまでの間隔を精緻に演算することができ、この精緻に演算された間隔に基づいて隣接レイアップパスが設定されるので、あるレイアップパスに貼着されたプリプレグテープと次の隣接レイアップパスに貼着されるプリプレグテープとが重なり合うことと、許容値以上の隙間が生じることを可及的に防止することが可能になる。
【００１３】
好ましい態様において、前記隣接レイアップパス設定ステップは、前記基準レイアップパスを境に貼着面が二分されている場合には、その一方の面について隣接レイアップパスを演算した後、前記外積と逆向きのベクトルを新たな探索ベクトルとして、前記ナビゲーティングステップを前記基準レイアップパスから実行することにより、他方の面について隣接レイアップパスを演算する。この態様では、基準レイアップパス上の点を基礎として、当該基準レイアップパスに二分される両面について、隣接レイアップパスが演算されるので、各隣接レイアップパスの演算誤差を１／２に低減することができる。
【００１４】
好ましい態様において、前記基準点接続ステップが、各基準点を接続して暫定レイアップパスを演算するものであり、演算された暫定レイアップパスの端部が当該貼着面の境界に達していない場合には、当該暫定レイアップパスの端部の点を始点とし、且つ当該暫定レイアップパスの端部における進行方向ベクトルに基づいて探索ベクトルを演算し、前記ナビゲーティングステップを実行することにより、当該暫定レイアップパスの端部を当該貼着面の境界まで延長して隣接レイアップパスを完成するレイアップ延長ステップをさらに備えている。この態様では、基準点接続ステップによって演算された暫定レイアップパスが、曲面上で所定の長さに達していない場合には、この暫定レイアップパスの端部から精緻な延長線を求めることができるので、隣接レイアップパスの基礎となったレイアップパスよりも長い隣接レイアップパスを貼着面の曲面に沿って精緻に演算することができる。「暫定レイアップパスの端部における進行方向ベクトルに基づいて探索ベクトルを演算」とは、進行方向ベクトルを探索ベクトルとする、或いは、進行方向ベクトルと逆向きのベクトルを探索ベクトルとする場合をいう。
【００１５】
好ましい態様において、前記探索ベクトル演算ステップは、当該貼着面が稜線によって折れている場合に前記探索ベクトルの終点が前記稜線を超えたときは、当該稜線を挟んで探索済の面に隣接する面に対する垂線の足を演算し、この隣接する面に対する垂線の足が存在する場合には、その垂線の足を次の演算の基礎とし、隣接する面に対する垂線の足が存在しない場合には、稜線に対する垂線の足を演算して、次の演算の基礎とするものである。この態様では、稜線によって折れている貼着面の上にテープの貼着経路を演算する場合においても、稜線を跨ってスムーズな貼着経路を演算することが可能になる。
【００１６】
好ましい態様において、前記基準レイアップパス設定ステップは、前記貼着面にテープを積層する場合には、初期座標から求めた垂線の足を通る前記貼着面の法線に沿ってプリプレグテープの厚さ分のオフセット量を求め、その終点を次層の始点として基準レイアップパスを演算するものである。この態様では、貼着面に基づいて規定される初期座標に基づいて複数の層での始点が設定されるので、精緻なオフセット量を積層されるテープ厚さ分だけ求め、基準レイアップパスや隣接レイアップパスを演算することができる。
【００１７】
好ましい態様において、前記探索ベクトル演算ステップは、演算の基準となる点から当該貼着面に対する垂線の足を演算し、この垂線の足を通る前記貼着面の法線方向に沿って、テープの厚さ分をオフセットした点を次の演算の始点に設定するものである。この態様では、貼着面を基準にして、プリプレグテープの厚み分をオフセットし、経路を積算することができるので、複数層に貼着されるテープの貼着経路を演算する場合にも、精緻な経路を演算することができる。ここで、「演算の基準となる点」とは、演算の最初の段階では、初期座標であり、初期座標からの演算が探索ベクトルの演算が算出された後は、次の探索ベクトルの基点を意味するものである。
【００１８】
好ましい態様において、複数の層毎に設定されるプリプレグテープの貼着方向Ｖ（ｉ）が重複している場合には、上側の層での初期座標の座標をテープの幅方向にシフトするものである。
【００１９】
好ましい態様において、前記基準レイアップパス設定ステップは、前記初期座標から設定された所定の探索ベクトルに沿う前半のレイアップパスを演算した後、前記初期座標から前記所定の探索ベクトルと逆向きの探索ベクトルに沿って後半のレイアップパスを演算し、前記前半のレイアップパスと後半のレイアップパスとを接続して演算されたものである。この態様では、初期座標を基準にして基準レイアップパスを前半のレイアップパスと後半のレイアップパスとに分けて演算するので、各レイアップパスの演算誤差を１／２に低減することができる。
【発明の効果】
【００２０】
ナビゲーティングステップを実行することにより、演算の基準となる点が曲面に沿う経路を精緻に計算する基準となる結果、様々な曲面に対応して皺無くプリプレグテープの貼着や積層を図ることができるという顕著な効果を奏する。
【図面の簡単な説明】
【００２１】
【図１】加工対象となる製品の曲面に対するテープレイアップパスを説明する図であり、（Ａ）は、円筒形製品の斜視図、（Ｂ）は円筒形製品の展開図である。
【図２】加工対象となる製品の曲面に対するテープレイアップパスを説明する図であり、（Ａ）は、円錐形製品の斜視図、（Ｂ）は円錐形製品の展開図である。
【図３】加工対象となる製品の曲面に対するテープレイアップパスを説明する図であって湾曲面を有する製品の斜視図である。
【図４】本発明に係るプリプレグテープの経路計算装置の構成図である。
【図５】貼着面を有する製品のテープレイアッププランを示す斜視図である。
【図６】本発明に係る全体フローを示すフローチャートである。
【図７】ナビゲーティングステップとしてのナビゲーティングモジュールの動作を示すフローチャートである。
【図８】図７の続きを示すフローチャートである。
【図９】ナビゲーティングモジュールによる探索状態を示す説明図であり、（Ａ）は曲面上での探索、（Ｂ）は、曲面からオフセットされた曲面での探索を示す。
【図１０】ナビゲーティングモジュールによる探索状態を示す説明図である。
【図１１】ナビゲーティングモジュールによる探索状態を示す説明図である。
【図１２】図６のサブルーチンを示すフローチャートである。
【図１３】図１２のフローチャートの実行結果を説明する貼着面の説明図であり、（Ａ）は初期座標が曲面上にあった場合、（Ｂ）は初期座標が曲面から浮揚していた場合、（Ｃ）は初期座標が曲面からオフセットされた場合を示す。
【図１４】図１２のフローチャートの実行結果を説明する貼着面の斜視図である。
【図１５】図１２のフローチャートの実行結果を説明する貼着面の斜視図である。
【図１６】図１２のフローチャートの実行結果を説明する貼着面の斜視図である。
【図１７】図１２のフローチャートの実行結果を説明する貼着面の斜視図である。
【図１８】図１２のフローチャートの実行結果を説明する貼着面の斜視図である。
【図１９】図１２の続きを示すフローチャートである。
【図２０】図１９のフローチャートの実行結果を説明する貼着面の斜視図である。
【図２１】図１９のフローチャートの実行結果を説明する貼着面の斜視図である。
【図２２】図１９のフローチャートの実行結果を説明する貼着面の斜視図である。
【図２３】図１９の続きを示すフローチャートである。
【図２４】図２３のフローチャートの実行結果を説明する貼着面の斜視図である。
【図２５】図２３のフローチャートの実行結果を説明する貼着面の斜視図である。
【図２６】図２３の続きを示すフローチャートである。
【発明を実施するための形態】
【００２２】
以下、添付図面を参照しながら本発明の好ましい実施の形態について説明する。
【００２３】
まず、図４を参照して、本発明に係るシステムは、ＣＡＤシステム１０と、ＣＡＤシステムからデータを交換可能に接続された経路演算モジュール２０とを備えている。
【００２４】
ＣＡＤシステム１０は、プリプレグテープが貼着される製品データを蓄積したＣＡＤデータベース１１と接続されており、このＣＡＤデータベース１１に記憶されたＣＡＤデータをインターフェース（又はネットワーク）経由で経路演算モジュール２０に送信することが可能になっている。ＣＡＤデータは、一般にＮＵＲＢＳ（Non-Uniform Rational B-Splines）等のフォーマットで、３次元で曲面を定義することのできるデータが使用される。
【００２５】
経路演算モジュール２０は、ファクトリコンピュータ等の計算機で実現される論理的なモジュールであり、ハード的には、図略のＣＰＵ、ＲＯＭ、ＲＡＭの他、入出力装置２１、表示装置２２、外部記憶装置２３を備えている。
【００２６】
経路演算モジュール２０は、ＣＡＤシステム１０からデータの読み取り等を実行するＣＡＤデータ操作モジュール２４と、入力されたＣＡＤデータに対し、所定のレイアッププランを処理するレイアッププラン処理モジュール２５と、レイアッププラン処理モジュール２５に基づいて、平面または曲面を含む面上でプリプレグテープが辿る最短経路（以下、この最短経路を「ナチュラルパス」とも呼称する）を演算するナビゲーティングモジュール２６とを論理的に有している。これらは、経路演算モジュール２０を構成するハード資源と、このハード資源によって実行されるソフト資源（例えば、ソースコード、オブジェクトコード、プログラミングコード等）との組み合わせによって実現される。
【００２７】
図５を参照して、同図に例示するワークＷＳは、車両の筐体部分を構成する矩形の部品である。この部品を製造する過程では、図略のマンドレルによって規定される曲面Ｓに対し、層ｉ毎に貼着方向Ｖ（ｉ）が入力される。具体的には、最初にワークの一辺に沿うＶ（１）方向に沿ってプリプレグテープを貼着し、次いで、最初の経路Ｖ（１）と直交する経路Ｖ（２）に沿って、その後、最初の経路Ｖ（１）と４５°で交差する経路Ｖ（３）に沿ってプリプレグテープを貼着し、層毎に経路を変更してテープ層を形成（テープレイアップ）する設定（このプリプレグテープの貼着手順に関する設定要件を「テープレイアッププラン」ともいう）が実行されることになっている。この場合、図４に示した経路演算モジュール２０は、図６以下のフローチャートにそって、ワークのテープレイアッププランに好適なテープ貼着経路を算出する。
【００２８】
また、テープレイアッププランでは、最初の層ｉ（層１）のみに初期座標ｐ０の設定も行われる。詳しくは後述するように、初期座標ｐ０は、全ての層ｉにおけるレイアップパスの演算の基礎となる座標である。
【００２９】
図６を参照して、まず、経路演算モジュール２０は、ＣＡＤデータ操作モジュール２４によってワークのデータをＣＡＤシステム１０から読み取る（ステップＳ２０）。本実施形態では、このステップＳ２０が、三次元データ読取ステップとなる。
【００３０】
次いで、図５に例示されたテープレイアッププランの入力処理を実行する（ステップＳ２１）。このステップＳ２１では、レイアッププラン処理モジュール２５が実行されて、ＧＵＩによって表示装置２２に入力画面が表示され、ユーザが入力画面の指示に従って、入出力装置２１を操作し、テープレイアッププランを入力する。このステップＳ２１でユーザは、ワークに貼着されるテープの幅ｄ、テープの厚さｔ、プリプレグテープの層毎の貼着方向Ｖ（ｉ）、演算の初期座標ｐ０を入力する。初期座標ｐ０を入力する際には、ワークのＣＡＤ図面を画面に表示し、入出力装置２１でユーザが所望する任意の点を指定させるようにしてもよい。レイアッププラン処理モジュール２５は、入力されたデータをメモリまたは外部記憶装置２３に記録し、後続する処理に利用する。
【００３１】
また、レイアッププラン処理モジュール２５は、入力が完了した段階で、テープレイアップの層数ｎをカウントする（ステップＳ２２）。次いで、演算の基準となるレイアップパスの変数ｉ、ｊ、ｋが初期設定される（ステップＳ２３、Ｓ２４）。本実施形態では、層毎に複数のレイアップパスを設定することとしているので、層に関する変数ｉ、レイアップパスに関する変数ｊ、レイアップパスを構成する点に関する変数ｋを設定し、演算された全ての座標を三次元で一意に特定することができるようになっている。
【００３２】
次に、層ｉに設定されたテープレイアッププランが読み取られる（ステップＳ２５）。この読み取りにより、初期座標ｐ０、テープ幅ｄ、テープ厚さｔと、層ｉ毎のプリプレグテープの貼着方向Ｖ（ｉ）が特定される。
【００３３】
次いで、レイアッププラン処理モジュール２５は、読み出された層ｉに係る貼着方向Ｖ（ｉ）と、演算済の他の層ｉに設定されている貼着方向Ｖ（ｉ）が重複しているか否かを探索する（ステップＳ２６）。仮に貼着方向Ｖ（ｉ）が同一の層ｉが見つかった場合には、その層ｉに設定されている基準レイアップパスＴＰｓの初期座標ｐ０からプリプレグテープの幅方向に沿って、幅ｄの１／２ずれた位置を演算し（ステップＳ２７）、その座標を新たな初期座標ｐ０に設定する（ステップＳ２８）。これにより、既にレイアップパスが演算されている層ｉとこれから演算される層ｉとでは、プリプレグテープが、互いに１／２だけ幅方向にずれるので、製造されるワークが崩れにくい堅固な構造になる。
【００３４】
次に、層ｉでの演算処理サブルーチンが実行される（ステップＳＳ１０）。演算処理サブルーチンが実行されると、層の変数ｉがインクリメントされ（ステップＳ２９）、インクリメントされた層の変数ｉがステップＳ２２でカウントされた層の数ｎと比較される（ステップＳ３０）。仮に層の変数ｉが層の数ｎ以下である場合には、ステップＳ２４に復帰して上述した処理を繰り返し、層の変数ｉが層の数ｎを超えている場合には、処理を終了する。
【００３５】
この演算処理サブルーチンでは、層ｉ毎に基準レイアップパスＴＰｓが演算され、次いで、基準レイアップパスＴＰｓに等間隔で隣接する隣接レイアップパスＴＰｎが演算される。隣接レイアップパスＴＰｎを演算する際は、既に演算されたレイアップパスを基礎として、基礎となったレイアップパスから等間隔隔てた座標が演算される。このため、貼着面としての曲面Ｓが複雑に起伏している場合でも、その起伏に沿って、重なりや皺が生じにくい状態でプリプレグテープをすることのできるレイアップパスを演算することが可能になる。そして、本実施形態においては、より精緻な演算を実現するため、個々のステップの随所でナビゲーティングモジュール２６が呼び出される。ナビゲーティングモジュール２６は、複雑な曲面上でナチュラルパスを演算するための関数群であり、以下に示す演算が可能になっている。
【００３６】
図７及び図９を参照して、ナビゲーティングモジュール２６は、オフセット量ｈ（ｉ）、微小移動量Δａ、積算移動量ｍ、単位探索ベクトルｎＶ等を引数として含んでいる。オフセット量ｈ（ｉ）とは、プリプレグテープの厚さｔを考慮した曲面Ｓからの法線方向の浮揚量であり、ｉ番目の層ｉについては、（ｉ−１）×ｔで演算される変数（導出関数）である。微小移動量Δａは、探索する座標の移動量であり、例えば、０．００１ｍｍに設定される。積算移動量ｍは、演算した探索経路の積算値である。単位探索ベクトルｎＶは、レイアップパスの探索方向のベクトル（探索ベクトルＳＶ）を演算するための単位ベクトルであり、貼着方向Ｖ（ｉ）を基準に演算されるものである。単位探索ベクトルｎＶは、可及的に曲面Ｓに接するように設定される（図９参照）。これら引数の値は、ナビゲーティングモジュール２６を呼び出すプログラムによって、即ち、演算されるオフセットパスの種類等によって、適宜変更される。
【００３７】
ナビゲーティングモジュール２６が呼び出されると、まず、引数の初期設定が実行される（ステップＳ１００）。この初期設定では、微小移動量Δａが０．００１ｍｍに、積算移動量ｍが０．０ｍｍに設定される。なお、この初期設定は、ユーザがＧＵＩで設定画面を表示させ、この設定画面上で適宜変更できるようになっている。
【００３８】
次いで、移動点ｐｅが演算される（ステップＳ１０１）。この処理では、探索ベクトルＳＶを、微小移動量Δａと単位探索ベクトルｎＶとの積で求め、演算の基礎となる点ｐ(i, j, k)を基点として、探索ベクトルＳＶの終点ｐｅを演算する。演算の基礎となる点ｐ(i, j, k)は、ナビゲーティングモジュール２６を呼び出すプログラムによって設定される。たとえば、基準レイアップパスＴＰｓの演算を開始する場合、ｐ(i, j, k)の最初の値は、初期座標ｐ０である。次に、演算された終点ｐｅから曲面Ｓに垂線の足ｐtemp1を演算し（ステップＳ１０２）、ｐtemp1が演算可能な座標であるか否かを検証する（ステップＳ１０３）。
【００３９】
ｐtemp1が演算可能な座標である場合、垂線の足ｐtemp1＋（ｈＶ＊ｈ（ｉ））を演算する（ステップＳ１０４）。ここで、ｈＶは、ｐtemp1を通る曲面Ｓの法線単位ベクトルであり、ｈ（ｉ）は、（ｉ−１）×ｔで演算される変数であることから、最初の層ｉにおいては、垂線の足ｐtemp1が点ｐになる（図９（Ａ）参照）。他方、２番目以降の層ｉについては、ｈが０よりも大きくなるので、図９（Ｂ）に示すように、演算される点ｐは、垂線の足ｐtemp1からｈ（ｉ）だけ法線方向に浮揚した座標をとることになる。
【００４０】
次いで、始点ｐ(i, j, k)から演算した点ｐまでの移動量Δｍを演算する（ステップＳ１０５）。
【００４１】
その後、設定値Ｌｈが設定されているか否かをチェックする（ステップＳ１０６）。この設定値Ｌｈは、詳しくは後述するように、ナビゲーティングモジュール２６で隣接レイアップパスの演算の基礎となる座標を演算する際、基礎となる座標から演算対象となる座標までの間隔を算出するための値であり、ナビゲーティングモジュール２６を呼び出すプログラムによって設定されるものである。
【００４２】
設定値Ｌｈが設定されていない場合、ｎｕｌｌが設定されている場合、或いは、設定されているが、積算移動量ｍの更新値（ｍ＋Δｍ）以下である場合（ステップＳ１０７）、変数ｋをインクリメントする（ステップＳ１０８）。
【００４３】
次いで、演算された点ｐの座標をｐ(i, j, k)とし（ステップＳ１０９）、この座標ｐ(i, j, k)を登録する（ステップＳ１１０）。
【００４４】
その後、次の探索ベクトルを次式
【００４５】
【数１】
0005552305.tif 000002
【００４６】
によって演算し（ステップＳ１１１）、積算移動量ｍを移動量Δｍでインクリメントする（ステップＳ１１２）。その後、ステップＳ１０１に復帰して、上述したステップを繰り返す。
【００４７】
また、ステップＳ１０７において、設定値Ｌｈが積算移動量ｍの更新値（ｍ＋Δｍ）を超えている場合、積算移動量ｍが設定値Ｌｈ未満であるか否かが判定され（ステップＳ１１３）、積算移動量ｍが設定値Ｌｈ未満である場合には、設定値Ｌｈの終点を次式
【００４８】
【数２】
0005552305.tif 000003
【００４９】
によって求め（ステップＳ１１４）、レイアップパスの変数ｋをインクリメントして（ステップＳ１１５）演算された座標をｐ(i, j, k)とし（ステップＳ１１６）、この座標ｐ(i, j, k)を登録する（ステップＳ１１７）。これらのステップＳ１１３〜Ｓ１１７により、設定値Ｌｈが設定されている場合には、その終点まで正確にナチュラルパスを演算することが可能になる。その後、これまで演算された点ｐ(i, j, k)に基づいて、ナチュラルパスＴＰ(i, j)を演算し（ステップＳ１１８）、メインプログラムに復帰する。なお、ステップＳ１１３で積算移動量ｍが設定値Ｌｈ以上である場合には、そのままステップＳ１１８に移行する。
【００５０】
次に、ステップＳ１０３において、垂線の足ｐtemp1を演算することができない場合について、図８、図１０を参照しながら説明する。
【００５１】
図１０に示すように、例えば曲面Ｓに稜線ＲＬが存在し、二つの面Ｓｂ、Ｓｎに分断されている場合、面Ｓｂ上で演算されていた探索ベクトルＳＶの終点ｐｅが、面Ｓｂと直角な稜線ＲＬ上の面Ｌ１を通過すると、面Ｓｂ上には、垂線の足ｐtemp1を演算することができなくなる。そこで、図８に示すように、ｐtemp1を演算することができない場合には、まず、隣接する面Ｓｎの有無を検証し（ステップＳ１２０）、面Ｓｎが存在する場合には、探索された終点ｐｅから面Ｓｎに垂線の足ｐtemp2を演算する（ステップＳ１２１）。ここで、さらに、面Ｓｎ上に垂線の足ｐtemp2が演算可能であったか否かを検証し（ステップＳ１２２）、演算が可能であった場合（例えば、図１０に示すように、面Ｓｎと、この面Ｓｎと直角な稜線ＲＬ上の面Ｌ２とに挟まれた領域内に終点ｐｅがある場合）には、点ｐを垂線の足ｐtemp2に基づいて演算し（ステップＳ１２３）、ステップＳ１０５に復帰する。ここで、ステップＳ１２３のｈｖは、ｐtemp2における面Ｓｎの法線単位ベクトルである。
【００５２】
他方、図１１に示したように、探索ベクトルＳＶの終点ｐｅが、面Ｌ１、Ｌ２間に位置する場合、何れの面Ｓｂ、Ｓｎ上にも垂線の足を演算することができなくなる。この場合には、ステップＳ１２２で垂線の足ｐtemp2を演算不可と判定して終点ｐｅから稜線ＲＬ上に垂線の足temp3を演算し（ステップＳ１２４）、この垂線の足temp3を基礎にして点ｐを演算し（ステップＳ１２５）、ステップＳ１０５に移行する。ここで、ステップＳ１２５のｈｖは、ｐtemp3から探索ベクトルＳＶの終点ｐｅに向かう垂直単位ベクトルである。
【００５３】
なお、ステップＳ１２０において、隣接する面Ｓｎが存在しない場合には、探索ベクトルＳＶの終点ｐｅが面ｓの境界を超えた場合であるので、その場合には、始点ｐ(i, j, k)が面内に存在するか否かを検証し（ステップＳ１２６）、面ｓ内である場合には、境界をＲＬとして、ステップＳ１２４に移行する。他方、始点ｐ(i, j, k)が面ではない場合（境界上である場合）には、ステップＳ１１３に移行し、処理を終了する。
【００５４】
次に、上述のような処理を実行するナビゲーティングモジュール２６を用いて、図１２の演算処理サブルーチン（ステップＳＳ１０）の具体例を説明する。
【００５５】
図１２、図１３（Ａ）（Ｂ）（Ｃ）を参照して、演算処理サブルーチンが実行されると、まず、初期座標設定ステップ（ＳＳ１０１〜ＳＳ１０３）が実行される。この初期座標設定ステップでは、図６のステップＳ２１で与えられた初期座標ｐ０から曲面Ｓへ垂線の足ｐtemp0を演算し（ステップＳＳ１０１）、さらにｐtemp0＋（ｈＶ＊ｈ（ｉ））を演算して、新たにｐ０とする（ステップＳＳ１０２）。ここで、ｈＶは、ｐtemp0を通る曲面Ｓの法線単位ベクトルであり、ｈ（ｉ）は、（ｉ−１）×ｔで演算される変数であることから、元の初期座標ｐ０が曲面Ｓ上に存在し、且つ演算される層ｉが最初の層であるときには、初期座標ｐ０は、そのまま同じ座標となる（図１３（Ａ）参照）。また、演算される層ｉが最初の層であるときに、設定されていた初期座標ｐ０が曲面Ｓから浮揚していた場合、初期座標ｐ０は、垂線の足ｐtemp0に更新される（図１３（Ｂ）参照）。さらに、演算される層ｉが２層目以降の場合には、垂線の足ｐtemp0に演算された後、ｈ（ｉ）だけオフセットされる（図１３（Ｃ）参照）。この結果、ナビゲーティングモジュール２６の演算の最初の基礎となる初期座標ｐ０と曲面Ｓとが極めて精緻に関係づけられることになる。
【００５６】
次いで、基準レイアップパス設定ステップが実行される。
【００５７】
図１２に示すように、この基準レイアップパス設定ステップでは、まず、ナビゲーティングモジュール２６を実行するための引数の設定が実行される。具体的には、Ｌｈをｎｕｌｌ値に設定し（ステップＳＳ１０４）、単位探索ベクトルｎＶをプリプレグテープの貼着方向Ｖ（ｉ）に基づいて定義し（ステップＳＳ１０５）、始点ｐ(i, j, k)を初期座標ｐ０で設定する（ステップＳＳ１０６）。これにより、ナビゲーティングモジュール２６は、ｐ０を始点として、ｎＶ方向に曲面Ｓの境界までレイアップパスを探索する。本実施形態では、この探索によるレイアップパスを前半のレイアップパスＴＰ(i, f)としている。次いで、ナビゲーティングモジュール２６が呼び出され（ステップＳＳ１０７）、上述した引数の設定に基づいて、ナビゲーティングモジュール２６を実行することにより、前半のレイアップパスＴＰ(i, f)が演算される（ステップＳＳ１０８）。この演算により、図１４に示すように、曲面Ｓに始点ｐ(i, j, k)が設定され、次いで図１５に示すように、設定された始点ｐ(i, j, k)からΔｍ間隔の座標ｐ(i, j, k)が登録され、図１６に示すように、前半のレイアップパスＴＰ(i, f)が曲面Ｓの境界まで演算される。
【００５８】
次いで、ナビゲーティングモジュール２６の処理が終了すると、すなわち、ステップＳＳ１０８が終了すると、今度は、単位探索ベクトルｎＶの方向を反転するとともに、始点を初期座標ｐ０に戻して（ステップＳＳ１０９）、再度、ナビゲーティングモジュール２６を呼び出し（ステップＳＳ１１０）、後半のレイアップパスＴＰ(i, l)が演算される（ステップＳＳ１１１）。この演算により、図１７、図１８に示すように、初期座標ｐ０を始点とする点ｐ(i, j, k)からΔｍ間隔の座標ｐ(i, j, k)が登録され、後半のレイアップパスＴＰ(i, l)が曲面Ｓの境界まで演算される。
【００５９】
次いで、演算された前半のレイアップパスＴＰ(i, f)と後半のレイアップパスＴＰ(i, l)とが接続され、基準レイアップパスＴＰｓが演算され（ステップＳＳ１１２）、登録される（ステップＳＳ１１３）。
【００６０】
次に、登録された基準レイアップパスＴＰｓに基づいて、当該基準レイアップパスに隣接する隣接レイアップパスＴＰｎを設定する隣接レイアップパス設定ステップについて説明する。
【００６１】
プリプレグテープの重なりを防止するため、設定されたレイアップパスとそれに隣接するレイアップパスとの間隔は、精緻に演算される必要がある。この演算は、貼着面が平面である場合には比較的容易であるが、貼着面が曲面である場合には、これまで極めて困難とされていたものである。本実施形態では、曲面上に複数のレイアップパスを演算するために、演算済みのレイアップパスから対向間隔をナビゲーティングモジュール２６で演算し、次いで、演算された対向間隔を接続して隣接レイアップパスＴＰｎを演算するステップを採用している。
【００６２】
まず、図１９を参照して、演算済みの基準レイアップパスＴＰｓから対向間隔をナビゲーティングモジュール２６で演算するために、プリプレグテープの幅ｄを探索値Ｓｆとし、設定値Ｌｈを探索値Ｓｆの絶対値とする（ステップＳＳ１２０）。探索値Ｓｆは、基準レイアップの探索方向を設定するフラグの機能を兼ねるものである。また、上述したように、設定値Ｌｈは、ナビゲーティングモジュール２６で隣接レイアップパスＴＰｎの演算の基礎となる座標を演算する際、基礎となる座標（始点ｐ(i, j, k)）から演算対象となる座標Ｔｅまでの間隔を算出するための値である。さらにこの段階で基準レイアップパスＴＰｓをＴＰ(i, j)と定義する。
【００６３】
次に、このＴＰ(i, j)を基準ラインＮＬと定義し（ステップＳＳ１２１）、この基準ラインＮＬの上流点（プリプレグテープの貼着方向Ｖ（ｉ）において、境界上に設定されている貼着方向上流側の点）ｐ(i, j, k)を始点ｐ(i, j, k)とする。次いで、基準ラインＮＬの全長をＬ（ステップＳＳ１２３）、基準ラインNLを分割する間隔をΔＬｎとし、積算間隔Ｌｎを０にリセットする（ステップＳＳ１２４）。
【００６４】
次いで、単位探索ベクトルｎＶをｐ(i, j, k)での曲面Ｓ上の単位法線ベクトルｈＶNLと（添え字のＮＬは、基準ＮＬ上の当該座標ｐ(i, j, k)を示す。以下、同様）、このｐ(i, j, k)での単位探索ベクトルｎＶNLとの外積で求める（ステップＳＳ１２５）。これにより、図２０に示したように、基準ＮＬ上に設定される個々の点ｐ(i, j, k)毎に、当該単位探索ベクトルｎＶNLと直角に曲面Ｓに沿う単位探索ベクトルｎＶを設定することができる。
【００６５】
次いで、単位探索ベクトルｎＶの方向が、探索値Ｓｆに基づいて判定され（ステップＳＳ１２６）、仮に探索値Ｓｆの値がマイナスである場合には、単位探索ベクトルｎＶの値が逆向きに反転される（ステップＳＳ１２７）。
【００６６】
次いで、ナビゲーティングモジュール２６を呼び出し（ステップＳＳ１２８）、基準ラインＮＬのｐ(i, j, k)からｎＶ方向のナチュラルパスｔｐ(i, j)を演算する（ステップＳＳ１２９）。
【００６７】
この局面では、図２１に示したように、ナビゲーティングモジュール２６により、基準ラインＮＬ上に設定された始点ｐ(i, j, k)からナチュラルパスｔｐ(i, j)が演算され、精緻な対向間隔を維持した状態で、終点Ｔｅを演算することができる。演算が開始されることにより、探索ベクトルＳＶは、概ねプリプレグテープの貼着方向Ｖ（ｉ）に直交する方向に沿って曲面Ｓ上に設定され、始点ｐ(i, j, k)が更新されていく。始点ｐ(i, j, k)の積算移動量ｍがステップＳＳ１２０で設定された設定値Ｌｈを超えた場合、或いは、探索ベクトルＳＶの終点ｐｅが境界を越えて、ナビゲーティングモジュール２６のステップＳ１１２（図７参照）によりナチュラルパスｔｐ(i, j)が演算され、制御が図１９のフローに復帰すると、レイアッププラン処理モジュール２５は、演算されたナチュラルパスｔｐ(i, j)が設定値Ｌｈ以上であるか否かを判定し（ステップＳＳ１３０）、設定値Ｌｈ以上に達しているナチュラルパスｔｐ(i, j)の終点Ｔｅのみを隣接レイアップパスＴＰｎの基礎点ｐｎ(i, j, k)として登録する（ステップＳＳ１３１）。これにより、設定値Ｌｈ以上に達しているナチュラルパスｔｐ(i, j)のみの終点Ｔｅが、隣接レイアップパスＴＰｎの計算の基準となる。
【００６８】
次いで、積算間隔Ｌｎを分割間隔ΔＬｎで更新し（ステップＳＳ１３２）、積算間隔Ｌｎが、基準ラインＮＬの全長を超えたか否かを判定する（ステップＳＳ１３３）。仮に基準ラインＮＬの全長を超えている場合には、次のステップに移行し、基準ラインＮＬの全長以下である場合には、始点ｐ(i, j, k)を分割間隔ΔＬｎで更新し（ステップＳＳ１３４）、ステップＳＳ１２５に移行して上述した処理を繰り返す。
【００６９】
これにより、図２２に示したように、一つの基準ラインＮＬ毎に、多数の始点ｐ(i, j, k)が設定され、設定された始点ｐ(i, j, k)毎にナビゲーティングモジュール２６で精緻に対向間隔が演算された終点Ｔｅが演算され、そのうち、曲面Ｓ内に存在するものが、登録されることになる。
【００７０】
次に、図２３を参照して、一つの基準ラインＮＬについて、全ての終点Ｔｅが演算されると、今度は、基礎点ｐｎ(i, j, k)が存在するか否か、すなわち、プリプレグテープを貼着する隣接レイアップパスＴＰｎを演算可能か否かが判定される（ステップＳＳ１４０）。
【００７１】
一つの基準ラインＮＬについて、隣接レイアップパスＴＰｎを演算することができると判定された場合、レイアップパスの変数ｊを更新し（ステップＳＳ１４１）、基礎点ｐｎ(i, j, k)を接続して得られる暫定レイアップパスＴＰtemp(i, j)を演算する（ステップＳＳ１４２）。ここで、演算された暫定レイアップパスＴＰtemp(i, j)の上流点ｐｕ(i, j, k)、下流点ｐｄ(i, j, k)が曲面Ｓの境界に接しているか否かが判定され（ステップＳＳ１４３、ＳＳ１４４）、接していれば、この暫定レイアップパスＴＰtemp(i, j)を隣接レイアップパスＴＰｎとして定義し（ステップＳＳ１４５）、この隣接レイアップパスＴＰｎを登録する（ステップＳＳ１４６）。この処理により、図２４に示すように、基準レイアップパスＴＰｓを基準ラインＮＬとする隣接レイアップパスＴＰｎが演算され、登録される。その後、ステップＳＳ１２１に移行し、演算された隣接レイアップパスＴＰｎを次の演算の基準ラインＮＬとして、上述した演算を繰り返す。
【００７２】
他方、ステップＳＳ１４３で、暫定レイアップパスＴＰtemp(i, j)の上流点が曲面Ｓの境界に届いていない場合、始点ｐ(i, j, k)を当該暫定レイアップパスＴＰtemp(i, j)の上流点ｐｕ(i, j, k)で定義し（ステップＳＳ１４７）、その上流点ｐｕ(i, j, k)でのＴＰtemp(i, j)の進行方向ベクトルである単位探索ベクトルｎＶpu(i, j, k)と逆向きの方向を単位探索ベクトルｎＶと定義する（ステップＳＳ１４８）。次いで、ナビゲーティングモジュール２６を呼び出し（ステップＳＳ１４９）、暫定レイアップパスＴＰtemp(i, j)を延長する（ステップＳＳ１５０）。この処理により、図２５に示すように、中途で途切れていた暫定レイアップパスＴＰtemp(i, j)が曲面Ｓの境界まで延長される。
【００７３】
また、ステップＳＳ１４４で、暫定レイアップパスＴＰtemp(i, j)の下流点ｐｄ(i, j, k)が曲面Ｓの境界に届いていない場合には、始点ｐ(i, j, k)を当該暫定レイアップパスＴＰtemp(i, j)の下流点ｐｄ(i, j, k)で定義し（ステップＳＳ１５１）、その下流点ｐｄ(i, j, k)でのＴＰtemp(i, j)の進行方向ベクトルである単位探索ベクトルｎＶpd(i, j, k)の方向を単位探索ベクトルｎＶと定義する（ステップＳＳ１５２）。次いで、ステップＳＳ１４９に移行することにより、下流側でも中途で途切れていた暫定レイアップパスＴＰtemp(i, j)を曲面Ｓの境界まで延長することができる。
【００７４】
ステップＳＳ１４０で暫定レイアップパスＴＰtemp(i, j)（従って、隣接レイアップパスＴＰｎ）を演算することができかなった場合、図２６に示すように、探索値Ｓｆの符号が判別される（ステップＳＳ１６０）。探索値Ｓｆがマイナスであるときは、元のメインルーチンに復帰する。これにより、層ｉでの隣接レイアップパスＴＰｎの演算が全て終了し、図６のメインフローに復帰してステップＳ２９以下を実行する。
【００７５】
他方、探索値Ｓｆがプラスであるときは、探索値Ｓｆをマイナスに更新し（ステップＳＳ１６１）、基準ラインＮＬを基準レイアップパスＴＰｓに設定する（ステップＳＳ１６２）。その後、ステップＳＳ１２２に移行することにより、今度は、基準レイアップパスＴＰｓを境に反対側の面に隣接レイアップパスＴＰｎの演算を進めることができる。
【００７６】
以上説明したように本実施形態では、プリプレグテープの貼着面としての曲面Ｓの三次元データを読み取る三次元データ読取ステップＳ２０と、記憶された曲面Ｓに予定されているプリプレグテープの貼着方向Ｖ（ｉ）に沿って基準レイアップパスを設定する基準レイアップパス設定ステップＳＳ１０１〜ＳＳ１１３と、基準レイアップパス設定ステップＳＳ１０１〜ＳＳ１１３で設定された基準レイアップパスＴＰｓに基づいて当該基準レイアップパスＴＰｓに隣接する隣接レイアップパスＴＰｎを設定する隣接レイアップパス設定ステップＳＳ１２０〜ＳＳ１６２とを備え、各レイアップパス設定ステップは、記憶された曲面Ｓ上に与えられた任意の初期座標ｐ０を始点として、プリプレグテープの曲面Ｓに予定されているプリプレグテープの貼着方向Ｖ（ｉ）に基づく探索ベクトルＳＶを、所定の微小移動量Δａをスカラとして演算する探索ベクトル演算ステップＳ１０１と、演算された探索ベクトルＳＶの終点ｐｅから曲面Ｓに下ろした垂線の足ｐtemp0(i, j, k)を演算する垂足演算ステップＳ１０２とを含み、図７、図８に示した所定の終了条件が成立するまで、垂線の足ｐtemp0(i, j, k)と探索ベクトルＳＶの基点とに基づいて新たな探索ベクトルＳＶを演算するとともに、この新たな探索ベクトルＳＶに基づき、垂線の足ｐtemp0(i, j, k)を次の演算の始点として探索ベクトル演算ステップＳ１０１を繰り返すナビゲーティングステップＳ１００〜Ｓ１２５を備えている。このため、本実施形態によれば、ナビゲーティングステップＳ１００〜Ｓ１２５を実行することにより、多様な曲面を有する貼着面に設定された初期座標ｐ０を基点として、微少量だけプリプレグテープの貼着方向Ｖ（ｉ）に進む探索ベクトルＳＶを演算し、その探索ベクトルの終点から曲面Ｓに下ろした垂線の足ｐtemp0(i, j, k)を計算の基準として回帰的に演算を繰り返すことができるので、演算の基準となる点が曲面に沿う経路を精緻に計算する基準となる。この結果、回帰的に繰り返される演算によって順次算出された基点ｐ(i, j, k)に基づいて経路を算出することにより、曲面に沿い、プリプレグテープが皺になりにくい経路を正確に演算することが可能になる。
【００７７】
また、本実施形態では、基準レイアップパス設定ステップＳＳ１０１〜ＳＳ１１３の初めに、初期座標ｐ０から当該曲面Ｓに対する垂線の足ｐtemp0(i, j, k)を演算し、この垂線の足ｐtemp0(i, j, k)を初期座標ｐ０に設定する初期座標設定ステップＳＳ１０１〜ＳＳ１０３を備えている。このため、本実施形態では初期座標ｐ０を選択するときの自由度を高めても、精緻な演算が可能になる。
【００７８】
また、本実施形態では、隣接レイアップパス設定ステップＳＳ１２０〜ＳＳ１６２は、演算の基礎となるレイアップパス上の複数の点ｐを始点とし、各始点を演算したときのレイアップパスの単位探索ベクトルｎＶNLと当該曲面Ｓに対する単位法線ベクトルｈＶNLとの外積を単位探索ベクトルｎＶとして、ナビゲーティングステップＳ１００〜Ｓ１２５を実行することにより、演算される隣接レイアップパスＴＰｎの演算基準となる基準点Ｔｅを探索する基準点探索ステップＳＳ１２９と、探索された点Ｔｅを繋いで隣接レイアップパスＴＰｎを演算する基準点接続ステップＳＳ１４２と、演算された隣接レイアップパスＴＰｎを次の演算の基礎となるレイアップパスとして、図２３、図２６に示した所定の終了条件が成立するまで、前記基準点探索ステップＳＳ１２９及び基準点接続ステップＳＳ１４２を繰り返すものである。このため、本実施形態ではあるレイアップパスから所定間隔隔てた隣接レイアップパスＴＰｎを算出するに当たり、曲面Ｓに沿って、基礎となるレイアップパスから次の隣接レイアップパスＴＰｎまでの間隔を精緻に演算することができ、この精緻に演算された間隔に基づいて隣接レイアップパスＴＰｎが設定されるので、あるレイアップパスに貼着されたプリプレグテープと次の隣接レイアップパスＴＰｎに貼着されるプリプレグテープとが重なり合うことと、許容値以上の隙間が生じることを可及的に防止することが可能になる。
【００７９】
また、本実施形態では、隣接レイアップパス設定ステップＳＳ１２０〜ＳＳ１６２は、基準レイアップパスを境に曲面Ｓが二分されている場合には、その一方の面について隣接レイアップパスＴＰｎを演算した後、外積と逆向きのベクトルを探索ベクトルＳＶとして、ナビゲーティングステップＳ１００〜Ｓ１２５を前記基準レイアップパスから実行することにより、他方の面について隣接レイアップパスＴＰｎを演算する。このため、本実施形態では基準レイアップパス上の点を基礎として、当該基準レイアップパスに二分される両面について、隣接レイアップパスＴＰｎが演算されるので、各隣接レイアップパスＴＰｎの演算誤差を１／２に低減することができる。
【００８０】
また、本実施形態では、基準点接続ステップが、各基準点を接続して暫定レイアップパスＴＰtemp(i, j)を演算するものであり、演算された暫定レイアップパスＴＰtemp(i, j)の端部が当該貼着面の境界に達していない場合には、当該暫定レイアップパスＴＰtemp(i, j)の端部の点ｐｕ(i, j, k)、ｐｄ(i, j, k)を始点とし、且つ端部の点ｐｕ(i, j, k)、ｐｄ(i, j, k)それぞれにおけるＴＰtemp(i, j)の延長方向の単位方向ベクトルをそれぞれの単位探索ベクトルｎＶとして求め、ナビゲーティングステップＳ１００〜Ｓ１２５を実行することにより、当該暫定レイアップパスＴＰtemp(i, j)の端部を曲面Ｓの境界まで延長して隣接レイアップパスＴＰｎを完成するレイアップ延長ステップＳＳ１４３〜ＳＳ１５２をさらに備えている。このため本実施形態では、基準点接続ステップによって演算された暫定レイアップパスＴＰtemp(i, j)が、曲面Ｓ上で所定の長さに達していない場合には、この暫定レイアップパスＴＰtemp(i, j)の端部から精緻な延長線を求めることができるので、隣接レイアップパスＴＰｎの基礎となったレイアップパスよりも長い隣接レイアップパスＴＰｎを曲面Ｓの曲面に沿って精緻に演算することができる。
【００８１】
また、本実施形態では、探索ベクトル演算ステップＳ１０１は、当該曲面Ｓが稜線ＲＬによって折れている場合に探索ベクトルＳＶの終点ｐｅが前記稜線ＲＬを超えたときは、探索済の面Ｓｂに隣接する面Ｓｎに対する垂線の足ｐtemp2(i, j, k)を演算し、この隣接する面Ｓｎに対する垂線の足ｐtemp2(i, j, k)が存在する場合には、その垂線の足ｐtemp2(i, j, k)を次の演算の基礎とし、隣接する面Ｓｎに対する垂線の足ｐtemp3(i, j, k)が存在しない場合には、稜線ＲＬに対する垂線の足ｐtemp3(i, j, k)を演算して、次の演算の基礎とするものである。このため、本実施形態では、図１０、図１１に示したように、より稜線ＲＬによって折れている曲面Ｓの上にプリプレグテープの貼着経路を演算する場合においても、稜線ＲＬを跨ってスムーズな貼着経路を演算することが可能になる。
【００８２】
また、本実施形態では、基準レイアップパス設定ステップＳＳ１０１〜ＳＳ１１３は、曲面Ｓにプリプレグテープを積層する場合には、初期座標ｐ０から求めた垂線の足ｐtemp0(i, j, k)を通る曲面Ｓの法線に沿ってプリプレグテープの厚さ分のオフセット量ｈ（ｉ）を求め、その終点を次層の始点ｐ(i, j, k)として基準レイアップパスＴＰｓを演算するものである。このため、本実施形態では曲面Ｓに基づいて規定される初期座標ｐ０に基づいて複数の層での始点ｐ(i, j, k)が設定されるので、精緻なオフセット量ｈ（ｉ）を積層されるテープ厚さ分だけ求め、基準レイアップパスや隣接レイアップパスＴＰｎを演算することができる。
【００８３】
また、本実施形態では、探索ベクトル演算ステップＳ１０１は、演算の基準となる点から当該曲面Ｓに対する垂線の足ｐtemp0(i, j, k)を演算し、この垂線の足ｐtemp0(i, j, k)を通る曲面Ｓの法線方向に沿って、テープの厚さｔ分をオフセットした点を次の演算の始点ｐ(i, j, k)に設定するものである。このため、本実施形態では曲面Ｓを基準にして、プリプレグテープの厚さｔ分をオフセットし、経路を積算することができるので、複数層に貼着されるテープの貼着経路を演算する場合にも、精緻な経路を演算することができる。上述したように、「演算の基準となる点」とは、演算の最初の段階では、初期座標ｐ０であり、初期座標ｐ０からの演算が探索ベクトルの演算が算出された後は、次の探索ベクトルＳＶの基点ｐ(i, j, k)を意味する。
【００８４】
また、本実施形態では、複数の層毎に設定されるプリプレグテープの貼着方向Ｖ（ｉ）が重複している場合には、上側の層での初期座標ｐ０の座標をテープの幅方向にシフトするものである。
【００８５】
また、本実施形態では、基準レイアップパス設定ステップＳＳ１０１〜ＳＳ１１３は、初期座標ｐ０から設定された所定の探索ベクトルＳＶに沿う前半のレイアップパスＴＰ(i, f)を演算した後、前記初期座標ｐ０から前記所定の探索ベクトルＳＶと逆向きの探索ベクトルに沿って後半のレイアップパスＴＰ(i, l)を演算し、前記前半のレイアップパスＴＰ(i, f)と後半のレイアップパスＴＰ(i, l)とを接続して演算されたものである。この態様では、初期座標を基準にして基準レイアップパスＴＰ(i, j)を前半のレイアップパスＴＰ(i, f)と後半のレイアップパスＴＰ(i, l)とに分けて演算するので、各レイアップパスＴＰ(i, f)、ＴＰ(i, l)の演算誤差を１／２に低減することができる。
【００８６】
上述した実施の形態は、本発明の好ましい具体例を例示したものに過ぎず、本発明は上述した実施形態に限定されない。例えば、製品が球状の曲面を有する場合には、基準レイアップパスＴＰｓを演算する際に、設定値Ｌｈを設定し、周回する経路を演算可能にすれば、この曲面に沿う基準レイアップパスＴＰｓや、その隣接レイアップパスＴＰｎを演算することができる。
【００８７】
その他、本発明の特許請求の範囲内で種々の変更が可能であることはいうまでもない。
【符号の説明】
【００８８】
１０  ＣＡＤシステム
１１  ＣＡＤデータベース
２０  経路演算モジュール
２１  入出力装置
２２  表示装置
２３  外部記憶装置
２４  データ操作モジュール
２５  レイアッププラン処理モジュール
２６  ナビゲーティングモジュール
ｄ  テープ幅
ｈ  オフセット量
ｈＶ  単位法線ベクトル
ｉ，ｊ，ｋ  変数
Ｌｈ  設定値
Ｌｎ  積算間隔
ｍ  積算移動量
ｎ  層数
ｎＶ  単位探索ベクトル
ＮＬ  基準ライン
ｐ(i, j, k)  始点
ｐｄ  下流点
ｐｕ  上流点
ｐ０  初期座標
ｐｅ  終点
ｐｎ  基礎点
ｐtemp0−ｐtemp3  垂線の足
ＲＬ  稜線
Ｓ  曲面（貼着面の一例）
Ｓｆ  探索値
Ｓ２０  三次元データ読取ステップ
Ｓ１００-Ｓ１２５  ナビゲーティングステップ
Ｓ１０１  探索ベクトル演算ステップ
Ｓ１０１-Ｓ１１３  基準レイアップパス設定ステップ
Ｓ１０２  垂足演算ステップ
Ｓ１２０-Ｓ１５４  隣接レイアップパス設定ステップ
ＳＳ１２９  基準点探索ステップ
ＳＳ１４２  基準点接続ステップ
ＳＶ  探索ベクトル
ｔ  厚さ
Ｔｅ  終点
ｔｐ  ナチュラルパス
ＴＰ  レイアップパス
Ｖ（ｉ）  プリプレグテープの貼着方向
Δａ  微小移動量
ΔＬｎ  分割間隔
Δｍ  移動量
【図１】
0005552305.tif 000004
【図２】
0005552305.tif 000005
【図３】
0005552305.tif 000006
【図４】
0005552305.tif 000007
【図５】
0005552305.tif 000008
【図６】
0005552305.tif 000009
【図７】
0005552305.tif 000010
【図８】
0005552305.tif 000011
【図９】
0005552305.tif 000012
【図１０】
0005552305.tif 000013
【図１１】
0005552305.tif 000014
【図１２】
0005552305.tif 000015
【図１３】
0005552305.tif 000016
【図１４】
0005552305.tif 000017
【図１５】
0005552305.tif 000018
【図１６】
0005552305.tif 000019
【図１７】
0005552305.tif 000020
【図１８】
0005552305.tif 000021
【図１９】
0005552305.tif 000022
【図２０】
0005552305.tif 000023
【図２１】
0005552305.tif 000024
【図２２】
0005552305.tif 000025
【図２３】
0005552305.tif 000026
【図２４】
0005552305.tif 000027
【図２５】
0005552305.tif 000028
【図２６】
0005552305.tif 000029