(57)【要約】【課題】軌道修正能力と制御安定性とを両立することができる形状測定装置の制御方法を提供する。【解決手段】倣い測定におけるプローブの移動指令を次の合成速度ベクトルＶに従って生成する。  Ｖ＝Ｇｆ・Ｖｆ＋Ｇｅ・Ｖｅ＋ｓｇ（ｐ）・Ｇｃ・Ｖｃ２  Ｖｆは、倣い経路に沿ってプローブを移動させるベクトルである。Ｖｅは、プローブのワークへの押込み量を基準押込み量に保つためのベクトルである。Ｖｃ２は（Ｖｃ１・ｑ）ｑで表わされる。Ｖｃ１は、測定子が倣い軌道に向かうようにプローブ位置を修正する方向のベクトルである。ｑは、ワーク表面の法線とＶｆとの外積で与えられるベクトルである。ワークの設計データに基づくワークの法線方向をＮｗとする。ｐはＶｃ２とＮｗとの内積であり、ｓｇ（ｐ）はｐの値に応じて＋１または−１を返す関数である。【選択図】図１５
2018009905.tif 000002
【特許請求の範囲】
【請求項１】
先端に測定子を有するプローブと、前記プローブを移動させる移動機構と、を備え、前記測定子とワーク表面との接触を検知して前記ワークの形状を測定する形状測定装置の制御方法であって、
前記ワークの設計データに基づいて前記測定子を移動させる倣い経路を求め、前記プローブの前記ワークへの押込み量を基準押込み量に保つように制御しながら前記測定子を前記倣い経路に沿って移動させるにあたって、
プローブの移動指令を次の式で表される合成速度ベクトルＶに従って生成する
ことを特徴とする形状測定装置の制御方法。
合成速度ベクトルＶ＝Ｇｆ・Ｖｆ＋Ｇｅ・Ｖｅ＋ｓｇ（ｐ）・Ｇｃ・Ｖｃ２
ここで、
経路速度ベクトルＶｆは、前記倣い経路に沿って前記プローブを移動させるためのベクトルである。
押込み修正ベクトルＶｅは、前記プローブの前記ワークへの押込み量を基準押込み量に保つためのベクトルである。
第２軌道修正ベクトルＶｃ２は（Ｖｃ１・ｑ）ｑで表わされる。
第１軌道修正ベクトルＶｃ１は、測定子が倣い軌道に向かうようにプローブ位置を修正する方向のベクトルである。
軌道修正方向ベクトルｑは、ワーク表面の法線と経路速度ベクトルＶｆとの外積で与えられるベクトルである。
前記ワークの設計データに基づいて算出される測定対象面の法線方向を設計値法線方向ベクトルＮｗとするとき、ｐは第２軌道修正ベクトルＶｃ２と設計値法線方向ベクトルＮｗとの内積であり、符号決定関数ｓｇ（ｐ）はｐの値に応じて＋１または−１を返す関数である。
Ｇｆ、ＧｅおよびＧｃは任意の係数である。
【請求項２】
請求項１に記載の形状測定装置の制御方法において、
前記符号決定関数ｓｇ（ｐ）の値は、
前記第２軌道修正ベクトルＶｃ２と前記設計値法線方向ベクトルＮｗとの内積ｐが０以上のときに＋１であり、
前記第２軌道修正ベクトルＶｃ２と前記設計値法線方向ベクトルＮｗとの内積ｐが０未満のときに−１である
ことを特徴とする形状測定装置の制御方法。
【請求項３】
請求項１に記載の形状測定装置の制御方法において、
前記ワークの設計データに基づいて前記測定子を移動させる倣い経路の算出にあたって、
前記倣い経路を複数の区間に分割し、
区間ごとに測定対象面の平均の法線方向ベクトルＮｗを算出する
ことを特徴とする形状測定装置の制御方法。
【請求項４】
請求項１から請求項３のいずれかに記載の形状測定装置の制御方法をコンピュータに実行させる形状測定装置の制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、形状測定装置の制御方法に関する。
【背景技術】
【０００２】
測定対象物の表面に沿ってプローブを倣い移動させることで測定対象物の形状を測定する形状測定装置が知られている（例えば、特許文献１、２、３参照）。さらに、プローブの押し込み量を一定にするように押込み修正ベクトルを時々刻々算出して、自律的に軌道修正しながら倣い測定する方法も知られている（特許文献２）。このような設計値倣いを「アクティブ設計値倣い測定」と称することにする。
【０００３】
特許文献２（特開２０１３−２３８５７３号公報）に開示された「アクティブ設計値倣い測定」を簡単に紹介すると、「アクティブ設計値倣い測定」では、次の（式１）で表わされる合成ベクトルＶをプローブの移動指令とする。
プローブが合成ベクトルＶに基づく移動を行うと、プローブ（測定子）は予め設定された倣い経路に沿うように移動しつつ、押込み量を一定としたワーク表面倣い測定、つまり、「アクティブ設計値倣い測定」が実現される。以後、「予め設定された倣い経路」を「設計値倣い経路」と称することにする。
【０００４】
Ｖ＝Ｇｆ×Ｖｆ＋Ｇｅ×Ｖｅ＋Ｇｃ×Ｖｃ  ・・・（式１）
【０００５】
ここで、図１を参照しながら式の意味を簡単に説明しておく。
図１において、ワークの設計データから所定量（測定子半径ｒ―押込み量Ｅｐ）オフセットしたところに設計値倣い経路がある。また、図１においては、実際のワークが設計データから少しずれている場合を仮定している。
【０００６】
ベクトルＶｆは経路速度ベクトルである。
経路速度ベクトルＶｆは、設計値倣い経路上の補間点（ｉ）から次の補間点（ｉ＋１）に向かう方向をもつ。
なお、経路速度ベクトルＶｆの大きさは、例えば、補間点（ｉ）における設計値倣い経路の曲率に基づいて決定される（例えば特許文献３）。
【０００７】
ベクトルＶｅは、押込み修正ベクトルであり、プローブの押込み量Ｅｐが所定の基準押込み量（例えば０．３ｍｍ）になるようにするためのベクトルである。押込み修正ベクトルＶｅは、必然的に、ワーク表面の法線に平行となる。
【０００８】
ベクトルＶｃは、軌道修正ベクトルである。
軌道修正ベクトルは、プローブ位置から設計値倣い経路に下ろした垂線に平行である。
Ｇｆ、Ｇｅ、Ｇｃはそれぞれ倣い駆動ゲイン、押込み修正ゲイン、軌道修正ゲインである。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２００８−２４１４２０号公報
【特許文献２】特開２０１３−２３８５７３号公報
【特許文献３】特開２０１４−２１００４号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
（式１）による速度合成ベクトルＶでプローブの移動を制御すればアクティブ設計値倣い測定が実現するのであるが、各ベクトルの方向によっては制御が不安定になることがある。例えば、図１のケースでは軌道修正ベクトルＶｃと押込み修正ベクトルＶｅとが逆方向を向いている。そのためプローブ２３０の動きが振動的になるという問題がある。
【００１１】
そこで特開２０１３−２３８５７３ではＧｆ、Ｇｅ、Ｇｃの値をそれぞれ関数ｆ１（Ｃ，Ｅ）、ｆ２（Ｅ）、ｆ３（Ｃ）によって適宜調整するようにしている。
しかし、振動的挙動を抑えるべくＧｅあるいはＧｃを小さくしてしまうと、当然のことながら、合成ベクトルＶが小さくなってしまう。すると、今度は軌道修正能力や押込み修正能力が小さくなってしまうという別の問題が発生する。
したがって、軌道修正能力と制御の安定性とを両立させることはできなかった。
【００１２】
本発明の目的は、軌道修正能力と制御安定性とを両立することができる形状測定装置の制御方法を提供することにある。
【課題を解決するための手段】
【００１３】
本発明の形状測定装置の制御方法は、
先端に測定子を有するプローブと、前記プローブを移動させる移動機構と、を備え、前記測定子とワーク表面との接触を検知して前記ワークの形状を測定する形状測定装置の制御方法であって、
前記ワークの設計データに基づいて前記測定子を移動させる倣い経路を求め、前記プローブの前記ワークへの押込み量を基準押込み量に保つように制御しながら前記測定子を前記倣い経路に沿って移動させるにあたって、
プローブの移動指令を次の式で表される合成速度ベクトルＶに従って生成する
ことを特徴とする。
合成速度ベクトルＶ＝Ｇｆ・Ｖｆ＋Ｇｅ・Ｖｅ＋ｓｇ（ｐ）・Ｇｃ・Ｖｃ２
ここで、
経路速度ベクトルＶｆは、前記倣い経路に沿って前記プローブを移動させるためのベクトルである。
押込み修正ベクトルＶｅは、前記プローブの前記ワークへの押込み量を基準押込み量に保つためのベクトルである。
第２軌道修正ベクトルＶｃ２は（Ｖｃ１・ｑ）ｑで表わされる。
第１軌道修正ベクトルＶｃ１は、測定子が倣い軌道に向かうようにプローブ位置を修正する方向のベクトルである。
軌道修正方向ベクトルｑは、ワーク表面の法線と経路速度ベクトルＶｆとの外積で与えられるベクトルである。
前記ワークの設計データに基づいて算出される測定対象面の法線方向を設計値法線方向ベクトルＮｗとするとき、ｐは第２軌道修正ベクトルＶｃ２と設計値法線方向ベクトルＮｗとの内積であり、符号決定関数ｓｇ（ｐ）はｐの値に応じて＋１または−１を返す関数である。
Ｇｆ、ＧｅおよびＧｃは任意の係数である。
【００１４】
本発明では、
前記符号決定関数ｓｇ（ｐ）の値は、
前記第２軌道修正ベクトルＶｃ２と前記設計値法線方向ベクトルＮｗとの内積ｐが０以上のときに＋１であり、
前記第２軌道修正ベクトルＶｃ２と前記設計値法線方向ベクトルＮｗとの内積ｐが０未満のときに−１である
ことが好ましい。
【００１５】
本発明では、
前記ワークの設計データに基づいて前記測定子を移動させる倣い経路の算出にあたって、
前記倣い経路を複数の区間に分割し、
区間ごとに測定対象面の平均の法線方向ベクトルＮｗを算出する
ことが好ましい。
【００１６】
本発明の形状測定装置の制御プログラムは、
前記形状測定装置の制御方法をコンピュータに実行させる
ことを特徴とする。
【図面の簡単な説明】
【００１７】
【図１】背景技術として、速度合成ベクトルＶの各成分を例示した図である。
【図２】形状測定システムの全体構成を示す図である。
【図３】ホストコンピュータおよびモーションコントローラの機能ブロック図である。
【図４】測定対象物に対し、設計値倣い経路と設計値法線方向ベクトルとの例を示す図である。
【図５】測定対象物に対し、設計値倣い経路と設計値法線方向ベクトルとの例を示す図である。
【図６】アクティブ設計値倣い測定の全体制御フローチャートである。
【図７】速度合成ベクトルＶを生成する手順を説明するためのフローチャートである。
【図８】速度合成ベクトルＶを生成する手順を説明するための図である。
【図９】第２軌道修正ベクトルＶｃ２を生成する手順を説明するためのフローチャートである。
【図１０】各ベクトルの相対的な方向関係を示す図である。
【図１１】対比例を示す図である。
【図１２】図４の測定対象物の下段面をＸＩＩ−ＸＩＩ線で切断した切断面の一例を示す図である。
【図１３】プローブの動作の一例を説明するための図である。
【図１４】符号決定関数ｓｇ（ｐ）の役割を説明するための図である。
【図１５】符号決定関数ｓｇ（ｐ）の役割を説明するための図である。
【図１６】符号決定関数ｓｇ（ｐ）の役割を説明するための図である。
【発明を実施するための形態】
【００１８】
本発明の実施形態を図示するとともに図中の各要素に付した符号を参照して説明する。
（第１実施形態）
本発明の第１実施形態を説明する。
アクティブ設計値倣い測定の基本的な動作手順はすでに他の文献（例えば特許文献１の図３等）にも開示されているので以下の説明では本明発の主たる特徴である速度合成ベクトルＶの生成について説明することとする。
【００１９】
その前に、形状測定システム１００の基本的な構成を簡単に説明しておく。
図２は、形状測定システム１００の全体構成を示す図である。
形状測定システム１００は、三次元測定機２００と、三次元測定機２００の駆動を制御するモーションコントローラ３００と、モーションコントローラ３００を制御すると共に必要なデータ処理を実行するホストコンピュータ５００と、を備える。
【００２０】
三次元測定機２００は、定盤２１０と、移動機構２２０と、プローブ２３０と、を備える。
【００２１】
移動機構２２０は、定盤２１０上をＹ方向にスライド可能に設けられた門型のＹスライダ２２１と、Ｙスライダ２２１のＸ方向のビームに沿ってスライドするＸスライダ２２２と、Ｘスライダ２２２に固定されたＺ軸コラム２２３と、Ｚ軸コラム２２３内をＺ方向に昇降するＺスピンドル２２４と、を備える。
【００２２】
Ｙスライダ２２１、Ｘスライダ２２２およびＺスピンドル２２４には、それぞれ駆動モータ（不図示）とエンコーダ（不図示）とが付設されている。
モーションコントローラ３００からの駆動制御信号によって各駆動モータが駆動制御される。エンコーダは、Ｙスライダ２２１、Ｘスライダ２２２およびＺスピンドル２２４それぞれの移動量を検出し、検出値をモーションコントローラ３００に出力する。
Ｚスピンドル２２４の下端にプローブ２３０が取り付けられている。
【００２３】
プローブ２３０は、測定子２３２を先端側（−Ｚ軸方向側）に有するスタイラス２３１と、スタイラス２３１の基端側（＋Ｚ軸方向側）を支持する支持部２３３と、を備える。測定子２３２は、球状であって、測定対象物Ｗに接触する。
【００２４】
支持部２３３は、スタイラス２３１に外力が加わった場合、すなわち測定子２３２が測定対象物Ｗに当接した場合にはスタイラス２３１が一定の範囲内でＸ、Ｙ、Ｚ軸の各軸方向に移動可能となるようにスタイラス２３１を支持している。さらに、支持部２３３は、スタイラス２３１の各軸方向の位置をそれぞれ検出するためのプローブセンサー（不図示）を備える。プローブセンサは検出値をモーションコントローラ３００に出力する。
【００２５】
（ホストコンピュータ５００の構成）
図３は、ホストコンピュータ５００およびモーションコントローラ３００の機能ブロック図である。
ホストコンピュータ５００は、ＣＰＵ５１１（ＣｅｎｔｒａｌＰｒｏｃｅｓｓｉｎｇＵｎｉｔ）やメモリ等を備えて構成され、モーションコントローラ３００を介して三次元測定機２００を制御する。ホストコンピュータ５００には、必要に応じて、出力装置（ディスプレイやプリンタ）および入力装置（キーボードやマウス）が接続されている。
【００２６】
ホストコンピュータ５００は、さらに、記憶部５２０と、形状解析部５３０と、を備える。
記憶部５２０は、測定対象物（ワーク）Ｗの形状に関する設計データ（ＣＡＤデータや、ＮＵＲＢＳデータ等）、測定で得られた測定データ、および、測定動作全体を制御する測定制御プログラムを格納する。
【００２７】
形状解析部５３０は、モーションコントローラ３００から出力された測定データに基づいて測定対象物の表面形状データを算出し、算出した測定対象物の表面形状の誤差や歪み等を求める形状解析を行う。
また、形状解析部５３０は、設計データ（ＣＡＤデータや、ＮＵＲＢＳデータ等）を利用して「設計値倣い経路」を算出する演算処理も担うのであるが、本実施形態の特徴の１つとして、「設計値倣い経路」に改良を加えている。
【００２８】
倣い測定にあたって倣い測定の経路（設計値倣い経路）を予め用意する必要があるが、本実施形態における倣い測定の経路（設計値倣い経路）というのは従来のようなただの「曲線」データではなく、測定対象面の法線の情報も合わせ持った経路面データとも言えるものである。具体的にいうと、本実施形態における「設計値倣い経路」は、法線の情報も加味された倣い測定の経路曲線のことである。
【００２９】
設計値倣い経路の算出を解説する。
形状解析部５３０は、外部のＣＡＤシステム等から経路情報を含んだＣＡＤデータ（例えばＮＵＲＢＳ（Ｎｏｎ−ＵｎｉｆｏｒｍＲａｔｉｏｎａｌＢ−Ｓｐｌｉｎｅ：非一様有理Ｂスプライン）データ）を受け取り、このＣＡＤデータを点の集まりのデータに変換する。
各点のデータは、座標値（ｘ、ｙ、ｚ）と法線方向（Ｐ、Ｑ、Ｒ）とを組み合わせたデータである（つまり、（ｘ、ｙ、ｚ、Ｐ、Ｑ、Ｒ）である。）。
本明細書では、以後の説明のため、（ｘ、ｙ、ｚ、Ｐ、Ｑ、Ｒ）の情報をもつ点の集まりのデータを輪郭点データと称することにする。
【００３０】
次に、各点の座標値を法線方向に所定量だけオフセットする。所定量とは、具体的には、測定子半径ｒ―押込み量Ｅｐである。このようにして求めた点の集まりのデータをオフセット済み輪郭点データと称することにする。
ちなみに、オフセット済み輪郭点データの段階では、もちろん、法線方向（Ｐ、Ｑ、Ｒ）の情報も含まれている。
輪郭点データ上の座標値（ｘ、ｙ、ｚ）をオフセットした座標を座標値（ｘ'、ｙ'、ｚ'）で表わすことにすると、オフセット済み輪郭点データは、（ｘ'、ｙ'、ｚ'、Ｐ、Ｑ、Ｒ）の情報をもつ点の集まりのデータである。
【００３１】
そして、形状解析部５３０は、オフセット済み輪郭点データを所定次数の多項式曲線群に変換する。
ここでは、多項式として三次関数を用い、ＰＣＣ曲線群（ＰａｒａｍｅｔｒｉｃＣｕｂｉｃＣｕｒｖｅｓ）とする。
オフセット済み輪郭点データは（ｘ'、ｙ'、ｚ'、Ｐ、Ｑ、Ｒ）の情報をもつ点の集まりのデータであったが、ＰＣＣ曲線の算出には各点での法線の情報は必要なく、座標値（ｘ'、ｙ'、ｚ'）だけを用いてＰＣＣ曲線は算出される。
さらに、形状解析部５３０は、ＰＣＣ曲線を適宜分割し、分割ＰＣＣ曲線群とする。ＰＣＣ曲線をどこで分割するかについて本実施形態では特段限定しないが、例えば一定長さごとにＰＣＣ曲線を分割してもよいし、曲率がある閾値を超えて変化するような場合に変曲点の付近で分割するようにしてもよい。
この分割ＰＣＣ曲線群というのは、曲線の集まりであり、これだけであれば従来の設計値倣い経路と同じである。
【００３２】
本実施形態では、設計値倣い経路の情報として、さらに、法線の情報を追加することとした。
形状解析部５３０は、分割されたＰＣＣ曲線のセグメント（区間）ごとに平均の法線方向を算出する。
オフセット済み輪郭点データには法線の情報も含まれているのであるから、各座標の法線ベクトルを合成してから割り算すればセグメント（区間）ごとの平均の法線ベクトルＮｗが求められる。
分割されたＰＣＣ曲線のセグメント（区間）ごとに算出された平均の法線方向を「設計値法線方向」と名付けることにする。
【００３３】
倣い測定の経路であるＰＣＣ曲線自体はただの線であるからこの線自体に対して法線というものは存在しないが、測定対象となる面にはもちろん法線があり、ワーク（測定対象物）の設計データであるＣＡＤデータには面の向き（法線）の情報が含まれている。つまり、形状解析部５３０は、ＰＣＣ曲線の算出とは別の作業としてオフセット済み輪郭点データから法線の情報を取り出して区間ごとの平均法線（設計値法線方向）を求めるわけである。
【００３４】
例えば、図４のような階段状の測定対象物Ｗがあって、階段を昇るように下段面Ｆ１、下斜面Ｆ２、中段面Ｆ３、上斜面Ｆ４、上段面Ｆ５を順に倣い測定する経路を考えてみる。
下段面Ｆ１を倣い測定する経路であるＰＣＣ曲線（ここでは直線である）を第１区間経路Ｌ１とし、下斜面を倣い測定する経路であるＰＣＣ曲線（ここでは直線）を第２区間経路Ｌ２とし、以下同様に付番する。
第１区間経路Ｌ１の法線方向というのは、すなわち、下段面Ｆ１の法線方向Ｎｗ１のことである。同様に、第２区間経路Ｌ２の法線方向というのは、すなわち、下斜面Ｆ２の法線方向Ｎｗ２のことである。
ＰＣＣ曲線（経路）自体に「法線」というものは存在しないのであるが、設計値法線方向は、ＰＣＣ曲線（経路）が測定対象とする面の法線のことである。
【００３５】
念のためもう一例挙げる。
図５のように、表面が波打つように設計された測定対象物があって、表面を倣い測定する経路（ＰＣＣ曲線）を考えるとする。
左から適宜ＰＣＣ曲線を分割して、第１区間経路Ｌ１、第２区間経路Ｌ２、・・・とする。
例えば第１区間経路Ｌ１を考えてみると、第１区間経路Ｌ１が測定対象とする面は曲がっているので経路上の点ごとに面の法線の向きは異なるが、この区間で法線の平均の向きを算出することはできる。
このように算出された平均の法線ベクトルＮｗが区間経路ごとの設計値法線方向ベクトルＮｗｉである。そして、分割ＰＣＣ曲線群と各セグメントの設計値法線方向ベクトルＮｗとを対にし、これにより「設計値倣い経路」が得られる。
【００３６】
（モーションコントローラ３００の構成）
モーションコントローラ３００は、経路データ取得部３１０と、カウンタ部３２０と、移動指令生成部３３０と、駆動制御部３４０と、を備える。
【００３７】
経路データ取得部３１０は、ホストコンピュータ５００から設計値倣い経路データを取得する。
カウンタ部３２０は、エンコーダから出力される検出信号をカウントして各スライダの変位量を計測するとともに、各プローブ２３０センサから出力される検出信号をカウントしてプローブ２３０（スタイラス２３１）の変位量を計測する。
計測されたスライダおよびプローブ２３０の変位から測定子２３２の座標位置ＰＰ（以下、プローブ位置ＰＰ）が得られる。
また、カウンタ部３２０にて計測されたスタイラス２３１の変位（プローブセンサの検出値（Ｐｘ，Ｐｙ，Ｐｚ））から、測定子２３２の押込み量（ベクトルＥｐの絶対値）が得られる。
【００３８】
移動指令生成部３３０は、プローブ２３０（測定子２３２）で被測定物表面を測定するためのプローブ２３０（測定子２３２）の移動経路を算出し、その移動経路に沿った速度ベクトルを算出する。
移動指令生成部３３０は、各測定方式（測定モード）に応じた経路を算出する機能部をそれぞれ具備している。
具体的には、パッシブ設計値倣い測定、アクティブ設計値倣い測定、自律倣い測定、ポイント測定、の４つがある。
本実施形態に関係するのは、アクティブ設計値倣い測定である。
【００３９】
駆動制御部３４０は、移動指令生成部３３０にて算出された移動ベクトルに基づいて、各スライダを駆動制御する。
【００４０】
なお、モーションコントローラ３００には、手動コントローラ４００が接続されている。
手動コントローラ４００は、ジョイスティックおよび各種ボタンを有し、ユーザからの手動入力操作を受け付け、ユーザの操作指令をモーションコントローラ３００に送る。この場合、モーションコントローラ３００（駆動制御部３４０）は、ユーザの操作指令に応じて各スライダを駆動制御する。
【００４１】
図６は、アクティブ設計値倣い測定の全体制御フローチャートである。
ホストコンピュータ５００にて設計値倣い経路データが生成され、生成された設計値倣い経路データはモーションコントローラ３００に送られる（ＳＴ１００）。そして、モーションコントローラ３００は、この設計値倣い経路データに沿った経路でワーク表面をアクティブ設計値倣い測定するための移動指令である速度合成ベクトルＶを生成していく（ＳＴ２００）。
【００４２】
（速度合成ベクトルＶの生成）
さて、速度合成ベクトルＶの生成について説明する。
図７は、速度合成ベクトルＶを生成する手順を説明するためのフローチャートである。
速度合成ベクトルＶは、経路速度ベクトルＶｆ（ＳＴ２１０）と、押込み修正ベクトルＶｅ（ＳＴ２２０）と、第２軌道修正ベクトルＶｃ２（ＳＴ２３０）と、を合成したものである。
ここで、第２軌道修正ベクトルＶｃ２（ＳＴ２３０）は従来技術にはなく，本発明で初めて導入されるものである。
【００４３】
まず、経路速度ベクトルＶｆを生成する（ＳＴ２１０）
設計値倣い経路上に補間点ｉと次の補間点（ｉ＋１）があるとして、経路速度ベクトルＶｆの向きは、点ｉから点（ｉ＋１）に向かう方向として与えられる（図８参照）。
また、経路速度ベクトルＶｆの大きさは、例えば点ｉにおける設計値倣い経路の曲率に応じて設定される（特許文献：特開２０１４−２１００４）
なお、設計値倣い経路上にある点Ｐについては後述する。
【００４４】
次に押込み修正ベクトルＶｅを生成する（ＳＴ２２０）。
押込み修正ベクトルＶｅは次の式で表される。
【００４５】
【数１】
2018009905.tif 000003
【００４６】
Ｅｐはプローブ出力から得られるプローブ変位ベクトルである。
Ｅｐ＝（ｘｐ、ｙｐ、ｚｐ）
したがって、プローブの押込み量｜Ｅｐ｜は、次のようになる。
【００４７】
【数２】
2018009905.tif 000004
【００４８】
ｅｕは、プローブ出力から得られるプローブ変位方向の単位ベクトルであるとする。
【００４９】
【数３】
2018009905.tif 000005
【００５０】
すると、押込み量｜Ｅｐ｜を基準押込み量Ｅ０に保つための押込み修正ベクトルＶｅは、上式（２）で表される。
なおＫは、任意の係数である。
【００５１】
次に第２軌道修正ベクトルＶｃ２を生成する（ＳＴ２３０）。
図９は、第２軌道修正ベクトルＶｃ２を生成する手順を説明するためのフローチャートである。
図９のフローチャートに沿って第２軌道修正ベクトルＶｃ２について説明する。
第２軌道修正ベクトルＶｃ２を求めるにあたって、まずは、第１軌道修正ベクトルＶｃ１を算出しておく。この第１軌道修正ベクトルＶｃ１は従来（特開２０１３−２３８５７３）における軌道修正ベクトルＶｃと同じで、説明のために名称を変更しただけである。
プローブ位置Ｐｐから設計値倣い経路に垂線を下ろす（図８参照）。垂線の足をＰとする。プローブ位置Ｐｐから点Ｐに向かう方向のベクトルが第１軌道修正ベクトルＶｃ１である。
【００５２】
本実施形態では、この第１軌道修正ベクトルＶｃ１をそのまま使用するのではなく、軌道修正に有効な成分のみを取り出して使用する。
ＳＴ２３２において、プローブ変位方向の単位ベクトルｅｕを取得する。
プローブ変位方向の単位ベクトルｅｕについては、押込み修正ベクトルＶｅの生成にあたって説明済みである。
次にＳＴ２３３において、経路速度ベクトルＶｆを取得する。
経路変数ベクトルＶｆもＳＴ２１０で説明済みである。
【００５３】
プローブ変位方向の単位ベクトルｅｕと経路速度ベクトルＶｆとを用いて軌道修正方向ベクトルｑを算出する（ＳＴ２３４）。
軌道修正方向ベクトルｑとは、プローブ変位方向の単位ベクトルｅｕと経路速度ベクトルＶｆとの外積に平行な単位ベクトルである。
図８において、経路速度ベクトルＶｆとプローブ変位方向の単位ベクトルｅｕとが紙面上にあるとすると、軌道修正方向ベクトルｑは紙面に垂直な方向となる。
【００５４】
【数４】
2018009905.tif 000006
【００５５】
なお、「Ｖｆ×ｅｕ」としたが、矢線の向きは重要でなく、「ｅｕ×Ｖｆ」としてもよい。
【００５６】
さて、第２軌道修正ベクトルＶｃ２とは、第１軌道修正ベクトルｖｃ１のｑ方向成分のことである。すなわち、第１軌道修正ベクトルＶｃ１と軌道修正方向ベクトルｑとの内積を（Ｖｃ１・ｑ）で表すと、第２軌道修正ベクトルＶｃ２は次のように表される（ＳＴ２３５）。
【００５７】
【数５】
2018009905.tif 000007
【００５８】
このようにして第２軌道修正ベクトルＶｃ２が生成される。
図１０は各ベクトルの相対的な方向関係を示す一例である。
第２軌道修正ベクトルＶｃ２はプローブ変位方向の単位ベクトルｅｕおよび経路速度ベクトルＶｆと直交する方向にあることが理解できるであろう。
【００５９】
第２軌道修正ベクトルＶｃ２が得られたので、図７のフローチャートに戻り、ゲインＧｆ、Ｇｅ、Ｇｃを決定する（ＳＴ２４０）。
ゲインＧｆ、Ｇｅ、Ｇｃはそれぞれ予めきめられた関数によって適宜調整される（例えば特開２０１３−２３８５７３）。
例えば、Ｇｆは軌道ずれや押し込みずれが大きいときは、小さくなるように調整される。
【００６０】
次に、ＳＴ２５０として第２軌道修正ベクトルＶｃ２の向きを符号決定関数ｓｇ（ｐ）によって決定する。符号決定関数ｓｇ（ｐ）のｐは、第２軌道修正ベクトルＶｃ２と設計値法線方向ベクトルＮｗとの内積である。
【００６１】
ｐ＝（Ｖｃ２・Ｎｗ）
【００６２】
そして、内積ｐが０以上のとき、符号決定関数ｓｇ（ｐ）の値は"＋１"である。すなわち、第２軌道修正ベクトルＶｃ２と設計値法線方向ベクトルＮｗとの開き角が９０度未満のとき、第２軌道修正ベクトルＶｃ２は、そのままの符号で速度合成ベクトルＶに組み込まれる。
【００６３】
その一方、内積ｐが０より小さい（０未満）のとき、符号決定関数ｓｇ（ｐ）の値は"−１"である。すなわち、第２軌道修正ベクトルＶｃ２と設計値法線方向ベクトルＮｗとの開き角が９０度以上のとき、第２軌道修正ベクトルＶｃ２は、反転してから速度合成ベクトルＶに組み込まれる。
この符号決定関数ｓｇ（ｐ）が果たす役割については後述の動作例のなかで明らかになる。
【００６４】
そして、経路速度ベクトルＶｆ、押込み修正ベクトルＶｅおよび第２軌道修正ベクトルＶｃ２を合成して速度合成ベクトルＶが算出される（ＳＴ２６０）
【００６５】
この速度合成ベクトルＶに基づいてプローブ２３０の移動を制御すれば（ＳＴ３００）、押込み量を一定とするアクティブ設計値倣い測定が実現する。
【００６６】
このような速度合成ベクトルＶを用いることによる効果を説明する。
従来のごとく第１軌道修正ベクトルＶｃ１を用いた制御は、軌道修正として最も素直であり、計算量も少ないのであるが、プローブ２３０の挙動が振動的になる場合があり得た。
例えば、図１や図１０を見てわかるように、第１軌道修正ベクトルＶｃ１は、押込み修正ベクトルＶｅや経路速度ベクトルＶｆに対して逆向きの成分を持つ場合があり得る。
実際の場面では、第１軌道修正ベクトルＶｃ１と押込み修正ベクトルＶｅとが逆向きになって互いに干渉することが多い。
押込み修正ベクトルＶｅはワーク表面の凹凸に応じて時々刻々と向きが変わるからである。
【００６７】
第１軌道修正ベクトルＶｃ１が押込み修正ベクトルＶｅあるいは経路速度ベクトルＶｆに対して逆向きの成分を持つ場合、第１軌道修正ベクトルＶｃ１、押込み修正ベクトルＶｅおよび経路速度ベクトルＶｆを合成すると、それぞれの成分が干渉し合ってプローブ２３０の挙動が不安定になる。
ここでゲインＧｆ、Ｇｅ、Ｇｃをうまく調整して、第１軌道修正ベクトルＶｃ１、押込み修正ベクトルＶｅおよび経路速度ベクトルＶｆの相互干渉ができる限り小さくなるようにすることも考えられる。
しかし、互いの干渉が小さくなるようにゲインＧｆ、Ｇｅ、Ｇｃのうちのいずれかを小さくしてしまうと、合成速度ベクトルＶ自体が小さくなってしまうのであるから、必然的に軌道修正能力が小さくなってしまうことになる。
【００６８】
対して、本実施形態では、第２軌道修正ベクトルＶｃ２はプローブ変位方向の単位ベクトルｅｕおよび経路速度ベクトルＶｆに直交する方向となるようにした。したがって、第２軌道修正ベクトルＶｃ２が押込み修正ベクトルＶｅおよび経路速度ベクトルＶｆと干渉することはもはやなく、制御が安定する。
【００６９】
なお、ここでは、第２軌道修正ベクトルＶｃ２の符号である符号決定関数ｓｇ（ｐ）については触れなかったが、符号決定関数ｓｇ（ｐ）の値が＋１でも−１でも第２軌道修正ベクトルＶｃ２は押込み修正ベクトルＶｅおよび経路速度ベクトルＶｆに直交するのであり、符号の如何に関わらず、第２軌道修正ベクトルＶｃ２が押込み修正ベクトルＶｅや経路速度ベクトルＶｆと干渉することはない。
符号決定関数ｓｇ（ｐ）の符号の役割については後ほど説明する。
【００７０】
（対比例）
第２軌道修正ベクトルＶｃ２の効果がより明瞭になると思うので、対比例をひとつ紹介しておく。
この対比例は、第１軌道修正ベクトルＶｃ１の改良として一度は検討したが、別の問題が判明したために実施に至らなかったものである。
対比例としては、第１軌道修正ベクトルＶｃ１を準軌道修正ベクトルＶｃ１'としたものである。
準軌道修正ベクトルＶｃ１'は、第１軌道修正ベクトルＶｃ１のうちのプローブ変位方向単位ベクトルｅｕに直交する成分を抽出したものである。
図１１の破線囲み内に各ベクトルの方向の一例を示した。
式として表現すると次のようになる。
【００７１】
【数６】
2018009905.tif 000008
【００７２】
準軌道修正ベクトルＶｃ１'は押込み修正ベクトルＶｅに対して直交するベクトルになっている。したがって、第１軌道修正ベクトルＶｃ１と押込み修正ベクトルＶｅとの干渉に起因するプローブ２３０の振動的挙動は解消できる。
【００７３】
しかし、別の問題が生じる。
例えば図１１のように坂を登るような場合が典型的であるが、準軌道修正ベクトルＶｃ１'が経路速度ベクトルＶｆと反対方向の成分を持ってしまう場合があり得る。
ワークと設計値とのズレがやや大きかったり、坂の傾斜が大きかったりすると、準軌道修正ベクトルＶｃ１'が経路速度ベクトルＶｆよりも大きくなってしまい、プローブ２３０が坂を乗り越えられないおそれがある。
例えば、登り坂の傾斜が２０°を越えると制御が難しくなる。
【００７４】
この点、第２軌道修正ベクトルＶｃ２は押込み修正ベクトルＶｅだけでなく経路速度ベクトルＶｆにも直交する。したがってワーク表面の形状がいかなるものであっても安定したアクティブ設計値倣の測定を実現できるようになる。
【００７５】
（符号決定関数ｓｇ（ｐ）の役割）
上記に説明したように、第２軌道修正ベクトルＶｃ２の採用により倣い測定の制御が安定するようになったのであるが、本発明者らは更に第２軌道修正ベクトルＶｃ２の符号を工夫することでオペレータが意図した通りの測定が実行されるように改良を加えた。
まずは、符号決定関数ｓｇ（ｐ）を導入しない場合を考えてみる。
【００７６】
いま、図４の測定対象物の下段面をＸＩＩ−ＸＩＩ線で切断したところを図１２に示す。
設計データ上では下段面Ｆ１は平坦に設計されているとしても、工作機械の加工誤差があるわけであるから実際のワークＷ（測定対象物）では例えば図１２に示すように下段面Ｆ１が極僅かに湾曲してしまうことがある。
（三次元測定機２００は、このような加工誤差を測定で検出するためにある。）
図１２の例では、設計データよりも削り過ぎており、なおかつ、平坦であるべき面Ｆ１が僅かに湾曲している。
なお、加工誤差（湾曲）は極めて僅かであり、オペレータにはほぼ見えない。
【００７７】
このようなワーク（測定対象物）Ｗに対し、予め用意された倣い経路Ｌに沿ってアクティブ設計値倣い測定を行うとする。三次元測定機２００は測定指令に従ってプローブ２３０を下段面Ｆ１にアプローチさせ、さらに、押込み量を調整しながらプローブ２３０を設計値倣い経路Ｌ１に沿って移動させる。
【００７８】
ここで、図１２の断面図において、速度合成ベクトルＶを構成する各ベクトルの方向について検討してみる。
経路速度ベクトルＶｆの方向は、第１区間経路Ｌ１に沿う方向であり、図１２では紙面に垂直方向である。
押込み修正ベクトルＶｅの方向は、押込み量を修正するのであるから、ワーク（測定対象物）Ｗの表面Ｆ１に対して垂直な方向である。ここでは下段面Ｆ１が湾曲しているので、それに伴って押込み修正ベクトルＶｅの方向は僅かに斜めになっている。
【００７９】
さて、軌道修正方向ベクトルｑは、押込み修正ベクトルＶｅと経路速度ベクトルＶｆとの両方に垂直な方向であるから、ワーク（測定対象物）Ｗの表面Ｆ１に沿う方向であり、図１２では湾曲した傾斜面を昇る（あるいは降りる）方向である。さらに、第１軌道修正ベクトルＶｃ１の方向は測定子２３２の中心から設計値倣い経路Ｌ１に向かう方向であり、図１２では上向きの方向である。
第２軌道修正ベクトルＶｃ２は、第１軌道修正ベクトルＶｃ１のｑ方向成分のことであるから、図１２の例ではワークＷの湾曲の傾斜面を昇る方向になる。
【００８０】
第２軌道修正ベクトルＶｃ２による軌道修正により、プローブ２３０はオペレータが意図した経路よりも僅かに左にずれたラインを倣い測定することになるだろう（図１３参照）。
第２軌道修正ベクトルＶｃ２の作用による軌道修正で見いだされるラインは、客観的に見れば、設計値倣い経路Ｌ１に最も近い測定経路である。つまり、第２軌道修正ベクトルＶｃ２の作用により、ワーク表面において設計値倣い経路Ｌに最も接近するようにプローブ２３０は移動することになる。
図１２の例では、ワークが設計データよりも小さく削られていたのでプローブ２３０は傾斜面を昇る向きにずれたが、ワークＷが設計データよりも大きかった場合には逆にプローブ２３０は傾斜面を下る方向にずれて、設計値倣い経路Ｌ１に最も近いところで落ち着くだろう。
【００８１】
第２軌道修正ベクトルＶｃ２による軌道修正により、プローブ２３０はオペレータが意図した経路よりも僅かにずれた経路を倣い測定することになるかもしれないが、加工誤差が小さかったり、測定対象面の曲率が小さく十分に平坦面に近似していたりすれば、それほど大きな問題ではないもといえる。
実際の倣い測定の経路が設計値倣い経路から僅かにずれていても、測定したい面を測定できるので測定の目的は果たしているといえる。
【００８２】
典型的に問題になるのは、次のようなケースである。
図１４（Ａ）のように、薄板や壁の側面や端面を加工したときに設計データよりも削りが浅く、なおかつ、大きな曲率の面Ｆ１０が残ってしまっているような場合である。
このような端面Ｆ１０を予め設定された設計値倣い経路Ｌに沿って倣い測定しようとすると、前述のように、プローブ２３０は設計値倣い経路Ｌに最も近付くように移動していく。すると、プローブ２３０は、端面Ｆ１０からするすると降りるように移動し、側面に近いところを測定してしまうようなことになる（図１４（Ｂ）参照）。
なお、右側（ＰＳ１）に降りるか左側（ＰＳ２）に降りるかは偶発的に決まる。
【００８３】
さて、第２軌道修正ベクトルＶｃ２の符号を符号決定関数ｓｇ（ｐ）によって決定する。
図１５を参照していただくと分かるように、設計値法線方向ベクトルＮｗに対して９０度を超える開き角でプローブ２３０が斜面を下ろうとするとき、設計値法線方向ベクトルＮｗと第２軌道修正ベクトルＶｃ２との内積ｐの値は負の値になる。
このとき、符号決定関数ｓｇ（ｐ）の値は「−１」をとり、第２軌道修正ベクトルＶｃ２の方向が反転する。このように、第２軌道修正ベクトルＶｃ２がその向きを反転させることにより、端面Ｆ１０の稜線に向けてフィードバックがかかり、プローブ２３０は大きな曲率をもった端面Ｆ１０の稜線からほぼ外れずにこの端面の形状を倣い測定する。
【００８４】
このように第２軌道修正ベクトルＶｃ２の向きを反転させたりしても制御が破綻しないのは、押込み修正ベクトルＶｅおよび経路速度ベクトルＶｆと干渉しない第２軌道修正ベクトルＶｃ２を用いるようにしたからである。このことにより、場合に応じて第２軌道修正ベクトルＶｃ２の向きを変え、オペレータが意図した倣い測定が実現されるようになった。
【００８５】
上記に説明したのは典型的な一例であるが、第２軌道修正ベクトルＶｃ２の符号を符号決定関数ｓｇ（ｐ）で決定するようにすると、プローブ２３０の倣い経路は、押込み修正ベクトルＶｅと設計値法線方向ベクトルＮｗとが平行になるところに収束していく。
例えば、図１２から図１５に例示したような曲面を本実施形態の制御方法で倣い測定すると、プローブ２３０は斜面を登っていき、測定対象面上で設計値倣い経路Ｌに近いところにある稜線に落ち着くことになる。すなわち、押込み修正ベクトルＶｅと設計値法線方向ベクトルＮｗとが平行になるところに収束する。
このことは、本実施形態の適用により、ユーザが意図したプローブ２３０の押込み方向（すなわち設計値法線方向ベクトルＮｗの方向）で測定対象面の形状（たとえば凹凸やうねり）を測定できるようになるということである。
【００８６】
（変形例）
同様のことは、例えば、図１６のように細溝を加工するときに、設計データよりも削り過ぎ、かつ、底面に大きな曲率の面Ｆ１１ができてしまうような場合も起こり得る。
ただし、この場合は、符号決定関数ｓｇ（ｐ）の符号を逆にし、設計値法線方向ベクトルＮｗと第２軌道修正ベクトルＶｃ２との内積ｐの値が正の値のときに、符号決定関数ｓｇ（ｐ）の値を「−１」にして第２軌道修正ベクトルＶｃ２の方向を反転させることになる。すると、溝の底面に向けてフィードバックがかかり、プローブ２３０は曲率をもった溝の底面Ｆ１１からほぼ外れずにこの底面Ｆ１１の形状を倣い測定する。
【００８７】
なお、本発明は上記実施形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
【符号の説明】
【００８８】
１００…形状測定システム、
２００…三次元測定機、２１０…定盤、
２２０…移動機構、２２１…Ｙスライダ、２２２…Ｘスライダ、２２３…Ｚ軸コラム、２２４…Ｚスピンドル、
２３０…プローブ、２３１…スタイラス、２３２…測定子、２３３…支持部、
３００…モーションコントローラ、３１０…ＰＣＣ取得部、３２０…カウンタ部、３３０…移動指令生成部、３４０…駆動制御部、
４００…手動コントローラ、
５００…ホストコンピュータ、５２０…記憶部、５３０…形状解析部。
【図１】
2018009905.tif 000009
【図２】
2018009905.tif 000010
【図３】
2018009905.tif 000011
【図４】
2018009905.tif 000012
【図５】
2018009905.tif 000013
【図６】
2018009905.tif 000014
【図７】
2018009905.tif 000015
【図８】
2018009905.tif 000016
【図９】
2018009905.tif 000017
【図１０】
2018009905.tif 000018
【図１１】
2018009905.tif 000019
【図１２】
2018009905.tif 000020
【図１３】
2018009905.tif 000021
【図１４】
2018009905.tif 000022
【図１５】
2018009905.tif 000023
【図１６】
2018009905.tif 000024