(57)【要約】      （修正有）【課題】マシン性能を十分に発揮できる加速制御を行なって測定時間を短縮できる形状測定装置の制御方法を提供する。【解決手段】所与の移動区間を区間内目標速度に達しながらできる限り短い時間で移動する制御計画を設計する。制御サイクルタイムの整数倍となる加速時間Ｔａを設定する加速時間算出工程ＳＴ２３０、加速時間算出工程で得られた加速時間Ｔａと移動区間内の目標速度増分ΔＶとから区間内の最高加速度Ａｍａｘを算出する最高加速度算出工程ＳＴ２４０、加速時間Ｔａと最高加速度Ａｍａｘとを含み、制御サイクルタイムごとの目標座標値を時間の関数として与える加速区間座標算出式により、制御サイクルタイムごとの目標座標値を求める座標算出工程ＳＴ２５０、を有する。加速区間座標算出式は、加速時間Ｔａと最高加速度Ａｍａｘとを含み、徐々に加速し、徐々に減速する加速度を与える加速度連続関数を時間に関して二回積分した式により与えられる。【選択図】図１２
2020115099.tif 000002
【特許請求の範囲】
【請求項１】
プローブを三次元的に移動させる移動機構を有し、ワークの形状を測定する三次元測定機の制御計画の設計方法であって、
所与の移動区間を所与の速度計画で計画された区間内目標速度に達しながらできる限り短い時間で移動する制御計画を設計するにあたり、
制御サイクルタイムの整数倍となる加速時間Ｔａを設定する加速時間算出工程と、
前記加速時間算出工程で得られた加速時間Ｔａと前記移動区間内の目標速度増分ΔＶとから区間内の最高加速度Ａｍａｘを算出する最高加速度算出工程と、
前記加速時間Ｔａと前記最高加速度Ａｍａｘとを含み、制御サイクルタイムごとの目標座標値を時間の関数として与える加速区間座標算出式により、制御サイクルタイムごとの目標座標値を求める座標算出工程と、を有し、
加速区間座標算出式は、前記加速時間Ｔａと前記最高加速度Ａｍａｘとを含み、徐々に加速し、徐々に減速する加速度を与える加速度連続関数を時間に関して二回積分した式により与えられる
ことを特徴とする三次元測定機の制御計画の設計方法。
【請求項２】
請求項１に記載の三次元測定機の制御計画の設計方法において、
前記加速時間算出工程において、前記加速時間Ｔａは、前記目標速度増分ΔＶを前記三次元測定機の耐加速度の半分で除した値を前記制御サイクルタイムの整数倍になるように切り上げた値である
ことを特徴とする三次元測定機の制御計画の設計方法。
【請求項３】
請求項１または請求項２に記載の三次元測定機の制御計画の設計方法において、
前記加速度連続関数は、加速度Ａ（ｔ）を時間ｔの関数として次のように与えられる
ことを特徴とする三次元測定機の制御計画の設計方法。
Ａ（ｔ）＝Ａ｛ｓｉｎ（ωｔ−π／２）＋１｝
ω＝２π／Ｔａ
Ａ＝Ａｍａｘ／２
【請求項４】
請求項１から請求項３のいずれかに記載の三次元測定機の制御計画の設計方法で与えられた制御計画に従って前記三次元測定機を駆動制御することを特徴とする形状測定装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、形状測定装置の制御方法に関する。
【背景技術】
【０００２】
測定対象物の表面に沿ってプローブを倣い移動させることで測定対象物の形状を測定する形状測定装置が知られている（例えば、特許文献１、２、３参照）。倣い測定にあたっては、倣い測定の経路を生成しておく必要がある。特許文献１に記載の装置では、ＣＡＤデータ等に基づいた設計値（例えばＮＵＲＢＳ（Ｎｏｎ−ＵｎｉｆｏｒｍＲａｔｉｏｎａｌＢ−Ｓｐｌｉｎｅ：非一様有理Ｂスプライン）データ）を所定次数の多項式曲線群に変換する。
【０００３】
この手順を簡単に説明すると、まず、外部のＣＡＤシステム等から経路情報を含んだＣＡＤデータ（例えばＮＵＲＢＳデータ）を受け取り、このＣＡＤデータを点群のデータに変換する。各点のデータは、座標値（ｘ、ｙ、ｚ）と法線方向（Ｐ、Ｑ、Ｒ）とを組み合わせたデータである（つまり、（ｘ、ｙ、ｚ、Ｐ、Ｑ、Ｒ）である。）本明細書では、（ｘ、ｙ、ｚ、Ｐ、Ｑ、Ｒ）の情報をもつ点群のデータを輪郭点データと称することにする。
【０００４】
次に、各点の座標値を法線方向に所定量だけオフセットする。（所定量とは、具体的には、測定子半径ｒ―基準押込み量Ｅ０である。）このようにして求めた点群データをオフセット済み輪郭点データと称することにする。
【０００５】
そして、オフセット済み輪郭点データを所定次数の多項式曲線群に変換する。ここでは、多項式として三次関数を用い、ＰＣＣ曲線群（Ｐａｒａｍｅｔｒｉｃ  Ｃｕｂｉｃ  Ｃｕｒｖｅｓ）とする。
このＰＣＣ曲線を元に倣い測定の経路を生成する。さらに、ＰＣＣ曲線を分割して分割ＰＣＣ曲線群とする。
【０００６】
分割ＰＣＣ曲線群から速度曲線を算出してプローブの移動速度（移動ベクトル）を算出する。例えば分割ＰＣＣ曲線群の各セグメントの曲率などに基づいてプローブの移動速度（移動ベクトル）を設定する。このように算出された移動速度に基づいてプローブを移動させ、測定対象物の表面に沿ってプローブを移動させる（パッシブ設計値倣い測定）。
【０００７】
さらに、プローブの押し込み量を一定にするように押込み修正ベクトルを時々刻々算出して、軌道修正しながら倣い測定する方法も知られている（アクティブ設計値倣い測定）。
【０００８】
特許文献２（特開２０１３−２３８５７３号公報）に開示された「アクティブ設計値倣い測定」を簡単に紹介する。「アクティブ設計値倣い測定」では、次の（式１）で表わされる合成ベクトルＶをプローブのベクトル移動指令とする。
プローブが合成ベクトルＶに基づく移動を行うと、プローブ（測定子）はＰＣＣ曲線に沿うように移動しつつ、押込み量を一定としたワーク表面倣い測定、つまり、「アクティブ設計値倣い測定」が実現される。
【０００９】
Ｖ＝Ｇｆ×Ｖｆ＋Ｇｅ×Ｖｅ＋Ｇｃ×Ｖｃ  ・・・（式１）
【００１０】
図１を参照しながら式の意味を簡単に説明する。
図１において、設計データ（輪郭点データ）から所定量（測定子半径ｒ―基準押込み量Ｅ０）オフセットしたところにＰＣＣ曲線（つまり、倣い経路）がある。
また、図１においては、実際のワークが設計データから少しずれている。
【００１１】
ベクトルＶｆは経路速度ベクトルである。経路速度ベクトルＶｆは、ＰＣＣ曲線上の補間点（ｉ）から次の補間点（ｉ＋１）に向かう方向をもつ。なお、経路速度ベクトルＶｆの大きさは、例えば、補間点（ｉ）におけるＰＣＣ曲線の曲率に基づいて決定される（例えば特許文献３）。
【００１２】
ベクトルＶｅは、押込み量修正ベクトルであり、プローブの押込み量Ｅｐが所定の基準押込み量Ｅ０（例えば０．３ｍｍ）になるようにするためのベクトルである。（押込み量修正ベクトルＶｅは、必然的に、ワーク表面の法線に平行となる。）
【００１３】
ベクトルＶｃは、軌道修正ベクトルである。軌道修正ベクトルは、プローブ位置からＰＣＣ曲線に下ろした垂線に平行である。Ｇｆ、Ｇｅ、Ｇｃはそれぞれ倣い駆動ゲイン、押込み方向修正ゲイン、軌道修正ゲインである。
【００１４】
ＰＣＣ曲線を図２に例示する。
点Ｐ１から点Ｐ７まで一続きのＰＣＣ曲線Ｌ＿ＰＣＣがあり、このＰＣＣ曲線Ｌ＿ＰＣＣは、点Ｐにより複数のセグメントに分割されている。（各セグメントもＰＣＣ曲線である。）
各セグメントの終了点は、次のセグメント（ＰＣＣ曲線）の開始点となっている。セグメントの開始点の座標を（ＫＸ０、ＫＹ０、ＫＺ０）と表わし、そのＰＣＣ曲線における始点と終点との間の直線の長さをＤとする。
このように定義すると、ＰＣＣ曲線上の任意の位置における座標｛Ｘ（Ｓ）、Ｙ（Ｓ）、Ｚ（Ｓ）｝は、３次曲線を表わすための係数（ＫＸ３、ＫＸ２・・・・ＫＺ１、ＫＺ０）を用い、次の式で表される。
【００１５】
Ｘ（Ｓ）＝ＫＸ３Ｓ３＋ＫＸ２Ｓ２＋ＫＸ１Ｓ＋ＫＸ０
Ｙ（Ｓ）＝ＫＹ３Ｓ３＋ＫＹ２Ｓ２＋ＫＹ１Ｓ＋ＫＹ０
Ｚ（Ｓ）＝ＫＺ３Ｓ３＋ＫＺ２Ｓ２＋ＫＺ１Ｓ＋ＫＺ０
【００１６】
ワークが平面や曲率一定の円で構成されているような単純形状であれば、倣い測定の経路も直線や円といった単純形状でよく、ＰＣＣ曲線を数多くのセグメントに分割する必要はない。
一方、ワークの測定部位が複雑な形状をしており、かつ、このような測定部位に精度良く追随しながら高精度の倣い測定を行うためには、ＰＣＣ曲線を細かく分割してセグメント数を増やさなければならない。
例えば、図３のような曲線の輪郭形状を倣い測定する場合、図４に例示するように曲率が変化するところでセグメントに分割する。そして、セグメントごとに適切な速度パターンが設定される（特許文献３）。つまり、曲線に精度よく追随しながら、かつ、できる限り高速に移動する速度パターンが各セグメントに応じて設定される。
【００１７】
セグメントごとに設定された速度に従って移動速度の加減速制御を行うことを考える。前述のように、セグメントごとに最高速度Ｖｍａｘが与えられている。ここで、セグメントごとに、開始速度Ｖｓからできる限り速く加速して最高速度Ｖｍａｘに達する速度計画を立てたい。
仮に、ＶｓからＶｍａｘに達するための加速に要する時間を加速時間Ｔａとする。
Ｖｍａｘ＝Ｖｓ＋ａ×Ｔａ
ここで、ａは加速度とする。
【００１８】
加速時間Ｔａを短くするには、加速度ａをできる限り大きく設定したい。
ただし、ここで、制約が二つある。
一つ目の制約としては、加速度ａには上限値があることである。
加速度ａの上限値を加速度上限値Ａｕｔｍと表わすことにする。
加速度上限値Ａｕｔｍは、例えば、マシン（三次元測定機）の耐加速度の半分に設定される。
これは、後に加速度カーブをＳ字曲線化するためである。
加速度上限値Ａｕｔｍの値は、例えば、１．３３ｍ／ｓｅｃである。
【００１９】
二つ目の制約は、加速時間Ｔａを５０ｍｓｅｃ（０．０５秒）の倍数とすることである。
マシン（三次元測定機）の実際の制御サイクルタイムはもっと短く、例えば０．４ｍｓｅｃなのであるが、加速時間Ｔａはかなり大きな単位時間（５０ｍｓｅｃ）の区切りでカウントされる。
（これも後に加速度カーブをＳ字曲線化する都合上のことである。この理由は後述する。）
【００２０】
いま、目標とする速度の増分ΔＶ（＝Ｖｍａｘ−Ｖｓ）を例えば０．３５ｍ／ｓｅｃであるとする。
加速時間Ｔａは、５０ｍｓｅｃの倍数なので、ｋを整数として、Ｔａ＝５０ｍｓｅｃ×ｋとする。
【００２１】
Ｖｍａｘ＝Ｖｓ＋ａ×Ｔａ
Ｖｍａｘ−Ｖｓ＝ａ×Ｔａ
０．３５［ｍ／ｓ］＝ａ×５０［ｍｓｅｃ］×ｋ
ａ＝０．３５［ｍ／ｓ］／０．０５［ｓｅｃ］×ｋ
【００２２】
さて、上記の二つの制約のもとで加速度ａを一番大きくしたいと考える。
ｋを１から順に大きくしていくと、そのときａは次のようになる。
【００２３】
ｋ＝１、２、３、４、５、６、
ａ＝７、３．５、２．３３、１．７５、１．４、１．６６
【００２４】
したがって、加速度ａは１．１６［ｍ／ｓｅｃ］でそのときの加速時間Ｔａは３００ｍｓｅｃ（０．３秒）と求められる。
【００２５】
このような計算をセグメントごとに行なうと、速度パターンは例えば図５のように求められる。
この図５の速度パターンでは加速度を一定とし、すなわち、速度は時間に関して一次関数として与えられている。
これを実際の滑らかな移動制御のため、速度が変化する領域（加速区間）に対し、徐々に加速し、徐々に減速する、という滑らかなＳ字加減速処理を行なう。
【００２６】
一次関数として与えられた速度パターンに対してＳ字加減速処理を行なうため、Ｓ字曲線に沿って速度を変化させる加速度テーブルが予め用意されている。
例えば、図６に例示のように、Ｓ字曲線に沿って速度を変化させるときの０．４ｍｓｅｃごとの速度Ｖｉが一つのモデルパターンとして用意されている。
このＳ字曲線のモデルパターンは、０．４ｍｓｅｃごとに１２５個の点からなり、すなわち５０ｍｓｅｃが一つの単位となっている。
つまり、加速度テーブルが５０ｍｓｅｃを単位としている。
一次関数として与えられた速度パターンに合わせて加速度を下げたい場合には（加速時間Ｔａを長くとりたい場合には）、図７に例示のように、この１２５個の加速度カーブをそのまま横に（時間方向に）引き伸ばして、２５０個、３７５個、５００個…とすることで、加速度カーブの形状そのものは変えずに加速時間を伸ばす。
この加速度カーブはマシンの開発時にマシンの特性に合わせて滑らかなトルク変動を得るために計算されたものであり、この加速度カーブにおいて最大加速度の発生タイミングは加速時間全体の３６．８％のところにある。
これは、加速によって発生するマシンの振動が減衰するための時間を長めにとるようにする工夫である。
【００２７】
（ちなみに、一定加速度ａで一次関数的に速度が増加する速度パターンの加速区間をＳ字曲線化すると、最大加速度Ａｍａｘは２ａになる。第１の制約で加速度上限値Ａｕｔｍをマシンの耐加速度の半分に設定したのはこのためである。）
【００２８】
図５で求められた一次関数の加速領域に対して図６の加速度テーブルを適用する。
例えば、時間軸を延ばし、速度軸を延ばして図７に例示のように図５の速度パターンをＳ字曲線化する。
【００２９】
さらに、実際のマシンの駆動制御では座標指令値が必要になる。
したがって、図７で求められた速度パターンに基づき、制御サイクルタイムｔｉごとの目標座標値を順次算出する。
このようにして制御サイクルタイムごとの目標座標値が得られる。
制御装置からマシンに目標座標値を順次与えることにより図７の速度パターンに従った滑らかな加減速を行いつつ、できる限り速く倣い経路に沿った倣い測定が行なわれる。
【先行技術文献】
【特許文献】
【００３０】
【特許文献１】特開２００８−２４１４２０号公報
【特許文献２】特開２０１３−２３８５７３号公報
【特許文献３】特開２０１４−２１００４号公報（特許６０６３１６１）
【発明の概要】
【発明が解決しようとする課題】
【００３１】
上記に説明した速度計画法の例では、加速度上限値Ａｕｔｍが１．３３ｍ／ｓｅｃであるにも関わらず、加速時間を５０ｍｓｅｃ単位でしか選べなかったため、加速度として１．１６ｍ／ｓｅｃと設定して速度パターンを求めていた。
この加速度１．１６ｍ／ｓｅｃは実際のマシンの性能（加速度上限値Ａｕｔｍ：１．３３ｍ／ｓｅｃ）よりも小さい値である。
したがって、加速が遅く、測定時間が長くなる要因となっていた。
【００３２】
本発明の目的は、マシン性能を十分に発揮できる加速制御を行なって測定時間を短縮できる形状測定装置の制御方法を提供することにある。
【課題を解決するための手段】
【００３３】
本発明の三次元測定機の制御計画の設計方法は、
プローブを三次元的に移動させる移動機構を有し、ワークの形状を測定する三次元測定機の制御計画の設計方法であって、
所与の移動区間を所与の速度計画で計画された区間内目標速度に達しながらできる限り短い時間で移動する制御計画を設計するにあたり、
制御サイクルタイムの整数倍となる加速時間Ｔａを設定する加速時間算出工程と、
前記加速時間算出工程で得られた加速時間Ｔａと前記移動区間内の目標速度増分ΔＶとから区間内の最高加速度Ａｍａｘを算出する最高加速度算出工程と、
前記加速時間Ｔａと前記最高加速度Ａｍａｘとを含み、制御サイクルタイムごとの目標座標値を時間の関数として与える加速区間座標算出式により、制御サイクルタイムごとの目標座標値を求める座標算出工程と、を有し、
加速区間座標算出式は、前記加速時間Ｔａと前記最高加速度Ａｍａｘとを含み、徐々に加速し、徐々に減速する加速度を与える加速度連続関数を時間に関して二回積分した式により与えられる
ことを特徴とする。
【００３４】
本発明では、
前記加速時間算出工程において、前記加速時間Ｔａは、前記目標速度増分ΔＶを前記三次元測定機の耐加速度の半分で除した値を前記制御サイクルタイムの整数倍になるように切り上げた値である
ことが好ましい。
【００３５】
本発明では、
前記加速度連続関数は、加速度Ａ（ｔ）を時間ｔの関数として次のように与えられる
ことが好ましい。
Ａ（ｔ）＝Ａ｛ｓｉｎ（ωｔ−π／２）＋１｝
ω＝２π／Ｔａ
Ａ＝Ａｍａｘ／２
【００３６】
本発明の形状測定装置の制御方法は、
前記三次元測定機の制御計画の設計方法で与えられた制御計画に従って前記三次元測定機を駆動制御することを特徴とする。
【図面の簡単な説明】
【００３７】
【図１】設計データ（輪郭点データ）とＰＣＣ曲線と実際のワークとの関係を例示する図である。
【図２】ＰＣＣ曲線を例示するである。
【図３】曲線状の輪郭（ＰＣＣ曲線）を例示する図である。
【図４】ＰＣＣ曲線をセグメントに分割した一例を示す図である。
【図５】速度パターンの一例を示す図である。
【図６】Ｓ字曲線の加速度テーブルの例を示す図である。
【図７】加速度テーブルを用いてＳ字加減速処理を行なう様子を模式的に例示した図である。
【図８】形状測定システムの全体構成を示す図である。
【図９】モーションコントローラおよびホストコンピュータの機能ブロック図である。
【図１０】移動指令生成部の構成を示す図である。
【図１１】モーションコントローラ３００の制御動作を表わす全体フローチャートである。
【図１２】速度パターンの加速区間をＳ字加減速カーブに修正する工程を示すフローチャートである。
【発明を実施するための形態】
【００３８】
本発明の実施形態を図示するとともに図中の各要素に付した符号を参照して説明する。
（第１実施形態）
図８は、形状測定システム１００の全体構成を示す図である。
形状測定システム１００は、三次元測定機２００と、三次元測定機２００の駆動を制御するモーションコントローラ３００と、モーションコントローラ３００を制御すると共に必要なデータ処理を実行するホストコンピュータ５００と、を備える。
【００３９】
三次元測定機２００自体はよく知られているものであるが、簡単に例示しておく。
三次元測定機２００は、定盤２１０と、移動機構２２０と、プローブ２３０と、を備える。
【００４０】
移動機構２２０は、定盤２１０上をＹ方向にスライド可能に設けられた門型のＹスライダ２２１と、Ｙスライダ２２１のＸ方向のビームに沿ってスライドするＸスライダ２２２と、Ｘスライダ２２２に固定されたＺ軸コラム２２３と、Ｚ軸コラム２２３内をＺ方向に昇降するＺスピンドル２２４と、を備える。
【００４１】
Ｙスライダ２２１、Ｘスライダ２２２およびＺスピンドル２２４には、それぞれ駆動モータ（不図示）とエンコーダ（不図示）とが付設されている。モーションコントローラ３００からの駆動制御信号によって各駆動モータが駆動制御される。エンコーダは、Ｙスライダ２２１、Ｘスライダ２２２およびＺスピンドル２２４それぞれの移動量を検出し、検出値をモーションコントローラ３００に出力する。Ｚスピンドル２２４の下端にプローブ２３０が取り付けられている。
【００４２】
プローブ２３０は、測定子２３２を先端側（−Ｚ軸方向側）に有するスタイラス２３１と、スタイラス２３１の基端側（＋Ｚ軸方向側）を支持する支持部２３３と、を備える。測定子２３２は、球状であって、測定対象物Ｗに接触する。
【００４３】
支持部２３３は、スタイラス２３１に外力が加わった場合、すなわち測定子２３２が測定対象物に当接した場合にはスタイラス２３１が一定の範囲内でＸ、Ｙ、Ｚ軸の各軸方向に移動可能となるようにスタイラス２３１を支持している。さらに、支持部２３３は、スタイラス２３１の各軸方向の位置をそれぞれ検出するためのプローブセンサー（不図示）を備える。プローブセンサは検出値をモーションコントローラ３００に出力する。
【００４４】
（モーションコントローラ３００の構成）
図９は、モーションコントローラ３００およびホストコンピュータ５００の機能ブロック図である。
モーションコントローラ３００は、測定指令取得部３１０と、カウンタ部３３０と、移動指令生成部３４０と、駆動制御部３５０と、を備える。
【００４５】
測定指令取得部３１０は、ホストコンピュータ５００からＰＣＣ曲線データを取得する。カウンタ部３３０は、エンコーダから出力される検出信号をカウントして各スライダの変位量を計測するとともに、プローブセンサから出力される検出信号をカウントしてプローブ２３０（スタイラス２３１）の変位量を計測する。計測されたスライダおよびプローブ２３０の変位から測定子２３２の座標位置ＰＰ（以下、プローブ位置ＰＰ）が得られる。また、カウンタ部３３０にて計測されたスタイラス２３１の変位（プローブセンサの検出値（Ｐｘ，Ｐｙ，Ｐｚ））から、測定子２３２の押込み量（ベクトルＥｐの絶対値）が得られる。
【００４６】
移動指令生成部３４０は、プローブ２３０（測定子２３２）で測定対象物表面を測定するためのプローブ２３０（測定子２３２）の移動経路を算出し、その移動経路に沿った速度ベクトルを算出する。
移動指令生成部３４０の構成を図１０に示す。
移動指令生成部３４０は、速度パターン計画部３４１と、ベクトル指令生成部３４８と、を備える。
速度パターン計画部３４１は、速度パターン演算部３４２と、速度パターン修正部３４３と、を備える。速度パターン修正部３４３は、加減速調整部３４４を有する。各機能部の動作についてはフローチャートを参照しながら後述する。
【００４７】
駆動制御部３５０は、移動指令生成部３４０にて算出された移動ベクトルに基づいて、各スライダを駆動制御する。
【００４８】
なお、モーションコントローラ３００には、手動コントローラ４００が接続されている。
手動コントローラ４００は、ジョイスティックおよび各種ボタンを有し、ユーザからの手動入力操作を受け付け、ユーザの操作指令をモーションコントローラ３００に送る。この場合、モーションコントローラ３００（駆動制御部３５０）は、ユーザの操作指令に応じて各スライダを駆動制御する。
【００４９】
（ホストコンピュータ５００の構成）
ホストコンピュータ５００は、ＣＰＵ５１１（ＣｅｎｔｒａｌＰｒｏｃｅｓｓｉｎｇＵｎｉｔ）やメモリ等を備えて構成され、モーションコントローラ３００を介して三次元測定機２００を制御する。
ホストコンピュータ５００は、さらに、記憶部５２０と、形状解析部５３０と、を備える。記憶部５２０は、測定対象物（ワーク）Ｗの形状に関する設計データ（ＣＡＤデータや、ＮＵＲＢＳデータ等）、測定で得られた測定データ、および、測定動作全体を制御する測定制御プログラムを格納する。
【００５０】
形状解析部５３０は、モーションコントローラ３００から出力された測定データに基づいて測定対象物の表面形状データを算出し、算出した測定対象物の表面形状データの誤差や歪み等を求める形状解析を行う。また、形状解析部５３０は、設計データ（ＣＡＤデータや、ＮＵＲＢＳデータ等）からＰＣＣ曲線への変換等の演算処理も担う。
【００５１】
ＣＰＵ５１１（中央処理装置）で測定制御プログラムを実行することにより本実施形態の測定動作が実現される。
【００５２】
ホストコンピュータ５００には、必要に応じて、出力装置（ディスプレイやプリンタ）および入力装置（キーボードやマウス）が接続されている。
【００５３】
（制御方法）
本実施形態に係る形状測定装置の制御方法を説明する。
従来技術では、速度パターンの速度が変化する領域にＳ字加減速処理をするため、５０ｍｓｅｃ単位でＳ字曲線に基づく加速度テーブルを用意していた。
そして、加速度テーブルを当てはめて加速領域をＳ字曲線化し、さらに、制御サイクルタイムごとの目標座標値を求めていた。
この方法は、５０ｍｓｅｃという大きな単位でしか加速時間を選択できないという問題があった。
【００５４】
そこで、本実施形態では、制御サイクルタイム刻みで加速時間Ｔａを増減できるようにする。
また、加速区間の最大加速度Ａｍａｘが得られたら、加速時間Ｔａと最大加速度Ａｍａｘとに基づいて制御サイクルタイムｔｉごとの目標座標値を直接計算できるようにする。
【００５５】
実施形態のフローチャートを説明する前に、加速区間の最大加速度Ａｍａｘと加速時間Ｔａに基づいて制御サイクルタイムｔｉごとの目標座標値を直接計算ための数式を次のように設定しておく。
まずは、加速時間Ｔａと最大加速度Ａｍａｘとに基づいて、徐々に加速し、徐々に減速する加速度カーブを表わす関数を設定する。
ここでは、サインカーブを用いて加速度カーブを次のように表わす（もちろん三角関数のコサインカーブを用いてもよい）。
【００５６】
Ａ（ｔ）＝Ａ｛ｓｉｎ（ωｔ−π／２）＋１｝
Ａ＝Ａｍａｘ／２
ω＝２π／Ｔａ
【００５７】
マシンの位置制御では、制御サイクルタイムごとの目標座標値を得る必要があるので、前式を時間に関して２回積分する。
Ｄ（ｔ）＝∫∫Ａ（ｔ）ｄｔｄｔ
＝−（Ａ／ω２）ｓｉｎ（ωｔ−π／２）＋Ａ・ｔ２／２＋Ｖｓ・ｔ＋Ｄｓ
【００５８】
Ｖｓは、加速開始時の速度である。
Ｄｓは、加速開始時の座標値である。
【００５９】
いま、初期条件を［０，０］（ｔ＝０のときＤ（０）＝０）とする。
すると、上式は次のようになる。
Ｄ（ｔ）＝−（Ａ／ω２）ｓｉｎ（ωｔ−π／２）＋Ａ・ｔ２／２−Ａ／ω２
【００６０】
また、加速区間における最大速度をＶｍａｘと表わす。（ここでは、Ｖｍａｘは加速区間の最終速度に相当する）
また、加速区間の平均加速度はＡｍａｘ／２（＝Ａ）である。
すると、Ｖｍａｘ＝Ａ・Ｔａであるから、ω＝π・Ａｍａｘ／Ｖｍａｘと表わすこともできる。
【００６１】
ｔは、制御サイクルタイムＴｃｙｃの倍数でしか選択できないから、ｋを整数としてｔ＝Ｔｃｙｃ×ｋと表わす。
このとき、制御サイクルタイムごとの座標値は次のように直接得られる。
【００６２】
D(k)=-(Amax/ω2)sin(Tcyc・ω・k-π/2)+Amax・(Tcyc・k)2/2-A/ω2
【００６３】
例えば、制御サイクルタイムが０．４［ｍｓｅｃ］であれば、制御サイクルタイムごとの座標値は次のようになる。
D(k)=-(Amax/ω2)sin(0.4[msec]・ω・k-π/2)+Amax・(0.4[msec]・k)2/2-A/ω2
【００６４】
上式を加速区間座標算出式と称することにする。
【００６５】
図１１は、モーションコントローラ３００の制御動作を表わす全体フローチャートである。
モーションコントローラ３００は、ホストコンピュータ５００で生成された測定指令としてのＰＣＣ曲線データを受信する（ＳＴ１１０）。
速度パターン計画部３４１は、このＰＣＣ曲線データに従ってプローブ２３０を倣い移動させるための速度パターンを生成する（ＳＴ１２０）。
速度パターン演算部３４２は、ＰＣＣ曲線に精度よく追随しながら、かつ、できる限り高速に移動する速度パターンをセグメントごとに生成する（ＳＴ１３０）。
この工程自体は従来と同じであり、例えば背景技術で説明した図５のような速度パターンが生成される。
【００６６】
次に一次関数で与えられている速度パターンに対し、Ｓ字加減速になるように速度パターンを修正する（ＳＴ２００）。
速度パターンの修正工程を図１２のフローチャートを参照しながら説明する。
まず、ＳＴ２１０において、目標とする速度の増分ΔＶを求める。
ΔＶ＝Ｖｍａｘ−Ｖｓ
である。
【００６７】
次に、加速度上限値Ａｕｔｍと目標速度増分ΔＶとから仮加速時間Ｔｔｅｍを算出する（ＳＴ２２０）。
加速度上限値Ａｕｔｍの定義は背景技術の説明と同じで、マシン（三次元測定機）の耐加速度の半分に設定される。
【００６８】
Ｔｔｅｍ＝ΔＶ／Ａｕｔｍ
【００６９】
さて、加速時間は、制御サイクルタイムＴｃｙｃの整数倍でなければならない。
上式で求めた仮加速時間Ｔｔｅｍが制御サイクルタイムＴｃｙｃの倍数でないときには、加速時間が制御サイクルタイムＴｃｙｃの倍数になるように切り上げる必要がある（ＳＴ２３０）。
【００７０】
Ｎｔｃｙｃ＝Ｔｔｅｍ／Ｔｃｙｃ
Ｎｃｙｃ＝［Ｎｔｃｙｃ＋１］
【００７１】
［ｘ］はｘを越えない最大の整数を表わす床関数とする。
あるいは、天井関数（ｘ以上の最小の整数）ｃｅｉｌｉｎｇ（ｘ）を使うと、
Ｎｃｙｃ＝ｃｅｉｌｉｎｇ（Ｎｔｃｙｃ）
とも表せる。
このようにして求まるＮｃｙｃが加速時間の制御サイクルタイムの回数である。
したがって、加速時間Ｔａは次のようになる。
【００７２】
Ｔａ＝Ｔｃｙｃ×Ｎｃｙｃ
【００７３】
加速時間Ｔａが求まったので、改めて、目標速度増分ΔＶと加速時間Ｔａとから区間内最高加速度Ａｍａｘを求める（ＳＴ２４０）。
Ａｍａｘ＝（ΔＶ／Ｔａ）×２
（加速度上限値Ａｕｔｍは耐久限度加速度の半分に設定していたが、加速カーブをＳ字曲線にしたときの最高到達加速度Ａｍａｘは、耐久限度加速度の近くまで上がる。）
【００７４】
ここまでで、加速区間の加速時間Ｔａと最高加速度Ａｍａｘとが求まったので、前述の加速区間座標算出式に加速時間Ｔａと最高加速度Ａｍａｘとを代入する。
さらに、ｋ＝１からＮｃｙｃまで順に制御サイクルタイムごとの目標座標値を求める（ＳＴ２５０）。
このようにして、速度パターンを修正して滑らかな加減速を行なうための制御サイクルタイムごとの制御指令値（目標座標値）が得られた。
【００７５】
図１１に戻って、あとは、この修正された速度パターンに従った移動指令でプローブを移動させていけばよい。
ベクトル指令生成部３４８で合成ベクトル指令を生成し（ＳＴ１４０）、プローブの駆動制御を実行すればよい（ＳＴ１５０）。
【００７６】
本実施形態によれば、滑らかな加減速制御を行ないつつも、取り得る最も短い加速時間で加速を行なうことができる。
したがって、測定時間の短縮ができ、測定効率が向上する。
また、サインカーブを用いた本実施形態のＳ字加減速処理は従来のＳ字加減速処理よりも滑らかな加減速カーブを生成でき、このことは三次元測定機の振動を抑制し、測定精度の向上に繋がると期待できる。
【００７７】
上記実施形態のサインカーブを元とする加速度カーブの生成は、解析的な計算（積分）が可能であるため、（制御サイクルタイムの倍数で）任意に加速時間を選択でき、さらに、制御サイクルタイムごとに加速度、速度、位置を解析的に得られる。
解析計算で制御サイクルタイムごとの位置を直接時系列応答として得られるので、プログラムを非常にシンプルにできる。
一つデメリットを挙げるとすると、最大加速度発生タイミングを少し前半にずらすといった極めて高度な最適化はできない点である。
【００７８】
ここで、最大加速度発生タイミングをずらすためには、加速度関数を、Ａ′（ｔ）＝Ａ′｛ｓｉｎ（２π（ａｔ２＋ｂｔ）−π／２）＋１｝のように変形することで対応は可能である。
あるいは、ガウス関数を用いて、加速度関数を、例えば次のようにしてもよい（最大加速度発生タイミングを３６．８％となるように調整してある）。
【００７９】
【数１】
2020115099.tif 000003
【００８０】
このようにすれば、滑らかな加速度カーブであって、かつ、最大加速度発生タイミングを任意に調整することができる。
しかしながら、これらの式は解析的に計算できないため、速度、位置を得るのに数値計算（数値積分）を経なければならず、演算負荷が大きい。
最終的にほしい位置を表わす関数が解析的に得られないことが大きなデメリットであり、出力応答に時間が掛かると結局は測定時間が長くなる。
【００８１】
実際に発明者らはシミュレーションしてみたところ、最大加速度発生タイミングをずらさないことの測定精度への影響は許容範囲であり、他の工夫でカバーできる。
最大加速度発生タイミングをずらすためのプログラムの複雑さ、演算負荷、応答時間の遅れなどのデメリットが大きく、本実施形態の方が優れると考えられる。
【００８２】
なお、本発明は上記実施形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
「加速」を例に説明したが、「減速」の場合も同じである（式の適用自体は同じである）。
【符号の説明】
【００８３】
１００…形状測定システム、
２００…三次元測定機、
２１０…定盤、２２０…移動機構、２２１…Ｙスライダ、２２２…Ｘスライダ、２２３…Ｚ軸コラム、２２４…Ｚスピンドル、
２３０…プローブ、２３１…スタイラス、２３２…測定子、２３３…支持部、
３００…モーションコントローラ、
３１０…測定指令取得部、３３０…カウンタ部、３４０…移動指令生成部、
３４１…速度パターン計画部、
３４２…速度パターン演算部、３４３…速度パターン修正部、３４４…加減速調整部、３４８…ベクトル指令生成部、
３５０…駆動制御部、
４００…手動コントローラ、
５００…ホストコンピュータ、５２０…記憶部、５３０…形状解析部。
【図１】
2020115099.tif 000004
【図２】
2020115099.tif 000005
【図３】
2020115099.tif 000006
【図４】
2020115099.tif 000007
【図５】
2020115099.tif 000008
【図６】
2020115099.tif 000009
【図７】
2020115099.tif 000010
【図８】
2020115099.tif 000011
【図９】
2020115099.tif 000012
【図１０】
2020115099.tif 000013
【図１１】
2020115099.tif 000014
【図１２】
2020115099.tif 000015