(57)【要約】【課題】作業台に装着した状態でワークのサイズを好適に把握することにより、加工プログラムで想定したサイズと異なることによる加工の失敗や工具の破損を防止する仕組みを提供する。【解決手段】本工作機は、テーブルに載置されるワークのサイズを取得し、取得したワークのサイズに従って、テーブルに載置されたワークの近傍に主軸を駆動し、駆動手段が脱調した場合には、ワークの実際のサイズが取得されたワークのサイズよりも大きい場合としてワークに対する工作を制御し、駆動手段が脱調しなかった場合には、ワークの実際のサイズが取得されたワークのサイズ以下である場合としてワークに対する工作を制御する。【選択図】図３
2014117785.tif 000002
【特許請求の範囲】
【請求項１】
工作機であって、
取り付けられた工具を回転させる主軸と、
前記主軸に取り付けられた工具によって工作が行われるワークを取り付けるテーブルと、
前記テーブルに載置されるワークのサイズを取得する取得手段と、
前記取得手段によって取得した前記ワークのサイズに従って、前記テーブルに載置されたワークの近傍に前記主軸を駆動する駆動手段と、
前記駆動手段が脱調した場合には、前記ワークの実際のサイズが前記取得手段によって取得されたワークのサイズよりも大きい場合として前記ワークに対する工作を制御し、前記駆動手段が脱調しなかった場合には、前記ワークの実際のサイズが前記取得手段によって取得されたワークのサイズ以下である場合として前記ワークに対する工作を制御する制御手段と
を備えることを特徴とする工作機。
【請求項２】
前記駆動手段は、前記ワークの近傍に主軸を移動させる際に、駆動トルクを下げることを特徴とする請求項１に記載の工作機。
【請求項３】
前記駆動手段は、前記ワークの近傍に前記主軸を移動させる際に、前記主軸を、前記テーブルに載置されているワークの上方、左方、右方、手前、又は、奥から該ワークへ近づけ、
前記制御手段は、
前記上方から前記主軸を前記ワークへ近づけた場合は、前記ワークの高さに関するサイズを判断し、
前記左方又は右方から前記主軸を前記ワークへ近づけた場合は、前記ワークの幅に関するサイズを判断し、
前記手前又は奥から前記主軸を前記ワークへ近づけた場合は、前記ワークの奥行に関するサイズを判断することを特徴とする請求項１又は２に記載の工作機。
【請求項４】
前記制御手段は、
前記ワークの高さ、幅、又は奥行に関するサイズを判断する場合に、それぞれ複数のポイントにおいて、前記駆動手段を用いて前記主軸を前記ワークの近傍に移動させ、
少なくとも１つのポイントにおいて前記駆動手段が脱調した場合には、前記ワークの実際のサイズが前記取得手段によって取得されたワークのサイズよりも大きい場合として前記ワークに対する工作を制御し、全てのポイントにおいて前記駆動手段が脱調しなかった場合には、前記ワークの実際のサイズが前記取得手段によって取得されたワークのサイズ以下である場合として前記ワークに対する工作を制御することを特徴とする請求項３に記載の工作機。
【請求項５】
前記取得手段は、前記工作機の操作者から入力されることにより前記ワークのサイズを取得するか、又は、前記工作機に予め格納された情報を参照することにより前記ワークのサイズを取得することを特徴とする請求項１乃至４の何れか１項に記載の工作機。
【請求項６】
工作機であって、
取り付けられた工具を回転させる主軸と、
前記主軸に取り付けられた工具によって工作が行われるワークを取り付けるテーブルと、
前記テーブルに載置されるワークのサイズを取得する取得手段と、
前記取得手段によって取得した前記ワークのサイズに従って、前記テーブルを駆動して、前記主軸の近傍に該テーブルに載置されたワークを移動させる駆動手段と、
前記駆動手段が脱調した場合には、前記ワークの実際のサイズが前記取得手段によって取得されたワークのサイズよりも大きい場合として前記ワークに対する工作を制御し、前記駆動手段が脱調しなかった場合には、前記ワークの実際のサイズが前記取得手段によって取得されたワークのサイズ以下である場合として前記ワークに対する工作を制御する制御手段と
を備えることを特徴とする工作機。
【請求項７】
取り付けられた工具を回転させる主軸と、前記主軸に取り付けられた工具によって工作が行われるワークを取り付けるテーブルと、を備える工作機の制御方法であって、
前記テーブルに載置されるワークのサイズを取得する取得ステップと、
前記取得ステップにおいて取得した前記ワークのサイズに従って、前記テーブルに載置されたワークの近傍に前記主軸を駆動する駆動ステップと、
前記駆動ステップにおいて脱調が発生した場合には、前記ワークの実際のサイズが前記取得ステップにおいて取得されたワークのサイズよりも大きい場合として前記ワークに対する工作を制御し、前記駆動ステップにおいて脱調が発生しなかった場合には、前記ワークの実際のサイズが前記取得ステップにおいて取得されたワークのサイズ以下である場合として前記ワークに対する工作を制御する制御ステップと
を実行することを特徴とする工作機の制御方法。
【請求項８】
取り付けられた工具を回転させる主軸と、前記主軸に取り付けられた工具によって工作が行われるワークを取り付けるテーブルと、を備える工作機の制御方法であって、
前記テーブルに載置されるワークのサイズを取得する取得ステップと、
前記取得ステップにおいて取得した前記ワークのサイズに従って、前記テーブルを駆動して、前記主軸の近傍に該テーブルに載置されたワークを移動させる駆動ステップと、
前記駆動ステップにおいて脱調が発生した場合には、前記ワークの実際のサイズが前記取得ステップにおいて取得されたワークのサイズよりも大きい場合として前記ワークに対する工作を制御し、前記駆動ステップにおいて脱調が発生しなかった場合には、前記ワークの実際のサイズが前記取得ステップにおいて取得されたワークのサイズ以下である場合として前記ワークに対する工作を制御する制御ステップと
を実行することを特徴とする工作機の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ワークサイズを検知する工作機、及びその制御方法に関するものである。
【背景技術】
【０００２】
工作機によるワークの加工、例えば、三次元形状を有した金型曲面等の加工において、ワーク加工工程の間にワークの三次元の形状寸法を測定してワークの加工状態を検出し、所望の形状寸法に至る加工の進捗度合や加工精度を把握することが行われている。この場合におけるワークの三次元形状寸法の測定においては、都度、工作機外の三次元測定機へワークを搬入して測定を行っている。これでは測定機へのワークの設定が煩瑣になり、また測定後に再びワークの加工を行う場合には、工作機上へのワークの再設定にも手間取る等の不利がある。従って、工作機のテーブルに装着されたままのワークに対して、工作機の主軸に工具と交換に測定子を有した測定ヘッドを工具交換装置等で装着し、この測定ヘッドを用いて上記テーブル上に取着されたままのワークの形状寸法を直接、測定することも効率的な方法として提案されている。
【０００３】
例えば、特許文献１には、ワークの加工位置や加工精度を検出するために位置検出センサを用いる方法が提案されている。当該位置検出センサは、棒状の接触プローブを備えており、被測定物に接触した接触プローブが、Ｘ方向、Ｙ方向、Ｚ方向、又はそれらの合成した方向に変位すると、当該接触プローブ後端がＺ方向に変位して、スイッチが押圧される。これにより、接触した位置に被測定物が存在することを検出している。
【０００４】
また、特許文献２には、主軸を非接触で回転自在に支持する主軸ヘッドを有し、主軸に取り付けられた接触子をワークに接触させ、ワークの形状に沿って主軸ヘッドを相対的に移動させる技術が提案されている。具体的には、主軸が非接触で支持されていることから、主軸が主軸ヘッドに対して相対的に移動し、その変位を検出することで、ワークの形状を測定することができる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平０９−２６４７０５号公報
【特許文献２】特開２０００−１７６７９３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記従来技術には以下に記載する問題がある。例えば、位置検出センサは高価であることや、上述した接触プローブを用いるには、接触プローブを主軸に掴ませるために、段取り時間が必要になる、という問題がある。また、主軸を非接触で回転自在に支持する主軸ヘッドには、滑り軸受け、静圧軸受け、磁気軸受けといった特殊なメカ構造が必要になってしまうことや、ワークと接触させるために接触子が必要となるという問題がある。
【０００７】
本発明は、上述の問題に鑑みて成されたものであり、作業台に装着した状態でワークのサイズを好適に把握することにより、加工プログラムで想定したサイズと異なることによる加工の失敗や工具の破損を防止する仕組みを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記の目的を達成するために本発明は、工作機であって、取り付けられた工具を回転させる主軸と、前記主軸に取り付けられた工具によって工作が行われるワークを取り付けるテーブルと、前記テーブルに載置されるワークのサイズを取得する取得手段と、前記取得手段によって取得した前記ワークのサイズに従って、前記テーブルに載置されたワークの近傍に前記主軸を駆動する駆動手段と、前記駆動手段が脱調した場合には、前記ワークの実際のサイズが前記取得手段によって取得されたワークのサイズよりも大きい場合として前記ワークに対する工作を制御し、前記駆動手段が脱調しなかった場合には、前記ワークの実際のサイズが前記取得手段によって取得されたワークのサイズ以下である場合として前記ワークに対する工作を制御する制御手段とを備えることを特徴とする。
【０００９】
また、本発明は、工作機であって、取り付けられた工具を回転させる主軸と、前記主軸に取り付けられた工具によって工作が行われるワークを取り付けるテーブルと、前記テーブルに載置されるワークのサイズを取得する取得手段と、前記取得手段によって取得した前記ワークのサイズに従って、前記テーブルを駆動して、前記主軸の近傍に該テーブルに載置されたワークを移動させる駆動手段と、前記駆動手段が脱調した場合には、前記ワークの実際のサイズが前記取得手段によって取得されたワークのサイズよりも大きい場合として前記ワークに対する工作を制御し、前記駆動手段が脱調しなかった場合には、前記ワークの実際のサイズが前記取得手段によって取得されたワークのサイズ以下である場合として前記ワークに対する工作を制御する制御手段とを備えることを特徴とする。
【００１０】
また、本発明は、取り付けられた工具を回転させる主軸と、前記主軸に取り付けられた工具によって工作が行われるワークを取り付けるテーブルと、を備える工作機の制御方法であって、前記テーブルに載置されるワークのサイズを取得する取得ステップと、前記取得ステップにおいて取得した前記ワークのサイズに従って、前記テーブルに載置されたワークの近傍に前記主軸を駆動する駆動ステップと、前記駆動ステップにおいて脱調が発生した場合には、前記ワークの実際のサイズが前記取得ステップにおいて取得されたワークのサイズよりも大きい場合として前記ワークに対する工作を制御し、前記駆動ステップにおいて脱調が発生しなかった場合には、前記ワークの実際のサイズが前記取得ステップにおいて取得されたワークのサイズ以下である場合として前記ワークに対する工作を制御する制御ステップとを実行することを特徴とする。
【００１１】
また、本発明は、取り付けられた工具を回転させる主軸と、前記主軸に取り付けられた工具によって工作が行われるワークを取り付けるテーブルと、を備える工作機の制御方法であって、前記テーブルに載置されるワークのサイズを取得する取得ステップと、前記取得ステップにおいて取得した前記ワークのサイズに従って、前記テーブルを駆動して、前記主軸の近傍に該テーブルに載置されたワークを移動させる駆動ステップと、前記駆動ステップにおいて脱調が発生した場合には、前記ワークの実際のサイズが前記取得ステップにおいて取得されたワークのサイズよりも大きい場合として前記ワークに対する工作を制御し、前記駆動ステップにおいて脱調が発生しなかった場合には、前記ワークの実際のサイズが前記取得ステップにおいて取得されたワークのサイズ以下である場合として前記ワークに対する工作を制御する制御ステップとを実行することを特徴とする。
【発明の効果】
【００１２】
本発明によれば、作業台に装着した状態でワークのサイズを好適に把握することにより、加工プログラムで想定したサイズと異なることによる加工の失敗や工具の破損を防止する仕組みを提供できる。
【図面の簡単な説明】
【００１３】
【図１】本実施形態に係る工作機の斜視図。
【図２】本実施形態に係る工作機の制御構成の一例を示す図。
【図３】本実施形態に係るワークサイズ（高さ方向）を検知するフローチャート。
【図４】本実施形態に係る高さが所々異なっている場合のワークサイズを検知するフローチャート。
【図５】本実施形態に係るワークサイズ（幅方向）を検知するフローチャート。
【図６】本実施形態に係るワークサイズ（奥行き方向）を検知するフローチャート。
【発明を実施するための形態】
【００１４】
以下に本発明の一実施形態を示す。以下で説明される個別の実施形態は、本発明の上位概念、中位概念及び下位概念など種々の概念を理解するために役立つであろう。また、本発明の技術的範囲は、特許請求の範囲によって確定されるのであって、以下の個別の実施形態によって限定されるわけではない。
【００１５】
＜工作機の構成＞
以下、図面に基づいて本発明の実施例について詳細に説明する。まず、図１を参照して、本発明の実施形態に係る工作機１の構成について説明する。図１は工具を備えていない状態である。本実施形態における工作機１は、枠体１１と、枠体１１を構成する載置面に対して垂直に設けられた一対の側壁に架橋された２本一対のＸ軸シャフト２２からなる。Ｘ軸シャフト２２は、主軸５０を工作機１の載置面に対して水平方向に案内する。主軸５０は、取り付けられた工具を回転させて、ワークに対して工作を実施する。
【００１６】
Ｘ軸シャフト２２に平行な方向を本発明の実施形態におけるＸ軸とし、工作機１の載置面に対して水平方向で、Ｘ軸に垂直な方向をＹ軸、Ｘ軸及びＹ軸に対して垂直な方向をＺ軸と呼ぶ。不図示のＸ軸駆動モータはＸ軸シャフト２２に平行に設けられたＸ軸駆動軸２３を駆動させ、一対のＸ軸シャフト２２及びＸ軸駆動軸２３に組みつけられたＸ軸スライダ２０が移動する。Ｘ軸スライダ２０の移動に伴いＸ軸スライダ２０に組みつけられた主軸５０は、工作機１の載置面に対して水平方向に移動する。
【００１７】
Ｙ軸シャフト２７はＸ軸に対して垂直に設けられ、不図示のＹ軸駆動モータはＹ軸シャフト２７に平行に設けられたＹ軸駆動軸２９を駆動させる。これにより、一対のＹ軸シャフト２７及びＹ軸駆動軸２９に組みつけられたＹ軸スライダ２５が移動する。Ｙ軸シャフト２７と平行して、一対のマガジンシャフト６７設けられ、マガジン保持部材６９がマガジンシャフト６７に組付けられ、Ｙ軸スライダ２５と連結し、Ｙ軸の移動に伴って移動する。マガジン保持部材をＹ軸スライダと連結することによって、余分な駆動手段を無くしている。
【００１８】
マガジン保持部材６９には、工具マガジン３０が組付けられる。工具マガジン３０は、隔壁によって工具１０の加工によるワークの切粉が入り込まないようにすることが好ましい。工具１０は、交換を行いながら加工するため工具マガジン３０に複数設置されている。
【００１９】
不図示のＺ軸駆動モータの駆動力が駆動軸及び連結部によって伝わり、主軸５０は、Ｚ軸スライダ２４に沿って、工作機１の載置面に対して垂直方向に移動する。Ｘ軸駆動モータやＺ軸駆動モータは駆動力によって主軸５０と連結する部材により主軸５０を移動させる移動手段として機能する。これによって、主軸は三次元上２軸方向へ移動可能となっている。
【００２０】
枠体１１には底から下方に突出して床面に当接する複数本の脚部５が設けられる。載置場所において、工作機１は、これら脚部５によって枠体１１の底部に組みつけられた作業台（テーブル）２と作業台２に固定する加工対象であるワークに対して安定した工作動作を得る。
【００２１】
工作機１の工具マガジン３０の移動経路上には被衝突部材５７が設けられている。工作機１には先端保持部材４０に接触させ上下移動させる上下移動部材６２と、上下移動させる上下駆動手段６４が設けられている。
【００２２】
＜制御構成＞
次に、図２を参照して、第１の実施形態に係る工作機１の制御構成について説明する。工具格納装置は、制御構成として、制御部２０１を備える。制御部２０１は、ＣＰＵ１４、モータドライバ１６、及びデータ記憶部１７を備える。
【００２３】
ＣＰＵ１４は、データ記憶部１７に格納されている制御プログラム等を読み出して実行することにより工作機１を統括的に制御する。また、ＣＰＵ１４は、入力されたデータや信号に基づいて各種の演算を行う。モータドライバ１６は、ＣＰＵ１４からの指示に基づいて駆動手段として機能するモータ１２を駆動する。このモータ１２の駆動により、主軸５０が駆動され、エンコーダ１３からの出力によりＣＰＵ１４が主軸の位置を検知する。そして、モータ１２の駆動によって主軸５０が実際に移動した量（実際の位置）を検知することにより、ワークの位置や高さ方向のサイズを検知することができる。
【００２４】
データ記憶部１７は、制御プログラムの他に、モータ１２を駆動するための駆動パラメータやエンコーダ１３からの出力と主軸の位置を関連づけるための情報等を記憶する。ＣＰＵ１４は、データ記憶部１７に記憶されたデータに基づいて各種の演算を行い、エンコーダ１３で読み込んだ位置に基づいて、ワークの位置等を検知する。
【００２５】
＜ワーク＞
本発明では、ワーク近傍へ主軸５０を移動させるため、ワークサイズを予め知っている必要がある。そこで、本実施形態では、定形のワークサイズを数種類用意し、その中からユーザに選択させるようにする。定形のワークサイズは、例えば、以下の３タイプを用意する。
タイプ１：幅１００ｍｍ、奥行き８０ｍｍ、高さ１５ｍｍ
タイプ２：幅１００ｍｍ、奥行き８０ｍｍ、高さ５０ｍｍ
タイプ３：幅１００ｍｍ、奥行き８０ｍｍ、高さ１００ｍｍ
これらのワークサイズをユーザが選択する方法として、必要に応じて随時入力してもよいし、又はＮＣプログラム中のＮＣコードによって指定してもよい。
【００２６】
したがって、特別なＮＣコードを用意し、例えば、ＮＣコードの機能を、以下のように割り当てたとする。
Ｍ２０１・・・タイプ１のワークを使って加工する。
Ｍ２０２・・・タイプ２のワークを使って加工する。
Ｍ２０３・・・タイプ３のワークを使って加工する。
このとき、ＮＣプログラム中に、Ｍ２０１というコードが現れたら、このＮＣプログラムはタイプ１（幅１００ｍｍ、奥行き８０ｍｍ、高さ１５ｍｍ）のワークサイズで加工を行うという意味になる。このようにして、必要なワークサイズがわかるので、ワーク近傍まで主軸５０を移動させることが可能となる。
【００２７】
＜高さ方向検知（ワークの高さ一定）＞
次に、図３を参照して、作業台２に載置されるワークの高さが一定である場合の、ワークサイズ（高さ方向）の検出手順について説明する。以下で説明する処理は、ＣＰＵ１４がデータ記憶部１７に格納されている制御プログラムを読み出して実行することにより実現される。ここでは、駆動部にステッピングモータを使用した場合の処理について説明する。
【００２８】
Ｓ１０１において、ＣＰＵ１４は、モータドライバ１６を介してワークの上方に主軸５０を位置決めする。この位置では、主軸５０がワークに接触せず、脱調が発生していない状態となる。脱調とは、例えば、モータドライバ１６に入力されるパルス信号にモータが追従できなくなる現象を意味する。脱調が発生すると、実際の移動位置と、指令された所定移動位置との差が発生する。この差のことを、以下では位置偏差と称する。位置偏差を許容する範囲を予め設定し、通常は、許容する範囲内に収まっているが、この範囲を超えると異常と判断し、動作を停止させる。
【００２９】
Ｓ１０２において、ＣＰＵ１４は、Ｚ軸の駆動トルクを下げ、さらに、Ｚ軸の位置偏差を許容する範囲を狭める。駆動トルクを下げる理由は、万が一、主軸５０がワークに接触した際に、主軸５０などのメカ機構の破損やワークの破損を最小限に抑えるためである。同様に、破損などの被害を抑えるために、位置偏差を許容する範囲を狭め、少しでも脱調が生じると、異常として検出し、動作を停止できるようにする。位置の検出は、例えばエンコーダ１３を用いる。例えば、位置偏差が１００パルス以上ずれた場合に異常だと判断していたとすると、この値を１０パルスとすることで、位置偏差が１０パルスを超えるとすぐに異常として検出し、動作を停止するようにできるため、破損などの被害を抑えられる。
【００３０】
Ｓ１０３において、ＣＰＵ１４は、ワークの高さを取得する。この値は、予め所定の値を設定しているか、値を随時入力できるようにしてもよい。または、前述のように、ＮＣプログラム上のＮＣコードでワークサイズを指定できるように、特別なＮＣコードを用意してもよい。
【００３１】
Ｓ１０４において、ＣＰＵ１４は、Ｚ軸を移動させ、主軸５０をワークの上面ぎりぎりまで下降させる。そのために、Ｚ軸の原点からどの程度離れた位置へ移動させるべきかを知る必要がある。この位置は、Ｓ１０３で取得したワークの高さに応じて、所定の値を決めておいてもよい。或いは、ＣＰＵ１４が随時計算してもよい。計算する場合は、ワークを乗せる作業台２の上面ぎりぎりの位置に主軸５０がいるときのＺ軸位置から、Ｓ１０３で取得したワークの高さを引いたものが、求める値となる。この計算結果に対して、実験や経験に基づき、補正を行ってもよい。また、主軸５０の下降速度を遅くすることで、万が一、主軸５０がワークに接触した際に、主軸５０などのメカ機構の破損やワークの破損を最小限に抑えるようにする。
【００３２】
Ｓ１０５において、ＣＰＵ１４は、Ｚ軸に脱調が起きたか否かを判定する。つまり、Ｓ１０４で行ったワークの上面位置へ主軸５０を下降させる動作について、所定の位置へ位置決めを完了できたか否かを判定している。位置の検出は、エンコーダ１３を用いる。脱調が発生したならば、Ｓ１０６へ進み、ＣＰＵ１４は、Ｓ１０３で設定したサイズよりも大きいワークだと判断し、Ｓ１０８に進む。一方、脱調が発生しなければＳ１０７へ進み、ＣＰＵ１４は、Ｓ１０３で設定したサイズか、それよりも小さいワークだと判断し、Ｓ１０８に進む。その後、Ｓ１０８において、ＣＰＵ１４は、Ｓ１０２で下げた駆動トルクを元に戻し、位置偏差を許容する範囲も元に戻し、処理を終了する。その後、ＣＰＵ１４は、Ｓ１０６又はＳ１０７で判断したワークのサイズに従って当該ワークへの工作を制御する。
【００３３】
＜高さ方向検知（ワークの高さ不定）＞
次に、図４を参照して、ワークの高さが一定でなく、所々異なっている場合のワークサイズを検知する検出手順について説明する。つまり、ワークの高さの測定ポイントが複数あることになる。以下で説明する処理は、ＣＰＵ１４がデータ記憶部１７に格納されている制御プログラムを読み出して実行することにより実現される。ここでは、駆動部にステッピングモータを使用した場合の処理について説明する。
【００３４】
Ｓ２０１において、ＣＰＵ１４は、測定ポイント数を変数ｎに格納する。そして、カウンタ変数ｉを初期化する。この変数ｉは、測定ポイント番号を参照するために使われる。続いて、Ｓ２０２において、ＣＰＵ１４は、変数ｉをインクリメントする。Ｓ２０３において、ＣＰＵ１４は、第ｉ点での、ＸＹ位置とワーク高さを取得する。これらの値は、予め入力されているか、必要に応じ随時入力するようにしてもよい。
【００３５】
Ｓ２０４において、ＣＰＵ１４は、Ｓ２０３で取得したＸＹ位置へ主軸５０を移動させる。この時のＺ方向の位置は、ワークに接触しないように上方に逃げているものとする。Ｓ２０５において、ＣＰＵ１４は、図３のフローチャートを用いて説明したワークサイズ検知処理を実行する。ただし、Ｓ１０３で使うワーク高さは、Ｓ２０３で取得した値を使用する。
【００３６】
Ｓ２０６において、ＣＰＵ１４は、Ｓ２０５の結果が、所定サイズよりもワークサイズが大きいと判断しているならば、Ｓ２０７へ進み、ＣＰＵ１４は、所定サイズよりもワークサイズが大きいと判断し、処理を終了する。一方、Ｓ２０５の結果が、ワークが所定サイズ、又は所定サイズよりも小さいと判断しているならば、Ｓ２０８へ進む。Ｓ２０８において、ＣＰＵ１４は、測定ポイント番号を参照している変数ｉが、測定ポイント数を超えたか否か（ｎ＜ｉ）を判定する。もし、ｎ＜ｉならば、Ｓ２０９に進み、ＣＰＵ１４は、ワークが所定サイズ、又は所定サイズよりも小さいと判断し、処理を終了する。もし、ｎ＜ｉでないならば、未だ測定していない測定ポイントがあると判断し、処理をＳ２０２へ戻す。
【００３７】
このように、ワークの高さが不定で、複数の測定ポイントがある場合は、各測定ポイントで図３で説明した検知処理を実行する。なお、ワークサイズが所定サイズよりも大きいと判断すると、その時点でまだ測定していないポイントがあったとしても測定を中止し、Ｓ２０７でワークが所定サイズよりも大きいと判断する。一方、Ｓ２０９でワークが所定サイズ以下であると判断する場合は、全ての測定ポイントでそのような結果が得られた場合となる。その後、ＣＰＵ１４は、Ｓ２０７又はＳ２０９で判断したワークのサイズに従って当該ワークへの工作を制御する。
【００３８】
＜幅方向検知（ワークの幅一定）＞
次に、図５を参照して、ワークの幅が一定である場合に、ワークサイズ（幅方向）を検出する検出手順について説明する。以下で説明する処理は、ＣＰＵ１４がデータ記憶部１７に格納されている制御プログラムを読み出して実行することにより実現される。ここでは、駆動部にステッピングモータを使用した場合の処理について説明する。
【００３９】
Ｓ３０１において、ＣＰＵ１４は、ワークの右方に主軸５０を位置決めする。ここでは、右方としているが左方としてもよい。Ｚ方向の位置は、主軸５０先端の位置がワークを乗せているプレートの上面に近くなるようにする。なお、この位置は、主軸５０がワークに接触せず、脱調が発生していない状態とする。
【００４０】
Ｓ３０２において、ＣＰＵ１４は、Ｘ軸の駆動トルクを下げ、さらに、Ｘ軸の位置偏差を許容する範囲を狭める。続いて、Ｓ３０３において、ＣＰＵ１４は、ワークの幅を取得する。この値は、予め所定の値を設定しているか、又は値を随時入力できるようにしてもよい。或いは、前述のように、ＮＣプログラム上のＮＣコードでワークサイズを指定できるように、特別なＮＣコードを用意してもよい。
【００４１】
Ｓ３０４において、ＣＰＵ１４は、Ｘ軸を駆動させ、ワークの右面ぎりぎりまで主軸５０を移動させる。ワーク右面ぎりぎりの位置は、ワークの幅に応じて予め設定されている、または随時入力させてもよい。また、主軸５０の移動速度を遅くすることで、万が一、主軸５０がワークに接触した際に、主軸５０などのメカ機構の破損やワークの破損を最小限に抑える。
【００４２】
Ｓ３０５において、ＣＰＵ１４は、Ｘ軸に脱調が起きたか否かを判定する。つまり、Ｓ３０４で行った、ワークの右面位置へ主軸５０を移動させる動作について、所定の位置へ位置決めを完了できたか否かを判定している。位置の検出は、例えばエンコーダ１３を用いる。脱調が発生したならば、Ｓ３０６へ進み、ＣＰＵ１４は、Ｓ３０３で設定したサイズ（所定サイズ）よりも大きいワークだと判断し、Ｓ３０８に進む。脱調が発生しなければＳ３０７へ進み、ＣＰＵ１４は、Ｓ３０３で設定したサイズか、それよりも小さいワークだと判断し、Ｓ３０８に進む。Ｓ３０８において、ＣＰＵ１４は、Ｓ３０２で下げた駆動トルクを元に戻し、位置偏差を許容する範囲も元に戻し、処理を終了する。その後、ＣＰＵ１４は、Ｓ３０６又はＳ３０７で判断したワークのサイズに従って当該ワークへの工作を制御する。なお、ここでは、測定ポイントが１つの場合について説明したが、幅方向において測定ポイントが複数ある場合には、図４と同様に各ポイントにおいて測定を実施する。
【００４３】
＜奥行方向検知（ワークの奥行一定）＞
次に、図６を参照して、ワークの奥行きが一定である場合に、ワークサイズ（奥行き方向）を検出する検出手順について説明する。以下で説明する処理は、ＣＰＵ１４がデータ記憶部１７に格納されている制御プログラムを読み出して実行することにより実現される。ここでは、駆動部にステッピングモータを使用した場合の処理について説明する。
【００４４】
Ｓ４０１において、ＣＰＵ１４は、ワークの手前に主軸５０を位置決めする。ここでは、手前としているがワークの奥側でもよい。Ｚ方向の位置は、主軸５０先端の位置がワークを乗せているプレート上の面に近くなるようにする。なお、この位置は、主軸５０がワークに接触せず、脱調が発生していない状態とする。
【００４５】
Ｓ４０２において、ＣＰＵ１４は、Ｙ軸の駆動トルクを下げ、Ｙ軸の位置偏差を許容する範囲を狭める。続いて、Ｓ４０３において、ＣＰＵ１４は、ワークの奥行きを取得する。この値は、予め所定の値を設定しているか、又は値を随時入力できるようにしてもよい。或いは、前述のように、ＮＣプログラム上のＮＣコードでワークサイズを指定できるように、特別なＮＣコードを用意してもよい。
【００４６】
Ｓ４０４において、ＣＰＵ１４は、Ｙ軸を駆動させてワークを移動させ、ワークの手前面ぎりぎりの位置に主軸５０が位置するようにする。ワーク手前面ぎりぎりの位置は、ワークの奥行きに応じて予め設定されているか、または随時入力できてもよい。また、主軸５０の移動速度を遅くすることで、万が一、主軸５０がワークに接触した際に、主軸５０などのメカ機構の破損やワークの破損を最小限に抑える。
【００４７】
Ｓ４０５において、ＣＰＵ１４は、Ｙ軸に脱調が起きたか否かを判定する。つまり、Ｓ４０４で行った、ワークを移動させてワークの手前面位置ぎりぎりに主軸５０が位置するようにさせる動作について、所定の位置へ位置決めを完了できたか否かを判定している。位置の検出は、例えばエンコーダ１３を用いる。脱調が発生したならば、Ｓ４０６へ進み、ＣＰＵ１４は、Ｓ４０３で設定したサイズよりも大きいワークだと判断する。一方、脱調が発生しなければＳ４０７へ進み、ＣＰＵ１４は、Ｓ４０３で設定したサイズか、それよりも小さいワークだと判断する。その後、Ｓ４０８へ進み、ＣＰＵ１４は、Ｓ４０２で下げた駆動トルクを元に戻し、位置偏差を許容する範囲も元に戻し、処理を終了する。なお、ここでは、測定ポイントが１つの場合について説明したが、奥行方向において測定ポイントが複数ある場合には、図４と同様に各ポイントにおいて測定を実施する。
【００４８】
以上説明したように、本実施形態に係る工作機１は、作業台２に載置されたワークのサイズ（高さ方向、幅方向、奥行き方向）が所定サイズ、例えば、操作者から入力された（選択された）サイズより大きいか、当該サイズ以下であるかを判定する。具体的には、本工作機１は、ワークを加工するために工具を取り付ける主軸５０を用いて、所定サイズを考慮して主軸５０をワーク方向に駆動させ、主軸を駆動するモータ１２に脱調が発生したか否かを検知することにより、ワークのサイズを判断する。なお、主軸５０をワーク方向に駆動させる際には、駆動トルクを下げてワーク等が破損しないように制御する。これにより、本実施形態に係る工作機１は、作業台２にワークを装着したままワークサイズを判断し、ワークサイズの差異による加工の失敗・工具破損を低コストで防ぐことができる。その後、ＣＰＵ１４は、Ｓ４０６又はＳ４０７で判断したワークのサイズに従って当該ワークへの工作を制御する。
【００４９】
本発明は、上記実施形態に限らず様々な変形が可能である。例えば、上記実施形態では、作業台２に載置されたワークへ向けて主軸を駆動することにより、ワークのサイズを判断していたが、主軸を固定し、作業台２を駆動することによってワークを移動させてワークのサイズを判断するようにしてもよい。
【００５０】
＜その他の実施形態＞
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
2014117785.tif 000003
【図２】
2014117785.tif 000004
【図３】
2014117785.tif 000005
【図４】
2014117785.tif 000006
【図５】
2014117785.tif 000007
【図６】
2014117785.tif 000008