説明

レーザ加工装置及びレーザ加工方法

【課題】 加工対象物の表面のプロファイル(外形)が半径方向に様々に変化していても、加工対象物を高精度でレーザ加工する。
【解決手段】 レーザ加工装置は、加工対象物10をセットするテーブル21と、加工対象物10にレーザ光を照射して加工対象物10をレーザ加工する加工ヘッド31を有する。テーブル21は、スピンドルモータ22により回転駆動されるとともに、フィードモータ23により半径方向に駆動される。加工ヘッド31は、上下位置及び傾きを変更可能にヘッド駆動装置30により支持されている。コントローラ60は、加工対象物10の半径方向におけるプロファイルを表すプロファイルデータを用いて、第1及び第2モータ35,36を制御して、加工対象物10に対する加工ヘッドの高さ及び傾きを調整する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、加工対象物にレーザ光を照射して加工対象物をレーザ加工するレーザ加工装置及びレーザ加工方法に関する。
【背景技術】
【0002】
従来から、加工対象物を回転させながら、加工ヘッドからのレーザ光を加工対象物に照射し、加工対象物の表面に微細なピット、溝又は反応跡を形成するレーザ加工装置はよく知られている。この種のレーザ加工装置においては、回転に伴って上下に変動する加工対象物の面ぶれに対処するため、例えば下記特許文献1に示されているように、加工対象物からの反射光を用いて、光ディスクにおけるデータの記録及び再生時のようなフォーカスサーボ制御を行い、レーザ光が常に加工対象物の表面に合焦するようにしている。
【特許文献1】特開2001−243663号公報
【発明の開示】
【0003】
前記従来のレーザ加工装置においては、加工対象物の表面が光ディスクの原盤のようにほぼ平面である場合には、フォーカスサーボ機能を充分に発揮させることができる。しかし、半径方向に様々に変化する表面プロファイル(外形)を有する加工対象物をレーザ加工する場合、加工対象物の表面の高さにおける変化範囲がフォーカスサーボ制御におけるレーザ光の焦点の変化範囲を越えることもある。このような場合には、レーザ光を加工対象物の表面に常に合焦させることはできず、レーザ加工の精度が悪化する。また、半径方向に様々変化する表面プロファイルにより、レーザ光が加工対象物の表面に対して垂直に照射されず、すなわちレーザ光の光軸が表面プロファイルの接線方向に対して垂直にならず、高精度な加工を期待できないという問題もある。さらには、半径方向に様々に変化する表面プロファイルにより、表面プロファイルの接線方向と光加工ヘッドの移動方向が一致しなくなり、設定された半径方向の加工ピッチで加工対象物をレーザ加工できなくなり、高精度な加工を期待できないという問題もある。
【0004】
本発明は、上記問題に対処するためになされたもので、その目的は、半径方向に様々に変化する表面プロファイル(外形)を有する加工対象物をレーザ加工する場合でも、高精度な加工を実現するレーザ加工装置及びレーザ加工方法を提供することにある。
【0005】
前記目的を達成するために、本発明の特徴は、加工対象物をセットするテーブルと、テーブルにセットされた加工対象物にレーザ光を照射して加工対象物をレーザ加工する加工ヘッドと、テーブルを回転させる回転装置と、加工ヘッドをテーブルに対して相対的にテーブルの半径方向に移動させる半径方向送り装置とを備えたレーザ加工装置において、加工対象物の半径方向におけるプロファイルを表すプロファイルデータに基づいて、加工対象物に対する加工ヘッドの高さ及び傾きのうちの少なくとも一方を調整するヘッド調整手段を設けたことにある。
【0006】
前記のように構成したレーザ加工装置においては、ヘッド調整手段が、加工対象物のプロファイルに応じて、加工対象物に対する加工ヘッドの高さ及び/又は傾きを調整する。これにより、加工ヘッドから出射されるレーザ光の焦点位置を加工対象物の表面に常に合わせ、又はレーザ光の光軸を加工対象物の表面に対して常に垂直に保つ。したがって、加工対象物表面のプロファイル(外形)が半径方向に様々に変化していても、加工対象物はレーザ光により高精度で加工される。
【0007】
また、本発明の他の特徴は、さらに、プロファイルデータに基づいて、半径方向送り装置によるテーブルに対する加工ヘッドの相対的な半径方向の移動速度を補正する移動速度補正手段を設けたことにある。これによれば、加工対象物における半径方向の表面プロファイルの接線方向が加工ヘッドの移動方向に対して傾いている場合には、移動速度補正手段が加工ヘッドのテーブルに対する移動速度を補正するので、加工対象物における半径方向の表面プロファイルの接線方向に対して常に一定速度でレーザ光を移動させることができる。その結果、設定された半径方向の加工ピッチで加工対象物をレーザ加工することができる。
【0008】
また、本発明の他の特徴は、プロファイルデータは、加工対象物の設計時に予め用意されているデータ又は加工対象物の設計時に予め用意されているデータに基づいて生成されるデータであり、さらに加工対象物の設計時に予め用意されているデータを取得して、前記取得したデータをプロファイルデータとし、又は前記取得したデータからプロファイルデータを生成する第1のプロファイルデータ取得手段を設けたことにある。これによれば、加工対象物の設計時にプロファイルデータに関係したデータが用意されている場合には、同データが有効に利用されて、プロファイルデータに基づいた調整や補正を行う上記レーザ加工が迅速に行われる。
【0009】
また、本発明の他の特徴は、さらに、加工対象物の3次元形状を測定して3次元形状を表す3次元形状データを取得する3次元形状測定装置と、3次元形状測定装置によって取得された3次元形状データに基づいて、加工対象物の半径方向のプロファイルを表わすプロファイルデータを生成して取得する第2のプロファイルデータ取得手段とを設けたことにある。これによれば、加工対象物のプロファイルデータが予め用意されていなくても、3次元形状測定装置により取得された3次元形状データに基づいてプロファイルデータが生成され得るので、プロファイルデータに基づいた調整や補正を行う高精度なレーザ加工が実現される。
【0010】
また、本発明の他の特徴は、3次元形状測定装置が、テーブルに対して位置が固定され、加工対象物をテーブルにセットした状態で、加工対象物の3次元形状を測定することにある。これによれば、加工対象物の3次元形状測定もレーザ加工の一連の工程の中で行われるので、加工対象物のプロファイルデータが予め用意されていない場合におけるレーザ加工の作業効率が良好となる。
【0011】
また、本発明の他の特徴は、第2のプロファイルデータ取得手段が、加工対象物の複数の異なる周方向位置におけるプロファイルを平均して、加工対象物の半径方向におけるプロファイルを表わすプロファイルデータを取得することにある。これによれば、加工対象物の表面全体を考慮したプロファイルデータが生成されるので、プロファイルデータに基づいた調整や補正を行うレーザ加工をより高精度にすることが可能となる。
【0012】
さらに、本発明の実施にあたっては、加工対象物をレーザ加工するレーザ加工装置の発明に限定されることなく、加工対象物をレーザ加工するレーザ加工方法及び同レーザ加工方法を実現するコンピュータプログラムの発明としても実施し得るものである。
【発明を実施するための最良の形態】
【0013】
以下、本発明の一実施形態について図面を用いて説明すると、図1は、同実施形態に係るレーザ加工装置の全体概略図である。このレーザ加工装置は、加工対象物10を固定支持する支持部材としてのテーブル21と、加工対象物10に向けてレーザ光を照射して加工対象物をレーザ加工する加工ヘッド31とを備えている。テーブル21は、円形に形成されていて、スピンドルモータ22及びフィードモータ23によって駆動される。
【0014】
スピンドルモータ22は、その回転により、回転軸22aを介してテーブル21を回転駆動する。スピンドルモータ22内には、同モータ22すなわちテーブル21の回転を検出して、同回転を表す回転検出信号を出力するエンコーダ22bが組み込まれている。この回転検出信号は、テーブル21の回転位置が一つの基準回転位置に来るごとに発生されるインデックス信号Indexと、所定の微小な回転角度ずつハイレベルとローレベルを繰返すパルス列信号からなるとともに互いにπ/2だけ位相のずれたA相信号φA及びB相信号φBとからなる。回転検出信号は、スピンドルモータ制御回路41及び回転角検出回路42に供給される。スピンドルモータ制御回路41は、エンコーダ22bからの回転検出信号を用いてスピンドルモータ22の回転速度を計算し、コントローラ60の指示により、前記計算した回転速度がコントローラ60によって指定された回転速度に等しくなるようにスピンドルモータ22の回転を制御する。回転角検出回路42は、コントローラ60の指示により、スピンドルモータ22すなわちテーブル21の回転角を検出してコントローラ60に供給する。
【0015】
フィードモータ23は、スクリューロッド24を回転させて、テーブル21を半径方向に駆動する。スクリューロッド24は、その一端にてフィードモータ23の回転軸に一体回転するように連結され、その他端に支持部材25に固着されたナット(図示しない)に螺合している。支持部材25は、スピンドルモータ22を固定支持するとともに、テーブル21の径方向への移動のみが許容されている。したがって、フィードモータ23が回転すると、スピンドルモータ22、テーブル21及び支持部材25はスクリューロッド24及びナットからなるねじ機構により光ディスクDKの径方向に変位する。
【0016】
フィードモータ23内にも、フィードモータ23の回転を検出して、前記エンコーダ22bと同様な回転検出信号を出力するエンコーダ23aが組み込まれている。この回転検出信号は、半径位置検出回路43及びフィードモータ制御回路44に出力される。半径位置検出回路43は、エンコーダ23aからの回転検出信号をカウントするカウント回路を有し、このカウント回路のカウント値に基づいてレーザ光が照射されるテーブルの半径位置を検出して、半径位置を表す検出信号を出力する。なお、カウント回路の初期設定は、コントローラ60による指示により、フィードモータ制御回路44と協働して行われる。
【0017】
すなわち、コントローラ60は、初期において、フィードモータ制御回路44に支持部材25の初期位置への移動及び半径位置検出回路43に初期設定を指示する。この指示により、フィードモータ制御回路44は、フィードモータ23を回転させて支持部材25を初期位置に移動させる。なお、この初期位置は、フィードモータ23によって駆動される支持部材25の駆動制限位置である。半径位置検出回路43は、この支持部材25の移動中、エンコーダ23aからの回転検出信号を入力し続けている。そして、支持部材25が初期位置まで達してフィードモータ23の回転が停止すると、半径位置検出回路43はエンコーダ23aからの回転検出信号の入力停止を検出して、内蔵のカウント回路のカウント値を「0」にリセットする。このとき、半径位置検出回路43は、フィードモータ制御回路44に出力停止のための信号を出力し、これにより、フィードモータ制御回路44はフィードモータ23への駆動信号の出力を停止する。
【0018】
フィードモータ制御回路44は、コントローラ60の指示により、フィードモータ23を駆動制御して、レーザ光の照射位置をテーブル21の指定半径位置へ移動させたり、テーブル21を半径方向に指定速度で移動させる。具体的には、フィードモータ制御回路44は、コントローラ60によって指定される半径位置へのレーザ光の照射位置の移動が指示されたときには、半径位置検出回路43によって検出される半径位置を用いてフィードモータ23の回転を制御し、検出される半径位置がコントローラ60から指定された半径位置に等しくなるまでフィードモータ23を回転させる。また、フィードモータ制御回路44は、コントローラ60によって指定される移動速度でレーザ光の照射位置をテーブルの半径方向に移動させることが指示されたときには、エンコーダ23aからの回転検出信号からテーブル21の半径方向への移動速度を計算して、計算された移動速度がコントローラ60によって指定される移動速度に等しくなるようにフィードモータ23の回転を制御する。
【0019】
加工ヘッドは、レーザ光源、コリメートレンズ、偏光ビームスプリッタ、1/4波長板、対物レンズ、凸レンズ、シリンドリカルレンズ及び4分割フォトディテクタ、フォーカスアクチュエータなどを備え、レーザ光源からのレーザ光を加工対象物10に集光させるとともに加工対象物10からの反射光を受光する。レーザ光源は、コントローラ60によって作動制御される発光信号供給回路45及びレーザ駆動回路46によって駆動制御される。発光信号供給回路45は、コントローラ60からの加工模様を表すデータを入力して、同データに対応したパルス列信号をレーザ駆動回路46に供給する。レーザ駆動回路46は、コントローラ60によって制御されて、発光信号供給回路45からのパルス列信号に対応した駆動信号又は発光信号供給回路45とは無関係に初期駆動信号をレーザ光源に供給する。
【0020】
また、この加工対象物10に照射されたレーザ光による反射光は、4分割フォトディテクタに導かれて受光される。4分割フォトディテクタは、HF信号増幅回路47を介して4つの信号からなる受光信号をフォーカスエラー信号生成回路48に供給する。フォーカスエラー信号生成回路48は、4分割フォトディテクタにより検出されてHF信号増幅回路47にて増幅された受光信号に基づいて、フォーカスエラー信号を生成してフォーカスサーボ回路49に出力する。フォーカスサーボ回路49は、コントローラ60により指示されて、フォーカスエラー信号に基づいてフォーカスサーボ信号を生成し、ドライブ回路50に供給する。ドライブ回路50は、このフォーカスサーボ信号に応じて加工ヘッド31内のフォーカスアクチュエータを駆動制御して、レーザ光が加工対象物10の表面で合焦するように制御する。なお、フォーカスアクチュエータは、加工ヘッド31内に設けられて対物レンズを光軸方向に変位させるものである。
【0021】
加工ヘッド31は、図示しない支持機構によってテーブル21の上方に固定されたヘッド駆動装置30に組み付けられている。ヘッド駆動装置30は、枠体32に上下方向にのみ変位可能に支持された第1支持部材33と、第1支持部材33に紙面垂直方向を軸線とする軸線回りに回転可能に支持された第2支持部材34とを備えている。加工ヘッド31は、第2支持部材34に組み付けられて固定されている。ヘッド駆動装置30は、第1モータ35及び第2モータ36を有する。第1モータ35は、ボールねじ機構を介して、その回転により第1支持部材33を枠体32に対して上下に変位させる。第2モータ36は、歯車機構を介して、その回転により第2支持部材34を第1支持部材33に対して紙面垂直軸線回りに回転させる。第1及び第2モータ35,36内には、エンコーダ35a,36aが組み込まれている。エンコーダ35a,36aは、前記エンコーダ22b,23aと同様な回転検出信号を出力する。
【0022】
エンコーダ35aには高さ検出回路51が接続され、第1モータ35には第1モータ制御回路52が接続されている。高さ検出回路51は、エンコーダ35aからの回転検出信号をカウントするカウント回路を有し、このカウント回路のカウント値に基づいて加工ヘッド31の上下方向の高さを表す検出信号を出力する。なお、カウント回路の初期設定は、コントローラ60による指示により、第1モータ制御回路52と協働して行われる。具体的には、コントローラ60は、初期において、第1モータ制御回路52に加工ヘッド31の初期位置への移動及び高さ検出回路51の初期設定を指示する。この指示により、第1モータ制御回路52は、第1モータ35を回転させて加工ヘッド31を初期位置に移動させる。なお、この初期位置は、第1モータ35によって駆動される加工ヘッド31の駆動制限位置である。高さ検出回路51は、この加工ヘッド31の移動中、エンコーダ35aからの回転検出信号を入力し続けている。そして、加工ヘッド31が初期位置まで達して第1モータ35の回転が停止すると、高さ検出回路51はエンコーダ35aからの回転検出信号の入力停止を検出して、内蔵のカウント回路のカウント値を「0」にリセットする。このとき、高さ検出回路51は、第1モータ制御回路52に出力停止の信号を出力し、これにより、第1モータ制御回路52は第1モータ35への駆動信号の出力を停止する。
【0023】
第1モータ制御回路52は、コントローラ60の指示により、第1モータ35を駆動制御して、加工ヘッド31を上下に移動する。具体的には、第1モータ制御回路52は、コントローラ60によって指定される高さへの加工ヘッド31の移動が指示されたとき、高さ検出回路51によって検出される高さを用いて第1モータ35の回転を制御し、検出される高さがコントローラ60から指定された高さに等しくなるまで第1モータ35を回転させる。
【0024】
エンコーダ36aには角度検出回路53が接続され、第2モータ36には第2モータ制御回路54が接続されている。角度検出回路53は、エンコーダ36aからの回転検出信号をカウントするカウント回路を有し、このカウント回路のカウント値に基づいて紙面垂直方向の軸線周りの加工ヘッド31の角度を表す検出信号を出力する。なお、カウント回路の初期設定は、コントローラ60による指示により、第2モータ制御回路54と協働して行われる。具体的には、コントローラ60は、初期において、第2モータ制御回路54に加工ヘッド31の初期位置への移動及び角度検出回路53の初期設定を指示する。この指示により、第2モータ制御回路54は、第2モータ36を回転させて加工ヘッド31を初期位置に回転移動させる。なお、この初期位置は、第2モータ36によって駆動される加工ヘッド31の駆動制限位置である。角度検出回路53は、この加工ヘッド31の移動中、エンコーダ36aからの回転検出信号を入力し続けている。そして、加工ヘッド31が初期位置まで達して第2モータ36の回転が停止すると、角度検出回路53はエンコーダ36aからの回転検出信号の入力停止を検出して、内蔵のカウント回路のカウント値を「0」にリセットする。このとき、角度検出回路53は、第2モータ制御回路54に出力停止の信号を出力し、これにより、第2モータ制御回路54は第2モータ36への駆動信号の出力を停止する。
【0025】
第2モータ制御回路52は、コントローラ60の指示により、第2モータ36を駆動制御して、加工ヘッド31を紙面垂直軸線回りに回転させる。具体的には、第2モータ制御回路54は、コントローラ60によって指定される角度位置への加工ヘッド31の回転が指示されたとき、角度検出回路53によって検出される角度を用いて第2モータ36の回転を制御し、検出される角度がコントローラ60から指定された角度に等しくなるまで第2モータ36を回転させる。
【0026】
コントローラ60は、CPU、ROM、RAM、ハードディスクなどの不揮発性メモリなどからなるコンピュータによって構成されており、キーボード、マウスなどからなる入力装置61からの指示に従って、プログラムを実行することにより、レーザ加工装置を作動させる。また、コントローラ60には、作動指示及び作動状況を作業者に対して視覚的に知らせるための表示装置62も接続されている。
【0027】
また、コントローラ60には、3次元形状測定装置70も接続されている。3次元形状測定装置70は、図示しない支持機構に固定されて、テーブル21の上方位置にてヘッド駆動装置30と並設されている。この3次元形状測定装置70は、レーザ光で加工対象物の外表面を走査し、すなわち加工対象物の外表面の微小領域にレーザ光を順次照射し、前記外表面からの反射光に基づいて外表面の各微小領域までの距離を検出することにより、外表面の形状を表す3次元形状データ(点群データ)を生成する。なお、この3次元形状測定装置70によって測定された3次元形状データは、3次元形状測定装置70のいずれかの定点を原点とした3次元座標系による座標値として表される。
【0028】
次に、上記のように構成したレーザ加工装置の動作を説明する。まず、作業者は、レーザ加工装置の図示しない電源をオンして、コントローラ60の作動を開始させる。コントローラ60は、メインプログラムの実行を図2AのステップS10にて開始する。
【0029】
このプログラムの実行開始後、コントローラ60は、ステップS11にて、表示装置62を用いて、加工対象物10の加工に必要なデータの入力を作業者に促す。作業者は、入力装置61を用いて、半径方向の加工ピッチ、回転方向の加工模様(例えば、微細ピットを一定間隔で作成する場合には回転方向の加工ピッチ)、テーブル21の回転の線速度、レーザ加工開始半径位置、レーザ加工終了半径位置などを表すデータをコントローラ60に入力する。コントローラ60は、これらの入力されたデータを記憶する。なお、これから加工する加工対象物10を以前のデータを用いて加工する場合には、このステップS11の処理は不要となる。
【0030】
次に、コントローラ60は、ステップS12にて、半径位置検出回路43、フィードモータ制御回路44、高さ検出回路51、第1モータ制御回路52、角度検出回路53及び第2モータ制御回路54に、半径位置、高さ及び角度の初期設定処理のための動作を指示する。この指示により、前記回路43,44,51〜54は、前述した初期設定動作を実行することにより、テーブル21及び加工ヘッド31を初期位置に位置させるとともに、半径位置検出回路43、高さ検出回路51及び角度検出回路53内の、半径位置、高さ及び角度を検出するためのカウント値をそれぞれ初期値「0」にリセットする。以降、半径位置検出回路43、高さ検出回路51及び角度検出回路53は、このカウント値に基づいて、テーブル21の半径位置、加工ヘッド31の高さ及び加工ヘッド31の角度を表す検出信号を出力する。
【0031】
次に、コントローラ60は、ステップS13にて、フィードモータ制御回路44に対してテーブル21を初期半径位置に移動することを指示する。フィードモータ制御回路44は、半径位置検出回路43から入力される半径位置検出信号が、テーブル21がコントローラ60によって指示された初期半径位置に等しくなるまでフィードモータ23を回転させる。初期半径位置は、図5に示すように、3次元形状測定装置70がテーブル21の回転中心位置の上方に来る位置である。このステップS13の処理により、テーブル21はこの位置まで移動する。この状態で、作業者は加工対象物10をテーブル21上にセットする。
【0032】
次に、コントローラ60は、表示装置62を用いて、加工対象物10の3次元形状測定の必要性を作業者に問う。3次元形状の測定処理は、レーザ加工におけるテーブル21の移動速度、加工ヘッド31の高さ及び傾き角度の調整のために、加工対象物10のプロファイルデータを取得するための処理である。なお、このプロファイルデータは、加工対象物10の非加工面(テーブル21にセットした状態では下面)の高さを「0」とする、加工対象物10の上面形状を表す半径方向のデータPD(n)であり、後述するプロファイル取得ルーチンの説明で詳述する。この場合、加工対象物10を設計した際の設計データとしてプロファイルデータが既に存在している場合には、作業者は3次元形状の測定不要を指定する。一方、前記プロファイルデータが存在しない場合には、作業者は3次元形状の測定を指定する。
【0033】
3次元形状の測定不要を指定した場合、コントローラ60は、ステップS15にて「No」と判定して、ステップS16に進む。ステップS16においては、コントローラ60は、表示装置62を用いて、作業者にプロファイルデータの入力を指示する。この種のプロファイルデータは、通常、コントローラ60のハードディスクなどの不揮発性メモリ又は外部記憶装置に記憶されている。したがって、作業者は、前記不揮発性メモリ又は外部記憶装置に記憶されているプロファイルデータのファイル名(例えば、加工対象物10を指定する識別データ)を、入力装置61を用いて指定する。このファイル名の指定により、コントローラ60は、指定されたプロファイルデータを読み出して、RAMなどに書き込む。
【0034】
なお、前記プロファイルデータの取得においては、加工対象物10の設計データに基づくプロファイルデータが、加工対象物10を平板上に置いたとき、加工対象物10の中心軸と平板の交点を原点とし、方向が平板の面上にあるx座標軸と前記座標軸に垂直なy座標軸との2つの座標軸において、x,y座標値で表される複数の高さデータ又はy=f(x)の関係曲線の式として用意されている場合には、単にプロファイルデータを入力するだけでよい。しかし、設計データ又は設計データに基づくプロファイルデータが直接利用できない場合には、前記プロファイルデータの取得の際に、設計データ又は設計データに基づくプロファイルデータが、加工対象物10の中心軸近傍に座標軸の原点があるx,y座標値で表される複数のデータ又はy=f(x)の関係曲線の式にされ、さらに後述する3次元形状データの座標変換と同様の座標変換により、前記複数のデータ又は関係曲線の式が、加工対象物10を平板上に置いたとき、加工対象物10の中心軸と平板の交点を原点とし、方向が平板の面上にあるx座標軸と前記座標軸に垂直なy座標軸との2つの座標軸により表される複数のデータ又は関係曲線の式に座標変換されることで、利用され得るプロファイルデータに変換される。
【0035】
一方、作業者が3次元形状の測定を指定した場合には、コントローラ60は、ステップS15にて、「Yes」と判定して、ステップS17にて3次元形状測定装置70に加工対象物10の3次元形状の測定を指示する。3次元形状測定装置70は、前記測定指示に応答して、加工対象物10の上面の3次元形状を測定して、同3次元形状を表す3次元形状データ(点群データ)を取得して、コントローラ60に供給する。コントローラ60は、供給された3次元形状データをRAMなどの記憶装置に書き込む。なお、この3次元形状データは、3次元形状測定装置70のいずれかの定点を原点とした3次元座標系による座標値として表されている。この3次元座標系を、以降、3次元形状測定装置70の座標系M(図6参照)という。
【0036】
前記ステップS17の処理後、コントローラ60は、ステップS18にてプロファイル取得ルーチンを実行する。プロファイル取得ルーチンは、図3に詳細に示されており、その実行がステップS100にて開始される。コントローラ60は、ステップS101にて、3次元形状測定装置70の座標系Mによる3次元形状データを、基準座標系Sによる3次元形状データに座標変換する。基準座標系Sは、図6に示すように、テーブル21の中心に座標原点があり、Z軸がテーブル21の平面に垂直である座標系である。座標系Mの3次元形状データを基準座標系Sの3次元形状データに座標変換するための座標変換関数Fは予め取得されてコントローラ60の光ディスクなどの不揮発性メモリに記憶されている。なお、この座標変換関数Fの取得方法の一例に関しては、後述する。
【0037】
前記ステップS101の処理後、コントローラ60は、ステップS102にて変数m,nをそれぞれ「0」に初期設定する。変数mは、図7に示すように、基準座標系SのX,Y座標軸をZ軸回りに所定角度θずつ回転させた回転座標系R(m)を指定するものである。図7においては、回転座標系R(0),R(1),R(2)を、X’−Y’座標、X’’−Y’’座標、X’’’−Y’’’座標として示している。変数nは、図8に示すように、回転座標系R(m)における原点及び原点からX軸方向に所定距離Bずつ外側に向かった半径方向位置を指定するものである。
【0038】
前記ステップS102の処理後、コントローラ60は、ステップS103にて、前記変換された基準座標系Sの3次元形状データを、m・θだけ回転させた回転座標系R(m)の3次元形状データに変換する。θは、予め決められた所定の正の値であり、例えば20度、30度程度の値である。この場合、基準座標系Sによる座標を(xs,ys,zs)とし、回転座標系R(m)による座標を(xr,yr,zr)とし、かつ回転角θはテーブル21を上方から見て左回りを正とする。座標変換は、下記数1の演算の実行により行われる。なお、最初のステップS103の処理においては、m=0であるので、m・θ=0であり、基準座標系Sの3次元形状データは実質的には変換されない。
【数1】

【0039】
次に、コントローラ60は、ステップS104にて、前記ステップS103で変換された全ての3次元形状データの中から、Y座標値の絶対値が予め決めた極小値A以下である3次元形状データ(点群データ)D(x,y,z)を抽出する。図8は、前記ステップS104の処理により抽出される点群データが属する領域を誇張して点模様で示している。この処理は、X−Z平面の近傍付近の点群データを抽出することを意味する。言い換えれば、加工対象物をX−Z平面で切断したときの断面を表す点群データを抽出することを意味する。
【0040】
次に、コントローラ60は、ステップS105にて、前記抽出した点群データD(x,y,z)の中から、値(X座標値−n・B)が正である最小のデータD(xc,yc,zc)と、値(X座標値−n・B)が負である最小のデータD(xe,ye,ze)とを抽出する。この抽出は、図9(A)に示すように、中心位置r0及び同中心位置r0から半径方向外側に距離Bずつ離れた位置r1,r2,r3,・・を挟む最も近い位置の点群データの取出しを意味する。最初、変数nは「0」に設定されているので、中心位置r0を挟む最も近い位置の2つのデータD(xc,yc,zc),D(xe,ye,ze)を抽出することになる。
【0041】
次に、コントローラ60は、ステップS106にて、下記数2の演算の実行により、2つのデータD(xc,yc,zc),D(xe,ye,ze)を用いて、前記2つのデータにより特定される2つの点を結ぶ直線上の点であって、前記距離Bずつ離れた半径位置に対応した点のZ座標値Z(m,n)を補間法により計算して、RAM内に記憶する(図9(B)参照)。このZ座標値Z(m,n)は、加工対象物10の中心位置r0及び同中心位置r0から半径方向外側に距離Bずつ離れた位置r1,r2,r3,・・の高さを表す。ただし、最初、変数nは「0」であるので、加工対象物10の中心位置r0の高さを表す。
【数2】

【0042】
前記ステップS106の処理後、コントローラ60は、ステップS107にて変数nに「1」を加算して、ステップS108の判定処理を実行する。この判定処理においては、前記ステップS104の処理によって抽出した点群データD(x,y,z)中に、X座標値が値n・B以上であるデータが存在するかが判定される。この判定処理は、値n・Bによって表される半径位置又はその外側に点群データD(x,y,z)が存在するか、言い換えれば加工対象物10の半径方向の外側端が前記半径位置n・Bよりも大きいかを判定するものである。前記データが存在すれば、コントローラ60は、ステップS108にて「Yes」と判定して、ステップS105に戻り、ステップS105〜S108の処理を再び実行する。このステップS105〜S108の処理により、変数nが「1」ずつ増加され、値n・Bによって表される複数の半径位置のZ座標値(加工対象物10の高さ)Z(m,0),Z(m,1),Z(m,2)・・が計算される。
【0043】
変数nの増加により、前記X座標値が値n・B以上である点群データが存在しなくなると、コントローラ60は、ステップS108にて「No」と判定して、ステップS109にて変数mに「1」を加算して、ステップS110の判定処理を実行する。ステップS110においては、値m・θが360度未満であるかが判定される。これは、角度θずつの座標軸の回転が1回転したかを判定するものである。
【0044】
値m・θが360度未満であれば、コントローラ60は、ステップS110にて「Yes」と判定して、ステップS111にて変数nを初期値「0」に戻して、ステップS103〜S110からなる処理をふたたび実行する。これらのステップS103〜S110からなる処理の繰り返しにより、変数mによって指定される回転座標系R(0),R(1),R(2)・・におけるX−Z平面近傍の点群データD(x,y,z)がそれぞれ抽出されるとともに、これらの点群データD(x,y,z)を用いて、回転座標系R(0),R(1),R(2)・・におけるX−Z平面の半径位置n・BごとのZ座標値Z(m,n)がそれぞれ計算される。
【0045】
値m・θが360度以上になると、コントローラ60は、ステップS110にて「No」と判定して、ステップS112にて変数nを初期値「0」に設定して、ステップS113〜S115の処理を実行する。ステップS113においては、コントローラ60は、変数n(0,1,2・・)によって指定されるZ座標値Z(m,n)を抽出し、前記抽出したZ座標値Z(m,n)の平均値を計算して、同平均値を、変数nによって指定される半径位置(中心位置及び中心位置から距離Bずつ離れた半径位置)の加工対象物10の高さを表すプロファイルデータPD(n)とする。この平均値の計算においては、前記抽出した全てのZ座標値Z(m,n)を合算して、同合算値を前記抽出した全てのZ座標値Z(m,n)の数で除算する。この計算されたプロファイルデータPD(n)は、RAMに記憶されるとともに、加工対象物10を表す識別データと共にハードディスクなどの不揮発性メモリに記憶される。なお、前記抽出した全てのZ座標値Z(m,n)の数は、通常は変数mの最大値よりも「1」だけ大きい数である。しかし、加工対象物10が完全な円形でない場合には、回転座標系R(m)ごとに最大半径が異なるので、変数nが大きな値である状態では、前記抽出した全てのZ座標値Z(m,n)の数は必ずしも変数mの最大値よりも「1」だけ大きい数とは限らない。
【0046】
ステップS114においては、コントローラ60は、変数nに「1」を加算する。ステップS115においては、コントローラ60は、変数nによって指定されるZ座標値Z(m,n)が存在するかを判定する。すなわち、前記ステップS106の処理によって計算されたZ座標値Z(m,n)中に、現在の変数nによって指定される半径位置に関するZ座標値が存在するかが判定される。前記Z座標値が存在する限り、コントローラ60は、ステップS115にて「Yes」と判定して、ステップS113〜S115の循環処理を繰り返し実行する。そして、変数nの増加により前記Z座標値が存在しなくなると、コントローラ60は、ステップS115にて「No」と判定して、ステップS116にてプロファイル取得ルーチンの実行を終了する。その結果、この状態では、中心位置及び同中心位置から距離Bずつの外側の半径位置(n=0,1,2・・)における加工対象物10の高さを表すプロファイルデータPD(n)がRAM及び不揮発性メモリに記憶されている。
【0047】
ふたたび、図2Aのプログラムの説明に戻り、コントローラ60は、ステップS16のプロファイルデータの入力又はステップS18のプロファイル取得ルーチンの実行後、コントローラ60は、ステップS19,S20の処理を実行する。ステップS19においては、コントローラ60は、前記ステップS11の処理によって入力したレーザ加工開始半径位置をフィードモータ制御回路44に供給して、フィードモータ制御回路44にテーブル21の移動を指示する。フィードモータ制御回路44は、半径位置検出回路43によって検出される半径位置を用いてフィードモータ23を制御して、検出される半径位置がコントローラ50によって指定されたレーザ加工開始半径位置になるまでテーブル21を移動する。
【0048】
ステップS20においては、コントローラ60は、半径位置検出回路43によって検出された半径位置rと前記ステップS11で入力した線速度とを用いて、スピンドルモータ22の回転速度を計算する。そして、コントローラ60は、前記計算した回転速度をスピンドルモータ制御回路41に出力して、スピンドルモータ22の回転を指示する。スピンドルモータ制御回路41は、エンコーダ22bからの回転検出信号に基づいて計算したスピンドルモータ22の回転速度を計算して、この計算した回転速度が前記コントローラから入力された回転速度に等しくなるように、スピンドルモータ22の回転を制御する。これにより、スピンドルモータ22は、レーザ光の照射位置の線速度が前記入力した線速度に等しくなる回転速度で回転し始める。
【0049】
前記ステップS19,S20の処理後、コントローラ60は、ステップS21にて、半径位置検出回路43によって検出されている半径位置rを入力して、同入力した半径位置r及びプロファイルデータPD(n)を用いて、加工ヘッド31の高さD及び傾きφを計算する。加工ヘッド31の高さDの計算においては、まず、プロファイルデータPD(n)の中から半径位置rの両隣の半径位置j−1,j(jは「0」又は正の整数)に対応した1対のプロファイルデータPD(j−1),PD(j)を抽出して、同抽出したプロファイルデータPD(j−1),PD(j)をZ座標値z(x1),z(x2)とする。この場合、値x1,x2は、プロファイルデータPD(j−1),PD(j)における変数j−1,jに対応した半径位置(X座標値)をそれぞれ表す。そして、下記数3の演算の実行により、補間法を用いて、半径位置rにおける加工対象物10のテーブル21からの高さHを計算する。なお、前記両隣のプロファイルデータPD(n)が存在せず、片方の隣りのプロファイルデータPD(n)のみが存在する場合には、前記片方のプロファイルデータPD(n)を高さHとする。
【数3】

次に、予め光ディスクなどの不揮発性メモリに記憶されていて、加工ヘッド31の初期高さ位置からレーザ光焦点がテーブル21の表面に合うまでの駆動距離Sから、前記計算した高さHを減算して加工ヘッド31の高さD(=S−H)を求める(図10参照)。
【0050】
加工ヘッド31の傾きφは、前記X座標値x1,x2及びZ座標値z(x1),z(x2)を用いた下記数4の演算の実行により計算される(図11参照)。なお、前記両隣のプロファイルデータPD(n)が存在せず、片方の隣りのプロファイルデータPD(n)のみが存在する場合には、傾きφを「0」とする。
【数4】

また、前記数4の演算の実行に代えて、半径位置rの両隣の2つ以上のプロファイルデータPD(n)を抽出し、最小2乗法により直線を求め、この直線の傾きを「a」とする。そして、tan-1aの演算により傾きφを計算するようにしてもよい。
【0051】
前記高さD及び傾きφの計算後、コントローラ60は、ステップS22にて、前記計算した高さD及び傾きφを第1及び第2モータ制御回路52,54にそれぞれ出力して、加工ヘッド31の高さ及び傾きの変更を第1及び第2モータ制御回路52,54に指示する。第1モータ制御回路52は、高さ検出回路51によって検出された高さを入力し、前記検出された高さがコントローラ60から供給された高さDに等しくなるように第1モータ35を駆動制御する。これにより、第1モータ35は、加工ヘッド31を上下方向に変位させて、加工ヘッド31の高さが前記コントローラ60から供給された高さDになるように制御する。第2モータ制御回路54は、角度検出回路53によって検出された角度を入力し、前記検出された角度がコントローラ60から供給された傾きφに等しくなるように第2モータ36を駆動制御する。これにより、第2モータ36は、加工ヘッド31を回転させて、加工ヘッド31の傾きが前記コントローラ60から供給された傾きφになるように制御する。その結果、レーザ光の焦点位置が加工対象物10の表面に移動するとともに、レーザ光の光軸が加工対象物10の半径方向の接線に対し垂直となる。
【0052】
前記ステップS22の処理後、コントローラ60は、ステップS23にて、レーザ駆動回路46にレーザ光の初期照射開始を指示する。レーザ駆動回路46は加工ヘッド31内のレーザ光源に電圧及び電流を供給し、レーザ光源はレーザ光を放射して加工対象物10にレーザ光を照射し始める。ただし、この場合のレーザ光源に対する供給電圧は低く、レーザ光源は、加工対象物10がレーザ光によって加工される強度よりも弱い強度のレーザ光を出射する。次に、コントローラ60は、ステップS24にて、フォーカスサーボ回路49にフォーカスサーボの開始を指示する。フォーカスサーボ回路49は、ドライブ回路50にフォーカス引き込み用の駆動信号を供給して加工ヘッド31内の対物レンズを上方及び下方に移動させて、フォーカスエラー信号生成回路48から供給されるS字信号のゼロクロス点を検出して、この時点から、フォーカスエラー信号生成回路48から供給される信号から作成したフォーカスサーボ信号をドライブ回路50に供給する。これにより、加工対象物10の上面にレーザ光が合焦され、これ以降、フォーカスサーボ回路49は、フォーカスエラー信号生成回路48からのフォーカスエラー信号から作成したフォーカスサーボ信号を用いて、ドライブ回路50を介して対物レンズを駆動し続ける。
【0053】
次に、コントローラ60は、ステップS25にて、テーブル21の半径方向の送り速度を計算する。前記ステップS11の処理により入力した線速度v及び加工ピッチp、前記ステップS21の処理によって半径位置検出回路43から取込んだ半径位置(半径値)r、並びに前記ステップS22の処理によって計算した半径位置rにおける加工対象物10の傾きφを用いて、下記数5の演算の実行により、加工対象物の上面のプロファイルを考慮した、補正半径方向送り速度Vrを計算する。
【数5】

【0054】
この数5について説明しておく。線速度をvとし、半径位置(半径値)をrとすると、テーブル21の回転速度kはk=v/2πrとなる。一方、回転速度kの逆数1/kはテーブル21の1回転に必要な時間を表すので、加工ピッチpを前記時間1/kで除算することにより、加工対象物10の上面のプロファイルを考慮しないテーブル21の半径方向送り速度p・kは、p・k=p・v/2πrと表される。ここで、加工対象物10の上面のプロファイルを考慮するために、半径位置rにおける傾きφを考慮すると、補正加工ピッチp’はp・cosφとして表される。したがって、補正したテーブル21の半径送り速度Vrは、p’・k=p・k・cosφ=p・v・cosφ/2πrとなる。
【0055】
前記ステップS25の処理後、コントローラ60は、ステップS26にて、前記計算した補正半径方向送り速度Vrをフィードモータ制御回路44に出力して、フィードモータ23の回転開始を指示する。フィードモータ制御回路44は、エンコーダ23aから供給される回転検出信号に基づいてフィードモータ23の半径方向送り速度を計算し、同計算した半径方向送り速度が前記供給された補正半径方向送り速度Vrに等しくなるように、フィードモータ23の回転を制御する。その結果、テーブル21は、加工ピッチpを加工対象物10の上面のプロファイルに従って補正した加工ピッチp’で半径方向に移動し始める。
【0056】
前記ステップS26の処理後、コントローラ60は、発光信号供給回路45に加工模様を表すデータを供給するとともに、レーザ駆動回路46に加工用のレーザ光強度であるレーザ光の出射を指示する。発光信号供給回路45は、前記供給さえた加工模様を表すデータに対応したパルス列信号をレーザ駆動回路46に出力する。レーザ駆動回路46は、発光信号供給回路45からのパルス列信号に対応した駆動信号を加工ヘッド31内のレーザ光源に供給する。この場合の駆動信号の出力レベルは大きく、レーザ光源は加工対象物10をレーザ加工するのに十分な出力エネルギーを有するレーザ光を放射し始める。これにより、加工対象物10は、レーザ加工され始める。
【0057】
前記ステップS27の処理後、コントローラ60は、図2BのステップS28〜S32からなる循環処理を繰り返し実行する。ステップS28においては、コントローラ60は、半径位置検出回路43から半径位置rを入力して、同入力した半径位置rが前記ステップS11の処理によって入力した終了半径位置であるかを判定する。ステップS29,S30の処理は、前述したステップS21,S22の加工対象物10の上面のプロファイルを考慮した、加工ヘッド31の高さD及び傾きφの制御処理と同じである。ステップS31,S32の処理は、前述したステップS25,S26の加工対象物10の上面のプロファイルを考慮した、テーブル21の半径方向の移動速度の制御処理と同様である。
【0058】
これらのステップS28〜S31からなる循環処理により、テーブル21が終了半径位置に達するまで(レーザ照射位置が終了半径位置に達するまで)、加工対象物10の上面のプロファイルに応じて、加工ヘッド31の高さD及び傾きφが補正制御され続けるとともに、テーブル21の半径方向の移動速度も補正制御され続ける。その結果、加工対象物10のレーザ加工において、レーザ光の焦点位置が加工対象物10の表面に保たれ、かつレーザ光の光軸が加工対象物10の半径方向の接線に対し垂直に保たれる。また、加工ピッチも、加工対象物10の表面の傾きが変化しても、設定されたピッチに保たれる。したがって、この実施形態によれば、加工対象物10の上面のプロファイルとは無関係に、加工対象物10はレーザ加工される。
【0059】
前記ステップS28〜S31からなる循環処理中、テーブル21が終了半径位置に達すると、コントローラ60は、ステップS28にて「Yes」と判定して、ステップS33〜S35の処理を実行する。ステップS33においては、コントローラ60は、レーザ駆動回路46にレーザ光の照射停止及び発光信号供給回路45にパルス列信号の出力停止を指示する。これにより、レーザ駆動回路46は加工ヘッド31内のレーザ光源への駆動信号の出力を停止するとともに、発光信号供給回路45はパルス列信号の出力を停止するので、レーザ光源がレーザ光の出射を停止する。ステップS34においては、コントローラ60はフォーカスサーボ回路49にフォーカスサーボの停止を指示する。これにより、フォーカスサーボ回路49による加工ヘッド31内の対物レンズのフォーカス制御も停止する。ステップS35においては、コントローラ60はフィードモータ制御回路44にテーブル21の半径方向への送り停止を指示する。これにより、フィードモータ制御回路44はフィードモータ23の回転を停止させる。ステップS36においては、コントローラ60はスピンドルモータ制御回路41にスピンドルモータ22の回転停止を指示する。これにより、スピンドルモータ制御回路41はスピンドルモータ22の回転を停止させる。
【0060】
次に、コントローラ60は、ステップS37にて、前記ステップS13の処理と同様に、フィードモータ制御回路44に指示して、テーブル21を初期半径位置に移動させる。そして、コントローラ60は、ステップS38にてプログラムの実行を終了する。
【0061】
その後、作業者はテーブル21にセットされた加工対象物10を取り除いて新たな加工対象物10をセットして、前記図2のプログラムを再度実行させる。この場合、加工対象物10の2回目以降の加工処理において加工条件の変更がなければ、図2のステップS12,S13の処理はスキップされる。
【0062】
上記のように構成した実施形態によれば、図2AのステップS21,22及び図2BのステップS29,S30の処理により、加工対象物10の半径方向のプロファイルに応じて、加工対象物10に対する加工ヘッド31の高さ及び傾きが調整される。したがって、加工ヘッド31から出射されるレーザ光の焦点位置は加工対象物10の表面に常に合わせられ、またレーザ光の光軸は加工対象物10の表面に対して常に垂直に保たれる。その結果、加工対象物10の表面のプロファイル(外形)が半径方向に様々に変化していても、加工対象物10はレーザ光により高精度で加工される。
【0063】
また、上記のように構成した実施形態によれば、図2AのステップS25,S26及び図2BのステップS31,S32の処理により、加工対象物10のプロファイルに基づいて、テーブル21に対する加工ヘッド31の相対的な半径方向の移動速度が補正される。したがって、加工対象物10における半径方向の表面が加工ヘッド31の移動方向に対して傾いている場合には、加工ヘッド31のテーブル21に対する移動速度が補正される。その結果、加工対象物10における半径方向の表面に対して常に一定速度でレーザ光を移動させることができ、加工対象物10はレーザ光により高精度で加工される。
【0064】
また、上記のように構成した実施形態によれば、プロファイルデータ又はプロファイルデータに相当するデータが、加工対象物10の設計時に予め用意されている場合には、図2AのステップS16の処理によって前記データが入力されて利用される。したがって、この場合には、前記予め用意されたデータが有効に利用されて、プロファイルデータに基づいた調整や補正を行うレーザ加工が迅速に行われる。また、前記予め用意されたデータが存在しない場合には、図2AのステップS17,S18の処理により、3次元形状測定装置70を用いてプロファイルデータが取得される。したがって、この場合にも、プロファイルデータに基づいた調整や補正を行う高精度なレーザ加工が実現される。
【0065】
さらに、3次元形状測定装置70は、テーブル21に対して位置が固定され、加工対象物10をテーブル21にセットした状態で、加工対象物10の3次元形状を測定する。これにより、加工対象物10の3次元形状測定もレーザ加工の一連の工程の中で行われるので、加工対象物10のプロファイルデータが予め用意されていない場合におけるレーザ加工の作業効率が良好となる。また、図3のプロファイル取得ルーチンにおいては、加工対象物10の複数の異なる周方向位置におけるプロファイルを平均して、加工対象物10の半径方向おけるプロファイルを表わすプロファイルデータが取得される。したがって、加工対象物10の表面全体を考慮したプロファイルデータが生成されて、プロファイルデータに基づいた調整や補正を行うレーザ加工をより高精度にすることが可能となる。
【0066】
次に、3次元形状測定装置70の座標系Mによる3次元形状データを、基準座標系Sによる3次元形状データに座標変換するための座標変換関数Fを取得する一例について説明しておく。
【0067】
作業者は、図2AのステップS13の処理と同様な図示しないプログラムの実行により、テーブル21を初期半径位置に移動させて、3次元形状測定装置70をテーブル21の回転中心の上方に位置させる(図12参照)。なお、この状態では、テーブル21上には何も載っていない。次に、作業者は、入力装置61を用いて、図4の座標変換関数取得プログラムを実行する。座標変換関数取得プログラムの実行は、ステップS200にて開始される。
【0068】
座標変換関数取得プログラムの実行開始後、コントローラ60は、ステップS201にて、回転角検出回路42の作動を開始させる。次に、コントローラ60は、ステップS202にて、3次元形状測定装置70に3次元形状を測定させ、3次元形状測定装置70によって測定された3次元形状データを取得する。この場合は、図12に示すように、テーブル21の表面が3次元形状測定される。このステップS202による3次元形状データの取得後、コントローラ60は、ステップS203にて、テーブル21の上面に相当する平面Tの式を算出する。具体的には、以下の方法を採用する。なお、前記取得された3次元形状データは、3次元形状測定装置70の座標系Mによって表されている。
【0069】
前記取得した全ての3次元形状データの中から、所定の領域内の3次元形状データを抽出し、下記数6の平面の式に代入して最小2乗法により係数a,b,cを計算する(式導出処理1)。なお、所定の領域は、X,Y座標値が「0」付近にある領域が指定される。
【数6】

【0070】
次に、前記取得した全ての3次元形状データの中から、この平面Tからの距離が所定範囲内にある3次元形状データを抽出する(式導出処理2)。そして、先に抽出した所定領域内にある3次元形状データによって導出した式がテーブル21の平面Tを表しているかを判定するために、前記全ての3次元形状データの中から抽出した3次元形状データが所定数以上あるかを判定する(式導出処理3)。所定数以上あれば、平面Tからの距離が所定範囲内にある、後に抽出した全ての3次元形状データを、前記数6の平面Tの式に代入して最小2乗法により係数a,b,cを計算する(式導出処理4)。
【0071】
一方、所定数未満あれば、前記先に抽出した所定領域(X,Y座標値が「0」付近の領域)に隣接した所定領域の3次元形状データを抽出し直す。そして、前記式導出処理2〜4を再度行って平面Tの式を導出する。この処理は、前記式導出処理1によって導出した平面Tからの距離が所定範囲内にある3次元形状データが所定数以上になるまで繰り返される。その結果、テーブル21の上面に相当する平面Tの式が確定される。
【0072】
前記ステップS203の処理後、コントローラ60は、ステップS204にて、表示装置62に基準物体80を設置するように表示する。この基準物体80は定点を定義可能な物体であり、本実施形態では基準物体80として球体が採用され、定点は球体の中心である。なお、基準物体80としては、定点を定義可能な物体であれば他の物体、例えば直方体、多面体、三角錐、円錐、円柱なども採用され得る。前記基準物体80の設置の指示により、作業者は、図13に示すように、基準物体80をテーブル21の回転中心から離して置く。
【0073】
次に、コントローラ60は、ステップS205にてテーブル21の回転回数を表す変数nを「0」に初期設定して、ステップS206〜S212からなる循環処理を繰り返し実行する。ステップS206においては、コントローラ60は、3次元形状測定装置70に3次元形状を測定させ、3次元形状測定装置70によって測定された3次元形状データを取得する。そして、ステップS207にて、この取得した3次元形状データを用いて、基準物体80の定点座標P(xn,yn,zn)を計算する。
【0074】
この定点座標の計算処理は、例えば特開2004−333371号公報に示されるように公知の手法であり、例えば、基準物体80の特徴データを予め入力しておき、前記取得した全ての3次元データの中から基準物体80の外形を表す3次元形状データを抽出する。そして、前記抽出した3次元形状データを用いて基準物体80の定点を計算する。本実施形態のように、基準物体80が球体であり、定点が球体の中心である場合には、基準物体80の特徴データとして、球体及び半径が採用される。そして、前記取得した全ての3次元形状データの中から前記特徴データにより指定された球体の外形を表す3次元形状データを抽出し、抽出した3次元形状データを、球体を表す下記数7に代入して、最小2乗法を用いて球体の定点として中心座標(a,b,c)を計算する。そして、この中心座標(a,b,c)を、定点座標P(xn,yn,zn)とする。
【数7】

【0075】
前記ステップS207の処理後、コントローラ60は、ステップS208にて変数nに「1」を加算して、ステップS209にて値n・θが360度以上であるかを判定する。ここで、θは、異なる位置にある基準物体80の定点を計算するためにテーブル21を回転させる角度であり、少なくとも120度未満の予め決められた角度である。120度未満であることは、基準物体の定点が3個以上必要だからである。値n・θが360度未満であれば、コントローラ60は、ステップS209にて「No」と判定して、ステップS210にてスピンドルモータ制御回路41に、所定の低速を表す回転速度を指定して、スピンドルモータ22の低速回転開始を指示する。スピンドルモータ制御回路41は、前記指示により、エンコーダ22bからの回転検出信号を用いて、スピンドルモータ22を低速で回転させる。スピンドルモータ22の低速回転は、基準物体80をテーブル21上で移動させないためである。
【0076】
前記ステップS210の処理後、コントローラ60は、ステップS211にて回転角検出回路42から回転角を入力し続け、テーブル21の回転角が前記所定角θに達するまで、同ステップS211の判定処理を続ける。そして、テーブル21の回転角が所定角θに達すると、コントローラ60は、ステップS212にて、スピンドルモータ制御回路41にスピンドルモータ22の回転終了を指示して、スピンドルモータ22の回転を停止させる。そして、コントローラ60は、値n・θが360度以上になるまで、前述したステップS206〜S212からなる循環処理を繰り返し実行する。この循環処理により、異なる位置に位置する基準物体80における少なくとも3つの定点座標P(x0,y0,z0),P(x1,y1,z1),P(x2,y2,z2)・・が計算される。
【0077】
値n・θが360度以上になると、コントローラ60は、ステップS209にて「Yes」と判定して、前記定点座標P(x0,y0,z0),P(x1,y1,z1),P(x2,y2,z2)・・を、下記数8の平面の式に代入して最小2乗法を用いて係数a,b,cを計算することにより、前記定点座標を含む平面Ptの式を導出する。
【数8】

【0078】
次に、コントローラ60は、ステップS212にて、複数の定点Pを通る円の中心座標O(x00,y00,z00)を計算する。この場合、図14に示すように、まず、2つの定点Pを結ぶ直線に垂直であり、かつ2つの定点Pの中点を含む平面P1,P2・・の式を、全ての2つの定点Pの組で計算する。2つの平面P1,P2(及び平面P1,P3、平面P2,P3・・)の式と平面Ptの式から成立する連立方程式を、全ての2つの平面P1,P2(及び平面P1,P3、平面P2,P3・・)の組ごとにそれぞれ解く。これにより、全ての2つの平面P1,P2(及び平面P1,P3、平面P2,P3・・)の組と、平面Ptの交点である座標すなわち複数の定点Pを通る円の中心座標が、全ての2つの平面P1,P2(及び平面P1,P3、平面P2,P3・・)の組ごとに計算される。最後に、計算された複数の中心座標の平均値を計算して、中心座標O(x00,y00,z00)とする。
【0079】
次に、コントローラ60は、ステップS213にて、平面Pt(複数の定点Pを含む平面)の法線ベクトルに平行で中心座標Oを通る直線Lと、平面T(テーブル21の上面に相当)との交点Toの座標値(xto,yto,zto)を計算する(図15参照)。この場合、直線Lの式は、中心座標O(x00,y00,z00)を用いて下記数9により表される。a,b,cは、平面Ptの法線ベクトルの成分であり、前記数8におけるa,b,cである。
【数9】

一方、平面Tの式は、前記ステップS203の処理により前記数6のように定められている。したがって、前記数9の直線Lの式と前記数6の平面Tの式との連立方程式を解いて座標値x,y,zを求めれば、直線Lと平面Tとの交点Toの座標値(xto,yto,zto)が計算される。この交点Toは、テーブル21の表面における回転中心であり、基準座標系Sにおける座標原点である。
【0080】
次に、コントローラ60は、ステップS214にて、平面Tの法線ベクトルCMと、平面Tの法線ベクトルに垂直な2つのベクトルAM,BMを計算する。このベクトルの計算処理においては、まず、平面Tの式をa・x+b・y+c・z+1=0とすると、平面Tの法線ベクトルは(a,b,c)と(−a,−b,−c)であるので、この中で基準座標系SにおけるZ座標軸の向きと一致する(すなわちベクトルが3次元形状測定装置70の方向を向いている)法線ベクトルを選択する。この場合、3次元形状測定装置70の座標系MにおけるZ座標軸方向の基準ベクトル(0,0,1)と、前記平面Tの法線ベクトルとで内積を計算した際、符号がマイナスになる方の法線ベクトルを選択すればよい。このベクトルの単位ベクトル{1/(a2+b2+c2)1/2}・(a,b,c)をベクトルCMとする。
【0081】
次に、3次元形状測定装置70の座標系MをY座標軸回りに回転させ、X座標軸が平面Tと平行になったとき、X座標軸と平行なベクトルを想定する。3次元形状測定装置70の座標系Mではこのベクトルのy座標値成分は「0」であり、x座標値成分を「1」として、z座標値成分をeとする。そして、このベクトルはベクトルCMと垂直であるので、内積は「0」となる。したがって、a+c・e=0からeを計算する。このベクトル(1,0,e)の単位ベクトル{1/(1+e2) 1/2}・(a,b,c)をベクトルAMとする。次に、ベクトルCMとベクトルAMとの外積を計算し、このベクトルをBMとする。
【0082】
次に、コントローラ60は、ステップS215にて、3次元形状測定装置70の座標系Mの3次元形状データを、基準座標系Sの3次元形状データに座標変換するための座標変換関数Fを計算する。同一の3次元形状データを3次元形状測定装置70の座標系Mの座標値で表したものを(xM,yM,zM)とし、基準座標系Sの座標値で表したものを(xS,yS,zS)とすると、座標変換関数Fは下記数10のように表される。
【数10】

ここで、値g11,g12,g13,g21,g22,g23,g31,g32,g33は座標系Mを基準座標系Sに平行にするための回転行列値を示し、値a,b,cは座標系Mの原点を基準座標系Sの原点に移動させるための平行移動成分を示す。
【0083】
また、同一のベクトルを3次元形状測定装置70の座標系Mのベクトル成分で表したものを(xM,yM,zM)とし、基準座標系Sのベクトル成分で表したものを(xS,yS,zS)とすると、下記数11も成立する。
【数11】

【0084】
基準座標系SにおけるベクトルA,B,Cであるベクトル成分As,Bs,Csは(1,0,0),(0,1,0),(0,0,1)であるので、前記数11の(xS,yS,zS)に(1,0,0),(0,1,0),(0,0,1)を代入し、前記数11の(xM,yM,zM)に前記ステップS124で計算したベクトルAM,BM,CMのベクトル成分を代入する。これにより、9つの連立方程式が成立するので、これを解くことで値g11,g12,g13,g21,g22,g23,g31,g32,g33が求められる。
【0085】
次に、基準座標系Sにおける原点である交点Toの座標値は(0,0,0)であるので、前記数10の(xS,yS,zS)に(0,0,0)を代入し、(xM,yM,zM)に前記ステップS213で計算した(xto,yto,zto)を代入する。これにより、3つの方程式が成立するので、この連立方程式を解くことで、前記数11の値a,b,cを求めることができる。そして、前記ステップS215にて、コントローラ60は、これらの値g11,g12,g13,g21,g22,g23,g31,g32,g33,a,b,cを前記数10の式と共にハードディスクなどの不揮発性メモリに記憶しておく。そして、ステップS216にて、この座標変換数取得プログラムの実行が終了される。
【0086】
以上、本発明の実施形態について詳しく説明したが、本発明の実施にあたっては、上記実施形態に限定されるものではなく、本発明の目的を逸脱しない限りにおいて種々の変形も可能である。
【0087】
例えば、上記実施形態においては、3次元形状測定装置70をテーブル21の上方に固定し、加工対象物10の半径方向のプロファイルデータを入力しないときには、3次元形状測定により加工対象物10の3次元形状データを取得し、このデータ処理により加工対象物10の半径方向のプロファイルを求めた。しかし、加工対象物10の半径方向のプロファイルデータが設計データから常に用意できる場合には、3次元形状測定装置70を設けなくてもよい。また、加工対象物10の半径方向のプロファイルデータの有無にかかわらず、常に3次元形状測定により加工対象物10の3次元形状データを取得し、このデータ処理により加工対象物10の半径方向のプロファイルを求めるようにしてもよい。
【0088】
また、上記実施形態では、3次元形状測定装置70をテーブル21の上方に固定し、3次元形状測定とレーザ加工を一連の工程で実施するようにした。しかし、これに代えて、3次元形状測定装置70を全く別の場所に置き、加工対象物10を3次元形状測定して記録媒体に3次元形状データを記録するか、コントローラ60がダウンロードできるサーバに3次元形状データを保管した後、加工対象物10をテーブル21上にセットして、加工対象物10の3次元形状データを記録媒体から読み取るか、サーバからダウンロードしてもよい。この場合、加工対象物10を、平面で構成した上面を有し、かつ加工対象物10を置く位置が定まる台にセットできるようにしておく。そして、テーブル21の回転中心に相当する位置がマーク、ピンなどでわかるようにしておく。これによれば、座標変換関数Fを求める際の回転中心の座標を算出する方法のみが上記実施形態と異なるのみで、他の処理は上記実施形態と同じであり、上記実施形態の場合と同様にして加工対象物10の半径方向のプロファイルを得ることができる。
【0089】
また、上記実施形態においては、図3のプロファイル取得ルーチンにて、3次元形状データを所定角度θずつ回転させた複数の回転座標系におけるX−Z平面のデータを抽出して、異なる半径位置ごとに加工対象物10の上面の高さを表すデータに基づいて加工対象物10のプロファイルを求めるようにした。しかし、加工対象物10の加工精度が高ければ、3次元形状データから直接的に半径方向におけるプロファイルを求め、加工対象物10の半径方向におけるプロファイルデータとしてもよい。
【0090】
また、上記実施形態では、加工対象物10のプロファイルにより加工ヘッド31の高さD及び傾きφを調整するとともに、加工対象物10の半径方向の送り速度を補正するようにした。しかし、加工対象物10が平板に近かったり、高い加工精度を要求しない場合には、前記調整及び補正のうちの一部を省略してもよい。
【0091】
また、上記実施形態では、フィードモータ23によってテーブル21を半径方向に移動させることにより、加工ヘッド31を加工対象物10に対して半径方向に移動させるようにした。しかし、加工ヘッド31は、テーブル21に対して相対的に半径方向に移動すればよい。したがって、テーブル21に代えて、加工ヘッド31をモータにより駆動して、テーブル21に対して半径方向に移動させるようにしてもよい。
【図面の簡単な説明】
【0092】
【図1】本発明の一実施形態に係るレーザ加工装置の全体を示す概略図である。
【図2A】図1のコントローラにより実行されるメインプログラムの前半部分を示すフローチャートである。
【図2B】図1のコントローラにより実行されるメインプログラムの後半部分を示すフローチャートである。
【図3】図2のプロファイル取得ルーチンの詳細を示すフローチャートである。
【図4】図1のコントローラにより実行される座標変換関数取得プログラムを示すフローチャートである。
【図5】テーブルを初期半径位置に位置させた状態におけるテーブル、3次元形状測定装置及び加工ヘッドの配置を示す概略図である。
【図6】テーブルを初期半径位置に位置させた状態における3次元形状測定装置の座標系と基準座標系とを説明する図である。
【図7】基準座標系をテーブルの中心にZ軸回りに回転させた回転座標系を説明する図である。
【図8】回転座標系におけるX−Z平面の3次元形状データの抽出を説明する図である。
【図9】(A)は距離Bずつ離れた半径位置を説明するための図であり、(B)は半径位置におけるZ座標値の補間計算を説明するための図である。
【図10】半径位置と加工ヘッドの高さとの関係を示す図である。
【図11】半径位置に対する加工ヘッドの傾きを説明するための図である。
【図12】テーブルの3次元形状を測定する際の3次元形状測定装置とテーブルの配置図である。
【図13】テーブル上に基準物体を載置した状態を示す図である。
【図14】複数の定点を通る円の中心座標を計算するための処理の説明図である。
【図15】複数の定点を含む平面とテーブルの上面に相当する平面とを説明するための説明図である。
【符号の説明】
【0093】
10…加工対象物、21…テーブル、22…スピンドルモータ、23…フィードモータ、30…ヘッド駆動装置、31…加工ヘッド、35,36…モータ、41…スピンドルモータ制御回路、42…回転角検出回路、43…半径位置検出回路、44…フィードモータ制御回路、45…発光信号供給回路、46…レーザ駆動回路、49…フォーカスサーボ回路、51…高さ検出回路、53…角度検出回路、60…コントローラ、70…3次元形状測定装置、80…基準物体

【特許請求の範囲】
【請求項1】
加工対象物をセットするテーブルと、
前記テーブルにセットされた加工対象物にレーザ光を照射して加工対象物をレーザ加工する加工ヘッドと、
前記テーブルを回転させる回転装置と、
前記加工ヘッドを前記テーブルに対して相対的に前記テーブルの半径方向に移動させる半径方向送り装置とを備えたレーザ加工装置において、
加工対象物の半径方向におけるプロファイルを表すプロファイルデータに基づいて、加工対象物に対する前記加工ヘッドの高さ及び傾きのうちの少なくとも一方を調整するヘッド調整手段を設けたことを特徴とするレーザ加工装置。
【請求項2】
請求項1に記載のレーザ加工装置において、さらに、
前記プロファイルデータに基づいて、前記半径方向送り装置による前記テーブルに対する前記加工ヘッドの相対的な半径方向の移動速度を補正する移動速度補正手段を設けたことを特徴とするレーザ加工装置。
【請求項3】
請求項1又は2に記載のレーザ加工装置において、
前記プロファイルデータは、加工対象物の設計時に予め用意されているデータ又は加工対象物の設計時に予め用意されているデータに基づいて生成されるデータであり、さらに
加工対象物の設計時に予め用意されている前記データを取得して、前記取得したデータを前記プロファイルデータとし、又は前記取得したデータから前記プロファイルデータを生成する第1のプロファイルデータ取得手段を設けたことを特徴とするレーザ加工装置。
【請求項4】
請求項1乃至3のうちのいずれ一つに記載のレーザ加工装置において、さらに
加工対象物の3次元形状を測定して前記3次元形状を表す3次元形状データを取得する3次元形状測定装置と、
前記3次元形状測定装置によって取得された3次元形状データに基づいて、加工対象物の半径方向のプロファイルを表わす前記プロファイルデータを生成して取得する第2のプロファイルデータ取得手段とを設けたことを特徴とするレーザ加工装置。
【請求項5】
請求項4に記載のレーザ加工装置において、
前記3次元形状測定装置は、前記テーブルに対して位置が固定され、加工対象物を前記テーブルにセットした状態で、加工対象物の3次元形状を測定することを特徴とするレーザ加工装置。
【請求項6】
請求項4又は5に記載のレーザ加工装置において、
前記第2のプロファイルデータ取得手段は、加工対象物の複数の異なる周方向位置におけるプロファイルを平均して、加工対象物の半径方向におけるプロファイルを表わすプロファイルデータを取得することを特徴とするレーザ加工装置。
【請求項7】
加工対象物をテーブルにセットし、
前記テーブルを回転させるとともに、レーザ光を照射する加工ヘッドを前記テーブルに対して相対的に前記テーブルの半径方向に移動させながら、加工対象物に前記加工ヘッドからのレーザ光を照射して加工対象物をレーザ加工するレーザ加工方法において、
加工対象物の半径方向におけるプロファイルを表すプロファイルデータを用いて、加工対象物に対する前記加工ヘッドの高さ及び傾きのうちの少なくとも一方を調整することを特徴とするレーザ加工方法。
【請求項8】
請求項7に記載のレーザ加工方法において、さらに、
前記プロファイルデータに基づいて、前記テーブルに対する前記加工ヘッドの相対的な半径方向の移動速度を補正することを特徴とするレーザ加工方法。
【請求項9】
請求項7又は8に記載のレーザ加工方法において、
前記プロファイルデータは、加工対象物の設計時に予め用意されているデータ又は加工対象物の設計時に予め用意されているデータに基づいて生成されるデータであり、さらに
加工対象物の設計時に予め用意されている前記データを取得して、前記取得したデータを前記プロファイルデータとし、又は前記取得したデータから前記プロファイルデータを生成することを特徴とするレーザ加工方法。
【請求項10】
請求項7又は8に記載のレーザ加工方法において、さらに
3次元形状測定装置により、加工対象物の3次元形状を測定して前記3次元形状を表す3次元形状データを取得し、
前記取得した3次元形状データに基づいて、前記加工対象物の半径方向のプロファイルを表わす前記プロファイルデータを生成して取得することを特徴とするレーザ加工方法。

【図1】
image rotate

【図2A】
image rotate

【図2B】
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