JP5609302B2 - 接触定義装置、接触定義プログラム及び接触定義方法 - Google Patents

接触定義装置、接触定義プログラム及び接触定義方法 Download PDF

Info

Publication number
JP5609302B2
JP5609302B2 JP2010139877A JP2010139877A JP5609302B2 JP 5609302 B2 JP5609302 B2 JP 5609302B2 JP 2010139877 A JP2010139877 A JP 2010139877A JP 2010139877 A JP2010139877 A JP 2010139877A JP 5609302 B2 JP5609302 B2 JP 5609302B2
Authority
JP
Japan
Prior art keywords
surface area
component
range
unit
overlapping
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2010139877A
Other languages
English (en)
Other versions
JP2012003634A (ja
Inventor
慎 坂入
慎 坂入
早知子 里見
早知子 里見
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2010139877A priority Critical patent/JP5609302B2/ja
Priority to US13/064,461 priority patent/US8868388B2/en
Publication of JP2012003634A publication Critical patent/JP2012003634A/ja
Application granted granted Critical
Publication of JP5609302B2 publication Critical patent/JP5609302B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • G06F30/23Design optimisation, verification or simulation using finite element methods [FEM] or finite difference methods [FDM]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Processing Or Creating Images (AREA)

Description

本発明は、接触定義装置、接触定義プログラム及び接触定義方法に関する。
近年、装置等の設計段階では、設計対象の例えば装置の構造をコンピュータによって数値的に解析し、シミュレーションする手法がとられている。このようなコンピュータを用いて物理現象を数値的に模擬する技術は、CAE(Computer Aided Engineering)と称される。このような数値解析シミュレーションでは、装置を構成する解析対象の部品間に、あらかじめ接触定義を行っておくことが必要となる。すなわち、部品間の接触定義を用いて、数値解析シミュレーションを実行する数値解析ソフトが、部品を変形させる毎に、部品間が接触するか否かの接触判定を行う。
ここで、部品間の接触定義を行わなかった場合には、数値解析シミュレーション実行後に不具合が生じることがある。例えば、接触定義を行なわなかった場合の不具合について、図19を参照しながら説明する。図19は、接触定義を行なわなかった場合の不具合を示す図である。図19に示すように、部品の変形前の状態から、部品に外力をかけて部品を変形後の状態にする。すると、接触定義が行なわれている部品間では、部品同士が接触することとなるが、接触定義が行なわれなかった部品間では、部品が別の部品に入り込む貫通という現象が発生し、適切な数値解析が行えないという不具合が生じる。
そこで、このような不具合が生じないような接触定義の手段として、ユーザが、3Dモデルの幾何学形状の作成を支援するモデラーを用いて、3Dモデルで表現された部品の幾何学形状の表面を選択し、部品間の接触定義を行う。また、接触定義の別の手段として、モデラーが、ユーザによって指定される部品間の距離内に配置された部品の幾何学形状の表面同士を自動検知し、部品間の接触定義を行う。
また、部品の幾何学形状の表面をメッシュ分割された場合には、メッシュ分割された任意の領域における法線ベクトルの方向と略反対方向の法線ベクトルを持つ他の部品の表面の領域のうち、任意の領域に最も近い領域を接触領域として定義する技術がある。
特開2009−59028号公報 特開平6−266807号公報 特開2006−48583号公報
しかしながら、従来の部品間の接触定義の技術では、部品の幾何学形状の表面同士の接触定義を行なうので、接触定義後に実行される数値解析シミュレーションにおいて、不要な接触判定がされることとなり、数値解析時間が増加するという問題があった。
ここで、従来の部品間の接触定義について、図20及び図21を参照しながら説明する。図20は、部品間の接触範囲の具体例を示す図であり、図21は、従来の接触定義を説明する図である。図20に示すように、部品A、B、C、Dにおいて、部品Aに対して部品Bの方向に荷重を付加した場合、部品Aの部品C側表面と部品Cの部品A側表面とが接触し、部品Aの部品D側表面と部品Dの部品A側表面とが接触する。すなわち、部品A表面では、表面A−C及び表面A−Dが接触可能性の有る表面Eとなり、それ以外の範囲が接触可能性の無い範囲Fとなる。
ところが、図21に示すように、従来の接触定義では、部品Aの部品C側表面m1及び部品Cの部品A側表面m2間の接触を定義する接触定義d1がなされる。すなわち、部品Aの部品C側表面には部品Cとの関係で接触可能性の無い範囲Fをも含んで接触定義がなされることになる。このため、接触定義後に実行される数値解析シミュレーションでは、数値解析ソフトが不要な接触判定をすることとなり、数値解析時間が増加してしまう。なお、部品Aの部品B側表面m1と部品Bの部品A側表面m4間の接触定義d2、部品Dの部品B側表面m3と部品Bの部品D側表面m4間の接触定義d3の場合であっても、同様の結果となる。
また、モデラーを用いた部品間の接触定義では、使用者が接触するか否かを判断するので、接触定義に漏れが発生することがある。接触定義に漏れが発生すると、再び漏れのあった部品間の接触定義を行なわなければならず、その後、数値解析シミュレーションを実行することとなるので、数値解析時間が増加するという問題があった。
なお、部品の表面領域における法線ベクトルを用いた接触定義の場合には、部品の幾何学形状の表面がメッシュ分割された領域から構成されていることが必要であるので、部品の表面が幾何学形状のままでは部品間の接触定義を行なうことができない。
開示の技術は、上記に鑑みてなされたものであって、3Dモデルで表現された部品が幾何学形状であっても、部品間の接触定義を効率的に行ない、数値解析時間を低減できる接触定義装置、接触定義プログラム及び接触定義方法を提供することを目的とする。
本願の開示する接触定義装置は、一つの態様において、3Dモデル内の表面領域に関するデータにより表現された部品を所定の方向に移動させる部品移動部と、前記部品移動部による移動後の前記部品の表面領域に、他の部品の表面領域と重複する範囲があるか否かを判定する重複判定部と、前記重複判定部によって前記部品の表面領域に、他の部品の表面領域と重複する範囲があると判定された場合に、該重複範囲を他の部品との接触範囲として定義する接触定義部とを備える。
本願の開示する接触定義装置の一つの態様によれば、3Dモデルで表現された部品が幾何学形状であっても、部品間の接触定義を効率的に行ない、数値解析時間を低減できるという効果を奏する。
図1は、実施例1に係る接触定義装置の構成を示す機能ブロック図である。 図2は、実施例2に係る接触定義装置の構成を示す機能ブロック図である。 図3は、部品移動の具体例を示す図である。 図4は、部品Aの移動による表面領域分割の具体例を示す図である。 図5は、部品Dの移動による表面領域分割の具体例を示す図である。 図6は、部品Cの移動による表面領域分割の具体例を示す図である。 図7は、表面領域分割の変形例を示す図である。 図8は、数値解析処理の全体手順を示すフローチャートである。 図9は、接触定義処理の手順を示すフローチャートである。 図10は、表面領域分割処理の手順を示すフローチャートである。 図11は、実施例2に係る接触定義の具体例を示す図である。 図12は、実施例3に係る接触定義装置の構成を示す機能ブロック図である。 図13は、部品移動の具体例を示す図である。 図14は、部品Aの移動によるメッシュグループ化の具体例を示す図である。 図15は、接触定義処理の手順を示すフローチャートである。 図16は、メッシュグループ化処理の手順を示すフローチャートである。 図17は、表面領域分割の別の具体例を示す図である。 図18は、部品Aの移動による表面領域分割の具体例を示す図である。 図19は、接触定義を行なわなかった場合の不具合を示す図である。 図20は、接触範囲の具体例を示す図である。 図21は、従来の接触定義を説明する図である。 図22は、接触定義処理プログラムを実行するコンピュータを示す図である。
以下に、本願の開示する接触定義装置、接触定義プログラム及び接触定義方法の実施例を図面に基づいて詳細に説明する。なお、実施例によりこの発明が限定されるものではない。
図1は、本実施例1に係る接触定義装置の構成を示す機能ブロック図である。図1に示すように、接触定義装置1は、部品移動部11、重複判定部12及び接触定義部13を有する。
部品移動部11は、3Dモデル内の表面領域に関するデータにより表現された部品を所定の方向に移動させる。なお、部品の表面領域に関するデータとは、3Dモデルの幾何学形状データであっても良く、幾何学形状データで表される形状をメッシュ状に分割されたデータであっても良い。
重複判定部12は、部品移動部11による移動後の前記部品の表面領域に、他の部品の表面領域と重複する範囲があるか否かを判定する。接触定義部13は、重複判定部12によって部品の表面領域に、他の部品の表面領域と重複する範囲があると判定された場合に、該重複範囲を他の部品との接触範囲として定義する。
このようにして、接触定義装置1は、3Dモデル内の部品を所定の方向に移動させ、移動後の部品の表面領域に、他の部品の表面領域と重複する範囲がある場合に、該重複範囲を他の部品との接触範囲として定義することとした。このため、接触定義装置1は、部品間の重複範囲を接触範囲とすることにより、表面領域の全範囲を接触範囲とするのと比較して部品間の接触範囲を最適化することができる。この結果、接触定義装置1は、3Dモデルで表現される部品が幾何学形状であっても、部品間の接触定義を効率的に行なうことができ、その後の数値解析時間の低減を図ることができる。
[実施例2に係る接触定義装置の構成]
まず、実施例2に係る接触定義装置2の構成について図2を参照しながら説明する。図2は、実施例2に係る接触定義装置を示す機能ブロック図である。図2に示すように、接触定義装置2は、記憶部21及び制御部22を備える。なお、以下の実施例では、接触定義装置2は、コンピュータ援用エンジニアリング(CAE:Computer Aided Engineering)に用いられるが、本実施例により限定されるものではない。
記憶部21は、形状データ記憶部211及び接触定義データ記憶部212を有する。なお、記憶部21は、例えば、RAM(Random Access Memory)、フラッシュメモリ(flash memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置を含む。
形状データ記憶部211は、部品の表面領域に関する形状データを記憶する。具体的には、形状データ記憶部211は、部品に関する3Dモデルの幾何学形状データ(以下、形状データと略記する。)を記憶する。なお、3Dモデルは、例えばソリッドモデルであっても良く、サーフェースモデルまたはワイヤフレームモデルであっても良い。また、形状データには、3次元座標系における位置データを含むものとする。
接触定義データ記憶部212は、部品の表面領域と他の部品の表面領域との接触定義データを記憶する。具体的には、接触定義データ記憶部212は、表面が重なり合う部品同士の重なり合う(重複する)表面領域に関する形状データを対にして記憶する。例えば、接触定義データ記憶部212は、表面が重複する部品毎に、部品番号、重複する表面の表面番号及び重複する表面領域に関する形状データを対応付けて記憶する。なお、以降、部品の表面同士が重なり合うことを、「重複する」と表現するものとする。
制御部22は、ファイル入出力部221、荷重付加情報取得部222、部品移動部223、重複判定部224、表面領域分割部225及び接触定義部226を有する。なお、制御部22は、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路またはCPU(Central Processing Unit)やMPU(Micro Processing Unit)等の電子回路である。
ファイル入出力部221は、形状データ記憶部211に記憶された形状データ及び接触定義データ記憶部212に記憶された接触定義データの入出力を行なう。荷重付加情報取得部222は、ユーザや外部の装置(図示しない)等から、部品間の接触定義に必要な荷重付加情報を取得する。この荷重付加情報は、例えば、荷重が付加されることによって変形させる最初の部品(変形部品)、当該部品に対して荷重が付加される荷重位置、荷重方向及び当該部品の予想される変形量(予想変形量)を含む。なお、部品に対して荷重が付加される位置とは、例えば部品の重心を指す。
部品移動部223は、3Dモデル内の表面領域に関するデータにより表現された部品を荷重方向に荷重を付加し、当該部品を移動させる。具体的には、部品移動部223は、荷重付加情報取得部222によって取得された荷重付加情報に含まれた最初の部品を変形部品として、当該変形部品を荷重位置から荷重方向に所定量ずつ移動させる。また、部品移動部223は、変形部品の移動を、予想変形量まで繰り返す。また、部品移動部223は、変形部品を予想変形量まで移動させた後、荷重が付加された変形部品との距離が近い順に部品を選択し、選択した部品を次の変形部品として、当該変形部品を荷重方向に移動させる。なお、荷重方向は、例えば、部品の組み付け方向とすれば良い。
重複判定部224は、部品移動部223による移動毎に、移動後の変形部品の表面領域に、他の部品の表面領域と重複する範囲があるか否かを判定する。具体的には、重複判定部224は、形状データ記憶部211に記憶された形状データに基づいて、移動後の変形部品の表面領域に、他の部品の表面領域の一部または全部と重複する範囲があるか否かを判定する。また、重複判定部224は、後述する表面領域分割部225によって分割された変形部品の重複範囲以外の表面領域に、他の部品の表面領域の一部または全部と重複する範囲があるか否かを判定する。なお、判定方法には、例えば3次元直交座標におけるミニマックス・ボックスによるものがあるが、これに限定されるものではない。
表面領域分割部225は、重複判定部224によって移動後の変形部品の表面領域に、他の部品の表面領域と重複する範囲があると判定された場合、互いに重複した各部品の表面領域を、該重複範囲の表面領域と該重複範囲以外の表面領域とに分割する。ここで、重複範囲を形成するどちらか一方の部品または両方の部品の表面領域が重複範囲と一致する場合がある。この場合には、表面領域分割部225は、表面領域が重複範囲と一致する部品に関する分割処理を行なわない。そして、表面領域分割部225は、変形部品の重複範囲以外の表面領域に関する形状データを記憶部21に一時的に保持する。
なお、表面領域分割部225は、変形部品の変形後の位置ずれを考慮して、部品の表面領域を、該重複範囲に重複可能性のある領域を加えた重複可能領域と該重複可能領域以外の表面領域とに分割するようにしても良い。重複可能領域は、重複範囲の面積の規定値パーセント(%)の範囲を重複可能性のある領域とし、この領域を重複範囲に加えた領域とする。ただし、規定値は、例えば10であっても、15であっても良く、その情報は記憶部21に予め記憶されているものとする。そして、表面領域分割部225は、部品の重複可能領域以外の表面領域に関する形状データを記憶部21に一時的に保持する。
接触定義部226は、部品間の重複範囲を接触範囲として定義する。具体的には、接触定義部226は、変形部品の重複範囲に関する形状データを、変形部品と重複した他の部品の重複範囲に関する形状データに対応付けて、接触定義データ記憶部212に格納する。例えば、接触定義部226は、変形部品及び該変形部品と重複した他の部品の部品番号と重複範囲を含む表面領域の表面番号と重複範囲に関する形状データとを対応付けて、接触定義データ記憶部212に格納する。
[部品移動の具体例]
次に、部品移動部223による部品移動の具体例について図3を参照しながら説明する。図3は、部品移動の具体例を示す図である。なお、図3の説明では、3Dモデル内に含まれる部品A、部品B、部品C及び部品Dの形状データを用いて説明するものとする。
図3に示すように、部品移動部223は、部品Aを最初の変形部品とし、部品Aの荷重位置から荷重方向に所定量ずつ荷重を付加して移動させる。また、部品移動部223は、部品Aの移動を予想変形量まで繰り返し、変形量が予想変形量に到達すると、荷重が付加された部品Aとの距離が近い順に部品を選択し、選択した部品を変形部品として部品Aの場合と同様に荷重方向に移動させる。ここでは、部品移動部223は、部品Aの移動後、部品D、部品C、部品Bの順に移動させることとなる。
[表面領域分割の具体例]
次に、表面領域分割部225による表面領域分割の具体例について図4〜図6を参照しながら説明する。図4は部品Aの移動による表面領域分割の場合について説明し、図5は部品Dの移動による表面領域分割の場合について説明し、図6は部品Cの移動による表面領域分割の場合について説明する。なお、図4〜図6の説明では、3Dモデル内に含まれる部品A、部品B、部品C及び部品Dの形状データを用いて説明するものとする。
まず、図4を参照して、部品Aの移動による表面領域分割の具体例について説明する。図4は、部品Aの移動による表面領域分割の具体例を示す図である。なお、図4(a)〜(d)は、部品Aを変形部品として部品Aの移動に伴う部品Aの表面領域分割及び変形状態の図を用いて説明するものとする。
図4(a)〜(d)に示すように、部品Aの表面領域を、他の部品の表面領域との重複範囲の表面領域と該重複範囲以外の表面領域とに分割する。まず、図4(a)に示すように、部品Aの移動前には、部品Aの部品B側の表面領域を指す表面A−1は、まだ分割されていない。
次に、図4(b)に示すように、部品移動部223は、部品Aを、部品Aの荷重位置から荷重方向に移動させる。重複判定部224は、部品Aの移動後に、移動後の部品Aの表面A−1に、他の部品の表面領域と重複する範囲があるか否かを判定する。そして、表面領域分割部225は、部品Aの表面A−1に、部品Dの表面領域と重複する範囲があると判断する。そして、表面領域分割部225は、部品Aの表面A−1を、部品Dとの重複範囲を指す表面A−Dと該重複範囲以外の表面A−1−1とに分割する。
次に、図4(c)に示すように、部品移動部223は、部品Aを、さらに部品Aの荷重位置から荷重方向に移動させる。重複判定部224は、部品Aの移動後、移動後の部品Aの表面A−1−1に、他の部品の表面領域と重複する範囲があるか否かを判定する。そして、表面領域分割部225は、部品Aの表面A−1−1に、部品Cの表面領域と重複する範囲があると判断する。そして、表面領域分割部225は、部品Aの表面A−1−1を部品Cとの重複範囲を指す表面A−Cと該重複範囲以外の表面A−1−2とに分割する。
次に、図4(d)に示すように、部品移動部223は、部品Aを、さらに部品Aの荷重位置から荷重方向に移動させる。重複判定部224は、部品Aの移動後、移動後の部品Aの表面A−1−2に、他の部品の表面領域と重複する範囲があるか否かを判定する。そして、表面領域分割部225は、部品Aの表面A−1−2に、部品Bの表面領域と重複する範囲があると判断する。そして、表面領域分割部225は、部品Aの表面A−1−2を部品Bとの重複範囲を指す表面A−B−1及び表面A−B−2と該重複範囲以外の表面A−1−3及び表面A−1−4に分割する。そして、部品移動部223が部品Aを予想変形量まで移動させると、部品Aの移動を終了し、部品Aを元の位置に戻す。
次に、図5を参照して、部品Dの移動による表面領域分割の具体例について説明する。図5は、部品Dの移動による表面領域分割の具体例を示す図である。なお、図5(a)(b)は、部品Dを変形部品として部品Dの移動に伴う部品Bの表面領域分割及び変形状態の図を用いて説明するものとする。
図5(a)(b)に示すように、部品Bの表面領域を、変形部品Dの表面領域との重複範囲の表面領域と該重複範囲以外の表面領域とに分割する。まず、図5(a)に示すように、部品Dの移動前には、既に変形部品として移動した部品Aとの関係で、部品Aとの重複範囲を示す表面B−1と該重複範囲以外の表面B−1−1及び表面B−1−2とに分割されている。すなわち、部品Bの表面B−1は、図4(d)に示す部品Aの表面A−B−1及び表面AーB−2と重複する。
次に、図5(b)に示すように、部品移動部223は、部品Dを、部品Dの荷重位置から荷重方向に移動させる。重複判定部224は、部品Dの移動後に、移動後の部品Dの表面領域に、他の部品の表面領域と重複する範囲があるか否かを判定する。そして、表面領域分割部225は、部品Dの表面領域に、部品Bの表面領域と重複する範囲があると判断する。ここでは、部品Dの部品Bとの重複範囲は、部品Dの表面領域の全範囲となるので、表面領域分割部225は、部品Dの表面領域の分割処理を行わない。一方、表面領域分割部225は、部品Bの表面B−1を、部品Dとの重複範囲を指す表面B−Dと該重複範囲以外の表面B−1−3に分割する。そして、部品移動部223が部品Dを予想変形量まで移動させると、部品Dの移動を終了し、部品Dを元の位置に戻す。
次に、図6を参照して、部品Cの移動による表面領域分割の具体例について説明する。図6は、部品Cの移動による表面領域分割の具体例を示す図である。なお、図6(a)(b)は、部品Cを変形部品として部品Cの移動に伴う部品Bの表面領域分割及び変形状態の図を用いて説明するものとする。
図6(a)(b)に示すように、部品Bの表面領域を、変形部品Cの表面領域との重複範囲の表面領域と該重複範囲以外の表面領域とに分割する。まず、図6(a)に示すように、部品Cの移動前には、既に変形部品として移動した部品A及び部品Dとの関係で、部品Bの表面は、表面B−1−1、表面B−1−2、表面B−1−3及び表面B−Dに分割されている(図5(b)参照)。
次に、図6(b)に示すように、部品移動部223は、部品Cを、部品Cの荷重位置から荷重方向に移動させる。重複判定部224は、部品Cの移動後に、移動後の部品Cの表面領域に、他の部品の表面領域と重複する範囲があるか否かを判定する。そして、表面領域分割部225は、部品Cの表面領域に、部品Bの表面領域と重複する範囲があると判断する。ここでは、部品Cの部品Bとの重複範囲は、部品Cの表面領域の全範囲となるので、表面領域分割部225は、部品Cの表面領域の分割処理を行わない。一方、表面領域分割部225は、部品Bの表面B−1−3を、部品Cとの重複範囲を指す表面B−Cと該重複範囲以外の表面B−1−4に分割する。そして、部品移動部223が部品Cを予想変形量まで移動させると、部品Cの移動を終了し、部品Cを元の位置に戻す。
[表面領域分割の変形例]
ここで、表面領域分割部225による表面領域分割の変形例について、図7を参照しながら説明する。図7は、表面領域分割の変形例を示す図である。なお、図7では、部品Bの表面領域の一部の範囲と部品Dの表面領域の全範囲とが重複するものとして説明する。
図7に示すように、表面領域分割部225は、部品Bの表面領域を、部品Dとの重複範囲に重複可能性のある領域を加えた重複可能領域と該重複可能領域以外の表面領域とに分割する。ここでは、重複可能領域は、部品Bと部品Dとの重複範囲を指す「部品D表面」に該「部品D表面」の面積の規定値d%の範囲を加えた領域を示す。なお、「d」は、例えば10であっても、15であっても良く、その情報は記憶部21に予め記憶されているものとする。これにより、変形する部品Dの変形後の位置ずれを見込んだ接触定義を行うことができる。
[数値解析処理の全体手順]
次に、上記接触定義装置2を用いた数値解析処理の全体手順を、図8を参照して説明する。図8は、数値解析の全体手順を示すフローチャートである。なお、解析手法として、境界要素法を用いたときの手順例であるが、有限要素法等の他の解析手法を用いた場合も同様である。
まず、解析を行なうための3Dモデル(部品)がユーザによって定義される(ステップS11)。3Dモデルは、3次元の幾何学形状モデルを指す。そして、実施例2に係る接触定義装置2が、3Dモデルとして定義された部品間の接触定義を実行する(ステップS12)。すなわち、部品間の向かい合った両方の表面の重複を認識し、重複部品間に接触定義を行なう。この接触定義処理については後に詳しく説明する。
続いて、3Dモデルとして定義された部品の表面に、解析を行なうためのメッシュの自動生成が行なわれる(ステップS13)。さらに、3Dモデルとして定義された部品の材料特性がユーザによって定義される(ステップS14)。そして、メッシュが生成された部品間の接触条件が定義される(ステップS15)。さらに、メッシュが生成された部品に対し、数値解析の種類と目的とに応じた境界条件が定義される(ステップS16)。
次に、上記定義された部品の幾何学形状、接触条件、境界条件及びメッシュを含む数値解析用データが、数値解析プログラムを実行する数値解析装置に出力される(ステップS17)。そして、数値解析装置が、出力された数値解析用データを入力し(ステップS18)、該数値解析用データを用いて、数値解析プログラムによって数値解析を実行する(ステップS19)。
続いて、数値解析装置が、数値解析結果を解析結果ファイルに出力する(ステップS20)。その後、数値解析装置が、解析結果ファイルを読み込み(ステップS21)、解析結果ファイルに基づいて、部品の変形表示を行なう。そして、部品の変形形状に問題が有るか否かをユーザによって判定される(ステップS22)。そして、部品の変形形状に問題が有ると判定された場合には(ステップS22;Yes)、部品間の接触条件を再定義するために、ステップS15に移行する。一方、部品の変形形状に問題がないと判定された場合には(ステップS22;No)、数値解析処理を終了する。
[接触定義処理の手順]
次に、図8のステップS12で説明した接触定義処理の処理手順を、図9を参照して説明する。図9は、接触定義処理の手順を示すフローチャートである。
まず、制御部22は、接触定義を行なう部品に関する3Dモデルの形状データを形状データ記憶部211から読み込む(ステップS31)。そして、荷重付加情報取得部222は、ユーザや外部の装置から、部品間の接触定義に必要な荷重付加情報を取得する(ステップS32)。
続いて、部品移動部223は、荷重付加情報に基づいて各部品を移動させながら、表面領域分割部225は、各部品の表面領域を、自部品と異なる他の部品との重複範囲の表面領域と該重複範囲以外の表面領域とに分割する(ステップS33)。この表面領域分割処理については後に詳しく説明する。
その後、接触定義部226は、重複範囲となった部品間の表面領域を接触範囲として定義する(ステップS34)。そして、接触定義部226は、定義された部品間の接触範囲の対を、接触定義データ記憶部212に出力する(ステップS35)。
[表面領域分割処理の手順]
次に、図9のステップS33で説明した表面領域分割処理の処理手順を、図10を参照して説明する。図10は、表面領域分割処理の手順を示すフローチャートである。
まず、部品移動部223は、荷重が付加される部品から近い順に部品を選択する(ステップS41)。具体的には、部品移動部223は、最初に、荷重負荷情報に含まれる荷重が付加される部品を変形部品として選択する。
次に、部品移動部223は、選択した部品(変形部品)を、当該変形部品の荷重位置から荷重方向に所定量ずつ移動させる(ステップS42)。続いて、重複判定部224は、移動後の変形部品の表面領域に、他の部品の表面領域と重複する範囲が有るか否かを判定する(ステップS43)。そして、重複判定部224によって重複する範囲がないと判定された場合に(ステップS43;No)、変形部品をさらに移動させるために、ステップS42に移行する。一方、重複判定部224によって重複する範囲が有ると判定された場合に(ステップS43;Yes)、表面領域分割部225は、変形部品の表面領域と他の部品の表面領域との重複した範囲の領域を認識する(ステップS44)。
そして、表面領域分割部225は、互いに重複した各部品の表面領域を、認識した重複範囲の領域に規定値パーセントを加算した重複可能領域と該重複可能領域以外の表面領域とに分割する(ステップS45)。ただし、規定値は、例えば10であっても、15であっても良く、その情報は予め記憶部21に記憶されているものとする。なお、表面領域分割部225は、重複した部品の表面領域を、重複可能領域と該重複可能領域以外の表面領域とに分割するようにしたが、これに限定されるものではなく、重複した部品の表面領域を、重複領域と該重複領域以外の表面領域とに分割しても良い。
その後、部品移動部223は、変形部品を予想移動量まで移動させたか否かを判定する(ステップS46)。そして、部品移動部223によって変形部品を予想移動量まで移動させていないと判定された場合には(ステップS46;No)、部品移動部223は、変形部品を、当該変形部品の荷重位置から荷重方向にさらに所定量移動させる(ステップS47)。
続いて、重複判定部224によって重複する範囲があると判定された場合に、表面領域分割部225は、変形部品の既に分割された重複範囲以外の表面領域と、他の部品の表面領域との重複した範囲の領域を認識する(ステップS48)。そして、表面領域分割部225は、互いに重複した各部品の表面領域を、認識した重複範囲の領域に規定値パーセントを加算した重複可能領域と該重複可能領域以外の表面領域とに分割し(ステップS49)、ステップS46に移行する。
部品移動部223によって変形部品を予想移動量まで移動させたと判定された場合には(ステップS46;Yes)、部品移動部223は、変形部品を元の位置に戻す(ステップS50)。その後、部品移動部223は、次に移動させるべき部品が有るか否かを判定する(ステップS51)。すなわち、部品移動部223は、荷重が付加される部品から次に近い位置にある部品が有るか否かを判定する。
そして、部品移動部223によって次に移動させるべき部品が有ると判定された場合には(ステップS51;Yes)、ステップS41に移行する。一方、部品移動部223によって次に移動させるべき部品がないと判定された場合には(ステップS51;No)、表面領域分割処理を終了する。
[実施例2の効果]
上記実施例2によれば、部品移動部223が、3Dモデル内の表面領域に関するデータにより表現された部品(変形部品)を荷重方向に移動させる。そして、重複判定部224が、部品移動部223による移動後の変形部品の表面領域に、他の部品の表面領域と重複する範囲があるか否かを判定する。さらに、表面領域分割部225が、重複判定部224によって変形部品の表面領域に他の部品の表面領域と重複する範囲があると判定された場合に、変形部品の表面領域を、該重複範囲の表面領域と該重複範囲以外の表面領域とに分割する。そして、接触定義部226は、重複範囲となった部品間の表面領域を接触範囲として定義する。
かかる構成によれば、表面領域分割部225が、変形部品の表面領域に他の部品との重複範囲がある場合、変形部品の表面領域を該重複範囲とそれ以外とに分割することとした。このため、表面領域分割部225は、分割した該重複範囲以外の表面領域を用いて次の重複判定をさせることが可能となる。この結果、接触定義部226は、重複判定によって重複と判定された重複範囲同士を接触範囲として定義できるので、効率の良い接触定義を行うことができる。
ここで、接触定義装置2を用いた接触定義の具体例を、図11を参照して説明する。図11は、実施例2に係る接触定義の具体例を説明する図である。なお、図11の例では、部品移動部223によって部品Aが荷重を付加された場合の、部品Aとの関係で接触定義がなされた場合について説明する。
図11に示すように、部品移動部223によって部品Aが荷重を付加されると、接触定義部226は、部品Aの部品D側と部品Dの部品A側との接触定義dADを行なう。そして、同様に部品Aは荷重を付加されると、接触定義部226は、部品Aの部品C側と部品Cの部品A側との接触定義dACを行なう。さらに、同様に部品Aは荷重を付加されると、接触定義部226は、部品Aの部品B側と部品Bの部品A側との接触定義dABを行なう。このようにして、接触定義部226は、部品間の互いに重複する重複範囲同士を接触範囲として定義するので、重複範囲を含む全表面同士を接触範囲とするのに比べ、効率の良い接触定義を行うことができる。
また、上記実施例2によれば、表面領域分割部225は、部品の表面領域を、該重複範囲に重複可能性のある領域を加えた重複可能領域と該重複可能領域以外の表面領域とに分割する。かかる構成によれば、表面領域分割部225が、部品の表面領域を、重複可能領域とそれ以外とに分割することとしたので、接触定義部226は、部品間の接触範囲を、重複可能領域を用いて定義できる。この結果、部品間の接触定義後の数値解析では、何らかの理由により部品の変形後の位置ずれが発生しても、位置ずれによってずれた領域も重複可能領域として接触定義されているので、正常に接触判定をすることができ、数値解析時間を低減できる。
また、上記実施例2によれば、重複判定部224は、移動後の部品の表面領域であって表面領域分割部225によって分割された該重複範囲以外の表面領域に、他の部品の表面領域と重複する範囲があるか否かを判定する。かかる構成によれば、重複判定部224が、移動後の部品の表面領域を、既に重複範囲とされた表面領域を除外して、さらに他の部品との重複範囲の有無を判定することとしたので、他の部品との重複範囲を無駄なく発見できる。この結果、接触定義部226が、重複範囲と判定された部品同士の重複範囲を接触範囲として定義できるので、効率の良い接触定義を行うことができる。
ところで、実施例2に係る接触定義装置2では、幾何学形状データを有する3Dモデルを対象に、部品間の接触定義を行なう場合を説明した。しかしながら、接触定義装置2は、これに限定されるものではなく、幾何学形状データで表される形状をメッシュ状に分割されたデータを有する3Dモデルを対象に、部品間の接触定義を行なっても良い。
そこで、実施例3では、接触定義装置2が、幾何学形状データで表される形状をメッシュ状に分割されたデータを持った3Dモデルを対象に、部品間の接触定義を行なう場合を説明する。
[実施例3に係る接触定義装置の構成]
図12は、実施例3に係る接触定義装置の構成を示す機能ブロック図である。なお、図2に示す接触定義装置と同一の構成については同一符号を示すことで、その重複する構成及び動作の説明については省略する。実施例2と実施例3とが異なるところは、接触定義装置3にメッシュグループ化部301を追加した点にある。
形状データ記憶部211は、部品の表面領域に関するデータを記憶する。具体的には、形状データ記憶部211は、部品の表面に関する3Dモデルの幾何学形状データで表される形状をメッシュ状に分割されたデータ(以下、形状データと略記する。)を記憶する。なお、形状データ記憶部211は、幾何学形状データを含んで記憶するものとしても良い。また、形状データには、3次元座標系における位置データを含むものとする。
重複判定部224は、部品移動部223による移動毎に、移動後の変形部品の表面領域に、他の部品の表面領域と重複する範囲があるか否かを判定する。具体的には、重複判定部224は、形状データ記憶部211に記憶された形状データに基づいて、移動後の変形部品のメッシュ表面領域に、他の部品の表面領域の一部または全部と重複する範囲があるか否かを判定する。また、重複判定部224は、後述する表面領域分割部225によって分割される変形部品の重複範囲以外のメッシュ表面領域に、他の部品の表面領域の一部または全部と重複する範囲があるか否かを判定する。なお、判定方法には、例えば3次元直交座標におけるミニマックス・ボックスによるものがあるが、これに限定されるものではない。
メッシュグループ化部301は、重複判定部224によって移動後の変形部品のメッシュ表面領域に他の部品の表面領域と重複する範囲があると判定された場合、重複する範囲があると判定された部品毎に重複範囲を含む複数のメッシュ表面をグループ化する。
表面領域分割部225は、重複範囲がある部品毎に、各部品のメッシュ表面領域を、メッシュグループ化部301によってグループ化されたメッシュ表面と該メッシュ表面以外のメッシュ表面とに分割する。ここで、重複範囲を形成するどちらか一方の部品または両方の部品もメッシュ表面領域が重複範囲と一致する場合がある。この場合には、表面領域分割部225は、メッシュ表面領域が重複範囲と一致する部品に関する分割処理を行わない。そして、表面領域分割部225は、変形部品のグループ化されたメッシュ表面以外のメッシュ表面領域に関する形状データを記憶部21に一時的に保持する。
[部品移動の具体例]
次に、部品移動部223による部品移動の具体例について図13を参照しながら説明する。図13は、部品移動の具体例を示す図である。なお、図13の説明では、部品の表面をメッシュ状に分割された形状データを有する3Dモデル内に含まれる部品A、部品B、部品C及び部品Dの形状データを用いて説明するものとする。
図13に示すように、部品移動部223は、部品Aを最初の変形部品とし、部品Aの荷重位置から荷重方向に所定量ずつ荷重を付加して移動させる。また、部品移動部223は、部品Aの移動を予想変形量まで繰り返し、変形量が予想変形量に到達すると、荷重が付加された部品Aとの距離が近い順に部品を選択し、選択した部品を変形部品として部品Aと同様に荷重方向に移動させる。ここでは、部品Aの移動後、部品D、部品C、部品Bの順に移動させることとなる。
[メッシュグループ化の具体例]
次に、メッシュグループ化部301によるメッシュグループ化の具体例について図14を参照しながら説明する。図14は部品Aの移動によるメッシュグループ化の場合について説明する。なお、図14の説明では、部品の表面をメッシュ状に分割された形状データを有する3Dモデル内に含まれる部品A、部品B、部品C及び部品Dの形状データを用いて説明するものとする。また、図14(a)〜(d)は、部品Aを変形部品として部品Aの移動に伴う部品Aのメッシュグループ化及び変形状態の図を用いて説明するものとする。
図14(a)〜(d)に示すように、部品Aのメッシュ表面領域を、他の部品の表面領域と重複する範囲を含む複数のメッシュ表面をグループ化する。まず、図14(a)に示すように、部品Aの移動前には、部品Aの部品B側のメッシュ表面領域を指すメッシュ表面A−1は、まだグループ化されていない。
次に、図14(b)に示すように、部品移動部223は、部品Aを、部品Aの荷重位置から荷重方向に移動させる。重複判定部224は、部品Aの移動後に、移動後の部品Aのメッシュ表面A−1に、他の部品の表面領域と重複する範囲があるか否かを判定する。そして、メッシュグループ化部301は、部品Aのメッシュ表面A−1に、部品Dの表面領域と重複する範囲があると判断し、重複範囲を含む複数のメッシュ表面をグループA−Dとしてグループ化する。そして、表面領域分割部225は、部品Aのメッシュ表面A−1を、グループ化されたグループA−Dと該グループ以外のグループA−1−1に分割することになる。
次に、図14(c)に示すように、部品移動部223は、部品Aを、さらに部品Aの荷重位置から荷重方向に移動させる。重複判定部224は、部品Aの移動後、移動後の部品Aのグループ化されたメッシュ表面(グループA−1−1)に、他の部品の表面領域と重複する範囲があるか否かを判定する。そして、メッシュグループ化部301は、部品Aのメッシュ表面(グループA−1−1)に、部品Cの表面領域と重複する範囲があると判断し、重複範囲を含む複数のメッシュ表面をグループA−Cとしてグループ化する。そして、表面領域分割部225は、部品Aのメッシュ表面(グループA−1−1)を、グループA−Cと該グループ以外のグループA−1−2に分割することになる。
次に、図14(d)に示すように、部品移動部223は、部品Aを、さらに部品Aの荷重位置から荷重方向に移動させる。重複判定部224は、部品Aの移動後、移動後の部品Aのグループ化されたメッシュ表面(グループA−1−2)に、他の部品の表面領域と重複する範囲があるか否かを判定する。そして、メッシュグループ化部301は、部品Aのメッシュ表面(グループA−1−2)に、部品Bの表面領域と重複する範囲があると判断し、重複範囲を含む複数のメッシュ表面をグループA−Bとしてグループ化する。そして、表面領域分割部225は、部品Aのメッシュ表面(グループA−1−2)を、グループA−Bと該グループ以外のグループ(図示せず)に分割することになる。そして、部品移動部223が部品Aを予想変形量まで移動させると、部品Aの移動を終了し、部品Aを元の位置に戻す。
この結果、接触定義部226は、部品Aのメッシュ表面グループA−Dと部品Dの部品A側のメッシュ表面グループD−1(図示しない)との接触定義を行なう。また、接触定義部226は、部品Aのメッシュ表面グループA−Cと部品Cの部品A側のメッシュ表面グループC−1(図示しない)との接触定義を行なう。さらに、接触定義部226は、部品Aのメッシュ表面グループA−Bと部品Bの部品A側のメッシュ表面グループB−1(図示しない)との接触定義を行なう。
[接触定義処理の手順]
次に、実施例3に係る接触定義処理の処理手順を、図15を参照して説明する。図15は、接触定義処理の手順を示すフローチャートである。なお、実施例3に係る接触定義処理のうち、実施例2に係る接触定義処理(図9)と同じ処理手順については、同一符号を付すことで、その重複する手順の説明を省略する。
まず、制御部22は、接触定義を行なう部品に関する3Dモデルの形状データを形状データ記憶部211から読み込み(ステップS31)、部品の幾何学形状データで表される表面領域の分割処理を行うか否かを判定する(ステップS61)。例えば、制御部22は、ユーザや外部の装置等から幾何形状データの分割処理の要否指示を受けて、該要否指示に基づいて判定する。
そして、制御部22によって部品の幾何学形状データで表される表面領域の分割処理を行わないと判定された場合は(ステップS61;No)、制御部22は、部品のメッシュデータで表される表面領域のメッシュグループ化を行うか否かを判定する(ステップS62)。例えば、制御部22は、ユーザや外部の装置等からメッシュデータのメッシュグループ化の要否指示を受けて、該要否指示に基づいて判定する。
制御部22によって部品のメッシュデータで表される表面領域のメッシュグループ化を行わない場合は(ステップS62;No)、接触定義処理を終了する。一方、制御部22によって部品のメッシュデータで表される表面領域のメッシュグループ化を行う場合は(ステップS62;Yes)、荷重付加情報取得部222が、ユーザや外部の装置から、部品間の接触定義に必要な荷重付加情報を取得する(ステップS63)。そして、メッシュグループ化部301は、部品毎にメッシュグループ化処理を行い(ステップS64)、ステップS34に移行する。このメッシュグループ化処理については後に詳しく説明する。
一方、制御部22によって部品の幾何学形状データで表される表面領域の分割処理を行うと判定された場合は(ステップS61;Yes)、荷重付加情報取得部222が、ユーザや外部の装置から、部品間の接触定義に必要な荷重付加情報を取得する(ステップS32)。続いて、部品移動部223が、荷重付加情報を基づいて各部品を移動させながら、表面領域分割部225は、各部品の表面領域を、自部品と異なる他の部品との重複範囲の表面領域と該重複範囲以外の表面領域とに分割する(ステップS33)。
その後、接触定義部226は、重複範囲となった部品間の表面領域を接触範囲として定義する(ステップS34)。そして、接触定義部226は、定義された部品間の接触範囲の対を、接触定義データ記憶部212に出力する(ステップS35)。
[メッシュグループ化処理の手順]
次に、図15のステップS64で説明したメッシュグループ化処理の処理手順を、図16を参照して説明する。図16は、メッシュグループ化処理の手順を示すフローチャートである。
まず、部品移動部223は、荷重が付加される部品から近い順に部品を選択する(ステップS71)。具体的には、部品移動部223は、最初に、荷重負荷情報に含まれる荷重が付加される部品を変形部品として選択する。
次に、部品移動部223は、選択した部品(変形部品)を、当該変形部品の荷重位置から荷重方向に所定量ずつ移動させる(ステップS72)。続いて、重複判定部224は、移動後の変形部品の表面領域に、他の部品の表面領域と重複する範囲が有るか否かを判定する(ステップS73)。そして、重複判定部224によって重複する範囲がないと判定された場合に(ステップS73;No)、変形部品をさらに移動させるために、ステップS72に移行する。
一方、重複判定部224によって重複する範囲が有ると判定された場合に(ステップS73;Yes)、メッシュグループ化部301は、変形部品の表面領域と他の部品の表面領域との重複範囲の領域を認識する(ステップS74)。そして、メッシュグループ化部301は、認識した重複範囲の領域を含む複数のメッシュ表面を、重複範囲の領域がある部品毎にグループ化する(ステップS75)。そして、表面領域分割部225は、重複範囲の領域がある部品毎に、各部品のメッシュ表面領域を、メッシュグループ化部301によってグループ化されたメッシュ表面と該メッシュ表面以外のメッシュ表面とに分割する(ステップS76)。
その後、部品移動部223は、変形部品を予想移動量まで移動させたか否かを判定する(ステップS77)。そして、部品移動部223によって変形部品を予想移動量まで移動させていないと判定された場合には(ステップS77;No)、部品移動部223は、変形部品を、当該変形部品の荷重位置から荷重方向にさらに所定量移動させる(ステップS78)。
続いて、重複判定部224によって重複する範囲が有ると判定された場合に、メッシュグループ化部301は、変形部品の既に分割された重複範囲以外のメッシュ表面領域と、他の部品の表面領域との重複範囲の領域を認識する(ステップS79)。そして、メッシュグループ化部301は、認識した重複範囲の領域を含む複数のメッシュ表面を、重複範囲の領域がある部品毎にグループ化する(ステップS80)。そして、表面領域分割部225は、重複範囲の領域がある部品毎に、各部品のメッシュ表面領域を、メッシュグループ化部301によってグループ化されたメッシュ表面と該メッシュ表面以外のメッシュ表面とに分割し(ステップS81)、ステップS77に移行する。
部品移動部223によって変形部品を予想移動量まで移動させたと判定された場合には(ステップS77;Yes)、部品移動部223は、変形部品を元の位置に戻す(ステップS82)。その後、部品移動部223は、次に移動させるべき部品があるか否かを判定する(ステップS83)。すなわち、部品移動部223は、荷重が付加される部品から次に近い位置にある部品があるか否かを判定する。
そして、部品移動部223によって次に移動させるべき部品があると判定された場合には(ステップS83;Yes)、ステップS71に移行する。一方、部品移動部223によって次に移動させるべき部品がないと判定された場合には(ステップS83;No)、メッシュグループ化処理を終了する。
[実施例3の効果]
上記実施例3によれば、メッシュグループ化部301は、3Dモデル内の表面領域に関するデータがメッシュ状に分割されたデータの場合に、部品の表面領域に他の部品の表面領域との重複範囲があるとき、該重複範囲を含む複数のメッシュをグループ化する。そして、表面領域分割部225は、物品の表面領域を、メッシュグループ化部301によってグループ化された複数のメッシュとそれ以外のメッシュに分割する。
かかる構成によれば、3Dモデル内の表面領域に関するデータがメッシュ状に分割されたデータの場合に、メッシュグループ化部301が部品間の表面領域の重複範囲をメッシュによってグループ化することとした。そして、表面領域分割部225が物品の表面領域をグループ化したメッシュとそれ以外のメッシュに分割することとした。このため、表面領域分割部225は、該重複範囲を含むグループ化されたメッシュ以外のメッシュを用いて次の重複判定をさせることが可能となる。この結果、接触定義部226は、重複判定によって重複と判定された重複範囲を含むメッシュ同士を接触範囲として定義できるので、効率の良い接触定義を行うことができる。また、部品間の接触定義後の数値解析では、何らかの理由により部品の変形後の位置ずれが発生しても、位置ずれによってずれた領域を含んで接触定義できるので、正常に接触判定をすることができ、数値解析時間を低減できる。
また、上記実施例3によれば、重複判定部224は、移動後の部品の表面領域であってメッシュグループ化部301によってグループ化された複数のメッシュ部分を除外した表面領域に、他の部品の表面領域と重複する範囲があるか否かを判定する。かかる構成によれば、重複判定部224が、移動後の部品の表面領域を、既に重複範囲としてグループ化されたメッシュを除外して、さらに他の部品との重複範囲の有無を判定することとしたので、他の部品との重複範囲を無駄なく発見できる。この結果、接触定義部226が、重複判定部224によって重複と判定された重複範囲を含むメッシュ同士を接触範囲として定義できるので、効率の良い接触定義を行うことができる。
[その他]
なお、実施例2では、荷重が付加される部品が荷重方向に移動する場合について説明した。しかしながら、荷重が付加される部品が荷重方向に移動するとともに、該部品が荷重方向と垂直の方向にも移動する場合がある。そこで、表面領域分割の別の具体例として、荷重が付加される部品が荷重方向に移動するとともに、該部品が荷重方向と垂直の方向にも移動する場合の表面領域分割について、図17及び図18を参照しながら説明する。なお、図17及び図18の説明では、3Dモデル内に含まれる部品A、部品B及び部品Cの形状データを用いて説明するものとする。
まず、図17は、表面領域分割の別の具体例を示す図である。図17に示すように、部品移動部223は、部品Aを変形部品とし、部品Aの荷重位置から荷重方向xに所定量ずつ荷重を付加して移動させる。そして、表面領域分割部225は、重複判定部224によって移動後の部品Aの表面領域に他の部品の表面領域と重複する範囲があると判定される場合には、部品Aの表面領域を、該重複範囲と該重複範囲以外に分割する表面領域分割処理を行う。ここでは、移動方向には、部品Aの表面領域と重複する他の部品がないので、表面領域分割部225は、部品Aの移動方向xに対する表面領域分割処理を行わない。
次に、部品移動部223は、部品Aを変形部品とし、部品Aの荷重位置から荷重方向xに荷重を付加しながら荷重方向xと垂直の方向yに所定量ずつ移動させる。そして、表面領域分割部225は、重複判定部224によって移動後の部品Aの表面領域に他の部品の表面領域と重複する範囲があると判定される場合には、部品Aの表面領域を、該重複範囲と該重複範囲以外に分割する処理を行う。ここでは、移動方向には、部品Aの表面領域と重複する他の部品Bがあるので、表面領域分割部225は、部品Aの移動方向yに対する表面領域分割処理を行うこととなる。
そこで、図18は、部品Aの移動による表面領域分割の具体例を示す図である。図18(a)(b)に示すように、部品Bの表面領域を、変形部品Aの表面領域との重複範囲の表面領域と該重複範囲以外の表面領域とに分割する。まず、図18(a)に示すように、部品Aの移動前には、部品Bの部品A側の表面領域を指す表面B−1は、まだ分割されていない。
次に、図18(b)に示すように、部品移動部223は、部品Aを、部品Aの荷重位置から荷重方向と垂直の方向yに移動させる。重複判定部224は、部品Aの移動後に、移動後の部品Aの表面領域に、他の部品の表面領域と重複する範囲があるか否かを判定する。そして、表面領域分割部225は、部品Aの表面領域に、部品Bの表面領域と重複する範囲があると判断する。ここでは、部品Aの部品Bとの重複範囲は、部品Aの表面領域の全範囲となるので、表面領域分割部225は、部品Aの表面領域の分割処理を行わない。一方、表面領域分割部225は、部品Bの表面B−1を、部品Aとの重複範囲を指す表面B−Aと該重複範囲以外の表面B−1−1に分割する。このとき、表面領域分割部225は、部品Aの変形後の位置ずれを考慮して、部品Bの表面領域を、該重複範囲に重複可能性のある領域を加えた重複可能領域と該重複可能領域以外の表面領域とに分割するようにしても良いことはいうまでもない。
なお、上記した荷重が付加される部品が荷重方向に移動するとともに、該部品が荷重方向と垂直の方向にも移動する場合の表面領域分割は、部品の表面領域がメッシュ状に分割された実施例3の場合であっても同様に行なうことができる。
また、図示した各装置の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的態様は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。例えば、表面領域分割部225と接触定義部226とを1つの部として統合しても良い。一方、形状データ記憶部211を、部品の幾何学形状データを記憶する幾何学形状データ記憶部と、部品のメッシュデータを記憶するメッシュデータ記憶部と、部品の位置データを記憶する位置データ記憶部とに分散しても良い。また、記憶部21を接触定義装置2、3の外部装置として有し、ネットワーク接続されて協働することで、上記した接触定義装置2、3の機能を実現するようにしても良い。特に、3Dモデルの形状データを記憶する形状データ記憶部211を含む3Dモデルデータベースを接触定義装置2、3の外部装置として有し、ネットワーク接続されて協働することで、上記した接触定義装置2、3の機能を実現するようにしても良い。
また、上記実施例で説明した各種の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。そこで、以下では、図13を用いて、図3に示したコンピュータ支援装置2と同様の機能を有する接続関係決定処理プログラムを実行するコンピュータの一例を説明する。
図22は、接触定義処理プログラムを実行するコンピュータを示す図である。図22に示すように、コンピュータ1000は、RAM(Random Access Memory)1010と、キャッシュ1020と、HDD1030と、ROM(Read Only Memory)1040と、CPU(Central Processing Unit)1050、バス1060とを有する。RAM1010、キャッシュ1020、HDD1030、ROM1040、CPU1050は、バス1060によって接続されている。
ROM1040には、図2に示した接触定義装置2と同様の機能を発揮する接触定義処理プログラム1041が予め記憶されている。
そして、CPU1050は、この接触定義処理プログラム1041を読み出して実行する。これにより、図22に示すように、接触定義処理プログラム1041は、接触定義処理プロセス1051になる。なお、接触定義処理プロセス1051は、図2に示した制御部22に対応する。
また、HDD1030には、図22に示すように3Dモデルデータベース1031及び接触定義情報1032が設けられる。3Dモデルデータベース1031は、例えば、図2に示した記憶部21に記憶される形状データ記憶部211に対応し、接触定義情報1032は、図2に示した記憶部21に記憶される接触定義データ記憶部212に対応する。
なお、上述した各プログラム1041については、必ずしもROM1040に記憶させなくても良い。例えば、コンピュータ1000に挿入されるフレキシブルディスク(FD)、CD−ROM、MOディスク、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」にプログラム1041を記憶させても良い。又は、コンピュータ1000の内外に備えられるハードディスクドライブ(HDD)などの「固定用の物理媒体」にプログラム1041を記憶させても良い。又は、公衆回線、インターネット、LAN、WANなどを介してコンピュータ1000に接続される「他のコンピュータ(又はサーバ)」にプログラム1041を記憶させても良い。そして、コンピュータ1000は、上述したフレキシブルディスクなどから各プログラムを読み出して実行するようにしても良い。
以上の実施例に係る実施形態に関し、さらに以下の付記を開示する。
(付記1)3Dモデル内の表面領域に関するデータにより表現された部品を所定の方向に移動させる部品移動部と、
前記部品移動部による移動後の前記部品の表面領域に、他の部品の表面領域と重複する範囲があるか否かを判定する重複判定部と、
前記重複判定部によって前記部品の表面領域に、他の部品の表面領域と重複する範囲があると判定された場合に、該重複範囲を他の部品との接触範囲として定義する接触定義部と
を有することを特徴とする接触定義装置。
(付記2)前記重複判定部によって前記部品の表面領域に、他の部品の表面領域と重複する範囲があると判定された場合に、前記部品の表面領域を、該重複範囲の表面領域と該重複範囲以外の表面領域とに分割する表面領域分割部を有することを特徴とする付記1に記載の接触定義装置。
(付記3)前記表面領域分割部は、
前記部品の表面領域を、該重複範囲に重複可能性のある領域を加えた重複可能領域と該重複可能領域以外の表面領域とに分割することを特徴とする付記2に記載の接触定義装置。
(付記4)3Dモデル内の表面領域に関するデータがメッシュ状に分割されたデータの場合に、該重複範囲を含む複数のメッシュをグループ化するグループ化部を有し、
前記部品の表面領域を、前記グループ化部によってグループ化されたメッシュとそれ以外のメッシュとに分割するメッシュ表面領域分割部を有することを特徴とする付記1に記載の接触定義装置。
(付記5)前記重複判定部は、
移動後の前記部品の表面領域であって前記表面領域分割部によって分割された該重複範囲以外の表面領域に、他の部品の表面領域と重複する範囲があるか否かを判定することを特徴とする付記2または付記3に記載の接触定義装置。
(付記6)前記重複判定部は、
移動後の前記部品の表面領域であって前記グループ化部によってグループ化された複数のメッシュ部分を除外した表面領域に、他の部品の表面領域と重複する範囲があるか否かを判定することを特徴とする付記4に記載の接触定義装置。
(付記7)3Dモデル内の表面領域に関するデータにより表現された部品を所定の方向に移動させる部品移動手順と、
前記部品移動手順による移動後の前記部品の表面領域に、他の部品の表面領域と重複する範囲があるか否かを判定する重複判定手順と、
前記重複判定手順によって前記部品の表面領域に、他の部品の表面領域と重複する範囲があると判定された場合に、該重複範囲を他の部品との接触範囲として定義する接触定義手順と
をコンピュータに実行させることを特徴とする接触定義プログラム。
(付記8)コンピュータが部品間の接触を定義する接触定義方法であって、
3Dモデル内の表面領域に関するデータにより表現された部品を所定の方向に移動させる部品移動ステップと、
前記部品移動ステップによる移動後の前記部品の表面領域に、他の部品の表面領域と重複する範囲があるか否かを判定する重複判定ステップと、
前記重複判定ステップによって前記部品の表面領域に、他の部品の表面領域と重複する範囲があると判定された場合に、該重複範囲を他の部品との接触範囲として定義する接触定義ステップと
を含むことを特徴とする接触定義方法。
1、2、3 接触定義装置
11 部品移動部
12、224 重複判定部
13、226 接触定義部
21 記憶部
211 形状データ記憶部
212 接触定義データ記憶部
22 制御部
221 ファイル入出力部
222 荷重付加情報取得部
223 部品移動部
225 表面領域分割部
301 メッシュグループ化部

Claims (7)

  1. 3Dモデル内の表面領域に関するデータにより表現された部品を他の部品との組み付け方向に所定量ずつ所定の方向に移動させる部品移動部と、
    前記部品移動部による移動後の移動した部品の表面領域に、他の部品の表面領域と重複する範囲があるか否かを判定する重複判定部と、
    前記重複判定部によって前記移動した部品の表面領域に、他の部品の表面領域と重複する重複範囲があると判定された場合に、前記移動した部品の表面領域内の重複範囲に関する情報と他の部品の表面領域内の重複範囲に関する情報とを対応付けて接触範囲として定義する接触定義部と
    を有することを特徴とする接触定義装置。
  2. 前記重複判定部によって前記部品の表面領域に、他の部品の表面領域と重複する重複範囲があると判定された場合に、前記部品の表面領域を、該重複範囲の表面領域と該重複範囲以外の表面領域とに分割する表面領域分割部を有することを特徴とする請求項1に記載の接触定義装置。
  3. 前記表面領域分割部は、
    前記部品の表面領域を、該重複範囲に重複可能性のある領域を加えた重複可能領域と該重複可能領域以外の表面領域とに分割することを特徴とする請求項2に記載の接触定義装置。
  4. 3Dモデル内の表面領域に関するデータがメッシュ状に分割されたデータの場合に、該重複範囲を含む複数のメッシュをグループ化するグループ化部を有し、
    前記部品の表面領域を、前記グループ化部によってグループ化されたメッシュとそれ以外のメッシュとに分割するメッシュ表面領域分割部を有することを特徴とする請求項1に記載の接触定義装置。
  5. 前記重複判定部は、
    移動後の前記部品の表面領域であって前記表面領域分割部によって分割された該重複範囲以外の表面領域に、他の部品の表面領域と重複する範囲があるか否かを判定することを特徴とする請求項2または請求項3に記載の接触定義装置。
  6. 3Dモデル内の表面領域に関するデータにより表現された部品を他の部品との組み付け方向に所定量ずつ所定の方向に移動させる部品移動手順と、
    前記部品移動手順による移動後の移動した部品の表面領域に、他の部品の表面領域と重複する範囲があるか否かを判定する重複判定手順と、
    前記重複判定手順によって前記移動した部品の表面領域に、他の部品の表面領域と重複する重複範囲があると判定された場合に、前記移動した部品の表面領域内の重複範囲に関する情報と他の部品の表面領域内の重複範囲に関する情報とを対応付けて接触範囲として定義する接触定義手順と
    をコンピュータに実行させることを特徴とする接触定義プログラム。
  7. コンピュータが部品間の接触を定義する接触定義方法であって、
    3Dモデル内の表面領域に関するデータにより表現された部品を他の部品との組み付け方向に所定量ずつ所定の方向に移動させる部品移動ステップと、
    前記部品移動ステップによる移動後の移動した部品の表面領域に、他の部品の表面領域と重複する範囲があるか否かを判定する重複判定ステップと、
    前記重複判定ステップによって前記移動した部品の表面領域に、他の部品の表面領域と重複する重複範囲があると判定された場合に、前記移動した部品の表面領域内の重複範囲に関する情報と他の部品の表面領域内の重複範囲に関する情報とを対応付けて接触範囲として定義する接触定義ステップと
    を含むことを特徴とする接触定義方法。
JP2010139877A 2010-06-18 2010-06-18 接触定義装置、接触定義プログラム及び接触定義方法 Expired - Fee Related JP5609302B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2010139877A JP5609302B2 (ja) 2010-06-18 2010-06-18 接触定義装置、接触定義プログラム及び接触定義方法
US13/064,461 US8868388B2 (en) 2010-06-18 2011-03-25 Contact defining device, contact defining method, and non-transitory computer readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010139877A JP5609302B2 (ja) 2010-06-18 2010-06-18 接触定義装置、接触定義プログラム及び接触定義方法

Publications (2)

Publication Number Publication Date
JP2012003634A JP2012003634A (ja) 2012-01-05
JP5609302B2 true JP5609302B2 (ja) 2014-10-22

Family

ID=45329417

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010139877A Expired - Fee Related JP5609302B2 (ja) 2010-06-18 2010-06-18 接触定義装置、接触定義プログラム及び接触定義方法

Country Status (2)

Country Link
US (1) US8868388B2 (ja)
JP (1) JP5609302B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6015377B2 (ja) * 2012-11-22 2016-10-26 富士通株式会社 設定方法、及び情報処理装置
JP6727515B2 (ja) * 2018-07-31 2020-07-22 株式会社コナミデジタルエンタテインメント ゲームシステム、及びそれに用いるコンピュータプログラム

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5448687A (en) * 1988-09-13 1995-09-05 Computer Design, Inc. Computer-assisted design system for flattening a three-dimensional surface and for wrapping a flat shape to a three-dimensional surface
JP2786792B2 (ja) 1993-03-16 1998-08-13 富士通テン株式会社 部品干渉検査装置、及びcadシステム
US5988862A (en) * 1996-04-24 1999-11-23 Cyra Technologies, Inc. Integrated system for quickly and accurately imaging and modeling three dimensional objects
JPH1115857A (ja) * 1997-06-24 1999-01-22 Oki Electric Ind Co Ltd 2次元cadにおける干渉部品検出装置および干渉部品検出方法
US6999073B1 (en) * 1998-07-20 2006-02-14 Geometrix, Inc. Method and system for generating fully-textured 3D
GB2398469B (en) * 2003-02-12 2005-10-26 Canon Europa Nv Image processing apparatus
JP4275593B2 (ja) * 2004-08-09 2009-06-10 富士通株式会社 接触定義装置、接触定義プログラム、接触定義方法
US8004517B1 (en) * 2005-06-24 2011-08-23 Geomagic, Inc. Methods, apparatus and computer program products that model three-dimensional surface structures
ATE548987T1 (de) * 2006-11-28 2012-03-15 Koninkl Philips Electronics Nv Vorrichtung zur bestimmung einer position eines ersten objekts innerhalb eines zweiten objekts
JP2008165488A (ja) 2006-12-28 2008-07-17 Fujitsu Ltd 組立操作性評価装置、方法及びプログラム
JP5003244B2 (ja) * 2007-03-30 2012-08-15 富士通株式会社 接触条件設定支援方法、接触条件設定支援装置及びコンピュータプログラム
JP2009059028A (ja) 2007-08-30 2009-03-19 Sharp Corp 接触解析装置、接触解析プログラム及び接触解析プログラムを記録した記録媒体
JP5157329B2 (ja) * 2007-08-31 2013-03-06 株式会社セガ ゲーム装置
JP5259286B2 (ja) * 2008-07-16 2013-08-07 株式会社日立製作所 3次元物体認識システム及びそれを用いた棚卸システム
JP5062080B2 (ja) * 2008-07-22 2012-10-31 富士通株式会社 3次元モデルデータを生成する装置および方法

Also Published As

Publication number Publication date
US20110313733A1 (en) 2011-12-22
US8868388B2 (en) 2014-10-21
JP2012003634A (ja) 2012-01-05

Similar Documents

Publication Publication Date Title
US6446239B1 (en) Method and apparatus for optimizing electronic design
US8769452B2 (en) Parasitic extraction in an integrated circuit with multi-patterning requirements
JP2011517000A (ja) ソリッドモデルにおける面を分割するシステムおよび方法
US6941528B2 (en) Use of a layout-optimization tool to increase the yield and reliability of VLSI designs
US8627247B1 (en) Systems and methods for fixing pin mismatch in layout migration
US8108814B2 (en) Dummy metal insertion processing method and apparatus
JP5609302B2 (ja) 接触定義装置、接触定義プログラム及び接触定義方法
JP4783268B2 (ja) 半導体レイアウト設計装置
US10896283B1 (en) Noise-based optimization for integrated circuit design
CN115048900B (zh) 一种集成电路版图的拐角填充方法、装置及计算机设备
US9626474B2 (en) Expanded canonical forms of layout patterns
JP2008027302A (ja) レイアウト評価装置
JP4157831B2 (ja) 線材パッキング計算方法、その装置及びそのプログラム
US20120221994A1 (en) Wire Routing Using Virtual Landing Pads
JP2004070626A (ja) レイアウトデータの保存方法、レイアウトデータ変換装置、及び図形検証装置
CN111611761A (zh) 生成电路版图图案的方法、设备和计算机可读存储介质
US8549457B1 (en) Method and system for implementing core placement
KR20140147761A (ko) 접히는 시트 오브젝트의 설계
Grzesiak-Kopeć et al. 3D IC optimal layout design. A parallel and distributed topological approach
JP2012159953A (ja) 半導体集積回路のテスト設計支援装置、テスト設計支援方法及びプログラム
US10970452B2 (en) System for designing semiconductor circuit and operating method of the same
JP2001159809A (ja) マスクパターン設計装置、マスクパターン設計方法およびマスクパターン設計プログラムを格納したコンピュータ読取り可能な記録媒体
TW202234282A (zh) 使用可滿足性模理論解算器自動產生標準單元之系統及方法
US20050048677A1 (en) The use of a layout-optimization tool to increase the yield and reliability of vlsi designs
JP4298783B2 (ja) 図形検証装置及びレイアウトデータ変換装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130507

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131016

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131112

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140110

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140311

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140501

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140805

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140818

R150 Certificate of patent or registration of utility model

Ref document number: 5609302

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees