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

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

▶ 三菱電機株式会社の特許一覧

<>
  • 特許-数値制御装置および制御方法 図1
  • 特許-数値制御装置および制御方法 図2
  • 特許-数値制御装置および制御方法 図3
  • 特許-数値制御装置および制御方法 図4
  • 特許-数値制御装置および制御方法 図5
  • 特許-数値制御装置および制御方法 図6
  • 特許-数値制御装置および制御方法 図7
  • 特許-数値制御装置および制御方法 図8
  • 特許-数値制御装置および制御方法 図9
  • 特許-数値制御装置および制御方法 図10
  • 特許-数値制御装置および制御方法 図11
  • 特許-数値制御装置および制御方法 図12
  • 特許-数値制御装置および制御方法 図13
  • 特許-数値制御装置および制御方法 図14
  • 特許-数値制御装置および制御方法 図15
  • 特許-数値制御装置および制御方法 図16
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2025-06-12
(45)【発行日】2025-06-20
(54)【発明の名称】数値制御装置および制御方法
(51)【国際特許分類】
   G05B 19/416 20060101AFI20250613BHJP
【FI】
G05B19/416 E
【請求項の数】 5
(21)【出願番号】P 2024569121
(86)(22)【出願日】2024-07-17
(86)【国際出願番号】 JP2024025645
【審査請求日】2024-11-21
【早期審査対象出願】
(73)【特許権者】
【識別番号】000006013
【氏名又は名称】三菱電機株式会社
(74)【代理人】
【識別番号】100118762
【弁理士】
【氏名又は名称】高村 順
(72)【発明者】
【氏名】魚住 誠二
(72)【発明者】
【氏名】長江 啓史
(72)【発明者】
【氏名】西脇 健二
【審査官】山村 和人
(56)【参考文献】
【文献】特開平03-152604(JP,A)
【文献】特開2016-081172(JP,A)
【文献】特許第7415093(JP,B1)
(58)【調査した分野】(Int.Cl.,DB名)
G05B 19/416
(57)【特許請求の範囲】
【請求項1】
加工プログラムの解析によって、工作機械が有する送り軸へ指令される動作を表す移動データを取得し、前記移動データに基づいて送り速度を求める解析処理部と、
前記送り速度のデータに対する加減速処理である第1加減速処理によって、前記第1加減速処理後の速度である第1速度を求める第1加減速処理部と、
前記第1速度の単位時間当たりの変化率である加速度のデータに対する加減速処理である第2加減速処理によって、前記第2加減速処理後の速度である第2速度を求める第2加減速処理部と、
前記第2速度に基づいて、前記送り軸を駆動するモータに対する速度の指令であるモータ指令を生成する補間処理部と、を備え、
前記第1加減速処理部は、
前記加工プログラムにより規定される位置である目標位置と前記第1速度の積分値により示される位置との差である位置ドループと、前記送り軸の送り運動が減速により停止するまでに要する移動距離である減速所要距離とを計算し、減速所要距離よりも位置ドループを長くさせる前記第1加減速処理を実行し、
前記第2加減速処理部は、
記目標位置と前記第2速度の積分値により示される位置との差である位置ドループと、前記送り軸の送り運動が減速により停止するまでに要する移動距離である減速所要距離と、前記加工プログラムにより規定される速度である目標速度と前記第2速度との差である速度ドループと、減速により加速度がゼロに到達するまでに必要となる速度である減速所要速度とを計算し、減速所要距離よりも位置ドループを長くさせ、かつ、減速所要速度よりも速度ドループを高くさせる前記第2加減速処理を実行する
ことを特徴とする数値制御装置。
【請求項2】
互いに並列に接続された複数の加減速処理ユニットを備え、
複数の加減速処理ユニットの各々は、前記第1加減速処理部および前記第2加減速処理部を含む、互いに直列に接続された2以上の加減速処理部を有し、
前記解析処理部は、前記移動データに示される移動量を分配して、分配された前記移動データに基づいて求めた前記送り速度のデータを複数の前記加減速処理ユニットの各々の前記第1加減速処理部へ送り、
複数の前記加減速処理ユニットの各々は、2以上の前記加減速処理部による加減速処理を実行して、加減速処理後の速度を求めた結果を出力し、
前記補間処理部は、複数の前記加減速処理ユニットの各々からの出力に基づいて前記モータ指令を生成する
ことを特徴とする請求項1に記載の数値制御装置。
【請求項3】
複数の前記加減速処理ユニットに備えられる複数の前記加減速処理部の各々における加速度処理による加速度特性の調整の態様が、前記工作機械の振動幅の許容値または前記工作機械の振動周波数に基づいて決定される
ことを特徴とする請求項2に記載の数値制御装置。
【請求項4】
複数の前記加減速処理ユニットのうち前記加減速処理を実行する前記加減速処理ユニットの数と、前記加減速処理を実行する前記加減速処理ユニットが有する2以上の前記加減速処理部のうち前記加減速処理を実行する前記加減速処理部の数と、の少なくとも一方を調整可能である
ことを特徴とする請求項2または3に記載の数値制御装置。
【請求項5】
加工プログラムの解析によって、工作機械が有する送り軸へ指令される動作を表す移動データを取得し、前記移動データに基づいて送り速度を求めるステップと、
前記送り速度のデータに対する加減速処理である第1加減速処理によって、前記第1加減速処理後の速度である第1速度を求めるステップと、
前記第1速度の単位時間当たりの変化率である加速度のデータに対する加減速処理である第2加減速処理によって、前記第2加減速処理後の速度である第2速度を求めるステップと、
前記第2速度に基づいて、前記送り軸を駆動するモータに対する速度の指令であるモータ指令を生成するステップと、を含み、
前記第1速度を求めるステップでは、
前記加工プログラムにより規定される位置である目標位置と前記第1速度の積分値により示される位置との差である位置ドループと、前記送り軸の送り運動が減速により停止するまでに要する移動距離である減速所要距離とを計算し、減速所要距離よりも位置ドループを長くさせる前記第1加減速処理を実行し、
前記第2速度を求めるステップでは、
記目標位置と前記第2速度の積分値により示される位置との差である位置ドループと、前記送り軸の送り運動が減速により停止するまでに要する移動距離である減速所要距離と、前記加工プログラムにより規定される速度である目標速度と前記第2速度との差である速度ドループと、減速により加速度がゼロに到達するまでに必要となる速度である減速所要速度とを計算し、減速所要距離よりも位置ドループを長くさせ、かつ、減速所要速度よりも速度ドループを高くさせる前記第2加減速処理を実行する
ことを特徴とする制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、工作機械を制御する数値制御装置および制御方法に関する。
【背景技術】
【0002】
数値制御(Numerical Control:NC)工作機械は、所望の精度での加工が可能であること、および短時間での加工が可能であることが求められている。以下、NC工作機械を、単に工作機械と称する。工作機械の送り軸を駆動するモータへ送られるモータ指令が生成される際に、速度の時系列変化を示す速度波形の加減速特性を調整する加減速処理が実行されることによって、モータが受ける衝撃を低減させ、加工の精度を高めることができる。
【0003】
特許文献1には、加工対象物が固定されるテーブルまたは工具の移動時の時定数に基づいた加減速処理を実行する数値制御装置に関し、工作機械の振動量が閾値を超えないように時定数を補正して、補正された時定数を用いた加減速処理を実行することが開示されている。特許文献1に係る数値制御装置は、速度波形に移動平均フィルタを2回適用する加減速処理を実行することで、加速度および加加速度の各々を制限値以下にさせて速度変化を滑らかにさせる。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2021-163077号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、上記特許文献1の技術によると、加工プログラムに示される指令点間の長さである線分長さが短い場合、または、1回目に適用された移動平均フィルタの時定数よりも2回目に適用された移動平均フィルタの時定数のほうが大きい場合などにおいて、加速度および加加速度を高精度に制御することができないことがある。上記特許文献1の技術によると、加速度および加加速度を高精度に制御することができずに、加速度および加加速度の各々が制限値を大きく下回る状況が多く発生することがあり得るため、サイクルタイムが余分に増加するという問題があった。
【0006】
本開示は、上記に鑑みてなされたものであって、加速度および加加速度の高精度な制御によるサイクルタイム増加の抑制を可能とする数値制御装置を得ることを目的とする。
【課題を解決するための手段】
【0007】
上述した課題を解決し、目的を達成するために、本開示に係る数値制御装置は、加工プログラムの解析によって、工作機械が有する送り軸へ指令される動作を表す移動データを取得し、移動データに基づいて送り速度を求める解析処理部と、送り速度のデータに対する加減速処理である第1加減速処理によって、第1加減速処理後の速度である第1速度を求める第1加減速処理部と、第1速度の単位時間当たりの変化率である加速度のデータに対する加減速処理である第2加減速処理によって、第2加減速処理後の速度である第2速度を求める第2加減速処理部と、第2速度に基づいて、送り軸を駆動するモータに対する速度の指令であるモータ指令を生成する補間処理部と、を備える。第1加減速処理部は、加工プログラムにより規定される位置である目標位置と第1速度の積分値により示される位置との差である位置ドループと、送り軸の送り運動が減速により停止するまでに要する移動距離である減速所要距離とを計算し、減速所要距離よりも位置ドループを長くさせる前記第1加減速処理を実行する。第2加減速処理部は、目標位置と第2速度の積分値により示される位置との差である位置ドループと、送り軸の送り運動が減速により停止するまでに要する移動距離である減速所要距離と、加工プログラムにより規定される速度である目標速度と第2速度との差である速度ドループと、減速により加速度がゼロに到達するまでに必要となる速度である減速所要速度とを計算し、減速所要距離よりも位置ドループを長くさせ、かつ、減速所要速度よりも速度ドループを高くさせる第2加減速処理を実行する。
【発明の効果】
【0008】
本開示に係る数値制御装置は、加速度および加加速度の高精度な制御によってサイクルタイム増加を抑制させることができる、という効果を奏する。
【図面の簡単な説明】
【0009】
図1】実施の形態1に係る数値制御装置を備える数値制御システムの構成例を示す図
図2】実施の形態1に係る数値制御装置が実行する処理の手順の例を示すフローチャート
図3】実施の形態1に係る数値制御装置による制御の内容について説明するための図
図4】実施の形態1に係る数値制御装置が有する解析処理部による先読みについて説明するための図
図5】実施の形態1に係る数値制御装置によって実行される第1加減速処理について説明するための第1の図
図6】実施の形態1に係る数値制御装置によって実行される第1加減速処理について説明するための第2の図
図7】実施の形態1に係る数値制御装置によって実行される第1加減速処理について説明するための第3の図
図8】実施の形態1に係る数値制御装置によって実行される第2加減速処理について説明するための第1の図
図9】実施の形態1に係る数値制御装置によって実行される第2加減速処理について説明するための第2の図
図10】実施の形態2に係る数値制御装置の構成例を示す図
図11】実施の形態2に係る数値制御装置が実行する処理の手順の例を示すフローチャート
図12】実施の形態2に係る数値制御装置における速度指令の分配について説明するための第1の図
図13】実施の形態2に係る数値制御装置における速度指令の分配について説明するための第2の図
図14】実施の形態2に係る数値制御装置が有する加減速制御装置の構成例を示す図
図15】実施の形態1または2に係る制御回路の構成例を示す図
図16】実施の形態1または2に係るハードウェア回路の構成例を示す図
【発明を実施するための形態】
【0010】
以下に、実施の形態に係る数値制御装置および制御方法を図面に基づいて詳細に説明する。
【0011】
実施の形態1.
図1は、実施の形態1に係る数値制御装置1を備える数値制御システムの構成例を示す図である。図1に示す数値制御システムは、数値制御装置1と工作機械2とを備える。
【0012】
工作機械2は、モータの駆動により加工を行う装置である。工作機械2の例は、切削加工を行う切削加工機である。工作機械2は、溶融させた材料を順次積み重ねることによって造形物を製造する付加製造装置、または、レーザビームを加工対象物に照射することによって加工対象物を加工するレーザ加工機などであっても良い。以下では、工作機械2は、加工対象物に対し工具を移動させながら加工対象物を切削する切削加工機であるものとする。工作機械2は、複数の送り軸の各々をモータにより駆動することにより、工具および加工対象物の一方または両方を動作させる。なお、モータの図示は省略する。
【0013】
数値制御装置1は、工作機械2に備えられている複数のモータの各々を制御する。数値制御装置1は、解析処理部10と、第1加減速処理部11と、第2加減速処理部12と、補間処理部13とを備える。第1加減速処理部11および第2加減速処理部12は、加減速制御装置3を構成する。加減速制御装置3は、速度波形における立ち上がり部分および立ち下がり部分に表れる加速度特性を調整するための処理である加減速処理を実行する。
【0014】
数値制御装置1には、NCプログラムである加工プログラムが入力される。加工プログラムは、CAM(Computer Aided Manufacturing)装置、またはCAD(Computer-Aided Design)/CAMシステムといった、数値制御システムの外部の装置またはシステムによって作成される。
【0015】
解析処理部10は、加工プログラムの解析によって、工作機械2が有する送り軸へ指令される動作を表す移動データを取得する。移動データは、加工プログラムに記述されている経路上において工具を移動させるための移動指令といえる。解析処理部10は、加工プログラムに記述されている経路上において工具を移動させる際における送り速度を、移動データに基づいて求める。
【0016】
解析処理部10は、加工プログラムの先読みを実行する。先読みとは、加工プログラムの解析において、現在実行している処理よりも後に実行する処理についての解析を行うことを指す。解析処理部10は、求めた送り速度を示す指令である速度指令を第1加減速処理部11へ出力する。
【0017】
第1加減速処理部11は、速度指令に示される送り速度のデータに対する加減速処理である第1加減速処理を実行する。第1加減速処理は、予め設定された加速度による加減速処理である。第1加減速処理部11は、第1加減速処理によって、第1加減速処理後の速度である第1速度を求める。第1加減速処理部11は、求めた第1速度を示す情報を第2加減速処理部12へ出力する。
【0018】
第2加減速処理部12は、第1速度の単位時間当たりの変化率である加速度のデータに対する加減速処理である第2加減速処理を実行する。第2加減速処理は、予め設定された加加速度による加減速処理である。第2加減速処理部12は、第2加減速処理によって、第2加減速処理後の速度である第2速度を求める。第2加減速処理部12は、求めた第2速度を示す情報を補間処理部13へ出力する。
【0019】
補間処理部13は、第2速度に基づいて、送り軸を駆動するモータに対する速度の指令であるモータ指令を生成する。補間処理部13は、生成されたモータ指令を工作機械2へ出力する。
【0020】
次に、数値制御装置1が実行する処理の手順について説明する。図2は、実施の形態1に係る数値制御装置1が実行する処理の手順の例を示すフローチャートである。
【0021】
ステップS1において、解析処理部10は、解析処理部10へ入力された加工プログラムを解析する。加工プログラムには、加工対象物または工具の先端位置を予め設定された経路上において移動させるために必要な移動データが記述されている。移動データでは、指令位置が座標値により指定され、また、Gコードにより移動のモードが指定される。Gコードは、軸移動に関する指令コードであって、例えば、位置決め、直線補間、円弧補間、または平面指定を行う際に記述される指令コードである。解析処理部10は、加工プログラムの先読みによって、加工の目的とする形状である加工形状を解析し、移動データを取得する。また、加工プログラムには、工具の種類、加工対象物に対する工具の送り速度、または主軸の回転速度といった加工条件が記述されている。以下の説明では、加工条件については工具の送り速度のみを主に扱うこととする。送り速度は、速度値が記述されたFコードにより指定される。数値制御装置1には、工具の送り速度を含む加工条件である一括りのデータが1つ以上記憶されており、加工プログラムのGコードまたはMコードにより、所望の加工に合う加工条件が指定されることとしても良い。Mコードは、機械動作に関する指令コードである。
【0022】
ステップS2において、解析処理部10は、ステップS1における解析によって取得された移動データに基づいて速度指令を生成する。解析処理部10は、加工形状に合わせて工具の先端位置を移動させる際における速度指令を生成する。解析処理部10は、生成された速度指令を第1加減速処理部11へ出力する。ステップS1およびステップS2により、解析処理部10は、加工プログラムの解析によって移動データを取得し、移動データに基づいて送り速度を求めて速度指令を生成する。
【0023】
ステップS3において、第1加減速処理部11は、解析処理部10から出力された速度指令に示される送り速度のデータに対する第1加減速処理を実行する。第1加減速処理部11は、送り速度のデータに対し、予め設定された加速度による第1加減速処理を実行する。第1加減速処理部11は、第1加減速処理によって、第1加減速処理後の速度である第1速度を求める。
【0024】
第1加減速処理部11は、位置ドループと減速所要距離とを計算する。第1加減速処理部11によって計算される位置ドループは、加工プログラムにより規定される位置である目標位置と第1速度の積分値により示される位置との差である。第1加減速処理部11は、制御周期ごとにおける第1速度を積分することによって、第1速度の積分値により示される位置である第1加減速後位置を求める。目標位置とは、例えば、解析処理部10での加工プログラムの先読みによって取得された指令位置である。目標位置は、解析処理部10から出力される速度指令に示される送り速度の、制御周期ごとにおける累積値であっても良い。減速所要距離とは、送り軸の送り運動が減速により停止するまでに要する移動距離である。第1加減速処理部11は、第1速度に基づいて、最新の出力速度からの減速による減速所要距離を計算する。出力速度とは、工作機械2へ出力されるモータ指令に示される速度とする。第1加減速処理部11は、制御周期ごとに、位置ドループと減速所要距離とを計算する。
【0025】
第1加減速処理部11は、減速所要距離よりも位置ドループを長くさせる第1加減速処理を実行する。具体的には、第1加減速処理部11は、減速所要距離よりも位置ドループが長くなるように、速度波形の立ち上がり部分における加速度と速度波形の立ち下がり部分における加速度とを制御する。第1加減速処理部11は、第1速度を示す情報を第2加減速処理部12へ出力する。
【0026】
ステップS4において、第2加減速処理部12は、第1加減速処理部11から出力された第1速度の情報に対する第2加減速処理を実行する。第2加減速処理部12は、第1速度の単位時間当たりの変化率である加速度のデータに対し、予め設定された加加速度による第2加減速処理を実行する。第2加減速処理部12は、第2加減速処理によって、第2加減速処理後の速度である第2速度を求める。
【0027】
第2加減速処理部12は、制御周期ごとに位置ドループと減速所要距離とを計算する。第2加減速処理部12によって計算される位置ドループは、加工プログラムにより規定される位置である目標位置と、第2速度の積分値により示される位置との差である。第2加減速処理部12は、制御周期ごとにおける第2速度の積分によって、第2速度の積分値により示される位置である第2加減速後位置を求める。目標位置とは、例えば、解析処理部10での加工プログラムの先読みによって取得された指令位置である。目標位置は、解析処理部10から出力される速度指令に示される送り速度の、制御周期ごとにおける累積値であっても良い。第2加減速処理部12は、第2速度に基づいて、最新の出力速度からの減速による減速所要距離を計算する。
【0028】
さらに、第2加減速処理部12は、制御周期ごとに速度ドループと減速所要速度とを計算する。第2加減速処理部12によって計算される速度ドループは、加工プログラムにより規定される速度である目標速度と、求めた第2速度との差である。目標速度とは、例えば、解析処理部10での加工プログラムの先読みによって取得された速度指令である。目標速度は、第1加減速処理部11から出力される情報に示される、制御周期ごとの第1速度であっても良い。減速所要速度とは、送り軸の送り運動が減速により停止するまでに要する速度とする。第2加減速処理部12は、第2速度に基づいて、最新の出力加速度からの減速による減速所要速度を計算する。出力加速度とは、工作機械2へ出力されるモータ指令に示される速度の、単位時間当たりの変化率とする。
【0029】
第2加減速処理部12は、減速所要距離よりも位置ドループを長くさせ、かつ、減速所要速度よりも速度ドループを高くさせる第2加減速処理を実行する。具体的には、第2加減速処理部12は、減速所要距離よりも位置ドループが長くなり、かつ、減速所要速度よりも速度ドループが高くなるように、速度波形の立ち上がり部分における加加速度と速度波形の立ち下がり部分における加加速度とを制御する。第2加減速処理部12は、第2速度を示す情報を補間処理部13へ出力する。
【0030】
ステップS5において、補間処理部13は、第2加減速処理部12から出力された情報に示される第2速度に基づいてモータ指令を生成する。補間処理部13は、各送り軸による工具の移動方向である複数の送り方向へ第2速度の成分を分解することで、複数の送り軸の各々に対するモータ指令を生成する。補間処理部13は、制御周期ごとに、複数のモータの各々へモータ指令を出力する。
【0031】
ステップS6において、第2加減速処理部12は、目標位置までの工具の移動が完了したか否かを判断する。第2加減速処理部12は、第2加減速処理部12によって制御周期ごとに計算される位置ドループの値に基づいて、目標位置までの工具の移動が完了したか否かを判断する。目標位置までの工具の移動が完了していない場合(ステップS6,No)、数値制御装置1は、ステップS2へ手順を戻す。
【0032】
一方、目標位置までの工具の移動が完了した場合(ステップS6,Yes)、数値制御装置1は、ステップS7において、加工が終了したか否かを判断する。数値制御装置1は、実行の対象である加工プログラムに示される処理を終えたか否かによって、加工が終了したか否かを判断する。加工が終了していない場合(ステップS7,No)、数値制御装置1は、ステップS1へ手順を戻す。一方、加工が終了した場合(ステップS7,Yes)、数値制御装置1は、図2に示す手順による処理を終了する。
【0033】
次に、数値制御装置1が有する構成要素の各々における処理の詳細について説明する。図3は、実施の形態1に係る数値制御装置1による制御の内容について説明するための図である。図3には、速度と時間との関係を表すグラフを示す。図3において、破線のグラフは、解析処理部10から出力される、工具の先端位置に対する速度指令を表す。一点鎖線のグラフは、第1加減速処理部11から出力される第1速度を表す。実線のグラフは、第2加減速処理部12から出力される第2速度を表す。
【0034】
<解析処理部10>
解析処理部10は、数値制御装置1の外部から入力された加工プログラムに示される加工形状を先読みして移動データを取得する。解析処理部10は、移動データから、加工形状に沿って工具先端を移動させるための速度指令を決定する。また、解析処理部10は、加工プログラムに基づいて、切削加工に使用される工具の種類と、主軸の回転速度とを決定する。
【0035】
図4は、実施の形態1に係る数値制御装置1が有する解析処理部10による先読みについて説明するための図である。図4において、矢印は、加工プログラムの軌跡を表す。図4に示す実線の矢印は、モータへのモータ指令の出力が済んでいる軌跡を表す。図4に示す一点鎖線の矢印は、解析処理部10による解析は済んでいるが、モータへのモータ指令の出力は済んでいない軌跡を表す。図4に示す破線の矢印は、解析処理部10による解析とモータへのモータ指令の出力とがいずれも済んでいない軌跡を表す。指令位置P1は、現時点における工具先端位置である。先読み位置P2は、現時点における先読みの対象とされている位置である。なお、解析処理部10による先読みは、第1加減速処理部11による処理、第2加減速処理部12による処理、および補間処理部13による処理の各々と同時に実行されても良い。
【0036】
解析処理部10は、加工形状に合わせた工具先端の速度指令を出力する。解析処理部10は、制御周期ごとにおける第1加減速処理部11への速度指令の出力を制御する。解析処理部10は、加工形状に合わせた工具先端の速度指令の出力を停止する場合、第1加減速処理部11への出力に、速度をゼロとする速度指令を強制的に挿入する。
【0037】
解析処理部10は、第1加減速処理部11および第2加減速処理部12の各々の状態を監視し、速度をゼロとする速度指令を出力するか否かを選択することとしても良い。解析処理部10は、速度をゼロとする速度指令を出力することによって、第1加減速処理部11によって求まる位置ドループと第2加減速処理部12によって求まる位置ドループとを強制的に減少させる。これにより、数値制御装置1は、第1速度と第2速度とを低下させることができる。
【0038】
<第1加減速処理部11>
第1加減速処理部11は、制御指令ごとの送り速度のデータに対し、予め設定された加速度による第1加減速処理を実行し、第1加減速処理後の速度である第1速度を計算する。第1加減速処理部11は、制御周期ごとに減速所要距離を計算する。第1加減速処理部11は、位置ドループが減速所要距離よりも長くなるような速度の立ち上がりおよび速度の立ち下がりを判断して、加速度を制御する。
【0039】
図5は、実施の形態1に係る数値制御装置1によって実行される第1加減速処理について説明するための第1の図である。図5には、第1速度である速度と時間との関係の例を表すグラフを示す。ここで、時間を表す変数をtとする。第1加減速処理が開始される時点をt1とする。t1における第1速度はゼロとする。t1からの加速によって第1速度が指令速度に到達する時点をt2とする。指令速度とは、加工プログラムにおいて指定されている速度とする。t2から暫く時間が経過した後におけるある時点をt3とする。t3からの減速によって第1速度がゼロに到達する時点をt4とする。以下、時間tにおける第1速度をvc1(t)とする。時間tにおける加速度をA(t)とする。制御周期をΔtとする。
【0040】
t1≦t<t2が成り立つとき、tから1つの制御周期だけ遡ったときにおける第1速度であるvc1(t-Δt)から求まる減速所要距離に対して位置ドループは過剰となる。t1≦t<t2が成り立つとき、vc1(t)=vc1(t-Δt)+A(t)・Δtを満足する加速動作が行われる。
【0041】
t1-t2の区間における加速度A(t)は、第1加減速処理において使用される加速度であって、加速時における加速度を表す。第1加減速処理部11は、加速時において、加速度をA(t)とする第1加減速処理を実行する。例えば、A(t)は、数値制御装置1に予め記憶された設定値である。A(t)は、許容可能な機械振動レベルを超過しないように予め設定された加速度の上限値、または、許容可能なモータ負荷を超過しないように予め設定された加速度の上限値であっても良い。あるいは、A(t)は、解析処理部10での先読みによって計算された線分長さ、すなわち、加工プログラムに示される線分長さに応じて決定された加速度であっても良い。
【0042】
t2≦t<t3が成り立つとき、tから1つの制御周期だけ遡ったときにおける第1速度であるvc1(t-Δt)から求まる減速所要距離に対して位置ドループは過剰となる。ただし、減速所要距離に対して位置ドループが過剰であっても、第1加減速処理後の第1速度は指令速度に維持される。t2≦t<t3が成り立つとき、vc1(t)=vc1(t-Δt)を満足する等速動作が行われる。
【0043】
t3≦t<t4が成り立つとき、tから1つの制御周期だけ遡ったときにおける第1速度であるvc1(t-Δt)から求まる減速所要距離に対して位置ドループが不足する。t3≦t<t4が成り立つとき、vc1(t)=vc1(t-Δt)-A(t)・Δtを満足する減速動作が行われる。
【0044】
t3-t4の区間における加速度A(t)は、第1加減速処理において使用される減速時における加速度を表す。第1加減速処理部11は、減速時において、加速度をA(t)とする第1加減速処理を実行する。例えば、A(t)は、数値制御装置1に予め記憶された設定値である。A(t)は、許容可能な機械振動レベルを超過しないように予め設定された加速度の上限値、または、許容可能なモータ負荷を超過しないように予め設定された加速度の上限値であっても良い。あるいは、A(t)は、解析処理部10での先読みによって計算された線分長さ、すなわち、加工プログラムに示される線分長さに応じて決定された加速度であっても良い。あるいは、第1加減速処理において生じる離散化誤差または演算誤差を加味して、位置ドループが減速所要距離と等しいときの加速度を計算して、計算された加速度が、減速時における加速度として設定されても良い。上記の第1加減速処理によって、第1速度の速度波形は、図5に示すような台形形状となる。
【0045】
図6は、実施の形態1に係る数値制御装置1によって実行される第1加減速処理について説明するための第2の図である。図6には、第1加速度である加速度と時間との関係の例を表すグラフを示す。ここで、第1速度の単位時間当たりの変化率を、第1加速度とする。第1加速度の波形は、図6に示すように、プラス方向に凸の矩形部とマイナス方向に凸の矩形部とを含む波形となる。
【0046】
なお、上記では、解析処理部10での先読みによって計算される線分長さが比較的長いことで、第1速度が指令速度に到達するケースを説明した。実施の形態1で説明する第1加減速処理は、解析処理部10での先読みによって計算される線分長さが比較的短く、第1速度が指令速度に到達しないケースにも適用可能である。
【0047】
図7は、実施の形態1に係る数値制御装置1によって実行される第1加減速処理について説明するための第3の図である。図7には、第1速度が指令速度に到達しないケースにおける、第1速度である速度と時間との関係の例を表すグラフを示す。第1速度が指令速度に到達しないケースでは、加速動作の後、等速動作を経ずに減速動作が行われる。この場合、上記の第1加減速処理によって、第1速度の速度波形は、図7に示すような三角形状となる。
【0048】
上記では、第1加減速処理部11は、位置ドループと減速所要距離とを比較した結果に基づいて加速動作についての判断を行うこととした。第1加減速処理部11は、計算された減速所要距離の値にオフセット量が加算された値を位置ドループと比較した結果に基づいて、加速動作についての判断を行うこととしても良い。この場合、線分長さが比較的短いときであっても、第1速度の速度波形は、三角形状とならず台形形状となる。この場合、指令速度よりも低い速度において等速動作が行われることから、台形形状の高さは、第1速度が指令速度に到達する場合に比べて低くなる。例として、第1速度の最高値と第2速度の最高値とが互いに同じとなるように、第2加減速処理に使用される加加速度に合わせてオフセット量が決定されても良い。
【0049】
上記では、制御周期ごとの速度指令が解析処理部10から出力されたタイミングで、第1加減速処理部11による第1加減速処理が開始されることとした。第1加減速処理部11は、位置ドループの計算結果がある程度蓄積された後の任意のタイミングにおいて、第1加減速処理を開始しても良い。
【0050】
第1加減速処理部11は、制御周期ごとに、第1加減速処理後の速度である第1速度を示す情報を第2加減速処理部12へ出力する。
【0051】
<第2加減速処理部12>
第2加減速処理部12は、第1速度の単位時間当たりの変化率である加速度のデータに対し、予め設定された加加速度による第2加減速処理を実行し、第2加減速処理後の速度である第2速度を計算する。第2加減速処理部12は、最新の出力加速度からの減速により加速度がゼロとなるまでに必要な速度である減速所要速度を、制御周期ごとに計算する。第2加減速処理部12は、速度ドループが減速所要速度よりも高くなるような速度の立ち上がりおよび速度の立ち下がりを判断して、加加速度を制御する。
【0052】
図8は、実施の形態1に係る数値制御装置1によって実行される第2加減速処理について説明するための第1の図である。図8には、第2加速度である加速度と時間との関係の例を表すグラフを示す。ここで、第2加減速処理後の加速度を、第2加速度とする。
【0053】
第2加減速処理が開始される時点をt11とする。t11から第2加速度を上昇させて、第2加速度が第1加速度に到達する時点をt12とする。t12から暫く時間が経過した後におけるある時点をt13とする。t13から第2加速度を低下させて、第2加速度がゼロに到達する時点をt14とする。t14から第2加速度がゼロである状態が維持された後に、第2加速度のゼロからの低下が開始される時点をt15とする。t15から第2加速度を低下させて、第2加速度が第1加速度に到達する時点をt16とする。t16から暫く時間が経過した後におけるある時点をt17とする。t17から第2加速度を上昇させて、第2加速度がゼロに到達する時点をt18とする。以下、時間tにおける第2速度をvc2(t)とする。時間tにおける第2加速度をac2(t)とする。第2加減速処理後の加減速時における加加速度である、時間tにおける加加速度を、J(t)とする。
【0054】
t11≦t<t12が成り立つとき、tから1つの制御周期だけ遡ったときにおける第2加速度であるac2(t-Δt)から求まる減速所要速度に対して速度ドループは過剰となる。また、第2加速度であるac2(t-Δt)から求まる減速所要距離に対して位置ドループは過剰となる。t11≦t<t12が成り立つとき、ac2(t)=ac2(t-Δt)+J(t)・Δtを満足する、加速度を上昇させる動作が行われる。このとき、ac2(t)≧0が成り立つとする。t11≦t<t12が成り立つとき、vc2(t)=vc2(t-Δt)+ac2(t)・Δtを満足する加速動作であって、加速を徐々に強める加速動作が行われる。t12において、第2加速度が第1加速度に到達する。
【0055】
t11-t12の区間における加加速度J(t)は、第2加減速処理において使用される加加速度であって、第2加減速処理の開始からプラス方向へ加速度を強めるときにおける加加速度を表す。第2加減速処理部12は、第2加減速処理の開始から加速度を上昇させるときに、加加速度をJ(t)とする第2加減速処理を実行する。例えば、J(t)は、数値制御装置1に予め記憶された設定値である。J(t)は、許容可能な機械振動レベルを超過しないように予め設定された加加速度の上限値、または、許容可能なモータ負荷を超過しないように予め設定された加加速度の上限値であっても良い。あるいは、J(t)は、解析処理部10での先読みによって計算された線分長さ、すなわち、加工プログラムに示される線分長さに応じて決定された加加速度であっても良い。
【0056】
t12≦t<t13が成り立つとき、tから1つの制御周期だけ遡ったときにおける第2加速度であるac2(t-Δt)から求まる減速所要速度に対して速度ドループは過剰となる。また、ac2(t-Δt)から求まる減速所要距離に対して位置ドループは過剰となる。ただし、減速所要速度に対して速度ドループが過剰、かつ減速所要距離に対して位置ドループが過剰であっても、第2加減速処理後の第2加速度は維持される。t12≦t<t13が成り立つとき、ac2(t)=ac2(t-Δt)を満足する等加速度動作が行われる。このとき、ac2(t)≧0が成り立つとする。t12≦t<t13が成り立つとき、vc2(t)=vc2(t-Δt)+ac2(t)・Δtを満足する加速動作が行われる。
【0057】
t13≦t<t14が成り立つとき、tから1つの制御周期だけ遡ったときにおける第2加速度であるac2(t-Δt)から求まる減速所要距離に対して位置ドループは過剰となる。また、ac2(t-Δt)から求まる減速所要速度に対して速度ドループが不足する。t13≦t<t14が成り立つとき、ac2(t)=ac2(t-Δt)-J(t)・Δtを満足する、加速度を低下させる動作が行われる。このとき、ac2(t)≧0が成り立つとする。t13≦t<t14が成り立つとき、vc2(t)=vc2(t-Δt)+ac2(t)・Δtを満足する加速動作であって、加速を徐々に緩める加速動作が行われる。t13から加速が徐々に緩められて、t14では、第2速度が第1速度に到達する。t14では、第1速度が指令速度に到達する。
【0058】
t13-t14の区間における加加速度J(t)は、第2加減速処理において使用される加加速度であって、第2加減速処理の開始からプラス方向へ加速度が強められた後、プラス方向の加速度が弱められるときにおける加加速度を表す。第2加減速処理部12は、第2加減速処理の開始から加速度を上昇させた後、加速度を低下させるときに、加加速度をJ(t)とする第2加減速処理を実行する。J(t)の設定についての詳細は、上記するt11-t12の区間における加加速度J(t)の場合と同様であるものとする。
【0059】
t14≦t<t15が成り立つとき、第1加速度がゼロとなり、減速所要速度と速度ドループとは互いに同じとなる。一方、tから1つの制御周期だけ遡ったときにおける第2加速度であるac2(t-Δt)から求まる減速所要距離に対して位置ドループは過剰となる。t14≦t<t15が成り立つとき、ac2(t)=0、かつ、vc2(t)=vc2(t-Δt)を満足する等速動作が行われる。t15では、第1速度の低下が開始される。
【0060】
t15≦t<t16が成り立つとき、tから1つの制御周期だけ遡ったときにおける第2加速度であるac2(t-Δt)から求まる減速所要速度に対して速度ドループがマイナス方向に過剰となる。また、ac2(t-Δt)から求まる減速所要距離に対して位置ドループが不足する。t15≦t<t16が成り立つとき、ac2(t)=ac2(t-Δt)-J(t)・Δtを満足する、マイナス方向の加速度を強める動作が行われる。このとき、ac2(t)≦0が成り立つとする。t15≦t<t16が成り立つとき、vc2(t)=vc2(t-Δt)+ac2(t)・Δtを満足する減速動作であって、減速を徐々に強める減速動作が行われる。t16において、第2加速度が第1加速度に到達する。
【0061】
t15-t16の区間における加加速度J(t)は、第2加減速処理において使用される加加速度であって、加速度をゼロからマイナス方向へ強めるときにおける加加速度を表す。第2加減速処理部12は、加速度をゼロからマイナス方向へ強めるときに、加加速度をJ(t)とする第2加減速処理を実行する。J(t)の設定についての詳細は、上記するt11-t12の区間における加加速度J(t)の場合と同様であるものとする。
【0062】
t16≦t<t17が成り立つとき、tから1つの制御周期だけ遡ったときにおける第2加速度であるac2(t-Δt)から求まる減速所要速度に対して速度ドループがマイナス方向に過剰となる。また、ac2(t-Δt)から求まる減速所要距離に対して位置ドループが不足する。ただし、減速所要速度に対して速度ドループがマイナス方向に過剰、かつ減速所要距離に対して位置ドループが不足していても、第2加減速処理後の第2加速度は維持される。t16≦t<t17が成り立つとき、ac2(t)=ac2(t-Δt)を満足する等加速度動作が行われる。このとき、ac2(t)≦0が成り立つとする。t16≦t<t17が成り立つとき、vc2(t)=vc2(t-Δt)+ac2(t)・Δtを満足する減速動作が行われる。
【0063】
t17≦t<t18が成り立つとき、tから1つの制御周期だけ遡ったときにおける第2加速度であるac2(t-Δt)から求まる減速所要距離に対して位置ドループは過剰となる。また、ac2(t-Δt)から求まる減速所要速度に対して速度ドループが不足する。t17≦t<t18が成り立つとき、ac2(t)=ac2(t-Δt)+J(t)・Δtを満足する、マイナス方向の加速度を低下させる動作が行われる。このとき、ac2(t)≦0が成り立つとする。t17≦t<t18が成り立つとき、vc2(t)=vc2(t-Δt)+ac2(t)・Δtを満足する減速動作であって、減速を徐々に緩める減速動作が行われる。t17から減速が徐々に緩められて、t18では、第2速度が第1速度に到達する。t18では、第1速度がゼロに到達する。
【0064】
t17-t18の区間における加加速度J(t)は、第2加減速処理において使用される加加速度であって、加速度がゼロからマイナス方向へ強められた後、マイナス方向の加速度が弱められるときにおける加加速度を表す。第2加減速処理部12は、加速度がゼロからマイナス方向へ強められた後、マイナス方向の加速度が弱められるときに、加加速度をJ(t)とする第2加減速処理を実行する。例えば、J(t)は、数値制御装置1に予め記憶された設定値である。J(t)は、許容可能な機械振動レベルを超過しないように予め設定された加加速度の上限値、または、許容可能なモータ負荷を超過しないように予め設定された加加速度の上限値であっても良い。あるいは、J(t)は、解析処理部10での先読みによって計算された線分長さ、すなわち、加工プログラムに示される線分長さに応じて決定された加加速度であっても良い。
【0065】
あるいは、第2加減速処理において生じる離散化誤差または演算誤差を加味して、位置ドループが減速所要距離と等しいときの加加速度を計算して、計算された加加速度が、減速時における加加速度であるJ(t)として設定されても良い。この場合、2つの連立方程式が解かれることとなるため、加加速度とは別の物理量を変数に設定する必要がある。加加速度とは別の物理量であって変数に設定される物理量は、第2加減速処理に関する物理量であれば良いものとする。例えば、t16≦t<t17が成り立つときのac2(t)が、変数に設定されても良い。上記の第2加減速処理によって、第2加速度の波形は、図8に示すように、プラス方向に凸の台形部とマイナス方向に凸の台形部とを含む波形となる。
【0066】
図9は、実施の形態1に係る数値制御装置1によって実行される第2加減速処理について説明するための第2の図である。図9には、第2加速度の単位時間当たりの変化率である加加速度と時間との関係の例を表すグラフを示す。加加速度の波形は、図9に示すように、プラス方向に凸の短冊形部とマイナス方向に凸の短冊形部とを含む波形となる。
【0067】
例として、第2加減速処理部12による第2加減速処理は、第1加減速処理部11による第1加減速処理の終了後に開始される。第2加減速処理部12による第2加減速処理は、第1加減速処理部11による第1加減速処理と同時に実行されても良い。
【0068】
なお、上記では、第1加減速処理部11によって計算される第1速度が比較的高く、第2加速度が第1加速度に到達するケースを説明した。実施の形態1で説明する第2加減速処理は、第1速度が比較的低く、第2加速度が第1加速度に到達しないケースにも適用可能である。第2加速度が第1加速度に到達しないケースでは、加速を徐々に強める加速動作の後、等加速度動作を経ずに、加速を徐々に弱める加速動作が行われる。また、減速を徐々に強める減速動作の後、等加速度動作を経ずに、減速を徐々に弱める減速動作が行われる。この場合、上記の第2加減速処理によって、第2加速度の波形は、プラス方向に凸の三角形部とマイナス方向に凸の三角形部とを含む波形となる。
【0069】
第2加減速処理部12は、制御周期ごとに、第2加減速処理後の速度である第2速度を示す情報を補間処理部13へ出力する。
【0070】
<補間処理部13>
補間処理部13は、第2加減速処理部12から出力された情報に示される第2速度に基づいてモータ指令を生成する。補間処理部13は、加工形状に合わせて複数の送り方向へ第2速度の成分を分解することで、複数の送り軸の各々に対するモータ指令を生成する。補間処理部13は、制御周期ごとに、複数のモータの各々へモータ指令を出力する。
【0071】
実施の形態1によると、数値制御装置1は、加工プログラムの解析によって移動データを取得し、移動データに基づいて送り速度を求める解析処理部10と、送り速度のデータに対する第1加減速処理によって、第1加減速処理後の速度である第1速度を求める第1加減速処理部11と、第1速度の単位時間当たりの変化率である加速度のデータに対する加減速処理である第2加減速処理によって、第2加減速処理後の速度である第2速度を求める第2加減速処理部12と、第2速度に基づいてモータ指令を生成する補間処理部13とを備える。数値制御装置1は、送り速度のデータに対する第1加減速処理によって第1速度を求め、加速度のデータに対する第2加減速処理によって第2速度を求める、すなわち、加加速度まで考慮した段階的な計算を行うことで、加速度を上昇させる余地があるにも関わらず加速度が低くなるという事態を防ぐことができる。数値制御装置1は、目標位置を超えるオーバーシュートを発生させることなく、加速度および加加速度の高精度な制御が可能となる。数値制御装置1は、加速度および加加速度の高精度な制御によって、加速度を適宜上昇させることができ、工作機械2のサイクルタイム増加を抑制させることが可能となる。以上により、数値制御装置1は、加速度および加加速度の高精度な制御によってサイクルタイム増加を抑制させることができる、という効果を奏する。
【0072】
また、第2加減速処理部12は、目標位置と第2速度の積分値により示される位置との差である位置ドループと、送り軸の送り運動が減速により停止するまでに要する移動距離である減速所要距離とを計算し、目標速度と第2速度との差である速度ドループと、減速により加速度がゼロに到達するまでに必要となる速度である減速所要速度とを計算する。第2加減速処理部12は、減速所要距離よりも位置ドループを長くさせ、かつ、減速所要速度よりも速度ドループを高くさせる第2加減速処理を実行する。これにより、数値制御装置1は、目標位置を超えるオーバーシュートを発生させることなく、加速度および加加速度の高精度な制御が可能となる。
【0073】
実施の形態2.
図10は、実施の形態2に係る数値制御装置5の構成例を示す図である。数値制御装置5は、図1に示す数値制御装置1と同様に、数値制御システムに備えられる。かかる数値制御システムは、数値制御装置5と工作機械2とを備える。実施の形態2では、上記の実施の形態1と同一の構成要素には同一の符号を付し、実施の形態1とは異なる構成について主に説明する。
【0074】
数値制御装置5は、工作機械2に備えられている複数のモータの各々を制御する。数値制御装置5は、加減速制御装置6と、解析処理部20と、補間処理部23とを備える。加減速制御装置6は、速度波形における立ち上がり部分および立ち下がり部分に表れる加速度特性を調整するための処理である加減速処理を実行する。
【0075】
加減速制御装置6は、複数の加減速処理ユニットを備える。また、各加減速処理ユニットは、複数の加減速処理部を有する。図10に示す例では、加減速制御装置6は、n個の加減速処理ユニット21-1,21-2,・・・,21-nを備える。nは、3以上の任意の整数とする。図10に示す例では、各加減速処理ユニット21-1,21-2,・・・,21-nは、m個の加減速処理部22-1,22-2,・・・,22-mを備える。mは、3以上の任意の整数とする。
【0076】
加減速処理ユニット21-1,21-2,・・・,21-nは、互いに並列に接続されている。各加減速処理ユニット21-1,21-2,・・・,21-nにおいて、加減速処理部22-1,22-2,・・・,22-mは、互いに直列に接続されている。
【0077】
各加減速処理ユニット21-1,21-2,・・・,21-nにおける加減速処理部22-1は、送り速度のデータに対する第1加減速処理によって第1速度を求める第1加減速処理部として機能する。各加減速処理ユニット21-1,21-2,・・・,21-nにおける加減速処理部22-2は、第1速度の単位時間当たりの変化率である加速度のデータに対する第2加減速処理によって第2速度を求める第2加減速処理部として機能する。すなわち、各加減速処理ユニット21-1,21-2,・・・,21-nは、第1加減速処理部および第2加減速処理部を含む、互いに直列に接続された2以上の加減速処理部22-1,22-2,・・・,22-mを有する。
【0078】
解析処理部20は、加工プログラムの先読みを実行する。解析処理部20は、加工プログラムの解析によって、工作機械2が有する送り軸へ指令される動作を表す移動データを取得する。解析処理部20は、加工プログラムに記述されている経路上において工具を移動させる際における送り速度を、移動データに基づいて求める。
【0079】
解析処理部20は、移動データに示される移動量を分配して、分配された移動データに基づいて送り速度を求める。解析処理部20は、求めた送り速度を示す指令である速度指令を、各加減速処理ユニット21-1,21-2,・・・,21-nの加減速処理部22-1へ送る。このように、解析処理部20は、分配された移動データに基づいて求めた送り速度のデータを、複数の加減速処理ユニット21-1,21-2,・・・,21-nの各々の第1加減速処理部へ送る。
【0080】
各加減速処理ユニット21-1,21-2,・・・,21-nは、互いに同様の構成を備える。ここでは、例として、加減速処理ユニット21-1の構成について説明する。加減速処理ユニット21-1の加減速処理部22-1は、速度指令に示される送り速度のデータに対する加減速処理である第1加減速処理を実行する。加減速処理部22-1は、求めた第1速度を示す情報を加減速処理ユニット21-1内の加減速処理部22-2へ出力する。
【0081】
加減速処理ユニット21-1の加減速処理部22-2は、第1速度の単位時間当たりの変化率である加速度のデータに対する加減速処理である第2加減速処理を実行する。加減速処理部22-2は、第2加減速処理によって、第2加減速処理後の速度である第2速度を求める。加減速処理部22-2は、加減速処理ユニット21-1内における次の加減速処理部へ第2速度を示す情報を出力する。
【0082】
加減速処理部22-1は、時間の関数である位置の時間微分である速度に対する加減速処理を行うものといえる。加減速処理部22-2は、速度の時間微分である加速度に対する加減速処理を行うものといえる。加減速処理ユニット21-1では、m個の加減速処理部22-1,22-2,・・・,22-mの各々において、入力された値の時間微分に対する加減速処理が順次実行される。加減速処理ユニット21-1におけるm個目の加減速処理部22-mは、加減速処理後の速度を求めた結果を補間処理部23へ出力する。
【0083】
補間処理部23は、加減速処理ユニット21-1,21-2,・・・,21-nの各々からの出力を取得する。補間処理部23は、加減速処理ユニット21-1,21-2,・・・,21-nの各々からの出力に基づいてモータ指令を生成する。補間処理部23は、生成されたモータ指令を工作機械2へ出力する。
【0084】
次に、数値制御装置5が実行する処理の手順について説明する。図11は、実施の形態2に係る数値制御装置5が実行する処理の手順の例を示すフローチャートである。
【0085】
ステップS11において、解析処理部20は、解析処理部20へ入力された加工プログラムを解析する。ステップS12において、解析処理部20は、ステップS11における解析によって取得された移動データに基づいて速度指令を生成する。解析処理部20は、移動データに示される移動量を分配して、分配された移動データに基づいて求めた送り速度のデータを加減速制御装置6へ送る。
【0086】
ステップS13において、加減速制御装置6は、複数の加減速処理ユニット21-1,21-2,・・・,21-nの各々による加減速処理を実行する。複数の加減速処理ユニット21-1,21-2,・・・,21-nの各々は、加減速処理部22-1,22-2,・・・,22-mの各々による加減速処理を実行する。加減速処理部22-1は、図2に示すステップS3の第1加減速処理と同様の加減速処理を実行する。加減速処理部22-2は、図2に示すステップS4の第2加減速処理と同様の加減速処理を実行する。m個の加減速処理部22-1,22-2,・・・,22-mの各々において、入力された値の時間微分に対する加減速処理が順次実行される。
【0087】
加減速処理部22-1は、図1に示す第1加減速処理部11と同様に、位置ドループと減速所要距離とを計算する。加減速処理部22-1は、減速所要距離よりも位置ドループを長くさせる加減速処理を実行する。加減速処理部22-2,・・・,22-mは、図1に示す第2加減速処理部12と同様に、位置ドループ、減速所要距離、速度ドループ、および減速所要速度を計算する。加減速処理部22-2,・・・,22-mは、減速所要距離よりも位置ドループを長くさせ、かつ、減速所要速度よりも速度ドループを高くさせる加減速処理を実行する。加減速制御装置6は、複数の加減速処理ユニット21-1,21-2,・・・,21-nの各々によって計算された速度を示す情報を補間処理部23へ出力する。
【0088】
ステップS14において、補間処理部23は、加減速制御装置6から出力された情報に示される速度に基づいてモータ指令を生成する。補間処理部23は、制御周期ごとに、複数のモータの各々へモータ指令を出力する。
【0089】
ステップS15において、加減速制御装置6は、目標位置までの工具の移動が完了したか否かを判断する。加減速制御装置6は、複数の加減速処理ユニット21-1,21-2,・・・,21-nの各々によって制御周期ごとに計算される位置ドループの値に基づいて、目標位置までの工具の移動が完了したか否かを判断する。目標位置までの工具の移動が完了していない場合(ステップS15,No)、数値制御装置5は、ステップS12へ手順を戻す。
【0090】
一方、目標位置までの工具の移動が完了した場合(ステップS15,Yes)、数値制御装置5は、ステップS16において、加工が終了したか否かを判断する。数値制御装置5は、実行の対象である加工プログラムに示される処理を終えたか否かによって、加工が終了したか否かを判断する。加工が終了していない場合(ステップS16,No)、数値制御装置5は、ステップS11へ手順を戻す。一方、加工が終了した場合(ステップS16,Yes)、数値制御装置5は、図11に示す手順による処理を終了する。
【0091】
次に、数値制御装置5が有する構成要素の各々における処理の詳細について説明する。
【0092】
<解析処理部20>
解析処理部20は、数値制御装置5の外部から入力された加工プログラムに示される加工形状を先読みして移動データを取得する。解析処理部20は、移動データに示される移動量を分配して、分配された移動データに基づいて、加工形状に合わせた工具先端の速度指令を決定する。解析処理部20は、複数の加減速処理ユニット21-1,21-2,・・・,21-nの各々に対して分配された速度指令を制御周期ごとに出力する。
【0093】
図12は、実施の形態2に係る数値制御装置5における速度指令の分配について説明するための第1の図である。図13は、実施の形態2に係る数値制御装置5における速度指令の分配について説明するための第2の図である。図14は、実施の形態2に係る数値制御装置5が有する加減速制御装置6の構成例を示す図である。
【0094】
図14に示す加減速制御装置6Aは、図10に示す加減速制御装置6の1つの例である。以下の説明では、加減速制御装置6が、図14に示す加減速制御装置6Aであるものとする。加減速制御装置6Aは、3つの加減速処理ユニット21-1,21-2,21-3を有する。解析処理部20は、3つの加減速処理ユニット21-1,21-2,21-3の各々に速度指令を分配する。
【0095】
図12には、速度と時間との関係の例を表すグラフを示す。図12において、V0は、分配前の速度指令に示される速度のグラフとする。V1は、加減速処理ユニット21-1に分配された速度指令に示される速度のグラフとする。V2は、加減速処理ユニット21-2に分配された速度指令に示される速度のグラフとする。V3は、加減速処理ユニット21-3に分配された速度指令に示される速度のグラフとする。加減速処理ユニット21-1,21-2,21-3の各々に対する速度の配分の割合は任意であるものとする。加減速処理ユニット21-1,21-2,21-3の各々に分配された速度の1階積分値の合計は、加工形状の先読みによって取得された移動データに示される移動量と同じである。
【0096】
図12に示す例では、解析処理部20は、加減速処理ユニット21-1,21-2,21-3の各々に対して同じタイミングで速度指令の分配を開始する。また、解析処理部20は、加減速処理ユニット21-1,21-2,21-3に対する速度指令の分配を同じタイミングで終了する。速度指令の分配を開始するタイミングとは、分配された速度指令の出力を解析処理部20が開始するタイミングであるものとする。速度指令の分配を終了するタイミングとは、分配された速度指令の出力を解析処理部20が終了するタイミングであるものとする。
【0097】
図13には、速度と時間との関係の例を表すグラフを示す。ここでは、3つの加減速処理ユニット21-1,21-2,21-3の各々に速度指令が分配されるものとする。
【0098】
図13において、V10は、分配前の速度指令に示される速度のグラフとする。V11は、加減速処理ユニット21-1に分配された速度指令に示される速度のグラフとする。V12は、加減速処理ユニット21-2に分配された速度指令に示される速度のグラフとする。V13は、加減速処理ユニット21-3に分配された速度指令に示される速度のグラフとする。
【0099】
図13に示す例では、解析処理部20は、加減速処理ユニット21-1,21-2,21-3の各々に対し、速度指令の分配を開始するタイミングと速度指令の分配を終了するタイミングとを適宜制御する。図13に示す例では、加減速処理ユニット21-1,21-2,21-3の各々に対し、速度指令の分配を開始するタイミングが互いに異なる。また、図13に示す例では、加減速処理ユニット21-1,21-2,21-3の各々に対する速度指令の分配を終了するタイミングが互いに異なる。なお、加減速処理ユニット21-1,21-2,21-3の各々に分配された速度の1階積分値の合計は、加工形状の先読みによって取得された移動データに示される移動量と同じである。
【0100】
解析処理部20は、図12に示すように、複数の加減速処理ユニット21-1,21-2,21-3の各々に対し、速度指令の分配を同じタイミングで開始し、速度指令の分配を同じタイミングで終了しても良い。または、解析処理部20は、図13に示すように、加減速処理ユニット21-1,21-2,21-3の各々に対し、速度指令の分配を開始するタイミングと速度指令の分配を終了するタイミングとを適宜制御することとしても良い。
【0101】
<加減速制御装置6A>
図14に示すように、加減速制御装置6Aは、3つの加減速処理ユニット21-1,21-2,21-3を有する。各加減速処理ユニット21-1,21-2,21-3は、3つの加減速処理部22-1,22-2,22-3を有する。解析処理部20から出力された速度指令は、各加減速処理ユニット21-1,21-2,21-3の加減速処理部22-1へ入力される。各加減速処理ユニット21-1,21-2,21-3は、互いに同様の構成を備える。ここでは、例として、加減速処理ユニット21-1の構成について説明する。
【0102】
加減速処理部22-1は、送り速度のデータに対する第1加減速処理によって第1速度を求める第1加減速処理部として機能する。加減速処理部22-1は、図1に示す第1加減速処理部11と同様に、第1加減速処理によって、第1加減速処理後の速度である第1速度を求める。加減速処理部22-1は、第1加減速処理部11と同様に、制御周期ごとに、位置ドループと減速所要距離とを計算する。加減速処理部22-1は、第1加減速処理部11と同様に、減速所要距離よりも位置ドループを長くさせる第1加減速処理を実行する。加減速処理部22-1は、第1速度を示す情報を加減速処理ユニット21-1内の加減速処理部22-2へ出力する。
【0103】
加減速処理部22-2は、第1速度の単位時間当たりの変化率である加速度のデータに対する第2加減速処理を実行する第2加減速処理部として機能する。加減速処理部22-2は、図1に示す第2加減速処理部12と同様に、第2加減速処理によって、第2加減速処理後の速度である第2速度を求める。加減速処理部22-2は、第2加減速処理部12と同様に、制御周期ごとに、位置ドループと減速所要距離と速度ドループと減速所要速度とを計算する。加減速処理部22-2は、第2加減速処理部12と同様に、減速所要距離よりも位置ドループを長くさせ、かつ、減速所要速度よりも速度ドループを高くさせる第2加減速処理を実行する。加減速処理部22-2は、第2速度を示す情報を加減速処理ユニット21-1内の加減速処理部22-3へ出力する。
【0104】
加減速処理部22-3は、第2加速度の単位時間当たりの変化率である加加速度のデータに対し、予め設定された加加速度の微分値による加減速処理である第3加減速処理を実行する。加減速処理部22-3は、第3加減速処理によって、第3加減速処理後の速度である第3速度を求める。
【0105】
加減速処理部22-3は、制御周期ごとに加速度ドループと減速所要加速度とを計算する。加減速処理部22-3によって計算される加速度ドループは、目標速度の単位時間当たりの変化率である目標加速度と、求めた第3速度の単位時間当たりの変化率である第3加速度との差である。減速所要加速度とは、送り軸の送り運動が減速により停止するまでに要する加速度とする。加減速処理部22-3は、第3速度に基づいて、最新の出力加加速度からの減速による減速所要加速度を計算する。出力加加速度とは、工作機械2へ出力されるモータ指令に示される速度の2階微分値とする。
【0106】
さらに、加減速処理部22-3は、制御周期ごとに速度ドループと減速所要速度とを計算する。加減速処理部22-3によって計算される速度ドループは、加工プログラムにより規定される速度である目標速度と、第3速度との差である。加減速処理部22-3は、第3速度に基づいて、最新の出力加速度からの減速による減速所要速度を計算する。
【0107】
さらに、加減速処理部22-3は、制御周期ごとに位置ドループと減速所要距離とを計算する。加減速処理部22-3によって計算される位置ドループは、加工プログラムにより規定される目標位置と、第3速度の積分値により示される位置との差である。加減速処理部22-3は、第3速度に基づいて、最新の出力速度からの減速による減速所要距離を計算する。
【0108】
加減速処理部22-3は、減速所要距離よりも位置ドループを長くさせ、減速所要速度よりも速度ドループを高くさせ、かつ、減速所要加速度よりも加速度ドループを高くさせる加減速処理を実行する。具体的には、加減速処理部22-3は、減速所要距離よりも位置ドループが長くなり、減速所要速度よりも速度ドループが高くなり、かつ、減速所要加速度よりも加速度ドループが高くなるように、速度波形の立ち上がり部分における加加速度の微分値と、速度波形の立ち下がり部分における加加速度の微分値とを制御する。
【0109】
<補間処理部23>
補間処理部23は、各加減速処理ユニット21-1,21-2,21-3の加減速処理部22-3から出力された情報を取得する。補間処理部23は、加減速処理部22-3から出力された情報に示される第3速度に基づいてモータ指令を生成する。補間処理部23は、加工形状に合わせて複数の送り方向へ第3速度の成分を分解することで、複数の送り軸の各々に対するモータ指令を生成する。補間処理部23は、制御周期ごとに、複数のモータの各々へモータ指令を出力する。
【0110】
なお、加減速制御装置6が有する加減速処理ユニットの数は、任意であるものとする。加減速制御装置6は、互いに並列に接続された複数の加減速処理ユニットを備えるものであれば良い。複数の加減速処理ユニットの各々は、2以上の加減速処理部による加減速処理を実行して、加減速処理後の速度を求めた結果を出力する。また、複数の加減速処理ユニットの各々が有する加減速処理部の数は、任意であるものとする。複数の加減速処理ユニットの各々は、第1加減速処理部と第2加減速処理部とを含む、互いに直列に接続された2以上の加減速処理部を有していれば良い。
【0111】
例えば、図14に示す加減速制御装置6Aでは、複数の加減速処理ユニットの各々は、3つの加減速処理部22-1,22-2,22-3を備え、3つ目の加減速処理部22-3により加加速度のデータに対する加減速処理を実行することとした。複数の加減速処理ユニットの各々は、上記のケースからさらに微分の次数を高めた加減速処理を実行することとしても良い。例えば、複数の加減速処理ユニットの各々は、4つ目の加減速処理部をさらに備えることとし、4つ目の加減速処理部により加加加速度のデータに対する加減速処理を実行することとしても良い。
【0112】
加減速制御装置6は、複数の加減速ユニットを有するものに限られない。加減速制御装置6は、1つの加減速ユニットのみを有するものでも良い。加減速制御装置6は、少なくとも、第1加減速処理部と第2加減速処理部とを含む複数の加減速処理部を有するものであれば良い。
【0113】
なお、加減速制御装置6では、複数の加減速処理ユニットに備えられる複数の加減速処理部の各々における加速度処理による加速度特性の調整の態様が、工作機械2の振動量の許容値または工作機械2の振動周波数に基づいて決定されても良い。これにより、数値制御装置5は、加工時における工作機械2の振動を低減させるとともに、速度および加加速度の高精度な制御が可能となる。
【0114】
加減速制御装置6には、互いに並列に接続される加減速処理ユニットの数と互いに直列に接続される加減速処理部の数との少なくとも一方を調整して、加減速制御装置6における複数の加減速処理部の接続構成を決定する接続構成決定部が設けられても良い。すなわち、加減速制御装置6では、複数の加減速処理ユニットのうち加減速処理を実行する加減速処理ユニットの数と、加減速処理を実行する加減速処理ユニットが有する2以上の加減速処理部のうち加減速処理を実行する加減速処理部の数と、の少なくとも一方を調整可能であっても良い。なお、接続構成決定部の図示は省略する。
【0115】
例として、加工精度、面品位、およびサイクルタイムの各々についての評価結果である評価値の少なくとも1つが許容範囲に収まるときの接続構成を求めることによって、加減速処理部の接続構成が決定されても良い。加工精度は、加工プログラムに示される加工形状と加工結果である形状との差である加工誤差に基づいて求めることができる。または、加工時における振動レベルが許容範囲に収まるときの接続構成を求めることによって、加減速処理部の接続構成が決定されても良い。
【0116】
数値制御装置5は、加減速処理を実行する加減速処理ユニットの数と加減速処理を実行する加減速処理部の数との少なくとも一方が調整可能であることで、所望される加工に適した接続構成を決定することができる。数値制御装置5は、所望される加工に適した接続構成によって、加速度および加加速度の高精度な制御を実現することができる。
【0117】
実施の形態2によると、数値制御装置5は、互いに並列に接続された複数の加減速処理ユニットを備え、複数の加減速処理ユニットの各々は、第1加減速処理部および第2加減速処理部を含む、互いに直列に接続された2以上の加減速処理部を有する。解析処理部20は、移動データに示される移動量を分配して、分配された移動データに基づいて求めた送り速度のデータを複数の加減速処理ユニットの各々の第1加減速処理部へ送る。複数の加減速処理ユニットの各々は、2以上の加減速処理部による加減速処理を実行して、加減速処理後の速度を求めた結果を出力する。補間処理部23は、複数の加減速処理ユニットの各々からの出力に基づいてモータ指令を生成する。数値制御装置5は、2以上の加減速処理部を有する加減速処理ユニットが複数備えられることで、1つの第1加減速処理部および1つの第2加減速処理部のみを有する場合に比べて、多くの加減速処理部を使用した加減速処理が可能となる。数値制御装置5は、多くの加減速処理部を使用した加減速処理によって、速度波形における立ち上がり部分および立ち下がり部分をより滑らかにすることができる。数値制御装置5は、多くの加減速処理部を使用した加減速処理によって、高い自由度での加減速特性の調整が可能となる。
【0118】
また、複数の加減速処理ユニットに備えられる複数の加減速処理部の各々における加速度処理による加速度特性の調整の態様が、工作機械2の振動幅の許容値または工作機械2の振動周波数に基づいて決定される。これにより、数値制御装置5は、加工時における工作機械2の振動を低減させるとともに、速度および加加速度の高精度な制御が可能となる。
【0119】
また、数値制御装置5は、複数の加減速処理ユニットのうち加減速処理を実行する加減速処理ユニットの数と、加減速処理を実行する加減速処理ユニットが有する2以上の加減速処理部のうち加減速処理を実行する加減速処理部の数と、の少なくとも一方を調整可能である。これにより、数値制御装置5は、所望される加工に適した接続構成によって、加速度および加加速度の高精度な制御を実現することができる。
【0120】
次に、実施の形態1または2に係る数値制御装置1,5を実現するハードウェアについて説明する。数値制御装置1,5は、処理回路の使用により実現される。処理回路は、プロセッサがソフトウェアを実行する回路であっても良く、専用の回路であっても良い。
【0121】
処理回路がソフトウェアにより実現される場合、処理回路は、例えば、図15に示す制御回路である。図15は、実施の形態1または2に係る制御回路40の構成例を示す図である。制御回路40は、入力部41、プロセッサ42、メモリ43、および出力部44を備える。入力部41は、制御回路40の外部からのデータを受信してプロセッサ42に与えるインターフェース回路である。出力部44は、プロセッサ42またはメモリ43からのデータを制御回路40の外部へ送るインターフェース回路である。
【0122】
処理回路が、図15に示す制御回路40である場合、数値制御装置1の処理部と数値制御装置5の処理部とは、ソフトウェア、ファームウェア、またはソフトウェアとファームウェアとの組み合わせにより実現される。図1に示す加減速制御装置3、解析処理部10、および補間処理部13は、数値制御装置1の処理部である。図10に示す加減速制御装置6、解析処理部20、および補間処理部23は、数値制御装置5の処理部である。ソフトウェアまたはファームウェアはプログラムとして記述され、メモリ43に格納される。
【0123】
処理回路は、メモリ43に記憶されたプログラムをプロセッサ42が読み出して実行することにより、数値制御装置1,5の処理部を実現する。すなわち、処理回路は、数値制御装置1,5の処理が結果的に実行されることになるプログラムを格納するためのメモリ43を備える。メモリ43に格納されるプログラムは、数値制御装置1,5の手順および方法をコンピュータに実行させるプログラムであるものともいえる。メモリ43は、プロセッサ42が各種処理を実行する際の一時メモリにも使用される。
【0124】
プロセッサ42は、CPU(Central Processing Unit)である。プロセッサ42は、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサ、またはDSP(Digital Signal Processor)でも良い。メモリ43は、例えば、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ、EPROM(Erasable Programmable Read Only Memory)、EEPROM(登録商標)(Electrically Erasable Programmable Read Only Memory)等の、不揮発性または揮発性の半導体メモリ、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスクまたはDVD(Digital Versatile Disc)等が該当する。
【0125】
処理回路が専用の回路である場合、数値制御装置1,5は、例えば、図16に示すハードウェア回路により実現される。図16は、実施の形態1または2に係るハードウェア回路45の構成例を示す図である。
【0126】
数値制御装置1の処理部と数値制御装置5の処理部とは、専用の回路である処理回路46により実現される。処理回路46は、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)、またはこれらを組み合わせた回路である。数値制御装置1,5の処理部を機能別に処理回路46で実現しても良いし、各機能をまとめて処理回路46で実現しても良い。なお、数値制御装置1の処理部または数値制御装置5の処理部は、図15に示す制御回路40と図16に示す処理回路46とが組み合わされて実現されても良い。
【0127】
以上の各実施の形態に示した構成は、本開示の内容の一例を示すものである。各実施の形態の構成は、別の公知の技術と組み合わせることが可能である。各実施の形態の構成同士が適宜組み合わせられても良い。本開示の要旨を逸脱しない範囲で、各実施の形態の構成の一部を省略または変更することが可能である。
【符号の説明】
【0128】
1,5 数値制御装置、2 工作機械、3,6,6A 加減速制御装置、10,20 解析処理部、11 第1加減速処理部、12 第2加減速処理部、13,23 補間処理部、21-1,21-2,21-3,21-n 加減速処理ユニット、22-1,22-2,22-3,22-m 加減速処理部、40 制御回路、41 入力部、42 プロセッサ、43 メモリ、44 出力部、45 ハードウェア回路、46 処理回路。
【要約】
数値制御装置(1)は、加工プログラムの解析によって、工作機械(2)が有する送り軸へ指令される動作を表す移動データを取得し、移動データに基づいて送り速度を求める解析処理部(10)と、送り速度のデータに対する加減速処理である第1加減速処理によって、第1加減速処理後の速度である第1速度を求める第1加減速処理部(11)と、第1速度の単位時間当たりの変化率である加速度のデータに対する加減速処理である第2加減速処理によって、第2加減速処理後の速度である第2速度を求める第2加減速処理部(12)と、第2速度に基づいて、送り軸を駆動するモータに対する速度の指令であるモータ指令を生成する補間処理部(13)と、を備える。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16