(57)【要約】  数値制御装置（１）は、複数の軸を有する工作機械を制御する数値制御装置であって、被加工物を加工するための加工プログラム（８）を読み取る読取部（２）を有し、読取部（２）によって読み取られた加工プログラム（８）が複数の軸のうちの５個以上の軸を同時に動作させる加工プログラムである場合、加工プログラム（８）において同時に動作させる５個以上の軸の動作を、４個以下の軸の動作の組複数個に分割して制御する。
2018073946.tif 000002
【特許請求の範囲】
【請求項１】
複数の軸を有する工作機械を制御する数値制御装置であって、
被加工物を加工するための加工プログラムを読み取る読取部を備え、
前記読取部によって読み取られた前記加工プログラムが前記複数の軸のうちの５個以上の軸を同時に動作させる加工プログラムである場合、前記加工プログラムにおいて同時に動作させることが示されている５個以上の軸の動作を、４個以下の軸の動作の組複数個に分割して制御する、
ことを特徴とする数値制御装置。
【請求項２】
前記読取部によって読み取られた前記加工プログラムから前記複数の軸の各々の動作量を演算する演算部と、
前記演算部によって得られた結果が前記複数の軸のうちの５個以上の軸を同時に動作させることを示しているか否かを判定する判定部と、
前記判定部によって前記結果が前記複数の軸のうちの５個以上の軸を同時に動作させることを示していると判定された場合、同時に動作させることが示されている５個以上の軸の動作を、４個以下の軸の動作の組複数個に分割すると共に、複数個の組の各々における各軸の動作量を計算する分割部と、
前記工作機械における構成要素の制御周期毎の位置を計算する補間部と
を更に備えることを特徴とする請求項１に記載の数値制御装置。
【請求項３】
前記分割部によって計算された前記複数個の組の各々における各軸の動作量の情報を、組毎に前記制御周期にしたがって順に、前記構成要素を動作させるモータを駆動するモータ駆動部に出力する出力部を更に備える
ことを特徴とする請求項２に記載の数値制御装置。
【請求項４】
前記分割部は、前記同時に動作させることが示されている５個以上の軸のうちの最初に動作させる軸を示す優先情報にしたがって、前記複数個の組のなかから前記最初に動作させる軸の動作を含む組を選択し、選択された組の各軸の動作量を最初に計算し、前記選択された組の各軸の動作量を計算した後に、前記複数個の組のうちの前記選択された組以外の組の各軸の動作量を計算し、
前記出力部は、前記選択された組の各軸の動作量の情報を、前記複数個の組のうちの前記選択された組以外の組の各軸の動作量の情報より先に前記モータ駆動部に出力する
ことを特徴とする請求項３に記載の数値制御装置。
【請求項５】
前記分割部は、前記同時に動作させることが示されている５個以上の軸のうちの最初に動作させる軸を示す優先情報にしたがって、前記複数個の組のなかから前記最初に動作させる軸の動作を含む組を選択し、選択された組の各軸の動作量を最初に計算し、前記選択された組の各軸の動作量を計算した後に、前記複数個の組のうちの前記選択された組以外の組の各軸の動作量を計算する
ことを特徴とする請求項２に記載の数値制御装置。
【請求項６】
前記分割部は、分割を行った後の前記５個以上の軸の動作量の合計を、組毎に各軸の動作を実行する場合において前記複数個の組の動作の実行の順序が異なる複数のパターンの各々について計算すると共に、前記複数のパターンのうちの前記動作量の合計が最小となるパターンを選択する
ことを特徴とする請求項２に記載の数値制御装置。
【請求項７】
前記分割部によって選択されたパターンで前記分割部によって計算された前記複数個の組の各々における各軸の動作量の情報を、組毎に前記制御周期にしたがって順に、前記構成要素を動作させるモータを駆動するモータ駆動部に出力する出力部を更に備え、
前記出力部は、前記選択されたパターンで最初に計算された組の各軸の動作量の情報を、前記選択されたパターンに含まれる前記複数個の組のうちの前記最初に計算された組以外の組の各軸の動作量の情報より先に前記モータ駆動部に出力する
ことを特徴とする請求項６に記載の数値制御装置。
【請求項８】
前記同時に動作させることが示されている５個以上の軸は、５個の軸であり、
前記分割部は、分割を行う場合、前記工作機械における工具を前記５個の軸を同時に動作させた場合の前記工具の動作許容幅の範囲内で動作させる分割を行う
ことを特徴とする請求項２に記載の数値制御装置。
【請求項９】
前記工作機械は直交軸と回転軸とを有し、
基準となる座標系について並進及び回転の一方又は双方を行うことにより新たに定義された座標系において、前記工作機械における工具の前記被加工物に対する位置及び姿勢を制御するために直交軸と回転軸とを位置決めする割り出し動作を行う場合、５個以上の軸を同時に動作させることになるとき、
前記分割部は、前記５個以上の軸の動作を、４個以下の軸の動作の組複数個に分割する
ことを特徴とする請求項２に記載の数値制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、工作機械を制御する数値制御装置に関する。
【背景技術】
【０００２】
従来、工作機械は、被加工物を加工するための加工プログラムにしたがって、被加工物に対して加工を実際に行う工具と被加工物が載置されるテーブルとの一方又は双方を動作させて被加工物に対する工具の位置及び姿勢を制御する。具体的には、工作機械は、並進移動を行うための互いに直交する３個の軸と、工具の回転軸と、テーブルの回転軸とを含む５個以上の軸を有しており、加工プログラムをもとにした数値制御装置による制御にしたがって各軸を動作させることにより、被加工物に対する工具の位置及び姿勢を制御する。軸の動作は、並進又は回転である。制御することで、工作機械は、加工プログラムにしたがって被加工物を加工する。【０００３】
加工プログラムが工作機械における５個以上の軸を同時に動作させる指令を含む場合、数値制御装置が５個以上の軸の動作を同時に制御することができなければ、数値制御装置は指令にしたがって各軸を動作させることができない。そのため、従来、５個以上の軸の動作を同時に制御することができない数値制御装置が工作機械を制御する場合、被加工物に対する工具の位置及び姿勢を制御するとき、被加工物から工具を一度離し、工具の姿勢を変更した後に工具を被加工物に近づけることが行われている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１３−２１０９２６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記の従来の技術では、被加工物から工具を離すので、加工時間が長くなるという課題が生じる。５個以上の軸を同時に動作させる指令が仮に実行された後の被加工物に対する工具の位置及び姿勢が実現されると共に、５個以上の軸を同時に動作させない加工プログラムを作成することは容易ではない。【０００６】
本発明は、上記に鑑みてなされたものであって、５個以上の軸の動作を同時に制御することができない状況で５個以上の軸を同時に動作させる加工プログラムが与えられた場合、加工時間を長くすることなく、被加工物に対する工具の位置及び姿勢を当該加工プログラムが指定する位置及び姿勢にさせる数値制御装置を得ることを目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決し、目的を達成するために、本発明は、複数の軸を有する工作機械を制御する数値制御装置であって、被加工物を加工するための加工プログラムを読み取る読取部を有し、前記読取部によって読み取られた前記加工プログラムが前記複数の軸のうちの５個以上の軸を同時に動作させる加工プログラムである場合、前記加工プログラムにおいて同時に動作させることが示されている５個以上の軸の動作を、４個以下の軸の動作の組複数個に分割して制御することを特徴とする。
【発明の効果】
【０００８】
本発明にかかる数値制御装置は、５個以上の軸の動作を同時に制御することができない状況で５個以上の軸を同時に動作させる加工プログラムが与えられた場合、加工時間を長くすることなく、被加工物に対する工具の位置及び姿勢を当該加工プログラムが指定する位置及び姿勢にさせることができるという効果を奏する。
【図面の簡単な説明】
【０００９】
【図１】実施の形態１における数値制御装置の構成を示す図
【図２】実施の形態１における数値制御装置が有する読取部、演算部、判定部、分割部、補間部及び出力部を構成する少なくとも一部の構成要素が処理回路によって実現される場合の処理回路を示す図
【図３】実施の形態１における数値制御装置が有する読取部、演算部、判定部、分割部、補間部及び出力部の少なくとも一部の機能がプロセッサによって実現される場合のプロセッサを示す図
【図４】実施の形態１における数値制御装置の動作の手順を示すフローチャート
【図５】実施の形態２における工作機械及び被加工物の一例を示す図
【図６】実施の形態２において、４個以下の軸しか同時に動作させることができない数値制御装置が被加工物に対して工具の先端の位置を維持したまま工具の方向をフィーチャ座標系におけるＦＺ方向と平行にする動作を制御することができることを説明するための図
【図７】実施の形態３における工作機械の動作の一例を示す図
【図８】実施の形態３における工作機械の動作の別の一例を示す図
【図９】実施の形態４において、図５の工作機械が有する５個の軸が同時に動作する場合の工具の姿勢の変化を示す図
【図１０】実施の形態４において、工具の先端が図９のＡ点に位置する場合の工具姿勢ベクトルと動作許容幅との関係を示す図
【図１１】実施の形態４において、工作機械が有する５個の軸が同時に動作する場合に工具の根元が動作許容幅の範囲内で動作するときの分割の例を説明するための図
【発明を実施するための形態】
【００１０】
以下に、本発明の実施の形態にかかる数値制御装置を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１１】
実施の形態１．
図１は、実施の形態１における数値制御装置１の構成を示す図である。図１には、数値制御装置１を説明するために、モータ駆動部１７及びモータ１８も示されている。数値制御装置１は工作機械を制御する装置であって、モータ駆動部１７及びモータ１８は工作機械における複数の構成要素のうちの一部の構成要素である。モータ駆動部１７は、モータ１８を駆動するものである。
【００１２】
工作機械は、被加工物を加工するための加工プログラム８にしたがって被加工物を加工する装置であって、被加工物を加工するための複数の軸を有する。複数の軸のひとつは、工作機械における工具の姿勢を変更するための軸であって、回転することにより被加工物に対する工具の姿勢を変更することを可能とする。工具は、例えば回転することにより被加工物を切削して被加工物に孔又は穴を形成するものである。
【００１３】
工作機械は被加工物が載置されるテーブルを有しており、複数の軸の他のひとつはテーブルを回転させる軸である。工作機械は、工作機械の全体をＸ方向、Ｙ方向及びＺ方向の各々に並進移動させるＸ軸、Ｙ軸及びＺ軸を有する。Ｘ軸、Ｙ軸及びＺ軸の各々も、複数の軸の一部である。数値制御装置１は、工作機械が有する複数の軸の動作を制御することにより、被加工物に対する工具の位置及び姿勢を制御する。モータ１８は、複数の軸の各々に対応する構成要素を動作させるものである。当該動作は、並進移動又は回転である。複数の軸で動作させる構成要素の一例は工具及びテーブルの一方又は双方である。
【００１４】
上述の通り、工作機械は加工プログラム８にしたがって被加工物を加工する装置であって、数値制御装置１は工作機械を制御する装置であるので、数値制御装置１は、加工プログラム８を読み取る読取部２を有する。数値制御装置１は、読取部２によって読み取られた加工プログラム８から上記の複数の軸の各々の動作量を演算する演算部３を更に有する。
【００１５】
具体的には、読取部２は読み取った加工プログラム８を解析して加工プログラム８のなかの指令９を演算部３に出力し、演算部３は指令９をもとに上記の複数の軸の各々の動作量を演算する。例えば、加工プログラム８が工具の先端の位置と工具の姿勢とを指定する場合、演算部３は、座標変換を行い、工具の先端の位置と工具の姿勢とから上記の複数の軸の各々の動作量を演算する。座標変換を行う必要がない場合、演算部３は、指令９において指定されている動作量を上記の複数の軸の各々の動作量と判定する演算を行う。
【００１６】
数値制御装置１は、演算部３によって得られた結果が上記の複数の軸のうちの５個以上の軸を同時に動作させることを示しているか否かを判定する判定部４を更に有する。具体的には、演算部３は演算を行うことによって得た上記の複数の軸の各々の動作量の情報１０を判定部４に出力し、判定部４は、複数の軸の各々の動作量の情報１０が５個以上の軸を同時に動作させることを示しているか否かを判定する。例えば、判定部４は、情報１０が示す複数の軸のうちの５個以上の軸の動作量が零ではない場合、演算部３によって得られた結果が５個以上の軸を同時に動作させることを示していると判定する。
【００１７】
数値制御装置１は、上記の結果が複数の軸のうちの５個以上の軸を同時に動作させることを示していると判定部４によって判定された場合、同時に動作させることが示されている５個以上の軸の動作を、４個以下の軸の動作の組複数個に分割する分割部５を更に有する。分割部５は、分割によって得た複数個の組の各々における各軸の動作量を計算する。
【００１８】
具体的には、判定部４は、複数の軸の各々の動作量の情報１０が５個以上の軸を同時に動作させることを示していると判定した場合、判定結果と上記の複数の軸の各々の動作量の情報１０とを含む情報１１を分割部５に出力する。分割部５は、情報１１をもとに、同時に動作させることが示されている５個以上の軸の動作を、４個以下の軸の動作の組複数個に分割する。加えて、分割部５は、情報１１をもとに、分割によって得た複数個の組の各々における各軸の動作量を計算する。
【００１９】
分割部５は、分割を行う場合、例えば加工プログラム８において工具の先端の位置と工具の姿勢とが指定されているとき、工具の先端が５個以上の軸を同時に動作させたときの経路からずれることがないように分割を行う。上述の通り、当該複数個の組の各々は、４個以下の軸の動作の組である。
【００２０】
分割部５は、優先情報１３にしたがって、複数個の組のなかから最初に動作させる軸の動作を含む組を選択し、選択された組の各軸の動作量を最初に計算し、選択された組の各軸の動作量を計算した後に、複数個の組のうちの選択された組以外の組の各軸の動作量を計算してもよい。優先情報１３は、上記の同時に動作させることが示されている５個以上の軸のうちの最初に動作させる軸を示す情報である。
【００２１】
例えば、最初に動作させる軸は工具を回転させる軸である。又は、例えば、最初に動作させる軸はテーブルを回転させる軸である。優先情報１３は、例えば数値制御装置１のユーザによって数値制御装置１に入力される。優先情報１３は、数値制御装置１にあらかじめ設定されてもよい。具体的には、優先情報１３は分割部５にあらかじめ設定されてもよい。優先情報１３が数値制御装置１にあらかじめ設定されている場合、最初に動作させる軸は工作機械毎に設定されてもよい。
【００２２】
数値制御装置１は、分割部５によって得られた複数個の組の各々における各軸の動作が組毎に制御周期にしたがって順に行われる場合の工作機械における構成要素の制御周期毎の位置を計算する補間部６を更に有する。位置が計算される構成要素の一例は、工具及びテーブルの一方又は双方である。
【００２３】
具体的には、分割部５は、分割によって得た複数個の組の各々における各軸の動作量の情報を補間部６に出力する。例えば、分割部５によって２個の組が得られた場合、分割部５は、当該２個の組のうちの一方の組における各軸の動作量の情報１４と、当該２個の組のうちの他方の組における各軸の動作量の情報１５とを補間部６に出力する。
【００２４】
例えば、分割によって得られた２個の組のうちの一方の組における各軸の動作が他方の組における各軸の動作より先に行われる場合、補間部６は、一方の組における各軸の動作が行われる前の工具の位置の情報と一方の組における各軸の動作量の情報１４とを用いて一方の組における各軸の動作が行われた後の工具の位置を計算する。次に、補間部６は、一方の組における各軸の動作が行われた後の工具の位置の情報と他方の組における各軸の動作量の情報１５とを用いて他方の組における制御周期毎に各軸の動作が行われた後の工具の位置を計算する。なお、分割部５は、分割によって３個以上の組を得る場合、当該３個以上の組の各々における各軸の動作量を計算し、計算によって得た各軸の動作量の情報を組毎に補間部６に出力する。
【００２５】
数値制御装置１は、分割部５によって計算された複数個の組の各々における各軸の動作量の情報１０と、補間部６によって計算された工作機械における構成要素の位置とを含む情報１６を、組毎に制御周期にしたがって順にモータ駆動部１７に出力する出力部７を更に有する。具体的には、補間部６は上記の情報１６を組毎に制御周期にしたがって順に出力部７に出力し、出力部７は補間部６から供給される情報１６を組毎に制御周期にしたがって順にモータ駆動部１７に出力する。モータ駆動部１７は、出力部７から供給される情報１６にしたがってモータ１８を駆動する。
【００２６】
判定部４は、演算部３によって得られた結果が複数の軸のうちの５個以上の軸を同時に動作させることを示していないと判定した場合、判定結果と上記の複数の軸の各々の動作量の情報１０とを含む情報１２を補間部６に出力する。補間部６は、工作機械における構成要素の制御周期毎の位置を計算し、計算によって得られた位置の情報と情報１０とを含む情報１６を出力部７に出力する。
【００２７】
つまり、数値制御装置１は、読取部２によって読み取られた加工プログラム８が複数の軸のうちの５個以上の軸を同時に動作させる加工プログラムである場合、加工プログラム８において同時に動作させることが示されている５個以上の軸の動作を、４個以下の軸の動作の組複数個に分割して制御する。
【００２８】
なお、分割部５が優先情報１３にしたがって複数個の組のなかから最初に動作させる軸の動作を含む組を選択した場合、出力部７は、選択された組の各軸の動作量の情報を、複数個の組のうちの選択された組以外の組の各軸の動作量の情報より先にモータ駆動部１７に出力する。
【００２９】
数値制御装置１が有する読取部２、演算部３、判定部４、分割部５、補間部６及び出力部７の機能の少なくとも一部は、処理回路２１によって実現されてもよい。図２は、実施の形態１における数値制御装置１が有する読取部２、演算部３、判定部４、分割部５、補間部６及び出力部７を構成する少なくとも一部の構成要素が処理回路２１によって実現される場合の処理回路２１を示す図である。
【００３０】
処理回路２１は、専用のハードウェアである。すなわち、処理回路２１は、例えば、単一回路、複合回路、プログラム化されたプロセッサ、並列プログラム化されたプロセッサ、ＡＳＩＣ(Application  Specific  Integrated  Circuit)、ＦＰＧＡ(Field-Programmable  Gate  Array)、又はこれらを組み合わせたものである。読取部２、演算部３、判定部４、分割部５、補間部６及び出力部７の一部は、残部とは別個の専用のハードウェアであってもよい。
【００３１】
数値制御装置１が有する読取部２、演算部３、判定部４、分割部５、補間部６及び出力部７の少なくとも一部の機能は、メモリ３１に格納されるプログラムを実行するプロセッサ３２によって実現されてもよい。図３は、実施の形態における数値制御装置１が有する読取部２、演算部３、判定部４、分割部５、補間部６及び出力部７の少なくとも一部の機能がプロセッサ３２によって実現される場合のプロセッサ３２を示す図である。プロセッサ３２は、ＣＰＵ(Central  Processing  Unit)、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、又はＤＳＰ(Digital  Signal  Processor)である。図３には、メモリ３１も示されている。
【００３２】
読取部２、演算部３、判定部４、分割部５、補間部６及び出力部７の少なくとも一部の機能がプロセッサ３２によって実現される場合、当該一部の機能は、プロセッサ３２と、ソフトウェア、ファームウェア、又はソフトウェアとファームウェアとの組み合わせにより実現される。ソフトウェア又はファームウェアはプログラムとして記述され、メモリ３１に格納される。プロセッサ３２は、メモリ３１に記憶されたプログラムを読み出して実行することにより、読取部２、演算部３、判定部４、分割部５、補間部６及び出力部７の少なくとも一部の機能を実現する。
【００３３】
すなわち、読取部２、演算部３、判定部４、分割部５、補間部６及び出力部７の少なくとも一部の機能がプロセッサ３２によって実現される場合、数値制御装置１は、読取部２、演算部３、判定部４、分割部５、補間部６及び出力部７の一部によって実行されるステップが結果的に実行されることになるプログラムを格納するためのメモリ３１を有する。メモリ３１に格納されるプログラムは、読取部２、演算部３、判定部４、分割部５、補間部６及び出力部７の一部が実行する手順又は方法をコンピュータに実行させるものであるともいえる。
【００３４】
メモリ３１は、例えば、ＲＡＭ(Random  Access  Memory)、ＲＯＭ(Read  Only  Memory)、フラッシュメモリ、ＥＰＲＯＭ(Erasable  Programmable  Read  Only  Memory)、ＥＥＰＲＯＭ(Electrically  Erasable  Programmable  Read-Only  Memory)等の、不揮発性又は揮発性の半導体メモリ、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク又はＤＶＤ(Digital  Versatile  Disk)等である。
【００３５】
読取部２、演算部３、判定部４、分割部５、補間部６及び出力部７の複数の機能について、当該複数の機能の一部を専用のハードウェアで実現し、当該複数の機能の残部をソフトウェア又はファームウェアで実現してもよい。このように、読取部２、演算部３、判定部４、分割部５、補間部６及び出力部７の複数の機能は、ハードウェア、ソフトウェア、ファームウェア、又はこれらの組み合わせによって実現することができる。
【００３６】
次に、実施の形態１における数値制御装置１の動作を説明する。図４は、実施の形態１における数値制御装置１の動作の手順を示すフローチャートである。図４を用いて、分割部５によって２個の組が得られる場合の数値制御装置１の動作を説明する。まず、読取部２は、加工プログラム８を読み取って加工プログラム８を解析する（Ｓ１）。次に、演算部３は、読取部２によって読み取られた加工プログラム８のなかの指令９をもとに、工作機械が有する複数の軸の各々の動作量を演算する（Ｓ２）。演算部３は、各軸の動作量を演算する場合、座標変換を行うことが必要であるとき、座標変換を行った後に各軸の動作量を演算する。
【００３７】
次に、判定部４は、ステップＳ２において演算部３によって得られた結果が上記の複数の軸のうちの５個以上の軸を同時に動作させることを示しているか否かを判定する（Ｓ３）。上記の結果が５個以上の軸を同時に動作させることを示していると判定部４によって判定された場合（Ｓ３でＹｅｓ）、分割部５は、同時に動作させることが示されている５個以上の軸の動作を、４個以下の軸の動作の組２個に分割し、２個の組のうちの最初に動作させる軸の動作を含む第１の組を選択し、第１の組における各軸の動作量を計算する。補間部６は、第１の組における各軸を動作させた場合の工具及びテーブルの一方又は双方の終点の位置を計算する（Ｓ４）。図４のステップＳ４では、最初に動作させる軸は「優先軸」と記載されている。
【００３８】
ステップＳ４の動作が終了した後、分割部５は、２個の組のうちの第１の組とは異なる第２の組における各軸の動作量を計算する。補間部６は、第２の組における各軸を動作させた場合の工具及びテーブルの一方又は双方の終点の位置を計算する（Ｓ５）。第２の組は、最初に動作させる軸の動作を含まない組であるので、図４のステップＳ５では、最初に動作させる軸ではない軸は「非優先軸」と記載されており、ステップＳ５において、補間部６は、非優先軸の動作を含む第２の組における各軸を動作させた場合の工具及びテーブルの一方又は双方の終点の位置を計算する。
【００３９】
演算部３によって得られた結果が５個以上の軸を同時に動作させることを示していないと判定部４によって判定された場合（Ｓ３でＮｏ）と、ステップＳ５の動作が行われた場合、数値制御装置１の動作はステップＳ６に移行する。ステップＳ６において、補間部６は、各制御周期について、工作機械の直交軸の動作量と、工具の回転軸の動作量と、被加工物が載置されるテーブルの回転軸の動作量とのうちの一部の情報を作成する。
【００４０】
次に、出力部７は、制御周期にしたがって第１の組の直交軸及び回転軸の動作量の情報をモータ駆動部１７に出力し、第１の組の直交軸及び回転軸の動作量の情報をモータ駆動部１７に出力した後に、制御周期にしたがって第２の組の直交軸及び回転軸の動作量の情報をモータ駆動部１７に出力する（Ｓ７）。ステップＳ７において、出力部７は、第１の組の直交軸及び回転軸の動作量の情報をモータ駆動部１７に出力する場合、ステップＳ４において補間部６によって計算された終点の位置の情報もモータ駆動部１７に出力する。加えて、ステップＳ７において、出力部７は、第２の組の直交軸及び回転軸の動作量の情報をモータ駆動部１７に出力する場合、ステップＳ５において補間部６によって計算された終点の位置の情報もモータ駆動部１７に出力する。
【００４１】
モータ駆動部１７は、出力部７から供給される情報にしたがって、モータ１８を駆動する。その結果、工作機械において第１の組の各軸が動作した後に第２の組の各軸が動作することにより、第２の組の各軸の動作が終了したとき、工作機械における工具とテーブルとの位置の関係と、テーブルに対する工具の姿勢とが、加工プログラム８のなかの指令９によって指定される関係及び姿勢に一致する。すなわち、第２の組の各軸の動作が終了したとき、被加工物に対する工具の位置及び姿勢は加工プログラム８のなかの指令９によって指定される位置及び姿勢に一致する。
【００４２】
上述の通り、演算部３によって得られた結果が複数の軸のうちの５個以上の軸を同時に動作させることを示していると判定部４によって判定された場合、分割部５は、同時に動作させることが示されている５個以上の軸の動作を、４個以下の軸の動作の組複数個に分割し、分割によって得た複数個の組の各々における各軸の動作量を計算する。複数の軸は、工作機械が有する軸である。
【００４３】
仮に数値制御装置１が４個以下の軸しか同時に動作させる制御を行うことができない場合であっても、数値制御装置１は、分割部５が同時に動作させることが示されている５個以上の軸の動作を４個以下の軸の動作の組複数個に分割するので、工作機械が有する複数の軸の各々を、加工プログラム８のなかの指令９によって指定される状態に動作させることができる。数値制御装置１が５個以上の軸を動作させる場合、被加工物から工具を離す必要がなくなる。すなわち、数値制御装置１は、５個以上の軸の動作を同時に制御することができない状況で５個以上の軸を同時に動作させる加工プログラム８が与えられた場合、加工時間を長くすることなく、被加工物に対する工具の位置及び姿勢を加工プログラム８が指定する位置及び姿勢にさせることができる。更に言うと、数値制御装置１は、加工プログラム８の変更を要求しない。
【００４４】
数値制御装置１のユーザが優先情報１３を数値制御装置１に入力する場合、ユーザは分割部５によって得られた複数個の組のなかから最初に動作させる軸の動作を含む組を指定することができる。
【００４５】
工作機械は、例えば直交軸と回転軸とを有する。基準となる座標系について並進及び回転の一方又は双方を行うことにより新たに定義された座標系において、工作機械における工具の被加工物に対する位置及び姿勢を制御するために直交軸と回転軸とを位置決めする割り出し動作を行う場合を仮定する。その場合において、５個以上の軸を同時に動作させることになるとき、分割部５は、上述の通り、５個以上の軸の動作を、４個以下の軸の動作の組複数個に分割する。分割部５によって行われる分割により、数値制御装置１は、５個以上の軸の動作を同時に制御することができない状況で５個以上の軸を同時に動作させる加工プログラム８が与えられた場合、加工時間を長くすることなく、被加工物に対する工具の位置及び姿勢を加工プログラム８が指定する位置及び姿勢にさせることができる。
【００４６】
実施の形態２．
次に、図５及び図６を用いて実施の形態１において説明した数値制御装置１の動作の一例を説明する。図５は、実施の形態２における工作機械及び被加工物５１の一例を示す図である。実施の形態２の数値制御装置は実施の形態１の数値制御装置１と同じである。実施の形態２の工作機械は、第１の回転軸５２を有する工具５３と、第２の回転軸５４を有するテーブル５５とによって構成されている。
【００４７】
工作機械には、機械座標系５６と、フィーチャ座標系５７とが定義されている。工作機械は、機械座標系５６におけるＭＸ方向、ＭＹ方向及びＭＺ方向の各々に対応するＸ軸、Ｙ軸及びＺ軸を有する。Ｘ軸、Ｙ軸及びＺ軸の各々は、他の軸のいずれとも直交する。図示した場合に不明確さが生じる可能性があるため、図５には、Ｘ軸、Ｙ軸及びＺ軸は示されていない。工具５３における第１の回転軸５２はＹ軸の周りに回転する軸であり、テーブル５５における第２の回転軸５４はＺ軸の周りに回転する軸である。実施の形態２の工作機械は、第１の回転軸５２、第２の回転軸５４、Ｘ軸、Ｙ軸及びＺ軸の５個の軸を有する。
【００４８】
フィーチャ座標系５７は、機械座標系５６に対して原点をオフセットして回転させた座標系であり、被加工物５１のひとつの平面Ｓに対して定義される座標である。被加工物５１はテーブル５５に載置されており、平面Ｓは、テーブル５５の平面と平行しておらず直交もしていない平面である。被加工物５１の上記のひとつの平面Ｓは、テーブル５５の平面と平行しておらず直交もしていないので、以下では「斜面Ｓ」と記載する。すなわち、フィーチャ座標系５７は斜面Ｓに対して定義される直交座標である。更に言うと、フィーチャ座標系５７におけるＦＸ方向及びＦＹ方向は斜面Ｓと平行であり、フィーチャ座標系５７におけるＦＺ方向は斜面Ｓと直交している。
【００４９】
以下では、被加工物５１に対して工具５３の先端の位置を維持したまま工具５３の方向をフィーチャ座標系５７におけるＦＺ方向と平行にする動作について説明する。当該動作を以下では「第１の動作」と記載する。工具５３の方向は、工具５３の先端から工具５３の根元への方向である。第１の動作を一度のステップで行わせる場合、工作機械の直交する３軸と２個の回転軸との５個の軸が同時に動作することになる。そのため、数値制御装置１が４個以下の軸しか同時に動作させることができない場合、数値制御装置１は、従来では第１の動作を制御することができない。
【００５０】
図６は、実施の形態２において、４個以下の軸しか同時に動作させることができない数値制御装置１が第１の動作を制御することができることを説明するための図である。図６は、工作機械が初期状態６１から中間状態６２に移行し、その後に中間状態６２から終期状態６３に移行することを示している。初期状態６１は図５において示されている工作機械の状態と同じ状態である。
【００５１】
分割部５は、同時に動作させることが示されている５個の軸の動作を、３個の軸の動作の組２個に分割する。分割によって得られた第１の組は、第１の回転軸５２の動作と、Ｘ軸の動作と、Ｚ軸の動作との３個の軸の動作を含む組であると定義する。分割によって得られた第２の組は、第２の回転軸５４の動作と、Ｘ軸の動作と、Ｙ軸の動作との３個の軸の動作を含む組であると定義する。
【００５２】
数値制御装置１の出力部７は、第１の組についての各軸の動作量の情報をモータ駆動部１７に出力し、モータ駆動部１７が第１の組についての各軸の動作量の情報にしたがってモータ１８を駆動することにより、工作機械の状態は初期状態６１から中間状態６２に移行する。中間状態６２における工具５３の先端の位置は、初期状態６１における工具５３の先端の位置と同じである。
【００５３】
その後、出力部７は、第２の組についての各軸の動作量の情報をモータ駆動部１７に出力し、モータ駆動部１７が第２の組についての各軸の動作量の情報にしたがってモータ１８を駆動することにより、工作機械の状態は中間状態６２から終期状態６３に移行する。終期状態６３では、工具５３の軸はフィーチャ座標系５７におけるＦＺ方向と平行になっており、工具５３は加工プログラム８にしたがって被加工物５１を適切に加工することができる。
【００５４】
つまり、５個の軸を同時に動作させるという第１の動作を行わせる指令９を含む加工プログラム８が与えられた場合、数値制御装置１の分割部５は、同時に動作させることが示されている５個の軸の動作を、３個の軸の動作の組２個に分割する。分割部５は、分割によって得た２個の組の各々における各軸の動作量を計算し、数値制御装置１の出力部７は、２個の組の各々における各軸の動作量の情報をモータ駆動部１７に出力する。
【００５５】
同時に動作させることが示されている５個の軸の動作が、３個の軸の動作の組２個に分割されるので、被加工物５１から工具５３を離して工具５３の姿勢を変える必要がなくなる。つまり、４個以下の軸しか同時に動作させることができない数値制御装置１が用いられる場合であっても、被加工物５１から工具５３を離して工具５３の姿勢を変える必要がないので、数値制御装置１は加工時間を長くすることなく、被加工物５１に対する工具５３の位置及び姿勢を加工プログラム８が指定する通りに制御することができる。
【００５６】
なお、実施の形態２では、工作機械は、第１の回転軸５２、第２の回転軸５４、Ｘ軸、Ｙ軸及びＺ軸の５個の軸を有する。しかしながら、工作機械は、上述した５個の軸に加えて、例えば、工具５３のチルトを実現するための軸と、テーブル５５のチルトを実現するための軸とを有してもよい。その場合、分割部５は、同時に動作させることが示されている５個以上の軸の動作を、４個以下の軸の動作の組複数個に分割する。
【００５７】
実施の形態３．
次に、図７及び図８を用いて実施の形態１において説明した数値制御装置１の動作の別の一例を説明する。図７は、実施の形態３における工作機械の動作の一例を示す図である。図８は、実施の形態３における工作機械の動作の別の一例を示す図である。実施の形態３の数値制御装置１の構成は実施の形態１の数値制御装置１の構成と同じであるが、実施の形態３の分割部５の機能の一部が実施の形態１の分割部５の機能の一部と異なる。実施の形態３の工作機械は、実施の形態２の工作機械と同じであって、第１の回転軸５２を有する工具５３と、第２の回転軸５４を有するテーブル５５とによって構成されている。実施の形態３では、数値制御装置１の分割部５について実施の形態１と相違する部分を説明する。
【００５８】
図７は、工具５３の第１の回転軸５２の動作を行う組の動作を行った後にテーブル５５の第２の回転軸５４の動作を行う組の動作を行った場合の工作機械の状態の遷移を示している。図８は、テーブル５５の第２の回転軸５４の動作を行う組の動作を行った後に工具５３の第１の回転軸５２の動作を行う組の動作を行った場合の工作機械の状態の遷移を示している。図７が示す遷移の最初の状態は図８が示す遷移の最初の状態と同じであり、図７が示す遷移の最後の状態は図８が示す遷移の最後の状態と同じである。
【００５９】
テーブル５５の第２の回転軸５４を回転させる動作に着目すると、図７の第２の回転軸５４から工具５３の第１の回転軸５２までの距離は、図８の第２の回転軸５４から工具５３の第１の回転軸５２までの距離より短い。つまり、遷移終了後の工作機械の状態が同じであっても、図７の遷移の方が図８の遷移よりも、直交軸の動作量は小さい。直交軸の動作量は直交軸の移動量である。工具５３の第１の回転軸５２を回転させる動作に着目すると、図７の遷移の場合と図８の遷移の場合とでは、直交軸の動作量は同じである。
【００６０】
つまり、遷移終了後の工作機械の状態が同じであっても、図７の遷移の方が図８の遷移よりも、動作量は小さい。実施の形態３では、分割部５は、分割を行った後の５個以上の軸の動作量の合計を、組毎に各軸の動作を実行する場合において複数個の組の動作の実行の順序が異なる複数のパターンの各々について計算すると共に、複数のパターンのうちの動作量の合計が最小となるパターンを選択する。分割部５の機能により、工作機械の遷移の開始から終了までの時間を最短にすることができる。
【００６１】
なお、出力部７は、分割部５によって選択されたパターンで分割部５によって計算された複数個の組の各々における各軸の動作量の情報を、組毎に制御周期にしたがって順に、モータ駆動部１７に出力する。その際、出力部７は、分割部５によって選択されたパターンで最初に計算された組の各軸の動作量の情報を、選択されたパターンに含まれる複数個の組のうちの最初に計算された組以外の組の各軸の動作量の情報より先にモータ駆動部１７に出力する。
【００６２】
実施の形態４．
次に、図９、図１０及び図１１を用いて実施の形態１において説明した数値制御装置１の動作の更に別の一例を説明する。図９は、実施の形態４において、図５の工作機械が有する５個の軸が同時に動作する場合の工具５３の姿勢の変化を示す図である。図９には、５個の軸が同時に動作する場合の工具５３の根元の軌跡７１と、工具５３の先端の軌跡７２とが示されている。
【００６３】
実施の形態４では、工具５３の根元の動作の許容幅が設定されており、当該許容幅は図９では動作許容幅７３と示されている。図９の工具５３のなかに記載されているベクトル７４は工具５３の姿勢を示している。以下では、ベクトル７４を「工具姿勢ベクトル７４」と記載する。工具姿勢ベクトル７４は、工具５３の姿勢が変化する際の各時刻における工具５３の先端から工具５３の根元までの距離及び向きを示している。
【００６４】
図１０は、実施の形態４において、工具５３の先端が図９のＡ点に位置する場合の工具姿勢ベクトル７４と動作許容幅７３との関係を示す図である。動作許容幅７３は、工具姿勢ベクトル７４を基準にした角度７５もしくは距離７６で定義される。
【００６５】
図１１は、実施の形態４において、工作機械が有する５個の軸が同時に動作する場合に工具５３の根元が動作許容幅７３の範囲内で動作するときの分割の例を説明するための図である。加工プログラム８が工作機械における５個の軸を同時に動作させる指令を含む場合、数値制御装置１の分割部５は、分割を行うとき、工作機械における工具５３を５個の軸を同時に動作させた際の動作許容幅７３の範囲内で動作させる分割を行う。
【００６６】
図１１における第１工具根元経路８１は、工具５３の根元側の回転軸８０を動作させ第１の回転軸５２を動作させない場合の経路の様子を示している。図１１における第２工具根元経路８２は、第１の回転軸５２を動作させ工具５３の根元側の回転軸８０を動作させない場合の経路の様子を示している。
【００６７】
実施の形態４においても、数値制御装置１は、同時に動作させることが示されている５個以上の軸の動作を、４個以下の軸の動作の組複数個に分割する。被加工物５１から工具５３を離して工具５３の姿勢を変える必要がないので、数値制御装置１は、加工時間を長くすることなく、被加工物５１に対する工具５３の位置及び姿勢を加工プログラム８が指定する通りに制御することができる。
【００６８】
実施の形態４では、分割部５によって得られた複数個の組は動作が比較的早く行われる組と動作が比較的遅く行われる組とを含む。加えて、被加工物５１に対する工具５３の位置及び姿勢は最短時間で加工プログラム８が指定した位置及び姿勢にならない可能性がある。
【００６９】
以上の実施の形態に示した構成は、本発明の内容の一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、本発明の要旨を逸脱しない範囲で、構成の一部を省略又は変更することも可能である。
【符号の説明】
【００７０】
１  数値制御装置、２  読取部、３  演算部、４  判定部、５  分割部、６  補間部、７  出力部、８  加工プログラム、１３  優先情報、１７  モータ駆動部、１８  モータ、２１  処理回路、３１  メモリ、３２  プロセッサ、５１  被加工物、５２  第１の回転軸、５３  工具、５４  第２の回転軸、５５  テーブル、５６  機械座標系、５７  フィーチャ座標系、６１  初期状態、６２  中間状態、６３  終期状態。
【図１】
2018073946.tif 000003
【図２】
2018073946.tif 000004
【図３】
2018073946.tif 000005
【図４】
2018073946.tif 000006
【図５】
2018073946.tif 000007
【図６】
2018073946.tif 000008
【図７】
2018073946.tif 000009
【図８】
2018073946.tif 000010
【図９】
2018073946.tif 000011
【図１０】
2018073946.tif 000012
【図１１】
2018073946.tif 000013
【手続補正書】
【提出日】平成29年3月30日(2017.3.30)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数の軸を有する工作機械を制御する数値制御装置であって、
被加工物を加工するための加工プログラムが前記複数の軸のうちの５個以上の軸を同時に動作させる加工プログラムである場合、前記加工プログラムにおいて同時に動作させることが示されている５個以上の軸の動作を、４個以下の軸の動作の組複数個に分割して制御する、
ことを特徴とする数値制御装置。
【請求項２】
前記加工プログラムを読み取る読取部を備え、
前記読取部によって読み取られた前記加工プログラムが前記複数の軸のうちの５個以上の軸を同時に動作させる加工プログラムである場合、前記５個以上の軸の動作を、４個以下の軸の動作の組複数個に分割して制御する、
ことを特徴とする請求項１に記載の数値制御装置。
【請求項３】
前記読取部によって読み取られた前記加工プログラムから前記複数の軸の各々の動作量を演算する演算部と、
前記演算部によって得られた結果が前記複数の軸のうちの５個以上の軸を同時に動作させることを示しているか否かを判定する判定部と、
前記判定部によって前記結果が前記複数の軸のうちの５個以上の軸を同時に動作させることを示していると判定された場合、同時に動作させることが示されている５個以上の軸の動作を、４個以下の軸の動作の組複数個に分割すると共に、複数個の組の各々における各軸の動作量を計算する分割部と、
前記工作機械における構成要素の制御周期毎の位置を計算する補間部と
を更に備えることを特徴とする請求項２に記載の数値制御装置。
【請求項４】
前記分割部によって計算された前記複数個の組の各々における各軸の動作量の情報を、組毎に前記制御周期にしたがって順に、前記構成要素を動作させるモータを駆動するモータ駆動部に出力する出力部を更に備える
ことを特徴とする請求項３に記載の数値制御装置。
【請求項５】
前記分割部は、前記同時に動作させることが示されている５個以上の軸のうちの最初に動作させる軸を示す優先情報にしたがって、前記複数個の組のなかから前記最初に動作させる軸の動作を含む組を選択し、選択された組の各軸の動作量を最初に計算し、前記選択された組の各軸の動作量を計算した後に、前記複数個の組のうちの前記選択された組以外の組の各軸の動作量を計算し、
前記出力部は、前記選択された組の各軸の動作量の情報を、前記複数個の組のうちの前記選択された組以外の組の各軸の動作量の情報より先に前記モータ駆動部に出力する
ことを特徴とする請求項４に記載の数値制御装置。
【請求項６】
前記分割部は、前記同時に動作させることが示されている５個以上の軸のうちの最初に動作させる軸を示す優先情報にしたがって、前記複数個の組のなかから前記最初に動作させる軸の動作を含む組を選択し、選択された組の各軸の動作量を最初に計算し、前記選択された組の各軸の動作量を計算した後に、前記複数個の組のうちの前記選択された組以外の組の各軸の動作量を計算する
ことを特徴とする請求項３に記載の数値制御装置。
【請求項７】
前記分割部は、分割を行った後の前記５個以上の軸の動作量の合計を、組毎に各軸の動作を実行する場合において前記複数個の組の動作の実行の順序が異なる複数のパターンの各々について計算すると共に、前記複数のパターンのうちの前記動作量の合計が最小となるパターンを選択する
ことを特徴とする請求項３に記載の数値制御装置。
【請求項８】
前記分割部によって選択されたパターンで前記分割部によって計算された前記複数個の組の各々における各軸の動作量の情報を、組毎に前記制御周期にしたがって順に、前記構成要素を動作させるモータを駆動するモータ駆動部に出力する出力部を更に備え、
前記出力部は、前記選択されたパターンで最初に計算された組の各軸の動作量の情報を、前記選択されたパターンに含まれる前記複数個の組のうちの前記最初に計算された組以外の組の各軸の動作量の情報より先に前記モータ駆動部に出力する
ことを特徴とする請求項７に記載の数値制御装置。
【請求項９】
前記同時に動作させることが示されている５個以上の軸は、５個の軸であり、
前記分割部は、分割を行う場合、前記工作機械における工具を前記５個の軸を同時に動作させた場合の前記工具の動作許容幅の範囲内で動作させる分割を行う
ことを特徴とする請求項３に記載の数値制御装置。
【請求項１０】
前記工作機械は直交軸と回転軸とを有し、
基準となる座標系について並進及び回転の一方又は双方を行うことにより新たに定義された座標系において、前記工作機械における工具の前記被加工物に対する位置及び姿勢を制御するために直交軸と回転軸とを位置決めする割り出し動作を行う場合、５個以上の軸を同時に動作させることになるとき、
前記分割部は、前記５個以上の軸の動作を、４個以下の軸の動作の組複数個に分割する
ことを特徴とする請求項３に記載の数値制御装置。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００７
【補正方法】変更
【補正の内容】
【０００７】
上述した課題を解決し、目的を達成するために、本発明は、複数の軸を有する工作機械を制御する数値制御装置であって、被加工物を加工するための加工プログラムが前記複数の軸のうちの５個以上の軸を同時に動作させる加工プログラムである場合、前記加工プログラムにおいて同時に動作させることが示されている５個以上の軸の動作を、４個以下の軸の動作の組複数個に分割して制御することを特徴とする。
【国際調査報告】
2018073946.tif 000014
2018073946.tif 000015