(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-05-26
(45)【発行日】2025-06-03
(54)【発明の名称】産業機械の制御装置
(51)【国際特許分類】
G05B 19/416 20060101AFI20250527BHJP
【FI】
G05B19/416 E
(21)【出願番号】P 2023500809
(86)(22)【出願日】2022-02-10
(86)【国際出願番号】 JP2022005494
(87)【国際公開番号】W WO2022176784
(87)【国際公開日】2022-08-25
【審査請求日】2023-09-12
(31)【優先権主張番号】P 2021023437
(32)【優先日】2021-02-17
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】390008235
【氏名又は名称】ファナック株式会社
(74)【代理人】
【識別番号】100106002
【氏名又は名称】正林 真之
(74)【代理人】
【識別番号】100165157
【氏名又は名称】芝 哲央
(74)【代理人】
【識別番号】100160794
【氏名又は名称】星野 寛明
(72)【発明者】
【氏名】八木 順
【審査官】稲垣 浩司
(56)【参考文献】
【文献】特開2016-48512(JP,A)
【文献】特開2014-78102(JP,A)
【文献】特開平8-263121(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05B 19/416
(57)【特許請求の範囲】
【請求項1】
プログラムに基づいて、産業機械の可動部の移動を制御する制御装置であって、
前記プログラムは、ブロック単位で前記可動部の移動経路に関する指令を含み、かつ、前記可動部の移動速度に関する指令を含み、
前記プログラムの指令に基づいて、前記可動部の移動経路の指令経路を生成する指令経路生成部と、
前記可動部を駆動する駆動部を制御する駆動制御部であって、
前記指令経路生成部によって生成された前記指令経路および前記プログラムの指令が示す前記移動速度に基づく指令速度に基づいて、前記指令経路に沿って前記可動部を移動させる順行運転、および
逆行指令経路および逆行指令速度に基づいて、前記指令経路を逆行するように前記可動部を移動させる逆行運転、
を行う駆動制御部と、
前記産業機械の伝達特性に関する機械モデルを用いて、前記指令経路から順行実経路を予測する順行実経路予測部と、
前記順行実経路の移動方向を反転することにより、前記逆行指令経路を生成する逆行指令経路生成部と、
前記機械モデルを用いて、前記逆行指令経路から逆行実経路を予測する逆行実経路予測部と、
前記逆行指令経路に対する前記逆行実経路の誤差を低減するように、前記プログラムの指令が示す前記移動速度に基づく指令速度を調整して、前記逆行指令速度を生成する指令速度調整部と、
を備える、産業機械の制御装置。
【請求項2】
前記産業機械の伝達特性に基づいて、システム同定を行い、前記機械モデルを生成する機械モデル生成部を更に備える、請求項1に記載の産業機械の制御装置。
【請求項3】
前記指令速度調整部は、前記指令速度における加減速時定数を調整する、請求項1または2に記載の産業機械の制御装置。
【請求項4】
前記逆行指令経路は、前記逆行指令経路を時間tでサンプリングした複数の軌跡データを含み、
前記逆行実経路は、前記逆行指令経路の複数の軌跡データにそれぞれ対応する複数の実軌跡データを含み、
前記指令速度調整部は、
前記逆行指令経路の軌跡データ間のユークリッド距離d
l[t]、および、前記逆行実経路の実軌跡データ間のユークリッド距離d
lact[t]を算出し、
前記逆行指令経路の軌跡データに対する前記逆行実経路の実軌跡データの誤差が所定値以上である範囲における、前記逆行指令経路の
軌跡データ間のユークリッド距離d
l[t]の総和と前記逆行実経路の
実軌跡データ間のユークリッド距離d
lact[t]の総和とから移動量の差を算出し、
前記移動量の差、前記指令速度における最大速度vおよび加減速時定数τに基づく下記(1)式により、調整加減速時定数τaを算出し、
前記逆行指令経路の軌跡データに対する前記逆行実経路の実軌跡データの誤差が所定値以上である前記範囲を含むブロックの1つ前のブロックにおける前記指令速度の加減速時定数τを、調整加減速時定数τaに調整した前記逆行指令速度を生成する、
【数1】
ここで、iはインクリメント変数であり、nはインクリメント変数の最大値である、
請求項3に記載の産業機械の制御装置。
【請求項5】
前記指令速度調整部は、前記指令速度における最大速度を調整する、請求項1または2に記載の産業機械の制御装置。
【請求項6】
前記逆行指令経路は、前記逆行指令経路を時間tでサンプリングした複数の軌跡データを含み、
前記逆行実経路は、前記逆行指令経路の複数の軌跡データにそれぞれ対応する複数の実軌跡データを含み、
前記指令速度調整部は、
前記逆行指令経路の軌跡データ間のユークリッド距離d
l[t]、および、前記逆行実経路の実軌跡データ間のユークリッド距離d
lact[t]を算出し、
前記逆行指令経路の軌跡データに対する前記逆行実経路の実軌跡データの誤差が所定値以上である範囲における、前記逆行指令経路の
軌跡データ間のユークリッド距離d
l[t]の総和と前記逆行実経路の
実軌跡データ間のユークリッド距離d
lact[t]の総和とから減速率を算出し、
前記指令速度における最大速度vに前記減速率を乗算する下記(2)式により、調整最大速度vaを算出し、
前記逆行指令経路の軌跡データに対する前記逆行実経路の実軌跡データの誤差が所定値以上である前記範囲を含むブロックの1つ前のブロックにおける前記指令速度の最大速度vを、調整最大速度vaに調整した前記逆行指令速度を生成する、
【数2】
ここで、iはインクリメント変数であり、nはインクリメント変数の最大値である、
請求項5に記載の産業機械の制御装置。
【請求項7】
前記逆行指令経路は、前記逆行指令経路を時間tでサンプリングした複数の軌跡データを含み、
前記逆行実経路は、前記逆行指令経路の複数の軌跡データにそれぞれ対応する複数の実軌跡データを含み、
前記指令速度調整部は、
前記逆行指令経路の軌跡データ間のユークリッド距離d
l[t]、および、前記逆行指令経路の軌跡データと前記逆行実経路の実軌跡データとの誤差のユークリッド距離d
err[t]を算出し、
前記逆行指令経路の軌跡データに対する前記逆行実経路の実軌跡データの誤差が所定値以上である範囲において、同じ方向に発生する誤差のユークリッド距離d
err[t]が最大となるポイントi=kを求め、
最大の誤差のユークリッド距離d
err[t+k]とそれに対応する逆行指令経路の
軌跡データ間のユークリッド距離d
l[t+k]とから減速率を算出し、
前記指令速度における最大速度vに前記減速率を乗算する下記(3)式により、調整最大速度vaを算出し、
前記逆行指令経路の軌跡データに対する前記逆行実経路の軌跡データの誤差の方向が反転する直前の軌跡データを含むブロックにおける前記指令速度の最大速度vを、調整最大速度vaに調整した前記逆行指令速度を生成する、
【数3】
ここで、iはインクリメント変数であり、nはインクリメント変数の最大値であり、kは0≦k≦nである、
請求項5に記載の産業機械の制御装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、産業機械の制御装置に関する。
【背景技術】
【0002】
工作機械またはロボット等の産業機械の制御装置において、可動部を指令経路に沿って移動させるときに何らかの問題が発生した場合、指令経路を逆行させて可動部を戻す技術が知られている(例えば特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
例えば、上述した問題が加工不足である場合、指令経路を逆行させて可動部を戻した後、再度指令経路に沿って可動部を移動させて加工を行うことが考えられる。この場合、実際に通過する実経路であって、指令経路に沿った順行実経路と指令経路を逆行する逆行実経路とが同一であれば、指令経路を逆行させる際にも加工を行うことができ、加工効率を向上することができる。
【0005】
しかし、指令経路が非直線経路を含み、かつ、指令速度が比較的に速い場合、非直線経路において、実経路が指令経路からずれることがある。より具体的には、実経路が指令経路よりも大回りすることがある。この場合、非直線経路において、順行実経路における大回り発生箇所と逆行実経路における大回り発生箇所とが異なることにより、順行実経路と逆行実経路とがずれてしまうことがある。
【0006】
そこで、可動部の順行実経路と逆行実経路とのずれを低減することができる産業機械の制御装置が望まれている。
【課題を解決するための手段】
【0007】
本開示に係る産業機械の制御装置は、プログラムに基づいて、産業機械の可動部の移動を制御する制御装置であって、前記プログラムは、ブロック単位で前記可動部の移動経路に関する指令を含み、かつ、前記可動部の移動速度に関する指令を含み、前記プログラムの指令に基づいて、前記可動部の移動経路の指令経路を生成する指令経路生成部と、前記可動部を駆動する駆動部を制御する駆動制御部であって、前記指令経路生成部によって生成された前記指令経路および前記プログラムの指令が示す前記移動速度に基づく指令速度に基づいて、前記指令経路に沿って前記可動部を移動させる順行運転、および、逆行指令経路および逆行指令速度に基づいて、前記指令経路を逆行するように前記可動部を移動させる逆行運転、を行う駆動制御部と、前記産業機械の伝達特性に関する機械モデルを用いて、前記指令経路から順行実経路を予測する順行実経路予測部と、前記順行実経路の移動方向を反転することにより、前記逆行指令経路を生成する逆行指令経路生成部と、前記機械モデルを用いて、前記逆行指令経路から逆行実経路を予測する逆行実経路予測部と、前記逆行指令経路に対する前記逆行実経路の誤差を低減するように、前記プログラムの指令が示す前記移動速度に基づく指令速度を調整して、前記逆行指令速度を生成する指令速度調整部と、を備える。
【発明の効果】
【0008】
本開示によれば、産業機械の駆動部の順行実経路と逆行実経路とのずれを低減することができる。
【図面の簡単な説明】
【0009】
【
図1】本実施形態に係る工作機械(産業機械)の数値制御装置(制御装置)の構成を示す図である。
【
図2A】本実施形態の指令経路、(順行)実経路および逆行実経路の一例を示す図である。
【
図2B】従来の指令経路、(順行)実経路および逆行実経路の一例を示す図である。
【
図3A】
図2Aの非直線部分Aにおける指令経路およびその軌跡データの一例を示す図である。
【
図3B】
図2Aの非直線部分Aにおける順行実経路およびその実軌跡データの一例を示す図である。
【
図3C】
図2Aの非直線部分Aにおける順行実経路の一例を示す図である。
【
図3D】
図2Aの非直線部分Aにおける逆行指令経路の一例を示す図である。
【
図4A】
図2Aの非直線部分Aにおける逆行指令経路および逆行実経路の一例を示す図である。
【
図4B】
図4Aの逆行指令経路と逆行実経路との誤差が生じる範囲Aを拡大して示す図である。
【
図4C】本実施形態の逆行指令速度の一例を示す図である。
【
図5A】変形例の逆行指令速度の一例を示す図である。
【
図5B】
図4Aの逆行指令経路と逆行実経路との誤差が生じる範囲Aを拡大して示す図である。
【
図6】プラズマ加工機またはガス切断機による切断加工の一例を示す図である。
【
図7】レーザ加工機による溶接加工の一例を示す図である。
【
図8】レーザ加工機によるレーザフォーミング加工の一例を示す図である。
【発明を実施するための形態】
【0010】
以下、添付の図面を参照して本発明の実施形態の一例について説明する。なお、各図面において同一又は相当の部分に対しては同一の符号を附すこととする。
【0011】
図1は、本実施形態に係る工作機械(産業機械)の数値制御装置(制御装置)の構成を示す図である。
図1には、数値制御装置10とともに、工作機械100も示されている。
【0012】
工作機械100は、工具またはワークが搭載される可動部と、可動部を駆動するサーボモータ等の駆動部を含む。工作機械100は、駆動部によって可動部を駆動することにより、ワークに対して工具を相対的に移動させながら、ワークの加工を行う。
【0013】
数値制御装置10は、加工プログラム(プログラム)に基づいて、工作機械100の駆動部(例えばサーボモータ)を制御することにより、工作機械100の可動部の移動を制御する。数値制御装置10は、記憶部11と、プログラム解析部12と、指令経路生成部14と、駆動制御部16とを備える。
【0014】
数値制御装置10(記憶部11を除く)は、例えば、DSP(Digital Signal Processor)、FPGA(Field-Programmable Gate Array)等の演算プロセッサで構成される。数値制御装置10の各種機能は、例えば記憶部11に格納された所定のソフトウェア(プログラム)を実行することで実現される。数値制御装置10の各種機能は、ハードウェアとソフトウェアとの協働で実現されてもよいし、ハードウェア(電子回路)のみで実現されてもよい。
【0015】
一方、数値制御装置10における記憶部11は、例えばEEPROM等の書き換え可能なメモリである。記憶部11は、上述した数値制御装置10の各種機能を実行するための所定のソフトウェア(プログラム)を格納する。また、記憶部11は、例えば外部から入力された加工プログラムを格納する。加工プログラムは、ブロック単位で工作機械100の可動部の移動経路(例えば、現在位置から終点位置までの移動量)に関する指令を含み、かつ、工作機械100の可動部の移動速度(例えば、目標の最大速度)に関する指令を含む。
【0016】
プログラム解析部12は、記憶部11に格納された加工プログラムを解析し、移動経路および移動速度に関する指令を1ブロックずつ読み出す。
【0017】
指令経路生成部14は、プログラム解析部12によって読み出された移動経路に関する指令に基づいて、移動経路上の点を補間周期で補間した移動経路である指令経路を生成する。また、指令経路生成部14は、生成した指令経路、加減速時定数に基づく加減速度、移動速度の最大速度に関する指令に基づいて指令速度(移動速度パターン)を生成する。指令経路生成部14は、指令速度(移動速度パターン)を、工作機械100の駆動部(例えば、X軸用サーボモータ、Y軸用サーボモータ、Z軸用サーボモータ)ごとに生成する。
【0018】
駆動制御部16は、指令経路生成部14によって生成された指令経路および指令速度(移動速度パターン)に基づいて、工作機械100の駆動部を制御することにより、指令経路に沿って工作機械100の可動部を移動させる順行運転を行う。駆動制御部16は、工作機械100の駆動部(例えば、X軸用サーボモータ、Y軸用サーボモータ、Z軸用サーボモータ)ごとに複数備えられてもよい。駆動制御部16は、例えばサーボ制御部であり、指令経路および指令速度(移動速度パターン)に基づく位置指令と、サーボモータに設けられたエンコーダによって検出された位置フィードバックとに基づいて、サーボモータの駆動制御を行う。
【0019】
ここで、工作機械100の可動部を指令経路に沿って移動させるときに何らかの問題が発生した場合、指令経路を逆行させて可動部を戻すことがある。例えば、上述した問題が加工不足である場合、指令経路を逆行させて可動部を戻した後、再度指令経路に沿って可動部を移動させて加工を行うことが考えられる。この場合、実際に通過する実経路であって、指令経路に沿った順行実経路と指令経路を逆行する逆行実経路とが同一であれば、指令経路を逆行させる際にも加工を行うことができ、加工効率を向上することができる。
【0020】
しかし、
図2Bに示すように、指令経路Pが非直線経路(
図2Bの例では、移動方向が90度変化する部分)を含み、かつ、指令速度が比較的に速い場合、非直線経路において、実経路Pactfが指令経路Pからずれることがある。より具体的には、実経路Pactfが指令経路Pよりも大回りすることがある。この場合、非直線経路において、順行実経路Pactfにおける大回り発生箇所と逆行実経路Pactbにおける大回り発生箇所とが異なることにより、順行実経路Pactfと逆行実経路Pactbとがずれてしまうことがある。
【0021】
実経路Pactfが指令経路Pよりも大回りすることは、工作機械100の伝達特性の影響である。そこで、
図2Aに示すように、工作機械100の伝達特性を考慮した逆行指令を生成することにより、順行実経路Pactfと逆行実経路Pactbとのずれを低減することを考案する。
【0022】
そこで、本実施形態では、数値制御装置10は、更に、機械モデル生成部22と、順行実経路予測部24と、逆行指令経路生成部26と、逆行実経路予測部28と、指令速度調整部30とを備える。
【0023】
機械モデル生成部22は、工作機械100の伝達特性、より具体的には工作機械100の駆動部および可動部の伝達特性に基づいて、システム同定を行い、機械モデルを生成する。システム同定の手法としては、公知の種々の手法を用いることができる。以下に、伝達特性の周波数特性に基づいて、状態空間モデルを生成する場合の一例(システム同定の手法としては、公知の予測誤差法、相関法などが用いられればよい)について説明する。
【0024】
機械モデル生成部22は、工作機械100の伝達特性の周波数特性を予め取得しておく。機械モデル生成部22は、工作機械100の伝達特性の周波数特性に基づいて、システム同定を行い、以下の状態空間モデルを生成する。
x[t+1]=Ax[t]+Bu[t]
y[t]=Cx[t]+Du[t]
ここで、A、B、C、Dは状態空間行列の係数であり、x[t]は状態ベクトルであり、u[t]は入力ベクトルであり、y[t]は出力ベクトルである。
【0025】
この状態空間モデルにおいて、入力ベクトルu[t]として、指令経路Pをサンプリングした軌跡データl[t]を与えれば、出力ベクトルy[t]として、実経路Pactfの実軌跡データlact[t]が得られる。これにより、機械モデル生成部22は、以下の機械モデルを生成する。
x[t+1]=Ax[t]+Bl[t]
lact[t]=Cx[t]+Dl[t]
以下では、
図2Aおよび
図2Bにおける非直線部分Aであって、順行実経路Pactfと逆行実経路Pactbとの誤差が生じる範囲Aに注目して説明する。
【0026】
順行実経路予測部24は、上記の機械モデルを用いて、指令経路から順行実経路を予測する。例えば、
図2Aおよび
図3Aに示すように、移動方向が90度変化する非直線経路の指令経路Pについて考える。この指令経路Pを時間tでサンプリングした軌跡データをl[t]とする。順行実経路予測部24は、
図3Bに示すように、上記の機械モデルを用いて、指令経路Pの軌跡データl[t]から、順行実経路Pactfの実軌跡データlact[t]を予測する。そして、順行実経路予測部24は、
図3Cに示すように、実軌跡データlact[t]をブロック(N021~N024)ごとに結合して、順行実経路Pactfを予測する。
【0027】
逆行指令経路生成部26は、
図3Dに示すように、順行実経路Pactfの移動方向を反転することにより、逆行指令経路Pbを生成する(ブロック:N021~N024)。
【0028】
ここで、指令速度が比較的に速いと、非直線経路において、逆行実経路Pactbも逆行指令経路Pbからずれることがある。より具体的には、逆行実経路Pactbが逆行指令経路Pbよりも大回りすることがある。
【0029】
そこで、逆行実経路予測部28は、上記の機械モデルを用いて、逆行指令経路から逆行実経路を予測する。例えば、
図4Aに示すように、逆行指令経路Pbをサンプリングした軌跡データをl[t]とする。逆行実経路予測部28は、
図4Aに示すように、上記の機械モデルを用いて、逆行指令経路Pbの軌跡データl[t]から、逆行実経路Pactbの実軌跡データlact[t]を予測する。
【0030】
指令速度調整部30は、逆行指令経路Pbに対する逆行実経路Pactbの誤差を低減するように、指令速度(移動速度パターン)における加速度時定数を調整して、逆行指令速度を生成する。指令速度調整部30は、工作機械100の駆動部(例えば、X軸用サーボモータ、Y軸用サーボモータ、Z軸用サーボモータ)ごとに、指令速度(移動速度パターン)を調整した逆行指令速度(移動速度パターン)を生成する。
【0031】
例えば、
図4Bに示すように、逆行指令経路Pbは、逆行指令経路Pbを時間tでサンプリングした複数の軌跡データl[t]を含むとする。また、逆行実経路Pactbは、逆行指令経路Pbの複数の軌跡データl[t]にそれぞれ対応する複数の実軌跡データlact[t]を含むとする。
【0032】
指令速度調整部30は、
・逆行指令経路Pbの軌跡データl[t]間のユークリッド距離d
l[t]、および、逆行実経路Pactbの実軌跡データlact[t]間のユークリッド距離d
lact[t]を算出し、
・逆行指令経路Pbの軌跡データl[t]に対する逆行実経路Pactbの実軌跡データlact[t]の誤差が所定値以上である範囲Aにおける、逆行指令経路Pbの
軌跡データl[t]間のユークリッド距離d
l[t]の総和と逆行実経路Pactbの
実軌跡データlact[t]間のユークリッド距離d
lact[t]の総和とから移動量の差を算出し、
・移動量の差、指令速度(移動速度パターン)における最大速度vおよび加減速時定数τに基づく下記(1)式により、調整加減速時定数τaを算出し、
・
図4Cに示すように、逆行指令経路Pbの軌跡データl[t]に対する逆行実経路Pactbの実軌跡データlact[t]の誤差が所定値以上である範囲Aを含むブロックの1つ前のブロックにおける指令速度(移動速度パターン)の加減速時定数τを、調整加減速時定数τaに調整した逆行指令速度(移動速度パターン)を生成する。
【数4】
ここで、iはインクリメント変数であり、nはインクリメント変数の最大値であり、範囲Aにおける軌跡データの数を示す。
【0033】
例えば、
図4Cでは、横方向をX軸、縦方向をY軸とすると、1つ前のブロックでは、可動部は、X軸用サーボモータの速度とY軸用モータの速度との合成速度で、右斜め下方向に移動する。ここで、各軸の加速度時定数が大きくなると、合成速度で移動する時間が短くなり、合成速度に到達するまでの速度変化が緩やかになる。つまり、Σd
l<Σd
lactの関係となるとき、両軸サーボモータの加減速時定数が大きくなるように調整が行われ、それによって加減速が緩やかになり、逆行実軌跡の大回りが抑制されることとなる(加減速が緩やかになると、サーボモータの追従性が高まる)。
【0034】
駆動制御部16は、例えば逆行運転を行う旨の指令に応じて、逆行指令経路生成部26によって生成された逆行指令経路、および、指令速度調整部30によって調整された逆行指令速度(移動速度パターン)に基づいて、工作機械100の駆動部を制御することにより、指令経路を逆行するように工作機械100の可動部を移動させる逆行運転を行う。駆動制御部16は、例えば、逆行指令経路および逆行指令速度(移動速度パターン)に基づく位置指令と、サーボモータに設けられたエンコーダによって検出された位置フィードバックとに基づいて、サーボモータの駆動制御を行う。
【0035】
以上説明したように、本実施形態の工作機械の数値制御装置10によれば、
・工作機械100の伝達特性に関する機械モデルを用いて、指令経路から順行実経路を予測し、
・予測した順行実経路から逆行指令経路を生成し、
・機械モデルを用いて、逆行指令経路から逆行実経路を予測し、
・逆行指令経路と予測した逆行実経路との誤差を低減するように、換言すれば、逆行実経路が逆行指令経路に近づくように、指令速度(移動速度パターン)を調整した逆行指令速度を生成するので、
工作機械100の可動部の順行実経路と逆行実経路とのずれを低減することができる。これにより、指令経路を逆行させる際にも加工を行うことができ、加工効率を向上することができる。また、このように往復加工を行う際の加工精度を向上することができる。
【0036】
(変形例1)
上述した実施形態では、指令速度調整部30は、逆行指令経路Pbに対する逆行実経路Pactbの誤差を低減するように、指令速度(移動速度パターン)の加減速時定数τを、調整加減速時定数τaに調整した逆行指令速度(移動速度パターン)を生成した。これに対して、変形例1では、指令速度調整部30は、逆行指令経路Pbに対する逆行実経路Pactbの誤差を低減するように、指令速度(移動速度パターン)の最大速度vを、調整最大速度vaに調整した逆行指令速度(移動速度パターン)を生成してもよい。
【0037】
指令速度調整部30は、
・上述同様に、逆行指令経路Pbの軌跡データl[t]間のユークリッド距離d
l[t]、および、逆行実経路Pactbの実軌跡データlact[t]間のユークリッド距離d
lact[t]を算出し、
・逆行指令経路Pbの軌跡データl[t]に対する逆行実経路Pactbの実軌跡データlact[t]の誤差が所定値以上である範囲Aにおける、逆行指令経路Pbの
軌跡データl[t]間のユークリッド距離d
l[t]の総和と逆行実経路Pactbの
実軌跡データlact[t]間のユークリッド距離d
lact[t]の総和とから減速率を算出し、
・指令速度(移動速度パターン)における最大速度vに減速率を乗算する下記(2)式により、調整最大速度vaを算出し、
・
図5Aに示すように、逆行指令経路Pbの軌跡データl[t]に対する逆行実経路Pactbの実軌跡データlact[t]の誤差が所定値以上である範囲Aを含むブロックの1つ前のブロックにおける指令速度(移動速度パターン)の最大速度vを、調整最大速度vaに調整した逆行指令速度(移動速度パターン)を生成する。
【数5】
ここで、iはインクリメント変数であり、nはインクリメント変数の最大値であり、範囲Aにおける軌跡データの数を示す。
【0038】
例えば、
図5Aでは、横方向をX軸、縦方向をY軸とすると、1つ前のブロックでは、可動部は、X軸用サーボモータの速度とY軸用モータの速度との合成速度で、右斜め下方向に移動する。ここで、逆行指令経路と逆行実経路の誤差が大きくなるほど、最大速度が小さくなる。つまり、Σd
l<Σd
lactの関係でかつその差が大きくなるほど、調整最大速度vaの値は小さくなる。これによって逆行実軌跡の大回りが抑制されることとなる。
【0039】
(変形例2)
上述した変形例1では、指令速度調整部30は、逆行指令経路Pbの軌跡データl[t]間のユークリッド距離dl[t]の総和と逆行実経路Pactbの実軌跡データlact[t]間のユークリッド距離dlact[t]の総和とから、指令速度(移動速度パターン)における最大速度vの減速率を算出した。これに対して、変形例2では、逆行指令経路Pbの軌跡データl[t]に対する逆行実経路Pactbの実軌跡データlact[t]の誤差のユークリッド距離derr[t]が最大となるポイントi=kにおける最大誤差のユークリッド距離derr[t+k]と、それに対応する逆行指令経路Pbの軌跡データl[t+k]間のユークリッド距離dl[t+k]とから減速率を算出してもよい。
【0040】
指令速度調整部30は、
・
図5Bに示すように、逆行指令経路Pbの軌跡データl[t]間のユークリッド距離d
l[t]、および、逆行指令経路Pbの軌跡データl[t]と逆行実経路Pactbの実軌跡データlact[t]との誤差のユークリッド距離d
err[t]を算出し、
・逆行指令経路Pbの軌跡データl[t]に対する逆行実経路Pactbの実軌跡データlact[t]の誤差が所定値以上である範囲Aにおいて、同じ方向に発生する誤差のユークリッド距離d
err[t]が最大となるポイントi=kを求め(
図5Bの例では、i=k=2)、
・最大の誤差のユークリッド距離d
err[t+k]とそれに対応する逆行指令経路Pbの
軌跡データl[t+k]間のユークリッド距離d
l[t+k]とから減速率を算出し、
・指令速度(移動速度パターン)における最大速度vに減速率を乗算する下記(3)式により、調整最大速度vaを算出し、
・
図5Bに示すように、逆行指令経路Pbの軌跡データl[t]に対する逆行実経路Pactbの軌跡データlact[t]の誤差の方向が反転する直前の軌跡データを含むブロックにおける指令速度(移動速度パターン)の最大速度vを、調整最大速度vaに調整した逆行指令速度(移動速度パターン)を生成する。
【数6】
ここで、iはインクリメント変数であり、nはインクリメント変数の最大値であり、範囲Aにおける軌跡データの数を示す。また、0≦k(i)≦n。
【0041】
この変形例2でも、上述した変形例1と同様の利点を得ることができる。
【0042】
また、上述した実施形態および変形例の数値制御装置10によれば、以下のような効果を奏する。
・同じ経路を繰り返し加工するような工作機械において、順行と逆行との精度が合う。
・プログラム途中で折返して加工することができる。
・何らかの問題が発生した場合に、工具を退避させずに逆行させて、工具を戻すことができる。例えば、工具を自由に動かせないような状況でも、工具を退避させることなく、順行してきた経路を逆行させて、工具を戻すことができる。
【0043】
以下では、上述した実施形態および変形例の数値制御装置10を好適に適用可能な工作機械の一例を挙げる。
【0044】
(切断加工)
図6は、プラズマ加工機またはガス切断機による切断加工の一例を示す図である。
図6では、ワークWを切断加工するプラズマ加工機またはガス切断機の可動部に搭載される切断機Tが示されている。このようなプラズマ加工機またはガス切断機による切断加工において、一度の順行加工ではワークWを切断できない場合がある。このような場合、切断機Tを逆行させて戻す際にも逆行加工を行うことができ、加工効率を向上することができる。また、非直線経路(例えばコーナ部)を含む加工経路であっても、往復加工を行う際の加工精度を向上することができる。
【0045】
(溶接加工)
図7は、レーザ加工機による溶接加工の一例を示す図である。
図7では、ワークWを溶接加工するレーザ加工機の可動部に搭載されるレーザTが示されている。このようなレーザ加工機による溶接加工において、ワークWの継手箇所の強度を高めるために、ワークWの溶接個所を2回以上溶接加工する場合がある。このような場合、レーザTを逆行させて戻す際にも逆行加工を行うことができ、加工効率を向上することができる。また、非直線経路(例えばコーナ部)を含む加工経路であっても、往復加工を行う際の加工精度を向上することができる。
【0046】
(レーザフォーミング加工)
図8は、レーザ加工機によるレーザフォーミング加工の一例を示す図である。
図8では、ワークWをレーザフォーミング(曲げ)加工するレーザ加工機の可動部に搭載されるレーザTが示されている。レーザ加工機によるレーザフォーミング加工では、ワークWにおける同一の加工箇所におけるレーザ光照射回数が大きくなるほど、ワークWの加工箇所の曲げ角度が大きくなる特性を有する。このようなレーザ加工機によるレーザフォーミング加工において、レーザTの順行加工に加えて、レーザTを逆行させて戻す際にも逆行加工を行うことができ、加工効率を向上することができる。
【0047】
ここで、レーザ加工機によるレーザフォーミング加工では、ワークWを3次元形状に加工するためのレーザ光照射経路は、直線経路だけでなく、複雑な非直線経路を含む場合がある。このように複雑な非直線経路を含む加工経路であっても、往復加工を行う際の加工精度を向上することができる。
【0048】
以上、本発明の実施形態について説明したが、本発明は上述した実施形態に限定されることなく、種々の変更及び変形が可能である。例えば、上述した実施形態では、工作機械の数値制御装置であって、加工プログラムに基づいて工作機械の駆動部の移動を制御し、ワークに対する工具を相対的に移動してワークの加工を行う数値制御装置について説明した。しかし、本発明の特徴は、これに限定されず、ロボット等の種々の産業機械の制御装置であって、プログラムに基づいて産業機械の駆動部の移動を制御する種々の制御装置に適用可能である。
【符号の説明】
【0049】
10 数値制御装置(制御装置)
11 記憶部(プログラム)
12 プログラム解析部
14 指令経路生成部
16 駆動制御部
22 機械モデル生成部
24 順行実経路予測部
26 逆行指令経路生成部
28 逆行実経路予測部
30 指令速度調整部
100 工作機械(可動部、駆動部)(産業機械)