(58)【調査した分野】(Int.Cl.,DB名)
サーボモータの回転によって駆動する駆動軸の位置フィードバックデータであって、第1の計測器によって得られる位置フィードバックデータを所定のサンプリング周期で取得する位置フィードバックデータ取得部と、
前記駆動軸の駆動によって移動する機械端に対する位置指令データを数値制御装置から取得する指令データ取得部と、
第2の計測器によって得られる前記機械端の実位置データを所定のサンプリング周期で取得する位置データ取得部と、
前記位置フィードバックデータ取得部により取得された前記位置フィードバックデータに基づき、前記駆動軸上の移動点の時系列の位置データを算出する駆動軸位置算出部と、
前記指令データ取得部により取得された前記機械端に対する時系列の前記位置指令データに基づき、前記機械端の指令移動軌跡を生成する指令軌跡生成部と、
前記位置データ取得部により取得された前記機械端の時系列の実位置データに基づき、前記機械端の実移動軌跡を生成する実軌跡生成部と、
前記指令軌跡生成部により生成された前記指令移動軌跡に垂直で、かつ、前記駆動軸位置算出部により算出された前記位置データによって表される前記移動点を通る直線と、前記実軌跡生成部により生成された前記実移動軌跡との交点である前記機械端の位置データを算出する機械端位置算出部と、
前記機械端位置算出部により算出された前記機械端の位置データを、前記駆動軸に対応した位置データに変換する位置データ変換部と、
前記位置フィードバックデータ取得部で取得された時系列の前記位置フィードバックデータと、前記位置データ変換部で変換された時系列の前記位置データとを、互いに同一の表示形態で表示する表示部と、を備えることを特徴とする時系列データ表示装置。
【発明を実施するための形態】
【0008】
以下、
図1〜
図7を参照して本発明の実施形態に係る時系列データ表示装置について説明する。本発明の実施形態に係る時系列データ表示装置1は、例えば数値制御装置2によって制御される工作機械3に適用される。
図1は、本発明の実施形態に係る時系列データ表示装置1の全体構成を示すブロック図である。
図2は、工作機械3の要部構成を示す平面図である。
【0009】
図2に示すように、工作機械3は、X軸方向に沿って延在するボールねじ31と、Y軸方向に沿って延在するボールねじ32と、ボールねじ31を回転させるX軸用サーボモータ33と、ボールねじ32を回転させるY軸用サーボモータ34と、図示しないワークが載置されるテーブル35とを有する。各ボールねじに31,32はそれぞれ図示しないナットが螺合され、各ナットはそれぞれテーブル35の底部に固定されている。これによりサーボモータ33,34が回転駆動すると、ボールねじ31,32に沿ってナットが移動し、サーボモータ33,34の回転量に応じてテーブル35がXY方向に移動する。なお、図示は省略するが、テーブル35の上方には、テーブル35に対向して工具が配置され、テーブル35に対して工具が相対移動し、ワークが加工される。
【0010】
各サーボモータ33,34は、回転量検出器33a、34a(例えばロータリーエンコーダ)を内蔵し、回転量検出器33a,34aによりボールねじ31,32(駆動軸)の回転量、すなわちナットの位置を所定のサンプリング周期Δt1で検出できる。なお、回転量検出器33a,34aの代わりに、ボールねじ31,32に対向してスケール36,37(リニアスケール)を設け、スケール36,37により駆動軸上のナットの位置を検出することもできる。
図1に示すように、サーボモータ33,34には数値制御装置2が接続され、回転量検出器33a,34aにより検出された位置データは、位置フィードバックデータとして数値制御装置2に入力される。
【0011】
数値制御装置2はサーボモータ33,34に制御信号を出力する。より具体的には、数値制御装置2は、予め記憶された加工プログラムに基づいて、各サーボモータ33,34に対しテーブル35上の位置指令点P(機械端)の移動指令を出力するとともに、回転量検出器33a,34aからのフィードバック信号に応じてサーボモータ33,34をフィードバック制御する。位置指令点Pは、
図2に示すように例えばテーブル35の中心点であり、加工プログラムには、位置指令点Pの座標値を含む各駆動軸の時系列の位置指令データが所定のフォーマット(Gコード等)で記憶されている。
【0012】
各サーボモータ33,34に出力される位置指令は、例えば
図3に示すように波形状のデータとして与えられる。これによりテーブル35は、
図2の矢印Aに示すように繰り返し円運動を行い、位置指令点Pが円に沿って移動する。なお、
図2では、テーブル中心点を位置指令点Pとしているが、工具の位置(例えば工具先端部)を位置指令点Pとすることもできる。
【0013】
図1に示すように、工作機械3には、テーブル35に面して測定器4が設けられ、測定器4により位置指令点Pの位置が計測される。測定器4には、交差格子スケールやボールバーなどを用いることができる。例えばボールバーの場合、加工プログラムの開始後、ボールバーが押し込まれると位置計測を開始し、以降、所定のサンプリング周期Δt2で位置計測が繰り返される。これにより、位置指令点Pの座標データ(実位置データ)が時系列で取得される。測定器4の位置データは、駆動軸の各成分(X軸成分、Y軸成分等)に分解できる。
【0014】
図3は、測定器4によって取得されたX軸成分の時系列の実位置データと、回転量検出器33aによって取得されたX軸成分の時系列の位置フィードバックデータとを示す図である。
図3の丸印は実位置データであり、三角印は位置フィードバックデータである。実位置データと位置フィードバックデータは、位置指令データに応じてそれぞれ直線および点線に示すように正弦波状に変化する。
【0015】
位置フィードバックデータと実位置データは互いに異なる測定器33a,34a,4で取得される。したがって、
図3のように、位置フィードバックデータの測定開始時刻t1と実位置データの測定開始時刻t2、および位置フィードバックのサンプリング周期Δt1と実位置データのサンプリング周期Δt2は互いに異なる。このため、位置フィードバックデータと実位置データとの比較が困難であり、モータ33,34のサーボ調整を適切に行うことが困難である。そこで、本実施形態では、これらのデータを対比可能に表示するよう以下のように時系列データ表示装置1を構成する。
【0016】
時系列データ表示装置1は、CPU,ROM,RAM,その他の周辺回路などを有する演算処理装置を含んで構成される。
図1に示すように、時系列データ表示装置1は、機能的構成として、位置フィードバック取得部11と、指令データ取得部12と、位置データ取得部13と、駆動軸位置算出部14と、指令軌跡生成部15と、実軌跡生成部16と、機械端位置算出部17と、位置データ変換部18と、表示部19とを有する。
【0017】
図4は、時系列データ表示装置1で実行される処理の一例を示すフローチャートである。このフローチャートを用いて、時系列データ表示装置1の各部の構成を説明する。以下では、
図2に示すように、数値制御装置2が、加工プログラムに従いX軸用サーボモータ33およびY軸用サーボモータ34にそれぞれ位相が90°異なる正弦波の位置指令を出力し、位置指令点Pを円状に動作させるものとする。
【0018】
ステップS1では、位置フィードバック取得部11での処理により、回転量検出器33a,34aにより得られた時系列の位置フィードバックデータ、すなわち所定のサンプリング周期Δt1毎の位置フィードバックデータを、数値制御装置2を介して取得する。なお、回転量検出器33a,34aの代わりに位置フィードバック用のスケール36,37が設けられている場合、スケール36,37によって得られた時系列の位置フィードバックデータを、数値制御装置2を介して取得する。
【0019】
ステップS2では、指令データ取得部12での処理により、位置指令点P(機械端)に対する時系列の位置指令データ(位置指令座標値)を数値制御装置2から取得する。位置指令データは、位置フィードバックデータと同一の周期Δt1で取得される。ここで、k番目の位置指令データは、計測開始からk・Δt1秒後のデータであり、これを(PcX
k(k・Δt1),PcY
k(k・Δt1))で表す。
【0020】
数値制御装置2が、機械端に対する位置指令ではなく、各駆動軸(X軸、Y軸)に対する位置指令を出力する場合には、指令データ取得部12は、その位置指令データを数値制御装置2から取得し、この位置指令データと機械構成の情報とに基づき、機械端に対する位置指令データを取得する。機械構成の情報は、ワーク座標系の原点、モータ33,34の1回転毎のテーブル35の移動量、軸構成などの情報を含み、これらは予め数値制御装置2または時系列データ表示装置1に記憶されている。
【0021】
ステップS3では、位置データ取得部13での処理により、測定器4によって計測した位置指令点Pの時系列の位置データ(実位置データ)、すなわち所定のサンプリング周期Δt2毎の点列データである実位置データを取得する。k番目の実位置データは、(PmX
k(k・Δt2),PmY
k(k・Δt2))で表す。
【0022】
ステップS4では、駆動軸位置算出部14での処理により、ステップS1で取得した位置フィードバックデータと予め記憶された機械構成の情報とから、機械端に対応する駆動軸上の点(移動点)の時系列の位置データを算出する。移動点は、例えばテーブル35上の位置指令点Pの位置である。移動点の位置データは、位置フィードバックデータと同一の周期Δt1で算出され、(PfX
k(k・Δt1),PfY
k(k・Δt1))で表される。なお、回転量検出器33a,34aの代わりにスケール36,37を設ける場合には、機械構成の情報を用いずに、位置フィードバックデータから移動点の時系列の位置データを直接算出することもできる。
【0023】
ステップS5では、指令軌跡生成部15での処理により、ステップS2で取得された時系列の位置指令データに基づき、位置指令点P(機械端)の移動軌跡、すなわち指令移動軌跡を生成する。
図5は、XY平面上における指令移動軌跡PA1の一例を示す図である。本実施形態では、テーブル35が円運動をするように数値制御装置2から位置指令が出力されるため、指令移動軌跡PA1は、原点P0を中心とした円となる。なお、
図5では、1番目、2番目、3番目の位置指令点Pの位置を、それぞれPc1、Pc2、Pc3で表す。
【0024】
ステップS6では、実軌跡生成部16での処理により、ステップS3で取得された機械端の時系列の実位置データに基づき、機械端の移動軌跡、すなわち実移動軌跡PA2を生成する。
図5のPm1、Pm2、Pm3、Pm4は、1番目、2番目、3番目、4番目の実位置データを表す。実移動軌跡PA2の座標(PmX,PmY)は、隣り合う実位置データの間、すなわちk−1番目の実位置データ(PmX
k−1,PmY
k−1)とk番目の実位置データ(PmX
k,PmY
k)の間を、例えば次式(I)により一次近似直線で補間することにより得られる。
【数1】
【0025】
ステップS7では、機械端位置算出部17での処理により、ステップS5で算出された指令移動軌跡PA1に垂直で、かつ、ステップS4で算出された位置データによって表される移動点を通る直線を算出する。
図5のPf1、Pf2、Pf3は、ステップS4で算出された位置データによって表される1番目、2番目、3番目の移動点を表し、ステップS7では、まず各移動点Pf1,Pf2,Pf3を通る指令移動軌跡に垂直な直線L1,L2,L3を算出する。
【0026】
次いで、これら直線L1,L2,L3と、ステップS6で生成された実移動軌跡PA2との交点Pma1,Pma2,Pma3の座標、すなわち機械端の位置データを算出する。算出された位置データは、位置フィードバックデータにより得られた移動点Pf1,Pf2,Pf3と同一時刻の位置データであり、移動点の位置データに対応する。したがって、1番目の位置データは、回転量検出器33a,34aによる測定開始時刻t1(
図3)におけるデータである。なお、機械端のk番目の位置データは、位置フィードバックと同一のサンプリング周期Δt1を用いて(PmaX
k(k・Δt1),PmaY
k(k・Δt1))で表される。
【0027】
ステップS8では、位置データ変換部18での処理により、ステップS7で算出された機械端の位置データ(PmaX
k(k・Δt1),PmaY
k(k・Δt1))を、機械構成の情報を用いて各駆動軸(X軸、Y軸)に対応した位置データに変換する。本実施形態では、機械構成がXYの直交2軸の構成で、機械端(位置指令点P)が円に沿って移動するため、X軸に対応した位置データは、PmaX
k(k・Δt1)であり、Y軸に対応した位置データは、PmaY
k(k・Δt1)となる。
【0028】
ステップS9では、表示部19での処理により、ステップS1で取得された各駆動軸の時系列の位置フィードバックデータと、ステップS8で変換された各駆動軸の時系列の位置データとを、互いに同一の表示形態でモニタに表示する。
図6は、モニタに表示される表示画面の一例を示す図である。図中、例えばX軸の位置フィードバックデータを三角印で、ステップS8で算出されたX軸に対応する位置データを丸印で示す。
図6に示すように、算出された位置データの測定開始時刻はt1、サンプリング周期はΔt1となり、位置フィードバックデータと位置データとは、互いに同一時刻のデータとして同一のグラフ上に時系列で重ねて表示される。
【0029】
これによりサーボモータの時定数やゲイン等のパラメータを調整した際の機械端への影響を、駆動軸毎に評価することができ、モータのサーボ調整を適切に行うことができる。すなわち、位置フィードバックデータと位置データとのずれがパラメータの設定に起因するものか、それともモータ、ボールねじ、ナット等の機構部の伝達特性に起因するものかを推定することができる。例えば、パラメータを変更しても両者のずれが解消されない場合には、機構部の伝達特性に原因があると推定することができる。
【0030】
このように本実施形態に係る時系列データ表示装置1は、サーボモータ33,34の回転によって駆動する駆動軸の位置フィードバックデータであって、回転量検出器33a,34aまたはスケール36,37によって得られる位置フィードバックデータをサンプリング周期Δt1で取得する位置フィードバックデータ取得部11と、駆動軸の駆動によって移動する機械端(位置指令点P)に対する位置指令データを数値制御装置2から取得する指令データ取得部12と、計測器4によって得られる機械端の実位置データをサンプリング周期Δt2で取得する位置データ取得部13と、位置フィードバックデータ取得部11により取得された位置フィードバックデータに基づき、駆動軸上の移動点の時系列の位置データを算出する駆動軸位置算出部14と、指令データ取得部12により取得された機械端に対する時系列の位置指令データに基づき、機械端の指令移動軌跡PA1を生成する指令軌跡生成部15と、位置データ取得部13により取得された機械端の時系列の実位置データに基づき、機械端の実移動軌跡PA2を生成する実軌跡生成部16と、指令軌跡生成部15により生成された指令移動軌跡PA1に垂直で、かつ、駆動軸位置算出部14により算出された位置データによって表される移動点を通る直線L1〜L3と、実軌跡生成部16により生成された実移動軌跡PA2との交点である機械端の位置データを算出する機械端位置算出部17と、機械端位置算出部により算出された機械端の位置データを、駆動軸に対応した位置データに変換する位置データ変換部18と、位置フィードバックデータ取得部11で取得された時系列の位置フィードバックデータと、位置データ変換部18で変換された時系列の位置データとを、互いに同一の表示形態で表示する表示部19とを備える。これにより、機械端の各駆動軸に対応した位置データと各駆動軸の位置フィードバックデータとを時系列で対比可能に表示することができ、サーボ調整を適切に行うことができる。
【0031】
なお、上記実施形態では、表示部19での処理により、位置フィードバックデータ取得部11で取得された時系列の位置フィードバックデータと、位置データ変換部18で変換された時系列の位置データとを、モニタに対比可能に表示するようにしたが、さらに指令データ取得部12で取得された時系列の位置指令データをモニタに同時に表示するようにしてもよい。
【0032】
図7は、その一例を示す図である。図中、黒丸が位置指令データを表す。これにより同一時刻の位置データと位置指令データとを比較することができ、位置データが位置指令データに一致するようにサーボ調整を適切に行うことができる。その結果、ワークの加工精度を改善することができる。
【0033】
なお、指令データ取得部12において、機械端に対する位置指令データを数値制御装置2から取得する際(ステップS2)、数値制御装置2から各駆動軸に対する位置指令データを取得し、この位置指令データと機械構成の情報とに基づき、機械端に対する位置指令データを算出し、これにより位置指令データを取得してもよい。すなわち、機械端に対する位置指令データを数値制御装置2から直接取得するのではなく、各駆動軸に対する位置指令データを用いて、機械端に対する位置指令データを算出することもできる。
【0034】
上記実施形態では、実軌跡生成部での処理により、時系列の機械端の実位置データ間を直線で補間して実移動軌跡を生成するようにしたが(式(I))、時系列の機械端の位置データ間を多項式を用いて補間して実移動軌跡を生成することもできる。この場合の多項式としては、例えば次式(II)を用いることができる。
【数2】
【0035】
上記実施形態では、回転量検出器33a,34aまたはスケール36,37によって位置フィードバックデータを取得するようにしたが、第1の計測器の構成はこれに限らない。上記実施形態では、測定器4によって機械端の実位置データを取得するようにしたが、第2の計測器の構成もこれに限らない。本発明は、数値制御装置によって制御されるサーボモータを有する工作機械であれば、上述した以外の工作機械3にも同様に適用することができる。
【0036】
以上の説明はあくまで一例であり、本発明の特徴を損なわない限り、上述した実施形態および変形例により本発明が限定されるものではない。上記実施形態および変形例の構成要素には、発明の同一性を維持しつつ置換可能かつ置換自明なものが含まれる。すなわち、本発明の技術的思想の範囲内で考えられる他の形態についても、本発明の範囲内に含まれる。また、上記実施形態と変形例の1つまたは複数を任意に組み合わせることも可能である。
【解決手段】時系列データ表示装置100は、位置フィードバックデータを所定のサンプリング周期で取得し、機械端に対する位置指令データを数値制御装置から取得し、機械端の実位置データを所定のサンプリング周期で取得し、位置フィードバックデータに基づき駆動軸上の移動点の時系列の位置データを算出し、機械端に対する時系列の位置指令データに基づき機械端の指令移動軌跡を生成し、機械端の時系列の実位置データに基づき機械端の実移動軌跡を生成し、指令移動軌跡に垂直かつ移動点を通る直線と実移動軌跡との交点である機械端の位置データを算出し、機械端の位置データを駆動軸に対応した位置データに変換し、時系列の位置フィードバックデータと時系列の位置データとを互いに同一の表示形態で表示する。