【解決手段】コンピュータの記憶装置に収納された2次元形状である作業対象部位の開口縁部(51)を有する被洗浄物17の形状モデルと、ノズル21からの噴流の噴出方向に沿った方向を有する噴流ベクトル14と、ノズル21の基準点27と、噴口と開口縁部(51)との距離に関連する設定値である噴口離間距離Lと、に基づいて、演算装置が、開口縁部(51)が含まれる配置平面52から代表平面521を演算するステップと、代表平面521と対面し、代表平面521から噴口離間距離Lだけ離間させた作業平面55を演算するステップと、作業平面55上の基準点27の座標58であって、座標58を始点とする噴流ベクトル14の延長線が、開口縁部(51)の図心57を通過する座標58を演算するステップと、を含む。
【発明の概要】
【発明が解決しようとする課題】
【0007】
洗浄装置に装着したノズルをユーザーが移動させて位置座標を記憶する場合、その位置座標の決定にはユーザー毎の癖があり、視覚により決定するため、正確性に欠ける。また、ノズルの座標を手計算する場合には、計算が困難で、非常に手間がかかった。本発明は、コンピュータを用いて、正確にノズルの位置座標を演算することにより、運動プログラムの作成方法を提供することを課題とする。
【0008】
噴流は、直進性を備えている。噴流は、噴口からの距離に応じて、その流れの構造が異なる。このため、噴流を種々の作業に用いるには、その作業や噴流により、噴口と被洗浄物との距離に、適切な範囲がある。本発明は、噴流作業に適したノズルの運動プログラムの作成方法を提供することを第2の課題とする。
【課題を解決するための手段】
【0009】
上記課題に鑑みて、本発明は、コンピュータを用いる洗浄装置のプログラムの作成方法であって、前記洗浄装置は、噴口を有するノズルを備え、前記ノズルと被洗浄物とをコンピュータ制御により相対的に移動させる装置であり、前記コンピュータの記憶装置に収納された、2次元形状である作業対象部位の開口縁部を有する被洗浄物の形状モデルと、前記ノズルに対する前記ノズルからの噴流の噴出方向に沿った方向を有する噴流ベクトルと、前記ノズルの基準点であって、前記基準点を始点とする噴流ベクトルの延長線が前記噴口の中心を通過する前記基準点と、前記噴口と前記開口縁部との距離に関連する設定値である噴口離間距離と、に基づいて、前記コンピュータの記憶装置に接続された演算装置が、前記開口縁部が含まれる配置平面から代表平面を演算するステップと、前記代表平面と平行で、前記代表平面と対面し、かつ、前記代表平面から前記噴口離間距離だけ離間させた作業平面を演算するステップと、前記作業平面上の前記基準点の座標であって、前記座標を始点とする前記噴流ベクトルの延長線が、前記開口縁部の図心を通過する前記座標を演算するステップと、を含む。
【0010】
ここで、「洗浄」とは、バリ取り、はくりを含む。
発明者らは、開口縁部を有する被洗浄物の作業対象部位について、噴流の中心軸がその開口縁部の中心(図心)を通過する際に、最適な洗浄効果が得られることを発見した。
【0011】
上記構成によれば、ノズルの噴口の位置に対応する基準点が、作業対象部位の開口縁部が含まれる代表平面から噴口離間距離だけ離間した作業平面を通過するため、噴口と、噴流が衝突すべき作業対象部位の開口縁部との距離が、記憶装置に格納された噴口離間距離だけ確保される。噴流ベクトルは、噴流の方向を有する。基準点を始点とする噴流ベクトルの延長線上に、噴口の中心が位置するように、ノズルの基準点の座標が定められている。即ち、ノズルから噴出する噴流は、基準点を始点とする噴流ベクトルを中心とするように、ノズルから噴出する。噴流ベクトルの延長線が、開口縁部の図心を通過するよう、ノズルの座標が演算されるため、演算された座標に位置決めされたノズルから噴出する噴流は、開口縁部の図心に衝突する。噴流が開口縁部の図心に衝突するよう、座標が定められるため、作業対象部位に対する洗浄に適した座標が演算される。
【0012】
本発明の運動プログラムの作成方法は、好ましくは、前記代表平面を演算するステップは、前記配置平面が複数演算された場合において、前記演算装置が、複数の前記配置平面のうち、最も被洗浄物の内部から突出した前記配置平面を前記代表平面として選択するステップを含んでいる。
【0013】
配置平面が複数演算された場合において、複数の配置平面のうち、最も突出する配置平面を代表平面とし、その代表平面から噴口離間距離だけ離間した作業平面内を、ノズルが移動すれば、ノズルと被洗浄物とが干渉するおそれは少ない。
【0014】
また、噴流が被洗浄物に衝突する範囲は、強力な洗浄効果が期待できる。例えば、噴流の形状が、円錐形状、扇形形状に噴口から離れるにつれて噴流が広がるものがある。これらのノズルを用いた場合において、最も突出する配置平面とノズルとの距離を定めておけば、それぞれの開口縁部における噴流の広がりの幅の最も狭い幅を容易に想定できる。上記構成によれば、強力な洗浄効果が期待できる範囲を予め予定して運動プログラムを作成できる。
【0015】
本発明の運動プログラムの作成方法は、好ましくは、前記代表平面を演算するステップは、前記配置平面が複数演算された場合において、前記演算装置が、それぞれの前記配置平面に含まれている前記開口縁部の数を計数するステップと、計数された前記開口縁部の前記数の最も多い前記配置平面を前記代表平面に決定するステップ、を含んでいる。
【0016】
噴口離間距離は、運動プログラムを作成するにあたって、噴流の広がり、噴流の動圧の基礎となる距離である。上記構成によれば、複数の配置平面のうち、開口縁部が最も多く含まれている配置平面を代表平面として選択するため、洗浄効果を見積もりやすい。
【0017】
本発明の運動プログラムの作成方法は、好ましくは、前記演算装置が、前記記憶装置に格納されたノズル種類又は噴口径に関連する噴口離間距離演算関数又は噴口離間距離選択マトリックスに基づいて、前記噴口離間距離を演算するステップを更に含んでいる。
【0018】
洗浄作業において、噴口離間距離は、洗浄効果に大きく関連する。上記構成によれば、ノズル種類又は噴口径に関連して格納された噴口離間距離演算関数または噴口離間距離選択マトリックスに基づいて、演算装置が噴口離間距離を演算するため、ノズルに対する噴口離間距離の選択に対する知識を十分に持たないユーザーであっても、最適な噴口離間距離を得ることができる。
【0019】
本発明の運動プログラムの作成方法は、好ましくは、前記座標を演算するステップは、前記噴流ベクトルが前記代表平面に対して垂直になり、かつ、前記噴流ベクトルが前記代表平面に向かうように、前記座標を演算する。
【0020】
ノズルの姿勢が変わることにより、ノズルの取付位置に対する噴流が噴出する方向が変わるときがある。このときにおいて、噴流は、作業対象部位に対して、作業対象部位の開口縁部の配置平面に対して垂直に噴射されるのが望ましい。上記構成によれば、代表平面に対して、垂直になるように噴流ベクトルを演算するため、洗浄に適した運動プログラムを作成できる。
【0021】
また、ユーザーが一群の開口縁部を選択したときに、選択された一群の開口縁部が含まれる代表平面が、噴流ベクトルに垂直になるように、被洗浄物の姿勢を演算できる。選択された一群の開口縁部に応じて、被洗浄物の姿勢を演算できるため、運動プログラム作成がより簡便になる。
【0022】
本発明の運動プログラムの作成方法は、好ましくは、前記基準点が前記作業平面上の前記座標を連続して通過する経路を、前記演算装置が作成するステップを、更に含んでいる。
ここで、「連続」とは、座標58aないし58eのみを連続して通過するのみならず、途中に他の経路を挿入されることを含む。
【0023】
上記構成によれば、演算装置によって作成されたノズルの基準点の経路は、被洗浄物の表面と離間した作業平面上を連続して通るため、噴流による洗浄に適した、運動プログラムを作成できる。噴流は、被洗浄物の表面に衝突するまで、ほぼ直進する。ノズルが運動プログラムで定められた経路に沿って動くと、噴流は、噴流が衝突する被洗浄物の表面形状に倣ってその長さを自在に伸縮する。そのため、ノズルの経路は、作業対象部位の深さや、開口縁部の高さが多少変化しても、作業平面上を通るように設定されるのが望ましい。作業平面上の演算された座標を連続して通過する経路は、経路距離を短縮できる効果も生ずる。
【0024】
本発明の運動プログラムの作成方法は、好ましくは、前記ノズルが、ノズル取付面に設けられた回転軸を中心に角度を割り出しできるように設けられ、前記基準点が前記回転軸の方向から見て、前記回転軸とオフセット距離だけ離間して設けられているときに、前記記憶装置にさらに格納された、ノズルの割出角度と、原点座標におけるノズルのオフセットベクトルと、に基づいて、前記座標を演算するステップは、前記演算装置が、オフセットベクトルを割出角度回転したときのオフセットベクトルと、前記座標との和のオフセット座標を演算するステップを含み、前記経路を作成するステップは、前記演算装置が、前記回転軸が前記オフセット座標を通過するように前記経路を作成する、ように構成される。
【0025】
上記構成によれば、ノズルの回転軸からオフセットした位置に、噴口の位置を示す基準点が設けられているノズルに対して、割出角度及びオフセットベクトルに基づいてオフセット座標を通過する経路を演算できる。
【0026】
本発明のコンピュータは、上述の運動プログラム作成方法を実行するための命令セット記憶手段と、前記開口縁部の前記2次元形状を有する前記被洗浄物モデルを記憶する被洗浄物モデル記憶手段と、前記噴流ベクトル及び前記基準点を有するノズルモデルを記憶するノズルモデル記憶手段と、前記噴口離間距離を記憶するパラメータ記憶手段と、を有する前記記憶装置と、前記記憶装置に接続され、前記代表平面を演算する代表平面演算手段と、前記作業平面を演算する作業平面演算手段と、前記座標を演算する座標演算手段と、を有する前記演算装置と、前記記憶装置に接続された入力装置と、前記記憶装置に接続された表示装置と、を備える。
【0027】
本発明のコンピュータは、好ましくは、前記演算装置が、前記経路を作成する経路作成手段を更に有している。
【0028】
本発明は、前記コンピュータに対して、上述の運動プログラム作成方法を実行させるためのプログラム、および、このプログラムを格納したコンピュータ読み取り可能な記憶媒体を含む。
【発明の効果】
【0029】
本発明によれば、コンピュータを利用して、容易、かつ、正確にノズルの位置座標を演算できる。また、本発明は、洗浄に適したノズルと被洗浄物との相対的な位置を演算する運動プログラムの作成方法を提供できる。
【発明を実施するための形態】
【0031】
「第1実施形態」
(対象装置)
図1を参照して、演算の対象となる洗浄装置10について説明する。洗浄装置10は、数値制御されてXYZ方向に自在に移動できるクイル11と、クイル11に設けられるタレット12と、タレット12のタレット面にそれぞれスピンドル13と共に取り付けられるノズル21、23、24を備えている。タレット12の割出数は6である。ノズル21、23、24の内、下向きに割り出した一つのノズル(
図1におけるノズル21)は、回転軸18を中心にC軸方向に回転できる。さらに、下向きに割り出した一つのノズル21は、その回転角度を位置決めできる。また、洗浄装置10は、被洗浄物17を戴置する戴置台16を備えている。戴置台16は、被洗浄物17を戴置した状態でA軸方向に自在に回転できる。また、戴置台16は、回転角度を割り出しできる。
【0032】
洗浄装置10は、ノズル21、23、24の内、タレット12によって下方に割出したノズル21からのみ洗浄液を噴射する。割り出したノズル21は、回転軸18を中心に、タレット12に回転又は回転方向の位置割り出しできるように接続される。
【0033】
洗浄装置10は、クイル11の位置座標、戴置台16の回転角度(A軸座標)、ノズル21、23、24の位置(X、Y、Z軸座標)及び回転方向の割出角度(C軸座標)、又はノズルの回転速度をコンピュータ制御することにより、ノズル21、23、24の内、下向きに割出したノズルを被洗浄物17に対向させる。洗浄装置10が、割り出したノズル21から被洗浄物17に向けて洗浄液を噴射することで、被洗浄物17に洗浄液の噴流31aが当たる。噴流31aは、作業対象部位に入射する。噴流31aの動圧が、作業対象部位である作業対象部位に付着した異物に作用し、異物が除去される。
【0034】
発明者らは、多くの洗浄試験の結果、作業対象部位の開口部(以下、「開口縁部51」という。)の図心57に噴流31aの中心が当たる場合に、最も高い洗浄効果が発揮されることを発見した。
【0035】
なお、タレット面の割り出し数、タレット面に取り付けられるノズル21、23、24の種類は適宜変更できる。また、一つのタレット面に複数のノズルを取付けても良い。また、ノズル21をXYZC各軸方向に、載置台をB軸方向に移動する5軸装置を例に挙げて説明したが、軸数、軸の配置、及び組合せは自由に変更できる。
【0036】
図4を参照して、下向きに噴流31aを噴出するノズル21について説明する。ノズル21は、スピンドル13に固定するフランジ部29と、スピンドル13の回転軸に沿って延びる軸部21bを備えている。ノズル21の位置の基準点27は軸部21bの先端で、かつ、回転軸18の軸上にある点である。基準点27は、噴口28の中心を表している。基準点27を始点とする噴流ベクトル14の延長線は、噴口28の中心を通過している。噴流31aは、基準点27から噴出し、回転軸18に沿って噴出する。
【0037】
なお、基準点27は、基準点27を始点とする噴流ベクトル14の延長線が噴口28を通過するように設定されても良い。
【0038】
棒状の噴流31aの噴流ベクトル14は、回転軸18と平行に、かつ、下向きに設定されている。噴流ベクトル14の方向は、噴流31aの方向と一致している。基準点27を始点とする噴流ベクトルの延長線は、噴流31aの中心線となる。
【0039】
噴流ベクトル14の長さは、任意に取り決めて良い。便宜的に噴流ベクトル14の長さを1として良い。噴流ベクトル14は、ノズル21に対して定められている。洗浄装置10は、座標空間(X,Y,Z,A,C)を自在に移動する。基準点27を始点とする噴流ベクトル14は、基準点27のA軸座標、C軸座標に応じてその方向(X,Y,Z)を変える。
【0040】
ただし、本実施形態のノズル21については、噴流ベクトル14がZ軸方向に平行であるため、Z軸を中心に回転するC軸座標が変化しても、その向きを変えない。以下の説明において、特に記述がない限り、「座標」とは、被洗浄物17(
図1参照)の座標原点(ワーク座標原点)に対する5軸の絶対位置座標をいう。
【0041】
なお、
図4では、噴流31aは、直線棒状をなしているが、扇形平板状に広がっても、円錐形状に広がっても良い。この場合には、噴流ベクトル14は、噴流の広がりの中心と同一の方向をもつ。
【0042】
(CAMシステムの構成)
図2に示すように、CAM(computer aided manufacturing)システム40は、洗浄装置10から噴出した噴流31aが被洗浄物17の作業対象部位の開口縁部51の図心57に衝突するように、洗浄装置10の数値運動プログラムを作成するシステムであり、ワークステーション又は汎用パーソナルコンピュータで構成される。
【0043】
CAMシステム40は、演算装置41、入力装置42、表示装置43、出力装置45、記憶装置47がバス48で接続されている。入力装置42は、キーボード、スイッチ、タッチパネル、マウスその他のポインティングデバイス、又は、USBポート、光学ドライブ、LAN接続ポート、インターネット接続ポートその他の入出力ポートを含む。表示装置43は、GUI(Graphical user interface)46を備えている。出力装置45は、スピーカ、プリンタ、又は、USBポート、光学ドライブ、LAN接続ポート、インターネット接続ポートその他の入出力ポートを含む。記憶装置47は、RAMその他の主記憶装置、及び磁気ドライブ、フラッシュメモリその補助記憶装置を含む。
【0044】
記憶装置47は、(1)後に記述する実施形態の運動プログラムを作成するための命令セットを格納する命令セット記憶手段47aと、(2)ノズル21等について、それぞれのノズルの位置の基準点27のタレット12に対する相対的位置と、噴流ベクトル14(
図4参照)からなるノズルモデルM1を格納するノズルモデル記憶手段47bと、(3)被洗浄物である被洗浄物の3次元形状であり、演算装置41によって演算された開口縁部51(
図6参照)を含む被洗浄物モデルM2を格納する被洗浄物モデル記憶手段47cと、(4)洗浄装置10の軸構成を格納する洗浄装置モデル記憶手段47dと、(5)ノズル21等および被洗浄物17の位置座標及び洗浄順序を格納する位置座標記憶手段47eと、(6)パラメータ記憶手段47fを備えている。
【0045】
演算装置41は、(1)被洗浄物モデルM2における、被洗浄物17(
図1参照)の作業対象部位の開口縁部51が含まれる代表平面521を演算する代表平面演算手段41eと、(2)ノズル21等が通過する作業平面55(
図7参照)を演算する作業平面演算手段41bと、(3)図心57(
図6参照)を演算する図心演算手段41aと、(4)ノズル21等の姿勢、及び位置からなる座標58(
図7参照)の座標を演算する座標演算手段41cと、(5)ノズル21の経路59(
図7参照)を作成する経路作成手段41dと、(6)制御対象である洗浄装置10(
図1参照)の運動プログラムを作成する運動プログラム作成手段41fと、を備えている。
【0046】
図3を参照して、表示装置43に表示されるグラフィカルユーザーインターフェース(以下、「GUI46」という。)について説明する。表示装置43は、3次元形状を含む被洗浄物モデルM2を表示する。ユーザーは、GUI46を通じて、制御対象である洗浄装置10で噴流を衝突させる被洗浄物17の作業対象部位の開口縁部51を、3次元形状モデル上で指定する。また、GUI46は、ノズル21等の基準点27(
図4参照)の位置、噴流ベクトル14、基準点27の経路59(
図7参照)等を被洗浄物モデルM2と重ねて表示できる。
【0047】
(運動プログラムの作成方法)
図5と
図7を参照して、CAMシステム40(
図2参照)を用いた洗浄装置10(
図1参照)の運動プログラムの作成方法について説明する。ユーザーは、入力装置42(
図2参照)から戴置台16の形状データ、洗浄装置10の軸構成データをCAMシステム40へ入力する。洗浄装置モデル記憶手段47d(
図2参照)は、洗浄装置モデルを格納する(S1)。
【0048】
更に、ユーザーは、噴流ベクトル14(
図4参照)の位置、基準点27の位置等をCAMシステム40へ入力する。ノズルモデル記憶手段47b(
図2参照)は、ノズルモデルM1を格納する(S2)。噴流ベクトル14の位置、基準点27の位置等は、あらかじめ記憶装置47が記憶していてもよい。このとき、記憶装置47は、寸法を引数で記憶しておき、ユーザーは引数に対して実数を入力することで、ノズルモデルM1を記憶できる。
【0049】
次いで、ユーザーは、それぞれのノズルに関連付けて開口縁部51を表示装置43のGUI46および入力装置42を介してCAMシステム40に入力する。記憶装置47は、開口縁部51を被洗浄物モデルM2および被洗浄物17の姿勢に関連して開口縁部51を記憶する(S3)。ここで、姿勢とは、本実施形態においては、B軸座標をいう。演算装置41の図心演算手段41aは、記憶された開口縁部51から、図心57を演算する(S4)。代表平面演算手段41eは、それぞれの開口縁部51に対して、配置平面52を演算する。
【0050】
代表平面演算手段41eは、配置平面52(52a,52b,52c)が複数演算された場合には、演算された複数の配置平面52(52a,52b,52c)のうち予め定められた所定の選定基準に基づいて作業の基準となる代表平面521を演算する(S5)。
【0051】
作業平面演算手段41bは、記憶装置47が記憶した種々のデータ、ノズルモデルM1及び被洗浄物モデルM2に基づいて、作業平面55を決定する。記憶装置47は、作業平面55を記憶する(S6)。
【0052】
演算装置41の座標演算手段41cは、記憶装置47が記憶した図心57、作業平面55、噴流ベクトル14に基づいて、それぞれの図心57に対応するノズル21等の座標58を決定する。位置座標記憶手段47eは、それぞれの開口縁部51に対応するノズル21等の座標58を記憶する(S7)。演算装置41の経路作成手段41dは、記憶装置47が記憶したノズル21等の座標58および開口縁部51の指定の順序に基づいて、洗浄装置10の経路59を作成する(S8)。演算装置41の運動プログラム作成手段41fは、記憶装置47が記憶した経路59、パラメータに基づいて、洗浄装置10の運動プログラムを作成する(S9)。
【0053】
以下に、各ステップにおける入力、演算処理を詳細に説明する。
【0054】
記憶装置47が作業装置装置モデル、被洗浄物モデルM2を記憶し、演算装置41がワーク座標を演算する、ステップS1について説明する。
【0055】
洗浄装置モデルは、洗浄装置10の3次元形状、各軸のストローク及び原点位置、原点位置からの治具回転中心などからなる。記憶装置47は、洗浄装置モデルを記憶する。ストローク等は、変数として与えられており、ユーザーは、変数に対する値を入力装置42から入力することにより、洗浄装置モデルが確定するように構成されても良い。
【0056】
ユーザーは、載置台16及び被洗浄物17の3次元形状モデルを、入力装置42から入力する。ユーザーは、GUI上で、入力した載置台16及び被洗浄物17の3次元形状モデルを、洗浄装置モデルに配置する。
【0057】
ユーザーは、洗浄プログラム上で、取り得る被洗浄物17の姿勢、すなわちB軸指令値を、入力装置42を通して入力する。演算装置41は、被洗浄物17の各姿勢毎の、被洗浄物17の基準点の機械座標原点からの絶対位置座標、いわゆるワーク座標を演算する。記憶装置47は、演算されたワーク座標を記憶する。
【0058】
記憶装置がノズルモデルM1を記憶する、ステップS2について詳細に説明する。
ユーザーはタレット番号毎に、ノズルの種類、形状をGUI及び入力装置42を介して、CAMシステム40に入力する。
【0059】
記憶装置47のノズルモデル記憶手段47bは、ノズル24について、位置の基準点27(
図4参照)のタレット12(
図1参照)に対する相対的位置と、噴流ベクトル14からなるノズルモデルM1を記憶する。記憶装置47は、タレット番号に関連して、ノズルモデルM1を記憶する。
【0060】
ここで、ノズルモデルM1は、基準点27のタレット12に対する相対的位置を、その距離を変数とし、その方向を回転軸方向とするように、記憶できる。この場合、ユーザーは、入力装置42から、相対距離を入力することにより、ノズルモデルM1が確定する。
【0061】
図7を参照して、演算装置41による開口縁部51を記憶するステップS3について詳細に説明する。開口縁部51は、被洗浄物17の姿勢毎に指定される。
【0062】
ユーザーは、被洗浄物17の姿勢を入力装置42(
図2参照)を介して入力する。ユーザーは、入力した被洗浄物17の姿勢に対応して、表示装置43(
図2参照)のGUI46および入力装置42を介して、被洗浄物モデルM2上の開口縁部51を指定する。開口縁部51は、被洗浄物モデルM2の2次元の輪郭、又は被洗浄物モデルM2上に描かれた2次元の図形として選択される。例えば、開口縁部51は、貫通穴、有底穴、溝穴その他の作業対象部位の開口のエッジの輪郭形状として与えられる。位置座標記憶手段47eは、ユーザーが指定した開口縁部51の指定順序を記憶する。
【0063】
開口縁部51は、閉じている単一の描画要素のみで構成されている必要はない。一部が開口している描画要素であれば、図心演算手段41aは、開口部分を直線で補充して、開口縁部51を閉じられた領域(以後、「閉領域」という。)に修正できる。
【0064】
開口縁部51が複数の描画要素の組合せによって閉領域を構成している場合、ユーザーがそれらの構成要素を選択して一つの閉領域をなす開口縁部51として、設定されても良い。ただし、この場合においては、複数の描画要素が同一平面上にある必要がある。この場合において、ユーザーは、閉領域を構成する一つの描画要素をもって、開口縁部51を指定し、図心演算手段41aは、それぞれの描画要素を結合して、閉領域を持つ開口縁部51を演算できる。
【0065】
なお、開口縁部51は、複数である必要はなく、単一の開口縁部51に対しても本実施形態は使用しえる。
【0066】
また、ユーザーが入力した被洗浄物17の姿勢に対応して、記憶装置47が開口縁部51を記憶することに替えて、次の構成をとることができる。ユーザーは、一群の開口縁部51を表示装置43のGUI46および入力装置42を介して、被洗浄物モデルM2上の開口縁部51を指定する。記憶装置47は、ユーザーが指定した一群の開口縁部51を記憶する。演算装置41は、一群の配置平面52(52a,52b,52c)の群が、噴流ベクトル14に垂直に、かつ、配置平面52の表面が噴流ベクトル14に対向するように、被洗浄物モデルM2の姿勢を演算する。記憶装置47は、演算された被洗浄物モデルM2の姿勢に対応して、開口縁部51を記憶する。このとき、演算装置41は、配置平面52の群から、後記するように代表平面521を選択して、代表平面521が噴流ベクトル14に垂直にかつ、対向するように姿勢を演算できる。
【0067】
演算装置41が図心57(57a,57b,・・・57e)を演算するステップS4について説明する。
【0068】
図心演算手段41aは、それぞれの開口縁部51の図心57(平面図形の重心)を演算する。開口縁部51が2次元の図形であるため、図心演算手段41aは、その開口縁部51が存在している平面を演算できる。記憶装置47は、それぞれの開口縁部51に対応して、演算された開口縁部51の図心57の位置座標を記憶する。
【0069】
演算装置41が代表平面521を演算するステップS5について詳細に説明する。
この開口縁部51が存在している平面が、開口縁部51の含まれる配置平面52である。ユーザーは表示装置43が備えるGUI46上で、入力装置42を用いて、被洗浄物モデルM2の開口縁部51を、洗浄順に指定する。
【0070】
代表平面演算手段41bは、それぞれの開口縁部51a、51b・・・に対応して、開口縁部51a、51b・・・が設けられている配置平面52a、52b、・・・を、それぞれ演算する。記憶装置47は、演算された配置平面52の情報をそれぞれの開口縁部に対応して記憶する。
【0071】
配置平面52が複数演算されたときに、代表平面演算手段41eは、代表平面521として、配置平面52aないし52cのうち、被洗浄物17の表面から最も高く突出した配置平面52aを選択できる。
【0072】
なお、代表平面演算手段41eは、代表平面521として、配置平面52aないし52cのうち、その配置平面52内に含まれる開口縁部51の数が最も多い配置平面52を選択するようにしてもよい。このときにおいて代表平面演算手段41eは、配置平面52内に含まれる開口縁部51の数が最も多い配置平面52が複数存在した場合に、開口縁部51が最大数の配置平面のうち、最も高い配置平面52bを代表平面521として選択する。
【0073】
演算装置41が作業平面55を演算するステップS6について詳細に説明する。
ユーザーは、噴口離間距離Lを入力装置42を介してCAMシステム40に入力する。噴口離間距離Lは、ユーザーによって、作業に適した範囲内で、入力装置42およびGUI46を介して入力される。パラメータ記憶手段47fは、噴口離間距離Lを記憶する。作業平面演算手段41bは、代表平面521に平行で、かつ、所定の噴口離間距離Lだけ離間した平面を作業平面55として演算する。
【0074】
噴口離間距離Lは、ノズル21と被洗浄物17との距離に関連する。本実施形態においては、噴口離間距離Lは、代表平面521と噴口28との距離を示す。噴流31aの流れの状態は、噴口28の径と、噴射圧力、噴口28からの被洗浄物との距離により定まる。噴口離間距離Lは、洗浄効果に密接に関係する。噴口離間距離Lは、ユーザによって適切に選択され、入力装置42を介して、CAMシステム40に入力され得る。入力された噴口離間距離Lは、パラメータ記憶手段47fに記憶される。
【0075】
作業平面演算手段41bは、噴口離間距離Lの入力範囲を規定し、ユーザーによって入力された噴口離間距離Lが入力範囲を逸脱した場合、表示装置43等を介して警告を発しえる。
【0076】
噴口離間距離Lの入力範囲は、複数の配置平面52の面間距離と、あらかじめ定められた噴流の有効範囲に即して演算され得る。例えば、入力範囲の上限は、噴流31aの有効長と、代表平面521から最も遠く離れ、かつ、被洗浄物17の内部から見て、最も低い位置にある配置平面52と、代表平面521との距離と、の差を上限とできる。下限範囲は、被洗浄物17の内部から見て、最も突出した配置平面52と、代表平面521との差と、干渉防止長との和により、定められ得る。ここで、干渉防止長は、洗浄装置10の位置決め精度、サーボゲイン、許容偏差その他のサーボパラメータに関連して演算され得る。
【0077】
噴口離間距離Lは、ユーザによって入力されたノズル21の種類、洗浄圧力と開口縁部51の形状とに関連した噴口離間距離演算関数又は噴口離間距離選択マトリックスに基づいて、演算装置41が定めても良い。また、演算装置41は、それぞれの開口縁部51の形状に応じて、最適な範囲をそれぞれ演算し、開口縁部51の含まれる配置平面52の位置と、最適範囲の重複範囲から、噴口離間距離Lを演算できる。
【0078】
図7を参照して、演算装置41が、ノズル21の座標を演算するステップS7について説明する。ノズル21の噴流ベクトル14は、常にZ軸に平行となる。そして、噴流ベクトル14はZ軸下向きとなる。ノズル21の姿勢は、Z軸を中心とした回転方向、すなわちC座標で決定される。
【0079】
しかし、ノズル21については、噴流ベクトル14は、C軸の回転軸18と一致しているため、C座標が変化しても、噴流ベクトル14は変化しない。そこで、C軸座標は、ユーザーの入力装置42からの入力値を位置座標記憶手段47eがノズル姿勢として記憶する。ユーザーによるC軸座標の入力がないときは、座標演算手段41cは、初期設定値を利用できる。
【0080】
座標演算手段41cは、座標58(58a,58b,・・・58e)を始点とする噴流ベクトル14の延長線32が図心57(57a,57b,・・・57e)を通過し、かつ、座標58が作業平面55の上にあるように、座標58の座標を演算する。現実の洗浄装置10においては、座標58にあるノズル21から噴出した噴流31a(
図4参照)が開口縁部51(51a,51b,・・・51e)の図心57(57a,57b,・・・57e)に衝突する。
【0081】
演算装置41が経路59を作成するステップS8について説明する。経路作成手段41dは、基準点27(
図4参照)の経路59を作成する。経路59は、記憶装置47が記憶した51のユーザーの指定順に、基準点27が、開口縁部51aから51eに対応するノズル21の座標58aないし58eを連続して通過するように作成される。ここで、連続とは、座標58aないし58eのみを連続して通過するのみならず、途中に他の経路を挿入されることを含む。演算された座標58aないし58eのみを連続して通過する経路するよう、権利解釈されるべきものではない。経路59は、座標58(58a,58b,・・・58e)を洗浄順に早送りまたは直線補間により結ぶ。早送りと直線補間との選択は、初期設定に基づいて行われる。経路作成手段41dは、ユーザーが開口縁部51(51a,51b,・・・51e)の選択後に、開口縁部51の洗浄順を変更できるように、構成され得る。このときに、記憶装置47は、ユーザーが変更した洗浄順を記憶する。表示装置43は、記憶装置47が記憶した変更された洗浄順を表示する。
【0082】
経路作成手段41dは、開口縁部51(51a,51b,・・・51e)に対応する座標58(58a,58b,・・・58e)の直後に、開口縁部51の輪郭形状に対応する軌跡を挿入しても良い。例えば、ユーザーが指定した51a,51dの輪郭形状に対応する軌跡(不図示)を、それぞれ58a,58dの直後に挿入できる。この輪郭形状に対応する軌跡は、作業平面55上にあることに限定する必要はない。この場合、経路作成手段41dが作成する軌跡は、58a,51aの輪郭形状に対応する軌跡、58b、58c、58d、51dの輪郭形状に対応する軌跡、58eの順となる。
【0083】
演算装置41が運転プログラムを作成するステップS9について説明する。運動プログラム作成手段41fは、位置座標記憶手段47eに格納された、経路59及び座標58に従って、運動プログラムである数値運動プログラムを作成する。このときに、制御対象である洗浄装置10に適用できるように、パラメータ記憶手段47fに格納されている座標定義、速度定義、制御コードを運動プログラムに埋め込む。
【0084】
ここで、運動プログラム作成手段41fは、ノズルモデルM1における、タレット12(
図1参照)とノズル21の基準点27(
図4参照)との距離は、工具長補正として利用できる。工具長補正量は、運動プログラムに埋め込まれても良い。また、演算装置41は、工具長補正量を運動プログラムに埋め込むことに替えて、設定値として出力装置45から出力できる。演算装置41は、工具長補正量その他のパラメータをGUI46に表示できる。
【0085】
(効果)
本実施形態のプログラム作成方法によれば、ノズル21の噴口28の位置に対応する噴流ベクトル14の基準点27が、被洗浄物17の開口縁部51aが含まれる代表平面521から噴口離間距離Lだけ離間した作業平面55を通過するため、噴口28と、噴流31a(
図4参照)が衝突すべき作業対象部位の開口縁部51との距離が、記憶装置47に格納された噴口離間距離Lだけ確保される。噴流ベクトル14は、噴流31aと同じ方向を有する。基準点27を始点とする噴流ベクトル14の延長線上に、噴口28の中心が位置するように、ノズル21の基準点27が定められている。即ち、ノズル21の噴口28から噴出する噴流31aは、基準点27を始点とする噴流ベクトル14を中心とするように、ノズル21から噴出する。噴流ベクトル14の延長線が、開口縁部51の図心57を通過するよう、ノズル21の座標58が演算されるため、演算された座標58に位置決めされたノズル21から噴出する噴流31aは、開口縁部51の図心57に衝突する。噴流31aが開口縁部51の図心57に衝突するよう、座標58が定められるため、作業対象部位に対する洗浄に適したノズル21の基準点27の座標58が演算される。
【0086】
演算装置41によって作成されたノズル21の基準点27の経路59は、被洗浄物17の表面と離間した作業平面55上を通るため、噴流31a(
図4参照)による洗浄に適した、運動プログラムを作成できる。噴流31aは、被洗浄物17の表面に衝突するまで、ほぼ直進する。ノズル21が運動プログラムで定められた経路59に沿って動くと、噴流31aは、作業対象部位の壁面又は、底面の形状に倣ってその長さを自在に伸縮する。そのため、ノズル21の経路は、作業対象部位の深さや、開口縁部51の高さが多少変化しても、作業平面55上を通るように設定されるのが望ましい。作業平面55上の演算された座標58を連続して移動する経路59は、経路距離を短縮できる効果も生ずる。
【0087】
配置平面52が複数演算された場合において、複数の配置平面52(52a,52b,52c)のうち、最も突出する配置平面52aを代表平面521とし、その代表平面521から噴口離間距離Lだけ離間した作業平面55内を、ノズル21が移動すれば、ノズル21と被洗浄物17とが干渉するおそれは少ない。噴流31aの形状が、円錐形状、扇形形状に噴口28から離れるにつれて噴流が広がるものがある。この場合において、最も突出する代表平面521とノズルとの噴口離間距離Lを定めておけば、それぞれの開口縁部51における噴流31aの広がりの幅の最も狭い幅を容易に想定できる。噴流31aが被洗浄物17に衝突する範囲は、強力な洗浄効果が期待できる。本実施形態によれば、強力な洗浄効果が期待できる範囲を予め予定して運動プログラムを作成できる。
【0088】
噴口離間距離Lは、運動プログラムを作成するにあたって、噴流31aの広がり、噴流31aの動圧の基礎となる距離である。本実施形態によれば、複数の配置平面52のうち、開口縁部51が最も多く含まれている配置平面を代表平面として選択できるため、洗浄効果を見積もりやすい。
【0089】
本実施形態の運動プログラムの作成方法は、演算装置41が、記憶装置47に格納されたノズル種類又は噴口径に関連する噴口離間距離演算関数又は噴口離間距離選択マトリックスに基づいて、前記噴口離間距離Lを演算するステップを含み得る。
【0090】
本実施形態の運動プログラムの作成方法は、座標58を演算するステップS7は、噴流ベクトル14が代表平面521に対して垂直になり、かつ、噴流ベクトル14が前記代表平面521に向かうように、座標58を演算するように構成できる。
【0091】
上記構成によれば、ユーザーが一群の開口縁部51を選択したときに、選択された一群の開口縁部51が含まれる代表平面521が、噴流ベクトル14に垂直になるように、被洗浄物17の姿勢を演算できる。選択された一群の開口縁部51に応じて、被洗浄物17の姿勢を演算できるため、運動プログラム作成がより簡便になる。
【0092】
加工工具と異なり、噴口離間距離は、被洗浄物17の表面と噴口28との距離によって、噴口28の移動に伴い、刻々とその長さおよび形状が変化する。また、ノズル21の噴口28に関連する基準点27が、加工点に相当する図心57と離間している。本実施形態によれば、噴流ベクトルという概念を創案し、これを利用することによって噴流の上述の特性に適した、CAMシステム40を提供できる。
【0093】
本実施形態の運動プログラムの作成方法によれば、噴口28中心に関連するノズルの基準点27の座標を基準として作成された運動プログラムが得られる。このため、運動プログラムによって、容易に噴口28の動きを把握できる。
【0094】
上述のように、本実施形態は、噴流31a(
図4参照)による洗浄に適した運動プログラムを、容易に作成できるCAMシステム40を提供する。本実施形態による演算方法は、コンピュータに計算させるためのプログラム、プログラムを記憶した記憶媒体、プログラムを記憶した記憶装置を備えたコンピュータシステムとして提供され得る。また、プログラムの一部を、ユーザーが使用する端末と隔離され、上記端末と通信できるサーバに納め得る。このときにおいて、サーバと端末は中間データをお互いに送信し、演算をサーバと端末とで分担しえる。
【0095】
(代替例)
なお、洗浄装置は、数値制御される物の他、いわゆるオフラインティーチングできる産業用ロボットを用いた装置にも利用され得る。演算装置は、演算された座標を適用して、制御対象である装置に適合するロボット言語に基づく運動プログラムを作成する。
【0096】
また、演算装置41は、上記のいずれかの計算方法のいずれかのみを行うよう構成され得る。また、演算装置41は、上述の計算方法の組合せを、ユーザーの選択に応じて使い分けるよう構成され得る。
【0097】
「第2実施形態」
本実施形態では、
図1に示す洗浄装置10に、
図8に示す横向きのノズル24をセットしたものを、対象として扱う。第1実施形態と同様の物の構造、モデルの部位、方法のステップについては、同じ符号を付し、その詳細な説明を省略する。
【0098】
(制御対象)
図8を参照して、横向きに噴流31cを噴出するノズル24について説明する。ノズル24は、スピンドル13に固定するフランジ部29と、回転軸18に沿って延びる軸部24bとを備える。軸部24bは、その先端付近の円筒面に噴口28を備え、横方向に棒状の噴流31aを噴出する。噴流31aの中心線と、回転軸18との交点を基準点27とする。
【0099】
噴流ベクトル14は、ノズル24に対して設定されている。噴流ベクトル14は、噴流31aの中心線に沿った方向を持つ。基準点27を始点とする噴流ベクトル14の延長線は、噴口28の中心を通過している。噴流31aは、基準点27を始点とする噴流ベクトル14に沿って噴出する。噴流ベクトル14は、ノズル24が回転軸18に沿って回転すると、ノズル24の回転に伴って、噴流ベクトル14の向きが変化する。
【0100】
(運動プログラムの作成方法)
図9ないし
図12を参照して、横向きのノズル24に対するプログラム作成方法を詳細に説明する。
【0101】
図9及び
図10は、配置平面52がZ軸に平行で、かつ、噴流ベクトル14がZ方向成分を有さないときにおける、ノズル24の運動プログラム作成方法を模式的に表現した図である。
図10は、
図9をZ方向から投影した、被洗浄物17、作業平面55、座標58(58f,58g,58h,58i)を表す模式図である。
【0102】
図9を参照して、代表平面521を演算するステップS5および作業平面55を演算するステップS6について説明する。第1実施形態と同様に、開口縁部51(51f,51g,51h,51i)に対して、演算装置41(
図2参照)の図心演算手段41aは、それらの含まれる配置平面52(52f,52g,52h)を求める。演算装置41の作業平面演算手段41bは、配置平面52のうち、最もノズル24に近接している(表面が高い)配置平面52gを代表平面521として選択する。演算装置41は、配置平面52gと平行で、かつ、配置平面52gから噴口離間距離Lだけ離間した面を作業平面55として演算する。
【0103】
ノズル24の座標58を演算するステップS7について詳細に説明する。
図10に示すように、座標演算手段41cは、C軸座標が0[°]のときのノズル24の噴射方向を示すベクトル63から、配置平面52に垂直であって、配置平面52に向かうように、噴流ベクトル14の向きを演算する。このとき、噴流ベクトル14のC軸の方向に沿った角度C1をC軸座標として演算する。位置座標記憶手段47eは、この角度C1をC軸座標として記憶する。
【0104】
座標演算手段41cは、座標58(58f,58g,58h,58i)を始点とする噴流ベクトル14の延長線32が、図心57fを通過し、かつ、座標58が作業平面55を通過するように、座標58f、58g・・・の座標をそれぞれの開口縁部51f、51g・・・に対応して演算する。位置座標記憶手段47eは、演算した座標58を記憶する。
【0105】
ここで、
図9、
図10において、噴流ベクトル14がZ方向成分を有していたときにも、同様に適用できる。このときは、座標演算手段41cは、噴流ベクトル14が配置平面52に垂直にC軸座標C1を決定することに替えて、噴流ベクトル14のXY平面への正投影ベクトルが、配置平面52と、XY平面との交線に垂直になるように、C軸座標C1を決定できる。
【0106】
図11は、ノズル24の噴流ベクトル14は、Z方向成分を有していないが、配置平面52mは、Z軸に対して傾斜しているときにおける、ノズル24の運動プログラム作成方法を模式的に表現した図である。
【0107】
座標演算手段41cは、噴流ベクトル14が、代表平面521である配置平面52mと、XY平面522との交線523に垂直になるように、C軸座標C1を演算できる。このように演算された作業平面55とC軸座標C1を利用すれば、合理的にノズル24の座標58(58m,58n,58p,58q)を決定できる。
【0108】
洗浄装置10が、配置平面52mと噴流ベクトル14とを垂直になるように被洗浄物17の姿勢を取り得る場合であっても、被洗浄物17の姿勢変更に時間を要するためにその姿勢を取ることが不合理であるときがある。このとき、作業対象部位の開口縁部51の配置平面52mがZ軸から若干量傾斜している場合に、配置平面52mのZ軸からの傾きを捨象して、Z方向から投影したときに、配置平面52mと噴流ベクトル14とが垂直であれば、噴流ベクトル14に沿って噴出する噴流は、作業対象部位の開口縁部51内にスムーズに導入され、内部を洗浄できる。
【0109】
このときにおいて、噴流ベクトル14がZ軸に対して傾斜しており、配置平面52mと垂直になる場合には、上述の方法によれば、噴流ベクトル14と配置平面52mが垂直になる。
【0110】
座標演算手段41cは、ある回転軸18に対して噴流ベクトル14の向きを回転できるノズル24において、その回転軸18の方向から投影したときに、回転軸18と垂直な平面と、配置平面52mとの交線に対して、噴流ベクトル14が垂直になるようにノズル24の向きを演算できる。本実施形態では、ノズル24の向きは、C軸座標C1として演算される。
【0111】
ここで、座標演算手段41cは、噴流ベクトル14と配置平面52mとのなす角度α(
図11参照)を算出できる。角度αが洗浄作業に適切と判断される許容角度範囲から逸脱する場合に、演算装置41は、表示装置43等を介して、ユーザーに警告を発しえる。この場合において、許容角度範囲は、パラメータ記憶手段47fに収納され得る。
【0112】
(作用効果)
本実施形態の運動プログラムの作成方法は、座標58を演算するステップS7は、噴流ベクトル14が代表平面521に対して垂直になり、かつ、噴流ベクトル14が代表平面521に向かうように、座標58を演算する。
【0113】
ノズル24のC軸座標の変化により、ノズル24の取付位置に対する噴流ベクトル14の方向が変わる。噴流は、作業対象部位に対して、その開口縁部51の配置平面52に対して垂直に噴射されることが望ましい。本実施形態によれば、開口縁部51が含まれる配置平面52に対して、噴流ベクトル14が垂直になるように、座標58を演算するため、洗浄に適した運動プログラムを作成できる。
【0114】
(変形例1)
図12を参照して、第2実施形態の変形例1について説明する。噴流ベクトル14が作業対象部位である開口縁部51の含まれる配置平面52の垂直方向から傾くように、座標58が演算されても良い。ユーザーは、開口縁部51の正面に噴流を遮断する障害物161が存在するときには、噴流ベクトル14を配置平面52から傾ける洗浄方法を採用できる。このとき、本変形例が利用できる。本変形例では、配置平面52k、作業平面55がZ軸に平行であり、かつ、噴流ベクトル14がZ方向成分を有しない場合における、座標演算ステップS7を説明する。
【0115】
図12は、Z方向から投影した、被洗浄物17、作業平面55、ノズル24の座標58kを表す模式図である。
【0116】
座標演算手段41cは、図心57k、及び開口縁部51kの配置平面52kに平行な作業平面55を、上述の方法と同様に決定する。演算装置41は、配置平面52kに垂直で、かつ、図心57kを通過する仮想線61を演算する。次いで、演算装置41は、仮想線61と作業平面55との交点60の座標を演算する。
【0117】
ユーザーは、交点60を通過するXY平面上でかつ、作業平面55上における、交点60からのオフセット量L2を、入力装置42を介してCAMシステム40に入力する。オフセット量L2の符号は、任意に取決めできる。例えば噴流ベクトル14に沿ってZ方向正方向から向かって右側を正として入力しえる。パラメータ記憶手段47fは、オフセット量L2を記憶する。
【0118】
座標演算手段41cは、図心57kと、交点60とをXY平面に投影した図面において、配置平面52kと作業平面55との距離L1を演算する。演算装置41は、交点60を通るXY平面と作業平面55との交線上でオフセット量L2ずらした座標58kを演算する。演算装置41は、座標58kを、ノズルの位置として決定する。演算装置41は、噴流ベクトル14と仮想線61との間の角βを、次式により演算する。
β=tan
−1(L2/L1) (式1)
【0119】
座標演算手段41cは、式1で決定された角βと、仮想線61とC軸座標が0[°]のときのベクトル63の向きとの角度C1(
図10参照)とを加算して、ノズル24のC軸座標を演算する。位置座標記憶手段47eは、ノズルの座標58kとC軸座標とを合わせて、開口縁部51kに対するノズル座標として記憶する。
【0120】
上記の方法によれば、実際の洗浄装置10において、配置平面52kに垂直な方向(仮想線60の方向)から噴射された噴流が、障害物161によって遮断されるときに、演算装置41は、障害物161を避ける方向から噴射するためのノズル24の位置および姿勢を、演算できる。
【0121】
なお、ユーザーは、オフセット量L2を入力することに替えて、角度βをCAMシステム40に入力できる。記憶装置47は、角度βを記憶する。演算装置41は、角度β、距離L2に対応して、次式の関係により、オフセット量L2を求め、座標58kを演算する。
L2=L1tanβ (式2)
【0122】
なお、噴流ベクトル14がZ方向成分を有しているときについては、座標演算手段41cは、噴流ベクトル14の延長線32が図心57kを通過し、噴流ベクトル14のXY平面への正投影ベクトルと配置平面52kが垂直になるように、交点60を演算する。そして、交点60から、XY平面上でかつ作業平面55上にオフセット量L2ずらした点をノズル24の座標58kとする。これらの位置を正投影した図形上で、上述の式1に基づいてC軸座標C1を演算できる。
【0123】
「第3実施形態」
(制御対象)
図13を参照して、オフセットノズルであるノズル23について説明する。ノズル23は、スピンドル13と、ブロック23aと、軸部23bとで構成される。噴口28は、軸部23bの先端に設けられている。噴流31aは、噴口28からZ方向に平行に噴出する。ノズル23は、回転軸18を中心に回転し、角度割出される。ノズル23は、回転軸18の方向から見たときに、基準点27が、回転軸18からオフセット距離LOだけ離間している。噴流ベクトル14は、Z軸に平行に設けられている。ノズル23は、座標原点においては、X軸方向にオフセットするように取付けられている。
【0124】
図14を参照して、オフセットベクトル71は、機械座標原点にあるノズル23oにおける、基準点27を始点とし、回転軸18の中心を終点とするベクトルとして与えられる。例えば、ノズル23においては、オフセットベクトル71は、(X,Y,Z,A,C)=(−LO,0,0,0,0)である。ノズルモデルM1は、ノズルの3次元形状モデル、オフセットベクトル71、噴流ベクトル14、基準点27によって、構成される。
【0125】
(運動プログラムの作成方法)
図14を参照して、座標58を演算するステップS7について説明する。演算装置41は、第1実施形態と同様に、C軸座標を除く、基準点27の位置座標58を演算する。ユーザーは、入力装置42を介して、それぞれの開口縁部51に対してC軸座標を入力する。このとき、演算装置41は、ある開口縁部51に対して、その開口縁部51の選択順序の1手前の開口縁部と同じ値を、初期設定値として与えても良い。位置座標記憶手段47eは、入力されたC軸座標Csを、それぞれの開口縁部に対応する座標58のC軸座標として格納する。
【0126】
座標演算手段41cは、それぞれの開口縁部51に対して、オフセットベクトル71をC軸座標Cs回転させたときのオフセット量を演算する。この場合においては、割出角度がCsのとき、オフセット量OFは、
OF(X,Y,Z,A,C)=(−LOcosCs,−LOsinCs,0,0,0)
と演算される。
【0127】
経路を作成するステップS8について説明する。
経路作成手段41dは、回転軸18がオフセット座標58s1を通過するように経路59を作成する。オフセット座標58s1は、基準点の座標58sとオフセット量OFの和で与えられる。
【0128】
運動プログラムを作成するステップS9について説明する。運動プログラム作成手段41fは、運動プログラムを、C軸座標を含む座標58に基づいて作成できる。この場合、C軸座標を変更する座標58への移動指示のプログラム行の直前に、座標オフセット量OFだけ、位置座標をオフセットする命令を挿入する。つまり、プログラムの記載は、オフセットを行わない基準点の座標58sに基づいて行われる。そして、C軸座標Csの変更に伴って、座標58sへの移動指令の直前に、座標オフセット量の入力命令を挿入する。
【0129】
以上のように構成すれば、ノズル23の基準点27の位置に対応した運動プログラムが作成できる。運動プログラムのそれぞれの行が、噴口28の位置を直接指示している。プログラムを目にしたユーザーは、運動プログラムの記載が基準点27に基づいているため、その行の基準点位置を把握しやすい。半面、座標はC軸が移動する(ノズル角度が割り出される)たびに、オフセットされるため、実質的なワーク座標原点位置が不明瞭となる。
【0130】
なお、運動プログラム作成手段41fは、上述の説明に替えて、回転軸18の移動軌跡に基づいて運動プログラムを作成してもよい。即ち、運動プログラム作成手段41fは、運動プログラムを、基準点27の座標58sとオフセット量OFの和に基づいて作成できる。このときは、オフセット量OFは、移動指令値に組込まれてしまうため、ワーク座標原点がオフセットすることはない。
【0131】
(作用効果)
本実施形態によれば、回転軸18の方向から見て回転軸18からオフセットした位置に、噴口28の位置を示す基準点27が設けられているノズル23に対して、回転軸18の割出し角度Cs及びオフセット量OFに基づいて適切な座標を演算できる。
【0132】
ノズル23の使用により、洗浄装置10のストロークSX,SYを超えた位置に作業対象部位の開口縁部51が存在する場合であっても、オフセット方向をストロークからはみ出す方向に向けることで、実質的なストロークを増加させることができる。本実施形態は、このようなノズル23を使用する場合における、運動プログラムを容易に、正確に作成する方法を提供する。
【0133】
なお、本実施形態では、下向き噴射のオフセットノズルについて説明したが、横向き噴射のオフセットノズルについても同様に適用できる。
【0134】
以上、複数の実施形態について説明したが、選択したノズルの種類に応じて、これらの実施形態を使い分けできるように、CAMシステム40を構成できる。また、ユーザーは、一つの被洗浄物上17の開口縁部51を、複数のグループに分けて、各グループ毎に運動プログラムを作成できる。このときに、CAMシステム40は、各グループ毎に上述の実施形態のいずれかを用いて運動プログラムを作成し、各グループの運動プログラムを結合して、一つの運動プログラムを作成するよう、構成できる。