以下に、本発明の実施の形態にかかる数値制御装置を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
実施の形態1.
図1は、本発明の実施の形態1にかかる数値制御装置1およびそれに制御される工作機械の構成を示す図である。図1は、実施の形態1にかかる数値制御装置1を用いて工作機械がローダ9との間でワークWの受け渡しを行う場合の一構成例を示すブロック図であり、工作機械はアンローディング時の状況を示している。図2は、実施の形態1にかかる数値制御装置に制御される工作機械のローディング時の状況を示す図である。図2では、簡単のため数値制御装置1およびローダ制御装置16の記載を省いてある。図3は、実施の形態1にかかる数値制御装置のハードウェア構成を示す図である。
図1に示されるように、実施の形態1にかかる数値制御装置1は、数値制御装置1が実行する加工プログラム11と、各種のデータをユーザに表示する表示部50と、表示部50の表示を設定する表示設定処理部30と、加工プログラム11に基づいて制御を実行する演算制御部12と、主軸チャック5の開閉を制御するシーケンス制御部13と、第1の軸である主軸4を回転させる主軸モータ6と、主軸モータ6に備えられた主軸モータ端位置検出器6aと、主軸モータ6を制御するサーボコントロール部15と、を備える。
さらに、演算制御部12は、チャックの揺動手段である揺動指令部19と、主軸チャック5がワークWを把持したことを判定するワーク把持判定手段20と、を備える。表示設定処理部30は、演算制御部12に入力パラメータを提供するパラメータ設定手段31を備える。シーケンス制御部13は、主軸チャック開閉装置8に第1のチャックである主軸チャック5の開閉を指令するチャック開閉命令部14を備える。主軸チャック5は閉状態でワークWを把持する。サーボコントロール部15は、主軸チャック5が揺動している状態で主軸チャック5が閉じたときに、主軸チャック5の揺動動作が抑制されることを検知する揺動抑制検知手段21を備える。上記したワーク把持判定手段20は、揺動抑制検知手段21による揺動動作の抑制の検知結果に基づいて、主軸チャック5がワークWを把持したことを判定する。
ローダ制御装置16は、図示しないローダプログラムに従ってローダ9を制御するものであり、数値制御装置1と交信を行いながら工作機械本体2の動作に応じてローダ9の制御を行う。ローダ9は、ワークWを掴むローダチャック爪10aを有する第2のチャックであるローダチャック10を備える。ローダチャック10は、閉状態でワークWを把持する。ローダ制御装置16は、チャック開閉指令部17を有する。ローダチャック10は、チャック開閉指令部17の命令により開閉される。図1では、ローダ制御装置16は、数値制御装置1の外部に設けられているとしているが、数値制御装置1の構成の一部であってもかまわない。
図3は、実施の形態1にかかる数値制御装置1のハードウェア構成を示す図である。図3は、図1における主軸モータ6および主軸モータ端位置検出器6aを除いた数値制御装置1のハードウェア構成を示している。数値制御装置1は、演算処理を行うCPU(Central Processing Unit)といった演算装置41と、演算装置41がワークエリアに用いるメモリ42と、加工プログラム11といったソフトウェアを記憶する記憶装置43と、ユーザとの間の入力インタフェースである入力装置44と、ユーザに情報を表示する表示装置45と、工作機械との通信機能を有する通信装置46と、を備える。図1に示した、演算制御部12、シーケンス制御部13、サーボコントロール部15および表示設定処理部30の機能は、演算装置41がソフトウェアを実行することにより実現される。揺動抑制検知手段21の機能は、演算装置41がソフトウェアを実行することにより実現されてもよいし、主軸モータ端位置検出器6aに接続されたアナログ回路といった専用ハードウェアで実現されてもよい。図1に示した表示部50は、入力装置44および表示装置45により実現され、ユーザからの入力といった外部からの入力を受け付けることができる。
図1に示す工作機械本体2は、ワークWを回転させる主軸4と、主軸4を支持する主軸台3と、ワークWを掴むチャック爪5aを有して主軸4に設けられた主軸チャック5と、主軸チャック5を開閉させる主軸チャック開閉装置8と、ベルト又はその他を用いた伝達機構7を備えて構成されている。主軸4は、主軸モータ6によって伝達機構7を介して回転駆動される。従って、主軸チャック5は主軸モータ6によって回転駆動されることになる。
つぎに、実施の形態1にかかる数値制御装置1におけるローディング時の動作を、図1に示した各構成部に関連づけて説明する。
まず、主軸4および主軸チャック5を揺動させる揺動指令を生成するアルゴリズムを説明する。なお、このアルゴリズムは、後述するアンローディング時の動作でも同じである。
具体的には、加工プログラム11に記述されるチャックに対する揺動命令である揺動命令11bをチャックの揺動手段である揺動指令部19を有する演算制御部12が読み込む。主軸モータ6は、位置制御、速度制御あるいは加速度制御された状態で主軸チャック5が揺動するように、揺動指令部19により制御される。
揺動動作を速度制御する場合、揺動指令部19は、加工プログラム11から揺動命令11bを読み込むと共に、パラメータ設定手段31から入力パラメータとして設定されている揺動振幅および揺動周波数を読み出す。なお、以下では、揺動の振幅である揺動振幅を単に振幅と呼び、揺動の周波数である揺動周波数を単に周波数と呼ぶ。
図4は、実施の形態1にかかる揺動動作の速度指令の波形を示す図である。図4に示すように、設定された振幅を1/2波長で進む移動量として扱い、設定された周波数の逆数を1波長分の時間として扱い、速度指令の波形が三角波になるように底辺を時間、高さを最高速度としたときの三角形の面積を移動量、すなわち振幅として、三角形の公式である以下の式(1)および式(2)から最高速度(deg/s)を求める。
式(1):三角形の面積=底辺×高さ/2、高さ=2×三角形の面積/底辺、最高速度=2×振幅/時間
式(2):時間(s)=1/2波長分の時間=1/周波数×1/2
その結果、最高速度(deg/s)として以下の式(3)が得られる。
式(3):最高速度(deg/s)=4×振幅×周波数
また等加速度直線運動時の速度の算出式は、以下の式(4)である。
式(4):等加速度直線運動時の速度=初速+加速度×時間
しかし、揺動動作は主軸チャック5が停止した状態から開始するため、初速=0である。従って、式(4)は、以下の式(5)のようになる。
式(5):速度=加速度×時間、加速度=速度/時間=最高速度/最高速度到達時間
ここで、図4から最高速度到達時間は、式(2)で示した時間の半分なので、以下の式(6)が成り立つ。
式(6):最高速度到達時間=1/周波数×1/4
以上の結果から、式(5)の加速度の式に式(3)および式(6)を代入することで、速度0から最高速度まで加速したときの加速度(deg/s^2)が以下の式(7)のように求まる。
式(7):加速度(deg/s^2)=16×振幅×周波数^2
以上のようにして得られた最高速度(deg/s)および加速度(deg/s^2)を数値制御装置1の制御周期当たりの移動量に変換する演算処理をすることで揺動指令を揺動指令部19が生成して、主軸4および主軸チャック5を揺動させるための主軸モータ制御を実現する。
なお、揺動動作を位置制御する場合における揺動指令を生成する具体例は、主軸4を回転型の送り軸すなわち回転軸として、振幅から送り量を計算し、振幅と周波数から送り速度を計算して、正転または逆転の位置決め動作を繰り返す位置指令を揺動指令として揺動指令部19が生成する。
更に、揺動動作を加速度制御する場合における揺動指令を生成する具体例は、チャックによるワーク把持でワークWに傷が付き難い小さな揺動トルクとなるようにトルク制限を掛ける命令を加工プログラム11に含むものとする。揺動動作によって発生する揺動トルクTaは、後述する機械の負荷イナーシャJ、モータ角加速度ωおよび余裕係数Kにより一般的にTa=K×J×ωで表されるため、トルク制限命令が掛かった揺動トルクTaとなるようにモータ角加速度ωは制御される。モータ角加速度ωは、揺動振幅Θ、揺動周波数tによりω=2×Θ/t^2で表されるため、言い換えれば、揺動トルクがTaとなるような振幅Θと周波数tとを組み合わせ演算により推定し、上述の位置制御または速度制御により揺動指令部19が揺動指令を生成する。
次に、ローディング時の動作を説明する。ローディング時には、主軸チャック5を揺動させた状態で、主軸チャック5がワークWを掴むために開状態から閉状態へと遷移することにより揺動動作が抑制される。
ローディング時は、図2に示すように主軸チャック5が開いている状態でローダチャック10が主軸チャック5へ、ワークWを搬送する。または主軸チャック5がローダチャック10の方へワークWを掴むために移動する。このとき演算制御部12は、加工プログラム11に記述されたチャック閉命令11aとこれに続いて記述された主軸チャック5に対する揺動命令11bとを読み込んで実行する。
チャック閉命令11aは、演算制御部12からシーケンス制御部13に送られ、これを受け取ったシーケンス制御部13が有するチャック開閉命令部14からの指令により主軸チャック5を開閉させる主軸チャック開閉装置8が主軸チャック5を閉じる動作を行う。
一方、揺動命令11bは、上述したように演算制御部12の揺動指令部19に読み込まれて、揺動指令に変換されサーボコントロール部15に出力される。サーボコントロール部15は、主軸モータ6を駆動して主軸4および主軸チャック5を揺動させる。
ローディング時には、主軸チャック5が開いている状態で、揺動指令部19からの揺動指令により主軸モータ6を介して主軸チャック5は低速で揺動される。そして、主軸チャック5が揺動している状態で、ローダチャック10が主軸チャック5へワークWを搬送し、主軸チャック5が閉じてワークWを把持する。主軸チャック5の把持により、ワークWは主軸チャック5とローダチャック10との両方で掴まれた状態となる。このため、主軸チャック5の揺動動作が抑制される。揺動抑制検知手段21は、主軸モータ6の電流値の増大といった変化に基づいて、主軸チャック5の揺動動作が抑制されることを検知する。揺動抑制検知手段21は、主軸チャック5の揺動抑制を検知すると検知結果である検知信号を出力し、ワーク把持判定手段20は、当該検知信号に基づいて主軸チャック5がワークWを把持したと判定する。揺動抑制検知手段21がワーク把持判定手段20に出力する揺動抑制の検知信号は、電流値といったデータを示すアナログ信号であってもよく、電流値といったデータを定めた閾値に基づいて判定したオンまたはオフを示す2値信号であってもよい。揺動抑制検知手段21が出力する検知信号がアナログ信号の場合は、ワーク把持判定手段20において2値信号に変換されて把持判定に用いられる。
以上説明したように、主軸チャック5がローダチャック10からワークWを受け取るローディング時には揺動状態の主軸チャック5がワークWを掴むが、主軸チャック5の揺動動作が十分に低速となるように、入力パラメータとなる揺動振幅および揺動周波数を調整しておく。これにより、揺動に必要なトルクを小さく抑えることができるため、特別な装置を設けることなく、主軸チャック5がワークWを掴む時に、ワークWに傷が生じることを回避することができる。
次に、アンローディング時の動作を説明する。主軸チャック5からローダチャック10へワークWを受け渡すアンローディング時には、主軸チャック5を揺動させた状態で、ローダチャック10がワークWを掴むために開状態から閉状態へと遷移することにより揺動動作が抑制される。
アンローディング時は、図1に示すように、主軸チャック5が掴んでいるワークWを把持可能な位置にローダチャック10が開いた状態で移動する動作から始まる。このとき演算制御部12は、上記したローディング時と同じく、加工プログラム11に記述された揺動命令11bを読み込んで実行するが、揺動命令11bは、チャック閉命令11aの後ではなく、加工プログラム11のアンローディングを行う命令であるアンローディング命令11cの中に記述されている。
揺動指令部19は、前述したローディング時と同じアルゴリズムで揺動指令を生成し、サーボコントロール部15に出力することで主軸モータ6を介して主軸チャック5を揺動させる。このとき、ローダチャック10が閉じると、ワークWは主軸チャック5とローダチャック10との両方で掴まれた状態となるため、主軸チャック5の揺動動作が抑制される。この揺動動作が抑制されることを揺動抑制検知手段21が検知する。揺動抑制検知手段21が揺動抑制を検知すると検知結果である検知信号を出力し、ワーク把持判定手段20は、当該検知信号に基づいてローダチャック10がワークWを把持したと判定する。
アンローディング時においても、主軸チャック5の揺動動作が十分に低速となるように、入力パラメータとなる揺動振幅および揺動周波数を調整しておくことで、ローダチャック10がワークWを掴む時に、ローディング時と同様に、ワークWに傷が生じることを回避することができる。
次に、アンローディング時の各部の命令および動作状態を説明する。図5は、実施の形態1にかかるアンローディング時の各部の命令および動作状態を表すタイムチャートの一例を示す図である。図5は、チャック揺動命令(A)、主軸モータ揺動動作(B)、主軸モータ揺動負荷(C)、ローダチャック閉指令(D)、ローダチャック閉動作(E)、主軸チャック開指令(F)、主軸チャック開動作(G)、ワーク把持確認信号(H)、ローダまたは主軸移動指令(I)およびローダまたは主軸移動動作(J)、それぞれの時間変化を示しており、横軸は時間である。
まず、チャック揺動命令(A)がオンになって揺動指令部19が命令されると、応答時間を経て主軸モータ6が揺動する様子が主軸モータ揺動動作(B)に示される。主軸モータ6の揺動により主軸モータ6には揺動動作による外乱トルクである揺動負荷が生じる様子が主軸モータ揺動負荷(C)に示される。その後、ローダチャック閉指令(D)がオンとなってからタイムラグを経てローダチャック閉動作(E)がローダチャック10により実動作時間をかけて実行される。
主軸モータ揺動負荷(C)は、ローダチャック10が閉じ、主軸モータ6の揺動動作が抑制されることで、図5に示されるように更に大きくなる。揺動抑制検知手段21は主軸モータ揺動負荷(C)のこの変化を揺動動作の抑制として検知し、検知信号をワーク把持判定手段20に出力する。ワーク把持判定手段20は検知信号に基づいてローダチャック10によるワーク把持を判定してワーク把持確認信号(H)をオンにする。
以上により、タイマーによる確認といった不正確な判断シーケンスを排除した、最適なワーク把持の確認を実現することが可能となる。なお、ローダチャック10が閉じることで、主軸4および主軸チャック5の揺動動作は抑制されるが、主軸モータ6はベルト又はその他を用いた伝達機構7の滑りといった原因によって、(B1)に示すように主軸モータ揺動動作(B)が完全に抑制されない場合もある。これに応じて、(C1)に示すように、主軸モータ揺動負荷(C)が示す負荷変動も一定にならない。但し、ワーク把持の確認は前述したように、ローダチャック閉指令(D)がオンとなってからの主軸モータ揺動負荷(C)の最初の変化で確認されるため、ワーク把持の確認、すなわちワーク把持判定手段20の判定には、ベルト又はその他を用いた伝達機構7の滑りといったことによる影響は無い。なお、(B1)および(C1)において、主軸モータ揺動動作(B)が完全に抑制されて平坦な波形になった様子は図5においてそれぞれ点線で示してある。
揺動中の主軸チャック5は、ローダチャック閉で揺動動作が抑制されるので、ワークWは両チャックで掴まれている状態になる。ワークWが両チャックで掴まれた状態になってから、ワーク把持確認信号(H)がオンになると、アンローディング時の動作として、主軸チャック開指令(F)がオンにされる。主軸チャック開指令(F)がオンにされてから幾分かのタイムラグを経て、主軸チャック開動作(G)が主軸チャック5により実動作時間をかけて実行される。
次の動作として、主軸チャック開動作(G)を確認してから、ローダ9または主軸4が予め定められた位置に前後移動する。ローダ9または主軸4の移動指令を、図5ではローダまたは主軸移動指令(I)として示すが、これは、主軸チャック開動作(G)の実動作を確認して行われる。この確認を、安全のため十分に長く設定されたソフトウェアタイマーによるチャック開閉推測で行うと、ローダチャック10にワークWを受け渡す過程でワークWを落とす事態は発生しないが、主軸チャック開動作(G)を確認するための時間を短縮することはできない。しかし、主軸チャック開動作(G)の確認をソフトウェアタイマーに頼らないで電気的に検出するようにすれば、ワークWの落下を起こさずにワーク受け渡し時間の更なる時間短縮を図ることが期待できる。ローダまたは主軸移動指令(I)がオンになると、タイムラグを経てからローダまたは主軸移動動作(J)が実動作時間をかけて実行される。
なお、主軸チャック開動作(G)が開始されると、主軸モータ揺動負荷(C)が急減少する。揺動抑制検知手段21は主軸モータ揺動負荷(C)のこの変化を揺動動作の抑制の解除として検知し、検知信号をワーク把持判定手段20に出力する。ワーク把持判定手段20は検知信号に基づいて主軸チャック5によるワークWの解放を判定してワーク把持確認信号(H)をオフにする。
実施の形態2.
図6は、本発明の実施の形態2にかかる数値制御装置1aの構成を示す図である。図7は、実施の形態2にかかる自動調整処理部33の詳細構成を示す図である。図6および図7において、実施の形態1と同様な機能を有する図1に対応する部分は同一符号を付して重複する説明は省略する。図2から図4も実施の形態2で同様に適用される。以下では、主に実施の形態1と異なる点について説明する。
数値制御装置1aにおいては、主軸チャック5の揺動動作の振幅および周波数を自動調整する自動調整手段である自動調整処理部33を演算制御部12がさらに備え、自動調整処理部33から出力された推奨パラメータなどを画面表示する推奨パラメータ表示手段32を表示設定処理部30がさらに備える。自動調整処理部33および推奨パラメータ表示手段32の機能も、演算装置41がソフトウェアを実行することにより実現される。
自動調整処理部33は、自動調整を開始するときの初期値となる振幅および周波数の値を算出する初期値演算部34と、初期値となる振幅および周波数を少しずつ変えながら揺動抑制の検知を繰り返す振幅および周波数増減処理部35と、推奨する振幅および周波数をパラメータとして表示設定処理部30に出力する推奨値および調整履歴出力処理部36と、を備える。なお、自動調整処理部33による自動調整の開始および終了は、具体的には、ユーザによる操作を受け付けた表示部50を介した表示設定処理部30からの指令で行われるものとする。
以下に、推奨パラメータとなる振幅および周波数を算出する3つの方式である(方式1)、(方式2)および(方式3)をアンローディング時の動作の流れを例にして説明するが、ローディング時においても同様な動作の流れで推奨パラメータとなる振幅および周波数を算出することができる。
(方式1)
図8は、実施の形態2にかかる数値制御装置1aにおける推奨値の(方式1)による自動決定処理を示すフローチャートの一例を示す図である。(方式1)は、モータ最大トルク比を初期値として推奨値を自動決定する方式である。すなわち、(方式1)は、初期値となる振幅および周波数で主軸チャック5が揺動動作を行ったときの揺動トルクを主軸モータ6の最大トルクとの比で定義した値を揺動トルク比とし、パラメータの推奨値を自動決定する方式である。
まず、主軸モータ6のシャフトから先に取り付けられるプーリ、ベルト、ブレーキ用ディスク、シャフト、チャックおよびワークWといった全ての円筒状部品の負荷である機械の負荷イナーシャJ[Kgm^2]を初期値演算部34が推定する(ステップS101)。
詳細には、サーボおよび主軸の調整方法として一般的に公開されている手順に従う。一例としては、ロータ部である主軸モータ6を繰り返し加減速動作させて主軸モータ6単体の負荷である主軸モータ単体負荷[Kgm^2]と負荷イナーシャJとの比である負荷イナーシャ比を、表示部50に表示される値から読取る。ここで、負荷イナーシャ比=負荷イナーシャJ/主軸モータ単体負荷×100である。そこで、予めわかっている主軸モータ単体負荷と、上で得られた負荷イナーシャ比とから負荷イナーシャJを推定する。なお、主軸モータ6への加減速動作指令、サーボコントロール部15が計算している負荷イナーシャ比の値の読み出し、および既知の主軸モータ単体負荷との演算により負荷イナーシャJを推定する処理は、初期値演算部34により自動化しておくことが好ましい。
次に、パラメータ設定手段31により予め表示部50を介して数値制御装置1aのメモリ42に記憶されているデータである以下の変数値を初期値演算部34が取込む(ステップS102)。
ステップS102で初期値演算部34に取込まれる変数値は、初期値となる振幅および周波数で主軸チャック5が揺動動作を行ったときの揺動トルクを主軸モータ6の最大トルクとの比として設定した「モータ最大トルク比X(%)」と、主軸モータ最大トルクとして設定される「モータ最大トルクTm(Nm)」と、推奨値として算出される振幅の下限値すなわち最小値として設定される「最小振幅Θ_min(deg)」と、推奨値として算出される周波数の下限値すなわち最小値として設定される「最小周波数t_min(s)」と、揺動トルク計算式において回転軸と負荷重心の不一致およびプーリ、歯車などの伝達機構の影響による負荷変動分を調整する係数として一般的に知られている「余裕係数K(=5)」と、初期値となる振幅および周波数から推奨値を決めるために行う「揺動動作→ワーク把持動作→ワーク把持の確認」の繰り返しの中で振幅および周波数を増減させる定数である「振幅増減定数Θ_c(deg)」および「周波数増減定数t_c(s)」と、を含んでいる。
次に、初期値である振幅および周波数による揺動動作時に必要となるトルクTbase(Nm)を、Tbase=Tm×X(%)の計算式により初期値演算部34が算出する(ステップS103)。
次に、初期値演算部34は、振幅の初期値Θを算出する(ステップS104)。振幅の初期値Θは、周波数を設定された「最小周波数t_min(s)」に固定したときに、上述したTbase=Tm×X(%)の式と、等角加速度を示すTbase=K×J×ωの式と、ω(rad/s^2)=2×Θ×(円周率(3.14)/180)/t_min^2の式と、により算出される。これら3つの式から以下の関係が求まる。
Tm×X=K×J×2Θ×(3.14/180)/t_min^2
その結果、振幅の初期値Θは、以下のように求まる。
Θ=(90/3.14)×t_min^2×Tm×X/(K×J)(deg)
一方、振幅を設定された「最小振幅Θ_min(deg)」に固定したときの周波数の初期値tも同様の計算式により算出される。
上記計算により得た、2つの初期値の組み合わせ(Θ、t_min)と(Θ_min、t)とに対して、振幅および周波数増減処理部35において、(Θ、t_min)に対し揺動指令の生成(ステップS105)から判定結果の出力(ステップS111)までを行う。以下では、(Θ、t_min)を初期パラメータとして、振幅Θの推奨値を求めるフローを説明するが、振幅Θの推奨値を求めた後で、(Θ_min、t)を初期パラメータとして、周波数tの推奨値を求めるフローも同様に行う。なお、この順番は逆でもかまわない。
ステップS104の後に、初期パラメータ(Θ、t_min)に対応して振幅Θと周波数t_minで揺動する揺動指令を揺動指令部19が生成し(ステップS105)、初期パラメータ(Θ、t_min)での揺動動作(ステップS106)を行う。ステップS105で、以下で用いるnをn=0に初期化しておく。ステップS106の後、揺動中のトルクである揺動トルクをサーボコントロール部15から取得し、予め設定値として決めておいたモータ最大トルク比の値X(%)からnを減じたX−n(%)と揺動トルク比を比較する(ステップS107)。
サーボコントロール部15から取得した揺動トルク比がX−n(%)と一致した場合(ステップS107:Yes)は、そのままワーク把持動作(ステップS108)に進む。
揺動トルク比がX−n(%)と一致しない場合(ステップS107:No)は、更に、揺動トルク比がX−n(%)より小さいか否かが判定される(ステップS112)。揺動トルク比がX−n(%)より小さい場合(ステップS112:Yes)には、振幅Θに振幅増減定数Θ_cを加えてΘ=Θ+Θ_cという振幅修正を行い(ステップS113)、ステップS106に戻って、再度揺動動作を実行する。逆に、揺動トルク比がX−n(%)より大きい場合(ステップS112:No)には、振幅Θから振幅増減定数Θ_cを差し引いてΘ=Θ−Θ_cという振幅修正を行い(ステップS114)、ステップS106に戻って、再度揺動動作を実行する。
このように、揺動トルク比がX−n(%)と一致するまで、揺動動作(ステップS106)、比較(ステップS107、S112)および振幅Θの修正(ステップS113、S114)を繰り返す。なお、上記揺動トルク比がX−n(%)と一致するまで行う繰り返し動作のシーケンスが必ず収束してワーク把持動作(ステップS108)に進めるように、振幅増減定数Θ_cの設定値の決定には注意が必要である。
以上から、揺動トルク比がX−n(%)となるような振幅Θおよび周波数t_minで揺動している状態でワーク把持動作(ステップS108)を行い、それに続けて、主軸モータ6の電流値の変化といった現象に基づいてワーク把持判定手段20がワーク把持判定を行う。ワーク把持の確認が出来たか否かが判定され(ステップS109)、ワーク把持の確認が出来た場合(ステップS109:Yes)は、n=n+1として、振幅Θから振幅増減定数Θ_cを差し引いてΘ=Θ−Θ_cという振幅修正を行い(ステップS110)、ステップS106に戻って、再度揺動動作を実行する。即ち、揺動動作での揺動トルク比が更に小さくなるような振幅Θを求めるために揺動動作(ステップS106)、比較(ステップS107、S112)および振幅Θの修正(ステップS113、S114)を繰り返す。これを、n=1、・・・、X−1として、ワーク把持の確認が出来なくなる(ステップS109:No)まで、すなわちワーク把持確認の検知の限界まで、揺動トルク比をX−n(%)と比較しながら繰り返し行う。
一方、ワーク把持の確認が出来なかった場合(ステップS109:No)は、推奨値および調整履歴出力処理部36が推奨パラメータ表示手段32に判定結果を出力する処理を行い(ステップS111)、推奨パラメータの自動決定処理を終了する。
具体的には、ワーク把持の確認が出来なかった場合(ステップS109:No)は、そのときの揺動トルク比である(X−n)(%)の1つ前の値であるX−(n−1)(%)に揺動トルク比がなるような振幅Θを推奨値として、揺動トルク比とのそれまでの比較値であったX−n(%)とそのときの振幅Θとをワーク把持の確認の可否と共に判定結果として推奨値および調整履歴出力処理部36が推奨パラメータ表示手段32に出力する(ステップS111)。
(方式2)
図9は、実施の形態2にかかる数値制御装置1aにおける推奨値の(方式2)による自動決定処理を示すフローチャートの一例を示す図である。(方式2)は、初期値となる振幅および周波数で揺動動作を行ったときの揺動トルクをチャック拘束トルクより小さくなる値を初期値として推奨値を自動決定する方式である。
まず、機械の負荷イナーシャJの推定は、(方式1)のフローを図示した図8のステップS101と同様に初期値演算部34が行う(ステップS201)。
次に、パラメータ設定手段31により予め表示部50を介して数値制御装置1aのメモリ42に記憶されているデータである以下の変数値を初期値演算部34が取込む(ステップS202)。
ステップS202で初期値演算部34に取込まれる変数値は、「ローダチャックの把持力(N)」と、「主軸チャックの把持力(N)」と、「ワーク径Φ(m)」と、初期値となる振幅および周波数で揺動動作を行ったときの揺動トルクをチャック拘束トルクより小さく取るための係数「トルク初期値決め係数L(<1)」と、推奨値として算出される振幅の下限値すなわち最小値として設定される「最小振幅Θ_min(deg)」と、推奨値として算出される周波数の下限値すなわち最小値として設定される「最小周波数t_min(s)」と、揺動トルク計算式において回転軸と負荷重心の不一致またはプーリ、歯車といった伝達機構の影響による負荷変動分を調整する係数として一般的に知られている「余裕係数K(=5)」と、初期値となる振幅および周波数から推奨値を決めるために行う「揺動動作→ワーク把持動作→ワーク把持の確認」の繰り返しの中で振幅および周波数を増減させる定数である「振幅増減定数Θ_c(deg)」および「周波数増減定数t_c(s)」と、を含んでいる。
次に、初期値である振幅および周波数による揺動動作時に必要となるトルクTbase(Nm)を、Tbase=Min(ローダチャック把持力、主軸チャック把持力)[N]×ワーク径Φ[m]×係数の計算式により初期値演算部34が算出する(ステップS203)。ここで、Min(ローダチャック把持力、主軸チャック把持力)は、ローダチャック把持力と主軸チャック把持力とで小さい方の値を意味する。
次に、初期値演算部34は、振幅の初期値Θを算出する(ステップS204)。振幅の初期値Θは、周波数を設定された「最小周波数t_min(s)」に固定したときに、上述したTbase=Min(ローダチャック把持力、主軸チャック把持力)[N]×ワーク径Φ[m]×係数の式と、等角加速度を示すTbase=K×J×ωの式と、ω(rad/s^2)=2×Θ×(円周率(3.14)/180)/t_min^2の式と、により算出される。
一方、振幅を設定された「最小振幅Θ_min(deg)」に固定したときの周波数の初期値tも同様の計算式により算出する。
上記計算により得た、2つの初期値の組み合わせ(Θ,t_min)と(Θ_min,t)とに対して、振幅および周波数増減処理部35において、(Θ,t_min)に対し揺動指令の生成(ステップS205)から判定結果の出力(ステップS211)までを行う。以下では、(Θ,t_min)を初期パラメータとして、振幅Θの推奨値を求めるフローを説明するが、振幅Θの推奨値を求めた後で、(Θ_min,t)を初期パラメータとして、周波数tの推奨値を求めるフローも同様に行う。なお、この順番は逆でもかまわない。
ステップS204の後に、初期パラメータ(Θ,t_min)に対応して振幅Θおよび周波数t_minで揺動する揺動指令を生成し(ステップS205)、初期パラメータ(Θ、t_min)での揺動動作(ステップS206)を行う。
次に、振幅Θおよび周波数t_minで揺動している状態でワーク把持動作(ステップS208)を行い、それに続けて、主軸モータ6の電流値の変化といった現象に基づいた揺動抑制検知手段21の検知結果をもとに、ワーク把持判定手段20がワーク把持判定を行う。ワーク把持の確認が出来たか否かが判定され(ステップS209)、ワーク把持の確認が出来た場合(ステップS209:Yes)は、次の振幅Θを求めるために振幅Θから振幅増減定数Θ_cを差し引いてΘ=Θ−Θ_cという振幅修正を行い(ステップS210)、ステップS206に戻って、再度揺動動作を実行する。ステップS206、S208、S209およびS210のシーケンスを、ワーク把持の確認が出来なくなる(ステップS209:No)まで、すなわちワーク把持確認の検知の限界まで、繰り返し行う。
一方、ワーク把持の確認が出来なかった場合(ステップS209:No)は、推奨値および調整履歴出力処理部36が推奨パラメータ表示手段32に判定結果を出力する処理を行い(ステップS211)、推奨パラメータの自動決定処理を終了する。
具体的には、ワーク把持の確認が出来なかった場合(ステップS209:No)は、そのときの1つ前のシーケンスにおける振幅Θの値を推奨値として、それまでの振幅Θの各値をワーク把持の確認の可否と共に判定結果として推奨値および調整履歴出力処理部36が推奨パラメータ表示手段32に出力する(ステップS211)。
(方式3)
図10は、実施の形態2にかかる数値制御装置1aにおける推奨値の(方式3)による自動決定処理を示すフローチャートの一例を示す図である。(方式3)は、任意に入力した振幅および周波数の値を初期値として推奨値を自動決定する方式である。
まず、パラメータ設定手段31により予め表示部50を介して数値制御装置1aのメモリ42に記憶されているデータである以下の変数値を初期値演算部34が取込む(ステップS302)。
ステップS302で初期値演算部34に取込まれる変数値は、初期値となる「入力振幅Θ(deg)」と、初期値となる「入力周波数t(s)」と、振幅および周波数から推奨値を決めるために行う「揺動動作→ワーク把持動作→ワーク把持の確認」の繰り返しの中で振幅および周波数を増減させる定数である「振幅増減定数Θ_c(deg)」および「周波数増減定数t_c(s)」と、を含んでいる。
次に、初期値である振幅Θおよび周波数tに対応する揺動指令を生成し(ステップS305)、初期パラメータ(Θ,t)での揺動動作(ステップS306)を行う。
振幅Θおよび周波数tで揺動している状態でワーク把持動作(ステップS308)を行い、それに続けて、主軸モータ6の電流値の変化といった現象に基づいてワーク把持判定手段20がワーク把持判定を行う。ワーク把持の確認が出来たか否かが判定され(ステップS309)、ワーク把持の確認が出来た場合(ステップS309:Yes)は、周波数tはそのまま固定して、振幅Θに対し振幅増減定数Θ_cを差し引いてΘ=Θ−Θ_cという振幅修正を行い(ステップS310)、ステップS306に戻って、再度揺動動作を実行する。ステップS306、S308、S309およびS310のシーケンスを、ワーク把持の確認が出来なくなる(ステップS309:No)まで、すなわちワーク把持確認の検知の限界まで、繰り返し行う。
一方、ワーク把持の確認が出来なかった場合(ステップS309:No)は、推奨値および調整履歴出力処理部36が推奨パラメータ表示手段32に判定結果を出力する処理を行い(ステップS311)、推奨パラメータの自動決定処理を終了する。
ワーク把持の確認が出来なかった場合(ステップS309:No)は、そのときの1つ前のシーケンスにおける振幅Θと初期値のまま固定していた周波数tとを推奨値として、それまでの振幅Θの各値をワーク把持の確認の可否と共に判定結果として推奨値および調整履歴出力処理部36が推奨パラメータ表示手段32に出力する(ステップS311)。
なお、上述したフローでは、初期値の周波数tを固定にしたままで振幅Θから振幅増減定数Θ_cを差し引く振幅修正(ステップS310)を行う場合について説明したが、その後、同様のフローで初期値の振幅Θを固定にしたままで周波数tから周波数増減定数t_cを差し引く周波数修正をステップS310で行い、更に、ステップS306、S308、S309およびS310のシーケンスを、ワーク把持の確認が出来なくなる(ステップS309:No)まで、すなわちワーク把持確認の検知の限界まで、繰り返し行う。ワーク把持の確認が出来なかった場合(ステップS309:No)は、そのときの1つ前のシーケンスにおける周波数tと初期値のまま固定していた振幅Θとを推奨値として、それまでの周波数tの各値をワーク把持の確認の可否と共に判定結果として推奨値および調整履歴出力処理部36が推奨パラメータ表示手段32に出力する(ステップS311)。
以上、初期値となる振幅および周波数の値を少しずつ変えながら揺動抑制の検知を繰り返して、推奨パラメータとなる振幅および周波数を自動決定する(方式1)、(方式2)および(方式3)の3つの方式を説明した。3つの方式とも、ステップS111、S211およびS311において、ワーク把持判定手段20がワークWの把持を判定することが可能な範囲で自動調整処理部33により求められた推奨パラメータとなる振幅Θおよび周波数tとが推奨値および調整履歴出力処理部36から推奨パラメータ表示手段32に出力されて、最終的には、推奨パラメータ表示手段32により、その内容が表示部50に表示される。図11は、実施の形態2にかかる数値制御装置1aの表示部50における推奨パラメータ値の表示の一例を示す図である。
表示部50は、推奨値および調整履歴出力処理部36から出力された調整履歴データおよび対応するワーク把持の確認の可否結果を判定日時と共に表示する調整履歴データ表示区51aと、(方式1)、(方式2)および(方式3)により調整された結果のパラメータである推奨パラメータを、周波数を一定値にして調整した場合の推奨値振幅と、振幅を一定値にして調整した場合の推奨値周波数と、の2つのパターンで表示する推奨パラメータ表示区51bと、を備える。表示部50は、自動調整処理部33から出力された調整履歴データおよび対応するワーク把持の確認の可否結果を調整履歴データ表示区51aに表示し、自動調整された振幅Θおよび周波数tの2組の推奨パラメータを推奨パラメータ表示区51bに推奨パラメータとして表示する。
図11は、図8で説明した(方式1)の処理の結果の表示例を示しており、調整履歴データ表示区51aが表示する調整履歴データは、自動調整処理部33から推奨パラメータ表示手段32が取得した「振幅Θ(deg)」、「周波数t(s)」、および揺動トルクをモータ最大トルクとの比で示す「モータ最大トルク比(%)」といったデータである。推奨パラメータ表示区51bが示す推奨パラメータは、「1)周波数固定時」に得られた一組と、「2)振幅固定時」に得られた一組と、の2組である。
図11の推奨パラメータ表示区51bにおいては、「1)周波数固定時」の推奨パラメータは、「最小周波数t_min(s)」として表示部50を介して表示設定処理部30から初期値演算部34に入力された値「2」を周波数とし、固定値「2」の周波数に対して調整した振幅「1」からなる一組として示してある。「2)振幅固定時」の推奨パラメータは、「最小振幅Θ_min(deg)」として表示部50を介して表示設定処理部30から初期値演算部34に入力された値「0.05」を振幅とし、固定値「0.05」の振幅に対して調整した周波数「4」からなる一組として示してある。
推奨パラメータ表示手段32は、自動調整処理部33が取得した調整履歴データおよび対応するワーク把持の確認の可否結果といったデータを判定日時と関連付けで管理すると共に、当該データを表示部50に出力して調整履歴データ表示区51aに表示させる。即ち、調整履歴データ表示区51aには自動調整の履歴データが表示される。さらに、推奨パラメータ表示手段32は、パラメータの自動調整の(方式1)、(方式2)または(方式3)による自動調整の結果のパラメータである推奨パラメータを推奨パラメータ表示区51bに表示させる。
表示設定処理部30は、推奨パラメータ表示区51bに表示された2組の推奨パラメータのうち、ユーザが選択した何れかの1組をユーザが最終決定した最終調整パラメータとして、パラメータ設定手段31を介して数値制御装置1aのメモリ42に記録する。記録された最終調整パラメータは、演算制御部12が加工プログラム11からの揺動命令を受けた際に、通常動作時の揺動パラメータとして揺動指令部19に読み込まれる。なお、図11には示されていないが、推奨パラメータ表示区51bに表示される2組の推奨パラメータの何れかを最終調整パラメータとして選択する操作インタフェースが表示部50に装備されている。
また、ユーザは、調整履歴データ表示区51aに表示された各種データを参考にしながら、振幅および周波数を任意数値として入力して推奨パラメータを得る(方式3)を用いて、(方式1)または(方式2)で取得した推奨パラメータの微調整を行って、新たな推奨パラメータの値を得ることが可能である。
このように、予めいくつかの変数値を初期データとして表示部50を介して表示設定処理部30により数値制御装置1aのメモリ42に記憶させておき、自動調整処理部33を起動することにより、揺動に必要なトルクを小さく抑えた適切な推奨パラメータの値を得ることが可能となる。これにより、機械環境に依存して変化する各種物理量を使った煩わしい計算を行うことが不要となり、ワークWに傷をつけない様な振幅および周波数を決定するための段取り時間の短縮を図ることができる。
実施の形態3.
図12は、本発明の実施の形態3および4にかかる数値制御装置1bおよびそれに制御される工作機械の構成を示す図である。図12は、実施の形態3にかかる数値制御装置1bを用いて工作機械がローダ9との間でワークWの受け渡しを行う場合の一構成例を示すブロック図であり、工作機械はアンローディング時の状況を示している。図13は、実施の形態3および4にかかる数値制御装置1bに制御される工作機械のローディング時の状況を示す図である。図13では、簡単のため数値制御装置1bおよびローダ制御装置16の記載を省いてある。実施の形態3の図12および図13において、実施の形態1と同様な機能を有する図1に対応する部分は同一符号を付して重複する説明は省略する。図3および図4も実施の形態3で同様に適用される。
実施の形態3にかかる工作機械本体2bにおいては、主軸4の位置または回転速度を検出するパルスコーダといった主軸端検出器40が主軸4に設けられている。そして、実施の形態3にかかる数値制御装置1bにおいては、揺動再開検知手段23をサーボコントロール部15が備え、揺動再開検知手段23の検知に基づいて主軸チャック5が開いたと判定するワーク開放判定手段22を演算制御部12が備える。揺動再開検知手段23は、主軸チャック5が開いた状態を主軸端検出器40の検出値を用いて検出する。
揺動再開検知手段23の機能は、演算装置41がソフトウェアを実行することにより実現されてもよいし、主軸端検出器40に接続されたアナログ回路といった専用ハードウェアで実現されてもよい。揺動再開検知手段23は、主軸端検出器40の検出結果である検出値に基づいて、ローダチャック10がワークWを把持したことによりワーク搬出時の揺動動作が抑制されている際に、主軸チャック5が開放した状態、即ち揺動動作の抑制が解放されることを検知する。ワーク開放判定手段22は、揺動再開検知手段23の検知結果に基づいて、主軸チャック5がワークWを解放したことを判定する。
図14は、実施の形態3の参考となるアンローディング時にワークWを落とさない動作状態を表すタイムチャートの一例を示す図である。図14は、加工が完了したワークWを搬出するアンローディング時の動作を説明する。図14は、チャック揺動命令(A)、主軸モータ揺動動作(B)、主軸モータ揺動負荷(C)、ローダチャック閉指令(D)、ローダチャック閉動作(E)、主軸チャック開指令(F)、主軸チャック開動作(G)、ワーク把持確認信号(H)、ローダまたは主軸移動指令(I)およびローダまたは主軸移動動作(J)、それぞれの時間変化を示しており、横軸は時間である。
図14においては、加工が完了した後に、加工プログラム11に記述された命令文によりチャック揺動命令(A)がオンとなって演算制御部12に出力され、揺動指令部19により揺動指令が生成されサーボコントロール部15に送られることで主軸モータ6が揺動動作を開始する様子が主軸モータ揺動動作(B)に示される。この時、主軸モータ6の揺動動作により主軸モータ6への揺動負荷が増加する様子が主軸モータ揺動負荷(C)に示される。そして、ローダ9または主軸4がワークWを把持できる位置まで来て、ローダチャック10がワークWを把持するための指令がローダ制御装置16よりローダチャック閉指令(D)として出力され、ワーク搬出を行うアンローディング動作が始まることになる。
ローダチャック閉指令(D)がオンとなってからタイムラグだけ遅れて、油圧装置による物理的なローダチャック閉動作(E)が始まりローダチャック10により実動作時間をかけて実行される。ローダチャック10によって揺動中のワークWが把持されると主軸モータ6の揺動動作が抑制される様子が(B1)に示される。主軸モータ6と主軸チャック5との間にベルト又はその他を用いた伝達機構7が介在する場合には、主軸チャック5は拘束されているが、ベルト滑りといった原因により主軸モータ6が僅かながら揺動し続けるため、主軸モータ揺動動作(B)において主軸チャック5の揺動動作が抑制された状態を示す波形が(B1)に示されるように平坦にはならない。同様に、主軸モータ揺動負荷(C)も揺動抑制により更に増加するが、増加した状態を示す波形も(C1)に示されるように平坦ではない。この主軸チャック5の揺動が拘束された状態のモータ電流変化、即ちモータ電流負荷を揺動抑制検知手段21が捉えて検知し、検知信号をワーク把持判定手段20に出力する。ワーク把持判定手段20は検知信号に基づいてローダチャック10によるワーク把持を判定してワーク把持確認信号(H)をオンにする。
ワーク把持確認信号(H)がオンになった状態は、ワークWを主軸チャック5とローダチャック10とで両掴みしている状態を示している。アンローディング動作を完結するためには、主軸チャック5を開くための主軸チャック開指令(F)がシーケンス制御部13を介して主軸チャック開閉装置8へ出力される。主軸チャック開指令(F)がオンにされ、それからタイムラグを経て油圧装置による物理的な主軸チャック開動作(G)が主軸チャック5により実動作時間をかけて実行される。主軸チャック5が開状態となることで主軸モータ揺動動作(B)が再開すると共に、主軸モータ揺動負荷(C)も減少することで、ワーク把持確認信号(H)がオフにされる。
つまり、主軸チャック5の開状態はワーク把持確認信号(H)がオフになることにより推測することができるので、ワーク把持判定手段20が出力するワーク把持確認信号(H)がオフとなったことをシーケンス制御部13が検出し、ローダまたは主軸移動指令(I)を出力する。ローダ9が前後に移動する機構である場合は、ローダまたは主軸移動指令(I)はローダ制御装置16に出力され、ワークWを把持しているローダ9が定められた位置に移動するため僅かな応答時間を経てローダ軸が動き出す。主軸4が前後に移動する機構である場合は、ローダまたは主軸移動指令(I)に従い、主軸4が定められた位置に移動するために動き出す。
以上の動作の流れにおいて、主軸チャック5が開状態であることの確認を、ソフトウェアタイマーによるチャック開閉推測で行っても良いが、正確に主軸チャック5の開閉の確認を行うためには長めのタイマー設定が必要となるため、サイクルタイムの短縮はできない。また、前述のとおりワーク把持確認信号(H)がオフになるのは、主軸モータ揺動動作(B)が再開して、主軸モータ揺動負荷(C)がワーク把持の確認のための検出閾値を下回ったときである。しかし、(C1)に示すようにベルト滑りにより主軸モータ揺動負荷(C)は変動し、この変動幅は、ローダチャック10によりワークWが把持されて揺動動作が抑制されたときの主軸チャック5の揺動振幅中における位置によって変わる。つまり、揺動振幅の中心に主軸チャック5の位置があるときに把持された場合は、変動幅が一番小さく、揺動振幅の最端に主軸チャック5の位置があるときに把持された場合は、負荷が軽くなる方向に動き出すことになるため変動幅が一番大きくなる。次に、図15を用いて、揺動振幅の最端に主軸チャック5の位置があるときに把持された場合に、ワークWを落下させる可能性が内在することを説明する。
図15は、実施の形態3の参考となるアンローディング時にワークWを落とす可能性がある動作状態を表すタイムチャートの一例を示す図である。図15は、チャック揺動命令(A)、主軸モータ揺動動作(B)、主軸モータ揺動負荷(C)、ローダチャック閉指令(D)、ローダチャック閉動作(E)、主軸チャック開指令(F)、主軸チャック開動作(G)、ワーク把持確認信号(H)、ローダまたは主軸移動指令(I)およびローダまたは主軸移動動作(J)、それぞれの時間変化を示しており、横軸は時間である。
図15の主軸モータ揺動負荷(C)における(C2)がその原因となる状態を示す。ローダチャック閉動作(E)により、揺動中のワークWをローダチャック10が把持しワーク把持確認信号(H)はオンとなる。しかし、ローダチャック10がワークWを把持した時の主軸モータ6の位置が揺動振幅の最端である場合には、直ちに主軸モータ揺動負荷(C)が(C2)に示すように小さくなり、これに応じてワーク把持確認信号(H)がオフになる可能性がある。この状態になると、主軸チャック開指令(F)が出ているがタイムラグ期間中なので主軸チャック開動作(G)は始まっておらず主軸チャック5はまだ開状態になっていない。しかし、ワーク把持確認信号(H)が一旦オフになったことで、主軸チャック5とローダチャック10とがワークWを両掴みしている図15の(1)の期間においてローダまたは主軸移動指令(I)が出力され、タイムラグを経て、ローダまたは主軸移動動作(J)が開始されることになる。
この時、ローダチャック10のワーク把持力が主軸チャック5のワーク把持力より大きい場合には、両掴み状態から強引にワークWを引っ張り出す動きとなるため、ワークWに損傷を与えることとなる。
逆に、主軸チャック5のワーク把持力の方が大きい場合には、ローダ9または主軸4の移動時にローダチャック10からワークWが滑り、ローダチャック10はワークWを把持しない状態になる。しかしこの場合、主軸チャック開指令(F)は既にオンが出力されているので、タイムラグを経て主軸チャック開動作(G)が開始されるため、ローダチャック10がワークWを把持しない状態から図15の(2)の期間を経てから、ワークWが主軸チャック5およびローダチャック10の何れのチャックにも掴まれていない状況が発生し、ワークWは落下することとなる。
なお、一般的に、ワークWを搬入および搬出するローダ9に備えられたローダチャック10のワーク把持力よりも、数十KgのワークWを数千回転で回す主軸4に備えられた主軸チャック5の方がワーク把持力は大きい。従って、主軸モータ揺動負荷(C)が(C2)のような状態になった場合に、ワークWを落下させてしまう可能性は小さくない。
図16は、実施の形態3にかかるアンローディング時の各部の命令および動作状態を表すタイムチャートの一例を示す図である。図16は、チャック揺動命令(A)、主軸モータ揺動動作(B)、主軸モータ揺動負荷(C)、チャック揺動動作(B’)、ローダチャック閉指令(D)、ローダチャック閉動作(E)、主軸チャック開指令(F)、主軸チャック開動作(G)、ワーク把持確認信号(H)、ワーク開放確認信号(H’)、ローダまたは主軸移動指令(I)およびローダまたは主軸移動動作(J)、それぞれの時間変化を示しており、横軸は時間である。主軸モータ揺動動作(B)は、主軸モータ端位置検出器6aから得た速度波形である。チャック揺動動作(B’)は、主軸端検出器40から得た速度波形である。
揺動再開検知手段23は、主軸4の位置または回転速度を検出する主軸端検出器40の検出値に基づいた主軸チャック5自体のチャック揺動動作(B’)を監視する。主軸チャック5の揺動動作がローダチャック10により拘束されても主軸モータ揺動動作(B)の波形は前述したように、(B1)に示すように平坦にはならないが、主軸チャック5のチャック揺動動作(B’)の波形は(B’1)に示すように平坦、即ち速度0になる。また、主軸チャック開動作(G)により主軸チャック5が開状態になったときには、チャック揺動動作(B’)の波形は、平坦、即ち速度0の状態から周期的な速度変動状態となり、揺動再開検知手段23は、揺動動作の抑制が解放されたことを検知する。この特性をワーク把持確認信号(H)およびワーク開放確認信号(H’)の動作判定に利用する。
つまり、揺動再開検知手段23が検知するチャック揺動動作(B’)が速度0になったときに、ワーク開放判定手段22はワーク開放確認信号(H’)をオンにする。そして、主軸チャック5が開いて、チャック揺動動作(B’)が速度0でなくなったときに、揺動再開検知手段23は、揺動動作の抑制が解放されたことを検知し、ワーク開放判定手段22はワーク開放確認信号(H’)をオフにして主軸チャック5がワークWを解放したと判断する。そして、ワーク開放判定手段22がワーク開放確認信号(H’)をオフにした後、ローダまたは主軸移動指令(I)をオンにしてローダまたは主軸移動動作(J)を開始させる。
これにより、ベルト滑りにより主軸モータ揺動動作(B)および主軸モータ揺動負荷(C)がそれぞれ(B1)および(C1)の状況になってしまった影響を受けることなく、ソフトウェアタイマーを用いずに、主軸チャック5の開状態を正確で素早く確認することができる。また、ワーク把持確認信号(H)を用いる方法と組み合わせて、更に安全で確実な確認方法を構築しても良い。
実施の形態3にかかる数値制御装置1bによれば、ベルト又はその他を用いた伝達機構7を有する工作機械の構成において、加工完了ワークの機外搬出のアンローディング動作でのワーク受け渡しのためにチャック開閉を確認するための時間を、カメラまたは非接触型の位置センサといった新たな機構または装置を設けることなく短縮することができる。さらに、ワークWの落下および損傷を確実に回避することができる。
実施の形態4.
本発明の実施の形態4にかかる数値制御装置1bおよびそれに制御される工作機械の構成は図12に示され、実施の形態4にかかる数値制御装置1bに制御される工作機械のローディング時の状況は図13に示される。図3および図4も実施の形態4の説明において、実施の形態1と同様に用いる。実施の形態4では、ワークWを搬入するローディング時の動作について説明する。
揺動再開検知手段23は、主軸端検出器40の検出値に基づいて、ワークWのローディング時に主軸チャック5がワークWを把持したことにより揺動動作が抑制されている際に、ローダチャック10が開放したときに、揺動動作の抑制が解放されたことを検知する。ワーク開放判定手段22は、揺動再開検知手段23の検知結果に基づいて、ローダチャック10がワークWを解放したことを判定する。
図17は、実施の形態4の参考となるローディング時にワークWを損傷しない動作状態を表すタイムチャートの一例を示す図である。図17は、チャック揺動命令(A)、主軸モータ揺動動作(B)、主軸モータ揺動負荷(C)、主軸チャック閉指令(D)、主軸チャック閉動作(E)、ローダチャック開指令(F)、ローダチャック開動作(G)、ワーク把持確認信号(H)、ローダまたは主軸移動指令(I)およびローダまたは主軸移動動作(J)、それぞれの時間変化を示しており、横軸は時間である。
ローディング時は、図13に示すように主軸チャック5が開いている状態でローダチャック10が主軸チャック5へワークWを搬送する。または主軸チャック5がローダチャック10へワークWを掴むために移動する。このとき演算制御部12は、加工プログラム11に記述されたチャック閉命令11aと、これに続いて記述された主軸チャック5に対する揺動命令11bとを読み込んで実行する。
図12のチャック閉命令11aは、演算制御部12からシーケンス制御部13に渡され、これを受け取ったシーケンス制御部13が有するチャック開閉命令部14からの指令により主軸チャック5を開閉させる主軸チャック開閉装置8が主軸チャック5を閉じる動作を行う。
一方、揺動命令11bは、上述したように演算制御部12の揺動指令部19に読み込まれて、揺動指令に変換されサーボコントロール部15に出力される。サーボコントロール部15は、主軸モータ6の駆動を介して主軸4および主軸チャック5を揺動させる。これが図17の主軸モータ揺動動作(B)に示される。この時、主軸モータ6の揺動動作により主軸モータ6への揺動負荷である主軸モータ揺動負荷(C)が増加する。そして、主軸チャック5がワークWを把持するための主軸チャック閉指令(D)がローダ制御装置16より出力され、素材であるワークWの搬入を行うローディング動作が始まることになる。
主軸チャック閉指令(D)に遅れて、油圧装置による物理的な主軸チャック閉動作(E)が開始され、揺動中の主軸チャック5によってワークWが把持されると、主軸モータ揺動動作(B)も(B1)に示されるように抑制される。主軸モータ6と主軸チャック5との間にベルト又はその他を用いた伝達機構7が介在する場合には、主軸チャック5は拘束されているが、ベルト滑りといった原因により主軸モータ6が僅かながら揺動し続けるため、主軸モータ揺動動作(B)において主軸チャック5の揺動動作が抑制された状態を示す波形が(B1)に示されるように平坦にはならない。同様に、主軸モータ揺動負荷(C)も揺動抑制により更に増加するが、増加した状態を示す波形も(C1)に示されるように平坦ではない。この主軸チャック5の揺動が拘束された状態のモータ電流変化、即ちモータ電流負荷を揺動抑制検知手段21が捉えて検知し、検知信号をワーク把持判定手段20に出力する。ワーク把持判定手段20は検知信号に基づいて主軸チャック5によるワーク把持を判定してワーク把持確認信号(H)をオンにする。
ワーク把持確認信号(H)がオンになった状態は、ワークWを主軸チャック5とローダチャック10とで両掴みしている状態を示している。ローディング動作を完結するためには、ローダチャック10を開くためのローダチャック開指令(F)がシーケンス制御部13を介してチャック開閉指令部17へ出力される。ローダチャック開指令(F)がオンにされ、それからタイムラグを経て油圧装置による物理的なローダチャック開動作(G)がローダチャック10により実動作時間をかけて実行される。ローダチャック10が開状態となることで主軸モータ揺動動作(B)が再開すると共に、主軸モータ揺動負荷(C)も減少することで、ワーク把持確認信号(H)がオフにされる。
つまり、ローダチャック10の開状態はワーク把持確認信号(H)がオフになることにより推測することができるので、ワーク把持判定手段20が出力するワーク把持確認信号(H)がオフになったことをシーケンス制御部13が検出し、ローダまたは主軸移動指令(I)を出力する。ローダ9が前後に移動する機構である場合は、ローダまたは主軸移動指令(I)はローダ制御装置16に出力され、素材であるワークWを開放したローダ9が定められた位置に移動するため僅かな応答時間を経てローダ軸が動き出す。主軸4が前後に移動する機構である場合は、ローダまたは主軸移動指令(I)に従い、ワークWを把持している主軸4が定められた位置に移動するために動き出す。
以上の動作の流れにおいて、ローダチャック10が開状態であることの確認を、ソフトウェアタイマーによる開閉推測で行っても良いが、正確にローダチャック10の開閉の確認を行うためには長めのタイマー設定が必要となるため、サイクルタイムの短縮はできない。また、前述のとおりワーク把持確認信号(H)がオフになるのは、主軸モータ揺動動作(B)が再開して、主軸モータ揺動負荷(C)がワーク把持の確認のための検出閾値を下回ったときである。しかし、(C1)に示すようにベルト滑りにより主軸モータ揺動負荷(C)は変動し、この変動幅は、揺動中の主軸チャック5がワークWを把持することにより揺動動作が抑制されたときの主軸チャック5の揺動振幅中における位置によって変わる。つまり、揺動振幅の中心に主軸チャック5の位置があるときに把持された場合は、変動幅が一番小さく、揺動振幅の最端に主軸チャック5の位置があるときに把持された場合は、負荷が軽くなる方向に動き出すことになるため変動幅が一番大きくなる。次に、図18を用いて、揺動振幅の最端に主軸チャック5の位置があるときに把持された場合に、ワークWを損傷させる可能性が内在することを説明する。
図18は、実施の形態4の参考となるローディング時にワークWを損傷させる可能性がある動作状態を表すタイムチャートの一例を示す図である。図18は、チャック揺動命令(A)、主軸モータ揺動動作(B)、主軸モータ揺動負荷(C)、主軸チャック閉指令(D)、主軸チャック閉動作(E)、ローダチャック開指令(F)、ローダチャック開動作(G)、ワーク把持確認信号(H)、ローダまたは主軸移動指令(I)およびローダまたは主軸移動動作(J)、それぞれの時間変化を示しており、横軸は時間である。
図18の主軸モータ揺動負荷(C)における(C2)がその原因となる状態を示す。主軸チャック閉動作(E)により、揺動中の主軸チャック5がワークWを把持し、ワーク把持確認信号(H)はオンとなる。しかし、主軸チャック5がワークWを把持した時の主軸モータ6の位置が揺動振幅の最端である場合には、直ちに主軸モータ揺動負荷(C)が(C2)に示すように小さくなり、これに応じてワーク把持確認信号(H)がオフになる可能性がある。この状態になると、ローダチャック開指令(F)が出ているがタイムラグ期間中なのでローダチャック開動作(G)は始まっておらずローダチャック10はまだ開状態になっていない。しかし、ワーク把持確認信号(H)が一旦オフになったことで、主軸チャック5とローダチャック10とがワークWを両掴みしている図18の(1)の期間においてローダまたは主軸移動指令(I)が出力され、タイムラグを経て、ローダまたは主軸移動動作(J)が開始されることになる。
この時、ローダチャック10のワーク把持力が主軸チャック5のワーク把持力より大きい場合には、両掴み状態から強引にワークWを引っ張り出す動きとなるため、ローダ9または主軸4の移動時に主軸チャック5からワークWが滑り、主軸チャック5はワークWを把持しない状態となる。しかしこの場合、ローダチャック開指令(F)は既にオンが出力されているので、タイムラグを経てローダチャック開動作(G)が開始されてローダチャック10が開状態となるため、主軸チャック5がワークWを把持しない状態から図18の(2)の期間を経てから、ワークWが主軸チャック5およびローダチャック10の何れのチャックにも掴まれていない状況が発生し、ワークWは落下することとなる。
逆に、主軸チャック5のワーク把持力の方がローダチャック10のワーク把持力より大きい場合には、上記と同様に両掴み状態から強引にワークWを引っ張り出す動きとなるが、ローダ9または主軸4の移動時にワークWが主軸チャック5にしっかりと把持された状態でローダチャック10からワークWが滑り出す動作が始まって抵抗負荷が大きくなり、ローダチャック10がローダチャック開指令(F)に遅れて開状態となるまで続くため、ワークWを損傷させることとなる。
なお、一般的に、ワークWを搬入および搬出するローダ9に備えられたローダチャック10のワーク把持力よりも、数十KgのワークWを数千回転で回す主軸4に備えられた主軸チャック5の方がワーク把持力は大きい。従って、主軸モータ揺動負荷(C)が(C2)のような状態になった場合に、ワークWを損傷させる可能性は小さくない。
図19は、実施の形態4にかかるローディング時の各部の命令および動作状態を表すタイムチャートの一例を示す図である。図19は、チャック揺動命令(A)、主軸モータ揺動動作(B)、主軸モータ揺動負荷(C)、チャック揺動動作(B’)、主軸チャック閉指令(D)、主軸チャック閉動作(E)、ローダチャック開指令(F)、ローダチャック開動作(G)、ワーク把持確認信号(H)、ワーク開放確認信号(H’)、ローダまたは主軸移動指令(I)およびローダまたは主軸移動動作(J)、それぞれの時間変化を示しており、横軸は時間である。主軸モータ揺動動作(B)は、主軸モータ端位置検出器6aから得た速度波形である。チャック揺動動作(B’)は、主軸端検出器40から得た速度波形である。
揺動再開検知手段23は、主軸4の位置または回転速度を検出する主軸端検出器40の検出値に基づいた主軸チャック5自体のチャック揺動動作(B’)を監視する。主軸チャック5の揺動動作が主軸チャック5によるワーク把持で拘束されても主軸モータ揺動動作(B)の波形は前述したように、(B1)に示すように平坦にはならないが、主軸チャック5のチャック揺動動作(B’)の波形は(B’1)に示すように平坦、即ち速度0になる。また、ローダチャック開動作(G)によりローダチャック10が開状態になったときには、チャック揺動動作(B’)の波形は、平坦、即ち速度0の状態から周期的な速度変動状態となり、揺動再開検知手段23は、揺動動作の抑制が解放されたことを検知する。この特性をワーク把持確認信号(H)およびワーク開放確認信号(H’)の動作判定に利用する。
つまり、揺動再開検知手段23が検知するチャック揺動動作(B’)が速度0になったときに、ワーク開放判定手段22はワーク開放確認信号(H’)をオンにする。そして、ローダチャック10が開いて、チャック揺動動作(B’)が速度0でなくなったときに、揺動再開検知手段23は、揺動動作の抑制が解放されたことを検知し、ワーク開放判定手段22はワーク開放確認信号(H’)をオフにしてローダチャック10がワークWを解放したと判断する。そして、ワーク開放判定手段22がワーク開放確認信号(H’)をオフにした後、ローダまたは主軸移動指令(I)をオンにしてローダまたは主軸移動動作(J)を開始させる。
これにより、ベルト滑りにより主軸モータ揺動動作(B)および主軸モータ揺動負荷(C)がそれぞれ(B1)および(C1)の状況になってしまった影響を受けることなく、ソフトウェアタイマーを用いずに、ローダチャック10の開状態を正確で素早く確認することができる。また、ワーク把持確認信号(H)を用いる方法と組み合わせて、更に安全で確実な確認方法を構築しても良い。
実施の形態4にかかる数値制御装置1bによれば、ベルト又はその他を用いた伝達機構7を有する工作機械の構成において、素材であるワークWを搬入するローディング動作でのワーク受け渡しのためにチャック開閉を確認するための時間を、新たな機構または装置を設けることなく短縮することができる。さらに、ワークWの落下および損傷を確実に回避することができる。
以上の実施の形態に示した構成は、本発明の内容の一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、本発明の要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。