(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0020】
以下、図面を参照して本発明の実施の形態について説明する。
(第1実施形態)
本発明を輪郭形状測定装置に適用した場合を例にとって説明する。
図1は、形状測定システム100の全体構成を示す図である。
形状測定システム100は、形状測定機200と、この形状測定機200を制御するコンピュータシステム300と、を備えている。
【0021】
形状測定機200の構成は、既知のものであるが、簡単に説明しておく。
形状測定機200は、ワークWを載置するテーブル210と、テーブル210に載置されたワーク表面を走査するプローブ220と、プローブ220をワークWに接触させた状態で移動させる駆動機構部230と、プローブ220の位置を検出するためのセンサ(241、242、243)と、を備える。
【0022】
テーブル210上において、ワークWは載置台211に載置され、さらにこの載置台211がテーブル210に載置されている。
【0023】
駆動機構部230は、プローブ220を略水平に保持するプローブ保持部231と、プローブ保持部231を略水平方向に送り移動させる水平送り駆動部232と、テーブル210に対して立設された垂直コラム233と、プローブ保持部231および水平送り駆動部232を垂直コラム233に沿って移動させる垂直送り駆動部234と、を備える。したがって、プローブ220を水平方向および垂直方向に移動させることができる。
コンピュータシステム300は、プローブ220がワーク表面を接触走査するように水平送り駆動部232および垂直送り駆動部234を駆動制御する。
【0024】
センサ241、242、243としては、プローブ220の水平方向位置(241)、プローブ220の垂直方向位置(242)、および、載置台211の位置(243)を検出するように設けられている。プローブ220がワークWに接触したときのセンサ値を取得することによってワークWの輪郭形状データを取得することができる。
【0025】
コンピュータシステム300は、ホストコンピュータ310と、キーボード320と、マウス330と、タッチパネルディスプレイ340と、を備える。キーボード320およびマウス330が入力装置になるのはもちろんである。さらに、本実施形態では、タッチパネルディスプレイ340も入力装置として機能する。また、タッチパネルディスプレイ340は表示装置としての出力装置でもある。
【0026】
ホストコンピュータ310は、CPUやROM、RAMを有し、各種プログラムを実行することで各種機能を実現する。プログラムとしては、例えば、形状測定プログラムと、データ解析プログラムと、がある。
形状測定プログラムは、形状測定機を駆動制御することによってワークの形状データを取得するものである。このような制御プログラムは本件出願人も数多く出願して開示いるので、ここでの説明は省略する。
【0027】
データ解析プログラムは、取得された形状データを解析して、幾何性状を算出するものである。本実施形態ではデータ解析プログラムに特徴があり、具体的には、形状解析を行う評価範囲を指定するユーザーインフェースに特徴を有する。
【0028】
(本実施形態の概要)
機能ブロック図やフローチャートを用いた詳細な説明の前に、本実施形態の概要を説明する。
機能ブロック図やフローチャートについては、概要説明のあとで後述する。概要を予め理解しておいた方が、本発明の意味を理解しやすいと考えるからである。
【0029】
本実施形態では、形状解析プログラムに特徴を有する。
特に、評価範囲の生成を半自動で行う。典型的には、ユーザが画面上で1回クリックする(もしくは一回タップする)だけで評価範囲を自動的に生成して幾何性状を算出してしまう。そこで本実施形態による形状解析操作を1クリックオペレーションと称することにする。形状解析にあたって用いる幾何要素としては、典型的には、円、線、点、が挙げられる。
円、線、点を用いた形状解析を1クリックで実行する方法の概要を順に説明する。
【0030】
なお、一般的な言葉づかいでは、マウス等のポインティングデバイスを用いて行う選択操作を"クリック"といい、タッチパネルを指でタッチして行う選択操作を"タップ"ということがあるが、両者はGUIを用いた一回の選択操作であるという点で本質的な差異はない。本明細書では両者をともに"クリック"ということにする。したがって、"クリック"と記載したからといって、タッチパネルを用いたタッチ操作を除外するものではない。さらに、キーボードを使用したショートカットキーでクリックと等価な選択操作をすることも"クリック"に含むのは当然である。
【0031】
(評価対象が円の一部である場合)
評価対象が円の一部(すなわち円弧)であり、幾何要素として円を用いた形状評価を行う場合について説明する。評価対象となる測定データが
図2のようであったとする。すなわち、左端から水平な直線的な線部分L1があり、線部分L1に続いて下に凸な円弧部分C2がある。円弧C2の中心角は約90度である。そして、円弧部分C2に続いて直線的な線部分L2がある。
線部分L2は、線部分L1に対して一段下がった位置にある。線部分L2に続いて下に凸な円弧部分C3がある。円弧C3の中心角は約90度である。そして、円弧部分C3に続いて直線的な線部分L3がある。線部分L3は、線分L2に対して一段上がった位置にあり、線部分L3と線部分L1とはほぼ同じ高さに位置している。このようなデータ列が得られているとしたときに、円弧C2の真円度を評価したいとする。
【0032】
形状解析の実行をコンピュータに指示すると、表示画面に
図3のようにモード選択画面が提示される。モード選択画面では、1クリックオペレーションを使用するかどうか聞かれる。1クリックオペレーションの使用を選択すると("はい"をクリック)、次に、評価対象の選択画面(
図4)に移行する。
【0033】
評価対象の選択画面(
図4)では、評価対象が何であるかを聞かれる。ここでは、(3)の"円"を選択するとする。これは、測定データの真円度を評価対象に選択したということである。
【0034】
評価対象を円(真円度)としたので、次に、測定データ中のどこの真円度を解析するかを選択することが必要である。ユーザの操作としては、評価したいデータ領域の付近をクリックすることである。
図5に測定データ列を再び示す。評価したいデータ列は、ここでは円弧領域C1である。ユーザとしては、円弧部分C1を選択するようにクリックする。
このとき、円弧部分C1上のデータをクリックしてもよい。
図5は、円弧部分C1上のデータをクリックしている様子を示している。または、円弧領域C1上のデータそのものをクリックしなくても、円弧領域C1の付近をクリックしてもよい。コンピュータとしては、クリックされた座標にデータが存在しない場合には、クリックされた座標から一番近いデータ点を選択された点(選択点)として認識する。
【0035】
コンピュータは、選択されたデータ点を含むデータ列に対して円の当てはめを行う。このとき、
図6に示すように、選択されたデータ点Pからデータ点列をたどって円の当てはめを実行する区間を徐々に広げていくとする。区間Z1で示すように、円弧部分C1に含まれるデータ点を対象にして円の当てはめを行えば、データ列はほぼ真円上に乗るであろう。したがって、このときの真円度は小さい値にあるであろう。
【0036】
一方、区間を広げすぎて区間Z2のように広い範囲のデータ点に対して円の当てはめを行うと、真円度が大きくなってしまうであろう。これは、円弧部分C1のデータのみならず、直線部分L1、L2のデータまで含めて円の当てはめを行っているからである。
【0037】
すなわち、円の当てはめを行う区間が異なれば、算出される真円度に違いが出てくる。そこで、ユーザは、予め真円度閾値を設定しておく。そして、コンピュータに、真円度閾値を外れず、かつ、最も広い区間を探索させる。すると、
図6の区間Z3のように、円弧部分C1をぎりぎり含む範囲が求まるであろう。区間Z3が求まったら、さらに、コンピュータに、この区間Z3の境界点B1、B2を特定させる。
【0038】
なお、区間を規定する場合には、
図6のようにx軸方向に幅をもつx方向区間だけでなく、z軸方向に幅をもつz方向区間もある。さらに、x軸方向の幅とz軸方向の幅とによって矩形の範囲を規定することもできる。あるいは、x軸やz軸とは関係なく、データ列の方向に沿った長さで範囲を規定することもできる。これらのことは後述する。
【0039】
図6のように、区間Z3の境界点B1、B2が特定されると、コンピュータは自動的に、境界点B1、B2から所定シフト量S分シフトした端点(edge point)E1、E2を算出する。
今の例では、x軸方向の幅で評価範囲を規定したいので、境界点B1、B2をx軸方向に沿ってシフトさせる。さらに、"円"によって測定データを評価したいのであるから、区間Z3よりも幅を狭めなければならない。(区間Z3よりも幅を広げると、当然のことながら、真円度は真円度閾値よりも大きくなる。)したがって、x軸方向に沿って区間Z3の内側方向に境界点B1、B2をシフトさせる。すると、
図7のように、円弧部分C1を評価するのに適切な範囲W3が求まる。
【0040】
範囲W3が求まったら、続いて、コンピュータは、自動的に範囲W3に含まれるデータ列に対して円の当てはめを行い、真円度を求める。
求められた真円度は評価値として画面上に表示される。
【0041】
このように、ユーザは、画面上で評価したいデータ(円弧部分C1のデータ)を一回クリックした(
図5)。すると、コンピュータは、予め決められた設定値(閾値やシフト量)を用いて自動的に評価範囲W3を算出した。さらに、評価範囲W3のデータに対して円の当てはめを行って評価値(真円度)を算出した。これにより、ユーザの操作は格段に簡便かつ簡素になっていることがわかるであろう。
また、コンピュータは予め決められた設定値(閾値やシフト量)を用いて自動的に評価範囲Wxを算出するのであるから、誰が操作しても、いつやっても、評価範囲W3は同じ基準で生成され、常に同等の適切さを有することになる。すなわち、評価範囲が極端に広すぎたりすることもなく、極端に狭すぎたりすることになく、常に適切な評価範囲で適切な評価値を得ることができるわけである。
【0042】
(構成)
ここまでの説明で本実施形態の概要を理解されたと思われるので、本実施形態を実現する具体的な構成を説明する。
図8に、本実施形態を実現する機能ブロック図を示す。すなわち、
図8は、形状解析プログラムで実現される機能構成を表す機能ブロック図である。
本実施形態による形状解析プログラムによって
図8に示す形状解析装置400が実現される。
【0043】
形状解析装置400は、形状測定データ読込み部410と、GUI部(グラフィカルユーザインターフェース)420と、評価範囲条件記憶部430と、評価対象設定部440と、評価範囲生成部450と、幾何性状演算部460と、を備える。
【0044】
形状測定データ読込み部410は、形状測定機200によって得たワークWの輪郭形状データを読み込む。
【0045】
GUI部420はタッチディスプレイパネル340の入出力を制御するものである。GUI部420は、データ表示はもちろんのこと、さらに、各機能部からの指令に基づいて、ユーザに選択操作を促すGUI画面を生成し、タッチパネル340に表示させる。また、GUI部340は、タッチパネル340を使用したユーザの入力操作を検知して、各機能部に操作内容を出力する。
【0046】
評価範囲条件記憶部430は、評価範囲を自動生成するために必要となる条件を記憶している。
ユーザは、データの形状解析を1クリックオペレーションで実行するためには、形状解析に先立って各種条件を設定しておく必要がある。
評価範囲条件記憶部430は、
図9に示すように、公差閾値記憶部431と、優先順序記憶部432と、シフト量記憶部433と、を備える。
【0047】
公差閾値記憶部431は、ユーザによって予め設定される公差閾値を記憶する。
公差閾値は、前記の境界点を算出するために必要な閾値である。幾何要素が円であれば、公差閾値は、すなわち、真円度閾値ということになる。また、幾何要素が線であれば、公差閾値は、すなわち、真直度ということになる。
公差閾値の設定画面の一例を
図10に示す。ここでは、真円度閾値および真直度閾値をともに1.0mmに設定している。
【0048】
優先順序記憶部432は、評価範囲としてどれを優先して使用するかを記憶する。評価範囲としては、前述したx方向範囲の他、z方向範囲、矩形範囲、および、データ列方向範囲がある。ユーザは、予めどの評価範囲を使用するかを決めて設定登録しておく。このとき、幾何要素に応じて使用すべき評価範囲は異なることがあり得るので、幾何要素ごとにどの評価範囲を使用するかを設定できるようになっているとよい。
【0049】
また、ユーザとしては主としてx方向範囲を使用したいが、評価対象によってはx方向範囲を生成できない場合がありえる。そのような時のために評価範囲に優先順序を設定しておき、第1優先の評価範囲を使用できない場合には、第2優先の評価範囲を自動的に使用するように設定しておくとよい。例えば、
図11において、線部分L1、L2、L3を評価対象部分とするならば、線がx方向に延びているのでx方向に幅をもつ評価範囲を使用するのが適切である。しかし、線部分L4や線部分L5のようにz方向に長さを持つ部分を評価対象とする場合には、x方向に幅をもつ評価範囲を生成することは適切ではない。
線部分L4や線部分L5に対してx方向範囲を生成しようとすると、エラーが発生し、場合によってはプログラムの動作が止まってしまうおそれもある。そこで、x方向範囲を第1優先で生成するが、x方向範囲の生成が無理となった場合には、第2優先の評価範囲を生成するようにしておく。
図12は、幾何要素ごとに、使用する評価範囲の優先順位を設定する表示画面の一例である。
【0050】
シフト量記憶部433は、ユーザによって予め設定されるシフト量を記憶している。シフト量は、前述の通り、境界点を求めたあと、境界点から評価範囲の端点を算出するために必要になる。シフト量は、幾何要素ごとに適した値が設定され、かつ、方向ごとにも適した値が設定されるようになっていることが好ましい。
図13は、シフト量を設定する表示画面に一例である。ここでは、シフト量はすべて1.0mmとしている。
【0051】
次に、評価対象設定部440は、ユーザに評価対象を選択設定させる。
評価対象設定部440は、対象性状選定部441と、対象データ選定部442と、を備える。
【0052】
対象性状選定部441は、ユーザに評価対象となる性状を選択設定させる。
評価対象性状としては、
図4に示したものが挙げられるが、
図14に再度示す。
まず、一次性状として、(1)点の座標、(2)線(真直度)、(3)円(真円度)が挙げられる。
なお、「(1)点の座標」を算出するとは、ユーザが指定した箇所に一番近い点の座標値を求めるという場合の他、ピーク点を算出することやボトム点を算出することを含む。
また、二次性状としては、(4)交点座標、(5)接線、(6)接円、(7)段差、(8)距離、(9)角度が挙げられる。
【0053】
ここで、評価対象性状が一次性状の場合、評価に使用する要素(点、線または円)は一つだけである。
一方、評価対象性状が二次性状である場合、評価に使用する要素が二つ必要になる。したがって、評価対象性状が二次性状の場合には、ユーザに対して要素を二つ選択させる必要がある。
ユーザに対して、評価対象となるデータを選定させるのは対象データ選定部442の機能であるが、具体的な選択画面の例については、後述の具体例のなかで説明する。
【0054】
評価範囲生成部450は、評価範囲の生成を行う。評価範囲生成部450は、ユーザが選んだ評価対象に応じ、評価範囲条件記憶部430に記憶されている各条件を参照しながら評価範囲を自動で生成する。
評価範囲を生成する工程は、概略的には先に説明した通りである。
簡単に繰り返すと、公差閾値に基づいて境界点を算出し、さらに、境界点から所定シフト量シフトさせた端点を算出する。そして、端点に挟まれた範囲が評価範囲となる。
詳細には具体例のなかで説明する。
【0055】
幾何性状演算部460は、生成された評価範囲内の測定データに対し、評価対象の性状を求める。一次性状演算部461は、評価対象性状が一次性状である場合に演算実行を担当する。二次性状演算部462は、評価対象性状が二次性状である場合に演算実行を担当する。
【0056】
一次性状演算部461と二次性状演算部462とを機能ブロックとして分けてあるのは、説明の分かりやすさを考慮してのことで、演算機能としては両者に特段の違いはない。
ただ、二次性状を演算する場合には演算が二段階になるという点で二次性状演算の方が一次性状演算の演算より工数が多くなるということはある。
【0057】
(動作例1)
本実施形態の動作手順を説明する。
動作例1として、線分の真直度を求める場合を説明する。
本実施形態の動作手順を概略示せば、
図15のフローチャートに示すように、初期設定(ST100)、ワーク形状測定(ST200)、形状評価解析(ST300)、となる。
【0058】
初期設定(ST100)では、1クリックオペレーションで必要になる条件を予め設定しておく。これには、公差閾値の設定(
図10)、評価範囲の優先順位(
図12)、シフト量の設定(
図13)がある。
【0059】
初期設定(ST100)が完了したら、評価対象となるワークWの形状測定を行う。すなわち、
図1で示した形状測定機を用いてワークWの輪郭形状データを取得する。形状データは、ホストコンピュータ310内のメモリ(例えば不揮発性メモリ)に記憶される。
【0060】
ワークWの輪郭形状データが取得できたところでこのワークWの加工精度を検証するために、ユーザとしては形状解析プログラムを起動させて、ワークWの形状解析を行う。
【0061】
形状解析の動作手順を
図16のフローチャートを参照して説明する。
形状解析プログラムが起動すると、形状解析装置400は、形状測定データ読込み部410によって、前記取得された形状データを読み込む(ST310)。
【0062】
ここでは、再び
図2の形状データを例にとる。そして、ユーザとしては、線部分L2の真直度を評価したいとする。
【0063】
形状解析装置400は、次に、モードの選択画面(
図3)をタッチパネル340に表示してユーザに選択を促す(ST320)。
ここでは、ユーザは1クリックオペレーションを選択したとする(ST330:YES)。
【0064】
次に、ユーザに評価対象の選定を促す。
すなわち、評価対象性状の選定(ST340)と、評価対象データの選定(ST350)と、をユーザに実行させる。
【0065】
ST340において、対象性状選定部441は、ユーザに対して
図17の評価対象性状の選択画面を示し、評価対象性状の選定を促す。
ここでは、ユーザは、評価対象性状の選択画面において、(2)の線(真直度)を選んだとする(
図17)。
【0066】
次に、対象データ選定部442は、ユーザに対し、評価対象とするデータを選択させる(ST350)。
ここで、評価対象性状は「線」の真直度である。したがって、対象データ選定部442は、ユーザに対し、形状データ中の線部分の選択を促す。
例えば、
図18のように、線分を選択させるメッセージを表示する。
ユーザは、評価したい線分L2上のデータをクリックする。
【0067】
さて、形状解析装置400としては、ユーザによる選択指示がすべて完了したので、次に、評価範囲の自動生成を実行することになる(ST360)。すなわち、評価範囲生成部450は、クリックされたデータ点P2からデータ点列をたどって線の当てはめを実行する範囲を徐々に広げていく。ここで、公差閾値としての線の真直度を1.0mmに設定していた(
図10)。
したがって、評価範囲生成部450は、点P2を含み、真直度閾値(1.0mm)を超えず、かつ、最も広い範囲を探索する。
【0068】
すると、
図19のように、円弧部分C1と線分L2との境界点B3と、円弧部分C2と線分L2との境界点B4と、が求まる。すなわち、境界点B3と境界点B4とに挟まれた区間Z4が求まる。
【0069】
次に、評価範囲の優先順位として、線に対しては、第1優先として"X方向範囲"が指定されていた(
図12)。したがって、評価範囲生成部450は、境界点B3、B4をx方向に沿って指定された分だけシフトさせる。シフト量としては、
図13のように、X方向シフト量は、1.0mmに設定されていた。したがって、
図20のように、境界点B3および境界点B4を区間Z4の内側に1.0mmシフトさせて、端点E3および端点E4を求める。この端点E3と端点E4とに挟まれた範囲が評価範囲W4として定まる(ST360)。評価範囲生成部450は、このようにして求まった評価範囲W4を幾何性状演算部460に出力する。
【0070】
評価範囲が定まったところで、幾何性状演算部460は、評価範囲W4中のデータ(線分L2)に対して線の当てはめを行い、真直度を算出する(ST370)。求められた真直度は、評価値としてタッチパネル340に表示される(ST380)。
【0071】
このような本実施形態によれば、次の効果を奏する。
(1)本実施形態によれば、ユーザが逐一評価範囲を指定しなくてもよくなる。従前は、x方向範囲を指定するとしても、左側の端点と右側の端点とを画面上で指示しなければならなかった。
これでは操作回数が多く、人によってバラバラになってしまうという問題があった。また、評価範囲を指定するということ自体が初心者には分かりにくい概念であり、形状解析プログラムの使用を難しくさせていた。
この点、本実施形態では、初めに評価範囲を生成するための条件を決めておけば、ユーザとしては評価対象を選択するだけで自動的に評価範囲が生成されて、評価値が算出される。したがって、操作が極めて簡略になった上に、評価が常に安定するという効果が得られる。
【0072】
(2)本実施形態では、タッチパネルによるタッチ操作を採用しているので、ますます操作が簡単かつ直感的である。従来のようにユーザがマニュアルで逐一評価範囲を生成するとなると、たとえばキーボードなどで数値を打ち込むなどの操作が必要になってくる。一方、本実施形態では、形状解析にあたってユーザが入力操作するのは、評価対象とする性状と、評価対象となるデータの一点と、だけでよい。
すなわち、形状解析にあたって逐一細かい数値を打ち込む必要はない。このように入力回数が減り、かつ、簡単な選択入力でよくなるので、本実施形態ではタッチ操作という簡便な入力操作を採用することが可能となる。
【0073】
(3)評価範囲の自動生成にあたって、公差閾値で境界点を判断したあと、さらに、境界点を所定のシフト量だけシフトさせて評価範囲の端点を設定するようにしている。
境界点により、線部分と円部分との境目などを検出することができ、線から円に遷移するポイントを見つけることができる。しかし、境界点だけでは、線部分の外側にある円部分まで区間に含んでしまう恐れがある。したがって、境界点から所定のシフト量だけシフトさせることにより、線部分と円部分との遷移点を除外して、適切に線部分だけを評価対象とする評価範囲にすることができる。
【0074】
(動作例2)
次に、動作例2として、二つの線分の交点を求める場合を説明する。
形状データとしては再度
図2を例にとる。そして、ユーザとしては、線分L1と線分L4との交点座標を評価したいとする。
【0075】
ユーザが1クリックオペレーションを選択すると(ST330:YES)、対象性状選定部441はユーザに対して評価対象とする性状を選定させる(ST340)。ここでは、ユーザは、「交点座標」を選択する(
図21参照)。
【0076】
次に、対象データ選定部442は、ユーザに対し、評価対象とするデータを選択させる(ST350)。ここで、評価対象性状は「交点座標」である。
交点座標というのは二次性状であり、
図14に示したように交点を求めるには二つの要素が必要である。したがって、対象データ選定部442は、ユーザに対し、形状データ中で二つの要素を選択させる。
【0077】
交点としては、線と線との交点や、線と円との交点、など、何の幾何要素と何の幾何要素との交点を求めるのか、いくつかバリエーションがある。したがって、対象データ選定部442としては、幾何要素の種別についてもユーザに選択させる必要がある。
【0078】
画面の具体例を示すと、
図22のように、「幾何要素の選択に続けてデータをタッチ」というように、幾何要素の選択も促す。幾何要素としては、線分と円弧とを選択メニューとして与えておいてもよい。
ユーザとしては、まず、幾何要素の種別として「線」を選択し、続けて、評価したいデータである線分L4をクリックする。
【0079】
評価対象の性状は「交点」であるので、評価対象となる要素がさらにもう一つ必要である。対象データ選定部442は、続けて、評価対象となるデータの選択を促す。
ユーザは、画面上において、幾何要素の種別として「線」を選択し、続けて、評価したいデータである線分L1をクリックする。
このようにして評価対象データの選定が確定する。
【0080】
次に、評価範囲生成部450によって評価範囲の自動生成を実行する(ST360)。
まず、線分L4に対する評価範囲を生成する。
図24に示すように、クリックされた点P5を含み、真直度閾値を超えず、かつ、最も広い範囲を探索する。すると、境界点B5と境界点B6とが算出されることはこれまで説明してきた通りである。
【0081】
ここで、評価範囲を作成する優先順位としては、
図12に示したように設定していた。
"線"を評価するにあたって、第1優先はx方向範囲である。したがって、境界点B5および境界点B6をx方向に所定量(1.0mm)シフトさせたい。しかし、境界点B5と境界点B6とで挟まれた区間Z5はx方向に幅を持たない。すると、境界点B5および境界点B6を区間Z5の内側にシフトさせようとする命令と、境界点B5および境界点B6をx方向に所定量(1.0mm)シフトさせる命令と、が矛盾をきたす。
【0082】
このように評価範囲の作成工程で矛盾が生じた場合には、評価範囲を第2優先のz方向範囲に切り換える。そして、境界点B5および境界点B6を区間Z5の内側に向けて、所定量(1.0mm)シフトさせる。すると、
図25に示すように、z方向に幅をもつ評価範囲W5が生成される。
【0083】
さらに、評価範囲生成部450は、線分L1を評価するための評価範囲W6を生成する。
評価範囲W6を生成する工程は、これまでの説明から理解できるであろうから省略する。
(例えば、評価範囲W4(
図20)を生成する工程を参照されたい。)
【0084】
このように評価範囲W5と評価範囲W6とを生成できた(ST360)。次に、これら評価範囲W5、W6を用いて、目的の幾何性状の算出を行う(ST370)。すなわち、線分L4(の延長)と線分L1(の延長)との交点を算出する。
【0085】
まず、評価範囲W5に含まれるデータ点を直線回帰し、評価範囲W5から求められる直線L4eを求める(
図26参照)。同じように、評価範囲W6に含まれるデータ点を直線回帰し、評価範囲W6から求められる直線L1eを求める(
図26参照)。このようにして求めた直線L4eおよび直線L1eは、適切な評価範囲から求められているものであるので、ワークWの形状を適切に反映したものであることが理解されるであろう。そして、目的の交点座標として、直線L4eと直線L1eとの交点Piを求める(ST370)。
【0086】
結果として求められた交点Piの座標値がタッチパネル表示部340に表示される。
【0087】
動作例2としては、二次性状として二つの線分(直線)の交点を求める例を示したが、これを若干修正すれば、他の二次性状を評価対象とする場合に簡単に適用できることは容易に理解されるであろう。
【0088】
この動作例に示すように本実施形態によれば上記効果(1)から(3)に加えてさらに次の効果を奏する。
(4)本実施形態では、評価範囲の優先順位を予め決めておき(
図12)、評価範囲の作成過程で矛盾が生じた場合には自動的に次順位の評価範囲を選択する。これにより、たとえば、x方向範囲の作成過程で矛盾が生じた場合であっても、エラーで止まってしまうのではなく、次順位であるz方向範囲に切り換えて評価範囲の自動生成を進めることができる。これにより、形状解析プログラムの実行が止まらないことはもちろん、評価対象に応じて適切な評価範囲が自動的に選択されることになる。エラーの度にその都度評価範囲の種類を選択し直すことに比べると、本実施形態は形状解析の能率向上に繋がる。
【0089】
(5)交点のような二次性状を求める場合には操作回数の削減効果が非常に大きい。
従来方式で二つの線分の交点を求めようとした場合、まず、L4eを求めて、これを一旦保存しておく。続いて、L1eを求めて、これを一旦保存する。そして、L4eとL1eとをあらためて呼び出し、二つの交点を求める、という手順になる。
このような手間に比べると、本実施形態では画面上で数回タッチするだけである。数回の画面タッチだけで、自動的に適切な評価範囲をそれぞれの線分L4、L1に対して求め、さらに、線分L4e、L1eを求め、さらに交点を求めるところまでやってしまう。特に、対象となる線分L4、L1ごとにz方向範囲やx方向範囲を逐一考えたり設定し直したりしなくてもよいので、操作負荷の軽減に繋がっている。
【0090】
(動作例3)
次に動作例3として、点の座標値としてピーク点を求める場合を説明する。
たとえば、
図27において線分L2に相当するデータ列のなかでz座標が最も高い点(ピーク点)を求めたいとする。
ここで、
図27に示すように、線分L2は、直線として加工されたはずであるが、実際の測定データでみると、中央がやや膨らんだようにうねっている形状であったとする。ここで求めたいのは、うねりの一番高い点Pzの座標値であるとする。
【0091】
ユーザが1クリックオペレーションを選択すると(ST330:YES)、対象性状選定部441はユーザに対して評価対象とする性状を選定させる(ST340)。
ここでは、ユーザは、評価対象性状として、「ピーク点の座標」を選択する(
図28参照)。
【0092】
次に、対象データ選定部442は、ユーザに対し、評価対象とするデータを選択させる(ST350)。
ここで、評価対象性状は「ピーク点の座標」である。
ピーク点座標というのは一次性状であり、
図14に示したように、ピーク点を求めるにあたってユーザに選択させる要素は一つでよい。
対象データ選定部442は、ユーザに対し、形状データ中で、どのあたりのピーク点を求めたいのかを指示させる。例えば、
図29のように、ピーク点の算出範囲を選択させるメッセージを表示する。
ユーザは、ピーク点の算出範囲としたい近辺のデータをタッチする(
図29参照)。
【0093】
形状解析装置400としては、ユーザによる選択指示が完了したので、次に、評価範囲の自動生成を実行する(ST360)。すなわち、評価範囲生成部450は、クリックされたデータ点P6からデータ点列をたどっていき、ピーク点を算出するための評価範囲を生成する。
ここで、評価対象性状がピーク点である場合、評価範囲生成部450は、傾き(微分係数)を求めていき、傾き(微分係数)の正負が逆転する点、すなわち、変曲点を探索する。
【0094】
例えば、クリックされたデータ点である点P6における傾き(微分係数)は正である。
図30において、点P6からデータ列を左方向に辿っていくと、点P7では傾きはまだ正であるが、点P8に至ると傾き(微分係数)がゼロになり、さらに、点P9に至ると傾きが負になる。したがって、点P6から見て左側の変曲点は点P8である。一方、点P6からデータ列を右方向に辿っていくと、点P10で傾き(微分係数)がゼロになり、さらに、点P11に至ると傾き(微分係数)は負になる。したがって、点P6から見て右側の変曲点は点P10である。このように変曲点P8と変曲点P10とが求まったところで、これら変曲点P8、P10を境界点として、境界点P8と境界点P10とに挟まれた区間Z7が求まる(
図31)。
【0095】
次に、評価範囲の優先順位として、ピーク点に対しては、第1優先として"x方向範囲"が指定されていた(
図12)。したがって、評価範囲生成部450は、境界点B8、B10をx方向に沿って指定された分だけシフトさせる。シフト量としては、
図13のように、x方向シフト量は、1.0mmに設定されていた。
【0096】
ここで、ピーク点を算出するための評価範囲を生成するにあたっては、境界点B8、B10を区間Z7の外側に向けて移動(シフト)させる。境界点B8、B10を区間Z7の内側に向けて移動させてしまうと、ピーク点(またはボトム点)の有力候補である変曲点が評価範囲から外れてしまうことは容易に理解されるであろう。境界点B8、B10をシフトさせた点である端点E8および端点E10によって挟まれた範囲が評価範囲W7として求まる(ST360)。評価範囲生成部450は、このようにして求まった評価範囲W7を幾何性状演算部460に出力する。
【0097】
評価範囲が定まったところで、幾何性状演算部460は、評価範囲W7中のデータのなかで、z座標値が最も大きい点を求め、これをピーク点とする(ST370)。求められたピーク点の座標値は、評価値としてタッチパネルに表示される(ST380)。
【0098】
ピーク点を求める動作例3を若干修正すれば、ボトム点を求める動作例となることは容易に理解されるであろう。また、ピーク点とボトム点とを同時に求めるようにしてもよい。
【0099】
この動作例に示すように本実施形態によれば上記効果(1)から(5)に加えてさらに次の効果を奏する。
(6)このようにピーク点あるいはボトム点を求めるにあたっても、変曲点を基準として、適切な評価範囲を自動生成できる。
このとき、変曲点をさらに区間の外側にシフトさせているので、ピーク点あるいはボトム点となる候補を含むように適切な評価範囲とすることができる。
【0100】
(他の評価範囲の例)
上記動作例1−3の説明において、x方向範囲およびz方向範囲については説明した。したがって、評価範囲を矩形範囲とする場合と、データ列方向範囲とする場合と、を補足しておく。まず、評価範囲を矩形範囲とする場合を説明する。
【0101】
(評価範囲が矩形範囲の場合)
評価範囲を矩形範囲とするということは、x方向範囲とz方向範囲との両方を決めるということである。
したがって、評価範囲を矩形範囲とする場合の動作については、x方向範囲を生成する動作と、z方向範囲を生成する動作と、の両方を実行し、両者が重複する範囲を矩形範囲とすればよい。
【0102】
例えば、
図32において、真円度公差が公差設定値(例えば1.0mm)から外れる点が境界点B1、B2として求まったとする。
評価範囲としてx方向範囲を生成するには、境界点B1、B2をx方向に沿って区間Zx3の内側に所定値だけシフトさせる。このようにして求まる範囲をx方向範囲Wx3とする。さらに、z方向範囲を生成するには、境界点B1、B2をz方向に沿って区間Zz3の内側に所定値だけシフトさせる。
このようにして求まる範囲をz方向範囲Wz3とする。x方向範囲Wx3とz方向範囲Wz3とが重複する範囲を矩形の評価範囲Wsとする。このようにして矩形の評価範囲が生成されることが理解されるであろう。
【0103】
(変形例)
x方向範囲とz方向範囲とを作成して両者の重複範囲をとれば矩形範囲になるわけであるが、x方向範囲とz方向範囲との両方を作成したうえで、どちらか適切な一方だけを使用するようにしてもよい。たとえば、両者のうちで範囲が広い方を使用するようにしてもよく、あるいは、両者のうちで範囲が狭い方を使用するようにしてもよい。
【0104】
(評価範囲がデータ列方向範囲の場合)
評価範囲をデータ列方向範囲とするとは、x軸やz軸といったマシンに設定された座標軸を基準に考えるのではなく、測定データの並び方向を基準にする、ということである。一つのワークの全周を測定したとすると、輪郭形状データとしては、例えば、
図33のように閉じた形状のデータ列が得られるであろう。ここで、動作例1のように、線分L2の真直度を評価したいとする。このとき、評価範囲としてx方向範囲を使用してしまうと問題が生じることになる。なぜならば、x方向範囲W4には、上面を構成する線分L2に加えて、下面を構成する線分L6のデータも含まれてしまうからである。
【0105】
そこで、
図34に示すように、境界点B3、B4をx方向やz方向に沿ってではなく、データ列の並びの方向に沿って区間Z4の内側にシフトさせる。すると、データ列に沿ってシフトした点である端点E10と端点E11とが求まる。端点E10と端点E11との間でデータをデータの並び方向に辿っていき、端点E10と端点E11との間に挟まれたデータがデータ列方向範囲W8である。
これが評価範囲となる。
【0106】
このようにデータ列方向範囲を使用すれば、評価対象データだけを的確に含む評価範囲とすることができる。
【0107】
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
上記実施形態においては、シフト量はたとえば1.0mmのように長さの寸法そのものを与えていたが、%(パーセント)のような割合で指定してもよい。たとえば、境界点で挟まれた区間の長さに対して、たとえば10%の長さをシフト量とするように指定してもよい。
【0108】
実機に搭載する場合には、便利なパートプログラムを登録できるようにしておくとよい。例えば、ワーク種類ごとに評価項目というのは大凡決められているものである。
したがって、例えば、ワークの型番号に対応させた形状解析のパートプログラムを登録しておいてもよい。すなわち、このパートプログラムには、ワーク型番、評価項目(評価対象性状)、対象のデータ領域、幾何要素などがパッケージで登録されている。評価対象性状ごとに評価範囲生成条件の設定値を変えられるようになっていてもよい。
ユーザが評価対象であるワークの型番を入力したら、自動的にこのパートプログラムを呼び出して、自動的に形状評価を実行する。次から次へと連続的にワークを測定していく場合には、輪郭形状データが取得される度に自動的に形状解析を実行する。測定から評価まで一貫した流れ作業にできる。
【0109】
評価範囲を生成するための条件というのは、ユーザが設定してもよく、あるいは、過去に使用した評価範囲から自動的に設定されるようにしてもよい。
たとえば、従来方式でユーザがx方向範囲やz方向範囲を設定したとする。すると、この評価範囲を自動生成するために必要な条件を逆算して求めることができるであろう。
すなわち、公差閾値、評価範囲の優先順位、シフト量が決まる。このようにして決まる公差閾値、評価範囲の優先順位、シフト量を記憶しておき、ユーザが必要に応じて呼び出せるようにしておいてもよい。
また、「最適化」ボタンを用意しておき、従来方式で過去に設定された評価範囲の蓄積データから最適な条件を自動生成できるようにしてもよい。たとえば、公差閾値、シフト量については過去の蓄積データの平均や最頻値を使用するようにしてもよい。評価範囲の優先順位は、過去に使用された頻度に基づいて決定すればよい。
【0110】
形状解析の途中で使用した幾何要素を記憶できるようにしておくとよい。すなわち、線分L4eやL1eを記憶できるようにしておくとよい。