(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2023-12-18
(45)【発行日】2023-12-26
(54)【発明の名称】形状復元装置およびコンピュータ読み取り可能な記憶媒体
(51)【国際特許分類】
G06F 30/10 20200101AFI20231219BHJP
【FI】
G06F30/10 100
(21)【出願番号】P 2023562320
(86)(22)【出願日】2023-07-25
(86)【国際出願番号】 JP2023027114
【審査請求日】2023-10-18
【早期審査対象出願】
(73)【特許権者】
【識別番号】390008235
【氏名又は名称】ファナック株式会社
(74)【代理人】
【識別番号】110001151
【氏名又は名称】あいわ弁理士法人
(72)【発明者】
【氏名】趙 威
(72)【発明者】
【氏名】相澤 誠彰
(72)【発明者】
【氏名】尾関 真一
【審査官】堀井 啓明
(56)【参考文献】
【文献】国際公開第2020/184460(WO,A1)
【文献】特開2018-163585(JP,A)
【文献】特開2012-18472(JP,A)
【文献】特開2003-71850(JP,A)
【文献】特開2017-156170(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F30/00-30/28
(57)【特許請求の範囲】
【請求項1】
加工面が工具によって加工されるときの条件を示す加工情報と、前記加工面が前記工具によって加工されるときの軌跡を示す軌跡情報と、前記加工面の状態を示す加工面データとを取得する取得部と、
前記取得部によって取得された前記加工情報に基づいて、前記加工面データから前記加工面の形状成分を抽出するためのフィルタを生成するフィルタ生成部と、
前記軌跡情報に基づいて、前記加工面データに対する前記フィルタを用いたフィルタ処理の方向の調整、または前記フィルタの係数の調整を実行する調整部と、
前記調整部による調整結果に基づいて、前記フィルタ処理を実行するフィルタ処理部と、
を備える形状復元装置。
【請求項2】
加工シミュレーションを実行して前記加工面データを生成するシミュレーション部をさらに備える請求項1に記載の形状復元装置。
【請求項3】
前記加工面データは、前記加工面の状態を検査する検査装置によって取得された検査データである請求項1に記載の形状復元装置。
【請求項4】
前記加工情報は、前記工具の半径を示す情報、前記工具の形状を示す情報、前記工具の刃数を示す情報、制御軸の最大加速度を示す情報、前記制御軸の加速時間を示す情報、サーボ機構の時定数を示す情報、前記サーボ機構のゲインを示す情報、ピックフィードを示す情報、および点列距離を示す情報の少なくともいずれかを含む請求項1~3のいずれか1項に記載の形状復元装置。
【請求項5】
前記フィルタ処理が実行された前記加工面データから一部のデータを間引く間引き処理を実行する間引き処理部と、
前記間引き処理部によって前記一部のデータが間引かれた前記加工面データから、前記加工面が修正された修正面を生成する修正面生成部と、
をさらに備える請求項1~
3のいずれか1項に記載の形状復元装置。
【請求項6】
前記間引き処理部は、少なくとも、均一サンプリング、ランダムサンプリング、および法線空間サンプリングのいずれかを用いて前記間引き処理を実行する請求項5に記載の形状復元装置。
【請求項7】
前記修正面生成部は、前記フィルタ処理が実行された前記加工面と、前記修正面との差があらかじめ定められた範囲に収まるように、前記修正面を生成する請求項
5に記載の形状復元装置。
【請求項8】
前記修正面生成部は、少なくとも、線形補間曲面近似、3次スプライン補間曲面近似、最近傍点補間曲面近似、および放射基底関数を用いた補間近似のいずれかを用いて前記修正面を生成する請求項
5に記載の形状復元装置。
【請求項9】
前記間引き処理が実行された前記加工面データに含まれる複数の位置と前記修正面に含まれる前記複数の位置にそれぞれ対応する複数の対応位置との間の距離をそれぞれ個別に設定する設定部をさらに備え、
前記修正面生成部は、前記設定部によって設定された前記距離に基づいて前記修正面を生成する請求項
5に記載の形状復元装置。
【請求項10】
前記設定部は、前記加工面データが示す前記加工面の曲率に基づいて、前記複数の位置と前記複数の対応位置との間の前記距離をそれぞれ個別に設定する請求項9に記載の形状復元装置。
【請求項11】
加工面が工具によって加工されるときの条件を示す加工情報と、前記加工面が前記工具によって加工されるときの軌跡を示す軌跡情報と、前記加工面の状態を示す加工面データとを取得することと、
取得された前記加工情報に基づいて、前記加工面データから前記加工面の形状成分を抽出するためのフィルタを生成することと、
前記軌跡情報に基づいて、前記加工面データに対する前記フィルタを用いたフィルタ処理の方向の調整、または前記フィルタの係数の調整を実行することと、
調整結果に基づいて、前記フィルタ処理を実行することと、
をコンピュータに実行させる命令を記憶するコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、形状復元装置およびコンピュータ読み取り可能な記憶媒体に関する。
【背景技術】
【0002】
従来、加工プログラムを利用して、ワークの加工面の凹凸を示すデータを取得することが行われている。例えば、加工プログラムを利用して加工シミュレーションを実行した場合、加工面の凹凸を示す加工面データを得ることができる(例えば、特許文献1)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかし、加工シミュレーションによって生成された加工面データには、工具の切削痕などの表面性状を示す情報も含まれてしまう。つまり、加工シミュレーションでは、切削痕などを含まないワークの設計形状を示す加工面データを取得することができない。そのため、切削痕などの表面性状を示す情報を含む加工面データから、ワークの設計形状を示す加工面データを取得することが可能な技術が望まれている。
【課題を解決するための手段】
【0005】
本開示の形状復元装置は、加工面が工具によって加工されるときの条件を示す加工情報と、加工面が工具によって加工されるときの軌跡を示す軌跡情報と、加工面の状態を示す加工面データとを取得する取得部と、取得部によって取得された加工情報に基づいて、加工面データから加工面の形状成分を抽出するためのフィルタを生成するフィルタ生成部と、軌跡情報に基づいて、加工面データに対するフィルタを用いたフィルタ処理の方向の調整、またはフィルタの係数の調整を実行する調整部と、調整部による調整結果に基づいて、フィルタ処理を実行するフィルタ処理部と、を備える。
【0006】
本開示のコンピュータ読み取り可能な記憶媒体は、加工面が工具によって加工されるときの条件を示す加工情報と、加工面が工具によって加工されるときの軌跡を示す軌跡情報と、加工面の状態を示す加工面データとを取得することと、取得された加工情報に基づいて、加工面データから加工面の形状成分を抽出するためのフィルタを生成することと、軌跡情報に基づいて、加工面データに対するフィルタを用いたフィルタ処理の方向の調整、またはフィルタの係数の調整を実行することと、調整結果に基づいて、フィルタ処理を実行することと、をコンピュータに実行させる命令を記憶する。
【図面の簡単な説明】
【0007】
【
図1】形状復元装置のハードウェア構成の一例を示すブロック図である。
【
図2】形状復元装置の機能の一例を示すブロック図である。
【
図3A】シミュレーション部によって生成された加工面データが示す加工面の一例を示す図である。
【
図4】二次元データに変換された加工面データの一例を示す図である。
【
図5】フィルタ生成部によって生成される一次元フィルタの一例を示す図である。
【
図6】フィルタ処理の方向について説明するための図である。
【
図7】形状成分が抽出された加工面の一例を示す図である。
【
図8】フィルタ生成部によって生成される二次元フィルタの一例である。
【
図9】調整部によって係数が調整されたフィルタの一例である。
【
図10】形状復元装置が実行する処理の一例を示すフローチャートである。
【
図11】形状復元装置の機能の一例を示すブロック図である。
【
図12】均一サンプリングについて説明するための図である。
【
図13】ランダムサンプリングについて説明するための図である。
【
図14A】フィルタ処理が実行された加工面および修正面の一例を示す図である。
【
図14B】フィルタ処理が実行された加工面および修正面の一例を示す図である。
【
図15A】加工面と修正面との間の距離の設定について説明するための図である。
【
図15B】修正面生成部によって生成された修正面の一例である。
【
図17】形状復元装置が実行する処理の一例を示すフローチャートである。
【発明を実施するための形態】
【0008】
以下、本開示の実施形態に係る形状復元装置およびコンピュータ読み取り可能な記憶媒体について図面を参照して説明する。なお、以下の説明では、同一または類似の機能を有する構成に同一の符号を付す。そして、それら構成の重複する説明は、省略する場合がある。
【0009】
本願でいう「XXに基づく」とは、「少なくともXXに基づく」ことを意味し、XXに加えて別の要素に基づく場合も含む。また、「XXに基づく」とは、XXを直接に用いる場合に限定されず、XXに対して演算や加工が行われたものに基づく場合も含む。「XX」は、任意の要素(例えば、任意の情報)である。
【0010】
形状復元装置は、加工面データから加工面の形状を復元するための装置である。すなわち、形状復元装置は、加工面データから形状成分を抽出して新たな加工面データを生成する装置である。
【0011】
加工面データは、加工面の状態を示すデータである。加工面の状態とは、例えば、加工面の凹凸の態様である。
【0012】
加工面の状態を示す加工面データは、例えば、加工プログラムを用いた加工シミュレーションによって生成される。加工シミュレーションは、例えば、加工機による切削加工のシミュレーションである。
【0013】
形状復元装置は、例えば、数値制御装置、PC(Personal Computer)、サーバ、タブレット端末に実装される。
【0014】
図1は、形状復元装置のハードウェア構成の一例を示すブロック図である。形状復元装置1は、例えば、ハードウェアプロセッサ101と、バス102と、ROM(Read Only Memory)103と、RAM(Random Access Memory)104と、不揮発性メモリ105と、入出力装置106とを備える。
【0015】
ハードウェアプロセッサ101は、システムプログラムを用いて形状復元装置1全体を制御するプロセッサである。ハードウェアプロセッサ101は、バス102を介してROM103に格納されたシステムプログラムなどを読み出す。ハードウェアプロセッサ101は、例えば、CPU(Central Processing Unit)、または電子回路である。
【0016】
バス102は、形状復元装置1の各ハードウェアを互いに接続する通信路である。形状復元装置1の各ハードウェアはバス102を介してデータをやり取りする。
【0017】
ROM103は、システムプログラムなどを記憶する記憶装置である。ROM103は、コンピュータ読み取り可能な記憶媒体である。
【0018】
RAM104は、各種データを一時的に格納する記憶装置である。RAM104は、ハードウェアプロセッサ101が各種データを処理するための作業領域として機能する。
【0019】
不揮発性メモリ105は、形状復元装置1の電源が切られた状態でもデータを保持する記憶装置である。不揮発性メモリ105は、例えば、加工面データを記憶する。不揮発性メモリ105は、コンピュータ読み取り可能な記憶媒体である。不揮発性メモリ105は、例えば、バッテリでバックアップされたメモリ、または、SSD(Solid State Drive)で構成される。
【0020】
入出力装置106は、例えば、ハードウェアプロセッサ101から各種データを受け、各種データをディスプレイに表示させる。また、入出力装置106は、各種データの入力を受けて、各種データを、例えば、ハードウェアプロセッサ101に送る。
【0021】
入出力装置106は、例えば、タッチパネルである。入出力装置106がタッチパネルである場合、入出力装置106は、例えば、静電容量方式のタッチパネルである。タッチパネルは、静電容量方式に限らず、他の方式のタッチパネルであってもよい。
【0022】
図2は、形状復元装置1の機能の一例を示すブロック図である。形状復元装置1は、シミュレーション部111と、取得部112と、フィルタ生成部113と、調整部114と、フィルタ処理部115と、出力部116とを備える。シミュレーション部111、取得部112、フィルタ生成部113、調整部114、フィルタ処理部115、および出力部116は、例えば、ハードウェアプロセッサ101が、ROM103に記憶されたシステムプログラム、ならびに不揮発性メモリ105に記憶された各種プログラムおよびデータを用いて演算処理をすることにより実現される。
【0023】
シミュレーション部111は、加工シミュレーションを実行して加工面データを生成する。加工シミュレーションは、加工機の仮想モデル、加工プログラム、および加工情報に基づいて、加工面データを生成する処理である。シミュレーション部111は、例えば、記憶部(不図示)に記憶された仮想モデル、加工プログラム、および加工情報に基づいて、加工面データを生成する。
【0024】
仮想モデルは、例えば、加工機を構成する構造物のモデルおよびワークのモデルを含む。構造物のモデルは、構造物の形状、重量、強度、材質などの情報に基づいて生成される。ワークのモデルは、ワークの形状、重量、強度、材質などの情報に基づいて生成される。
【0025】
加工情報は、加工面が工具によって加工されるときの条件を示す情報である。加工情報は、工具の半径を示す情報、工具の形状を示す情報、工具の刃数を示す情報、制御軸の最大加速度を示す情報、制御軸の加速時間を示す情報、サーボ機構の時定数を示す情報、サーボ機構のゲインを示す情報、ピックフィードを示す情報、および点列距離を示す情報の少なくともいずれかを含む。
【0026】
工具の形状を示す情報は、工具の種類を示す情報を含む。工具の種類は、例えば、ボールエンドミル、スクウェアエンドミルを含む。
【0027】
サーボ機構のゲインを示す情報は、サーボ機構の速度ゲイン、電流ゲイン、位置ゲインおよびフィードフォワード設定の少なくともいずれかを示す情報を含む。なお、フィードフォワード設定とは、サーボ機構の動作の遅れを予測して、遅れ分を先に指令するための設定である。
【0028】
ピックフィードは、CAM(Computer Aided Manufacturing)において指定される工具軌跡の間隔である。例えば、工具の第1の軌跡と、第1の軌跡に隣接する第2の軌跡とが平行である場合、ピックフィードは、第1の軌跡と第2の軌跡との間の距離である。点列距離は、工具軌跡を指定するための複数の点の間の距離である。
【0029】
加工面データは、例えば、加工面の高さを示す三次元データである。すなわち、加工面データは、加工面の凹凸の態様を示す三次元データである。加工面データは、加工面の高さを示す二次元データであってもよい。加工面の高さを示す二次元データは、ハイトマップともいう。
【0030】
シミュレーション部111によって生成された加工面データは、複数の成分を含む。複数の成分は、加工面の凹凸を波形とみなした場合において、波形に含まれる高周波数成分、および低周波数成分である。
【0031】
高周波数成分は、表面性状成分である。表面性状成分は、例えば、切削痕を示す成分である。表面性状成分は、粗さ成分ともいう。
【0032】
低周波数成分は、形状成分である。形状成分はワークの設計形状を示す成分である。
【0033】
図3Aは、シミュレーション部111によって生成された加工面データが示す加工面の一例を示す図である。
図3Bは、加工面の一部拡大図である。
【0034】
図3Aに示す例において、加工面MSは、X軸に沿って大きな凸部と大きな凹部とを有する形状である。X軸に沿った凹凸は、形状成分である。
【0035】
また、加工面MSは、Y軸に沿って連続する複数の円弧状の凹溝を有する(
図3B)。Y軸に沿って連続する複数の凹溝を波形とみなした場合、この波形の周波数は、上述した凹凸の周波数よりも高い。Y軸に沿って形成された複数の凹溝は、表面性状成分である。また、複数の凹溝は工具によって形成された切削痕である。ここで、
図2の説明に戻る。
【0036】
取得部112は、加工面MSが工具によって加工されるときの条件を示す加工情報と、加工面MSが工具によって加工されるときの軌跡を示す軌跡情報と、加工面MSの状態を示す加工面データとを取得する。
【0037】
取得部112は、例えば、加工情報記憶部(不図示)から加工情報を取得する。また、取得部112は、シミュレーション部111によって生成された加工面データを取得する。
【0038】
取得部112は、例えば、加工面データから軌跡情報を取得する。
図3Aおよび
図3Bに示す例では、XZ平面と平行に複数の円弧状の凹溝が形成されている。この場合、取得部112は、例えば、X軸に沿った方向を工具の軌跡を示す軌跡情報として取得する。
【0039】
取得部112は、加工プログラムに基づいて工具の軌跡を示す軌跡情報を取得してもよい。すなわち、取得部112は、加工プログラムを解析して工具の軌跡を示す軌跡情報を取得してもよい。
【0040】
取得部112によって取得された加工面データは、二次元データに変換される。
【0041】
図4は、二次元データに変換された加工面データの一例を示す図である。二次元データは、格子状に区分された各領域に加工面の高さを示す数値N1、N2、N3が関連付けて記録されたデータである。図示は省略しているが、他の領域についても同様に加工面の高さを示す数値が関連付けて記録される。
【0042】
二次元データは、工具の軌跡が二次元データの行、または列に沿うように生成される。例えば、二次元データのある行には、X軸に沿って形成された1つの凹溝の高さを示す数値が順に記録される。また、二次元データの他の行には、X軸に沿って形成された他の凹溝の高さを示す数値が記録される。工具の軌跡が二次元データの行または列に沿うように生成されることにより、後述するフィルタ処理を効果的に行うことができる。
【0043】
フィルタ生成部113は、取得部112によって取得された加工情報に基づいて、加工面データから加工面MSの形状成分を抽出するためのフィルタを生成する。
【0044】
フィルタは、ローパスフィルタ、ハイパスフィルタ、バンドパスフィルタ、およびバンドストップフィルタの少なくともいずれかである。フィルタは、例えば、ガウシアンフィルタ、ラプラシアンフィルタである。また、フィルタは、一次元フィルタ、または二次元フィルタである。
【0045】
フィルタ生成部113は、例えば、加工面MSにおける工具の軌跡が示すピックフィードに基づいて、フィルタのしきい値を設定する。フィルタに設定されるしきい値は、特定の成分を抽出するためのしきい値である。
【0046】
ピックフィードに基づいてフィルタのしきい値が設定される場合、フィルタのしきい値は、加工面MSの表面性状成分を分離するためのしきい値である。表面性状成分を分離して形状成分を抽出するためのフィルタは、ローパスフィルタである。なお、しきい値は、カットオフ値、または、ネスティングインデックスともいう。
【0047】
図5は、フィルタ生成部113によって生成される一次元フィルタの一例を示す図である。一次元フィルタにおけるカーネル幅は、例えば、1×3である。フィルタの係数は、しきい値に応じて決定される。
【0048】
調整部114は、軌跡情報に基づいて、加工面データに対するフィルタを用いたフィルタ処理の方向の調整を実行する。
【0049】
フィルタ処理とは、加工面データから特定の成分を抽出する処理である。フィルタ処理は、例えば、表面性状成分、および形状成分を含む加工面データから、表面性状成分を分離して形状成分を抽出する処理である。
【0050】
図6は、フィルタ処理の方向について説明するための図である。フィルタ処理の方向は、例えば、工具の軌跡に沿う方向、または工具の軌跡に直交する方向である。
図6に示す例において、工具の軌跡に沿う方向は、X軸に沿う方向である。
図6に示す例において、工具の軌跡に直交する方向は、Y軸に沿う方向である。
【0051】
フィルタ処理の方向の調整とは、加工面データから特定の成分を抽出するためのフィルタ処理の方向を決定することである。特定の成分は、例えば、形状成分である。
【0052】
図6に示す加工面データにおいて、工具の軌跡に沿う方向には、表面性状成分が表れていない。この場合、工具の軌跡に沿う方向にフィルタ処理を実行しても加工面データから表面性状成分を分離することができない。
【0053】
一方、工具の軌跡に直交する方向には、表面性状成分が表れている。この場合、工具の軌跡に直交する方向にフィルタ処理を実行することにより、加工面データから表面性状成分を分離して形状成分を抽出することができる。したがって、調整部114は、フィルタ処理の方向を工具の軌跡に直交する方向に決定する。
【0054】
図7は、表面性状成分が分離されて形状成分が抽出された加工面の一例を示す図である。
図7に示す加工面からは切削痕が除去されている。つまり、調整部114が、フィルタ処理の方向を工具の軌跡に直交する方向に決定することにより、形状成分のみを表す加工面データが取得される。
【0055】
図8は、フィルタ生成部113によって生成される二次元フィルタの一例である。二次元フィルタにおけるカーネル幅は、例えば、5×5である。フィルタの係数は、しきい値に応じて決定される。
【0056】
図8に示すフィルタの第1行の係数は、1/256、4/256、6/256、4/256、および1/256である。すなわち、各係数の比は、1:4:6:4:1である。その他の行および列における各係数の比も同様である。つまり、
図8に示すフィルタは、行に沿う方向の強度と列に沿う方向の強度とは同じである。強度とは、特定の成分をどの程度の精度で抽出できるかを示す指標である。
【0057】
調整部114は、軌跡情報に基づいて、フィルタの係数の調整を実行する。
【0058】
図9は、調整部114によって係数が調整されたフィルタの一例である。フィルタの列に沿って並べられた係数の比は、1:4:6:4:1である。一方、フィルタの行に沿って並べられた係数の比は、6:15:20:15:6である。つまり、
図9に示すフィルタは、列に沿う方向の強度が行に沿う方向の強度よりも高い。
【0059】
図3Aに示す加工面の形状成分が抽出される場合、調整部114は、工具の軌跡に直交する方向における強度が高くなるようにフィルタの係数を調整する。
【0060】
フィルタ処理部115は、調整部114による調整結果に基づいて、フィルタ処理を実行する。すなわち、フィルタ処理部115は、調整部114によって調整されたフィルタ処理の方向に基づいて、加工面MSのフィルタ処理を実行する。
【0061】
フィルタが一次元フィルタである場合、調整部114は、工具の軌跡に直交する方向にフィルタ処理を実行すると決定する。したがって、フィルタ処理部115は、工具の軌跡に直交する方向にフィルタ処理を実行する。
【0062】
これにより、フィルタ処理部115は、加工面MSの形状を復元する。言い換えれば、フィルタ処理部115は、加工面データから表面性状成分を分離して形状成分を示す新たな加工面データを生成する。新たな加工面データは、フィルタ処理によって生成された二次元データ、または当該二次元データから変換された三次元データである。
【0063】
フィルタが二次元フィルタである場合、調整部114は、工具の軌跡に直交する方向における強度が高くなるようにフィルタの係数を調整する。したがって、フィルタ処理部115は、工具の軌跡に直交する方向における強度が高められたフィルタを用いてフィルタ処理を実行する。これにより、フィルタ処理部115は、加工面MSの形状を復元する。ここで、
図2の説明に戻る。
【0064】
出力部116は、表面性状成分が分離されることによって新たに生成された加工面データを出力する。出力部116は、新たに生成された加工面データを、例えば、入出力装置106に出力する。入出力装置106は、新たな加工面データをディスプレイに表示する。
【0065】
図10は、形状復元装置1が実行する処理の一例を示すフローチャートである。形状復元装置1では、まず、シミュレーション部111が加工シミュレーションを実行する(ステップSA1)。
【0066】
次に、取得部112が、加工情報、軌跡情報、および加工面データを取得する(ステップSA2)。次に、フィルタ生成部113がフィルタを生成する(ステップSA3)。
【0067】
次に、調整部114が、フィルタ処理の方向の調整、または、フィルタの係数の調整を実行する(ステップSA4)。次に、フィルタ処理部115がフィルタ処理を実行する(ステップSA5)。最後に、出力部116が新たな加工面データを出力し(ステップSA6)、処理が終了する。
【0068】
上述した実施形態では、加工面データは、シミュレーション部111によって生成される。しかし、加工面データは、加工面MSの状態を検査する検査装置によって取得された検査データであってもよい。すなわち、加工面データは、加工機において実際に加工された加工面MSの状態を示すデータであってもよい。この場合、取得部112は、検査装置によって取得された検査データを取得すればよい。
【0069】
上述した実施形態では、工具の軌跡が加工面MS全体において1つの方向に沿って形成されている例について説明した。しかし、工具の軌跡は、加工面MSの各領域において異なっていてもよい。この場合、形状復元装置1は、工具の軌跡が同じ方向を向いている領域ごとにフィルタの生成、およびフィルタの調整を行って、フィルタ処理を実行すればよい。
【0070】
上述した実施形態では、フィルタ処理によって加工面データから表面性状成分が分離されて形状成分が抽出される例について説明した。しかし、加工面データが示す加工面に筋目または模様などの欠陥が存在する場合、これらの欠陥が除去できない場合がある。この場合、形状復元装置1は、フィルタ処理部115によってフィルタ処理が実行された加工面データの修正を行ってもよい。
【0071】
なお、筋目とは、加工面において切削痕よりも深く形成された傷である。筋目は、例えば、ユーザのCAMに対する操作ミスにより加工プログラムに欠陥が含まれることが原因で形成される。また、模様は、工具が曲面を加工する場合において、工具の軌跡が複数の微小線分によって形成されている場合に現れる。すなわち、模様はCAMにおけるトレランスの設定によって現れる場合がある。
【0072】
図11は、形状復元装置1の機能の一例を示すブロック図である。
図11に示す形状復元装置1は、
図2に示す形状復元装置1の機能に加え、間引き処理部117、修正面生成部118、および設定部119を備える。間引き処理部117、修正面生成部118、および設定部119は、例えば、ハードウェアプロセッサ101が、ROM103に記憶されたシステムプログラム、ならびに不揮発性メモリ105に記憶された各種プログラムおよびデータを用いて演算処理をすることにより実現される。
【0073】
間引き処理部117は、フィルタ処理が実行された加工面データの修正が必要かを判断する。言い換えれば、間引き処理部117は、フィルタ処理が実行された加工面データの間引き処理を行うか否かを判断する。
【0074】
間引き処理部117は、例えば、フィルタ処理が実行された加工面データに欠陥が含まれるか否かを判断する。間引き処理部117は、例えば、フィルタ処理が実行された加工面データが示す加工面にあらかじめ定められた深さ以上の筋目が存在する場合に、間引き処理が必要であると判断する。
【0075】
間引き処理が必要であると判断された場合、間引き処理部117は、フィルタ処理が実行された加工面データから一部のデータを間引く間引き処理を実行する。間引き処理部117は、例えば、少なくとも、均一サンプリング、ランダムサンプリング、および法線空間サンプリングのいずれかを用いて間引き処理を実行する。
【0076】
図12は、均一サンプリングについて説明するための図である。均一サンプリングでは、加工面においてあらかじめ定められた間隔ごとにサンプリングが行われる。
図12において黒丸の位置がサンプリングされた位置である。つまり、間引き処理部117は、サンプリングされる位置以外の位置のデータを間引く。
【0077】
図13は、ランダムサンプリングについて説明するための図である。ランダムサンプリングでは、加工面においてランダムにサンプリングが行われる。
図13において黒丸の位置がサンプリングされた位置である。つまり、間引き処理部117は、サンプリングされる位置以外の位置のデータを間引く。
【0078】
法線空間サンプリングでは、加工面における法線の方向が大きく変化する位置のデータが重点的にサンプリングされる。したがって、法線空間サンプリングでは、例えば、加工面の形状が大きく変化した位置のデータが重点的にサンプリングされる。
【0079】
修正面生成部118は、間引き処理部117によって一部のデータが間引かれた加工面データから、加工面が修正された修正面を生成する。修正とは、加工面に形成された欠陥を滑らかにして目立たなくすることである。
【0080】
修正面生成部118は、少なくとも、線形補間曲面近似、3次スプライン補間曲面近似、最近傍点補間曲面近似、および放射基底関数を用いた補間近似のいずれかを用いて修正面を生成する。
【0081】
修正面生成部118は、フィルタ処理が実行された加工面と、修正面との差があらかじめ定められた範囲に収まるように、修正面を生成する。
【0082】
図14Aおよび
図14Bは、フィルタ処理が実行された加工面および修正面の一例を示す図である。点線は加工面を示す。実線は修正面を示す。
【0083】
図14Aに示す例では、加工面と修正面との差が大きい部分が存在する。すなわち、加工面と修正面との差があらかじめ定められた範囲に収まっていない。
【0084】
図14Bに示す例では、加工面と修正面との差が全体的に小さい。すなわち、加工面と修正面との差があらかじめ定められた範囲に収まっている。
【0085】
修正面生成部118は、生成した修正面と加工面との間の差があらかじめ定められた範囲に収まっていない場合、加工面と修正面との差があらかじめ定められた範囲に収まるように、修正面を再生成すればよい。
【0086】
形状復元装置1では、間引き処理が実行された加工面データに含まれる複数の位置と修正面に含まれる複数の位置にそれぞれ対応する複数の対応位置との間の距離をそれぞれ個別に設定できてもよい。つまり、ユーザは、フィルタ処理が実行された加工面データが示す加工面をどの程度修正するかを設定することができる。この場合、形状復元装置1は、間引き処理が実行された加工面データに含まれる複数の位置と修正面に含まれる複数の位置にそれぞれ対応する複数の対応位置との間の距離をそれぞれ個別に設定する設定部119をさらに備える。
【0087】
図15Aは、加工面と修正面との間の距離の設定について説明するための図である。設定部119は、例えば、入出力装置106に対するユーザの操作に基づいて、加工面の複数の位置と、これら複数の位置にそれぞれ対応する修正面における対応位置との間の距離を設定する。
【0088】
設定部119は、例えば、加工面データが示す位置P1と修正面との間の距離を0に設定する。
【0089】
修正面生成部118は、設定部119によって設定された距離に基づいて修正面を生成する。したがって、加工面データに含まれる位置P1と修正面との間の距離が0に設定された場合、修正面生成部118は、加工面データに含まれる位置P1と修正面との間の距離を0にする。つまり、修正面生成部118は、加工面データが示す位置P1の修正を行わない。
【0090】
また、設定部119は、例えば、加工面データに含まれる位置P4と修正面との間の距離を0に設定する。この場合、修正面生成部118は、位置P4の修正を行わない。
【0091】
また、設定部119は、加工面データに含まれる位置P2と修正面との間の距離をD1に設定する。修正面生成部118は、加工面データに含まれる位置P2と修正面との間の距離がD1以内となるように修正面を生成する。
【0092】
また、設定部119は、加工面データに含まれる位置P3と修正面との間の距離をD2に設定する。修正面生成部118は、加工面データに含まれる位置P3と修正面との間の距離がD2以内となるように修正面を生成する。
【0093】
図15Bは、修正面生成部118によって生成された修正面の一例である。修正面生成部118は、位置P1および位置P4の修正は行わずに修正面を生成する。
【0094】
一方、修正面生成部118は、位置P2を位置P2Aに修正する。修正面上における位置P2Aと加工面上の位置P2との間の距離は、D1以下である。
【0095】
また、修正面生成部118は、位置P3を位置P3Aに修正する。修正面上における位置P3Aと加工面上の位置P3との間の距離は、D2以下である。
【0096】
設定部119は、加工面データが示す加工面の曲率に基づいて、加工面の複数の位置と修正面の複数の対応位置との間の距離をそれぞれ個別に設定してもよい。
【0097】
図16は、加工面の一例を示す図である。点線は加工面を示す。実線は修正面を示す。
図16に示す加工面において位置P5付近および位置P6付近における曲率が他の位置における曲率よりも大きい。
【0098】
設定部119は、例えば、曲率が所定のしきい値以上の加工面上の位置と修正面上の対応位置との間の距離を0に設定する。また、設定部119は、曲率が所定のしきい値未満の加工面上の位置と修正面上の対応位置との間の距離を所定の値以下の範囲に設定する。
【0099】
位置P5および位置P6における曲率が所定のしきい値以上である場合、修正面生成部118は、位置P5および位置P6において加工面データの修正は行わない。また、位置P5および位置P6以外の位置における曲率が所定のしきい値未満である場合、修正面生成部118は、位置P5および位置P6以外の位置の修正量が所定の値以下となるように加工面データの修正を行う。
【0100】
図17は、形状復元装置1が実行する処理の一例を示すフローチャートである。
図17に示す処理のうちステップSB1~SB5までの処理は、
図10に示すステップSA1~SA5までの処理と同じである。したがって、ステップSB1~SB5までの処理の説明は省略する。
【0101】
ステップSB5の処理が終了すると、間引き処理部117は、加工面データの間引き処理を実行するか否かを判断する(ステップSB6)。間引き処理部117によって間引き処理を実行すると判断された場合(ステップSB6においてYesの場合)、間引き処理部117は、間引き処理を実行する(ステップSB7)。
【0102】
次に、修正面生成部118が一部のデータが間引かれた加工面データから、加工面が修正された修正面を生成する(ステップSB8)。最後に、出力部116が修正面生成部118によって修正された修正面を示す修正面データを出力し(ステップSB9)、処理が終了する。
【0103】
一方、間引き処理部117によって間引き処理を実行しない判断された場合(ステップSB6においてNoの場合)、出力部116が、フィルタ処理が実行されることによって生成された新たな加工面データを出力し(ステップSB9)、処理が終了する。
【0104】
以上説明したように、形状復元装置1は加工面が工具によって加工されるときの条件を示す加工情報と、加工面が工具によって加工されるときの軌跡を示す軌跡情報と、加工面の状態を示す加工面データとを取得する取得部112と、取得部112によって取得された加工情報に基づいて、加工面データから加工面の形状成分を抽出するためのフィルタを生成するフィルタ生成部113と、軌跡情報に基づいて、加工面データに対するフィルタを用いたフィルタ処理の方向の調整、またはフィルタの係数の調整を実行する調整部114と、調整部114による調整結果に基づいて、フィルタ処理を実行するフィルタ処理部115と、を備える。
【0105】
したがって、形状復元装置1は、切削痕などを含む加工面データから形状成分を抽出することができる。言い換えれば、形状復元装置1は、切削痕などを含む加工面データから、ワークの設計形状を示す加工面データを取得することができる。そのため、形状復元装置1は、ワークの形状を示す設計データがなくても、ワークの設計形状を示す加工面データを取得することができる。
【0106】
また、形状復元装置1は、加工シミュレーションを実行して加工面データを生成するシミュレーション部111をさらに備える。したがって、形状復元装置1は、ワークが実際に加工される前に、加工面データを利用して加工面MSの設計形状を復元することができる。
【0107】
加工面データは、加工面MSの状態を検査する検査装置によって取得された検査データであってもよい。したがって、形状復元装置1は、実際に加工された加工面MSの加工面データから加工面MSの設計形状を復元することができる。
【0108】
また、加工情報は、工具の半径を示す情報、工具の形状を示す情報、工具の刃数を示す情報、制御軸の最大加速度を示す情報、制御軸の加速時間を示す情報、サーボ機構の時定数を示す情報、サーボ機構のゲインを示す情報、ピックフィードを示す情報、および点列距離を示す情報の少なくともいずれかを含む。したがって、形状復元装置1は、様々な情報に基づいてフィルタを生成することができる。
【0109】
また、形状復元装置1は、フィルタ処理が実行された加工面データから一部のデータを間引く間引き処理を実行する間引き処理部117と、間引き処理部117によって間引かれた一部のデータが間引かれた加工面データから、加工面が修正された修正面を生成する修正面生成部118と、をさらに備える。また、間引き処理部117は、少なくとも、均一サンプリング、ランダムサンプリング、および法線空間サンプリングのいずれかを用いて間引き処理を実行する。
【0110】
したがって、フィルタ処理が実行された加工面に筋目または模様などの欠陥があっても形状復元装置1は、加工面の形状を復元することができる。
【0111】
また、修正面生成部118は、フィルタ処理が実行された加工面MSと、修正面との差があらかじめ定められた範囲に収まるように、修正面を生成する。そのため、形状復元装置1は、加工面の形状を適切に復元することができる。
【0112】
また、修正面生成部118は、少なくとも、線形補間曲面近似、3次スプライン補間曲面近似、最近傍点補間曲面近似、および放射基底関数を用いた補間近似のいずれかを用いて修正面を生成する。したがって、形状復元装置1は、加工面の形状を適切に復元することができる。
【0113】
また、形状復元装置1は、間引き処理が実行された加工面データに含まれる複数の位置と修正面に含まれる複数の位置にそれぞれ対応する複数の対応位置との間の距離をそれぞれ個別に設定する設定部119をさらに備え、修正面生成部118は、設定部119によって設定された距離に基づいて修正面を生成する。したがって、ユーザは、加工面をどのように修正するかを設定することができる。
【0114】
また、設定部119は、加工面データが示す加工面の曲率に基づいて、複数の位置と複数の対応位置との間の距離をそれぞれ個別に設定する。設定部119は、例えば、曲率が大きい部分の加工面データを修正しないように設定することができる。この場合、形状復元装置1は、修正面生成部118によって生成される修正面に、形状成分が示す角部の形状、面と面の間の境界線をそのまま残すことができる。
【0115】
本開示について詳述したが、本開示は上述した個々の実施形態に限定されるものではない。これらの実施形態は、本開示の要旨を逸脱しない範囲で、または、請求の範囲に記載された内容とその均等物から導き出される本開示の要旨を逸脱しない範囲で、種々の追加、置き換え、変更、部分的削除等が可能である。また、これらの実施形態は、組み合わせて実施することもできる。
【0116】
以下に、本開示の実施形態に係る付記を示す。
付記[1]
加工面が工具によって加工されるときの条件を示す加工情報と、前記加工面が前記工具によって加工されるときの軌跡を示す軌跡情報と、前記加工面の状態を示す加工面データとを取得する取得部と、前記取得部によって取得された前記加工情報に基づいて、前記加工面データから前記加工面の形状成分を抽出するためのフィルタを生成するフィルタ生成部と、前記軌跡情報に基づいて、前記加工面データに対する前記フィルタを用いたフィルタ処理の方向の調整、または前記フィルタの係数の調整を実行する調整部と、前記調整部による調整結果に基づいて、前記フィルタ処理を実行するフィルタ処理部と、を備える形状復元装置。
付記[2]
加工シミュレーションを実行して前記加工面データを生成するシミュレーション部をさらに備える付記[1]に記載の形状復元装置。
付記[3]
前記加工面データは、前記加工面の状態を検査する検査装置によって取得された検査データである付記[1]に記載の形状復元装置。
付記[4]
前記加工情報は、前記工具の半径を示す情報、前記工具の形状を示す情報、前記工具の刃数を示す情報、制御軸の最大加速度を示す情報、前記制御軸の加速時間を示す情報、サーボ機構の時定数を示す情報、前記サーボ機構のゲインを示す情報、ピックフィードを示す情報、および点列距離を示す情報の少なくともいずれかを含む付記[1]~[3]のいずれかに記載の形状復元装置。
付記[5]
前記フィルタ処理が実行された前記加工面データから一部のデータを間引く間引き処理を実行する間引き処理部と、前記間引き処理部によって前記一部のデータが間引かれた前記加工面データから前記加工面が修正された修正面を生成する修正面生成部と、をさらに備える付記[1]~[4]のいずれかに記載の形状復元装置。
付記[6]
前記間引き処理部は、少なくとも、均一サンプリング、ランダムサンプリング、および法線空間サンプリングのいずれかを用いて前記間引き処理を実行する付記[5]に記載の形状復元装置。
付記[7]
前記修正面生成部は、前記フィルタ処理が実行された前記加工面と、前記修正面との差があらかじめ定められた範囲に収まるように、前記修正面を生成する付記[5]または[6]に記載の形状復元装置。
付記[8]
前記修正面生成部は、少なくとも、線形補間曲面近似、3次スプライン補間曲面近似、最近傍点補間曲面近似、および放射基底関数を用いた補間近似のいずれかを用いて前記修正面を生成する付記[5]~[7]のいずれかに記載の形状復元装置。
付記[9]
前記間引き処理が実行された前記加工面データに含まれる複数の位置と前記修正面に含まれる前記複数の位置にそれぞれ対応する複数の対応位置との間の距離をそれぞれ個別に設定する設定部をさらに備え、前記修正面生成部は、前記設定部によって設定された前記距離に基づいて前記修正面を生成する付記[5]~[8]のいずれか1項に記載の形状復元装置。
付記[10]
前記設定部は、前記加工面データが示す前記加工面の曲率に基づいて、前記複数の位置と前記複数の対応位置との間の前記距離をそれぞれ個別に設定する付記[9]に記載の形状復元装置。
付記[11]
加工面が工具によって加工されるときの条件を示す加工情報と、前記加工面が前記工具によって加工されるときの軌跡を示す軌跡情報と、前記加工面の状態を示す加工面データとを取得することと、取得された前記加工情報に基づいて、前記加工面データから前記加工面の形状成分を抽出するためのフィルタを生成することと、前記軌跡情報に基づいて、前記加工面データに対する前記フィルタを用いたフィルタ処理の方向の調整、または前記フィルタの係数の調整を実行することと、調整結果に基づいて、前記フィルタ処理を実行することと、をコンピュータに実行させる命令を記憶するコンピュータ読み取り可能な記憶媒体。
【符号の説明】
【0117】
1 形状復元装置
101 ハードウェアプロセッサ
102 バス
103 ROM
104 RAM
105 不揮発性メモリ
106 入出力装置
111 シミュレーション部
112 取得部
113 フィルタ生成部
114 調整部
115 フィルタ処理部
116 出力部
117 間引き処理部
118 修正面生成部
119 設定部
【要約】
形状復元装置が、加工面が工具によって加工されるときの条件を示す加工情報と、加工面が前記工具によって加工されるときの軌跡を示す軌跡情報と、加工面の状態を示す加工面データとを取得する取得部と、加工情報に基づいて、フィルタを生成するフィルタ生成部と、軌跡情報に基づいて、加工面データに対するフィルタを用いたフィルタ処理の方向の調整、またはフィルタの係数の調整を実行する調整部と、調整部による調整結果に基づいて、フィルタ処理を実行するフィルタ処理部と、を備える。