IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ DMG森精機株式会社の特許一覧

特開2022-187129情報処理装置および情報処理プログラム
<>
  • 特開-情報処理装置および情報処理プログラム 図1
  • 特開-情報処理装置および情報処理プログラム 図2
  • 特開-情報処理装置および情報処理プログラム 図3
  • 特開-情報処理装置および情報処理プログラム 図4
  • 特開-情報処理装置および情報処理プログラム 図5
  • 特開-情報処理装置および情報処理プログラム 図6
  • 特開-情報処理装置および情報処理プログラム 図7
  • 特開-情報処理装置および情報処理プログラム 図8
  • 特開-情報処理装置および情報処理プログラム 図9
  • 特開-情報処理装置および情報処理プログラム 図10
  • 特開-情報処理装置および情報処理プログラム 図11
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022187129
(43)【公開日】2022-12-19
(54)【発明の名称】情報処理装置および情報処理プログラム
(51)【国際特許分類】
   G05B 19/4093 20060101AFI20221212BHJP
   G05B 19/18 20060101ALI20221212BHJP
【FI】
G05B19/4093 D
G05B19/18 D
【審査請求】有
【請求項の数】4
【出願形態】OL
(21)【出願番号】P 2021094982
(22)【出願日】2021-06-07
(11)【特許番号】
(45)【特許公報発行日】2021-12-15
(71)【出願人】
【識別番号】000146847
【氏名又は名称】DMG森精機株式会社
(74)【代理人】
【識別番号】110002273
【氏名又は名称】弁理士法人インターブレイン
(72)【発明者】
【氏名】伊藤 路彦
【テーマコード(参考)】
3C269
【Fターム(参考)】
3C269AB31
3C269BB03
3C269BB05
3C269CC02
3C269CC07
3C269CC15
3C269EF39
3C269EF60
3C269QB02
(57)【要約】
【課題】工作機械における加工時間の増大や加工面品位の低下を抑制可能なNCプログラムを生成する。
【解決手段】ある態様の情報処理装置は、工具先端点の指令位置および工具姿勢の指令角度を含むCLデータを取得するCLデータ取得部と、取得されたCLデータに基づき、指令位置に対応する直線軸の移動位置と、指令角度に対応する回転軸の回転位置を算出してNCプログラムを生成するNCプログラム生成部と、を備える。NCプログラム生成部は、CLデータに対応する指令点データとして、回転位置の初期値を第1値として算出する第1指令点データと、回転位置の初期値を第1値と異なる第2値として算出する第2指令点データを生成し、第1指令点データおよび第2指令点データのそれぞれについて、全ブロックを実行したときの回転位置の符号の反転回数をカウントし、その反転回数の少ない指令点データを含むNCプログラムを生成する。
【選択図】図3
【特許請求の範囲】
【請求項1】
直線軸および回転軸を有する工作機械に用いられるNCプログラムを生成する情報処理装置であって、
工具先端点の指令位置および工具姿勢の指令角度を含むCLデータを取得するCLデータ取得部と、
取得されたCLデータに基づき、前記指令位置に対応する前記直線軸の移動位置と、前記指令角度に対応する前記回転軸の回転位置を算出して前記NCプログラムを生成するNCプログラム生成部と、
を備え、
前記NCプログラム生成部は、
前記CLデータに対応する指令点データとして、前記回転位置の初期値を第1値として算出する第1指令点データと、前記回転位置の初期値を前記第1値と異なる第2値として算出する第2指令点データを生成し、
前記第1指令点データおよび前記第2指令点データのそれぞれについて、全ブロックを実行したときの前記回転位置の符号の反転回数をカウントし、その反転回数の少ない指令点データを含むNCプログラムを生成する、情報処理装置。
【請求項2】
前記工作機械が、前記回転軸として、ワークに対する工具の傾斜角度を変化させる第1回転軸と、ワークをその軸線周りに回転させる第2回転軸とを含み、
前記NCプログラム生成部は、前記反転回数として、前記第1回転軸の回転位置の符号の反転回数をカウントする、請求項1に記載の情報処理装置。
【請求項3】
前記NCプログラム生成部は、前記第1指令点データおよび前記第2指令点データのそれぞれの反転回数が同じであった場合、予め定める選択条件に基づいていずれか一方を選択し、選択された指令点データを含むNCプログラムを生成する、請求項1又は2に記載の情報処理装置。
【請求項4】
直線軸および回転軸を有する工作機械に用いられるNCプログラムを生成する情報処理プログラムであって、
コンピュータに、
工具先端点の指令位置および工具姿勢の指令角度を含むCLデータを取得する機能と、
取得されたCLデータに基づき、前記指令位置に対応する前記直線軸の移動位置と、前記指令角度に対応する前記回転軸の回転位置を算出して前記NCプログラムを生成する機能と、
を発揮させ、
前記NCプログラムを生成する機能は、
前記CLデータに対応する指令点データとして、前記回転位置の初期値を第1値として算出する第1指令点データと、前記回転位置の初期値を前記第1値と異なる第2値として算出する第2指令点データを生成し、
前記第1指令点データおよび前記第2指令点データのそれぞれについて、全ブロックを実行したときの前記回転位置の符号の反転回数をカウントし、その反転回数の少ない指令点データを含むNCプログラムを生成する、情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、工作機械で用いられるNCプログラムを生成する情報処理装置に関する。
【背景技術】
【0002】
工作機械として、例えば直交する3つの直線軸(X軸,Y軸,Z軸)と2つの回転軸(B軸,C軸)を有する5軸加工機が知られている。B軸の回転が主軸を傾動させ、C軸の回転がワークを回転させる。このような工作機械は、数値制御装置がNCプログラム(加工プログラム)を実行することで5軸を制御し、工具の先端点位置および姿勢を変化させながらワークを所望形状に加工する。
【0003】
具体的には図11に示すように、NCプログラムによって指令される加工経路(Px,Py,Pz)および工具姿勢(α,β)にしたがって工具先端点制御が行われる(特許文献1参照)。ここで、加工経路(Px,Py,Pz)は、3つの直線軸における工具の先端点の位置を示す。工具姿勢(α,β)は、2つの回転軸の回転角度を示す。
【0004】
NCプログラムは、コンピュータ支援設計(CAD)およびコンピュータ支援製造(CAM)を経て得られる工具位置データ(Cutter Location Data:以下「CLデータ」という)に基づいて生成される。ただし、工作機械の機種は多数あり、工作機械メーカごとにその仕様も異なる。このため、CAMのポストプロセッサによりCLデータが適切に変換され、工作機械ごとに最適化されたNCプログラムが提供される。
【0005】
すなわち、CAMはCADデータに基づき、工具経路と工具姿勢を含むCLデータを生成する。ポストプロセッサは、その工具姿勢を実現するための回転軸の回転位置(以下「回転軸位置」ともいう)を算出してNCプログラムを生成する。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2019-70953号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
ところで、ポストプロセッサは、逐次的に工具姿勢に基づく回転軸位置を算出するが、その際に2通りの解が存在する。
【0008】
すなわち、例えばテーブル側にB軸、C軸の二つの回転軸を有する工作機械の場合、工具姿勢(I,J,K)と回転軸位置(B,C)との関係は、下記式(1)のようになる。
【数1】
ここで、(I,J,K)は、工具の刃先(先端点)の方向ベクトル(より正確には、工具の刃先から基端への方向ベクトル)を示す。「B」はB軸(第1回転軸)の基準位置からの回転角度を示し、「C」はC軸(第2回転軸)の基準位置からの回転角度を示す。
【0009】
B軸の回転角度は、下記式(2)で表される。
【数2】
したがって、K=±1の場合、Bは特異解となり、Cを一意に求めることはできない。一方、K≠1の場合、-π<B≦πの範囲で2つの解が存在する。このため、それぞれのBに対してCが算出される。
【0010】
上記式(1)のI,Jに関してCを解くと、下記式(3)のようになる。
【数3】
【0011】
このため、ポストプロセッサは、B軸とC軸の回転角度の組み合わせを、2組の解の一方に決定しなければならない。一般的にはB軸(傾斜軸)の回転位置が基準位置に対して正となる解、もしくは回転軸の移動量が小さくなる方の解が選択される。しかし、工作機械の仕様により回転軸の動作範囲には制限があり、好ましい解を選択できない場合がある。その場合、工作機械の実加工の過程で回転軸が大きく動いてしまい、加工時間の増大や加工面品位の低下につながる可能性がある。
【課題を解決するための手段】
【0012】
本発明のある態様は、直線軸および回転軸を有する工作機械に用いられるNCプログラムを生成する情報処理装置である。この情報処理装置は、工具先端点の指令位置および工具姿勢の指令角度を含むCLデータを取得するCLデータ取得部と、取得されたCLデータに基づき、指令位置に対応する直線軸の移動位置と、指令角度に対応する回転軸の回転位置を算出してNCプログラムを生成するNCプログラム生成部と、を備える。NCプログラム生成部は、CLデータに対応する指令点データとして、回転位置の初期値を第1値として算出する第1指令点データと、回転位置の初期値を第1値と異なる第2値として算出する第2指令点データを生成し、第1指令点データおよび第2指令点データのそれぞれについて、全ブロックを実行したときの回転位置の符号の反転回数をカウントし、その反転回数の少ない指令点データを含むNCプログラムを生成する。
【0013】
本発明の別の態様は、直線軸および回転軸を有する工作機械に用いられるNCプログラムを生成する情報処理プログラムである。この情報処理プログラムは、コンピュータに、工具先端点の指令位置および工具姿勢の指令角度を含むCLデータを取得する機能と、取得されたCLデータに基づき、指令位置に対応する直線軸の移動位置と、指令角度に対応する回転軸の回転位置を算出してNCプログラムを生成する機能と、を発揮させる。NCプログラムを生成する機能は、CLデータに対応する指令点データとして、回転位置の初期値を第1値として算出する第1指令点データと、回転位置の初期値を第1値と異なる第2値として算出する第2指令点データを生成し、第1指令点データおよび第2指令点データのそれぞれについて、全ブロックを実行したときの回転位置の符号の反転回数をカウントし、その反転回数の少ない指令点データを含むNCプログラムを生成する。
【発明の効果】
【0014】
本発明によれば、工作機械における上記に起因する加工時間の増大や加工面品位の低下を抑制可能なNCプログラムを生成できる。
【図面の簡単な説明】
【0015】
図1】実施形態に係る工作機械の概略構成を表す模式図である。
図2】工作機械のハードウェア構成図である。
図3】情報処理装置の機能ブロック図である。
図4】NCプログラムの例を示す図である。
図5】CLデータからNCプログラムへの変換方法を表す図である。
図6】NCプログラムへの変換に伴う問題点を模式的に表す図である。
図7】指令点データの生成方法を表す図である。
図8】NCプログラム生成処理を表すフローチャートである。
図9図8のS12のCLデータ解析処理を表すフローチャートである。
図10図8のS18のNCプログラム生成処理を表すフローチャートである。
図11】工具先端点制御の概要を表す図である。
【発明を実施するための形態】
【0016】
以下、図面を参照しつつ、本発明の一実施形態について説明する。
図1は、実施形態に係る工作機械の概略構成を表す模式図である。なおここでは、工作機械1を正面からみて左右方向,前後方向,上下方向を、それぞれX軸方向,Y軸方向,Z軸方向とする。
【0017】
工作機械1は、5軸制御マシニングセンタであり、直交する3つの直線軸(X軸,Y軸,Z軸)と、2つの回転軸(B軸,C軸)を有する加工装置2を備える。B軸が「第1回転軸」として機能し、C軸が「第2回転軸」として機能する。これら5軸が、後述の数値制御装置により同時制御されることにより工具先端点を移動させ、また工具姿勢を変化させながら各種加工が実行される。
【0018】
加工装置2は、主軸10を支持する主軸頭12と、ワークWを支持するテーブル14を備える。主軸頭12がB軸を有し、そのB軸を中心に主軸10を回動可能(傾動可能)に支持する。主軸10は、工具Tを同軸状に支持する。工具Tは、例えばエンドミル等である。主軸頭12には、主軸10を軸線周りに回転駆動するためのスピンドルモータと、B軸を中心に主軸10を回動させるためのサーボモータが設けられている。主軸の回動により工具TのZ軸方向に対する傾斜角度が変化するため、B軸は傾斜軸としての「回動軸」としても機能する。
【0019】
主軸10の回動により、ワークWに対する工具Tの傾斜角度が変化する。主軸頭12は、また、複数のサーボモータによりそれぞれ3軸方向に駆動される。主軸10は、主軸頭12が駆動されることによりX軸、Y軸およびZ軸方向に移動自在である。
【0020】
テーブル14には、図示略の治具を介してワークWが固定される。テーブル14の軸線に沿ってC軸が設けられる。テーブル14は、図示しないサーボモータによりC軸を中心に回転駆動される。すなわち、以上の構成により、ワークWと工具Tとの相対位置を三次元的に調整できる。
【0021】
図2は、工作機械1のハードウェア構成図である。
工作機械1は、操作制御装置50、数値制御装置52、加工装置2、工具交換装置54および工具格納部56を含む。数値制御装置52は、手動又は自動で生成されたNCプログラムにしたがって加工装置2に制御信号を送信する。加工装置2は、数値制御装置52からの指示にしたがって主軸10およびテーブル14を駆動してワークWを加工する。
【0022】
操作制御装置50は、オペレータにユーザインタフェース機能を提供する操作盤を含む。オペレータは操作制御装置50を介して数値制御装置52を制御する。工具格納部56は工具を格納する。工具交換装置54は、いわゆるATC(Automatic Tool Changer)に対応する。工具交換装置54は、数値制御装置52からの交換指示にしたがって、工具格納部56から工具を取り出し、主軸10にある工具と取り出した工具を交換する。
【0023】
数値制御装置52には情報処理装置100が接続される。情報処理装置100は、図示略のCAM装置から取得したCLデータに基づいてNCプログラムを生成し、数値制御装置52へ出力する。数値制御装置52は、そのNCプログラムを実行して加工装置2を制御する。情報処理装置100は、操作制御装置50の一部として構成されてもよい。情報処理装置100は、一般的なラップトップPC(Personal Computer)あるいはタブレット・コンピュータであってもよい。
【0024】
図3は、情報処理装置100の機能ブロック図である。
情報処理装置100の各構成要素は、CPU(Central Processing Unit)および各種コンピュータプロセッサなどの演算器、メモリやストレージといった記憶装置、それらを連結する有線または無線の通信線を含むハードウェアと、記憶装置に格納され、演算器に処理命令を供給するソフトウェアによって実現される。コンピュータプログラムは、デバイスドライバ、オペレーティングシステム、それらの上位層に位置する各種アプリケーションプログラム、また、これらのプログラムに共通機能を提供するライブラリによって構成されてもよい。以下に説明する各ブロックは、ハードウェア単位の構成ではなく、機能単位のブロックを示している。
【0025】
なお、操作制御装置50および数値制御装置52も、プロセッサなどの演算器、メモリやストレージといった記憶装置、それらを連結する有線または無線の通信線を含むハードウェアと、記憶装置に格納され演算器に処理命令を供給するソフトウェアやプログラムを情報処理装置100とは別個のオペレーティングシステム上で実現される形態でもよい。
【0026】
情報処理装置100は、入出力インタフェース部110、データ処理部112およびデータ格納部114を含む。入出力インタフェース部110は、外部装置とのデータのやりとりを含む入出力インタフェースに関する処理を担当する。データ処理部112は、入出力インタフェース部110により取得されたデータおよびデータ格納部114に格納されているデータに基づいて各種処理を実行する。データ処理部112は、入出力インタフェース部110およびデータ格納部114のインタフェースとしても機能する。データ格納部114は、各種プログラムと設定データを格納する。
【0027】
入出力インタフェース部110は、入力部120および出力部122を含む。
入力部120はCLデータ取得部124を含む。CLデータ取得部124は、CAM装置150からCLデータを取得する。CAM装置150は、図示略のCAD装置で生成されたCADデータを取得するとともに、経路生成情報(座標系、工具形状,送り速度、主軸回転数等)を取得する。CAM装置150は、これらCADデータと経路生成情報に基づいてCLデータを生成する。CLデータには、工具先端点の指令位置および工具姿勢の指令角度が含まれる(詳細後述)。CAM装置150は、生成したCLデータを情報処理装置100へ出力する。
【0028】
データ格納部114は、プログラム格納部130、指令点データ記憶部132および反転回数記憶部134を含む。データ格納部114は、データ処理部112が演算処理を行う場合のワーキングエリアとして機能するメモリを含む。
【0029】
プログラム格納部130は、NCプログラムを生成するための情報処理プログラムを格納する。指令点データ記憶部132は、NCプログラムの生成過程で算出される指令点データを一時記憶する。反転回数記憶部134は、NCプログラムの生成過程で更新される回転軸位置の反転回数を一時記憶する(詳細後述)。
【0030】
データ処理部112はNCプログラム生成部140を含む。NCプログラム生成部140は、ポストプロセッサとして機能し、CAM装置150から取得されるCLデータに基づいてNCプログラムを生成する(詳細後述)。
【0031】
出力部122はプログラム出力部126を含む。プログラム出力部126は、生成されたNCプログラムを数値制御装置52へ出力する。
【0032】
次に、NCプログラムの生成方法について説明する。
図4は、NCプログラムの例を示す図である。
NCプログラム170は、複数のブロックによって構成されており、各ブロックには、工具長補正(工具先端点制御の起動に相当)を指令するGコード(G43.3)、工具先端点の指令位置および工具姿勢の指令角度、および工具長補正のキャンセル(工具先端点制御の終了に相当)を指令するGコード(G49)等が記述されている。工具先端点の指令位置がワーク座標系における工具先端点の位置座標(Xn、Yn、Zn)によって指定され、工具姿勢の指令角度が回転軸(B軸,C軸)の移動角度(Bn、Cn)によって指定されている。
【0033】
本実施形態では、工作機械1の仕様に応じたNCプログラムを生成するためにポストプロセッサを利用する。まず前提として、CLデータからNCプログラムへの変換に関する一般的方法と、その変換に伴う問題点について概説する。
【0034】
図5は、CLデータからNCプログラムへの変換方法を表す図である。図6は、NCプログラムへの変換に伴う問題点を模式的に表す図である。
図5に示すように、CAM装置は、CADデータに基づいてCLデータを生成し、ポストプロセッサへ出力する。CLデータには、工具先端点の指令位置(刃先位置)および工具姿勢が含まれる。指令位置(X,Y,Z)は工具先端点の移動先座標を示し、工具姿勢(I,J,K)は工具の刃先(先端点)の方向ベクトルを示す。
【0035】
ポストプロセッサは、CAM装置から送られるCLデータからNCプログラムを構成する指令点データを生成する。この指令点データには、直線軸位置(X,Y,Z)と回転軸位置(B,C)が含まれる。「直線軸位置」は、直線軸の移動位置であり、工具先端点の指令位置(X,Y,Z)に対応する。一方、「回転軸位置」は、工具姿勢(I,J,K)に対応する回転軸(B軸およびC軸)の回転位置(移動角度)である。なお、本実施形態では、B軸に関してZ軸-方向を基準位置:0(度)としている。
【0036】
既に説明したように回転軸位置には2通りの解が存在し、図示の例では回転軸位置の初期値を基準値に対して負側として設定しているが、工作機械の仕様によりB軸の動作範囲(回転角度範囲)に制限があるため、途中で符号が反転してしまっている。この例では、B軸を負側に-25.0度よりも大きく動かせない仕様(機械的構成)となっている。
【0037】
すなわち、この仕様よる制限がなければ、図示の第5ブロックの指令点データにおいて、回転軸位置(B軸、C軸)として一方の解である(-26.0、-54.0)を選択するところ、他方の解である(26.0、126.0)を選択せざるを得なくなっている(点線領域参照)。
【0038】
より具体的には、図6に示すように、工具Tを現在位置(図5の第4ブロックに対応)からその近傍の第1位置(好ましい位置:一方の解に対応)に移動させるのが理想的であったところ、現在位置から大きく離間した第2位置(好ましくない位置:他方の解に対応)に移動させざるを得なくなる。移動先が現在位置から遠くなるほど、工作機械の軸移動の追従性の問題から、CLデータの指令経路(破線参照)と実際の工具先端点Pの軌跡(実線参照)との誤差が大きくなり(G2>G1)、加工面品位の低下をもたらす。また、移動距離が大きい分、加工時間も増大することとなる。
【0039】
なお、本実施形態では図示のように、位置制御の対象となる工具先端点Pを工具Tの刃先に設定しているが、変形例においては、先端中心P'を工具先端点としてもよい。
【0040】
次に、本実施形態におけるNCプログラムの生成方法について説明する。
上述のような好ましくない位置への移動頻度が多くなるほど、加工面品位の低下等の問題につながりやすい。そこで、本実施形態では以下に述べるように、指令点データにおける回転軸位置の符号の反転回数を少なくすることにより、上記問題の発生を抑制する。
【0041】
図7は、指令点データの生成方法を表す図である。図7(A)は、回転軸位置の初期値を基準位置に対して正の値とした場合の指令点データを示す。一方、図7(B)は、回転軸位置の初期値を基準位置に対して負の値とした場合の指令点データを示す。
【0042】
NCプログラム生成部140は、NCプログラムを生成するための情報処理プログラムを実行し、CLデータに対応する指令点データを遂次算出する。上述のように、指令点データとして2通りの解が算出されるため、回転軸位置の初期値を基準位置に対して正の値(「第1値」に対応)として算出される指令点データを「第1指令点データ」とする(図7(A))。回転軸位置の初期値を基準位置に対して負の値(「第2値」に対応)として算出される指令点データを「第2指令点データ」とする(図7(B))。
【0043】
NCプログラム生成部140は、第1指令点データおよび第2指令点データのそれぞれについて、全ブロックを実行したときの回転軸位置の符号の反転回数をカウントし、その反転回数の少ない指令点データを含むNCプログラムを生成する。図示の例では、第1指令点データについては符号の反転がなく、第2指令点データについては符号の反転が発生している。このため、NCプログラム生成部140は、第1指令点データを含むNCプログラムを生成する。
【0044】
このように、回転軸位置の符号の反転回数が少ないほうの指令点データを選択することで、NCプログラムが実行されたときに、工具Tを好ましい位置への移動させる頻度を相対的に高めることができる(図6参照)。それにより、加工面品位の低下を抑制でき、加工効率も高く維持できる。
【0045】
次に、NCプログラム生成処理について具体的に説明する。
図8は、NCプログラム生成処理を表すフローチャートである。
NCプログラム生成部140は、まずCLデータに基づいて算出される回転軸位置の初期値として基準値に対して正の値を選択するように設定する(S10)。続いて、CLデータ取得部124がCLデータの取得を開始し、NCプログラム生成部140がCLデータ解析処理を実行する(S12)。
【0046】
図9は、図8のS12のCLデータ解析処理を表すフローチャートである。
NCプログラム生成部140は、CLデータ解析前、指令点データに関する反転回数Nをゼロクリアする(S30)。
【0047】
CLデータ取得部124が、まずCAM装置150からCLデータを1ブロック読み取る(S31)。NCプログラム生成部140は、CLデータに含まれる工具姿勢(I,J,K)から回転軸位置(B,C)を算出する(S32)。そして、このとき算出される2つの解のうち一方を選択し(S34)、これを回転軸位置として含むよう指令点データを算出する。
【0048】
本実施形態では、このときのときの解の選択条件として、基本的にB軸の移動量が小さいほうを選択するよう予め設定されている。ただし、工作機械1の仕様からその選択ができない場合には、もう一方の解が選択される。この指令点データ(第1指令点データ)は、ブロック番号に対応づけるようにして指令点データ記憶部132に更新される(S36)。
【0049】
このとき、工作機械1の仕様に基づき、回転軸位置を反転させる解を選択したとき(S38のY)、反転回数記憶部134における指令点データの反転回数N(第1指令点データの反転回数N1)を1インクリメントする(S40)。回転軸位置の反転がなければ(S38のN)、S40の処理をスキップする。以上の処理をCLデータの最終ブロックの指令点データが算出されるまで繰り返す(S42のN)。最終ブロックについての処理が終了すると(S42のY)、本処理を一旦終了する。
【0050】
図8に戻り、NCプログラム生成部140は、続いて、CLデータに基づいて算出される回転軸位置の初期値として基準値に対して負の値を選択するように設定する(S14)。続いて、CLデータ取得部124がCLデータの取得を再度開始し、NCプログラム生成部140がCLデータ解析処理を実行する(S16)。それにより、第2指令点データが生成されるとともにその反転回数N(第2指令点データの反転回数N2)が更新される。
【0051】
このCLデータ解析処理については、回転軸位置の初期値が異なる以外はS12の処理(図9参照)と同様であるので、その説明は省略する。NCプログラム生成部140は、上記CLデータ解析処理(S12,S16)の結果に基づいてNCプログラム生成処理を実行する(S18)。
【0052】
図10は、図8のS18のNCプログラム生成処理を表すフローチャートである。
NCプログラム生成部140は、第1指令点データの反転回数N1および第2指令点データの反転回数N2を反転回数記憶部134から読み出して比較する。このとき、反転回数N1のほうが反転回数N2よりも小さければ(S52のY)、回転軸位置の初期値を基準値に対して正の値とする第1指令点データを含むようNCプログラムを生成する(S54)。
【0053】
一方、反転回数N2のほうが反転回数N1よりも小さければ(S52のN、S56のY)、回転軸位置の初期値を基準値に対して負の値とする第2指令点データを含むようNCプログラムを生成する(S58)。反転回数N1と反転回数N2とが同じであれば(S56のN)、予め定める指令点データの選択条件に基づいていずれか一方の指令点データを選択する。
【0054】
本実施形態において、「指令点データの選択条件」は、反転時におけるB軸の移動量が小さいほうを選択するよう予め設定されている。また、第1指令点データおよび第2指令点データの双方において反転回数がゼロであれば、予め定める側の指令点データ(例えば第1指令点データ)が選択されるよう設定されている。
【0055】
このため、NCプログラム生成部140は、第1指令点データが指令点データの選択条件を満たす場合には(S60のY)、第1指令点データを含むようNCプログラムを生成する(S62)。第2指令点データが指令点データの選択条件を満たす場合には(S60のN)、第2指令点データを含むようNCプログラムを生成する(S64)。
【0056】
図8に戻り、プログラム出力部126は、以上のようにして生成されたNCプログラムを数値制御装置52へ出力する(S20)。
【0057】
以上、実施形態に基づいて情報処理装置100について説明した。
本実施形態では、CLデータの全ブロックについて第1指令点データと第2指令点データをそれぞれ算出し、回転軸位置の反転回数が少ないほうを含むようにNCプログラムを生成した。このため、数値制御装置52によりNCプログラムを実行したときに工具Tの無用な移動を抑制できる。その結果、加工面品位の低下を抑制でき、加工効率を良好に維持できる。すなわち、本実施形態によれば、工作機械1における加工時間の増大や加工面品位の低下を抑制可能なNCプログラムを生成できる。
【0058】
上記実施形態では、情報処理装置100において、算出される2つの解のうち、B軸の移動量が小さいほうを選択するよう解の選択条件を設定した。変形例においては、C軸の移動量が小さい方を選択するよう解の選択条件を設定してもよい。あるいは、B軸およびC軸の双方の移動量(トータルの移動量)が小さいほうを選択するよう解の選択条件を設定してもよい。
【0059】
上記実施形態では、第1指令点データと第2指令点データについて回転軸位置の反転回数が同じであった場合、反転時におけるB軸の移動量が小さいほうを選択するよう指令点データの選択条件を設定した。変形例においては、反転時におけるC軸の移動量が小さいほうを選択するよう指令点データの選択条件を設定してもよい。あるいは、反転時におけるB軸およびC軸の双方の移動量(トータルの移動量)が小さいほうを選択するよう指令点データの選択条件を設定してもよい。あるいは、指令点データ全体でB軸の移動量が小さいほうを選択するよう指令点データの選択条件を設定してもよい。あるいは、指令点データ全体でC軸の移動量が小さいほうを選択するよう指令点データの選択条件を設定してもよい。あるいは、指令点データ全体でB軸およびC軸の双方の移動量(トータルの移動量)が小さいほうを選択するよう指令点データの選択条件を設定してもよい。あるいは、第1指令点データと第2指令点データのいずれを選択するかをユーザが事前設定できるようにしてもよい。
【0060】
上記実施形態では、情報処理装置100において、第1指令点データと第2指令点データを生成し、回転軸位置の符号の反転回数が少ないほうの指令点データを選択したうえでNCプログラムを生成する例を示した。変形例においては、第1指令点データを含むNCプログラム(第1NCプログラム)と、第2指令点データを含むNCプログラム(第2NCプログラム)とを生成した後、全ブロックを実行したときの反転回数が少ないほうのNCプログラムを選択し、数値制御装置52に送信してもよい。
【0061】
上記実施形態では、指令点データとして、回転軸位置の初期値を基準位置に対して正の値(第1値)として算出する第1指令点データと、回転軸位置の初期値を基準位置に対して負の値(第2値)として算出する第2指令点データを生成する例を示した。具体的には、B軸に関し、「第1値」を基準となる軸方向(Z軸-方向)に対して正の値とし、「第2値」を基準となる軸方向(Z軸-方向)に対して負の値とした。変形例においては、基準となる軸をX軸方向(例えばX軸-方向)とし、正の値(第1値)と負の値(第2値)を判定してもよい。
【0062】
上記実施形態では、図7に示したように、回転軸位置としてB軸とC軸の符号が正負で一致する場合を示したが、正負で互いに異なる符号を有する設定としてもよい。その場合もB軸の符号が反転した場合にはC軸の符号も反転する。このため、上述した「反転回数」に基づく演算処理は有効に機能する。また、B軸とC軸の符号が正負で互いに異なる場合、一方の回転軸(例えばB軸)の符号に基づいて上述した処理を行ってもよい。
【0063】
上記実施形態では、工作機械として5軸加工機を例示した。すなわち、直線軸がX軸、Y軸およびZ軸の3軸で構成され、回転軸がB軸およびC軸の2軸で構成される例を示した。変形例においては、回転軸がA軸とC軸で構成されてもよい。あるいは、A軸とB軸で構成されてもよい。また、4軸加工機とし、回転軸が1軸(例えばB軸のみ)で構成されてもよい。その1軸に関して第1指令点データと第2指令点データを生成し、回転軸位置の符号の反転回数が少ないほうの指令点データを選択してもよい。
【0064】
上記実施形態では、加工装置2として、2つの回転軸の一方(B軸)を中心に工具を回転させ、他方の回転軸(C軸)を中心にテーブルを回転させる構成を例示した。変形例においては、2つの回転軸が主軸側に設けられてもよい。あるいは、2つの回転軸がテーブル側に設けられてもよい。例えば、テーブルが第1部材によりC軸を中心に回転可能に支持され、第1部材が第2部材によりA軸又はB軸を中心に回転可能に支持される構成を採用してもよい。第2部材がA軸を有する場合、第2部材はY軸方向に移動可能に支持されてもよい。第2部材がB軸を有する場合、第2部材はX軸方向に移動可能に支持されてもよい。
【0065】
上記実施形態では、CAD装置とCAM装置とを別構成とする例を示したが、CAD機能とCAM機能を兼ね備えたCAD/CAM装置として構成されてもよい。
【0066】
上記実施形態では述べなかったが、上述した情報処理プログラムは、コンピュータ読み取り可能な記録媒体に記録され、提供されてもよい。
【0067】
なお、本発明は上記実施形態や変形例に限定されるものではなく、要旨を逸脱しない範囲で構成要素を変形して具体化することができる。上記実施形態や変形例に開示されている複数の構成要素を適宜組み合わせることにより種々の発明を形成してもよい。また、上記実施形態や変形例に示される全構成要素からいくつかの構成要素を削除してもよい。
【符号の説明】
【0068】
1 工作機械、2 加工装置、10 主軸、12 主軸頭、14 テーブル、50 操作制御装置、52 数値制御装置、54 工具交換装置、56 工具格納部、100 情報処理装置、110 入出力インタフェース部、112 データ処理部、114 データ格納部、120 入力部、122 出力部、124 CLデータ取得部、126 プログラム出力部、130 プログラム格納部、132 指令点データ記憶部、134 反転回数記憶部、140 NCプログラム生成部、150 CAM装置、P 工具先端点、T 工具、W ワーク。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
【手続補正書】
【提出日】2021-11-04
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
直線軸および回転軸を有する工作機械に用いられるNCプログラムを生成する情報処理装置であって、
工具先端点の指令位置および工具姿勢の指令角度を含むCLデータを取得するCLデータ取得部と、
取得されたCLデータに基づき、前記指令位置に対応する前記直線軸の移動位置と、前記指令角度に対応する前記回転軸の回転位置を算出して前記NCプログラムを生成するNCプログラム生成部と、
を備え、
前記CLデータが、加工経路に沿って前記指令位置および前記指令角度の組み合わせを複数ブロック含むものであり、
前記NCプログラム生成部は、
前記CLデータに対応する指令点データとして、前記回転位置の初期値を第1値として算出する第1指令点データと、前記回転位置の初期値を前記第1値と異なる第2値として算出する第2指令点データを生成し、
各指令点データが前記CLデータの各ブロックに対応する複数のブロックを含み、各ブロックにおける前記回転位置が予め定める演算式により2つ算出できる場合があり、
前記第1指令点データおよび前記第2指令点データのそれぞれについて、全ブロックを実行したときの前記回転位置の符号の反転回数をカウントし、その反転回数の少ない指令点データを含むNCプログラムを生成する、情報処理装置。
【請求項2】
前記工作機械が、前記回転軸として、ワークに対する工具の傾斜角度を変化させる第1回転軸と、ワークをその軸線周りに回転させる第2回転軸とを含み、
前記NCプログラム生成部は、前記反転回数として、前記第1回転軸の回転位置の符号の反転回数をカウントする、請求項1に記載の情報処理装置。
【請求項3】
前記NCプログラム生成部は、前記第1指令点データおよび前記第2指令点データのそれぞれの反転回数が同じであった場合、予め定める選択条件に基づいていずれか一方を選択し、選択された指令点データを含むNCプログラムを生成する、請求項1又は2に記載の情報処理装置。
【請求項4】
直線軸および回転軸を有する工作機械に用いられるNCプログラムを生成する情報処理プログラムであって、
コンピュータに、
工具先端点の指令位置および工具姿勢の指令角度を含むCLデータを取得する機能と、
取得されたCLデータに基づき、前記指令位置に対応する前記直線軸の移動位置と、前記指令角度に対応する前記回転軸の回転位置を算出して前記NCプログラムを生成する機能と、
を発揮させ、
前記CLデータが、加工経路に沿って前記指令位置および前記指令角度の組み合わせを複数ブロック含むものであり、
前記NCプログラムを生成する機能は、
前記CLデータに対応する指令点データとして、前記回転位置の初期値を第1値として算出する第1指令点データと、前記回転位置の初期値を前記第1値と異なる第2値として算出する第2指令点データを生成し、
各指令点データが前記CLデータの各ブロックに対応する複数のブロックを含み、各ブロックにおける前記回転位置が予め定める演算式により2つ算出できる場合があり、
前記第1指令点データおよび前記第2指令点データのそれぞれについて、全ブロックを実行したときの前記回転位置の符号の反転回数をカウントし、その反転回数の少ない指令点データを含むNCプログラムを生成する、情報処理プログラム。