JP3576421B2 - 工作機のワーク姿勢制御方法 - Google Patents
工作機のワーク姿勢制御方法 Download PDFInfo
- Publication number
- JP3576421B2 JP3576421B2 JP04830499A JP4830499A JP3576421B2 JP 3576421 B2 JP3576421 B2 JP 3576421B2 JP 04830499 A JP04830499 A JP 04830499A JP 4830499 A JP4830499 A JP 4830499A JP 3576421 B2 JP3576421 B2 JP 3576421B2
- Authority
- JP
- Japan
- Prior art keywords
- axis
- work
- around
- spindle
- rotation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Automatic Control Of Machine Tools (AREA)
- Numerical Control (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、ワークに対してスピンドルを位置決めするにあたってワーク台の姿勢を変化させる工作機に関し、特に、そういった工作機でワークの姿勢を制御する工作機のワーク姿勢制御方法に関する。
【0002】
【従来の技術】
例えば特開平9−225761号公報に開示されるように、ワークが固定されるワーク台の姿勢を変化させるとともに、工具が装着されるスピンドルの姿勢を変化させる工作機は知られている。この工作機は、共通の基台上で1対の垂直軸回りに回転する第1および第2支持部材を備える。第1支持部材には、水平軸回りに揺動自在にワーク台が支持される。その一方で、第2支持部材には、水平軸回りで揺動自在にスピンドルが支持される。こうした軸回りの回転や揺動を利用した工作機では、直交3軸に案内されて工具が移動する既存の工作機に比べて、小型化や軽量化を容易に実現することができる。
【0003】
このような工作機では、垂直軸回りで回転する第1および第2支持部材の回転量や、水平軸回りで揺動するワーク台およびスピンドルの揺動量に基づき、ワークに対する工具の位置が特定される。ワークの加工面に沿って工具を移動させるには、第1および第2支持部材の回転量を同時に制御しなければならず、また、ワーク台およびスピンドルの揺動量を同時に制御しなければならない。こうした同時制御が実現されなければ、加工面に対する工具の姿勢が変化してしまうからである。こうした同時制御には、一般に、ロボット工学に基づく逆運動学方程式が用いられればよい。
【0004】
【発明が解決しようとする課題】
一般に、工作機では、ワークの加工面に対してスピンドルの軸心が直交することが望まれる。加工面とスピンドルの軸心との間に直交関係が維持されれば、加工面に沿ったx座標値およびy座標値を維持したまま、z座標値の増減値を用いてスピンドルの進退移動を簡単に特定することができるからである。一般に、ワーク上の複数の加工面に対して常にスピンドルの直交姿勢を維持するには、ワーク台にワークを取り付け直して所望の加工面をスピンドルに向き合わせたり、いわゆるターンテーブルを用いてスピンドルに向き合う加工面を入れ替えたりする必要がある。ワークを取り付け直せば作業時間は増大し、ターンテーブルを用いれば設備コストは増大してしまう。
【0005】
その一方で、特開平9−225761号に開示される工作機では、ワークを取り付け直したりターンテーブルを用いたりすることなく、ワーク台の揺動や第1支持部材の回転を通じてワーク上の複数の加工面を順番にスピンドルに向き合わせることができる。しかしながら、逆運動学方程式を用いてワーク台に対するスピンドルの位置や姿勢を制御する場合、スピンドルの位置や姿勢は、ワークを基準とした共通のワーク座標系に従って特定されなければならない。こうしたワーク座標系では、ワーク台を揺動させたり第1支持部材を回転させたりすると、z軸とスピンドルの軸心方向とを一致させることはできない。したがって、作業者は、z座標値の増減値を用いて単純にスピンドルの進退移動量を特定することができなくなってしまう。作業者は、z座標値だけでなくx座標値やy座標値の増減値を求めてNCプログラムを記述しなければならなくなる。
【0006】
本発明は、上記実状に鑑みてなされたもので、ワークに対してスピンドルを位置決めするにあたってワーク台の姿勢を変化させる工作機で、ワークの姿勢を意識せずに簡単にNCプログラムを記述することができるワーク姿勢制御方法を提供することを目的とする。
【0007】
【課題を解決するための手段】
上記目的を達成するために、第1発明によれば、z軸でスピンドルの軸心方向を規定する仮想ワーク座標系に従って、z軸に直交する1座標軸回りで回転するワーク固定面の軸回り回転角を特定する回転角データを取得する工程と、軸回り回転角で回転したワーク固定面に固定されるワークの加工位置を仮想ワーク座標系に従って特定する加工位置データを取得する工程と、加工位置データに基づき、仮想ワーク座標系に従ってスピンドルを位置決めする際に1座標軸回りで回転するワーク固定面の回転量を算出する工程と、回転角データに基づき、ワーク固定面の軸回り回転角を生起するオフセット回転量を算出する工程とを備えることを特徴とする工作機のワーク姿勢制御方法が提供される。
【0008】
かかるワーク姿勢制御方法によれば、ワーク台すなわちワーク固定面が軸回りで回転しても、ワークの加工位置は、常にz軸でスピンドルの軸心方向を規定する仮想ワーク座標系に従って特定されることができる。したがって、作業者は、仮想ワーク座標系のx座標値およびy座標値を維持したまま、z座標値の増減値を用いてスピンドルの進退移動量を簡単に特定することができる。スピンドルの位置決めにあたってワークすなわちワーク固定面を基準とした固有ワーク座標系が用いられると、算出された回転量でワーク固定面が回転しても、固有ワーク座標系のz軸とスピンドルの軸心方向との間には軸回り回転角のずれが生じる。算出されたオフセット回転量でワーク台が回転すれば、そういったずれは解消され、その結果、作業者の意図した向きでスピンドルに対してワークを向き合わせることが可能となる。
【0009】
例えばワーク台が水平軸回りで回転する場合には、ワーク姿勢制御方法は、前記スピンドルを位置決めするにあたって、前記1座標軸に平行な水平軸回りでスピンドルを回転させる水平軸回り回転量を算出すればよい。算出された水平軸回り回転量が用いられれば、ワーク台の回転とスピンドルの回転とによって、ワークに対するスピンドルの姿勢を維持しながらワークに対してスピンドルは位置決めされることができる。このとき、前記回転量および水平軸回り回転量は逆運動学方程式に基づいて算出されればよい。
【0010】
その一方で、例えばワーク台が垂直軸回りで回転する場合には、ワーク姿勢制御方法は、前記スピンドルを位置決めするにあたって、前記1座標軸に平行な垂直軸回りでスピンドルを回転させる垂直軸回り回転量を算出すればよい。算出された垂直軸回り回転量が用いられれば、ワーク台の回転とスピンドルの回転とによって、ワークに対するスピンドルの姿勢を維持しながらワークに対してスピンドルは位置決めされることができる。このとき、前記回転量および垂直軸回り回転量は逆運動学方程式に基づいて算出されればよい。
【0011】
また、第2発明によれば、z軸でスピンドルの軸心方向を規定する仮想ワーク座標系に従ってx軸およびy軸回りで回転するワーク固定面のx軸回り回転角およびy軸回り回転角を特定する回転角データを取得する工程と、x軸回り回転角およびy軸回り回転角で回転したワーク固定面に固定されるワークの加工位置を仮想ワーク座標系に従って特定する加工位置データを取得する工程と、加工位置データに基づき、仮想ワーク座標系に従ってスピンドルを位置決めする際に必要とされるワーク固定面のx軸回り回転量およびy軸回り回転量を算出する工程と、回転角データに基づき、ワーク固定面のx軸回り回転角を生起するx軸回りオフセット回転量を算出する工程と、回転角データに基づき、ワーク固定面のy軸回り回転角を生起するy軸回りオフセット回転量を算出する工程とを備えることを特徴とする工作機のワーク姿勢制御方法が提供される。
【0012】
かかるワーク姿勢制御方法によれば、ワーク台すなわちワーク固定面が直交2軸回りでそれぞれ回転しても、ワークの加工位置は、常にz軸でスピンドルの軸心方向を規定する仮想ワーク座標系に従って特定されることができる。したがって、作業者は、仮想ワーク座標系のx座標値およびy座標値を維持したまま、z座標値の増減値を用いてスピンドルの進退移動量を簡単に特定することができる。スピンドルの位置決めにあたってワークすなわちワーク固定面を基準とした固有ワーク座標系が用いられると、算出されたx軸回り回転量およびy軸回り回転量でワーク固定面が回転しても、固有ワーク座標系のz軸とスピンドルの軸心方向との間にはx軸回り回転角およびy軸回り回転角のずれが生じる。算出されたx軸回りオフセット回転量およびy軸回りオフセット回転量でワーク台が回転すれば、そういったずれは解消され、その結果、作業者の意図した向きでスピンドルに対してワークを向き合わせることが可能となる。
【0013】
例えばワーク台が水平軸回りおよび垂直軸回りで同時に回転する場合には、ワーク姿勢制御方法は、前記スピンドルを位置決めするにあたって、前記x軸に平行な垂直軸回りでスピンドルを回転させる垂直軸回り回転量を算出すればよく、前記y軸に平行な水平軸回りでスピンドルを回転させる水平軸回り回転量を算出すればよい。算出された水平軸回転量や垂直軸回り回転量が用いられれば、ワーク台の回転とスピンドルの回転とによって、ワークに対するスピンドルの姿勢を維持しながらワークに対してスピンドルは位置決めされることができる。このとき、x軸回り回転量、y軸回り回転量、垂直軸回り回転量および水平軸回り回転量は逆運動学方程式に基づいて算出されればよい。この場合、仮想ワーク座標系のx軸やy軸は互いに入れ替えられてもよい。
【0014】
なお、以上のワーク姿勢制御方法が適用される工作機では、スピンドルの先端に、スピンドルの軸心回りで回転するドリルやエンドミルといった一般の工具が装着されてもよく、スピンドルの軸心に沿ってレーザビームを照射するレーザ照射源やウォータージェットを発射するウォータージェット源が支持されてもよい。
【0015】
【発明の実施の形態】
以下、添付図面を参照しつつ本発明の一実施形態を説明する。
【0016】
図1は、本発明に係る工作機のワーク姿勢制御方法が適用される工作機を概略的に示す。この工作機10は、工具11が装着されるスピンドル12と、スピンドル12に装着された工具11に対してワークを向かい合わせに保持するワーク台13とを備える。ワーク台13に保持されるワークを加工するにあたって、ワークは、ワーク台13の正面に形成されるワーク固定面14に固定される。スピンドル12は軸心回りに高速で工具11を回転させることができる。
【0017】
スピンドル12はクイル15に進退自在に挿入される。クイル15には、スピンドル12に平行に延びるねじ軸16が支持される。スピンドル12の後端には、ねじ軸16に噛み合うナット部材17が固定される。駆動モータ18の働きを通じてねじ軸16が軸心回りに回転すると、ねじ軸16上をナット部材17が移動し、その結果、スピンドル12の進退移動が実現される。この進退移動によって、スピンドル12すなわち工具11は、ワーク固定面14に向かって前進したりワーク固定面14から後退したりすることができる。スピンドル12の進退移動量は、周知のとおり、駆動モータ18の回転量に基づいて決定される。
【0018】
ワーク台13は、第1水平軸20回りで揺動自在に第1支持部材21に支持される。第1水平軸20には駆動モータ(例えばサーボモータ)22が連結される。この駆動モータ22の働きを通じて、ワーク台13は第1水平軸20回りで揺動することができる。ワーク台13の揺動角すなわちワーク固定面14のy軸回り回転量は駆動モータ22の回転量によって特定されることができる。
【0019】
しかも、第1支持部材21は、基台23から垂直に立ち上がる第1垂直軸24回りで回転することができる。第1支持部材21の回転は駆動モータ(図示せず)の働きによって実現される。第1垂直軸24回りで回転する第1支持部材21の回転角すなわちワーク固定面14のx軸回り回転量は駆動モータの回転量によって特定されることができる。
【0020】
一方で、前述のクイル15は、第2水平軸26回りで揺動自在に第2支持部材27に支持される。第2水平軸26には駆動モータ(例えばサーボモータ)28が連結される。この駆動モータ28の働きを通じて、クイル15すなわちスピンドル12は第2水平軸26回りで揺動することができる。スピンドル12の揺動角すなわち水平軸回り回転量は駆動モータ28の回転量によって特定されることができる。
【0021】
しかも、第2支持部材27は、第1垂直軸24に平行に基台23から立ち上がる第2垂直軸29回りで回転することができる。第2支持部材27の回転は駆動モータ(図示せず)の働きによって実現される。第2垂直軸29回りで回転する第2支持部材27の回転角すなわち垂直軸回り回転量は駆動モータの回転量によって特定されることができる。
【0022】
図2に示されるように、ワーク台13およびスピンドル12の姿勢や、ワーク台13に対する工具すなわちスピンドル12先端の位置はコントローラ31によって制御される。このコントローラ31は、ワーク固定面14に設定されるワーク座標系xyz上でワークの加工位置(px ,py ,pz )を特定する加工位置データや、ワーク座標系xyz上で工具11すなわちスピンドル12の姿勢を特定する工具姿勢データを取得するデータ取得回路32を備える。このデータ取得回路32には、例えばNCプログラムに記述される加工位置データや工具姿勢データが取り込まれればよい。
【0023】
演算処理回路(MPU)33は、後述するように、データ取得回路32から供給される加工位置データおよび工具姿勢データに基づき、スピンドル12の進退移動量d7 を規定する駆動モータ18の回転量や、ワーク固定面14のy軸回り回転量θ2 を規定する駆動モータ22の回転量、ワーク固定面14のx軸回り回転量θ3 を規定する駆動モータ35の回転量、スピンドル12の垂直軸回り回転量θ5 を規定する駆動モータ36の回転量、スピンドル12の水平軸回り回転量θ6 を規定する駆動モータ28の回転量を算出する。この算出にあたって、MPU33は、第1および第2垂直軸24、29の間隔d4 を示す軸間距離データや、第1および第2水平軸20、26の高さd3 、d5 を示す第1および第2高さデータ、第1水平軸20からワーク固定面14すなわちワーク座標系xyzの原点までの距離d1 を示すワーク揺動半径データをメモリ37から読み出す。メモリ37には、間隔d4 や高さd3 、d5 、距離d1 の実測値が予め格納されていればよい。
【0024】
座標系切換指示回路38は、作業者の手動操作やNCプログラムに書き込まれた座標系切換指令に応じて座標系切換指示信号を出力する。この座標系切換指示信号が出力されると、MPU33には、z軸でスピンドル12の基準姿勢を規定する仮想ワーク座標系上で特定されるワーク固定面14のy軸回り回転角θA およびx軸回り回転角θB が同時に受け渡される。y軸回り回転角θA は、仮想ワーク座標系に投影されるワーク固定面14の第1水平軸20回り回転角度によって特定される一方で、x軸回り回転角θB は、仮想ワーク座標系に投影されるワーク固定面14の第1垂直軸24回り回転角度によって特定される。座標系切換指示回路38には、作業者の手動操作やNCプログラムの記述に応じて、こうしたy軸回り回転角θA およびx軸回り回転角θB を特定する回転角データが取り込まれる。
【0025】
各駆動モータ18、22、35、36、28の回転量は、駆動モータごとに設けられるエンコーダ39〜43によって検出されることができる。検出された各駆動モータ18、22、35、36、28の回転量に基づいて、MPU33は、ワーク固定面14に設定されたワーク座標系xyzに基づき工具11の位置や姿勢を算出することができる。表示器駆動回路44は、算出された工具11の位置や姿勢を表示器45に表示させることができる。
【0026】
ここで、コントローラ31の基本動作を説明する。加工位置データや工具姿勢データに基づいてワークの加工位置(px ,py ,pz )すなわち工具11の先端位置や工具11すなわちスピンドル12の姿勢が特定されると、MPU33は、次式に従ってスピンドル12の進退移動量d7 を算出する。ただし、ここでは、ワーク座標系xyzのz軸は、第1垂直軸24および第1水平軸20の交点で第1水平軸20に直交する。したがって、第1水平軸20回りでワーク台13が揺動するとワーク座標系xyzはその揺動に追随することとなる。しかも、スピンドル12の軸心は、第2垂直軸29および第2水平軸26の交点から第2水平軸26に垂直に延びる。工具11の姿勢を特定するにあたっては、ワーク座標系xyzに固有のz軸単位ベクトルのベクトル値(bx ,by ,bz )が用いられればよい。
【0027】
【数1】
ただし、
【数2】
こうして進退移動量d7 が算出されると、MPU33は、次式に従ってワーク固定面14のy軸回り回転量θ2 を算出する。
【0028】
【数3】
ただし、
【数4】
ワーク固定面14のy軸回り回転量θ2 が算出されると、MPU33は、次式に従ってワーク固定面14のx軸回り回転量θ3 を算出する。
【0029】
【数5】
ただし、
【数6】
同時に、MPU33は、次式に従ってスピンドル12の水平軸回り回転量θ6 を算出する。
【0030】
【数7】
ただし、
【数8】
こうしてスピンドル12の水平軸回り回転量θ6 が算出されると、続いてMPU33は、次式に従ってスピンドル12の垂直軸回り回転量θ5 を算出する。
【0031】
【数9】
ただし、
【数10】
MPU33は、算出された進退移動量d7 、y軸回り回転量θ2 、x軸回り回転量θ3 、垂直軸回り回転量θ5 および水平軸回り回転量θ6 を特定する駆動指令信号を各駆動モータ18、22、35、36、28に供給する。その結果、駆動モータ18、22、35、36、28が作動すると、工具11の先端はワーク上の加工位置(px ,py ,pz )に位置決めされる。しかも、このとき、工具11の姿勢は、ワーク座標系xyzに固有のz軸単位ベクトル(bx ,by ,bz )によって特定される。前述したMPU33の処理によれば、このベクトル値(bx ,by ,bz )が維持される限り、工具11を移動させても加工位置(px ,py ,pz )に対する工具11の姿勢は変化しない。
【0032】
ここで、前述したMPU33の算出処理を簡単に検証する。まず、ワーク固定面に対して基準座標系を設定し、ロボット工学に基づく運動学モデル(リンクモデル)を構築する。例えば図3に示されるように、ワーク固定面14に対して基準座標系X0 Z0 が設定されると、ワーク台13と第1支持部材21とのジョイントすなわち第1水平軸20回りでは第1座標系X1 Z1 および第2座標系X2 Z2 が設定されることができる。同様に、第1支持部材21と基台23とのジョイントすなわち第1垂直軸24回りでは第3座標系X3 Z3 が規定され、基台23と第2支持部材27とのジョイントすなわち第2垂直軸29回りでは第4座標系X4 Z4 が規定されることができる。さらに、第2支持部材27とクイル15とのジョイントすなわち第2水平軸26回りでは第5座標系X5 Z5 および第6座標系X6 Z6 が規定されることができる。最終的に、クイル15に挿入されるスピンドル12の先端では第7座標系X7 Z7 が規定される。設定された基準座標系X0 Z0 に基づけば、第7座標系X7 Z7 の原点すなわち加工位置はベクトル(px ,py ,pz )によって特定されることができる。
【0033】
特定された運動学モデルに基づき、各座標系ごとにパラメータθn (Zn−1 回りの回転角)、dn (Zn−1 に沿った距離)、an (Xn に沿った距離)、αn (Xn 回りの回転角)を特定すると次表が得られる。
【0034】
【表1】
得られたパラメータθn 、dn 、an 、αn に基づいて各座標系X1 Z1 〜X7 Z7 ごとに変換行列An を特定すると、
【数11】
ただし、
【数12】
が得られる。その結果、基準座標系X0 Z0 に対する工具11の姿勢や位置は、運動学方程式に従い、
【数13】
ただし、
【数14】
で表現されることができる。したがって、以上の運動学方程式に従えば、エンコーダ39〜43で検出される進退移動量d7 、y軸回り回転量θ2 、x軸回り回転量θ3 、垂直軸回り回転量θ5 および水平軸回り回転量θ6 に基づき、加工位置(px ,py ,pz )や、工具11の姿勢を特定するz軸単位ベクトルのベクトル値(bx ,by ,bz )を算出することができる。算出された加工位置(px ,py ,pz )やベクトル値(bx ,by ,bz )は表示器45に表示されればよい。その結果、作業者は、加工位置や工具の姿勢を確認しながら工作機10を操作することが可能となる。
【0035】
続いて、得られた運動学方程式に基づいて逆運動学方程式を導き出す。まず、加工位置のx座標値px に関する方程式を以下のように変形する。
【0036】
【数15】
両辺を2乗すると、
【数16】
が得られる。同様に、加工位置のy座標値py およびz座標値pz に関する方程式を以下のように変形する。
【0037】
【数17】
【数18】
【数19】
【数20】
式[数16]および式[数20]の和は、
【数21】
として求められる。ここで、
【数22】
を適用すると、
【数23】
が得られる。さらに、
【数24】
を適用すると、
【数25】
が得られる。
【0038】
得られた式[数25]を展開し、d7 に関して整理すると、
【数26】
が得られる。ここで、式[数26]を以下のように置換する。
【0039】
【数27】
ただし、
【数28】
d7 に関して式[数27]を解くと、
【数29】
および
【数30】
が得られる。ここでは、工作機10の加工時動作範囲を考慮した結果、式[数29]を選択することとする。式[数29]は、0゜<θ5 <180゜の条件の下で適用されることができる。
【0040】
次に、加工位置のx座標値px に関する方程式にS2 を掛け合わせ、同時に、加工位置のz座標値pz に関する方程式にC2 を掛け合わせる。
【0041】
【数31】
得られた2つの方程式の和を求めると、
【数32】
が得られる。ここで、得られた式[数32]に以下の三角法的代入を施す。
【0042】
【数33】
ただし、
【数34】
すると、
【数35】
が得られる。この式を変形すると、
【数36】
が得られる。φ−θ2 について解くと、
【数37】
が得られ、したがって、ワーク固定面14のy軸回り回転量θ2 は以下のとおりとなる。
【0043】
【数38】
【数39】
以上の算出過程で用いられる2変数逆正接関数atan2(y,x)によれば、周知のとおり、x、yの符号を考慮しつつy/xの逆正接関数が求められる。
【0044】
図4には、作業者の視点で見たワーク台13の揺動角と、工作機10の運動学モデルから見たy軸回り回転量θ2 と、式[数38]で算出されるy軸回り回転量θ2 との関係が示される。作業者の視点に基づけば、第1水平軸20および第1垂直軸24の交点と、第2水平軸26および第2垂直軸29の交点とを結ぶ直線に対してワーク固定面14が直交する際、言い換えれば、そういった直線上でワーク座標系xyzのz軸が特定される際にワーク台13の揺動角は「0゜」を示す。図4から明らかなように、例えば作業者の視点でワーク台13の揺動角が180゜のとき、運動学モデルから見るとy軸回り回転量θ2 =90゜となる。このとき、式[数38]で算出されるy軸回り回転量θ2 は対応する。その一方で、作業者の視点でワーク台13の揺動角が−180゜のとき、運動学モデルで見るとy軸回り回転量θ2 =−270゜となる。このとき、式[数38]で算出されるy軸回り回転量θ2 =90゜である。そこで、式[数38]の出力が+90゜を超えた場合には、式[数38]の算出値に−360゜を加えれば、y軸回り回転量θ2 の動作範囲−270゜〜+90゜に式[数38]の出力を対応させることができる。その結果、式[数38]のみで、y軸回り回転量θ2 の動作範囲をカバーすることが可能となる。
【0045】
次に、加工位置のz座標値pz に関する方程式にS2 を掛け合わせ、同時に、加工位置のx座標値px に関する方程式にC2 を掛け合わせる。
【0046】
【数40】
得られた2つの方程式の差を求めると、
【数41】
が得られる。また、加工位置のy座標値py に関する方程式をC3 に関して解くと、
【数42】
が得られ、したがって、x軸回り回転量θ3 は以下のとおりとなる。
【0047】
【数43】
さらに、z軸単位ベクトル(bx ,by ,bz )のx座標値bx に関する方程式にS2 を掛け合わせ、同時に、同単位ベクトルのz座標値bz に関する方程式にC2 を掛け合わせる。
【0048】
【数44】
得られた2つの方程式の和を求めると、
【数45】
が得られる。また、
【数46】
であることから、スピンドル12の水平軸回り回転量θ6 は以下のとおりとなる。
【0049】
【数47】
ただし、0゜<θ6 <180゜とする。
【0050】
さらにまた、z軸単位ベクトル(bx ,by ,bz )のy座標値by に関する方程式に次式を適用し、S35に関して解く。
【0051】
【数48】
すると、
【数49】
が得られる。同様に、z軸単位ベクトル(bx ,by ,bz )のx座標値bx に関する方程式およびz座標値bz に関する方程式に次式を適用し、S35に関して解く。
【0052】
【数50】
すると、
【数51】
および
【数52】
が得られる。したがって、θ35は以下のとおりとなる。
【0053】
【数53】
式[数51]および式[数52]は、前述のように算出されるy軸回り回転量θ2 の値に基づいて選択されればよい。例えば、sinθ2 の絶対値が0.5以下であれば式[数51]を選択し、sinθ2 の絶対値が0.5を超える場合には式[数52]を選択するといった具合である。こうした選択によれば、式[数51]および式[数52]の分母の大きさを十分に確保することができる。しかも、前述の条件0゜<θ6 <180゜を考慮すれば、sinθ6 =0になることはない。
【0054】
図5には、作業者の視点で見た回転角θ35と、工作機10の運動学モデルから見た回転角θ35と、式[数53]で算出される回転角θ35との関係が示される。図5から明らかなように、例えば作業者の視点で回転角θ35は−180゜<θ35<+180゜の範囲で変動し、運動学モデルから見ると回転角θ35は0゜<θ35<360゜の範囲で変動する。その一方で、式[数53]で算出される回転角θ35は−180゜<θ35<+180゜の範囲で変動する。したがって、前述と同様に、式[数53]の出力が0゜より小さい場合には、式[数53]の算出値に+360゜を加えれば、要求される範囲に回転角θ35の範囲を対応させることが可能となる。
【0055】
x軸回り回転量θ3 、垂直軸回り回転量θ5 および前述のθ35の間には次式の関係が成立することから、
【数54】
次式に基づいて垂直軸回り回転量θ5 は算出されることができる。
【0056】
【数55】
なお、以上のような運動学方程式や逆運動学方程式は、図3に示される運動学モデルに従って導き出されるもので、運動学モデルの構築の仕方に応じて運動学方程式や逆運動学方程式は修正されることができる。
【0057】
続いて、以上の基本動作を考慮しつつ本発明に係るワーク姿勢制御方法を詳述する。ただし、ここでは、ワーク固定面14とスピンドル12の軸心との間には直交関係が維持されるものとする。したがって、スピンドル12の姿勢はz軸単位ベクトルのベクトル値(0,0,1)で特定されることができる。
【0058】
いま、例えば図6に示されるように、ワーク座標系xyzのyz平面に平行な加工面51を加工する場面を想定する。まず、作業者は、z軸でスピンドル12の軸心を規定する仮想ワーク座標系x′z′に従ってy軸回りで回転するワーク固定面14のy軸回り回転角θA を特定する。続いて、作業者は、こうした仮想ワーク座標系x′z′に従ってワークWの加工位置(px ,py ,pz )を特定する。仮想ワーク座標系x′z′のx′y平面と加工面51との間には平行関係が確立されることから、作業者は、仮想ワーク座標系x′z′のx′座標値px およびy座標値py 、z′座標値pz で簡単にスピンドル12の位置を特定することができる。
【0059】
特定された加工位置がデータ取得回路32に取り込まれると、MPU33は、加工位置(px ,py ,pz )に基づき、スピンドル12の進退移動量d7 を規定する駆動モータ18の回転量や、ワーク固定面14のy軸回り回転量θ2 を規定する駆動モータ22の回転量、ワーク固定面14のx軸回り回転量θ3 を規定する駆動モータ35の回転量、スピンドル12の垂直軸回り回転量θ5 を規定する駆動モータ36の回転量、スピンドル12の水平軸回り回転量θ6 を規定する駆動モータ28の回転量を算出する。こうして算出された回転量に基づき各駆動モータ18、22、35、36、28が作動すると、図7に示されるように、スピンドル12は、ワーク固定面14に直交する姿勢で位置決めされることとなる。
【0060】
このとき、座標系切換指令が座標系切換回路38に取り込まれれば、座標系切換回路38は座標系切換指示信号を出力する。すると、MPU33は、この座標系切換指示信号と同時に受け取る回転角データに基づき、ワーク固定面14のy軸回り回転角θA を生起するy軸回りオフセット回転量を算出する。このy軸回りオフセット回転量を特定する駆動指令信号が駆動モータ22に供給されると、第1水平軸20回りにy軸回り回転角θA でワーク台13は回転し、その結果、図6に示されるように加工面51は工具11に向き合わされる。ただし、駆動モータ22には、予めy軸回りオフセット回転量で補正されたy軸回り回転量θ2 を特定する駆動指令信号が供給されてもよい。
【0061】
例えば図8に示されるように、ワーク座標系xyzのxz平面に平行な加工面52を加工する場合には、作業者は、前述と同様に仮想ワーク座標系y′z′に従ってx軸回りで回転するワーク固定面14のx軸回り回転角θB を特定する。続いて、作業者は、こうした仮想ワーク座標系y′z′に従ってワークWの加工位置(px ,py ,pz )を特定する。仮想ワーク座標系y′z′のxy′平面と加工面52との間には平行関係が確立されることから、作業者は、仮想ワーク座標系y′z′のx座標値px およびy′座標値py 、z′座標値pz で簡単にスピンドル12の位置を特定することができる。
【0062】
特定された加工位置がデータ取得回路32に取り込まれると、MPU33は、加工位置(px ,py ,pz )に基づき、スピンドル12の進退移動量d7 を規定する駆動モータ18の回転量や、ワーク固定面14のy軸回り回転量θ2 を規定する駆動モータ22の回転量、ワーク固定面14のx軸回り回転量θ3 を規定する駆動モータ35の回転量、スピンドル12の垂直軸回り回転量θ5 を規定する駆動モータ36の回転量、スピンドル12の水平軸回り回転量θ6 を規定する駆動モータ28の回転量を算出する。こうして算出された回転量に基づき各駆動モータ18、22、35、36、28が作動すると、図9に示されるように、スピンドル12は、ワーク固定面14に直交する姿勢で位置決めされることとなる。
【0063】
このとき、座標系切換指令が座標系切換回路38に取り込まれれば、座標系切換回路38は座標系切換指示信号を出力する。すると、MPU33は、この座標系切換指示信号と同時に受け取る回転角データに基づき、ワーク固定面14のx軸回り回転角θB を生起するx軸回りオフセット回転量を算出する。このx軸回りオフセット回転量を特定する駆動指令信号が駆動モータ35に供給されると、第1垂直軸24回りにx軸回り回転角θB でワーク台13は回転し、その結果、図8に示されるように加工面52は工具11に向き合わされる。前述と同様に、駆動モータ35には、予めx軸回りオフセット回転量で補正されたx軸回り回転量θ3 を特定する駆動指令信号が供給されてもよい。
【0064】
なお、以上のワーク姿勢制御方法では、ワーク固定面14のy軸回り回転角θA およびx軸回り回転角θB が同時に特定されてもよく、その場合には、MPU33は、y軸回りオフセット回転量およびx軸回りオフセット回転量を同時に算出すればよい。
【0065】
【発明の効果】
以上のように本発明によれば、ワークに対してスピンドルを位置決めするにあたってワーク台の姿勢を変化させる工作機で、ワークの姿勢を意識せずに簡単にNCプログラムを記述することができる。
【図面の簡単な説明】
【図1】工作機の全体構成を概略的に示す斜視図である。
【図2】工作機の制御系を概略的に示すブロック図である。
【図3】工作機の運動学モデルを示す図である。
【図4】逆運動学方程式に基づく算出結果と、運動学モデルに基づくワーク揺動角θ2 の動作範囲との関係を示す図である。
【図5】逆運動学方程式に基づく算出結果と、運動学モデルに基づく回転角θ35の範囲との関係を示す図である。
【図6】第1水平軸回りで回転するワーク台と仮想ワーク座標系との関係を概略的に示す側面図である。
【図7】y軸回りオフセット回転量を用いずに制御されたワーク台を概略的に示す側面図である。
【図8】第1垂直軸回りで回転するワーク台と仮想ワーク座標系との関係を概略的に示す平面図である。
【図9】x軸回りオフセット回転量を用いずに制御されたワーク台を概略的に示す平面図である。
【符号の説明】
10 工作機、12 スピンドル、14 ワーク固定面、20 y軸(1座標軸)に相当する第1水平軸、24 x軸(1座標軸)に相当する第1垂直軸、26 水平軸としての第2水平軸、29 垂直軸としての第2垂直軸、W ワーク。
【発明の属する技術分野】
本発明は、ワークに対してスピンドルを位置決めするにあたってワーク台の姿勢を変化させる工作機に関し、特に、そういった工作機でワークの姿勢を制御する工作機のワーク姿勢制御方法に関する。
【0002】
【従来の技術】
例えば特開平9−225761号公報に開示されるように、ワークが固定されるワーク台の姿勢を変化させるとともに、工具が装着されるスピンドルの姿勢を変化させる工作機は知られている。この工作機は、共通の基台上で1対の垂直軸回りに回転する第1および第2支持部材を備える。第1支持部材には、水平軸回りに揺動自在にワーク台が支持される。その一方で、第2支持部材には、水平軸回りで揺動自在にスピンドルが支持される。こうした軸回りの回転や揺動を利用した工作機では、直交3軸に案内されて工具が移動する既存の工作機に比べて、小型化や軽量化を容易に実現することができる。
【0003】
このような工作機では、垂直軸回りで回転する第1および第2支持部材の回転量や、水平軸回りで揺動するワーク台およびスピンドルの揺動量に基づき、ワークに対する工具の位置が特定される。ワークの加工面に沿って工具を移動させるには、第1および第2支持部材の回転量を同時に制御しなければならず、また、ワーク台およびスピンドルの揺動量を同時に制御しなければならない。こうした同時制御が実現されなければ、加工面に対する工具の姿勢が変化してしまうからである。こうした同時制御には、一般に、ロボット工学に基づく逆運動学方程式が用いられればよい。
【0004】
【発明が解決しようとする課題】
一般に、工作機では、ワークの加工面に対してスピンドルの軸心が直交することが望まれる。加工面とスピンドルの軸心との間に直交関係が維持されれば、加工面に沿ったx座標値およびy座標値を維持したまま、z座標値の増減値を用いてスピンドルの進退移動を簡単に特定することができるからである。一般に、ワーク上の複数の加工面に対して常にスピンドルの直交姿勢を維持するには、ワーク台にワークを取り付け直して所望の加工面をスピンドルに向き合わせたり、いわゆるターンテーブルを用いてスピンドルに向き合う加工面を入れ替えたりする必要がある。ワークを取り付け直せば作業時間は増大し、ターンテーブルを用いれば設備コストは増大してしまう。
【0005】
その一方で、特開平9−225761号に開示される工作機では、ワークを取り付け直したりターンテーブルを用いたりすることなく、ワーク台の揺動や第1支持部材の回転を通じてワーク上の複数の加工面を順番にスピンドルに向き合わせることができる。しかしながら、逆運動学方程式を用いてワーク台に対するスピンドルの位置や姿勢を制御する場合、スピンドルの位置や姿勢は、ワークを基準とした共通のワーク座標系に従って特定されなければならない。こうしたワーク座標系では、ワーク台を揺動させたり第1支持部材を回転させたりすると、z軸とスピンドルの軸心方向とを一致させることはできない。したがって、作業者は、z座標値の増減値を用いて単純にスピンドルの進退移動量を特定することができなくなってしまう。作業者は、z座標値だけでなくx座標値やy座標値の増減値を求めてNCプログラムを記述しなければならなくなる。
【0006】
本発明は、上記実状に鑑みてなされたもので、ワークに対してスピンドルを位置決めするにあたってワーク台の姿勢を変化させる工作機で、ワークの姿勢を意識せずに簡単にNCプログラムを記述することができるワーク姿勢制御方法を提供することを目的とする。
【0007】
【課題を解決するための手段】
上記目的を達成するために、第1発明によれば、z軸でスピンドルの軸心方向を規定する仮想ワーク座標系に従って、z軸に直交する1座標軸回りで回転するワーク固定面の軸回り回転角を特定する回転角データを取得する工程と、軸回り回転角で回転したワーク固定面に固定されるワークの加工位置を仮想ワーク座標系に従って特定する加工位置データを取得する工程と、加工位置データに基づき、仮想ワーク座標系に従ってスピンドルを位置決めする際に1座標軸回りで回転するワーク固定面の回転量を算出する工程と、回転角データに基づき、ワーク固定面の軸回り回転角を生起するオフセット回転量を算出する工程とを備えることを特徴とする工作機のワーク姿勢制御方法が提供される。
【0008】
かかるワーク姿勢制御方法によれば、ワーク台すなわちワーク固定面が軸回りで回転しても、ワークの加工位置は、常にz軸でスピンドルの軸心方向を規定する仮想ワーク座標系に従って特定されることができる。したがって、作業者は、仮想ワーク座標系のx座標値およびy座標値を維持したまま、z座標値の増減値を用いてスピンドルの進退移動量を簡単に特定することができる。スピンドルの位置決めにあたってワークすなわちワーク固定面を基準とした固有ワーク座標系が用いられると、算出された回転量でワーク固定面が回転しても、固有ワーク座標系のz軸とスピンドルの軸心方向との間には軸回り回転角のずれが生じる。算出されたオフセット回転量でワーク台が回転すれば、そういったずれは解消され、その結果、作業者の意図した向きでスピンドルに対してワークを向き合わせることが可能となる。
【0009】
例えばワーク台が水平軸回りで回転する場合には、ワーク姿勢制御方法は、前記スピンドルを位置決めするにあたって、前記1座標軸に平行な水平軸回りでスピンドルを回転させる水平軸回り回転量を算出すればよい。算出された水平軸回り回転量が用いられれば、ワーク台の回転とスピンドルの回転とによって、ワークに対するスピンドルの姿勢を維持しながらワークに対してスピンドルは位置決めされることができる。このとき、前記回転量および水平軸回り回転量は逆運動学方程式に基づいて算出されればよい。
【0010】
その一方で、例えばワーク台が垂直軸回りで回転する場合には、ワーク姿勢制御方法は、前記スピンドルを位置決めするにあたって、前記1座標軸に平行な垂直軸回りでスピンドルを回転させる垂直軸回り回転量を算出すればよい。算出された垂直軸回り回転量が用いられれば、ワーク台の回転とスピンドルの回転とによって、ワークに対するスピンドルの姿勢を維持しながらワークに対してスピンドルは位置決めされることができる。このとき、前記回転量および垂直軸回り回転量は逆運動学方程式に基づいて算出されればよい。
【0011】
また、第2発明によれば、z軸でスピンドルの軸心方向を規定する仮想ワーク座標系に従ってx軸およびy軸回りで回転するワーク固定面のx軸回り回転角およびy軸回り回転角を特定する回転角データを取得する工程と、x軸回り回転角およびy軸回り回転角で回転したワーク固定面に固定されるワークの加工位置を仮想ワーク座標系に従って特定する加工位置データを取得する工程と、加工位置データに基づき、仮想ワーク座標系に従ってスピンドルを位置決めする際に必要とされるワーク固定面のx軸回り回転量およびy軸回り回転量を算出する工程と、回転角データに基づき、ワーク固定面のx軸回り回転角を生起するx軸回りオフセット回転量を算出する工程と、回転角データに基づき、ワーク固定面のy軸回り回転角を生起するy軸回りオフセット回転量を算出する工程とを備えることを特徴とする工作機のワーク姿勢制御方法が提供される。
【0012】
かかるワーク姿勢制御方法によれば、ワーク台すなわちワーク固定面が直交2軸回りでそれぞれ回転しても、ワークの加工位置は、常にz軸でスピンドルの軸心方向を規定する仮想ワーク座標系に従って特定されることができる。したがって、作業者は、仮想ワーク座標系のx座標値およびy座標値を維持したまま、z座標値の増減値を用いてスピンドルの進退移動量を簡単に特定することができる。スピンドルの位置決めにあたってワークすなわちワーク固定面を基準とした固有ワーク座標系が用いられると、算出されたx軸回り回転量およびy軸回り回転量でワーク固定面が回転しても、固有ワーク座標系のz軸とスピンドルの軸心方向との間にはx軸回り回転角およびy軸回り回転角のずれが生じる。算出されたx軸回りオフセット回転量およびy軸回りオフセット回転量でワーク台が回転すれば、そういったずれは解消され、その結果、作業者の意図した向きでスピンドルに対してワークを向き合わせることが可能となる。
【0013】
例えばワーク台が水平軸回りおよび垂直軸回りで同時に回転する場合には、ワーク姿勢制御方法は、前記スピンドルを位置決めするにあたって、前記x軸に平行な垂直軸回りでスピンドルを回転させる垂直軸回り回転量を算出すればよく、前記y軸に平行な水平軸回りでスピンドルを回転させる水平軸回り回転量を算出すればよい。算出された水平軸回転量や垂直軸回り回転量が用いられれば、ワーク台の回転とスピンドルの回転とによって、ワークに対するスピンドルの姿勢を維持しながらワークに対してスピンドルは位置決めされることができる。このとき、x軸回り回転量、y軸回り回転量、垂直軸回り回転量および水平軸回り回転量は逆運動学方程式に基づいて算出されればよい。この場合、仮想ワーク座標系のx軸やy軸は互いに入れ替えられてもよい。
【0014】
なお、以上のワーク姿勢制御方法が適用される工作機では、スピンドルの先端に、スピンドルの軸心回りで回転するドリルやエンドミルといった一般の工具が装着されてもよく、スピンドルの軸心に沿ってレーザビームを照射するレーザ照射源やウォータージェットを発射するウォータージェット源が支持されてもよい。
【0015】
【発明の実施の形態】
以下、添付図面を参照しつつ本発明の一実施形態を説明する。
【0016】
図1は、本発明に係る工作機のワーク姿勢制御方法が適用される工作機を概略的に示す。この工作機10は、工具11が装着されるスピンドル12と、スピンドル12に装着された工具11に対してワークを向かい合わせに保持するワーク台13とを備える。ワーク台13に保持されるワークを加工するにあたって、ワークは、ワーク台13の正面に形成されるワーク固定面14に固定される。スピンドル12は軸心回りに高速で工具11を回転させることができる。
【0017】
スピンドル12はクイル15に進退自在に挿入される。クイル15には、スピンドル12に平行に延びるねじ軸16が支持される。スピンドル12の後端には、ねじ軸16に噛み合うナット部材17が固定される。駆動モータ18の働きを通じてねじ軸16が軸心回りに回転すると、ねじ軸16上をナット部材17が移動し、その結果、スピンドル12の進退移動が実現される。この進退移動によって、スピンドル12すなわち工具11は、ワーク固定面14に向かって前進したりワーク固定面14から後退したりすることができる。スピンドル12の進退移動量は、周知のとおり、駆動モータ18の回転量に基づいて決定される。
【0018】
ワーク台13は、第1水平軸20回りで揺動自在に第1支持部材21に支持される。第1水平軸20には駆動モータ(例えばサーボモータ)22が連結される。この駆動モータ22の働きを通じて、ワーク台13は第1水平軸20回りで揺動することができる。ワーク台13の揺動角すなわちワーク固定面14のy軸回り回転量は駆動モータ22の回転量によって特定されることができる。
【0019】
しかも、第1支持部材21は、基台23から垂直に立ち上がる第1垂直軸24回りで回転することができる。第1支持部材21の回転は駆動モータ(図示せず)の働きによって実現される。第1垂直軸24回りで回転する第1支持部材21の回転角すなわちワーク固定面14のx軸回り回転量は駆動モータの回転量によって特定されることができる。
【0020】
一方で、前述のクイル15は、第2水平軸26回りで揺動自在に第2支持部材27に支持される。第2水平軸26には駆動モータ(例えばサーボモータ)28が連結される。この駆動モータ28の働きを通じて、クイル15すなわちスピンドル12は第2水平軸26回りで揺動することができる。スピンドル12の揺動角すなわち水平軸回り回転量は駆動モータ28の回転量によって特定されることができる。
【0021】
しかも、第2支持部材27は、第1垂直軸24に平行に基台23から立ち上がる第2垂直軸29回りで回転することができる。第2支持部材27の回転は駆動モータ(図示せず)の働きによって実現される。第2垂直軸29回りで回転する第2支持部材27の回転角すなわち垂直軸回り回転量は駆動モータの回転量によって特定されることができる。
【0022】
図2に示されるように、ワーク台13およびスピンドル12の姿勢や、ワーク台13に対する工具すなわちスピンドル12先端の位置はコントローラ31によって制御される。このコントローラ31は、ワーク固定面14に設定されるワーク座標系xyz上でワークの加工位置(px ,py ,pz )を特定する加工位置データや、ワーク座標系xyz上で工具11すなわちスピンドル12の姿勢を特定する工具姿勢データを取得するデータ取得回路32を備える。このデータ取得回路32には、例えばNCプログラムに記述される加工位置データや工具姿勢データが取り込まれればよい。
【0023】
演算処理回路(MPU)33は、後述するように、データ取得回路32から供給される加工位置データおよび工具姿勢データに基づき、スピンドル12の進退移動量d7 を規定する駆動モータ18の回転量や、ワーク固定面14のy軸回り回転量θ2 を規定する駆動モータ22の回転量、ワーク固定面14のx軸回り回転量θ3 を規定する駆動モータ35の回転量、スピンドル12の垂直軸回り回転量θ5 を規定する駆動モータ36の回転量、スピンドル12の水平軸回り回転量θ6 を規定する駆動モータ28の回転量を算出する。この算出にあたって、MPU33は、第1および第2垂直軸24、29の間隔d4 を示す軸間距離データや、第1および第2水平軸20、26の高さd3 、d5 を示す第1および第2高さデータ、第1水平軸20からワーク固定面14すなわちワーク座標系xyzの原点までの距離d1 を示すワーク揺動半径データをメモリ37から読み出す。メモリ37には、間隔d4 や高さd3 、d5 、距離d1 の実測値が予め格納されていればよい。
【0024】
座標系切換指示回路38は、作業者の手動操作やNCプログラムに書き込まれた座標系切換指令に応じて座標系切換指示信号を出力する。この座標系切換指示信号が出力されると、MPU33には、z軸でスピンドル12の基準姿勢を規定する仮想ワーク座標系上で特定されるワーク固定面14のy軸回り回転角θA およびx軸回り回転角θB が同時に受け渡される。y軸回り回転角θA は、仮想ワーク座標系に投影されるワーク固定面14の第1水平軸20回り回転角度によって特定される一方で、x軸回り回転角θB は、仮想ワーク座標系に投影されるワーク固定面14の第1垂直軸24回り回転角度によって特定される。座標系切換指示回路38には、作業者の手動操作やNCプログラムの記述に応じて、こうしたy軸回り回転角θA およびx軸回り回転角θB を特定する回転角データが取り込まれる。
【0025】
各駆動モータ18、22、35、36、28の回転量は、駆動モータごとに設けられるエンコーダ39〜43によって検出されることができる。検出された各駆動モータ18、22、35、36、28の回転量に基づいて、MPU33は、ワーク固定面14に設定されたワーク座標系xyzに基づき工具11の位置や姿勢を算出することができる。表示器駆動回路44は、算出された工具11の位置や姿勢を表示器45に表示させることができる。
【0026】
ここで、コントローラ31の基本動作を説明する。加工位置データや工具姿勢データに基づいてワークの加工位置(px ,py ,pz )すなわち工具11の先端位置や工具11すなわちスピンドル12の姿勢が特定されると、MPU33は、次式に従ってスピンドル12の進退移動量d7 を算出する。ただし、ここでは、ワーク座標系xyzのz軸は、第1垂直軸24および第1水平軸20の交点で第1水平軸20に直交する。したがって、第1水平軸20回りでワーク台13が揺動するとワーク座標系xyzはその揺動に追随することとなる。しかも、スピンドル12の軸心は、第2垂直軸29および第2水平軸26の交点から第2水平軸26に垂直に延びる。工具11の姿勢を特定するにあたっては、ワーク座標系xyzに固有のz軸単位ベクトルのベクトル値(bx ,by ,bz )が用いられればよい。
【0027】
【数1】
ただし、
【数2】
こうして進退移動量d7 が算出されると、MPU33は、次式に従ってワーク固定面14のy軸回り回転量θ2 を算出する。
【0028】
【数3】
ただし、
【数4】
ワーク固定面14のy軸回り回転量θ2 が算出されると、MPU33は、次式に従ってワーク固定面14のx軸回り回転量θ3 を算出する。
【0029】
【数5】
ただし、
【数6】
同時に、MPU33は、次式に従ってスピンドル12の水平軸回り回転量θ6 を算出する。
【0030】
【数7】
ただし、
【数8】
こうしてスピンドル12の水平軸回り回転量θ6 が算出されると、続いてMPU33は、次式に従ってスピンドル12の垂直軸回り回転量θ5 を算出する。
【0031】
【数9】
ただし、
【数10】
MPU33は、算出された進退移動量d7 、y軸回り回転量θ2 、x軸回り回転量θ3 、垂直軸回り回転量θ5 および水平軸回り回転量θ6 を特定する駆動指令信号を各駆動モータ18、22、35、36、28に供給する。その結果、駆動モータ18、22、35、36、28が作動すると、工具11の先端はワーク上の加工位置(px ,py ,pz )に位置決めされる。しかも、このとき、工具11の姿勢は、ワーク座標系xyzに固有のz軸単位ベクトル(bx ,by ,bz )によって特定される。前述したMPU33の処理によれば、このベクトル値(bx ,by ,bz )が維持される限り、工具11を移動させても加工位置(px ,py ,pz )に対する工具11の姿勢は変化しない。
【0032】
ここで、前述したMPU33の算出処理を簡単に検証する。まず、ワーク固定面に対して基準座標系を設定し、ロボット工学に基づく運動学モデル(リンクモデル)を構築する。例えば図3に示されるように、ワーク固定面14に対して基準座標系X0 Z0 が設定されると、ワーク台13と第1支持部材21とのジョイントすなわち第1水平軸20回りでは第1座標系X1 Z1 および第2座標系X2 Z2 が設定されることができる。同様に、第1支持部材21と基台23とのジョイントすなわち第1垂直軸24回りでは第3座標系X3 Z3 が規定され、基台23と第2支持部材27とのジョイントすなわち第2垂直軸29回りでは第4座標系X4 Z4 が規定されることができる。さらに、第2支持部材27とクイル15とのジョイントすなわち第2水平軸26回りでは第5座標系X5 Z5 および第6座標系X6 Z6 が規定されることができる。最終的に、クイル15に挿入されるスピンドル12の先端では第7座標系X7 Z7 が規定される。設定された基準座標系X0 Z0 に基づけば、第7座標系X7 Z7 の原点すなわち加工位置はベクトル(px ,py ,pz )によって特定されることができる。
【0033】
特定された運動学モデルに基づき、各座標系ごとにパラメータθn (Zn−1 回りの回転角)、dn (Zn−1 に沿った距離)、an (Xn に沿った距離)、αn (Xn 回りの回転角)を特定すると次表が得られる。
【0034】
【表1】
得られたパラメータθn 、dn 、an 、αn に基づいて各座標系X1 Z1 〜X7 Z7 ごとに変換行列An を特定すると、
【数11】
ただし、
【数12】
が得られる。その結果、基準座標系X0 Z0 に対する工具11の姿勢や位置は、運動学方程式に従い、
【数13】
ただし、
【数14】
で表現されることができる。したがって、以上の運動学方程式に従えば、エンコーダ39〜43で検出される進退移動量d7 、y軸回り回転量θ2 、x軸回り回転量θ3 、垂直軸回り回転量θ5 および水平軸回り回転量θ6 に基づき、加工位置(px ,py ,pz )や、工具11の姿勢を特定するz軸単位ベクトルのベクトル値(bx ,by ,bz )を算出することができる。算出された加工位置(px ,py ,pz )やベクトル値(bx ,by ,bz )は表示器45に表示されればよい。その結果、作業者は、加工位置や工具の姿勢を確認しながら工作機10を操作することが可能となる。
【0035】
続いて、得られた運動学方程式に基づいて逆運動学方程式を導き出す。まず、加工位置のx座標値px に関する方程式を以下のように変形する。
【0036】
【数15】
両辺を2乗すると、
【数16】
が得られる。同様に、加工位置のy座標値py およびz座標値pz に関する方程式を以下のように変形する。
【0037】
【数17】
【数18】
【数19】
【数20】
式[数16]および式[数20]の和は、
【数21】
として求められる。ここで、
【数22】
を適用すると、
【数23】
が得られる。さらに、
【数24】
を適用すると、
【数25】
が得られる。
【0038】
得られた式[数25]を展開し、d7 に関して整理すると、
【数26】
が得られる。ここで、式[数26]を以下のように置換する。
【0039】
【数27】
ただし、
【数28】
d7 に関して式[数27]を解くと、
【数29】
および
【数30】
が得られる。ここでは、工作機10の加工時動作範囲を考慮した結果、式[数29]を選択することとする。式[数29]は、0゜<θ5 <180゜の条件の下で適用されることができる。
【0040】
次に、加工位置のx座標値px に関する方程式にS2 を掛け合わせ、同時に、加工位置のz座標値pz に関する方程式にC2 を掛け合わせる。
【0041】
【数31】
得られた2つの方程式の和を求めると、
【数32】
が得られる。ここで、得られた式[数32]に以下の三角法的代入を施す。
【0042】
【数33】
ただし、
【数34】
すると、
【数35】
が得られる。この式を変形すると、
【数36】
が得られる。φ−θ2 について解くと、
【数37】
が得られ、したがって、ワーク固定面14のy軸回り回転量θ2 は以下のとおりとなる。
【0043】
【数38】
【数39】
以上の算出過程で用いられる2変数逆正接関数atan2(y,x)によれば、周知のとおり、x、yの符号を考慮しつつy/xの逆正接関数が求められる。
【0044】
図4には、作業者の視点で見たワーク台13の揺動角と、工作機10の運動学モデルから見たy軸回り回転量θ2 と、式[数38]で算出されるy軸回り回転量θ2 との関係が示される。作業者の視点に基づけば、第1水平軸20および第1垂直軸24の交点と、第2水平軸26および第2垂直軸29の交点とを結ぶ直線に対してワーク固定面14が直交する際、言い換えれば、そういった直線上でワーク座標系xyzのz軸が特定される際にワーク台13の揺動角は「0゜」を示す。図4から明らかなように、例えば作業者の視点でワーク台13の揺動角が180゜のとき、運動学モデルから見るとy軸回り回転量θ2 =90゜となる。このとき、式[数38]で算出されるy軸回り回転量θ2 は対応する。その一方で、作業者の視点でワーク台13の揺動角が−180゜のとき、運動学モデルで見るとy軸回り回転量θ2 =−270゜となる。このとき、式[数38]で算出されるy軸回り回転量θ2 =90゜である。そこで、式[数38]の出力が+90゜を超えた場合には、式[数38]の算出値に−360゜を加えれば、y軸回り回転量θ2 の動作範囲−270゜〜+90゜に式[数38]の出力を対応させることができる。その結果、式[数38]のみで、y軸回り回転量θ2 の動作範囲をカバーすることが可能となる。
【0045】
次に、加工位置のz座標値pz に関する方程式にS2 を掛け合わせ、同時に、加工位置のx座標値px に関する方程式にC2 を掛け合わせる。
【0046】
【数40】
得られた2つの方程式の差を求めると、
【数41】
が得られる。また、加工位置のy座標値py に関する方程式をC3 に関して解くと、
【数42】
が得られ、したがって、x軸回り回転量θ3 は以下のとおりとなる。
【0047】
【数43】
さらに、z軸単位ベクトル(bx ,by ,bz )のx座標値bx に関する方程式にS2 を掛け合わせ、同時に、同単位ベクトルのz座標値bz に関する方程式にC2 を掛け合わせる。
【0048】
【数44】
得られた2つの方程式の和を求めると、
【数45】
が得られる。また、
【数46】
であることから、スピンドル12の水平軸回り回転量θ6 は以下のとおりとなる。
【0049】
【数47】
ただし、0゜<θ6 <180゜とする。
【0050】
さらにまた、z軸単位ベクトル(bx ,by ,bz )のy座標値by に関する方程式に次式を適用し、S35に関して解く。
【0051】
【数48】
すると、
【数49】
が得られる。同様に、z軸単位ベクトル(bx ,by ,bz )のx座標値bx に関する方程式およびz座標値bz に関する方程式に次式を適用し、S35に関して解く。
【0052】
【数50】
すると、
【数51】
および
【数52】
が得られる。したがって、θ35は以下のとおりとなる。
【0053】
【数53】
式[数51]および式[数52]は、前述のように算出されるy軸回り回転量θ2 の値に基づいて選択されればよい。例えば、sinθ2 の絶対値が0.5以下であれば式[数51]を選択し、sinθ2 の絶対値が0.5を超える場合には式[数52]を選択するといった具合である。こうした選択によれば、式[数51]および式[数52]の分母の大きさを十分に確保することができる。しかも、前述の条件0゜<θ6 <180゜を考慮すれば、sinθ6 =0になることはない。
【0054】
図5には、作業者の視点で見た回転角θ35と、工作機10の運動学モデルから見た回転角θ35と、式[数53]で算出される回転角θ35との関係が示される。図5から明らかなように、例えば作業者の視点で回転角θ35は−180゜<θ35<+180゜の範囲で変動し、運動学モデルから見ると回転角θ35は0゜<θ35<360゜の範囲で変動する。その一方で、式[数53]で算出される回転角θ35は−180゜<θ35<+180゜の範囲で変動する。したがって、前述と同様に、式[数53]の出力が0゜より小さい場合には、式[数53]の算出値に+360゜を加えれば、要求される範囲に回転角θ35の範囲を対応させることが可能となる。
【0055】
x軸回り回転量θ3 、垂直軸回り回転量θ5 および前述のθ35の間には次式の関係が成立することから、
【数54】
次式に基づいて垂直軸回り回転量θ5 は算出されることができる。
【0056】
【数55】
なお、以上のような運動学方程式や逆運動学方程式は、図3に示される運動学モデルに従って導き出されるもので、運動学モデルの構築の仕方に応じて運動学方程式や逆運動学方程式は修正されることができる。
【0057】
続いて、以上の基本動作を考慮しつつ本発明に係るワーク姿勢制御方法を詳述する。ただし、ここでは、ワーク固定面14とスピンドル12の軸心との間には直交関係が維持されるものとする。したがって、スピンドル12の姿勢はz軸単位ベクトルのベクトル値(0,0,1)で特定されることができる。
【0058】
いま、例えば図6に示されるように、ワーク座標系xyzのyz平面に平行な加工面51を加工する場面を想定する。まず、作業者は、z軸でスピンドル12の軸心を規定する仮想ワーク座標系x′z′に従ってy軸回りで回転するワーク固定面14のy軸回り回転角θA を特定する。続いて、作業者は、こうした仮想ワーク座標系x′z′に従ってワークWの加工位置(px ,py ,pz )を特定する。仮想ワーク座標系x′z′のx′y平面と加工面51との間には平行関係が確立されることから、作業者は、仮想ワーク座標系x′z′のx′座標値px およびy座標値py 、z′座標値pz で簡単にスピンドル12の位置を特定することができる。
【0059】
特定された加工位置がデータ取得回路32に取り込まれると、MPU33は、加工位置(px ,py ,pz )に基づき、スピンドル12の進退移動量d7 を規定する駆動モータ18の回転量や、ワーク固定面14のy軸回り回転量θ2 を規定する駆動モータ22の回転量、ワーク固定面14のx軸回り回転量θ3 を規定する駆動モータ35の回転量、スピンドル12の垂直軸回り回転量θ5 を規定する駆動モータ36の回転量、スピンドル12の水平軸回り回転量θ6 を規定する駆動モータ28の回転量を算出する。こうして算出された回転量に基づき各駆動モータ18、22、35、36、28が作動すると、図7に示されるように、スピンドル12は、ワーク固定面14に直交する姿勢で位置決めされることとなる。
【0060】
このとき、座標系切換指令が座標系切換回路38に取り込まれれば、座標系切換回路38は座標系切換指示信号を出力する。すると、MPU33は、この座標系切換指示信号と同時に受け取る回転角データに基づき、ワーク固定面14のy軸回り回転角θA を生起するy軸回りオフセット回転量を算出する。このy軸回りオフセット回転量を特定する駆動指令信号が駆動モータ22に供給されると、第1水平軸20回りにy軸回り回転角θA でワーク台13は回転し、その結果、図6に示されるように加工面51は工具11に向き合わされる。ただし、駆動モータ22には、予めy軸回りオフセット回転量で補正されたy軸回り回転量θ2 を特定する駆動指令信号が供給されてもよい。
【0061】
例えば図8に示されるように、ワーク座標系xyzのxz平面に平行な加工面52を加工する場合には、作業者は、前述と同様に仮想ワーク座標系y′z′に従ってx軸回りで回転するワーク固定面14のx軸回り回転角θB を特定する。続いて、作業者は、こうした仮想ワーク座標系y′z′に従ってワークWの加工位置(px ,py ,pz )を特定する。仮想ワーク座標系y′z′のxy′平面と加工面52との間には平行関係が確立されることから、作業者は、仮想ワーク座標系y′z′のx座標値px およびy′座標値py 、z′座標値pz で簡単にスピンドル12の位置を特定することができる。
【0062】
特定された加工位置がデータ取得回路32に取り込まれると、MPU33は、加工位置(px ,py ,pz )に基づき、スピンドル12の進退移動量d7 を規定する駆動モータ18の回転量や、ワーク固定面14のy軸回り回転量θ2 を規定する駆動モータ22の回転量、ワーク固定面14のx軸回り回転量θ3 を規定する駆動モータ35の回転量、スピンドル12の垂直軸回り回転量θ5 を規定する駆動モータ36の回転量、スピンドル12の水平軸回り回転量θ6 を規定する駆動モータ28の回転量を算出する。こうして算出された回転量に基づき各駆動モータ18、22、35、36、28が作動すると、図9に示されるように、スピンドル12は、ワーク固定面14に直交する姿勢で位置決めされることとなる。
【0063】
このとき、座標系切換指令が座標系切換回路38に取り込まれれば、座標系切換回路38は座標系切換指示信号を出力する。すると、MPU33は、この座標系切換指示信号と同時に受け取る回転角データに基づき、ワーク固定面14のx軸回り回転角θB を生起するx軸回りオフセット回転量を算出する。このx軸回りオフセット回転量を特定する駆動指令信号が駆動モータ35に供給されると、第1垂直軸24回りにx軸回り回転角θB でワーク台13は回転し、その結果、図8に示されるように加工面52は工具11に向き合わされる。前述と同様に、駆動モータ35には、予めx軸回りオフセット回転量で補正されたx軸回り回転量θ3 を特定する駆動指令信号が供給されてもよい。
【0064】
なお、以上のワーク姿勢制御方法では、ワーク固定面14のy軸回り回転角θA およびx軸回り回転角θB が同時に特定されてもよく、その場合には、MPU33は、y軸回りオフセット回転量およびx軸回りオフセット回転量を同時に算出すればよい。
【0065】
【発明の効果】
以上のように本発明によれば、ワークに対してスピンドルを位置決めするにあたってワーク台の姿勢を変化させる工作機で、ワークの姿勢を意識せずに簡単にNCプログラムを記述することができる。
【図面の簡単な説明】
【図1】工作機の全体構成を概略的に示す斜視図である。
【図2】工作機の制御系を概略的に示すブロック図である。
【図3】工作機の運動学モデルを示す図である。
【図4】逆運動学方程式に基づく算出結果と、運動学モデルに基づくワーク揺動角θ2 の動作範囲との関係を示す図である。
【図5】逆運動学方程式に基づく算出結果と、運動学モデルに基づく回転角θ35の範囲との関係を示す図である。
【図6】第1水平軸回りで回転するワーク台と仮想ワーク座標系との関係を概略的に示す側面図である。
【図7】y軸回りオフセット回転量を用いずに制御されたワーク台を概略的に示す側面図である。
【図8】第1垂直軸回りで回転するワーク台と仮想ワーク座標系との関係を概略的に示す平面図である。
【図9】x軸回りオフセット回転量を用いずに制御されたワーク台を概略的に示す平面図である。
【符号の説明】
10 工作機、12 スピンドル、14 ワーク固定面、20 y軸(1座標軸)に相当する第1水平軸、24 x軸(1座標軸)に相当する第1垂直軸、26 水平軸としての第2水平軸、29 垂直軸としての第2垂直軸、W ワーク。
Claims (9)
- z軸でスピンドルの軸心方向を規定する仮想ワーク座標系に従って、z軸に直交する1座標軸回りで回転するワーク固定面の軸回り回転角を特定する回転角データを取得する工程と、軸回り回転角で回転したワーク固定面に固定されるワークの加工位置を仮想ワーク座標系に従って特定する加工位置データを取得する工程と、加工位置データに基づき、仮想ワーク座標系に従ってスピンドルを位置決めする際に1座標軸回りで回転するワーク固定面の回転量を算出する工程と、回転角データに基づき、ワーク固定面の軸回り回転角を生起するオフセット回転量を算出する工程とを備えることを特徴とする工作機のワーク姿勢制御方法。
- 請求項1に記載の工作機のワーク姿勢制御方法において、前記スピンドルを位置決めするにあたって、前記1座標軸に平行な水平軸回りでスピンドルを回転させる水平軸回り回転量を算出することを特徴とする工作機のワーク姿勢制御方法。
- 請求項2に記載の工作機のワーク姿勢制御方法において、前記回転量および水平軸回り回転量は逆運動学方程式に基づいて算出されることを特徴とする工作機のワーク姿勢制御方法。
- 請求項1に記載の工作機のワーク姿勢制御方法において、前記スピンドルを位置決めするにあたって、前記1座標軸に平行な垂直軸回りでスピンドルを回転させる垂直軸回り回転量を算出することを特徴とする工作機のワーク姿勢制御方法。
- 請求項4に記載の工作機のワーク姿勢制御方法において、前記回転量および垂直軸回り回転量は逆運動学方程式に基づいて算出されることを特徴とする工作機のワーク姿勢制御方法。
- z軸でスピンドルの軸心方向を規定する仮想ワーク座標系に従ってx軸およびy軸回りで回転するワーク固定面のx軸回り回転角およびy軸回り回転角を特定する回転角データを取得する工程と、x軸回り回転角およびy軸回り回転角で回転したワーク固定面に固定されるワークの加工位置を仮想ワーク座標系に従って特定する加工位置データを取得する工程と、加工位置データに基づき、仮想ワーク座標系に従ってスピンドルを位置決めする際に必要とされるワーク固定面のx軸回り回転量およびy軸回り回転量を算出する工程と、回転角データに基づき、ワーク固定面のx軸回り回転角を生起するx軸回りオフセット回転量を算出する工程と、回転角データに基づき、ワーク固定面のy軸回り回転角を生起するy軸回りオフセット回転量を算出する工程とを備えることを特徴とする工作機のワーク姿勢制御方法。
- 請求項6に記載の工作機のワーク姿勢制御方法において、前記スピンドルを位置決めするにあたって、前記x軸に平行な垂直軸回りでスピンドルを回転させる垂直軸回り回転量を算出することを特徴とする工作機のワーク姿勢制御方法。
- 請求項7に記載の工作機のワーク姿勢制御方法において、前記スピンドルを位置決めするにあたって、前記y軸に平行な水平軸回りでスピンドルを回転させる水平軸回り回転量を算出することを特徴とする工作機のワーク姿勢制御方法。
- 請求項8に記載の工作機のワーク姿勢制御方法において、前記x軸回り回転量、y軸回り回転量、垂直軸回り回転量および水平軸回り回転量は逆運動学方程式に基づいて算出されることを特徴とする工作機のワーク姿勢制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP04830499A JP3576421B2 (ja) | 1999-02-25 | 1999-02-25 | 工作機のワーク姿勢制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP04830499A JP3576421B2 (ja) | 1999-02-25 | 1999-02-25 | 工作機のワーク姿勢制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2000250615A JP2000250615A (ja) | 2000-09-14 |
JP3576421B2 true JP3576421B2 (ja) | 2004-10-13 |
Family
ID=12799699
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP04830499A Expired - Fee Related JP3576421B2 (ja) | 1999-02-25 | 1999-02-25 | 工作機のワーク姿勢制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3576421B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4770076B2 (ja) * | 2001-07-02 | 2011-09-07 | 三菱電機株式会社 | 数値制御装置 |
KR100672819B1 (ko) * | 2004-06-24 | 2007-01-22 | 주식회사 케이씨아이 | 삼차원 스캐닝 시스템용 구동장치 및 이를 이용한 치아컴퓨터 모델링용 삼차원 스캐닝 시스템 |
WO2010032284A1 (ja) * | 2008-09-16 | 2010-03-25 | 新日本工機株式会社 | 数値制御装置 |
-
1999
- 1999-02-25 JP JP04830499A patent/JP3576421B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2000250615A (ja) | 2000-09-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2685071B2 (ja) | 数値制御装置 | |
JP5219974B2 (ja) | 加工制御装置、レーザ加工装置およびレーザ加工システム | |
JP5037704B2 (ja) | 3軸加工機用ワーク設置誤差補正部を有する数値制御装置 | |
CN103063213A (zh) | 一种焊接机器人与变位机位姿关系的标定方法 | |
JP3207409B2 (ja) | ロボットのツール姿勢制御方法 | |
WO2014196066A1 (ja) | 数値制御装置 | |
Yang et al. | A tool path generation and contour error estimation method for four-axis serial machines | |
KR0180953B1 (ko) | 수치제어 공작기계의 주축법선방향 제어방법 및 장치 | |
JP2020049611A (ja) | ロボットの円弧動作を制御するロボット制御装置 | |
JP2005071016A (ja) | 数値制御装置 | |
Luo et al. | Adaptive skew force free model-based synchronous control and tool center point calibration for a hybrid 6-DoF gantry-robot machine | |
JPWO2003031110A1 (ja) | 3次元レーザ加工機 | |
JP5670517B2 (ja) | 直線素からなる面で構成された翼を持つインペラ及びその加工方法 | |
JP3576421B2 (ja) | 工作機のワーク姿勢制御方法 | |
JP5359651B2 (ja) | 形状測定装置 | |
JP4531297B2 (ja) | 6軸制御ncプログラム生成方法及び生成装置、並びに6軸制御ncプログラム生成プログラム及びこのプログラムを記憶したコンピュータ読み取り可能な記録媒体 | |
JP3173808B2 (ja) | 工具姿勢制御データ生成装置 | |
CN110883499B (zh) | 应用于多轴机床的加工倾斜平面的程序生成方法及设备 | |
WO2021241512A1 (ja) | ワークに対する作業をロボットに実行させる制御装置、ロボットシステム、及び制御方法 | |
JP4734440B2 (ja) | 4軸加工機用数値制御装置 | |
JP2009537338A (ja) | 研削盤の制御のための方法および数値制御研削盤 | |
JP3643254B2 (ja) | 工作機の斜め姿勢工具制御方法 | |
JP3576419B2 (ja) | 工作機の工具位置決め制御方法 | |
JP2001022418A (ja) | 作業ロボットのティーチングデータ補正方法 | |
Hayashi et al. | Forward kinematics model for evaluation of machining performance of robot type machine tool |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20040629 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040707 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080716 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090716 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |