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

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

▶ 東芝機械株式会社の特許一覧

<>
  • 特許-数値制御装置および工作機械 図1
  • 特許-数値制御装置および工作機械 図2
  • 特許-数値制御装置および工作機械 図3
  • 特許-数値制御装置および工作機械 図4
  • 特許-数値制御装置および工作機械 図5
  • 特許-数値制御装置および工作機械 図6
  • 特許-数値制御装置および工作機械 図7
  • 特許-数値制御装置および工作機械 図8
  • 特許-数値制御装置および工作機械 図9
  • 特許-数値制御装置および工作機械 図10
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-01-12
(45)【発行日】2024-01-22
(54)【発明の名称】数値制御装置および工作機械
(51)【国際特許分類】
   G05B 19/4061 20060101AFI20240115BHJP
   G05B 19/416 20060101ALI20240115BHJP
【FI】
G05B19/4061 Z
G05B19/416 Q
【請求項の数】 12
(21)【出願番号】P 2019201502
(22)【出願日】2019-11-06
(65)【公開番号】P2021076966
(43)【公開日】2021-05-20
【審査請求日】2022-08-09
(73)【特許権者】
【識別番号】000003458
【氏名又は名称】芝浦機械株式会社
(74)【代理人】
【識別番号】100091982
【弁理士】
【氏名又は名称】永井 浩之
(74)【代理人】
【識別番号】100091487
【弁理士】
【氏名又は名称】中村 行孝
(74)【代理人】
【識別番号】100105153
【弁理士】
【氏名又は名称】朝倉 悟
(74)【代理人】
【識別番号】100118843
【弁理士】
【氏名又は名称】赤岡 明
(74)【代理人】
【識別番号】100141830
【弁理士】
【氏名又は名称】村田 卓久
(74)【代理人】
【識別番号】100213654
【弁理士】
【氏名又は名称】成瀬 晃樹
(72)【発明者】
【氏名】佐賀 千尋
【審査官】山本 忠博
(56)【参考文献】
【文献】特開2014-164542(JP,A)
【文献】特開2006-195862(JP,A)
【文献】特開2018-103345(JP,A)
【文献】特開平08-057738(JP,A)
【文献】特開2012-058976(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05B 19/18-19/416,19/42-19/46;
B23Q 15/00-15/28;
B25J 1/00-21/02
(57)【特許請求の範囲】
【請求項1】
移動物を移動させる駆動機構を制御する数値制御装置であって、
前記移動物から該移動物と干渉する干渉物までの距離を検出する距離センサから、前記距離を取得する距離情報取得部と、
前記距離センサの分解能、前記距離の取得周期、前記距離および前記移動物の移動速度に基づいて、前記移動物が前記干渉物に異常接近しているか否かを判定し、判定結果に応じて、前記移動物の移動速度より低い制限速度を演算する速度制限部とを備え
前記速度制限部は、
前記移動物の移動速度に基づいて、前記距離の取得周期の間に前記移動物が移動する移動距離と、前記移動物が減速して停止するまでに移動する停止距離とを演算し、
前記分解能、前記距離、前記移動距離および前記停止距離の大小関係に基づいて、前記移動物が前記干渉物に異常接近しているか否かを判定する、数値制御装置。
【請求項2】
前記速度制限部は、前記移動距離をKnとし、前記距離をKsとし、前記停止距離をKaとし、所定係数をmとし、前記分解能をBsとすると、次の式が成立する場合、
Kn>Ks-(Ka×m)-Bs
前記移動物が前記干渉物に異常接近していると判定する、請求項に記載の数値制御装置。
【請求項3】
前記速度制限部は、前記移動物が前記干渉物に異常接近している場合、前記分解能、前記距離の取得周期、前記距離および前記移動物の移動速度に基づいて、前記制限速度を演算する、請求項1または請求項2に記載の数値制御装置。
【請求項4】
前記速度制限部は、前記分解能、前記距離、前記移動物が前記制限速度に減速するまでに移動する減速距離、前記移動物が前記制限速度で移動する制限移動距離、および、前記移動物が前記制限速度から減速して停止するまでに移動する制限停止距離の大小関係に基づいて、前記制限速度を演算する、請求項に記載の数値制御装置。
【請求項5】
前記速度制限部は、前記距離をKsとし、前記分解能をBsとし、前記減速距離をKdとし、前記制限移動距離をKn1とし、前記制限停止距離をKa1とすると、次の式を満たす前記制限速度を演算する、
Ks-Bs>Kd+Kn1+Ka1
請求項に記載の数値制御装置。
【請求項6】
前記移動物が前記制限速度で移動する制限移動時間は、前記距離の取得周期から、前記移動物が前記制限速度に減速するまでの減速時間を引いた時間である、請求項または請求項に記載の数値制御装置。
【請求項7】
前記速度制限部は、前記距離の取得周期よりも短い周期ごとに前記移動物の移動速度から所定値を引き、前記制限速度を演算する、請求項から請求項のいずれか一項に記載の数値制御装置。
【請求項8】
前記速度制限部は、前記移動物の移動速度を前記制限速度に制限し、制限後の前記距離に応じて前記移動物の移動速度を変化させる、請求項から請求項のいずれか一項に記載の数値制御装置。
【請求項9】
前記速度制限部は、制限後の前記距離が制限前の前記距離より長い場合、前記移動物の移動速度の制限を停止する、請求項に記載の数値制御装置。
【請求項10】
前記速度制限部は、制限後の前記距離が前記制限停止距離および前記分解能の和より長く、制限前の前記距離以下である場合、前記制限速度を再度演算する、請求項に記載の数値制御装置。
【請求項11】
前記速度制限部は、制限後の前記距離が前記制限停止距離および前記分解能の和以下である場合、前記移動物を減速停止させる、請求項に記載の数値制御装置。
【請求項12】
移動物を移動させる駆動機構と、
前記移動物から該移動物と干渉する干渉物までの距離を検出する距離センサと、
前記駆動機構を制御する数値制御装置とを備え、
前記数値制御装置は、
前記距離センサから前記距離を取得する距離情報取得部と、
前記距離センサの分解能、前記距離の取得周期、前記距離および前記移動物の移動速度に基づいて、前記移動物が前記干渉物に異常接近しているか否かを判定し、判定結果に応じて、前記移動物の移動速度より低い制限速度を演算する速度制限部とを有し、
前記速度制限部は、
前記移動物の移動速度に基づいて、前記距離の取得周期の間に前記移動物が移動する移動距離と、前記移動物が減速して停止するまでに移動する停止距離とを演算し、
前記分解能、前記距離、前記移動距離および前記停止距離の大小関係に基づいて、前記移動物が前記干渉物に異常接近しているか否かを判定する、工作機械。
【発明の詳細な説明】
【技術分野】
【0001】
本発明による実施形態は、数値制御装置および工作機械に関する。
【背景技術】
【0002】
工作機械は、例えば、主軸に装着された工具を用いてワークを加工する。工作機械の数値制御装置(以下、NC(Numerical Controller)装置ともいう)は、主軸に指令を出力し、該主軸の動作を制御する。例えば、NCプログラムのミスや操作ミスなどにより、工具がワークや治具などと衝突してしまう可能性がある。この衝突は、工具干渉と呼ばれる。一般に、干渉チェック(干渉判定)は、各軸の+および-のリミット座標の指定により行われる。
【0003】
しかし、リミット座標の指定では、干渉領域は単純化されてしまう。この場合、主軸が実際には動作可能な領域も干渉領域と判定されてしまう可能性がある。また、干渉領域は、主軸が最大送り速度から減速して停止するまでの距離が考慮される場合がある。この場合、主軸が実際の加工速度から減速して安全に停止できる領域も干渉領域と判断されてしまう可能性がある。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2012-58976号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
安全性を向上させることができる数値制御装置および工作機械を提供することを目的とする。
【課題を解決するための手段】
【0006】
本実施形態による数値制御装置は、移動物を移動させる駆動機構を制御する数値制御装置であって、移動物から該移動物と干渉する干渉物までの距離を検出する距離センサから、距離を取得する距離情報取得部と、距離および移動物の移動速度に基づいて、移動物が干渉物に異常接近しているか否かを判定し、判定結果に応じて、移動物の移動速度より低い制限速度を演算する速度制限部とを備え、速度制限部は、移動物の移動速度に基づいて、距離の取得周期の間に移動物が移動する移動距離と、移動物が減速して停止するまでに移動する停止距離とを演算し、分解能、距離、移動距離および停止距離の大小関係に基づいて、移動物が干渉物に異常接近しているか否かを判定する
【図面の簡単な説明】
【0007】
図1】第1実施形態による工作機械の構成の一例を示すブロック図。
図2】異常接近の一例を示す図。
図3図2に示す移動距離の計算の一例を示すグラフ。
図4】異常接近の他の例を示す図。
図5図4に示す停止距離の計算の一例を示すグラフ。
図6】第1実施形態による異常接近の判定の一例を示す図。
図7】第1実施形態による異常接近の判定の一例を示すフロー図。
図8】第1実施形態による制限速度の一例を示す図。
図9】第1実施形態による制限速度の演算および減速の一例を示すフロー図。
図10】第1実施形態による制限速度の演算結果の一例を示す図。
【発明を実施するための形態】
【0008】
以下、図面を参照して本発明に係る実施形態を説明する。本実施形態は、本発明を限定するものではない。
【0009】
図面は模式的または概念的なものであり、各部分の比率などは、必ずしも現実のものと同一とは限らない。明細書と図面において、既出の図面に関して前述したものと同様の要素には同一の符号を付して詳細な説明は適宜省略する。
【0010】
(第1実施形態)
図1は、第1実施形態による工作機械100の構成の一例を示すブロック図である。工作機械100は、駆動軸1と、距離センサ2と、情報解析部3と、サーボ制御部4とを備えている。
【0011】
駆動機構としての駆動軸1は、主軸頭10を移動させる。移動物としての主軸頭10の主軸には、例えば、ワークを加工するための工具11が設けられる。従って、工作機械100は、工具11を用いてワークに切削等の加工を行う。また、駆動軸1のモータ(図示せず)には、エンコーダ5が設けられる。エンコーダ5は、例えば、モータの軸の回転を検出して主軸頭10の位置を測定する。この位置から、主軸頭10の移動速度が算出される。エンコーダ5は、主軸頭10の移動速度を情報解析部3に送る。尚、主軸頭10は、駆動軸1により移動可能であればよく、ワークやワークを載置可能なテーブルなどであってもよい。
【0012】
距離センサ2は、主軸頭10から該主軸頭10と干渉する干渉物までの干渉距離Ksを検出する。干渉物は、例えば、工具11や主軸頭10が干渉する障害物である。また、工具11の刃以外の部分がワークに接触する場合、ワークも干渉物になる。距離センサ2は、例えば、主軸頭10に設けられる。距離センサ2は、例えば、超音波やレーザを用いた距離センサである。尚、距離センサ2は、所定の分解能および更新周期で距離を検出することができればよく、例えば、カメラなどの画像から距離を検出する装置であってもよい。
【0013】
また、距離センサ2の性能は、分解能Bsおよび更新周期Tsにより表される。分解能Bsは、測定可能な測定値の幅の最小単位である。更新周期Tsは、干渉距離Ksの検出の時間間隔である。距離センサ2の更新周期Tsは、例えば、1secである。距離センサ2は、更新周期Tsごとに、情報解析部3に干渉距離Ksの検出値を送る。距離センサ2の分解能Bsおよび更新周期Tsは、例えば、パラメータとして設定され、図示しない記憶部に予め格納される。
【0014】
数値制御装置としての情報解析部3は、プログラム6に基づいて、工作機械100を制御する。情報解析部3は、駆動軸1を制御する。情報解析部3は、プログラム解析部31と、距離情報取得部32と、速度制限部33と、実行部34とを有する。
【0015】
プログラム解析部31は、プログラム6を解析し、解析情報を取得する。プログラム6は、例えば、ワークの加工プログラムである。解析情報は、例えば、主軸頭10の移動方向、移動距離、移動速度および位置などが含まれる。プログラム解析部31は、解析情報を速度制限部33に送る。
【0016】
距離情報取得部32は、距離センサ2から干渉距離Ksを取得する。距離情報取得部32による干渉距離Ksの取得周期Tsは、距離センサ2の更新周期Tsでもある。従って、以下では、更新周期Tsは、取得周期Tsと呼ばれる場合がある。距離情報取得部32は、干渉距離Ksを含む距離情報を速度制限部33に送る。
【0017】
速度制限部33は、距離センサ2の分解能Bs、干渉距離の取得周期Ts、干渉距離Ksおよび主軸頭10の移動速度Fnに基づいて、主軸頭10が干渉物に異常接近しているか否かを判定する。移動速度Fnは、例えば、エンコーダ5から速度制限部33に送られる。また、異常接近とは、主軸頭10が干渉物に接近しており、主軸頭10が安全に停止できない状態である。異常接近には、例えば、工具11が干渉物に衝突する場合や(図2を参照)、衝突を避けるために主軸頭10が急停止する必要がある場合が含まれる(図4を参照)。これにより、距離センサ2の性能を考慮して、主軸頭10(工具11)と干渉物との異常接近の判定精度を向上させることができる。従って、工作機械100の安全性を向上させることができる。尚、異常接近の詳細については、図2図5を参照して、後で説明する。
【0018】
また、速度制限部33は、主軸頭10が干渉物に異常接近している場合、距離センサ2の分解能Bs、干渉距離Ksの取得周期Ts、干渉距離Ksおよび主軸頭10の移動速度Fnに基づいて、該移動速度Fnより低い制限速度Fn1を演算する。例えば、速度制限部33は、プログラム6の解析情報と、制限速度Fn1とを比較し、主軸頭10の速度を制限する。すなわち、主軸頭10は、干渉物に異常接近した場合、減速して安全に停止する。これにより、工作機械100の安全性を向上させることができる。また、速度制限部33は、制限速度Fn1などを含む速度情報を実行部34に送る。尚、異常接近の検知および制限速度Fn1の詳細については、図6および図8を参照して、後で説明する。
【0019】
実行部34は、主軸頭10の移動速度Fnを制限速度Fn1に変更する。例えば、実行部34は、解析情報の移動速度に倍率をかけるオーバーライドにより、移動速度Fnを制限速度Fn1に変更させる。実行部34は、情報解析部3の制御周期であるサンプリング周期Tsampleごとに、速度制限部33から速度情報を受け取り、サーボ制御指令をサーボ制御部4に送る。サンプリング周期Tsampleは、例えば、1msecである。
【0020】
サーボ制御部4は、実行部34からサーボ制御指令を受けて、例えば、駆動軸1のモータのトルクを制御する。これにより、主軸頭10の移動速度Fnが制限速度Fn1に変更される。
【0021】
尚、情報解析部3を構成するプログラム解析部31と、距離情報取得部32と、速度制限部33と、実行部34とは、一つのCPU(Central Processing Unit)で実現されてもよく、それぞれ個別のCPUで実現されていてもよい。また、サーボ制御部4は、情報解析部3の一部であってもよい。
【0022】
次に、図2図5を参照して、異常接近について説明する。
【0023】
図2は、異常接近の一例を示す図である。図2は、第1実施形態による異常接近の判定が行われず、主軸頭10の工具11が干渉物と衝突する場合の例を示す。Ksは、工具11から干渉物までの干渉距離を示す。Knは、距離センサ2の更新周期Tsの間に主軸頭10が移動する距離を示す。移動距離Knは、距離センサ2の次の更新周期Tsまでに主軸頭10が移動速度Fnで移動する距離でもある。
【0024】
図3は、図2に示す移動距離Knの計算の一例を示すグラフである。縦軸は主軸頭10の移動速度を示し、横軸は時間を示す。従って、グラフの面積は、主軸頭10の移動距離を示す。
【0025】
図3に示すように、四角形の面積である移動距離Knは、移動速度Fnおよび更新周期Tsを用いて、式1により表される。
Kn=Fn×Ts (式1)
図2に示す例では、Ks<Knである。従って、次の更新周期Tsにおいて主軸頭10は、干渉物に衝突する。
【0026】
図4は、異常接近の他の例を示す図である。図4は、第1実施形態による異常接近の判定が行われず、主軸頭10が急停止しなければ衝突してしまう場合の例を示す。Kaは、主軸頭10が移動速度Fnから減速して停止するまでに移動する停止距離を示す。尚、移動距離Knは、図2および図3と同様でよい。
【0027】
図5は、図4に示す停止距離Kaの計算の一例を示すグラフである。縦軸は主軸頭10の移動速度を示し、横軸は時間を示す。従って、グラフの面積は、主軸頭10の移動距離を示す。Ffは、主軸頭10の最大速度を示す。Tfは、加減速時間を示す。Taは、主軸頭10が移動速度Fnから減速して停止するまでの停止時間を示す。
【0028】
図5に示すように、三角形の面積である停止距離Kaは、移動速度Fnおよび停止時間Taを用いて、Ka=Fn×Ta/2と表される。また、図5から、Ta=Tf×(Fn/Ff)である。従って、停止距離Kaは、式2により表される。
Ka=Fn×Tf×(Fn/Ff)/2 (式2)
図4に示す例では、Ks<Kn+Kaである。従って、主軸頭10は、次の更新周期Ts後の減速中に干渉物に衝突する。また、主軸頭10は、衝突を避けるために急停止する必要がある。この場合、工作機械100に大きな負荷がかかり、工作機械100の寿命が短くなってしまう。尚、Afを工作機械100で設定される主軸頭10の加速度とすると、Af=Fn/Taから、Ta=Fn/Afである。従って、停止距離Kaは、式3により表されてもよい。
Ka=Fn×(Fn/Af)/2 (式3)
【0029】
次に、図6を参照して、速度制限部33による異常接近の検知について説明する。
【0030】
図6は、第1実施形態による異常接近の判定の一例を示す図である。Bsは、距離センサ2の分解能を示す。図6のグラフの縦軸は主軸頭10の移動速度を示し、横軸は時間を示す。尚、グラフの面積である主軸頭10の移動距離は、グラフの上に示す模式図における矢印の長さに対応する。
【0031】
図6に示す例では、図4に示す場合よりも移動距離Knが短くなっている。また、図6は、Ks=Kn+Ka+Bsの場合を示す。この場合、主軸頭10は、次の更新周期Tsの経過後に減速し、干渉物から分解能Bsだけ手前で停止する。
【0032】
速度制限部33は、主軸頭10の移動速度Fnに基づいて、干渉距離Ksの取得周期Tsの間に主軸頭10が移動する移動距離Knと、主軸頭10が減速して停止するまでに移動する停止距離Kaとを演算する。速度制限部33は、例えば、図6のグラフに示す面積を演算する。移動距離Knおよび停止距離Kaの演算方法は、それぞれ図3(式1)および図5(式2または式3)と同様でよい。
【0033】
また、速度制限部33は、距離センサ2の分解能Bs、干渉距離Ks、移動距離Knおよび停止距離Kaの大小関係に基づいて、主軸頭10が干渉物に異常接近しているか否かを判定する。より詳細には、速度制限部33は、移動距離をKnとし、干渉距離をKsとし、停止距離をKaとし、所定係数をmとし、距離センサ2の分解能をBsとすると、次の式4が成立する場合、
Kn>Ks-(Ka×m)-Bs (式4)
主軸頭10が干渉物に異常接近していると判定する。所定係数mの係数は、安全マージンとして、任意に設定されればよい。式4の右辺Ks-(Ka×m)-Bsは、衝突の可能性がある、更新周期Ts後の主軸頭10の移動距離である。
【0034】
式4が成立する場合、次の更新周期Tsにおいて、主軸頭10が安全に停止できない可能性がある。従って、速度制限部33は、主軸頭10が干渉物に異常接近していると判定する。一方、式4が成立しない場合、主軸頭10は安全に停止することができる。従って、速度制限部33は、主軸頭10は干渉物に異常接近していないと判断する。
【0035】
また、速度制限部33は、所定周期ごとに、主軸頭10が干渉物に異常接近しているか否かを判定する。所定周期は、例えば、干渉距離Ksの取得周期Tsである。
【0036】
図7は、第1実施形態による異常接近の判定の一例を示すフロー図である。
【0037】
まず、速度制限部33は、更新周期Tsおよび分解能Bsを取得する(S10)。更新周期Tsおよび分解能Bsは、例えば、図示しない記憶部から得られる。
【0038】
次に、速度制限部33は、移動速度Fnおよび干渉距離Ksを取得する(S20)。移動速度Fnおよび干渉距離Ksは、それぞれ、エンコーダ5および距離情報取得部32から得られる。
【0039】
次に、速度制限部33は、移動距離Knおよび停止距離Kaを演算する(S30)。
【0040】
次に、速度制限部33は、式4が成立するか否かを判定する(S40)。式4が成立しない場合(S40のNO)、速度制限部33は、主軸頭10は干渉物に異常接近していないと判断する。この場合、速度制限部33は、ステップS20を再び実行する。従って、速度制限部33は、式4が成立するまで、更新周期Tsごとに、ステップS20~S40を繰り返し実行する。一方、式4が成立する場合(S40のYES)、速度制限部33は、主軸頭10が干渉物に異常接近していると判定する(S50)。
【0041】
次に、図8図10を参照して、速度制限部33による速度制限について説明する。尚、以下では、移動速度Fnは、異常接近の判定時における現在の移動速度(現在速度)Fnと呼ばれる場合もある。
【0042】
図8は、第1実施形態による制限速度Fn1の一例を示す図である。Kdは、主軸頭10が現在速度Fnから制限速度Fn1に減速するまで移動する減速距離を示す。Tdは、主軸頭10が現在速度Fnから制限速度Fn1に減速するまでの減速時間を示す。Kn1は、主軸頭10が制限速度Fn1で移動する制限移動距離を示す。Tn1は、主軸頭10が制限速度Fn1で移動する制限移動時間を示す。Ka1は、主軸頭10が制限速度Fn1から減速して停止するまでに移動する制限停止距離を示す。Ta1は、主軸頭10が制限速度Fn1から減速して停止するまでの制限停止時間を示す。
【0043】
図8に示す例では、現在速度Fnは、制限速度Fn1に減速される。また、図8は、Ks=Kd+Kn1+Ka1+Bsの場合を示す。この場合、主軸頭10は、制限速度Fn1に減速し、次の更新周期Tsにおいてさらに減速して干渉物から分解能Bsだけ手前で停止すると仮定される。また、図8に示す更新周期Tsは、Ts=Td+Tn1の関係を有する。この場合、制限移動時間Tn1は、Ts-Tdである。すなわち、制限移動時間Tn1は、干渉距離Ksの取得周期Tsから減速時間Tdを引いた時間である。図8におけるt1およびt2は、それぞれ或る更新周期Tsの開始時および終了時を示す。例えば、t1において、異常接近の判定後、現在速度Fnから減速が開始される。減速時間Tdの経過後、主軸頭10は、制限速度Fn1で制限移動時間Tn1の間移動を継続する。その後、後で説明するように、t2において、主軸頭10の移動速度は、減速後の干渉距離Ks2に応じて変更される。
【0044】
速度制限部33は、距離センサ2の分解能Bs、干渉距離Ks、減速距離Kd、制限移動距離Kn1、および、制限停止距離Ka1の大小関係に基づいて、制限速度Fn1を演算する。より詳細には、速度制限部33は、干渉距離をKsとし、距離センサ2の分解能をBsとし、減速距離をKdとし、制限移動距離をKn1とし、制限停止距離をKa1とすると、次の式5を満たす制限速度Fn1を演算する。
Ks-Bs>Kd+Kn1+Ka1 (式5)
減速距離Kd、制限移動距離Kn1および制限停止距離Ka1は、図8のグラフに示す面積から算出される。尚、制限速度Fn1の演算および図8のグラフに示すfの詳細については、図9を参照して、後で説明する。
【0045】
式5が成立しない場合、減速が足りずに主軸頭10が干渉物に衝突する可能性がある。一方、式5が成立する場合、主軸頭10は、干渉物から分解能Bsよりも離れた位置で安全に停止することができる。これにより、急停止や急減速による工作機械100への負荷を抑制することができる。また、主軸頭10は、減速により、干渉物に対してより接近することができる。この結果、主軸頭10が干渉物に対してより近づくことができ、より長い軸移動量でワークを加工することができる。
【0046】
また、速度制限部33は、主軸頭10の移動速度を制限速度Fn1に制限し、制限後の干渉距離Ks2に応じて主軸頭10の移動速度を変化させる。以下では、「制限後の干渉距離Ks2」は、「減速後の干渉距離Ks2」とも呼ばれる場合がある。ここで、制限速度Fn1は加工プログラムとは無関係に演算され、また、上記のように、オーバーライドにより減速が行われる。例えば、減速が実行される或る更新周期Ts中にプログラム上の動作に変化がない場合、主軸頭10は、式5を満たすように、t2において干渉物からほぼ分解能Bs手前に位置する。しかし、減速が実行される或る更新周期Ts中にプログラム上の主軸頭10の移動速度や移動方向が変化する場合がある。この場合、t2における主軸頭10の位置が変化してしまう。そこで、速度制限部33は、t2において取得される減速後の干渉距離Ks2を用いて、主軸頭10の移動速度を変化させる。尚、t2における主軸頭10の移動速度の詳細については、図9を参照して、後で説明する。
【0047】
図9は、第1実施形態による制限速度Fn1の演算および減速の一例を示すフロー図である。尚、ステップS10~S50は、図7と同様である。従って、速度制限部33により異常接近と判定された場合(S50)、ステップS60以降が実行される。
【0048】
速度制限部33は、取得周期Tsよりも短い周期ごとに主軸頭10の移動速度から所定値を引き、制限速度Fn1を演算する。取得周期Tsよりも短い周期は、速度制限部33の演算周期であり、例えば、数μsecである。演算周期は、実行部34により主軸頭10の減速が行われるサンプリング周期Tsample(例えば、1msec)よりも十分に短い時間である。従って、速度制限部33は、実行部34による減速の前に、制限速度Fn1の演算を完了することができる。所定値は、例えば、主軸頭10の加速度Afとサンプリング周期Tsampleとの積Af×Tsampleである。サンプリング周期Tsampleは、上記のように、1msecであり、例えば、更新周期Tsの1000分の1である。
【0049】
例えば、速度制限部33は、処理中速度fを変数とし、演算周期ごとに処理中速度fを移動速度Fnから積Af×Tsampleだけ減少させる。これにより、速度制限部33は、式5を満たす処理中速度fを演算する。その後、速度制限部33は、制限速度Fn1に処理中速度fを代入する。また、処理中速度fは、図8のグラフに示すfに対応する。
【0050】
まず、速度制限部33は、処理中速度fに現在速度Fnを代入する。(S60)。また、速度制限部33は、 限界距離Klimに、Ks-Bsを代入してもよい。
【0051】
次に、速度制限部33は、処理中速度fから積Af×Tsampleを減少させたf-Af×Tsampleを処理中速度fに代入する(S70)。また、速度制限部33は、処理中速度fを用いて、制限停止距離Ka1および減速距離Kdを演算する(S70)。制限停止時間Ta1は、図8のグラフに示すように、Ta1=Tf×(f/Ff)=f/Afにより算出される。制限停止距離Ka1は、図8のグラフに示す三角形の面積により算出される。従って、制限停止距離Ka1は、Ka1=f×Ta1/2により算出される。同様に、減速時間Tdは、図8のグラフに示すように、Td=Tf×((Fn-f)/Ff)=(Fn-f)/Afにより算出される。減速距離Kdは、図8のグラフに示す台形の面積により算出される。従って、減速距離Kdは、Kd=(Fn+f)×Td/2により算出される。
【0052】
次に、速度制限部33は、制限移動距離Kn1を演算する(S80)。制限移動時間Tn1は、上記のように、Ts-Tdである。制限移動距離Kn1の計算は、図8のグラフに示す四角形の面積により算出される。従って、制限移動距離Kn1は、Kn1=f×(Ts-Td)により算出される。
【0053】
次に、速度制限部33は、処理中速度fが式5を満たすか否かを判定する(S90)。処理中速度fが式5を満たさない場合(S90のNO)、速度制限部33は、ステップS70を再び実行する。従って、速度制限部33は、処理中速度fが式5を満たすまで、演算周期ごとに、ステップS70~S90を繰り返し実行する。一方、処理中速度fが式5を満たす場合(S90のYES)、速度制限部33は、処理中速度fを制限速度Fn1に代入する(S100)。このように、速度制限部33は、制限速度Fn1を演算する。
【0054】
次に、実行部34(速度制限部33)は、主軸頭10を、現在速度Fnから制限速度Fn1に減速させる(S110)。
【0055】
次に、速度制限部33は、減速後の干渉距離Ks2を取得する(S120)。減速後の干渉距離Ks2は、距離情報取得部32から得られる。尚、ステップS120は、図8に示すt2において実行される。
【0056】
次に、速度制限部33は、Ks2>Ksか否かを判定する(S130)。Ks2>Ksである場合(S130のYES)、速度制限部33は、主軸頭10の移動速度を戻す(S140)。すなわち、速度制限部33は、制限後の干渉距離Ks2が制限前の干渉距離Ksより長い場合、主軸頭10の移動速度の制限を停止する。Ks2>Ksである場合、主軸頭10は、減速前の干渉距離Ksの取得時よりも干渉物から離れている。これは、例えば、プログラム上の主軸頭10の移動方向が変化したためである。従って、主軸頭10が干渉物と衝突する可能性は低い。従って、速度制限部33は、減速を止めて加工を継続させ、加工時間が無駄に延びてしまうことを抑制することができる。その後、速度制限部33は、ステップS20~S50の異常接近の判定を行う。
【0057】
一方、Ks2>Ksではない場合(S130のNO)、速度制限部33は、Ks≧Ks2>Ka1+Bsか否かを判定する(S150)。Ks≧Ks2>Ka1+Bsである場合(S150のYES)、速度制限部33は、干渉距離Ksに減速後の干渉距離Ks2を代入し、現在速度Fnに制限速度Fn1を代入する(S160)。その後、速度制限部33は、ステップS60を実行する。従って、速度制限部33は、図8に示すように、t2における制限速度Fn1をt1の現在速度Fnとして、再び制限速度Fn1を演算する。すなわち、速度制限部33は、減速後の干渉距離Ks2が制限停止距離Ka1および分解能Bsの和より長く、減速前の干渉距離Ks以下である場合、制限速度Fn1を再度演算する。Ks≧Ks2>Ka1+Bsである場合、主軸頭10は、減速前の干渉距離Ksの取得時よりも干渉物に接近してはいるものの、安全に停止することができる。従って、速度制限部33は、制限速度Fn1を再度演算して、主軸頭10の移動速度をさらに減速させる。このように、更新周期Tsごとに主軸頭10が減速する。従って、主軸頭10は、干渉物に近づくほど、安全に停止することができるように減速しつつ、加工を継続することができる。尚、ステップS160において、制限速度Fn1の代入に代えて、図7に示すステップS20と同様に、現在速度Fnを取得してもよい。
【0058】
一方、Ks≧Ks2>Ka1+Bsでない場合(ステップS150のNO)、速度制限部33(実行部34)は、主軸頭10を減速停止させる(S170)。尚、ステップS170では、ステップS130のNO、かつ、ステップS150のNOの場合であるため、Ks2≦Ka1+Bsである。すなわち、速度制限部33は、制限後の干渉距離Ks2が制限停止距離Ka1および分解能Bsの和以下である場合、主軸頭10を減速停止させる。Ks2≦Ka1+Bsである場合、主軸頭10は、干渉物に接近しているため、干渉物と衝突する可能性がある。従って、速度制限部33は、主軸頭10を減速停止させる。尚、分解能Bsは、例えば、安全マージンとしてより大きな値に設定されてもよい。これにより、干渉物と衝突する可能性を抑制することができる。
【0059】
図10は、第1実施形態による制限速度Fn1の演算結果の一例を示す図である。図10に示す例では、最大速度Ffは20000mm/minであり、加減速時間Tfは0.4secであり、加速度Afは約833.333mm/secである。
【0060】
更新周期Tsは、1secであり、サンプリング周期Tsampleで換算した更新周期Tsは、1000msecである。また、干渉距離Ksは90mm、分解能Bsは5mmである。限界距離Klimは、Ks-Bsであり、85mmである。尚、分解能Bsは、任意の値の安全マージンが加算されてもよい。また、現在速度Fnは、6000mm/min(100mm/sec)である。従って、更新周期Ts後の移動距離Knは、100mmである。この場合、図2と同様に、Ks<Knとなっているため、式4は明らかに成立する。従って、速度制限部33は、異常接近の判定をして、制限速度Fn1を演算する。
【0061】
図10に示す例では、制限速度Fn1の計算の結果として、演算回数は23回である。演算回数とは、図9のステップS70~S90の実行回数である。演算回数の増加とともに、処理中速度fおよびKn1+Kd+Ka1は、減少する。23回目の演算回数において、式5の右辺であるKn1+Kd+Ka1は、約84.974mmとなり、式5の左辺である限界距離Klim(Ks-Bs)の85mmよりも短くなる。このとき、処理中速度fは、現在速度Fnである6000mm/minから4850mm/minに減速している。従って、速度制限部33は、制限速度Fn1として、4850mm/minを演算する。また、速度制限部33は、減速時間Tdとして23msec、制限移動時間Tn1として977msec、制限停止時間Ta1として97msecを演算する。
【0062】
以上のように、第1実施形態によれば、距離情報取得部32は、距離センサ2から干渉距離Ksを取得する。また、速度制限部33は、分解能Bs、更新周期Ts、干渉距離Ksおよび主軸頭10の移動速度Fnに基づいて、主軸頭10が干渉物に異常接近しているか否かを判定する。距離センサ2が用いられるため、事前に干渉領域を設定することなく、実際の距離に基づいて異常接近の判定を行うことができる。干渉領域とは、工具11がワークや治具などと干渉する可能性がある領域である。また、複雑な形状の干渉物に対しても異常接近の判定を行うことができる。
【0063】
また、主軸頭10が干渉物に異常接近している場合、速度制限部33は、主軸頭10が安全に停止することができる制限速度Fn1を演算し、主軸頭10を減速させる。これにより、急停止や急減速による工作機械100への負荷を抑制することができる。従って、工作機械100の寿命が短くなることを抑制することができる。また、減速により、主軸頭10が干渉物に対してより近づくことができ、より長い軸移動量でワークを加工することができる。従って、干渉領域を狭くすることができる。さらに、干渉を回避するために大きな安全マージンを設定する必要がない。また、速度制限部33は、減速後の干渉距離Ks2を用いて更新周期Tsごとに制限速度Fn1を演算し、主軸頭10を減速させる。従って、主軸頭10は、干渉物に近づくほど、安全に停止することができるように減速しつつ、加工を継続することができる。また、主軸頭10が干渉物から離れる場合、速度制限部33は、主軸頭10の移動速度を減速前に戻す。これにより、加工時間が無駄に延びることを抑制することができる。
【0064】
また、異常接近の判定や、制限速度Fn1の演算には、距離センサ2の更新周期Tsおよび分解能Bsが用いられる。これにより、距離センサ2の性能を考慮にいれた異常接近の判定や制限速度Fn1の演算を行うことができる。例えば、分解能Bsが低く、更新周期Tsが長い安価な距離センサが用いられる場合であっても、異常接近の判定精度を向上させ、制限速度Fn1の演算を行うことができる。この結果、安価な距離センサが用いられる場合であっても、主軸頭10は、干渉物に対してより近づくことができ、かつ、安全に停止することができる。
【0065】
尚、距離センサ2は、安価な距離センサに限られない。これは、予め設定される更新周期Tsおよび分解能Bsのパラメータにより、距離センサ2の性能によらず、異常接近の判定および主軸頭10の減速を行うことができるためである。
【0066】
また、図8に示す例では、t1において減速が開始されているが、これに限られない。例えば、t1から現在速度Fnで移動後に減速が開始され、t2において主軸頭10の移動速度が制限速度Fn1になるようにしてもよい。この場合、主軸頭10の移動距離、すなわち、図8のグラフに示す面積の計算方法が異なる。
【0067】
また、図9のステップS160の後、速度制限部33は、再びステップS20~S40の異常接近の判定をしてもよい。
【0068】
本実施形態による情報解析部3および工作機械100の少なくとも一部は、ハードウェアで構成してもよいし、ソフトウェアで構成してもよい。ソフトウェアで構成する場合には、情報解析部3および工作機械100の少なくとも一部の機能を実現するプログラムをフレキシブルディスクやCD-ROM等の記録媒体に収納し、コンピュータに読み込ませて実行させてもよい。記録媒体は、磁気ディスクや光ディスク等の着脱可能なものに限定されず、ハードディスク装置やメモリなどの固定型の記録媒体でもよい。また、情報解析部3および工作機械100の少なくとも一部の機能を実現するプログラムを、インターネット等の通信回線(無線通信も含む)を介して頒布してもよい。さらに、同プログラムを暗号化したり、変調をかけたり、圧縮した状態で、インターネット等の有線回線や無線回線を介して、あるいは記録媒体に収納して頒布してもよい。
【0069】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
【符号の説明】
【0070】
100 工作機械、1 駆動軸、10 主軸頭、2 距離センサ、3 情報解析部、32 距離情報取得部、33 速度制限部、4 サーボ制御部、Bs 分解能、Ka 停止距離、Ks 干渉距離、Ks2 減速後の干渉距離、Fn 移動速度、Fn1 制限速度、Ts 更新周期
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10