空気溜りのシミュレーション方法及びシミュレーションプログラム
【課題】浸漬処理における空気溜まりの発生を最少化するワークの最適姿勢を、トライ&エラーを繰り返すことなく自動的に求める。
【解決手段】1回のシミュレーションにおける重力方向の設定毎に、エアポケットの発生個数等のエアポケットの発生状況を評価する指標データを算出し、計算刻み角度(Δφ,Δθ)に対応して区分した評価用メッシュに割り付けて可視化する。そして、ノード値が「0」の領域(エアポケットが発生しない領域)がある場合、ノード値「0」の領域を周囲から囲い込んで絞り込み、最適なワークの姿勢(最適なワークの釣下げ角度)を求め、その位置を識別表示する。
【解決手段】1回のシミュレーションにおける重力方向の設定毎に、エアポケットの発生個数等のエアポケットの発生状況を評価する指標データを算出し、計算刻み角度(Δφ,Δθ)に対応して区分した評価用メッシュに割り付けて可視化する。そして、ノード値が「0」の領域(エアポケットが発生しない領域)がある場合、ノード値「0」の領域を周囲から囲い込んで絞り込み、最適なワークの姿勢(最適なワークの釣下げ角度)を求め、その位置を識別表示する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、浸漬処理を施す際にワークに生じる空気溜りをシミュレーションする空気溜りのシミュレーション方法及びシミュレーションプログラムに関する。
【背景技術】
【0002】
一般に、電着塗装やメッキ等におけるワークの浸漬工程においては、均一な塗膜やメッキ膜を形成させるために、ワークに空気溜り(エアポケット)を生じさせないことが重要である。このエアポケットは、複雑な形状のワークを浸漬した際に、その隙間にできる凹部、例えば、自動車等の車体であれば、フード内面、ルーフ内面、フロア下面等の凹部等の空間に空気が残留する現象であり、このエアポケットが発生すると、塗装不良やメッキ不良が発生してしまう。
【0003】
そこで、ワークを浸漬処理する状態をコンピュータを用いてシミュレーションし、エアポケットの発生状況を予測する手法が提案されている。エアポケットのコンピュータシミュレーションとしては、ワークの表面形状を、メッシュやノード等の複数の要素のデータでモデル化し、各要素の属性が気体であるか液体であるかを、要素の特徴点(例えば、重心点、頂点、内心点、外心点、垂心点)同士の重力方向の位置を比較して判定し、設定した重力方向に対するエアポケットの発生状況を予測評価する幾何学的な手法が知られている(例えば、例えば、本出願人による特願2006−19413参照)。
【0004】
また、特許文献1には、ワークの各表面をその頂点座標データに基づいて任意数の三角ポリゴン(三角形の要素)に分割し、各々の三角ポリゴンについて空気と浸漬槽内の液体との状態変化を時々刻々と計算することにより、ワークを入槽角の姿勢にて浸漬槽に模擬浸漬した際にエアポケットとなりうる表面部位であるか否かの判定を行う手法が開示されている。
【特許文献1】特開2000−51750号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
しかしながら、従来のシミュレーションでは、エアポケットが発生するか否かの判定は可能であるが、エアポケットの発生を最少化するワークの釣下げ姿勢等の浸漬姿勢を検討するには、シミュレーションの都度、ワークに対する重力方向を設定して計算する必要がある。つまり、従来のシミュレーションでは、先ず、重力方向を設定してから、気体と液体との判別計算を実施するため、ワークの釣下げ姿勢(重力の方向)を検討する場合には、重力方向を1回1回入力しながらトライ&エラーを繰り返さなければならない。この結果、例えば、以下の(1)〜(3)のような問題が生じる。
【0006】
(1)仮に、エアポケット発生無しの釣下げ姿勢が複数見出された場合でも、どの姿勢が最良か(ライン上の取付け誤差や製造バラツキ等の影響を加味して安全側か等)と言った点まで踏み込んで判断することは困難である。
【0007】
(2)トライ&エラーによるシミュレーションを繰り返しても、エアポケット発生無しの釣下げ姿勢が見出されなかった場合、どの姿勢で形状修正した方が良いか(どの姿勢が最も対策し易いか)が不明である。
【0008】
(3)検討した釣下げ姿勢のごく近傍に、エアポケット無しの釣下げ姿勢域がある場合であっても、その可能性を知ることができない。
【0009】
このように、従来のシミュレーションでは、エアポケットの発生を最少化するワークの最適な浸漬姿勢を見い出すためには、非常に多くのトライ&エラーを繰り返す必要があり、工数と経費の増加を招くばかりでなく、トライ&エラーで得られた結果が必ずしも最適な姿勢であるとは限らない。
【0010】
本発明は上記事情に鑑みてなされたもので、浸漬処理における空気溜まりの発生を最少化するワークの最適姿勢を、トライ&エラーを繰り返すことなく自動的に求めることのできる空気溜りのシミュレーション方法及びシミュレーションプログラムを提供することを目的としている。
【課題を解決するための手段】
【0011】
上記目的を達成するため、本発明による空気溜りのシミュレーション方法は、浸漬処理を施すワークの形状を複数の要素のデータでモデル化し、重力方向に対する上記ワークの姿勢に基づいて、各要素の属性が気体であるか液体であるかを判別する判別計算を実行することにより空気溜りをシミュレーションする空気溜りのシミュレーション方法において、上記ワークの姿勢を可変させる範囲を上記ワークに対する重力方向の設定範囲として指定し、指定した設定範囲内で重力方向を所定の刻み角度ずつ更新して上記判別計算を繰り返し実行させる重力方向更新ステップと、上記空気溜りの発生状況を評価する指標データを上記刻み角度毎に算出し、該指標データに基づいて上記ワークの最適姿勢を算出する最適姿勢算出ステップとを備えることを特徴とする。
【0012】
本発明による空気溜りのシミュレーションプログラムは、浸漬処理を施すワークの形状を複数の要素のデータでモデル化し、重力方向に対する上記ワークの姿勢に基づいて、各要素の属性が気体であるか液体であるかを判別する判別計算を実行することにより空気溜りをシミュレーションするコンピュータが実行可能な空気溜りのシミュレーションプログラムにおいて、上記ワークの姿勢を可変させる範囲を上記ワークに対する重力方向の設定範囲として指定し、指定した設定範囲内で重力方向を所定の刻み角度ずつ更新して上記判別計算を繰り返し実行させる重力方向更新ステップと、上記空気溜りの発生状況を評価する指標データを上記刻み角度毎に算出し、該指標データに基づいて上記ワークの最適姿勢を算出する最適姿勢算出ステップとを備えることを特徴とする。
【発明の効果】
【0013】
本発明によれば、浸漬処理における空気溜まりの発生を最少化するワークの最適姿勢を、トライ&エラーを繰り返すことなく自動的に求めることができ、シミュレーション効率を向上して工数及び経費を抑制することができる。
【発明を実施するための最良の形態】
【0014】
以下、図面を参照して本発明の実施の形態を説明する。図1〜図10は本発明の実施の第1形態に係り、図1はシミュレーション装置の基本構成図、図2は車体の塗装ラインの概略説明図、図3はフロアパネルの概略斜視図、図4はフロアパネルを複数の要素に分割した解析モデルを示す説明図、図5は重力方向と計算刻み角度とを示す説明図、図6はポスト処理用メッシュの例を示す説明図、図7はポスト処理の例を示す説明図、図8は最適領域が歪んでいる場合を示す説明図、図9は同じ面積の最適領域の分布を示す説明図、図10はエアポケットシミュレーションプログラムのフローチャートである。
【0015】
図1に示すように、本実施の形態におけるシミュレーション装置1は、自動車のボディシェル等のワークに電着塗装やメッキ処理等の浸漬処理を施す際に、ワークに生じる空気溜り(エアポケット)をシミュレーションするものである。このエアポケットのシミュレーション装置1は、マイクロコンピュータやパーソナルコンピュータ等の単一のコンピュータ、或いはネットワークを介して相互に接続される複数のコンピュータを用いて構成される。
【0016】
以下では、便宜上、シミュレーション装置1を単一のコンピュータで構成する例について説明する。このコンピュータとしてのシミュレーション装置1は、演算装置10、キーボードやマウス等の入力装置11、CRTや液晶ディスプレイ等の表示装置12、磁気ディスクや光ディスク等の外部記憶装置13等を備えている。
【0017】
演算装置10は、CPU、ROM及びRAM等の内部メモリ、入出力インターフェース等を備えており、内部のROM、外部記憶装置13、外部の記憶媒体に記憶させたシミュレーションプログラム、或いは、図示しないネットワークや通信装置を介して外部からロードしたシミュレーションプログラムをCPUで実行し、入力装置11を介して指示された解析対象のワーク(対象物)を擬似的に浸漬槽内に浸漬させ、その浸漬によって対象物に発生するエアポケットをシミュレーションする。
【0018】
例えば、本発明によるシミュレーションの適用例として、車体ボディの電着塗装時における電着液及び空気の分布を数値解析し、被塗装物におけるエアポケットの発生を予測するシミュレーションが挙げられる。ここで、車体ボディの塗装ラインについて、図2を用いて簡単に説明する。
【0019】
図2に示すように、溶接等により複数の車体パネルを互いに接合して構成される自動車の車体ボディ20は、搬送装置21のハンガに搭載された状態で塗装ラインにて略水平方向へ搬送される。塗装ラインでは、電着塗装の前処理として、車体パネルに脱脂、水洗、表面調整、皮膜化成、水洗等の処理が施される。
【0020】
これらの処理の後、車体ボディ20は電着槽22に向かって降下し、電着液23に浸漬された状態で略水平に移動する。この状態で、車体ボディ20と電着槽22内の電極(図示せず)に電圧を加えることにより、車体パネルに塗料が析出するようになっている。この後、搬送装置21により車体ボディ20は電着槽22から引き上げられ、水洗により車体パネルに電着せずに付着している電着液23が除去される。
【0021】
演算装置10において実行されるシミュレーションプログラムの機能は、モデル構築部10a、重力方向更新部10b、エアポケット判定部10c、ポスト処理部10dによって表現することができる。演算装置10は、対象物(ワーク)の形状を複数の要素のデータでモデル化した解析モデルによる幾何学的手法を用いてエアポケットの発生をシミュレーションし、シミュレーション結果を表示装置12に出力して表示させる。尚、表示装置12には、シミュレーション結果のみならずシミュレーション過程を表示させるようにしても良い。
【0022】
本発明によるエアポケットのシミュレーションは、対象物(ワーク)の表面形状を複数の要素に分割して構築したサーフェスモデルを用いて実行されるが、従来のようにワークの或る1つの姿勢についての1回のシミュレーションで完結するものではなく、ワークの浸漬姿勢を可変して自動的に複数回繰り返されるシミュレーションである。このワークの浸漬姿勢を可変しての複数回のシミュレーションを自動実行することにより、エアポケットの発生を最少化する最適なワークの浸漬姿勢を求めることができる。以下では、塗料槽等に釣下げられて浸漬されるワークの最適な釣下げ姿勢を求めるエアポケットシミュレーションについて説明する。
【0023】
モデル構築部10aは、対象物の形状データを複数の要素に分割して解析モデルを構築する。解析モデルを構成する手法としては、対象物の表面形状を複数の所定の形状に分割して表現するメッシュを用いる手法や、対象物の表面に複数の節点(ノード)を配置する手法等を用いることができる。
【0024】
例えば、車体ボディ20を構成する図3に示すようなフロアパネル26を例に挙げて説明すると、図3に示すフロアパネル26を、図4に示すように、フロアパネル26の表面を複数のメッシュ29に分割して数値計算のための解析モデルを構築する。以下では、対象物の表面形状を三角形のメッシュで表現したサーフェスモデルを用い、このサーフェスモデルのメッシュデータを三次元空間に配置して解析モデルを構築する例について説明するが、解析モデルの要素としてノードを用いる場合においても処理は同様である。
【0025】
尚、解析モデルの要素としてのメッシュの形状は、三角形の形状に限られず、矩形や多角形の形状であっても良い。個々のメッシュには、例えば、自己を識別するためのメッシュ番号、メッシュの節点(ノード)の所定の基準点に対する座標値(三次元空間のXYZ座標軸における座標値)、メッシュの属性等のデータが付与される。
【0026】
また、外部記憶装置13には、エアポケットのシミュレーション処理に必要な各種のデータが格納されている。例えば、外部記憶装置13は、対象物毎に個別の識別番号(レコード番号)が付された属性レコード群で構成されるデータベースを有し、個々の属性レコードに、各メッシュのメッシュ番号、ノード点座標値、属性データ等が対応付けて記述される。
【0027】
重力方向更新部10bは、ワークに固定されたXYZ直交座標系のZ軸を中心とする設定範囲を指定し、この指定範囲内で、シミュレーションを繰り返し実行する際の計算刻み角度に応じて重力方向を更新する。すなわち、図5に示すように、ワークに固定したXYZ座標系から見た重力の方向を、Z軸となす角度φと、Z軸を中心としたXY平面上の偏位角(X軸からの角度)θとにより表現し、これらの角度を計算刻み角度(Δφ,Δθ)ずつ変えることにより、重力方向を変えて(つまり、ワークの姿勢を変えて)シミュレーションを繰り返し実行することができる。
【0028】
尚、計算刻み角度(Δφ,Δθ)は、一定値でも良く、また、一回のシミュレーション毎に変更しても良い。
【0029】
エアポケット判定部10cは、解析モデルを形成する個々のメッシュに対して、エアポケットの箇所に相当する気体の属性と電着液等の浸漬個所に相当する液体の属性との何れかを設定する。このメッシュの属性は、当初、全メッシュが気体の属性に設定され(浸漬前)、その後、初期メッシュを含む隣接メッシュとのZ方向(重力と反対方向)の高さの比較により、メッシュの属性が液体となるか気体のままであるか(つまり、エアポケットとなるか否か)を判定し、液体と判定されたとき、そのメッシュの属性を液体に変更し、属性データを書き換える。
【0030】
このエアポケットの判定は、本形態においては、浸漬液の比重が空気の比重よりも大きいことを前提としている。すなわち、或るメッシュの属性を判定する際に、判定対象のメッシュと比較対象のメッシュとを、Z方向(重力と反対方向)の高さで比較する。そして、比較対象メッシュが判定対象メッシュよりも高く液体の属性を有していれば、相対的に低い判定対象メッシュにも浸漬液が空気を押しのけて浸入し、浸漬液により満たされるものと判断して、判定対象メッシュの属性データを液体とする。これに対して、相対的に高い比較対象メッシュの属性が気体である場合には、判定対象メッシュの属性データは変更せず、比較対象を変更して判定を繰り返す。そして、この判定を繰り返して全メッシュの属性が液体と気体とに分離・決定され、属性が気体と決定されたメッシュの存在によって示されるエアポケットの気液境界線が導き出される。この気液境界線は、複数本導き出される場合もある。
【0031】
ポスト処理部10dは、シミュレーション結果を容易に把握可能とするための可視化処理やシミュレーション結果のデータ出力を行う。シミュレーション結果の可視化処理においては、例えば、液体の属性に決定されたメッシュ、気体の属性に決定されたメッシュ、これらの境界線(気液境界線)を色相や濃淡等によって区分し、エアポケットの発生部位や大きさを明示的に表現する。
【0032】
また、ポスト処理部10dでは、エアポケットの発生状況を評価する指標データとして、重力方向の各設定毎に、エアポケットの発生個数、エアポケットの表面メッシュ数、エアポケットの体積等を算出し、重力方向の設定範囲内でのシミュレーション終了後、これらを可視化する処理を行う。尚、エアポケットの体積に代わる指標データとして、[気液境界面の面積]×[エアポケット高さ]を算出するようにしても良い。
【0033】
この指標データの可視化に際しては、重力方向の計算刻み角度(Δφ,Δθ)に対応して設けたポスト処理用メッシュを用いる。このポスト処理用メッシュは、例えば、図6(a)に示すように、XY平面上に投影した重力方向の指定範囲を、計算刻み角度(Δφ,Δθ)に対応して区分した評価用メッシュと、図6(b)に示すように、原点を中心として計算刻み角度(Δφ,Δθ)を展開した評価用メッシュとを用いる。
【0034】
ポスト処理用メッシュの各ノード点(格子点)には、エアポケットの発生個数、エアポケットの表面メッシュ数、エアポケットの体積等のエアポケット発生状況を評価するための指標値が割り付けられる。例えば、エアポケットの発生個数を指標値として用い、エアポケット発生無しの場合には、該当するノード点にノード値「0」が割り付けられ、エアポケットが1個発生する場合には、該当するノード点にノード値「1」が割り付けられ、エアポケットが2個発生する場合には、該当するノード点にノード値「2」が割り付けられる。そして、図7(a),(b)に示すように、ポスト処理用メッシュのノード値が同じ領域毎に区分され、エアポケットの発生状況が可視化される。
【0035】
また、このエアポケットの発生状況を示す可視化処理では、ノード値が「0」の領域(エアポケットが発生しない領域)がワークの最適姿勢が存在する最適領域となるため、この最適領域内で最適なワークの姿勢(最適なワークの釣下げ角度)を求め、その位置を識別表示する。
【0036】
具体的には、先ず、ノード値「0」の領域とノード値「1」の領域との境界線に接するノード値「0」の部分領域内のノード値を、「0」から別の数値nに変更する。別の数値nは、例えば、0<n<1の範囲で設定し、ここでは、n=0.5に変更するものとすると、次に、ノード値「0.5」とノード値「0」との境界線に接するノード値「0」の部分領域内のノード値を、「0」から「0.5」に変更する。
【0037】
以上の処理を逐次繰り返し、最後に残ったノード値「0」の部分領域がなくなる1ステップ前に、その部分領域での刻み角度(Δφ,Δθ)を平均化する。そして、平均化した刻み角度に対応する位置を、図7に示すように、例えば赤の「×」の印で領域内に重ね合わせ表示する。この「×」点表示の位置(最適点)が、エアポケットが発生しない最適領域内でのワークの釣下げ姿勢の最適角度を表している。
【0038】
この最適点を求める際に、ノード値「0」の最適領域を、部分領域に分けて周囲から囲い込み、絞り込んでいく理由は、ノード値「0」の最適領域の形状が歪んでいる場合や、ノード値「0」の最適領域が複数分散して存在する場合に対処するためである。すなわち、エアポケットが発生しない最適領域内で、エアポケットが発生する領域との境界からできるだけ離れた略中央に最適点を設定することにより、実際のライン上の取付け誤差や製造バラツキ等に対して妥当且つ安全性を見た釣下げ姿勢を設定することができる。
【0039】
例えば、図8に示すように、ノード値「0」の最適領域の形状が歪んでいる場合、この最適領域全体での刻み角度を単純に平均化すると、その平均値がノード値「0」の領域外、すなわちエアポケットが発生する領域となる可能性がある。このような場合においても、ノード値「0」の領域を周囲から囲い込んでゆくことにより、確実にノード値「0」の領域内にあって、略中央の位置に最適点を設定することができる。
【0040】
また、図9に示すように、ノード値「0」の略同じ面積の最適領域が複数ある場合には、円形に近い領域の方から最適角度を設定することが望ましく、また、面積が異なるノード値「0」の領域が複数ある場合には、できるだけ面積の大きいほうの領域から最適角度を設定することが望ましい。このような場合においても、ノード値「0」の領域を周囲から囲い込んでゆくことにより、面積が大きく円形に近い領域内に最適角度を設定することが可能となり、エアポケットが発生しない領域とエアポケットが発生する領域との境界からできるだけ離れた位置に最適点を設定することができる。
【0041】
以下、演算装置10のCPUで実行されるエアポケットのシミュレーション処理について、図10のフローチャートを用いて説明する。
【0042】
図10のシミュレーションプログラムでは、先ず、ステップS1において、対象物の表面形状を複数の要素のデータでモデル化し、数値計算のための解析モデルを構築する。この解析モデルは、例えば、ワークの表面形状を複数の三角形のメッシュで分割したモデルで構築される。
【0043】
次に、ステップS2へ進んで解析モデルにおける重力方向の設定範囲を指定し、ステップS3で重力方向を選択する。この重力方向は、1回のシミュレーション毎に、計算刻み角度(Δφ,Δθ)ずつ可変される(後述のステップS7)。
【0044】
そして、ステップS4で、対象物が電着液等に浸漬される前の周辺が空気で満たされた状態のシミュレーションとして、一旦、解析モデルの全てのメッシュを気体の属性に設定する。さらに、対象物を浸漬した初期状態のシミュレーションとして、メッシュを液体の属性と気体の属性とに分離するための初期条件を設定する。
【0045】
本実施の形態においては、初期状態でのメッシュの属性を液体に決定する条件として、ワークのフリーエッジに接するメッシュを初期メッシュに設定する。そして、この初期メッシュの属性を気体から液体に変更する。ここで、フリーエッジとは、ワークの縁の部分、即ちワークの端部及びワークに形成された穴の縁の部分を意味する。初期メッシュとは、ワークのフリーエッジに接する要素であって、フリーエッジに接するメッシュとは、そのメッシュを構成する辺がフリーエッジに接していることを言う。
【0046】
尚、初期に属性を液体として決定する条件として、ワークに対してその周囲よりかつ水平より上側の視線方向から見て認識可能なメッシュを初期メッシュとしても良い。この場合においても、初期メッシュ決定後の処理は同じである。
【0047】
次に、ステップS4からステップS5へ進み、エアポケット判定計算処理を実施して、エアポケットの発生をシミュレーションする。このエアポケット判定計算処理は、各メッシュの重力と反対方向の高さの比較により、それぞれの属性を決定してエアポケットの発生を判定する処理であり、従来の手法を用いることができる。各メッシュの高さの比較は、例えば、それぞれのメッシュの重心点、内心点、外心点、垂心点等のZ方向(重力と反対方向)における位置や、それぞれのメッシュが有する各頂点のうちの最も高い頂点(Z方向の位置が最も高い頂点)等の特徴点を比較することで行う。
【0048】
例えば、重心点の位置を比較する場合には、判定対象とするメッシュと隣接メッシュとのそれぞれの重心点のZ方向における高さを比較し、隣接メッシュの重心点が判定対象メッシュの重心点よりも高いまたは同じ場合、隣接メッシュの属性が液体であれば、判定対象メッシュの属性を液体に決定する。一方、隣接メッシュの重心点が判定対象メッシュの重心点よりも低い場合には、判定判定メッシュの属性は変更せず、比較対象を変更して判定を繰り返す。この判定を初期メッシュを含む全メッシュについて実行し、液体の属性を有するメッシュと気体の属性を有するメッシュとの境界を気液境界線として検出し、必要に応じて気液境界線を修正する処理を行う。
【0049】
尚、気液境界線を修正する処理は、例えば、1つのエアポケットに所属する複数の境界線に同じ属性を与えて統一化し、各境界線の高さが異なる場合には、1つの水平線に近づけるように修正する。
【0050】
その後、ステップS6へ進み、1回のシミュレーションで得られた結果を処理し、エアポケットの発生個数、エアポケットの表面メッシュ数、エアポケットの体積等の指標を算出し、必要に応じてデータを保存する。
【0051】
次に、ステップS7で、ワークの釣下げ姿勢を変えてシミュレーションを行うため、計算刻み角度(Δφ,Δθ)を変えて重力方向を更新する。そして、ステップS8で、重力方向が予め指定した設定範囲内か否かを調べ、設定範囲内であるときには、ステップS4へ戻り、重力方向を変更してのシミュレーションを再実行する。以上のステップS2,S3、及びステップS7,S8が本発明の重力更新ステップに相当する。
【0052】
一方、重力方向が設定範囲を越えた場合には、重力方向の更新を終了してステップS8からステップS9へ進み、ポスト処理を行って本シミュレーションプログラムを終了する。このポスト処理では、前述したように、エアポケットの発生個数、エアポケットの表面メッシュ数、エアポケットの体積等の指標を用いて、図7に示すように、エアポケットの発生状況とワークの最適姿勢とを表示装置12に表示させ、また、必要に応じてシミュレーション結果のデータをファイルに出力する。このステップS9が本発明の最適姿勢算出ステップに相当する。
【0053】
図7に示すようなシミュレーション結果により、エアポケットが発生しないワークの最適な釣下げ姿勢を迅速に設定することができ、仮にエアポケット発生無しの領域がなかったとしても、対策し易い釣下げ姿勢を容易に把握することが可能となる。
【0054】
以上、本実施の第1形態によれば、シミュレーション毎にワークに対する重力方向を1回1回入力しながらトライ&エラーを繰り返す従来の手法に比較して、ワークの最適姿勢を自動的に求めることができ、仮にエアポケット発生無しの釣下げ姿勢が複数見出された場合でも、ライン上の取付け誤差や製造バラツキ等の影響に対してどの姿勢が最良かを容易に判断することができる。これにより、シミュレーション効率を向上して工数及び経費を抑制することができる。
【0055】
次に、本発明の実施の第2形態について説明する。図11は本発明の実施の第2形態に係り、エアポケットシミュレーションプログラムのフローチャートである。
【0056】
第2形態は、重力方向の設定範囲と計算刻み角度とから決定される回数だけシミュレーションを繰り返す第1形態に対し、重力方向を最適化して自動的に最適な釣下げ姿勢を求めるものである。
【0057】
第2形態におけるシミュレーションプログラムは、図11のフローチャートに示される。このシミュレーションプログラムは、ステップS11〜S16までは、第1形態のシミュレーションプログラム(図10参照)におけるステップS1〜S6と同様であり、解析モデルを構築して重力方向を選択し、初期条件を設定してエアポケット判定計算を行い、計算結果を処理する。
【0058】
次に、ステップS16からステップS17へ進むと、重力方向を最適化するための最適化計算を行う。この最適化計算は、例えば、遺伝的アルゴリズム(Genetic Algorithm;GA)等の最適化手法を用いて行われ、指定した重力方向の設定範囲を制約条件として、エアポケットの発生状況を評価する指標データに基づいて作成した目的関数を用いて最適化計算を行う。
【0059】
尚、この場合の最適化は、単にエアポケットが無くなるワークの釣下げ姿勢を求めるだけでも良いが、本形態においては、エアポケットの発生が無い状態での複数の釣下げ姿勢の中で最も最適な姿勢を求めるため、エアポケットの発生が無い状態では値が「0」となる指標データに加えて他の変数が必要となる。
【0060】
本形態においては、指標データに対して判別計算の処理時間(CPU時間)或いはシミュレーションの繰り返し回数等を併用し、目的関数を作成する際の設計変数とする。これは、エアポケットが発生しないワークの複数の姿勢角度において、判別計算に要する処理時間或いは回数が最も短い場合が最もエアが抜け易い姿勢であり、確実且つ安定的にエアポケットの無い状態を実現できると考えられるからである。
【0061】
具体的には、以下に示すように、エアポケットの発生個数nと、エアポケット判別計算の処理時間(CPU時間)とを設計変数とする目的関数fを作成し、この目的関数fが制約条件の範囲(重力方向の設定範囲)内で最小となるときの刻み角度(Δφ,Δθ)を、ワークの釣下げ姿勢の最適角度とする。
f(n,Ctime)=(n+ζ)・Ctime
但し、ζ:定数(0<ζ≦1)
【0062】
すなわち、ステップS18で、重力方向が最適か(目的関数が最小か)否かを調べ、重力方向が最適でない(目的関数が最小でない)場合には、ステップS19で重力方向を更新してステップS14へ戻り、更新した重力方向すなわちワークの釣下げ姿勢を変えたシミュレーションを実行する。
【0063】
一方、ステップS18で、重力方向が最適となったとき(目的関数が最小となったとき)には、全シミュレーションを終了してステップS18からステップS19へ進み、ポスト処理を実行する。このポスト処理では、エアポケットが発生している場合は、エアポケットの発生個数、エアポケットの表面メッシュ数、エアポケットの体積等を表示し、また、必要に応じてエアポケットの発生状況を可視化処理する。
【0064】
第2形態においては、以上のステップS12,S13,S19が本発明の重力方向更新ステップに相当し、ステップS17,S18,S20が本発明の最適姿勢算出ステップに相当する。
【0065】
第2形態においても、第1形態と同様、トライ&エラーを繰り返すことなくワークの最適姿勢を自動的に求めることができるが、更に、第2形態では、規定回数のシミュレーション後のポスト処理を待つことなく、最適な釣下げ姿勢を直接的に求めることができ、よりシミュレーション効率を向上することができる。
【図面の簡単な説明】
【0066】
【図1】本発明の実施の第1形態に係り、シミュレーション装置の基本構成図
【図2】車体の塗装ラインの概略説明図
【図3】フロアパネルの概略斜視図
【図4】フロアパネルを複数の要素に分割した解析モデルを示す説明図
【図5】同上、重力方向と計算刻み角度とを示す説明図
【図6】同上、ポスト処理用メッシュの例を示す説明図
【図7】同上、ポスト処理の例を示す説明図
【図8】同上、最適領域が歪んでいる場合を示す説明図
【図9】同上、同じ面積の最適領域の分布を示す説明図
【図10】同上、エアポケットシミュレーションプログラムのフローチャート
【図11】本発明の実施の第2形態に係り、エアポケットシミュレーションプログラムのフローチャート
【符号の説明】
【0067】
1 シミュレーション装置
10 演算装置
10a モデル構築部
10b 重力方向更新部
10c エアポケット判定部
10d ポスト処理部
【技術分野】
【0001】
本発明は、浸漬処理を施す際にワークに生じる空気溜りをシミュレーションする空気溜りのシミュレーション方法及びシミュレーションプログラムに関する。
【背景技術】
【0002】
一般に、電着塗装やメッキ等におけるワークの浸漬工程においては、均一な塗膜やメッキ膜を形成させるために、ワークに空気溜り(エアポケット)を生じさせないことが重要である。このエアポケットは、複雑な形状のワークを浸漬した際に、その隙間にできる凹部、例えば、自動車等の車体であれば、フード内面、ルーフ内面、フロア下面等の凹部等の空間に空気が残留する現象であり、このエアポケットが発生すると、塗装不良やメッキ不良が発生してしまう。
【0003】
そこで、ワークを浸漬処理する状態をコンピュータを用いてシミュレーションし、エアポケットの発生状況を予測する手法が提案されている。エアポケットのコンピュータシミュレーションとしては、ワークの表面形状を、メッシュやノード等の複数の要素のデータでモデル化し、各要素の属性が気体であるか液体であるかを、要素の特徴点(例えば、重心点、頂点、内心点、外心点、垂心点)同士の重力方向の位置を比較して判定し、設定した重力方向に対するエアポケットの発生状況を予測評価する幾何学的な手法が知られている(例えば、例えば、本出願人による特願2006−19413参照)。
【0004】
また、特許文献1には、ワークの各表面をその頂点座標データに基づいて任意数の三角ポリゴン(三角形の要素)に分割し、各々の三角ポリゴンについて空気と浸漬槽内の液体との状態変化を時々刻々と計算することにより、ワークを入槽角の姿勢にて浸漬槽に模擬浸漬した際にエアポケットとなりうる表面部位であるか否かの判定を行う手法が開示されている。
【特許文献1】特開2000−51750号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
しかしながら、従来のシミュレーションでは、エアポケットが発生するか否かの判定は可能であるが、エアポケットの発生を最少化するワークの釣下げ姿勢等の浸漬姿勢を検討するには、シミュレーションの都度、ワークに対する重力方向を設定して計算する必要がある。つまり、従来のシミュレーションでは、先ず、重力方向を設定してから、気体と液体との判別計算を実施するため、ワークの釣下げ姿勢(重力の方向)を検討する場合には、重力方向を1回1回入力しながらトライ&エラーを繰り返さなければならない。この結果、例えば、以下の(1)〜(3)のような問題が生じる。
【0006】
(1)仮に、エアポケット発生無しの釣下げ姿勢が複数見出された場合でも、どの姿勢が最良か(ライン上の取付け誤差や製造バラツキ等の影響を加味して安全側か等)と言った点まで踏み込んで判断することは困難である。
【0007】
(2)トライ&エラーによるシミュレーションを繰り返しても、エアポケット発生無しの釣下げ姿勢が見出されなかった場合、どの姿勢で形状修正した方が良いか(どの姿勢が最も対策し易いか)が不明である。
【0008】
(3)検討した釣下げ姿勢のごく近傍に、エアポケット無しの釣下げ姿勢域がある場合であっても、その可能性を知ることができない。
【0009】
このように、従来のシミュレーションでは、エアポケットの発生を最少化するワークの最適な浸漬姿勢を見い出すためには、非常に多くのトライ&エラーを繰り返す必要があり、工数と経費の増加を招くばかりでなく、トライ&エラーで得られた結果が必ずしも最適な姿勢であるとは限らない。
【0010】
本発明は上記事情に鑑みてなされたもので、浸漬処理における空気溜まりの発生を最少化するワークの最適姿勢を、トライ&エラーを繰り返すことなく自動的に求めることのできる空気溜りのシミュレーション方法及びシミュレーションプログラムを提供することを目的としている。
【課題を解決するための手段】
【0011】
上記目的を達成するため、本発明による空気溜りのシミュレーション方法は、浸漬処理を施すワークの形状を複数の要素のデータでモデル化し、重力方向に対する上記ワークの姿勢に基づいて、各要素の属性が気体であるか液体であるかを判別する判別計算を実行することにより空気溜りをシミュレーションする空気溜りのシミュレーション方法において、上記ワークの姿勢を可変させる範囲を上記ワークに対する重力方向の設定範囲として指定し、指定した設定範囲内で重力方向を所定の刻み角度ずつ更新して上記判別計算を繰り返し実行させる重力方向更新ステップと、上記空気溜りの発生状況を評価する指標データを上記刻み角度毎に算出し、該指標データに基づいて上記ワークの最適姿勢を算出する最適姿勢算出ステップとを備えることを特徴とする。
【0012】
本発明による空気溜りのシミュレーションプログラムは、浸漬処理を施すワークの形状を複数の要素のデータでモデル化し、重力方向に対する上記ワークの姿勢に基づいて、各要素の属性が気体であるか液体であるかを判別する判別計算を実行することにより空気溜りをシミュレーションするコンピュータが実行可能な空気溜りのシミュレーションプログラムにおいて、上記ワークの姿勢を可変させる範囲を上記ワークに対する重力方向の設定範囲として指定し、指定した設定範囲内で重力方向を所定の刻み角度ずつ更新して上記判別計算を繰り返し実行させる重力方向更新ステップと、上記空気溜りの発生状況を評価する指標データを上記刻み角度毎に算出し、該指標データに基づいて上記ワークの最適姿勢を算出する最適姿勢算出ステップとを備えることを特徴とする。
【発明の効果】
【0013】
本発明によれば、浸漬処理における空気溜まりの発生を最少化するワークの最適姿勢を、トライ&エラーを繰り返すことなく自動的に求めることができ、シミュレーション効率を向上して工数及び経費を抑制することができる。
【発明を実施するための最良の形態】
【0014】
以下、図面を参照して本発明の実施の形態を説明する。図1〜図10は本発明の実施の第1形態に係り、図1はシミュレーション装置の基本構成図、図2は車体の塗装ラインの概略説明図、図3はフロアパネルの概略斜視図、図4はフロアパネルを複数の要素に分割した解析モデルを示す説明図、図5は重力方向と計算刻み角度とを示す説明図、図6はポスト処理用メッシュの例を示す説明図、図7はポスト処理の例を示す説明図、図8は最適領域が歪んでいる場合を示す説明図、図9は同じ面積の最適領域の分布を示す説明図、図10はエアポケットシミュレーションプログラムのフローチャートである。
【0015】
図1に示すように、本実施の形態におけるシミュレーション装置1は、自動車のボディシェル等のワークに電着塗装やメッキ処理等の浸漬処理を施す際に、ワークに生じる空気溜り(エアポケット)をシミュレーションするものである。このエアポケットのシミュレーション装置1は、マイクロコンピュータやパーソナルコンピュータ等の単一のコンピュータ、或いはネットワークを介して相互に接続される複数のコンピュータを用いて構成される。
【0016】
以下では、便宜上、シミュレーション装置1を単一のコンピュータで構成する例について説明する。このコンピュータとしてのシミュレーション装置1は、演算装置10、キーボードやマウス等の入力装置11、CRTや液晶ディスプレイ等の表示装置12、磁気ディスクや光ディスク等の外部記憶装置13等を備えている。
【0017】
演算装置10は、CPU、ROM及びRAM等の内部メモリ、入出力インターフェース等を備えており、内部のROM、外部記憶装置13、外部の記憶媒体に記憶させたシミュレーションプログラム、或いは、図示しないネットワークや通信装置を介して外部からロードしたシミュレーションプログラムをCPUで実行し、入力装置11を介して指示された解析対象のワーク(対象物)を擬似的に浸漬槽内に浸漬させ、その浸漬によって対象物に発生するエアポケットをシミュレーションする。
【0018】
例えば、本発明によるシミュレーションの適用例として、車体ボディの電着塗装時における電着液及び空気の分布を数値解析し、被塗装物におけるエアポケットの発生を予測するシミュレーションが挙げられる。ここで、車体ボディの塗装ラインについて、図2を用いて簡単に説明する。
【0019】
図2に示すように、溶接等により複数の車体パネルを互いに接合して構成される自動車の車体ボディ20は、搬送装置21のハンガに搭載された状態で塗装ラインにて略水平方向へ搬送される。塗装ラインでは、電着塗装の前処理として、車体パネルに脱脂、水洗、表面調整、皮膜化成、水洗等の処理が施される。
【0020】
これらの処理の後、車体ボディ20は電着槽22に向かって降下し、電着液23に浸漬された状態で略水平に移動する。この状態で、車体ボディ20と電着槽22内の電極(図示せず)に電圧を加えることにより、車体パネルに塗料が析出するようになっている。この後、搬送装置21により車体ボディ20は電着槽22から引き上げられ、水洗により車体パネルに電着せずに付着している電着液23が除去される。
【0021】
演算装置10において実行されるシミュレーションプログラムの機能は、モデル構築部10a、重力方向更新部10b、エアポケット判定部10c、ポスト処理部10dによって表現することができる。演算装置10は、対象物(ワーク)の形状を複数の要素のデータでモデル化した解析モデルによる幾何学的手法を用いてエアポケットの発生をシミュレーションし、シミュレーション結果を表示装置12に出力して表示させる。尚、表示装置12には、シミュレーション結果のみならずシミュレーション過程を表示させるようにしても良い。
【0022】
本発明によるエアポケットのシミュレーションは、対象物(ワーク)の表面形状を複数の要素に分割して構築したサーフェスモデルを用いて実行されるが、従来のようにワークの或る1つの姿勢についての1回のシミュレーションで完結するものではなく、ワークの浸漬姿勢を可変して自動的に複数回繰り返されるシミュレーションである。このワークの浸漬姿勢を可変しての複数回のシミュレーションを自動実行することにより、エアポケットの発生を最少化する最適なワークの浸漬姿勢を求めることができる。以下では、塗料槽等に釣下げられて浸漬されるワークの最適な釣下げ姿勢を求めるエアポケットシミュレーションについて説明する。
【0023】
モデル構築部10aは、対象物の形状データを複数の要素に分割して解析モデルを構築する。解析モデルを構成する手法としては、対象物の表面形状を複数の所定の形状に分割して表現するメッシュを用いる手法や、対象物の表面に複数の節点(ノード)を配置する手法等を用いることができる。
【0024】
例えば、車体ボディ20を構成する図3に示すようなフロアパネル26を例に挙げて説明すると、図3に示すフロアパネル26を、図4に示すように、フロアパネル26の表面を複数のメッシュ29に分割して数値計算のための解析モデルを構築する。以下では、対象物の表面形状を三角形のメッシュで表現したサーフェスモデルを用い、このサーフェスモデルのメッシュデータを三次元空間に配置して解析モデルを構築する例について説明するが、解析モデルの要素としてノードを用いる場合においても処理は同様である。
【0025】
尚、解析モデルの要素としてのメッシュの形状は、三角形の形状に限られず、矩形や多角形の形状であっても良い。個々のメッシュには、例えば、自己を識別するためのメッシュ番号、メッシュの節点(ノード)の所定の基準点に対する座標値(三次元空間のXYZ座標軸における座標値)、メッシュの属性等のデータが付与される。
【0026】
また、外部記憶装置13には、エアポケットのシミュレーション処理に必要な各種のデータが格納されている。例えば、外部記憶装置13は、対象物毎に個別の識別番号(レコード番号)が付された属性レコード群で構成されるデータベースを有し、個々の属性レコードに、各メッシュのメッシュ番号、ノード点座標値、属性データ等が対応付けて記述される。
【0027】
重力方向更新部10bは、ワークに固定されたXYZ直交座標系のZ軸を中心とする設定範囲を指定し、この指定範囲内で、シミュレーションを繰り返し実行する際の計算刻み角度に応じて重力方向を更新する。すなわち、図5に示すように、ワークに固定したXYZ座標系から見た重力の方向を、Z軸となす角度φと、Z軸を中心としたXY平面上の偏位角(X軸からの角度)θとにより表現し、これらの角度を計算刻み角度(Δφ,Δθ)ずつ変えることにより、重力方向を変えて(つまり、ワークの姿勢を変えて)シミュレーションを繰り返し実行することができる。
【0028】
尚、計算刻み角度(Δφ,Δθ)は、一定値でも良く、また、一回のシミュレーション毎に変更しても良い。
【0029】
エアポケット判定部10cは、解析モデルを形成する個々のメッシュに対して、エアポケットの箇所に相当する気体の属性と電着液等の浸漬個所に相当する液体の属性との何れかを設定する。このメッシュの属性は、当初、全メッシュが気体の属性に設定され(浸漬前)、その後、初期メッシュを含む隣接メッシュとのZ方向(重力と反対方向)の高さの比較により、メッシュの属性が液体となるか気体のままであるか(つまり、エアポケットとなるか否か)を判定し、液体と判定されたとき、そのメッシュの属性を液体に変更し、属性データを書き換える。
【0030】
このエアポケットの判定は、本形態においては、浸漬液の比重が空気の比重よりも大きいことを前提としている。すなわち、或るメッシュの属性を判定する際に、判定対象のメッシュと比較対象のメッシュとを、Z方向(重力と反対方向)の高さで比較する。そして、比較対象メッシュが判定対象メッシュよりも高く液体の属性を有していれば、相対的に低い判定対象メッシュにも浸漬液が空気を押しのけて浸入し、浸漬液により満たされるものと判断して、判定対象メッシュの属性データを液体とする。これに対して、相対的に高い比較対象メッシュの属性が気体である場合には、判定対象メッシュの属性データは変更せず、比較対象を変更して判定を繰り返す。そして、この判定を繰り返して全メッシュの属性が液体と気体とに分離・決定され、属性が気体と決定されたメッシュの存在によって示されるエアポケットの気液境界線が導き出される。この気液境界線は、複数本導き出される場合もある。
【0031】
ポスト処理部10dは、シミュレーション結果を容易に把握可能とするための可視化処理やシミュレーション結果のデータ出力を行う。シミュレーション結果の可視化処理においては、例えば、液体の属性に決定されたメッシュ、気体の属性に決定されたメッシュ、これらの境界線(気液境界線)を色相や濃淡等によって区分し、エアポケットの発生部位や大きさを明示的に表現する。
【0032】
また、ポスト処理部10dでは、エアポケットの発生状況を評価する指標データとして、重力方向の各設定毎に、エアポケットの発生個数、エアポケットの表面メッシュ数、エアポケットの体積等を算出し、重力方向の設定範囲内でのシミュレーション終了後、これらを可視化する処理を行う。尚、エアポケットの体積に代わる指標データとして、[気液境界面の面積]×[エアポケット高さ]を算出するようにしても良い。
【0033】
この指標データの可視化に際しては、重力方向の計算刻み角度(Δφ,Δθ)に対応して設けたポスト処理用メッシュを用いる。このポスト処理用メッシュは、例えば、図6(a)に示すように、XY平面上に投影した重力方向の指定範囲を、計算刻み角度(Δφ,Δθ)に対応して区分した評価用メッシュと、図6(b)に示すように、原点を中心として計算刻み角度(Δφ,Δθ)を展開した評価用メッシュとを用いる。
【0034】
ポスト処理用メッシュの各ノード点(格子点)には、エアポケットの発生個数、エアポケットの表面メッシュ数、エアポケットの体積等のエアポケット発生状況を評価するための指標値が割り付けられる。例えば、エアポケットの発生個数を指標値として用い、エアポケット発生無しの場合には、該当するノード点にノード値「0」が割り付けられ、エアポケットが1個発生する場合には、該当するノード点にノード値「1」が割り付けられ、エアポケットが2個発生する場合には、該当するノード点にノード値「2」が割り付けられる。そして、図7(a),(b)に示すように、ポスト処理用メッシュのノード値が同じ領域毎に区分され、エアポケットの発生状況が可視化される。
【0035】
また、このエアポケットの発生状況を示す可視化処理では、ノード値が「0」の領域(エアポケットが発生しない領域)がワークの最適姿勢が存在する最適領域となるため、この最適領域内で最適なワークの姿勢(最適なワークの釣下げ角度)を求め、その位置を識別表示する。
【0036】
具体的には、先ず、ノード値「0」の領域とノード値「1」の領域との境界線に接するノード値「0」の部分領域内のノード値を、「0」から別の数値nに変更する。別の数値nは、例えば、0<n<1の範囲で設定し、ここでは、n=0.5に変更するものとすると、次に、ノード値「0.5」とノード値「0」との境界線に接するノード値「0」の部分領域内のノード値を、「0」から「0.5」に変更する。
【0037】
以上の処理を逐次繰り返し、最後に残ったノード値「0」の部分領域がなくなる1ステップ前に、その部分領域での刻み角度(Δφ,Δθ)を平均化する。そして、平均化した刻み角度に対応する位置を、図7に示すように、例えば赤の「×」の印で領域内に重ね合わせ表示する。この「×」点表示の位置(最適点)が、エアポケットが発生しない最適領域内でのワークの釣下げ姿勢の最適角度を表している。
【0038】
この最適点を求める際に、ノード値「0」の最適領域を、部分領域に分けて周囲から囲い込み、絞り込んでいく理由は、ノード値「0」の最適領域の形状が歪んでいる場合や、ノード値「0」の最適領域が複数分散して存在する場合に対処するためである。すなわち、エアポケットが発生しない最適領域内で、エアポケットが発生する領域との境界からできるだけ離れた略中央に最適点を設定することにより、実際のライン上の取付け誤差や製造バラツキ等に対して妥当且つ安全性を見た釣下げ姿勢を設定することができる。
【0039】
例えば、図8に示すように、ノード値「0」の最適領域の形状が歪んでいる場合、この最適領域全体での刻み角度を単純に平均化すると、その平均値がノード値「0」の領域外、すなわちエアポケットが発生する領域となる可能性がある。このような場合においても、ノード値「0」の領域を周囲から囲い込んでゆくことにより、確実にノード値「0」の領域内にあって、略中央の位置に最適点を設定することができる。
【0040】
また、図9に示すように、ノード値「0」の略同じ面積の最適領域が複数ある場合には、円形に近い領域の方から最適角度を設定することが望ましく、また、面積が異なるノード値「0」の領域が複数ある場合には、できるだけ面積の大きいほうの領域から最適角度を設定することが望ましい。このような場合においても、ノード値「0」の領域を周囲から囲い込んでゆくことにより、面積が大きく円形に近い領域内に最適角度を設定することが可能となり、エアポケットが発生しない領域とエアポケットが発生する領域との境界からできるだけ離れた位置に最適点を設定することができる。
【0041】
以下、演算装置10のCPUで実行されるエアポケットのシミュレーション処理について、図10のフローチャートを用いて説明する。
【0042】
図10のシミュレーションプログラムでは、先ず、ステップS1において、対象物の表面形状を複数の要素のデータでモデル化し、数値計算のための解析モデルを構築する。この解析モデルは、例えば、ワークの表面形状を複数の三角形のメッシュで分割したモデルで構築される。
【0043】
次に、ステップS2へ進んで解析モデルにおける重力方向の設定範囲を指定し、ステップS3で重力方向を選択する。この重力方向は、1回のシミュレーション毎に、計算刻み角度(Δφ,Δθ)ずつ可変される(後述のステップS7)。
【0044】
そして、ステップS4で、対象物が電着液等に浸漬される前の周辺が空気で満たされた状態のシミュレーションとして、一旦、解析モデルの全てのメッシュを気体の属性に設定する。さらに、対象物を浸漬した初期状態のシミュレーションとして、メッシュを液体の属性と気体の属性とに分離するための初期条件を設定する。
【0045】
本実施の形態においては、初期状態でのメッシュの属性を液体に決定する条件として、ワークのフリーエッジに接するメッシュを初期メッシュに設定する。そして、この初期メッシュの属性を気体から液体に変更する。ここで、フリーエッジとは、ワークの縁の部分、即ちワークの端部及びワークに形成された穴の縁の部分を意味する。初期メッシュとは、ワークのフリーエッジに接する要素であって、フリーエッジに接するメッシュとは、そのメッシュを構成する辺がフリーエッジに接していることを言う。
【0046】
尚、初期に属性を液体として決定する条件として、ワークに対してその周囲よりかつ水平より上側の視線方向から見て認識可能なメッシュを初期メッシュとしても良い。この場合においても、初期メッシュ決定後の処理は同じである。
【0047】
次に、ステップS4からステップS5へ進み、エアポケット判定計算処理を実施して、エアポケットの発生をシミュレーションする。このエアポケット判定計算処理は、各メッシュの重力と反対方向の高さの比較により、それぞれの属性を決定してエアポケットの発生を判定する処理であり、従来の手法を用いることができる。各メッシュの高さの比較は、例えば、それぞれのメッシュの重心点、内心点、外心点、垂心点等のZ方向(重力と反対方向)における位置や、それぞれのメッシュが有する各頂点のうちの最も高い頂点(Z方向の位置が最も高い頂点)等の特徴点を比較することで行う。
【0048】
例えば、重心点の位置を比較する場合には、判定対象とするメッシュと隣接メッシュとのそれぞれの重心点のZ方向における高さを比較し、隣接メッシュの重心点が判定対象メッシュの重心点よりも高いまたは同じ場合、隣接メッシュの属性が液体であれば、判定対象メッシュの属性を液体に決定する。一方、隣接メッシュの重心点が判定対象メッシュの重心点よりも低い場合には、判定判定メッシュの属性は変更せず、比較対象を変更して判定を繰り返す。この判定を初期メッシュを含む全メッシュについて実行し、液体の属性を有するメッシュと気体の属性を有するメッシュとの境界を気液境界線として検出し、必要に応じて気液境界線を修正する処理を行う。
【0049】
尚、気液境界線を修正する処理は、例えば、1つのエアポケットに所属する複数の境界線に同じ属性を与えて統一化し、各境界線の高さが異なる場合には、1つの水平線に近づけるように修正する。
【0050】
その後、ステップS6へ進み、1回のシミュレーションで得られた結果を処理し、エアポケットの発生個数、エアポケットの表面メッシュ数、エアポケットの体積等の指標を算出し、必要に応じてデータを保存する。
【0051】
次に、ステップS7で、ワークの釣下げ姿勢を変えてシミュレーションを行うため、計算刻み角度(Δφ,Δθ)を変えて重力方向を更新する。そして、ステップS8で、重力方向が予め指定した設定範囲内か否かを調べ、設定範囲内であるときには、ステップS4へ戻り、重力方向を変更してのシミュレーションを再実行する。以上のステップS2,S3、及びステップS7,S8が本発明の重力更新ステップに相当する。
【0052】
一方、重力方向が設定範囲を越えた場合には、重力方向の更新を終了してステップS8からステップS9へ進み、ポスト処理を行って本シミュレーションプログラムを終了する。このポスト処理では、前述したように、エアポケットの発生個数、エアポケットの表面メッシュ数、エアポケットの体積等の指標を用いて、図7に示すように、エアポケットの発生状況とワークの最適姿勢とを表示装置12に表示させ、また、必要に応じてシミュレーション結果のデータをファイルに出力する。このステップS9が本発明の最適姿勢算出ステップに相当する。
【0053】
図7に示すようなシミュレーション結果により、エアポケットが発生しないワークの最適な釣下げ姿勢を迅速に設定することができ、仮にエアポケット発生無しの領域がなかったとしても、対策し易い釣下げ姿勢を容易に把握することが可能となる。
【0054】
以上、本実施の第1形態によれば、シミュレーション毎にワークに対する重力方向を1回1回入力しながらトライ&エラーを繰り返す従来の手法に比較して、ワークの最適姿勢を自動的に求めることができ、仮にエアポケット発生無しの釣下げ姿勢が複数見出された場合でも、ライン上の取付け誤差や製造バラツキ等の影響に対してどの姿勢が最良かを容易に判断することができる。これにより、シミュレーション効率を向上して工数及び経費を抑制することができる。
【0055】
次に、本発明の実施の第2形態について説明する。図11は本発明の実施の第2形態に係り、エアポケットシミュレーションプログラムのフローチャートである。
【0056】
第2形態は、重力方向の設定範囲と計算刻み角度とから決定される回数だけシミュレーションを繰り返す第1形態に対し、重力方向を最適化して自動的に最適な釣下げ姿勢を求めるものである。
【0057】
第2形態におけるシミュレーションプログラムは、図11のフローチャートに示される。このシミュレーションプログラムは、ステップS11〜S16までは、第1形態のシミュレーションプログラム(図10参照)におけるステップS1〜S6と同様であり、解析モデルを構築して重力方向を選択し、初期条件を設定してエアポケット判定計算を行い、計算結果を処理する。
【0058】
次に、ステップS16からステップS17へ進むと、重力方向を最適化するための最適化計算を行う。この最適化計算は、例えば、遺伝的アルゴリズム(Genetic Algorithm;GA)等の最適化手法を用いて行われ、指定した重力方向の設定範囲を制約条件として、エアポケットの発生状況を評価する指標データに基づいて作成した目的関数を用いて最適化計算を行う。
【0059】
尚、この場合の最適化は、単にエアポケットが無くなるワークの釣下げ姿勢を求めるだけでも良いが、本形態においては、エアポケットの発生が無い状態での複数の釣下げ姿勢の中で最も最適な姿勢を求めるため、エアポケットの発生が無い状態では値が「0」となる指標データに加えて他の変数が必要となる。
【0060】
本形態においては、指標データに対して判別計算の処理時間(CPU時間)或いはシミュレーションの繰り返し回数等を併用し、目的関数を作成する際の設計変数とする。これは、エアポケットが発生しないワークの複数の姿勢角度において、判別計算に要する処理時間或いは回数が最も短い場合が最もエアが抜け易い姿勢であり、確実且つ安定的にエアポケットの無い状態を実現できると考えられるからである。
【0061】
具体的には、以下に示すように、エアポケットの発生個数nと、エアポケット判別計算の処理時間(CPU時間)とを設計変数とする目的関数fを作成し、この目的関数fが制約条件の範囲(重力方向の設定範囲)内で最小となるときの刻み角度(Δφ,Δθ)を、ワークの釣下げ姿勢の最適角度とする。
f(n,Ctime)=(n+ζ)・Ctime
但し、ζ:定数(0<ζ≦1)
【0062】
すなわち、ステップS18で、重力方向が最適か(目的関数が最小か)否かを調べ、重力方向が最適でない(目的関数が最小でない)場合には、ステップS19で重力方向を更新してステップS14へ戻り、更新した重力方向すなわちワークの釣下げ姿勢を変えたシミュレーションを実行する。
【0063】
一方、ステップS18で、重力方向が最適となったとき(目的関数が最小となったとき)には、全シミュレーションを終了してステップS18からステップS19へ進み、ポスト処理を実行する。このポスト処理では、エアポケットが発生している場合は、エアポケットの発生個数、エアポケットの表面メッシュ数、エアポケットの体積等を表示し、また、必要に応じてエアポケットの発生状況を可視化処理する。
【0064】
第2形態においては、以上のステップS12,S13,S19が本発明の重力方向更新ステップに相当し、ステップS17,S18,S20が本発明の最適姿勢算出ステップに相当する。
【0065】
第2形態においても、第1形態と同様、トライ&エラーを繰り返すことなくワークの最適姿勢を自動的に求めることができるが、更に、第2形態では、規定回数のシミュレーション後のポスト処理を待つことなく、最適な釣下げ姿勢を直接的に求めることができ、よりシミュレーション効率を向上することができる。
【図面の簡単な説明】
【0066】
【図1】本発明の実施の第1形態に係り、シミュレーション装置の基本構成図
【図2】車体の塗装ラインの概略説明図
【図3】フロアパネルの概略斜視図
【図4】フロアパネルを複数の要素に分割した解析モデルを示す説明図
【図5】同上、重力方向と計算刻み角度とを示す説明図
【図6】同上、ポスト処理用メッシュの例を示す説明図
【図7】同上、ポスト処理の例を示す説明図
【図8】同上、最適領域が歪んでいる場合を示す説明図
【図9】同上、同じ面積の最適領域の分布を示す説明図
【図10】同上、エアポケットシミュレーションプログラムのフローチャート
【図11】本発明の実施の第2形態に係り、エアポケットシミュレーションプログラムのフローチャート
【符号の説明】
【0067】
1 シミュレーション装置
10 演算装置
10a モデル構築部
10b 重力方向更新部
10c エアポケット判定部
10d ポスト処理部
【特許請求の範囲】
【請求項1】
浸漬処理を施すワークの形状を複数の要素のデータでモデル化し、重力方向に対する上記ワークの姿勢に基づいて、各要素の属性が気体であるか液体であるかを判別する判別計算を実行することにより空気溜りをシミュレーションする空気溜りのシミュレーション方法において、
上記ワークの姿勢を可変させる範囲を上記ワークに対する重力方向の設定範囲として指定し、指定した設定範囲内で重力方向を所定の刻み角度ずつ更新して上記判別計算を繰り返し実行させる重力方向更新ステップと、
上記空気溜りの発生状況を評価する指標データを上記刻み角度毎に算出し、該指標データに基づいて上記ワークの最適姿勢を算出する最適姿勢算出ステップと
を備えることを特徴とする空気溜まりのシミュレーション方法。
【請求項2】
上記最適姿勢算出ステップにおいては、
上記指標データの分布を上記空気溜りの発生状況に応じた領域毎に区分し、上記空気溜りの発生無しの最適領域に対応する上記刻み角度から上記ワークの最適姿勢を算出することを特徴とする請求項1記載の空気溜りのシミュレーション方法。
【請求項3】
上記最適姿勢算出ステップにおいては、
上記最適領域における上記指標データの値を、上記最適領域の外周縁側から上記刻み角度に対応した部分領域毎に逐次変更し、上記指標データの元の値を保持する最後の部分領域の上記刻み角度から上記最適姿勢を算出することを特徴とする請求項2記載の空気溜りのシミュレーション方法。
【請求項4】
上記最適姿勢算出ステップにおいては、
上記指標データに基づいて目的関数を作成し、重力方向の上記設定範囲を制約条件として上記目的関数が最小となるまで重力方向の更新を継続させ、上記目的関数が最小となったときの上記刻み角度を上記ワークの最適姿勢として算出することを特徴とする請求項1記載の空気溜りのシミュレーション方法。
【請求項5】
上記重力方向更新ステップにおいては、
上記刻み角度を上記ワークに固定した座標系の座標軸に対する角度で設定することを特徴とする請求項1〜4の何れか一に記載の空気溜りのシミュレーション方法。
【請求項6】
上記最適姿勢算出ステップにおいては、
上記空気溜りの発生状況を可視化処理することを特徴とする請求項1〜5の何れか一に記載の空気溜りのシミュレーション方法。
【請求項7】
上記最適姿勢算出ステップにおいては、
上記空気溜りの発生状況を、上記空気溜りの発生個数と要素数とサイズとの少なくとも1つで表すことを特徴とする請求項1〜6の何れか一に記載の空気溜りのシミュレーション方法。
【請求項8】
浸漬処理を施すワークの形状を複数の要素のデータでモデル化し、重力方向に対する上記ワークの姿勢に基づいて、各要素の属性が気体であるか液体であるかを判別する判別計算を実行することにより空気溜りをシミュレーションするコンピュータが実行可能な空気溜りのシミュレーションプログラムにおいて、
上記ワークの姿勢を可変させる範囲を上記ワークに対する重力方向の設定範囲として指定し、指定した設定範囲内で重力方向を所定の刻み角度ずつ更新して上記判別計算を繰り返し実行させる重力方向更新ステップと、
上記空気溜りの発生状況を評価する指標データを上記刻み角度毎に算出し、該指標データに基づいて上記ワークの最適姿勢を算出する最適姿勢算出ステップと
を備えることを特徴とする空気溜まりのシミュレーションプログラム。
【請求項9】
上記最適姿勢算出ステップにおいては、
上記指標データの分布を上記空気溜りの発生状況に応じた領域毎に区分し、上記空気溜りの発生無しの最適領域に対応する上記刻み角度から上記ワークの最適姿勢を算出することを特徴とする請求項8記載の空気溜りのシミュレーションプログラム。
【請求項10】
上記最適姿勢算出ステップにおいては、
上記最適領域における上記指標データの値を、上記最適領域の外周縁側から上記刻み角度に対応した部分領域毎に逐次変更し、上記指標データの元の値を保持する最後の部分領域の上記刻み角度から上記最適姿勢を算出することを特徴とする請求項9記載の空気溜りのシミュレーションプログラム。
【請求項11】
上記最適姿勢算出ステップにおいては、
上記指標データに基づいて目的関数を作成し、重力方向の上記設定範囲を制約条件として上記目的関数が最小となるまで重力方向の更新を継続させ、上記目的関数が最小となったときの上記刻み角度を上記ワークの最適姿勢として算出することを特徴とする請求項8記載の空気溜りのシミュレーションプログラム。
【請求項12】
上記重力方向更新ステップにおいては、
上記刻み角度を上記ワークに固定した座標系の座標軸に対する角度で設定することを特徴とする請求項8〜11の何れか一に記載の空気溜りのシミュレーションプログラム。
【請求項13】
上記最適姿勢算出ステップにおいては、
上記空気溜りの発生状況を可視化処理することを特徴とする請求項8〜12の何れか一に記載の空気溜りのシミュレーション方法。
【請求項14】
上記最適姿勢算出ステップにおいては、
上記空気溜りの発生状況を、上記空気溜りの発生個数と要素数とサイズとの少なくとも1つで表すことを特徴とする請求項8〜13の何れか一に記載の空気溜りのシミュレーションプログラム。
【請求項1】
浸漬処理を施すワークの形状を複数の要素のデータでモデル化し、重力方向に対する上記ワークの姿勢に基づいて、各要素の属性が気体であるか液体であるかを判別する判別計算を実行することにより空気溜りをシミュレーションする空気溜りのシミュレーション方法において、
上記ワークの姿勢を可変させる範囲を上記ワークに対する重力方向の設定範囲として指定し、指定した設定範囲内で重力方向を所定の刻み角度ずつ更新して上記判別計算を繰り返し実行させる重力方向更新ステップと、
上記空気溜りの発生状況を評価する指標データを上記刻み角度毎に算出し、該指標データに基づいて上記ワークの最適姿勢を算出する最適姿勢算出ステップと
を備えることを特徴とする空気溜まりのシミュレーション方法。
【請求項2】
上記最適姿勢算出ステップにおいては、
上記指標データの分布を上記空気溜りの発生状況に応じた領域毎に区分し、上記空気溜りの発生無しの最適領域に対応する上記刻み角度から上記ワークの最適姿勢を算出することを特徴とする請求項1記載の空気溜りのシミュレーション方法。
【請求項3】
上記最適姿勢算出ステップにおいては、
上記最適領域における上記指標データの値を、上記最適領域の外周縁側から上記刻み角度に対応した部分領域毎に逐次変更し、上記指標データの元の値を保持する最後の部分領域の上記刻み角度から上記最適姿勢を算出することを特徴とする請求項2記載の空気溜りのシミュレーション方法。
【請求項4】
上記最適姿勢算出ステップにおいては、
上記指標データに基づいて目的関数を作成し、重力方向の上記設定範囲を制約条件として上記目的関数が最小となるまで重力方向の更新を継続させ、上記目的関数が最小となったときの上記刻み角度を上記ワークの最適姿勢として算出することを特徴とする請求項1記載の空気溜りのシミュレーション方法。
【請求項5】
上記重力方向更新ステップにおいては、
上記刻み角度を上記ワークに固定した座標系の座標軸に対する角度で設定することを特徴とする請求項1〜4の何れか一に記載の空気溜りのシミュレーション方法。
【請求項6】
上記最適姿勢算出ステップにおいては、
上記空気溜りの発生状況を可視化処理することを特徴とする請求項1〜5の何れか一に記載の空気溜りのシミュレーション方法。
【請求項7】
上記最適姿勢算出ステップにおいては、
上記空気溜りの発生状況を、上記空気溜りの発生個数と要素数とサイズとの少なくとも1つで表すことを特徴とする請求項1〜6の何れか一に記載の空気溜りのシミュレーション方法。
【請求項8】
浸漬処理を施すワークの形状を複数の要素のデータでモデル化し、重力方向に対する上記ワークの姿勢に基づいて、各要素の属性が気体であるか液体であるかを判別する判別計算を実行することにより空気溜りをシミュレーションするコンピュータが実行可能な空気溜りのシミュレーションプログラムにおいて、
上記ワークの姿勢を可変させる範囲を上記ワークに対する重力方向の設定範囲として指定し、指定した設定範囲内で重力方向を所定の刻み角度ずつ更新して上記判別計算を繰り返し実行させる重力方向更新ステップと、
上記空気溜りの発生状況を評価する指標データを上記刻み角度毎に算出し、該指標データに基づいて上記ワークの最適姿勢を算出する最適姿勢算出ステップと
を備えることを特徴とする空気溜まりのシミュレーションプログラム。
【請求項9】
上記最適姿勢算出ステップにおいては、
上記指標データの分布を上記空気溜りの発生状況に応じた領域毎に区分し、上記空気溜りの発生無しの最適領域に対応する上記刻み角度から上記ワークの最適姿勢を算出することを特徴とする請求項8記載の空気溜りのシミュレーションプログラム。
【請求項10】
上記最適姿勢算出ステップにおいては、
上記最適領域における上記指標データの値を、上記最適領域の外周縁側から上記刻み角度に対応した部分領域毎に逐次変更し、上記指標データの元の値を保持する最後の部分領域の上記刻み角度から上記最適姿勢を算出することを特徴とする請求項9記載の空気溜りのシミュレーションプログラム。
【請求項11】
上記最適姿勢算出ステップにおいては、
上記指標データに基づいて目的関数を作成し、重力方向の上記設定範囲を制約条件として上記目的関数が最小となるまで重力方向の更新を継続させ、上記目的関数が最小となったときの上記刻み角度を上記ワークの最適姿勢として算出することを特徴とする請求項8記載の空気溜りのシミュレーションプログラム。
【請求項12】
上記重力方向更新ステップにおいては、
上記刻み角度を上記ワークに固定した座標系の座標軸に対する角度で設定することを特徴とする請求項8〜11の何れか一に記載の空気溜りのシミュレーションプログラム。
【請求項13】
上記最適姿勢算出ステップにおいては、
上記空気溜りの発生状況を可視化処理することを特徴とする請求項8〜12の何れか一に記載の空気溜りのシミュレーション方法。
【請求項14】
上記最適姿勢算出ステップにおいては、
上記空気溜りの発生状況を、上記空気溜りの発生個数と要素数とサイズとの少なくとも1つで表すことを特徴とする請求項8〜13の何れか一に記載の空気溜りのシミュレーションプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【公開番号】特開2008−49268(P2008−49268A)
【公開日】平成20年3月6日(2008.3.6)
【国際特許分類】
【出願番号】特願2006−228113(P2006−228113)
【出願日】平成18年8月24日(2006.8.24)
【出願人】(000005348)富士重工業株式会社 (3,010)
【Fターム(参考)】
【公開日】平成20年3月6日(2008.3.6)
【国際特許分類】
【出願日】平成18年8月24日(2006.8.24)
【出願人】(000005348)富士重工業株式会社 (3,010)
【Fターム(参考)】
[ Back to top ]