説明

空気溜りのシミュレーション方法及びシミュレーションプログラム

【課題】流体中の粒子の挙動をより精密に解析し、実際の状況を精密に近似したシミュレーションに発展させる。
【解決手段】ワークの内外にN個の気泡粒子を発生させ(S4)、気泡粒子にかかる力の釣り合いに基づいて気泡粒子の移動量ΔZを算出し(S5)、ワークとの干渉がない場合、気泡粒子を移動させ、干渉がある場合、気泡粒子をワークの部材表面に沿って移動させる(S7)。更に、粒子間の衝突がある場合には、粒子間の衝突による移動計算を行い、衝突後の速度及び方向を算出する(S11)。計算終了後、ポスト処理に移行し(S14)、気泡粒子の軌跡やワーク内部の堆積状態を可視化処理し、また、気泡粒子の堆積状態からエアポケットの体積を計算する。これにより、流体中の粒子の挙動をより精密に解析し、実際の状況を精密に近似したシミュレーションに発展させることができる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、浸漬処理を施す際にワークに生じる空気溜りをシミュレーションする空気溜りのシミュレーション方法及びシミュレーションプログラムに関する。
【背景技術】
【0002】
一般に、電着塗装やメッキ等におけるワークの浸漬工程においては、均一な塗膜やメッキ膜を形成させるために、ワークに空気溜り(エアポケット)を生じさせないことが重要である。このエアポケットは、複雑な形状のワークを浸漬した際に、その隙間にできる凹部、例えば、自動車等の車体であれば、フード内面、ルーフ内面、フロア下面等の凹部等の空間に空気が残留する現象であり、このエアポケットが発生すると、塗装不良やメッキ不良が発生してしまう。
【0003】
そこで、ワークを浸漬処理する状態をコンピュータを用いてシミュレーションし、エアポケットの発生状況を予測する手法が提案されており、その手法の1つとして、特許文献1に開示されているように、浸漬液中の空気の泡を気泡粒子と仮定し、この気泡粒子が浸漬液中を上昇する過程を解析することにより、ワーク内部に溜まる気泡粒子からエアポケットの発生を予測する技術がある。
【0004】
特許文献1の技術は、図18に示すように、ワークWkの下方或いは周囲から気泡粒子Bkを発生させ、気泡粒子の軌道を計算するものであり、上昇した気泡粒子Bkが途中でワークWkの壁に当たると、壁面下に沿って更に上昇し、図19に示すように、ワークWk上部の凸部領域内に停滞して停滞粒子Bktとなる。最終的に、この停滞粒子Bktの位置がエアポケットの発生位置となり、停滞粒子Bkの濃淡によってエアポケットの大きさを簡易表示している。
【特許文献1】特開2006−116385号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
しかしながら、特許文献1の技術においては、演算負荷を軽減してエアポケットの発生位置を迅速に把握することを主眼としており、気泡粒子に作用する各種の力の影響や気泡粒子同士の衝突等の相互干渉の影響を省略して解析を簡略化し、最終的に停滞粒子の変形や着色によってエアポケットの発生位置を強調表示するに止まっている。このため、エアポケットの大きさや形状を正確に予測することは困難であり、より精密な解析への発展が課題として残っている。
【0006】
本発明は上記事情に鑑みてなされたもので、流体中の粒子の挙動をより精密に解析し、実際の状況を精密に近似したシミュレーションに発展させることのできる空気溜りのシミュレーション方法及びシミュレーションプログラムを提供することを目的としている。
【課題を解決するための手段】
【0007】
上記目的を達成するため、本発明による空気溜りのシミュレーション方法は、浸漬処理を施すワークを形状データで表現した仮想ワークを含む解析領域内に擬似的に空気の泡を仮定した粒子を発生させ、上記ワークが浸漬される浸漬液を模した流体中の上記粒子の挙動を計算して空気溜りをシミュレーションする空気溜りのシミュレーション方法において、上記粒子に任意の形状及び物性を設定し、上記流体中で上記粒子に作用する力の関係に基づいて、上記粒子同士の衝突を伴う移動軌跡を計算するステップと、上記仮想ワーク或いは他の粒子との干渉により移動を停止した粒子を互いに合体させることなく堆積させ、堆積した粒子群をエアポケットと判定するステップとを備えることを特徴とする。
【0008】
本発明による空気溜りのシミュレーションプログラムは、浸漬処理を施すワークを形状データで表現した模擬ワークを含む解析領域内に擬似的に空気の泡を仮定した粒子を発生させ、上記ワークが浸漬される浸漬液を模した流体中の上記粒子の挙動を計算して空気溜りをシミュレーションするコンピュータが実行可能な空気溜りのシミュレーションプログラムにおいて、上記粒子に任意の形状及び物性を設定し、上記流体中で上記粒子に作用する力の関係に基づいて、上記粒子同士の衝突を伴う移動軌跡を計算するステップと、上記模擬ワーク或いは他の粒子との干渉により移動を停止した粒子を互いに合体させることなく堆積させ、堆積した粒子群をエアポケットと判定するステップとを備えることを特徴とする。
【発明の効果】
【0009】
本発明によれば、流体中の粒子の挙動をより精密に解析することができ、実際の状況を精密に近似したシミュレーションに発展させることができる。
【発明を実施するための最良の形態】
【0010】
以下、図面を参照して本発明の実施の形態を説明する。図1〜図9は本発明の実施の第1形態に係り、図1はシミュレーション装置の基本構成図、図2は車体の塗装ラインの概略説明図、図3は気泡粒子の発生位置を示す説明図、図4は気泡粒子の堆積状態を示す説明図、図5は粒子径の異なる気泡粒子の堆積状態を示す説明図、図6は気泡粒子の堆積の偏りを示す説明図、図7は気泡粒子の乱れを考慮した外力の説明図、図8は気泡粒子同士の衝突を示す説明図、図9はエアポケットシミュレーションプログラムのフローチャートである。
【0011】
図1に示すように、本実施の形態におけるシミュレーション装置1は、自動車のボディシェル等のワークに電着塗装やメッキ処理等の浸漬処理を施す際に、ワークに生じる空気溜り(エアポケット)をシミュレーションするものである。このエアポケットのシミュレーション装置1は、マイクロコンピュータやパーソナルコンピュータ等の単一のコンピュータ、或いはネットワークを介して相互に接続される複数のコンピュータを用いて構成される。
【0012】
以下では、便宜上、シミュレーション装置1を単一のコンピュータで構成する例について説明する。シミュレーション装置1は、演算装置10、キーボードやマウス等の入力装置11、CRTや液晶ディスプレイ等の表示装置12、磁気ディスクや光ディスク等の外部記憶装置13等を備えている。
【0013】
演算装置10は、CPU、ROM及びRAM等の内部メモリ、入出力インターフェース等を備えており、内部のROM、外部記憶装置13、外部の記憶媒体に記憶させたシミュレーションプログラム、或いは、図示しないネットワークや通信装置を介して外部からロードしたシミュレーションプログラムをCPUで実行し、入力装置11を介して指示された解析対象のワーク(対象物)を擬似的に浸漬槽内に浸漬させ、その浸漬によって対象物に発生するエアポケットをシミュレーションし、シミュレーション結果を表示装置12に出力して表示させる。尚、表示装置12には、シミュレーション結果のみならずシミュレーション過程を表示させるようにしても良い。
【0014】
例えば、本発明によるシミュレーションの適用例として、車体ボディの電着塗装時における電着液及び空気の分布を数値解析し、被塗装物におけるエアポケットの発生を予測するシミュレーションが挙げられる。ここで、車体ボディの塗装ラインについて、図2を用いて簡単に説明する。
【0015】
図2に示すように、溶接等により複数の車体パネルを互いに接合して構成される自動車の車体ボディ20は、搬送装置21のハンガに搭載された状態で塗装ラインにて略水平方向へ搬送される。塗装ラインでは、電着塗装の前処理として、車体パネルに脱脂、水洗、表面調整、皮膜化成、水洗等の処理が施される。
【0016】
これらの処理の後、車体ボディ20は電着槽22に向かって降下し、電着液23に浸漬された状態で略水平に移動する。この状態で、車体ボディ20と電着槽22内の電極(図示せず)に電圧を加えることにより、車体パネルに塗料が析出するようになっている。この後、搬送装置21により車体ボディ20は電着槽22から引き上げられ、水洗により車体パネルに電着せずに付着している電着液23が除去される。
【0017】
本発明におけるエアポケットのシミュレーションは、浸漬液中に発生させた擬似的な空気泡を粒子(気泡粒子)と仮定し、気泡粒子の挙動を解析することによりエアポケットの発生をシミュレーションする手法を発展させたものであり、エアポケットの形状や大きさを予測することが可能となっている。このエアポケットの形状や大きさを予測するため、本発明のエアポケットシミュレーションは、浸漬液を模した流体中で気泡粒子に作用する力の釣合いと気泡粒子同士の衝突を考慮して気泡粒子の挙動を解析するようにしている。
【0018】
気泡粒子同士の衝突を考慮した場合、流体中の気泡粒子は、所定の条件下において表面張力の影響により剛体的な挙動を示すことを踏まえ、本形態においては、気泡粒子に、気体(空気)としての物性に限定することなく、所定の剛性を有する固体としての物性を設定している。更に、気泡粒子は、球体のみならず楕円体や多面体等の任意の形状とすることができ、複数の気泡粒子の各々が異なる大きさであっても良い。
【0019】
演算装置10は、ワークに対して設定された計算領域内の任意の位置に任意の数の気泡粒子を発生させ、重力に抗して上昇する気泡粒子の挙動を解析する。そして、最終的に、ワークを構成する部材の内側で移動を停止して堆積する気泡粒子の集合体を、エアポケットと判断し、その形状や大きさを計算する。
【0020】
気泡粒子の挙動は、基本的には、気泡粒子に作用する浮力と重力とを考慮することで解析可能であるが、シミュレーション精度を向上するには、更なる条件の設定が必要となる。例えば、粒子の剛性、粒子同士の衝突における反発係数、粒子表面の摩擦係数等を設定し、また、流体の粘性、境界面における表面張力、流体からの作用力、流体以外の他の外力の影響等を考慮した条件を設定することにより、最終的に判定されるエアポケットのシミュレーション精度を向上することができる。
【0021】
本形態においては、解析に要する演算量及び演算速度とシミュレーション精度とを考慮し、次の(1)〜(4)に示すような条件を設定する。
【0022】
(1)気泡粒子を球状の剛体と見做し、互いの衝突による変形は生じないものとする。
【0023】
(2)気泡粒子同士の衝突においては、反発係数を“0”とし、衝突した気泡粒子同士が互いに結合して移動するものとする。但し、気泡粒子同士が結合した状態から分離することは可能とする。
【0024】
(3)気泡粒子表面の摩擦係数を“0”とする。
【0025】
(4)気泡粒子の径は、気液2相流における表面張力の影響を考慮した設定値以上の径とする。
【0026】
(1),(2)の条件は、気泡粒子は互いに合体することなく、移動を阻止されて停止した場合に、それぞれの大きさを維持しながら堆積することを意味し、(3)の条件は、気泡粒子同士が衝突しても気泡粒子は回転せず、エネルギーの損失がないことを意味している。また、(4)の条件は、ワークに隙間や孔が存在する場合であっても、隙間が狭かったり孔が小さ過ぎる場合には、表面張力によってワーク内部の空気が抜けず、エアポケットが発生する場合があることを考慮したものであり、(4)の条件に従って気泡粒子の径を設定することにより、ワークの隙間や孔が不適切であった場合にも、エアポケットの発生を見逃すことなく把握することができる。
【0027】
以上の気泡粒子を用いたシミュレーションプログラムの機能は、演算装置10の機能を、解析領域設定部10a、気泡粒子設定部10b、粒子挙動計算部10c、ポスト処理部10dに分けて表現することができる。以下、各部の機能について説明する。
【0028】
解析領域設定部10aは、気泡粒子の挙動を解析する解析領域(計算領域)を、エアポケットの判定対象となるワークの形状データを含んで数値化した3次元の領域として設定する。ワークの形状データとしては、設計用のCADデータやSTL(Stereo Lithography)データ、ワークの形状をメッシュやノード等の複数の要素に分割したFEM(有限要素法)データ等を用いることができる。
【0029】
例えば、形状データとしてメッシュデータを用いる場合、ワークに設定したメッシュとワーク周囲に設定した空間メッシュとを用いて解析領域を設定し、個々のメッシュに、例えば、自己を識別するためのメッシュ番号、メッシュの節点(ノード)の所定の基準点に対する座標値(三次元空間のXYZ座標軸における座標値)、メッシュの属性等のデータを付与する。これらのデータは、外部記憶装置13に格納され、例えば、対象物毎に個別の識別番号(レコード番号)が付された属性レコード群で構成されるデータベースに、各メッシュのメッシュ番号、ノード点座標値、属性データ等が対応付けて記述される。
【0030】
気泡粒子設定部10bは、解析領域内の任意の位置に擬似的に気泡粒子を発生させ、初期条件を設定する。初期条件としては、気泡粒子の径(直径)dp、発生個数N、計算回数M、計算の時間刻み幅Δt等の計算条件を設定し、また、ワークの姿勢に対する重力方向を決定する。
【0031】
気泡粒子の発生位置は、例えば、図3に示すように設定される。図3においては、解析領域A内のワークWの下方に配置した黒丸で示す位置が気泡粒子Bの発生位置であり、便宜的に気泡粒子Bを横軸方向へ1列に配設した状態が示されている。この気泡粒子Bの発生位置は、表示装置12を参照しながらマウス等を用いて任意の位置を指定しても良く、また、予め設定した位置やランダム位置に自動的に発生させることも可能である。更に、気泡粒子の発生位置は、ワーク内部に設定することも可能であり、ワーク内部に設定することで、最も注目した部位を集中的に解析することができる。
【0032】
以下に説明するように、解析領域A内に発生させた気泡粒子Bは、計算時間刻み幅Δt毎に、気泡粒子に掛かる作用力及び互いの衝突によって所定距離及び方向に移動される。そして、最終的に、図4に示すように、ワークW或いは他の気泡粒子との干渉によって移動を阻止されてワークWの内側に堆積する気泡粒子Bの集合体(粒子群)B_Pがエアポケットと判断され、エアポケットの形状や大きさが算出される。
【0033】
尚、図4においては各気泡粒子Bの径を同一として示しているが、大小様々な径の気泡粒子を用いても良い。大きさや形状の異なる気泡粒子を使用することで、図5に示すように、大きな気泡粒子BLの間に小さな気泡粒子BSが堆積し、気液境界面の形状を滑らかに表現することが可能となる。
【0034】
気泡粒子の径dpは、気液2相流における表面張力σの影響を考慮して設定した値以下とする。表面張力σの影響は、ウェーバー数Weとレイノルズ数Reという2つの無次元数に基づいて判断することができ、ウェーバー数We、レイノルズ数Reは、流体の密度ρ、動粘性係数ν、流体速度uとすると、それぞれ以下の(1),(2)式によって表現することができる。
We=(ρ×dp×u2)/σ …(1)
Re=u×dp/ν …(2)
【0035】
本シミュレーションの対象とする浸漬処理においては、浸漬液の流動状態は、比較的ゆっくりとしているものの、Re>1の状態、すなわち粘性力の影響よりも慣性力の影響が大きい状態である場合が多く、Re>1のとき、表面張力の影響が無視できなくなるのは、We>1のときである。従って、気泡粒子の径dpを、以下の(3)式の条件を満たすように設定することにより、狭い隙間や小さな孔に発生する表面張力の影響によるエアポケットを見逃すことなくシミュレーション可能となる。
dp≧σ/(ρ×u2) …(3)
【0036】
粒子挙動計算部10cは、時間刻み幅Δt毎に、気泡粒子の移動速度(ベクトル)upを計算し、時間刻み幅Δt毎の移動速度upの大きさを移動量ΔZとして気泡粒子を移動させる。気泡粒子の移動速度upは、球形粒子に掛かる単位質量当たりの作用力を表す関係式から求める。気泡粒子に作用する力としては、以下の(4)式に示すように、粘性力、浮力、遠心力や電磁力等の外力を考慮する。尚、(4)式における流体速度uは、実際の浸漬槽の仕様から算出される値を採用して良いが、別途、実施する流体解析結果や実験結果等から得られる値を利用しても良い。
(dup/dt)=fD×(u−up)+g×(ρp−ρ)/ρp+Fx …(4)
但し、fD:粒子の粘性抵抗係数
g :重力加速度
ρp:粒子の密度
Fx:粘性力や浮力以外の外力
【0037】
(4)式による気泡粒子の移動速度upは、気泡粒子に作用する力の釣り合いから求めた速度であるが、流体中を気泡粒子が移動してゆく際に生じる乱れの影響により、図6に示すように、ワークW内部に気泡粒子Bが偏って堆積してしまう場合がある。このため、気泡粒子の乱れの影響を無視できないことが予想される場合には、気泡粒子の移動方向と垂直方向(気泡粒子に重力しか作用しない場合には水平面方向)の移動量を設定するようしても良い。
【0038】
具体的には、気泡粒子に作用する力の関係を表す(4)式において、図7に示すように、気泡粒子Bの速度upでの移動方向と垂直なxy平面上に、大きさ(移動量)Δr及び方向θの外力Ftxを設定する。この外力Ftxは、気泡の乱れを表現するものであり、気泡粒子毎に、例えば乱数を用いて設定する。この外力Ftxを導入することにより、気泡粒子が揺らぎながら浸漬槽内を上昇する様子をシミュレーションすることができ、ワーク内に気泡粒子が偏って堆積することによる影響を緩和することができる。
【0039】
以上により求めた移動量ΔZで気泡粒子が部材と干渉する場合には、干渉する位置から部材表面に沿って気泡粒子を移動させる。また、図8に示すように、質量m1,速度up1の気泡粒子B1と質量m2,速度up2の気泡粒子とが衝突する場合には、運動量の保存則に基づいて、以下の(5)式から求まる速度upの大きさを移動量ΔZとして算出する。尚、(5)式におけるup,up1,up2は、速度ベクトルである。
up=m1/(m1+m2)×up1+m2/(m1+m2)×up2 …(5)
【0040】
ポスト処理部10dは、シミュレーションの途中経過やシミュレーション結果を容易に把握可能とするための可視化処理やシミュレーション結果のデータ出力を行う。すなわち、ワークに対する気泡粒子の移動状態を可視化するためのデータを生成し、部材との干渉によって移動を停止してワーク内部で堆積した気泡粒子の集合を、エアポケットを形成する気泡粒子として色相や濃淡等によって識別表示する。また、エアポケットの形状や大きさ(体積)を計算し、データの表示処理やファイルへの格納処理を行う。
【0041】
次に、演算装置10のCPUで実行されるエアポケットのシミュレーションプログラムについて、図9に示すフローチャートを用いて説明する。
【0042】
図9のシミュレーションプログラムでは、先ず、ステップS1において、ワークの形状データを入力し、このワークの形状データによる部材の存在空間と浸漬液で満たされる空間とを合わせて気泡粒子の挙動を解析する解析領域を設定する。次に、ステップS2へ進み、気泡粒子や浸漬液を模した流体の物性、重力の方向を設定し、ステップS3で、気泡粒子の径dp、発生個数N、計算回数M等の計算条件を入力する。
【0043】
更に、ステップS4へ進み、部材周囲(ワークの内外)に発生させるN個の気泡粒子の位置を設定すると、ステップS5で、前述の(4)式により、すなわち気泡粒子に掛かる作用力の釣り合いに基づいて気泡粒子の移動量ΔZを移動方向を含めて算出する。そして、ステップS6において、移動量ΔZでの気泡粒子の移動軌跡が解析領域内のワークと干渉しているか否かが判断される。
【0044】
気泡粒子とワークとの干渉は、例えば、気泡粒子の移動軌跡がワークの形状データと同一座標で重なるか否で判断する。同一座標で重ならない場合には、気泡粒子を移動させてもワークに干渉しないと判断し、同一座標で重なる場合、気泡粒子を移動させるとワークに干渉すると判断する。そして、ステップS6で干渉がないと判断した場合には、気泡粒子を移動量ΔZだけ移動させてステップS8へジャンプし、干渉があると判断した場合、ステップS7で気泡粒子をワークの部材表面に沿って移動させ、ステップS8へ進む。
【0045】
ステップS8では、移動計算済みの気泡粒子の数(以下「粒子数」と称する)iが、初期設定した発生個数Nに達したか否かを調べる。そして、i<Nの場合、ステップS9で粒子数iをインクリメントして次の移動計算の対象となる気泡粒子を選択し、ステップS5へ戻る。また、ステップS8において、粒子数iが発生個数Nに達した場合(i≧N)、ステップS8からステップS10へ進んで、気泡粒子間での衝突があるか否かを調べる。この気泡粒子同士の衝突は、同様に、移動量ΔZでの軌跡において同一座標で重なる点があり、軌跡が交差するか否かにより判断する。
【0046】
その結果、ステップS10において、粒子間の衝突がない場合には、ステップS12へジャンプし、粒子間の衝突がある場合、ステップS11で粒子間の衝突による移動計算を行う。この計算は、前述したように、運動量の保存則に基づく(5)式を用いて行い、衝突後の速度及び方向を算出し、ステップS12へ進む。
【0047】
ステップS12では、計算回数jが規定回数Mに達したか否かを調べ、j<Mのときは、規定回数に達していないため、ステップS13で計算回数jをインクリメントすると共に粒子数iをクリアし、ステップS5へ戻って次の移動計算を実行する。
【0048】
その後、ステップS12において、計算回数jが規定回数Mに達したとき(j≧M)、ステップS12からステップS14へ進み、ポスト処理を実行する。このポスト処理では、気泡粒子の軌跡をポスト処理によりアニメーション化したり、気泡粒子のワーク内部への堆積状態を表示する等の可視化処理を行い、また、気泡粒子の堆積状態からエアポケットの体積を計算し、表示装置12へ出力、シミュレーション結果のファイルへのデータ出力等を行う。
【0049】
以上のように、本実施の形態によれば、浸漬液中での気泡粒子の挙動を、気泡粒子に作用する各種の力の影響や気泡粒子同士の衝突等の相互干渉の影響を考慮して精密に解析することができ、実際の塗装ライン等の浸漬工程の状態を反映して実際の浸漬工程に近い状態でのエアポケットの評価を行うことができる。また、エアポケットの大きさや形状を知ることができ、単なる目安に止まることなく、より実用的なシミュレーションへと発展させることができる。
【0050】
尚、浸漬液を模した流体の物性値を気体(空気)に、気泡粒子の物性値を液体(浸漬液)に設定することで、浸漬槽からワークを引上げる際に発生する液溜り対策を講じることができる。
【0051】
次に、本発明の実施の第2形態について説明する。図10及び図11は本発明の実施の第2形態に係り、図10は停滞粒子を示す説明図、図11はエアポケットシミュレーションプログラムのフローチャート、図12は停滞粒子からの抽出を示す説明図、図13はエアポケットの平均高さを示す説明図である。
【0052】
第2形態は、気泡粒子の移動計算において、移動距離が0の状態が一定時間だけ続いた気泡粒子を、ワーク等に阻まれて移動できなくなった「停滞粒子」と定義し、その属性を変更すると共に、停滞粒子のうち、ワーク壁面に3点以上で接触している粒子を「最上停滞粒子」と定義し、その属性を変更するものである。
【0053】
最上停滞粒子は、重力方向と反対方向で最も高い位置にある停滞粒子を意味し、図10に示すように、ワークWの1つのエアポケットが2つの凸部Wt1,Wt2で形成されている場合には、1つのエアポケットを形成する複数の停滞粒子Btに対して、2つの最上位停滞粒子Btmaxが定義される。
【0054】
第2形態のシミュレーションプログラムは、第1形態のシミュレーションプログラム(図9)に、「停滞粒子」及び「最上位停滞粒子」の設定に伴う若干の変更を加えている。以下、第2形態のシミュレーションプログラムについて、図11のフローチャートを用いて説明する。
【0055】
図11に示すシミュレーションプログラムは、最初のステップS21〜S24は、第1形態のステップS1〜S4と同じであり、ワークの形状データ入力、物性及び重力方向の設定、計算条件の入力、N個の気泡粒子の設定を行う。次に、ステップS25以降では、停滞粒子の判定を含む気泡粒子の移動計算を行う。
【0056】
すなわち、ステップS25で気泡粒子が停滞粒子となっているか否かを判定し、停滞粒子の場合には、移動計算を打切ってステップS29へジャンプし、停滞粒子でない場合、ステップS26へ進んで、気泡粒子の移動量ΔZを算出する。この移動量Zの計算は、第1形態と同様である。
【0057】
そして、ステップS27において、移動量ΔZでの気泡粒子の移動軌跡が解析領域内のワークと干渉しているか否かを判断する。この干渉判断も第1形態と同様であり、干渉がないと判断した場合、気泡粒子を移動量ΔZだけ移動させてステップS29へ進み、干渉があると判断した場合、ステップS28で気泡粒子をワークの部材表面に沿って移動させ、ステップS29へ進む。
【0058】
ステップS29では、粒子数iが発生個数Nに達したか否かを調べ、i<Nの場合には、ステップS30で粒子数iをインクリメントして次の移動計算の対象となる気泡粒子を選択し、ステップS25へ戻る。また、ステップS29において、粒子数iが発生個数Nに達した場合(i≧N)、ステップS29からステップS31へ進み、第1形態で説明したように、気泡粒子間での衝突があるか否かを調べる。
【0059】
そして、ステップS31において、粒子間の衝突がない場合、ステップS37へジャンプし、粒子間の衝突がある場合、ステップS32へ進み、第1形態で説明したように、運動量の保存則に基づく(5)式を用いて粒子間の衝突による移動計算を行い、ステップS33へ進む。
【0060】
尚、気泡粒子の衝突において、ある気泡粒子が停滞粒子に衝突(または接触)した場合には、第1形態で説明した気泡粒子の乱れを表す垂直方向の力Ftxと同様の外力を作用させる。この外力は、気泡粒子に重力しか作用しない場合には、水平面内方向の横力を意味しており、気泡粒子が停滞粒子に接触した場合に、気泡粒子を横滑りさせ、気液境界面形状を滑らかにすることができる。
【0061】
次に、ステップS33では、今回の粒子位置が粒子位置計算における1ステップ前と同じか否かを調べる。そして、粒子位置が1ステップ前の計算と同じ位置でない場合は、ステップS37へジャンプし、粒子位置が同じ位置に止まっている場合、ステップS33からステップS34へ進み、該当する気泡粒子を停滞粒子に設定して属性を変更する。
【0062】
更に、ステップS34からステップS35へ進み、停滞粒子のワークとの接触状態を調べる。本形態においては、気泡粒子が球体であるものとして停滞粒子がワークと3点で接触しているか否かを調べ、3点で接触していない場合は、ステップS37へジャンプし、3点で接触している場合、ステップS36で、その停滞粒子を最上停滞粒子に設定して属性を変更し、ステップS37へ進む。
【0063】
ステップS37では、第1形態と同様、計算回数jが規定回数Mに達したか否かを調べ、j<Mのときは、規定回数に達していないため、ステップS38で計算回数jをインクリメントすると共に粒子数iをクリアし、ステップS25へ戻って次の移動計算を実行する。
【0064】
その後、ステップS37において、計算回数jが規定回数Mに達したとき(j≧M)、ステップS37からステップS39へ進んで停滞粒子数をカウントし、ステップS40でポスト処理に移行して可視化処理やシミュレーション結果のデータ出力を行う。
【0065】
このポスト処理では、エアポケットが発生している場合、最上停滞粒子の位置からワークに設けるべき通気孔の位置を明確に把握することができる。また、エアポケットの概略的な大きさを直ちに把握したい場合には、停滞粒子の数からエアポケットの体積の概算を迅速に計算することができ、迅速な対応が可能となる。
【0066】
更に、エアポケット体積を精密に求めるには、図12に示すように、ワークW内部の停滞粒子Bt群を下から見上げたとき、重心や粒子表面の最低点等の粒子の代表点を認識可能な停滞粒子を抽出し、エアポケットの気液境界面形状をより実際に近い滑らかな形状として求める。
【0067】
図12は、粒子径が異なる気泡粒子を用いたシミュレーション結果を例示しており、同図中で濃色表示する停滞粒子Btiが代表点を認識可能な粒子を示している。抽出した停滞粒子Btiからは、その代表点位置を気泡粒子の代表サイズ(例えば、粒子径や投影面積)で重み付け平均することにより、エアポケット平均高さを算出する。
【0068】
例えば、図13に示すように、i個の停滞粒子Bt1,Bt2,…,Btiが抽出され、基準位置(Z=0)からの各粒子の中心位置を代表点高さZp1,Zp2,…,Zpi、各粒子の径dp1,dp2、…,dpiを代表サイズとした場合、以下の(6)式により、エアポケット平均高さZAPを算出する(式中のΣは、iについての総和)。
ZAP=(ΣZpi×d2pi)/Σd2pi …(6)
【0069】
そして、エアポケット平均高さZAPにおける気泡粒子に作用する力の方向に垂直な平面(気泡粒子に重力のみが作用する場合には水平面)を求め、これをエアポケット界面(エアポケットの気液境界面)とする。このエアポケット界面とワークによって構成される形状をエアポケット形状として、このエアポケット形状からエアポケット体積を求めることで、実際に発生するエアポケットの正確な形状と体積を予測することができる。
【0070】
この場合、浸漬槽内における塗料の流れやワークの揺れを考慮してエアポケットの平均高さZAPを補正してエアポケット界面を求めるようにしても良い。すなわち、塗料の流れによる補正量、ワークの揺れによる補正量との少なくとも一方を平均高さZAPに加えて補正後の平均高さZAPrを算出し、この補正後の平均高さZAPrになるように、停滞粒子群から気泡粒子を削除する。
【0071】
第2形態では、移動を停止した気泡粒子を、「停滞粒子」として定義することで、移動を停止する気泡粒子を迅速に見極めて移動計算を早く中止させることができ、処理速度の向上を図ることができる。また、停滞粒子の中で最も高い位置にある停滞粒子を、「最上停滞粒子」として定義することにより、ワークに設けるべき通気孔の位置を明確に把握することができ、エアポケットが発生した場合にも、迅速な対処を可能とし、単なる目安に止まらない実用的なシミュレーションへと発展させることができる。
【0072】
次に、本発明の実施の第3形態について説明する。図14〜図17は本発明の実施の第3形態に係り、図14は初期気泡粒子を示す説明図、図15はワーク外部の気泡粒子の消滅を示す説明図、図16はワーク内部の気泡粒子の抜けを示す説明図、図17はワーク内部に残された気泡粒子を示す説明図である。
【0073】
第3形態は、N個の気泡粒子を発生させる初期条件として、解析領域内でワークを取り囲む所定の空間領域を設定するものであり、この空間領域(ワーク内部を含む)内に初期設定した気泡粒子の上昇を計算し、最終的にワーク内部に残った気泡粒子からエアポケットを判定する。
【0074】
本形態においては、ワークを取り囲む空間領域として直方体を想定し、XYZの3軸方向におけるワークの最小及び最大の座標位置(Xmin,Xmax,Ymin,Ymax,Zmin,Zmax)を求め、この座標位置より構成される直方体を設定する。図14に示すように、ワークWを取り囲む直方体L内には、N個の気泡粒子Bを均一に配置する。この場合、気泡粒子の粒子径と直方体のサイズから、必然的に粒子数の最大値が決定される。
【0075】
本形態のシミュレーションプログラムは、前述の第2形態のシミュレーションプログラム(図11参照)のステップS23における計算条件として直方体を設定する処理が異なるのみであり、他の処理は、第2形態と同様である。
【0076】
例えば、図14に示すように、通気孔Hを有するワークWを取り囲む直方体L内にN個の気泡粒子を初期設定して計算を行うと、先ず、図15に示すように、ワークW外部の気泡粒子(図中の波線で示す気泡粒子Bout)が上昇し、解析領域Aから無くなる。
【0077】
その後、図16(a)に示すように、ワークWの通気孔H下にある気泡粒子B1がワーク外部へ抜けて上昇し、この気泡粒子B1の上昇により、図16(b)に示すように、気泡粒子B1周囲の気泡粒子B2,B3,…が通気孔Hから順次ワーク外部へ抜け出る。最終的に、図17に示すように、ワークWの内部に残った気泡粒子群Btにより、エアポケットが形成されることがわかる。
【0078】
第3形態では、ワーク内部に気泡粒子が堆積されるまでの移動軌跡の計算を省略し、ワーク内部に取り残される気泡粒子をより少ない演算量で把握することができ、効率的な計算で演算負荷を低減しながら、エアポケットの大きさを容易に把握することができ、より実践的なシミュレーションとすることができる。
【図面の簡単な説明】
【0079】
【図1】本発明の実施の第1形態に係わり、シミュレーション装置の基本構成図
【図2】同上、車体の塗装ラインの概略説明図
【図3】同上、気泡粒子の発生位置を示す説明図
【図4】同上、気泡粒子の堆積状態を示す説明図
【図5】同上、粒子径の異なる気泡粒子の堆積状態を示す説明図
【図6】同上、気泡粒子の堆積の偏りを示す説明図
【図7】同上、気泡粒子の乱れを考慮した外力の説明図
【図8】同上、気泡粒子同士の衝突を示す説明図
【図9】同上、エアポケットシミュレーションプログラムのフローチャート
【図10】本発明の実施の第2形態に係り、停滞粒子を示す説明図
【図11】同上、エアポケットシミュレーションプログラムのフローチャート
【図12】同上、停滞粒子からの抽出を示す説明図
【図13】同上、エアポケットの平均高さを示す説明図
【図14】本発明の実施の第3形態に係り、初期気泡粒子を示す説明図
【図15】同上、ワーク外部の気泡粒子の消滅を示す説明図
【図16】同上、ワーク内部の気泡粒子の抜けを示す説明図
【図17】同上、ワーク内部に残された気泡粒子を示す説明図
【図18】従来手法における気泡粒子発生の様子を示す説明図
【図19】従来手法におけるシミュレーション結果を示す説明図
【符号の説明】
【0080】
1 シミュレーション装置
10 演算装置
10a 解析領域設定部
10b 気泡粒子設定部
10c 粒子挙動計算部
10d ポスト処理部

【特許請求の範囲】
【請求項1】
浸漬処理を施すワークを形状データで表現した仮想ワークを含む解析領域内に擬似的に空気の泡を仮定した粒子を発生させ、上記ワークが浸漬される浸漬液を模した流体中の上記粒子の挙動を計算して空気溜りをシミュレーションする空気溜りのシミュレーション方法において、
上記粒子に任意の形状及び物性を設定し、上記流体中で上記粒子に作用する力の関係に基づいて、上記粒子同士の衝突を伴う移動軌跡を計算するステップと、
上記仮想ワーク或いは他の粒子との干渉により移動を停止した粒子を互いに合体させることなく堆積させ、堆積した粒子群をエアポケットと判定するステップと
を備えることを特徴とする空気溜まりのシミュレーション方法。
【請求項2】
上記粒子を剛体として表面の摩擦係数をゼロに設定すると共に上記粒子同士の反発係数をゼロとし、上記移動軌跡を計算することを特徴とする請求項1記載の空気溜りのシミュレーション方法。
【請求項3】
上記粒子を球体として、該球体の径をウェーバー数より算出される値以上とすることを特徴とする請求項1又は2記載の空気溜りのシミュレーション方法。
【請求項4】
異なる大きさの粒子が混在する状態で上記移動軌跡の計算を行い、上記移動を停止した粒子を堆積させることを特徴とする請求項1〜3の何れか一に記載の空気溜りのシミュレーション方法。
【請求項5】
上記粒子に作用する重力の方向を、上記ワークの釣下げ姿勢に基づいて設定することを特徴とする請求項1〜4の何れか一に記載の空気溜りのシミュレーション方法。
【請求項6】
上記移動軌跡の計算に際して、上記粒子の移動方向に垂直な方向の力を与えることを特徴とする請求項1〜5の何れか一に記載の空気溜りのシミュレーション方法。
【請求項7】
上記移動を停止して堆積する粒子を停滞粒子として属性を変更し、更に、該停滞粒子の中で上記模擬ワークに3点以上で接している粒子を最上停滞粒子として属性を変更することを特徴とする請求項1〜6の何れか一に記載の空気溜りのシミュレーション方法。
【請求項8】
上記停滞粒子に移動中の上記粒子が衝突する場合、上記粒子に作用する力の方向と垂直な方向の力により上記粒子を上記停滞粒子の下で横滑りさせることを特徴とする請求項7記載の空気溜りのシミュレーション方法。
【請求項9】
上記粒子の初期発生位置を上記仮想ワークを含む大きさの領域内に設定し、該領域の内部に上記粒子を均一に分布させて初期発生させることを特徴とする請求項1〜8の何れか一に記載の空気溜りのシミュレーション方法。
【請求項10】
上記仮想ワーク内に堆積する粒子群の中から上記粒子の代表点を下方から認識可能な粒子を抽出し、抽出した各粒子の代表点高さを各粒子の代表サイズで重み付け平均してエアポケットの平均高さを求め、該平均高さにおいて各粒子に作用する力の方向に垂直な平面をエアポケットの境界面とすることを特徴とする請求項1〜9の何れか一に記載の空気溜りのシミュレーション方法。
【請求項11】
上記エアポケットの平均高さを、上記ワークの揺れと上記浸漬液の流れとの少なくとも一方に基づく補正量で補正することを特徴とする請求項10記載の空気溜りのシミュレーション方法。
【請求項12】
浸漬処理を施すワークを形状データで表現した模擬ワークを含む解析領域内に擬似的に空気の泡を仮定した粒子を発生させ、上記ワークが浸漬される浸漬液を模した流体中の上記粒子の挙動を計算して空気溜りをシミュレーションするコンピュータが実行可能な空気溜りのシミュレーションプログラムにおいて、
上記粒子に任意の形状及び物性を設定し、上記流体中で上記粒子に作用する力の関係に基づいて、上記粒子同士の衝突を伴う移動軌跡を計算するステップと、
上記模擬ワーク或いは他の粒子との干渉により移動を停止した粒子を互いに合体させることなく堆積させ、堆積した粒子群をエアポケットと判定するステップと
を備えることを特徴とする空気溜まりのシミュレーションプログラム。
【請求項13】
上記粒子を剛体として表面の摩擦係数をゼロに設定すると共に上記粒子同士の反発係数をゼロとし、上記移動軌跡を計算することを特徴とする請求項12記載の空気溜りのシミュレーションプログラム。
【請求項14】
上記粒子を球体として、該球体の径をウェーバー数より算出される値以上とすることを特徴とする請求項12又は13記載の空気溜りのシミュレーションプログラム。
【請求項15】
異なる大きさの粒子が混在する状態で上記移動軌跡の計算を行い、上記移動を停止した粒子を堆積させることを特徴とする請求項12〜14の何れか一に記載の空気溜りのシミュレーションプログラム。
【請求項16】
上記粒子に作用する重力の方向を、上記ワークの釣下げ姿勢に基づいて設定することを特徴とする請求項12〜15の何れか一に記載の空気溜りのシミュレーションプログラム。
【請求項17】
上記移動軌跡の計算に際して、上記粒子の移動方向に垂直な方向の力を与えることを特徴とする請求項12〜16の何れか一に記載の空気溜りのシミュレーションプログラム。
【請求項18】
上記移動を停止して堆積する粒子を停滞粒子として属性を変更し、更に、該停滞粒子の中で上記模擬ワークに3点以上で接している粒子を最上停滞粒子として属性を変更することを特徴とする請求項12〜17の何れか一に記載の空気溜りのシミュレーションプログラム。
【請求項19】
上記停滞粒子に移動中の上記粒子が衝突する場合、上記粒子に作用する力の方向と垂直な方向の力により上記粒子を上記停滞粒子の下で横滑りさせることを特徴とする請求項18記載の空気溜りのシミュレーションプログラム。
【請求項20】
上記粒子の初期発生位置を上記模擬ワークを含む大きさの領域内に設定し、該領域の内部に上記粒子を均一に分布させて初期発生させることを特徴とする請求項12〜19の何れか一に記載の空気溜りのシミュレーションプログラム。
【請求項21】
上記模擬ワーク内に堆積する粒子群の中から上記粒子の代表点を下方から認識可能な粒子を抽出し、抽出した各粒子の代表点高さを各粒子の代表サイズで重み付け平均してエアポケットの平均高さを求め、該平均高さにおいて各粒子に作用する力の方向に垂直な平面をエアポケットの境界面とすることを特徴とする請求項12〜20の何れか一に記載の空気溜りのシミュレーションプログラム。
【請求項22】
上記エアポケットの平均高さを、上記ワークの揺れと上記浸漬液の流れとの少なくとも一方に基づく補正量で補正することを特徴とする請求項21記載の空気溜りのシミュレーションプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate


【公開番号】特開2008−171145(P2008−171145A)
【公開日】平成20年7月24日(2008.7.24)
【国際特許分類】
【出願番号】特願2007−2814(P2007−2814)
【出願日】平成19年1月10日(2007.1.10)
【出願人】(000005348)富士重工業株式会社 (3,010)
【Fターム(参考)】