(57)【特許請求の範囲】
【請求項１】
パートプログラムを記憶するパートプログラム記憶手段と、
このパートプログラム記憶手段に記憶されたパートプログラムからコマンドを抽出し、該コマンドが移動パラメータの設定コマンドである場合は、移動パラメータ設定処理を実行し、該コマンドが測定プローブの移動に関するコマンドである場合には、該コマンドの実行によって費やされる測定機の動作時間を、予め設定された又は前記移動パラメータ設定コマンドで設定された移動パラメータに基づいて算出すると共に、算出された動作時間を積算して測定開始から測定終了までの総動作時間を算出するコマンド解析手段と、
このコマンド解析手段で算出された総動作時間を表示する表示手段と
を備えたことを特徴とする測定機の動作時間算出装置。
【請求項２】
前記測定プローブを指定位置又は測定位置近傍まで移動させる際の移動速度及び移動加速時間並びに測定時の測定速度及び測定加速時間をそれぞれ前記移動パラメータとして設定するための移動パラメータ設定手段を更に備え、
前記測定プローブの移動に関するコマンドとして移動目標位置情報を有する移動コマンドと、測定位置情報及び測定方向情報を有する測定コマンドとを含み、
前記コマンド解析手段は、
前記移動コマンドを抽出したときには、前記目標位置情報から移動距離を算出すると共に、算出された移動距離と前記移動速度及び移動加速時間とに基づいて動作時間を算出し、
前記測定コマンドを抽出したときには、前記測定位置情報及び測定方向情報から前記測定プローブの移動経路を算出すると共に、この移動経路と前記移動速度、移動加速時間、測定速度及び測定加速時間とに基づいて動作時間を算出するものである
ことを特徴とする請求項１記載の測定機の動作時間算出装置。
【請求項３】
前記コマンド解析手段は、算出された動作時間を移動速度に基づく補正係数によって補正処理するものである
ことを特徴とする請求項２記載の測定機の動作時間算出装置。
【請求項４】
記憶手段に記憶されたパートプログラムを読み出して、当該パートプログラムからコマンドを抽出し、該コマンドが移動パラメータの設定コマンドである場合は、移動パラメータ設定処理を実行し、該コマンドが測定プローブの移動に関するコマンドである場合には、該コマンドの実行によって費やされる測定機の動作時間を、予め設定された又は前記移動パラメータ設定コマンドで設定された移動パラメータに基づいて算出すると共に、算出された動作時間を積算して測定開始から測定終了までの総動作時間を算出し、この算出された総動作時間を表示手段に表示する測定機の動作時間算出プログラムを記憶したコンピュータ読取可能な記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、ＣＮＣ三次元測定機等における測定プローブの移動動作及び測定動作に費やす予想動作時間を算出する測定機の動作時間算出システムに関する。
【０００２】
【従来の技術】
ＣＮＣ（Computer Numerical Control）三次元測定機では、測定制御プログラムとしてパートプログラムが使用される。このパートプログラムは、ＣＡＤシステムやエディタプログラムによって作成され、例えばＤＭＩＳ（Dimendional Measuring Interface Standerd）言語仕様等で記述される。このプログラムに基づく測定動作時間を把握することは、工程計画を立案する上で重要である。
【０００３】
【発明が解決しようとする課題】
しかし、従来はパートプログラムによって制御される測定動作にかかる時間を調べるために、パートプログラムを作成後、このパートプログラムによって三次元測定機を実際に稼動させ、測定にかかる総動作時間を測定しなければならなかった。このため、パートプログラムの設計段階で適切な動作時間に合わせ込むためのパートプログラムの修正作業を行うことができないという問題があった。
【０００４】
本発明は、このような点に鑑みなされたもので、パートプログラムの設計段階においても測定動作にかかる時間を予測することができ、パートプログラムの評価や工程準備等において極めて有用な測定機の動作時間算出システムを提供することを目的とする。
【０００５】
【課題を解決するための手段】
本発明に係る測定機の動作時間算出装置は、パートプログラムを記憶するパートプログラム記憶手段と、このパートプログラム記憶手段に記憶されたパートプログラムからコマンドを抽出し、該コマンドが移動パラメータの設定コマンドである場合は、移動パラメータ設定処理を実行し、該コマンドが測定プローブの移動に関するコマンドである場合には、該コマンドの実行によって費やされる測定機の動作時間を、予め設定された又は前記移動パラメータ設定コマンドで設定された移動パラメータに基づいて算出すると共に、算出された動作時間を積算して測定開始から測定終了までの総動作時間を算出するコマンド解析手段と、このコマンド解析手段で算出された総動作時間を表示する表示手段とを備えたことを特徴とする。
【０００６】
また、本発明に係る媒体に記録された測定機の動作時間算出プログラムは、記憶手段に記憶されたパートプログラムを読み出して、当該パートプログラムからコマンドを抽出し、該コマンドが移動パラメータの設定コマンドである場合は、移動パラメータ設定処理を実行し、該コマンドが測定プローブの移動に関するコマンドである場合には、該コマンドの実行によって費やされる測定機の動作時間を、予め設定された又は前記移動パラメータ設定コマンドで設定された移動パラメータに基づいて算出すると共に、算出された動作時間を積算して測定開始から測定終了までの総動作時間を算出し、この算出された総動作時間を表示手段に表示するものであることを特徴とする。
【０００７】
本発明によれば、記憶手段に記憶されたパートプログラムから動作時間の見積もりに必要な測定プローブの移動に関するコマンドのみを抽出し、これら抽出された各コマンドを解析することにより、各コマンドによる動作時間を算出し、これを積算することにより、測定開始から測定終了までの測定機の総動作時間を算出するようにしているので、測定機を実際に動作させて測定時間を検証する必要が無く、検証時間も短縮できると共に、パートプログラムの設計段階において、適宜、移動速度情報や移動経路情報等を変更して、適切な総動作時間に合わせ込むことが可能になる。これにより、測定工数の削減やコスト設定等が容易になる。
【０００８】
なお、ここで測定プローブの移動に関するコマンドとしては、移動目標位置情報を有する移動コマンド、測定位置情報及び測定方向情報を含む測定コマンドなどがある。これらの移動に関するコマンドについては、速度や加速時間を指示することで移動時間が求められる。移動速度、移動加速時間、測定速度及び測定加速時間は、動作時間算出のための移動パラメータとして移動パラメータ設定手段によって外部から予め与えるか、パートプログラムに記述しておく。
【０００９】
例えば移動コマンドの場合、移動加速時間と移動速度とによって速度カーブが求められるので、目標位置情報によって特定される移動距離を測定カーブに沿って移動したときの時間を動作時間として算出することができる。
また、例えば測定コマンドの場合、測定位置情報と測定方向情報とが与えられ、測定プローブを測定位置の手前で一旦停止又は減速させ、その位置から測定方向に移動させ、ワークに接触後、タッチバックさせるというような動作を行うので、これらの各段階での移動時間を移動速度、移動加速時間、測定速度及び測定加速時間等の移動パラメータに基づいて算出すればよい。
【００１０】
また、算出された動作時間と実際に測定機を動作させたときの動作時間とが異なる場合には、コマンド解析に際して、移動速度に基づく補正係数によって補正処理を行うようにしてもよい。
【００１１】
【発明の実施の形態】
以下、図面を参照してこの発明の好ましい実施の形態について説明する。
図１は、この発明の一実施例に係るＣＮＣ三次元測定機用の動作時間算出システムを含むパートプログラム作成・編集・評価システムの機能ブロック図である。
図１において、パートプログラム作成部１は、ＣＮＣ三次元測定機の測定動作手順であるパートプログラムを自動生成又は手動生成するもので、ＣＡＤ／ＣＡＴ（Compute Aided Design/Computer Aided Testing）システムや、パートプログラムをASCIIコードで入力するためのエディタ等から構成される。ここで、作成されるパートプログラムとしては、ＤＭＩＳ言語に基づくものが挙げられる。このパートプログラム作成部１で作成されたパートプログラムは、パートプログラムデータベース２にプログラムファイルとして記憶される。
【００１２】
移動パラメータ設定部３は、後述する速度や加速時間等の移動パラメータを設定するものである。コマンド解析部４は、データベース２に格納されたパートプログラムの各コマンドを１つずつ解析して測定の動作時間を算出する。コマンド変換部５は、データベースに格納されたＤＭＩＳパートプログラムを必要に応じて三次元測定機に合った言語のパートプログラムに変換する。表示部６は、コマンド解析部４で算出された動作時間と、コマンド変換部５で変換されたコマンドとを表示する。
【００１３】
次に、このシステムの動作について説明する。
ＣＮＣ三次元測定機では、図２に示すように測定プローブ１１の先端球１２の位置座標（Ｘ，Ｙ，Ｚ）を指示することにより、目標位置に測定プローブ１１を移動させる。この測定プローブ１１の移動に関するコマンドの典型的なものは、ＤＭＩＳプログラムの場合、移動コマンド(GOTOコマンド）と、測定コマンド（PTMEASコマンド）である。以下、これらのコマンドの内容と動作時間計算の方法について説明する。
【００１４】
（１）GOTO/X1,Y1,Z1
図３に示すように、測定プローブ１１を現在位置Ｐ0から目標位置Ｐ1（X1,Y1,Z1）に移動させるコマンドである。このコマンドによる測定プローブ１１の移動は、図４に示すような速度カーブに従う。即ち、まず、移動パラメータとして予め移動速度Ｖmvと、移動加速時間Ｔmvが与えられており、測定プローブ１１は、静止状態から時間Ｔmvの間に速度Ｖmvに達するように加速され、停止する前の時間Ｔmv前から減速される。図中（ａ）のように、静止状態から時間Ｔmvの間に速度Ｖmvに達するまで加速し、速度Ｖmvに達した瞬間に減速を開始して時間Ｔmvの経過で速度が０となるように駆動制御した場合、移動距離Ｌmvと、そのときの移動時間MovTimeとは次のようになる。
【００１５】
【数１】
Ｌmv＝Ｔmv*Ｖmv
MovTime＝２*Ｔmv
【００１６】
プローブ１１の移動距離distが図中（ｂ）のようにＬmvよりも短い場合には、最高速度がＶmv′（＜Ｖmv）、加速時間がＴmv′（＜Ｔmv）となるので、加速度ａmv＝Ｖmv／Ｔmv＝Ｖmv′／Ｔmv′から、加速時間Ｔmv′及び移動時間MovTimeは、次のようになる。
【００１７】
【数２】
Ｔmv′＝√（dist／ａmv）
MovTime＝２*Ｔmv′
【００１８】
また、プローブ１１の移動距離distが、図４（ｃ）のようにＬmvよりも長い場合には、定速期間をＴ2として、移動時間MovTimeが次のように求められる。
【００１９】
【数３】
Ｔ2＝（dist−Ｌmv）／Ｖmv
MovTime＝２*Ｔmv＋Ｔ2
【００２０】
（２）PTMEAS/CART,X1,Y1,Z1,I,J,K
図５に示すように、測定プローブ１１を現在位置Ｐ0から測定位置Ｐ1（X1,Y1,Z1）に移動させて測定動作を行わせるコマンドである。このコマンドでは、測定位置Ｐ1の座標値（X1,Y1,Z1）と、移動方向のベクトル（I,J,K）とが与えられる。三次元測定機のコントローラは、測定プローブ１１を、測定位置Ｐ1から測定方向（I,J,K）と反対方向に一定の距離（例えば２mm）だけ離れた測定近傍位置Ｐ2にまず移動させる。次に、Ｐ2からＰ1までゆっくりと移動させ、Ｐ1で測定プローブ１１がワークと接触したら、測定方向と逆方向に移動させる。
【００２１】
図６は、このPTMEASコマンドの速度カーブを示す図である。
現在位置Ｐ0から測定近傍位置Ｐ2までの移動は、前述と全く同様に移動速度Ｖmv及び移動加速時間Ｔmvに基づき移動時間MovTimeが算出される。測定近傍位置Ｐ2から測定位置Ｐ1までは、測定加速時間Ｔms及び測定速度Ｖmsに基づいて測定時間MeasTimeが算出され、測定位置Ｐ1から測定近傍位置Ｐ2までは、例えば移動速度カーブに基づいてタッチバック時間TouchBakTimeが算出される。Ｐ1−Ｐ2の距離を予め一定値に設定しておけば、速度情報及び加速時間情報からMeasTime，TouchBakTimeは、一定値となる。
【００２２】
次に、このシステムの動作を図７のフローチャートに基づいて説明する。
まず、パートプログラム作成部１を用いてＣＮＣ三次元測定機用ＤＭＩＳパートプログラムを作成する（Ｓ１）。作成されたＤＭＩＳパートプログラムは、データベース２に登録される（Ｓ２）。次に、初期化処理によって、移動時間MovTime、測定時間MeasTime、タッチバック時間TouchBakTimeをそれぞれ０にリセットする（Ｓ３）。次にＤＭＩＳパートプログラムの各コマンドを抽出して解析し（Ｓ４）、解析しながらＤＭＩＳパートプログラムを測定機に適合したパートプログラムに変換していく（Ｓ５）。この解析及び変換操作を全てのコマンドについて実行し（Ｓ６）、その変換結果と三次元測定機の総動作時間とを表示部６を介して表示する（Ｓ７）。最後に変換されたパートプログラム及び動作時間をデータベース２に登録して（Ｓ８）、処理が終了する。
【００２３】
図８は、ステップＳ１で作成されたＤＭＩＳパートプログラムの例であり、図９は、ステップＳ５で変換された測定機に適合する別のパートプログラムの例である。両者は、基本的には殆ど同じであるため、変換後のパートプログラムについてコマンド解析する場合には、コマンド解析処理（Ｓ４）において、必要な数のライブラリを備えておけばよい。これにより、多種類のプログラムに対応させることができる。
【００２４】
図１０は、コマンド解析処理（Ｓ４）の更に詳細な処理を示すフローチャートである。
前述したように、移動速度Ｖmv、移動加速時間Ｔmv、測定速度Ｖms及び測定加速時間Ｔms等の移動パラメータは、移動パラメータ設定部３によって設定することができるが、これら移動パラメータは、パートプログラム中に記述されて設定・変更される場合もある。そこで、抽出されたコマンドが移動パラメータの設定コマンドである場合には（Ｓ１１）、移動パラメータ設定処理を実行する（Ｓ１２）。また、抽出されたコマンドが移動コマンド（GOTO）又は測定コマンド（PTMEAS）の場合には（Ｓ１３）、そのコマンドの実行によって費やされる動作時間をnewMovTime，newMeasTime，newTouchTimeとして算出し（Ｓ１４）、次に時間補正処理して（Ｓ１５）、動作時間MovTime，MeasTime，TouchTimeに積算する（Ｓ１６）。もし、マクロ処理、プローブの方向計算処理等が必要である場合にはその処理を実行し（Ｓ１７）、コマンド解析処理を終了する。
【００２５】
図１１は、動作時間算出処理（Ｓ１４）の更に詳細なフローチャートである。
コマンドがGOTOコマンドである場合には（Ｓ２１）、測定プローブ１１の現在位置から目標位置までの移動距離distを算出し（Ｓ２２）、そのコマンドの実行による移動時間newMovTimeを算出する（Ｓ２３）。コマンドがPTMEASコマンドの場合には、測定位置（図５のＰ1）から、測定方向（I,J,K）に基づいて移動停止点（測定近傍位置；図５のＰ2）を算出し（Ｓ２４）、現在位置Ｐ0から移動停止点Ｐ2までの移動距離distを算出する（Ｓ２５）。そして、そのコマンド実行による移動時間newMovTime、測定時間newMeasTime、タッチバック時間newTouchBakTimeをそれぞれ算出する（Ｓ２６〜Ｓ２８）。
【００２６】
移動時間newMovTimeの算出処理（Ｓ２３，Ｓ２６）は、図１２に示される。移動距離distと基準距離Ｌmvとを比較して（Ｓ３１）、dist＜Ｌmvであれば、加速度ａmvを求め（Ｓ３２）、前述した数２に基づいて、移動時間newMovTimeを２*√（dist／ａmv）によって算出する（Ｓ３３）。dist≧Ｌmvであれば、Ｔ1＝２*Ｔmv，Ｔ2＝（dist−Ｌmv）／Ｖmvを求め（Ｓ３４）、前述した数３に基づいて移動時間newMovTimeをＴ1＋Ｔ2によって求める（Ｓ３５）。なお、測定時間newMeasTime、タッチバック時間newTouchBakTimeについても、基本的には上記と同様の方法で算出可能であるが、移動距離が固定している場合には、一定値を当てはめることができる。
【００２７】
こうして求められた移動時間、測定時間及びタッチバック時間が全て加算されると、測定開始から測定終了までの総動作時間が求められることになる。しかし、算出された時間は、あくまで予測時間であり、更に高精度に動作時間を予測する場合には、実際の測定機の各駆動部での動作遅れや、速度制御カーブ（例えばＳ字カーブ）等を考慮して、計算値と実際値とが一致するように補正する必要がある。本発明者等の実験によれば、計算データと実験データとの間には、図１３に示すような関係があることが確認されている。この例では、移動速度が低い範囲では、実験データが計算データよりも進み、移動速度が高くなるにつれて実験データが計算データよりも遅れるという関係を示している。このような関係を考慮して、例えば図１４に示すような補正テーブルを作成する。この補正テーブルは、移動速度Ｖmv（１０，５０，１００，…，５００mm／sec）及び移動加速時間Ｔmv（０．４，０．４８，０．６，０．８，１．２sec）のそれぞれの組合せに対して補正パラメータを格納したものである。図１０の時間補正処理（Ｓ１５）では、移動速度及び移動加速時間に基づいて必要な補正パラメータを選択し、時間補正処理を行う。移動速度又は移動加速時間がテーブルに登録された値と異なる場合には、適宜必要な補間演算によって補正パラメータを算出すれば良い。
【００２８】
なお、以上はＤＭＩＳパートプログラムのGOTOコマンド及びPTMEASコマンドのみをピックアップする例について説明しているが、パートプログラムには、この他に測定プローブの移動経路を例えば円弧に沿うように制御するコマンドや、図１５に示すように、測定時に測定近傍位置で一度停止せずに、測定速度Ｖmsまで低下した時点でプローブを等速度運動させてワークに接触させるように制御するコマンド等も考えられる。後者の場合、図１５に示すように、一旦停止する場合に比べて、一旦速度がゼロになるまで減速したり、また所定の測定速度まで加速する必要がないので、時間ロスがない。
【００２９】
なお、本システムの以上の機能は、例えばコンピュータの動作時間算出プログラムによって実現され、そのプログラムはフロッピーディスク、ＣＤ−ＲＯＭ等の適当な記録媒体に記録されて提供される。
【００３０】
【発明の効果】
以上述べたようにこの発明によれば、記憶手段に記憶されたパートプログラムから動作時間の見積もりに必要な測定プローブの移動に関するコマンドのみを抽出し、これら抽出された各コマンドを解析することにより、各コマンドによる動作時間を算出し、これを積算することにより、測定開始から測定終了までの測定機の総動作時間を算出するようにしているので、測定機を実際に動作させて測定時間を検証する必要が無く、検証時間も短縮できると共に、パートプログラムの設計段階において、適宜、移動速度情報や移動経路情報等を変更して、適切な総動作時間に合わせ込むことが可能になり、測定工数の削減やコスト設定等が容易になるという効果を奏する。
【図面の簡単な説明】
【図１】  本発明の一実施例に係るパートプログラム作成・編集・評価システムの機能ブロック図である。
【図２】  同システムで移動時間が計算される測定プローブを示す斜視図である。
【図３】  移動コマンドの例を説明するための図である。
【図４】  同移動コマンドによる速度カーブを示す図である。
【図５】  測定コマンドの例を説明するための図である。
【図６】  同測定コマンドによる速度カーブを示す図である。
【図７】  同システムの動作を示すフローチャートである。
【図８】  同システムで作成されるＤＭＩＳパートプログラムの例を示す図である。
【図９】  同システムで図８のプログラムから変換されたパートプログラムの例を示す図である。
【図１０】  図７のコマンド解析処理の詳細フローチャートである。
【図１１】  図１０の動作時間算出処理の詳細フローチャートである。
【図１２】  図１１の移動時間算出処理の詳細フローチャートである。
【図１３】  計算データと実験データの誤差を示すグラフである。
【図１４】  上記誤差に基づく補正テーブルを示す図である。
【図１５】  本発明の他の実施例に係る測定コマンドの速度カーブを示す図である。
【符号の説明】
１…パートプログラム作成部、２…パートプログラムデータベース、３…移動パラメータ設定部、４…コマンド解析部、５…コマンド変換部、６…表示部。
【図１】
0003934776.tif 000002
【図２】
0003934776.tif 000003
【図３】
0003934776.tif 000004
【図４】
0003934776.tif 000005
【図５】
0003934776.tif 000006
【図６】
0003934776.tif 000007
【図７】
0003934776.tif 000008
【図８】
0003934776.tif 000009
【図９】
0003934776.tif 000010
【図１０】
0003934776.tif 000011
【図１１】
0003934776.tif 000012
【図１２】
0003934776.tif 000013
【図１３】
0003934776.tif 000014
【図１４】
0003934776.tif 000015
【図１５】
0003934776.tif 000016