特開2021-117608(P2021-117608A)IP Force 特許公報掲載プロジェクト 2015.5.11 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ DMG森精機株式会社の特許一覧
特開2021-117608工作機械、工作機械の制御方法、および工作機械の制御プログラム
<>
  • 特開2021117608-工作機械、工作機械の制御方法、および工作機械の制御プログラム 図000003
  • 特開2021117608-工作機械、工作機械の制御方法、および工作機械の制御プログラム 図000004
  • 特開2021117608-工作機械、工作機械の制御方法、および工作機械の制御プログラム 図000005
  • 特開2021117608-工作機械、工作機械の制御方法、および工作機械の制御プログラム 図000006
  • 特開2021117608-工作機械、工作機械の制御方法、および工作機械の制御プログラム 図000007
  • 特開2021117608-工作機械、工作機械の制御方法、および工作機械の制御プログラム 図000008
  • 特開2021117608-工作機械、工作機械の制御方法、および工作機械の制御プログラム 図000009
  • 特開2021117608-工作機械、工作機械の制御方法、および工作機械の制御プログラム 図000010
  • 特開2021117608-工作機械、工作機械の制御方法、および工作機械の制御プログラム 図000011
  • 特開2021117608-工作機械、工作機械の制御方法、および工作機械の制御プログラム 図000012
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】特開2021-117608(P2021-117608A)
(43)【公開日】2021年8月10日
(54)【発明の名称】工作機械、工作機械の制御方法、および工作機械の制御プログラム
(51)【国際特許分類】
   G05B 19/4093 20060101AFI20210712BHJP
   B23Q 15/00 20060101ALI20210712BHJP
   B23B 47/18 20060101ALI20210712BHJP
【FI】
   G05B19/4093 Z
   B23Q15/00 303B
   B23B47/18 A
【審査請求】未請求
【請求項の数】8
【出願形態】OL
【全頁数】18
(21)【出願番号】特願2020-9360(P2020-9360)
(22)【出願日】2020年1月23日
(71)【出願人】
【識別番号】000146847
【氏名又は名称】DMG森精機株式会社
(74)【代理人】
【識別番号】110001195
【氏名又は名称】特許業務法人深見特許事務所
(72)【発明者】
【氏名】西川 静雄
(72)【発明者】
【氏名】飯山 浩司
【テーマコード(参考)】
3C036
3C269
【Fターム(参考)】
3C036DD02
3C269AB02
3C269AB03
3C269AB05
3C269AB06
3C269AB07
3C269BB05
3C269BB11
3C269CC02
3C269CC17
3C269EF02
3C269EF39
3C269GG01
3C269MN07
3C269MN14
3C269MN16
3C269MN29
(57)【要約】
【課題】切り屑の排出効果を維持しつつステップ加工に要する時間を短縮するための技術を提供する。
【解決手段】工具を用いてワークにおける穴を切削することが可能な工作機械は、上記工具を回転するための主軸と、上記主軸の軸方向に当該主軸を駆動するための駆動部と、上記駆動部の駆動を制御するための制御部とを備える。上記制御部は、第1方向への上記主軸の駆動と、当該第1方向の反対方向である第2方向への上記主軸の駆動とを繰り返しながら、上記ワークの穴を切削する処理を実行する。上記第1方向は、上記主軸の軸方向に沿った方向で、かつ上記ワークに形成された穴の切削を進める方向である。上記主軸が上記第1方向へ駆動されてから上記第2方向に駆動されるまでの間の1回当たりの切削工程で上記第1方向に切削される上記穴の幅は、上記第1方向における上記穴の深さに応じて決められる。
【選択図】図4
【特許請求の範囲】
【請求項1】
工具を用いてワークにおける穴を切削することが可能な工作機械であって、
前記工具を回転するための主軸と、
前記主軸の軸方向に当該主軸を駆動するための駆動部と、
前記駆動部の駆動を制御するための制御部とを備え、前記制御部は、第1方向への前記主軸の駆動と、当該第1方向の反対方向である第2方向への前記主軸の駆動とを繰り返しながら、前記ワークの穴を切削する処理を実行し、前記第1方向は、前記主軸の軸方向に沿った方向で、かつ前記ワークに形成された穴の切削を進める方向であり、
前記主軸が前記第1方向へ駆動されてから前記第2方向に駆動されるまでの間の1回当たりの切削工程で前記第1方向に切削される前記穴の幅は、前記第1方向における前記穴の深さに応じて決められる、工作機械。
【請求項2】
前記穴の深さが第1値である場合における前記幅は、前記穴の深さが第2値である場合における前記幅よりも長く、
前記第2値は、前記第1値よりも大きい、請求項1に記載の工作機械。
【請求項3】
前記工作機械は、さらに、前記主軸にかかる負荷を検知するための検知部を備え、
前記制御部は、
前記穴の深さが前記第1値を含む第1範囲または前記第2値を含む第2範囲に属する場合には、前記穴の深さに応じて前記幅を決める処理と、
前記穴の深さが第3範囲に属する場合には、前記負荷が所定第1閾値を超えたことに基づいて、前記第1方向から前記第2方向への駆動を切り替える処理とを実行し、
前記第1範囲は、前記第3範囲よりも前記第1方向側にある範囲を示し、
前記第2範囲は、前記第3範囲よりも前記第2方向側にある範囲を示す、請求項2に記載の工作機械。
【請求項4】
前記制御部は、前記穴の深さが前記第1範囲または前記第2範囲に属する場合には、前記負荷に基づいては前記主軸の駆動方向を前記第1方向から前記第2方向へ切り替えない、請求項3に記載の工作機械。
【請求項5】
前記制御部は、さらに、前記穴の深さが前記第1範囲または前記第2範囲に属する場合には、前記負荷が第2閾値を超えたことに基づいて、前記第1方向から前記第2方向への駆動を切り替える処理を実行し、
前記第2閾値は、前記第1閾値よりも大きい、請求項3に記載の工作機械。
【請求項6】
前記制御部は、前記穴の深さが深いほど前記幅を短くする、請求項1または2に記載の工作機械。
【請求項7】
工具を用いてワークにおける穴を切削することが可能な工作機械の制御方法であって、
前記工具が装着された主軸を回転するステップと、
前記主軸の軸方向に当該主軸を駆動するステップとを備え、前記駆動するステップは、第1方向における前記主軸の駆動と、当該第1方向の反対方向である第2方向における前記主軸の駆動とを繰り返しながら、前記ワークの穴を切削するステップを含み、前記第1方向は、前記主軸の軸方向に沿った方向で、かつ前記ワークに形成された穴の切削を進める方向であり、
前記主軸が前記第1方向へ駆動されてから前記第2方向に駆動されるまでの間の1回当たりの切削工程で前記第1方向に切削される前記穴の幅は、前記第1方向における前記穴の深さに応じて決められる、制御方法。
【請求項8】
工具を用いてワークにおける穴を切削することが可能な工作機械の制御プログラムであって、
前記制御プログラムは、前記工作機械に、
前記工具が装着された主軸を回転するステップと、
前記主軸の軸方向に当該主軸を駆動するステップとを実行させ、前記駆動するステップは、第1方向における前記主軸の駆動と、当該第1方向の反対方向である第2方向における前記主軸の駆動とを繰り返しながら、前記ワークの穴を切削するステップを含み、前記第1方向は、前記主軸の軸方向に沿った方向で、かつ前記ワークに形成された穴の切削を進める方向であり、
前記主軸が前記第1方向へ駆動されてから前記第2方向に駆動されるまでの間の1回当たりの切削工程で前記第1方向に切削される前記穴の幅は、前記第1方向における前記穴の深さに応じて決められる、制御プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、ワークにおける穴を加工するための技術に関する。
【背景技術】
【0002】
ワークに穴を形成するための加工方法の1つとして、ステップ加工がある。ステップ加工とは、穴を深くする方向に工具を駆動する処理と、穴から工具を引き抜く方向に工具を駆動する処理とを繰り返しながら、所定の幅ずつワークの切削を進める加工方法である。ステップ加工は、切削時に発生する切り屑の排出効果の面で優れている。そのため、ステップ加工においては、切り屑の詰まりによる工具欠損が生じる可能性が、戻りが発生しないノンステップ加工よりも低い。一方で、ステップ加工にかかる時間は、ノンステップ加工よりも長くなる。
【0003】
ステップ加工に関し、特開2017−173896号公報(特許文献1)は、ステップ加工を高速化することを目的とした数値制御装置を開示している。より具体的には、当該数値制御装置は、工具を最大速度(所謂、早送り)で駆動する距離をステップ加工の際に増やすことでステップ加工に要する加工時間を短縮する。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2017−173896号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
以下では、ワークの穴を深くする方向における工具の駆動方向を「正方向」とも称する。また、工具を穴から引き抜く方向における工具の駆動方向を「負方向」とも称する。すなわち、負方向は、正方向と反対の方向を示す。また、工具を正方向に駆動してから負方向に駆動するまでの間の1回当たりの切削工程で正方向に切削されるワークの穴の幅を「ステップ幅」とも称する。
【0006】
ステップ加工の時間を短縮するためには、各切削工程でのステップ幅を可能な限り長くし、工具の戻り回数を減らすことが好ましい。一方で、切り屑の排出効果を高めるためには、各切削工程でのステップ幅を可能な限り短くし、工具の戻り回数を増やすことが好ましい。加工時間の短縮効果と切り屑の排出効果との両方を得るためには、各切削工程でのステップ幅を最適化する必要がある。特許文献1に開示される数値制御装置は、早送りでの駆動距離を可能な限り増やすだけで、ステップ幅を最適化するものではない。
【0007】
そのため、切り屑の排出効果を維持しつつステップ加工に要する時間を短縮することが可能な技術が望まれている。
【課題を解決するための手段】
【0008】
本開示の一例では、工具を用いてワークにおける穴を切削することが可能な工作機械は、上記工具を回転するための主軸と、上記主軸の軸方向に当該主軸を駆動するための駆動部と、上記駆動部の駆動を制御するための制御部とを備える。上記制御部は、第1方向への上記主軸の駆動と、当該第1方向の反対方向である第2方向への上記主軸の駆動とを繰り返しながら、上記ワークの穴を切削する処理を実行する。上記第1方向は、上記主軸の軸方向に沿った方向で、かつ上記ワークに形成された穴の切削を進める方向である。上記主軸が上記第1方向へ駆動されてから上記第2方向に駆動されるまでの間の1回当たりの切削工程で上記第1方向に切削される上記穴の幅は、上記第1方向における上記穴の深さに応じて決められる。
【0009】
本開示の一例では、上記穴の深さが第1値である場合における上記幅は、上記穴の深さが第2値である場合における上記幅よりも長い。上記第2値は、上記第1値よりも大きい。
【0010】
本開示の一例では、上記工作機械は、さらに、上記主軸にかかる負荷を検知するための検知部を備える。上記制御部は、上記穴の深さが上記第1値を含む第1範囲または上記第2値を含む第2範囲に属する場合には、上記穴の深さに応じて上記幅を決める処理と、上記穴の深さが第3範囲に属する場合には、上記負荷が所定第1閾値を超えたことに基づいて、上記第1方向から上記第2方向への駆動を切り替える処理とを実行する。上記第1範囲は、上記第3範囲よりも上記第1方向側にある範囲を示す。上記第2範囲は、上記第3範囲よりも上記第2方向側にある範囲を示す。
【0011】
本開示の一例では、上記制御部は、上記穴の深さが上記第1範囲または上記第2範囲に属する場合には、上記負荷に基づいては上記主軸の駆動方向を上記第1方向から上記第2方向へ切り替えない。
【0012】
本開示の一例では、上記制御部は、さらに、上記穴の深さが上記第1範囲または上記第2範囲に属する場合には、上記負荷が第2閾値を超えたことに基づいて、上記第1方向から上記第2方向への駆動を切り替える処理を実行する。上記第2閾値は、上記第1閾値よりも大きい。
【0013】
本開示の一例では、上記制御部は、上記穴の深さが深いほど上記幅を短くする。
本開示の他の例では、工具を用いてワークにおける穴を切削することが可能な工作機械の制御方法は、上記工具が装着された主軸を回転するステップと、上記主軸の軸方向に当該主軸を駆動するステップとを備える。上記駆動するステップは、第1方向における上記主軸の駆動と、当該第1方向の反対方向である第2方向における上記主軸の駆動とを繰り返しながら、上記ワークの穴を切削するステップを含む。上記第1方向は、上記主軸の軸方向に沿った方向で、かつ上記ワークに形成された穴の切削を進める方向である。上記主軸が上記第1方向へ駆動されてから上記第2方向に駆動されるまでの間の1回当たりの切削工程で上記第1方向に切削される上記穴の幅は、上記第1方向における上記穴の深さに応じて決められる。
【0014】
本開示の他の例では、工具を用いてワークにおける穴を切削することが可能な工作機械の制御プログラムは、上記工作機械に、上記工具が装着された主軸を回転するステップと、上記主軸の軸方向に当該主軸を駆動するステップとを実行させる。上記駆動するステップは、第1方向における上記主軸の駆動と、当該第1方向の反対方向である第2方向における上記主軸の駆動とを繰り返しながら、上記ワークの穴を切削するステップを含む。上記第1方向は、上記主軸の軸方向に沿った方向で、かつ上記ワークに形成された穴の切削を進める方向である。上記主軸が上記第1方向へ駆動されてから上記第2方向に駆動されるまでの間の1回当たりの切削工程で上記第1方向に切削される上記穴の幅は、上記第1方向における上記穴の深さに応じて決められる。
【0015】
本発明の上記および他の目的、特徴、局面および利点は、添付の図面と関連して理解される本発明に関する次の詳細な説明から明らかとなるであろう。
【図面の簡単な説明】
【0016】
図1】工作機械の外観を示す図である。
図2】工作機械の内部構成の概略を示す図である。
図3】工作機械における駆動機構の構成例を示す図である。
図4】工作機械によるステップ加工を時系列に示す図である。
図5】工作機械によるステップ加工を時系列に示す図である。
図6】工作機械の制御部の機能構成の一例を示す図である。
図7】ステップ幅を徐々に短くする処理を一部の切削工程で無効にしている態様を表わした図である。
図8】ステップ加工中における主軸負荷の推移を示す図である。
図9】CNC(Computer Numerical Control)ユニットのハードウェア構成の一例を示す模式図である。
図10】ステップ加工の流れを示すフローチャートである。
【発明を実施するための形態】
【0017】
以下、図面を参照しつつ、本発明に従う各実施の形態について説明する。以下の説明では、同一の部品および構成要素には同一の符号を付してある。それらの名称および機能も同じである。したがって、これらについての詳細な説明は繰り返さない。なお、以下で説明される各実施の形態および各変形例は、適宜選択的に組み合わされてもよい。
【0018】
<A.工作機械100の構成>
まず、図1および図2を参照して、工作機械100の構成について説明する。図1は、工作機械100の外観を示す図である。図2は、工作機械100の内部構成の概略を示す図である。
【0019】
図1および図2には、立形マシニングセンタとしての工作機械100が示されている。以下では、立形マシニングセンタとしての工作機械100について説明するが、工作機械100は、立形マシニングセンタに限定されない。たとえば、工作機械100は、横形マシニングセンタであってもよいし、旋盤であってもよいし、その他の切削機械や研削機械であってもよい。
【0020】
以下では、説明の便宜のために、水平面の一方向をX軸方向と称する。また、X方向に直交する水平面上の一方向をY軸方向と称する。また、X方向およびY方向の両方に直交する方向(すなわち、鉛直方向)をZ軸方向と称する。
【0021】
工作機械100は、操作盤130を含む。操作盤130は、加工に関する各種情報を表示するためのディスプレイ131と、工作機械100に対する各種操作を受け付ける入力デバイス132とを含む。
【0022】
また、工作機械100は、その内部に、主軸頭21を有する。主軸頭21は、主軸22と、ハウジング23とで構成されている。主軸22は、ハウジング23の内部に配置されている。主軸22は、Z軸方向に移動可能に構成されるとともに、Z軸方向を軸中心として回転可能に構成される。主軸22には、被加工物であるワークを加工するための工具32が装着される。図2には、工具32の例として、ドリル工具が示されているが、工具32は、ドリル工具に限定されない。一例として、工具32は、タップ工具であってもよいし、ワークの穴を切削するためのその他の切削工具であってもよい。
【0023】
工作機械100は、加工対象のワークをXY平面上で移動するための移動機構50をさらに有する。移動機構50は、ガイド51,53と、ボールねじ52,54と、ワークを保持するためのテーブル55とで構成されている。
【0024】
ガイド51は、Y軸に対して平行に設置されている。ガイド53は、X軸方向に対して平行に設置されている。ガイド53は、ガイド51上に設けられており、Y軸方向に駆動可能に構成されている。テーブル55は、ガイド53上に設けられており、ガイド53に沿って駆動可能に構成されている。
【0025】
<B.工作機械100の駆動機構>
次に、図3を参照して、工作機械100内の各種の駆動機構について説明する。図3は、工作機械100における駆動機構の構成例を示す図である。
【0026】
図3に示されるように、工作機械100は、制御部10と、主軸頭21と、工具32と、移動機構50と、サーボドライバ111R,111X〜111Zと、サーボモータ112R,112X〜112Zと、エンコーダ113R,113X〜113Zとを含む。
【0027】
本明細書でいう「制御部10」とは、工作機械100を制御するための少なくとも1つの制御回路を意味する。制御部10の装置構成は、任意である。一例として、制御部10は、PLC(Programmable Logic Controller)としてのCPU(Central Processing Unit)ユニットや、CNCユニットなどで構成される。CPUユニットおよびCNCユニットは、フィールドバスに接続されており、当該フィールドバスを介して互いに通信を行う。
【0028】
制御部10は、加工開始指令を受けたことに基づいて、予め設計されている加工プログラムの実行を開始する。当該加工プログラムは、たとえば、NC(Numerical Control)プログラムで記述されている。制御部10は、当該加工プログラムに従ってサーボドライバ111R,111X〜111Zを制御し、主軸22や移動機構50の駆動を制御する。
【0029】
サーボドライバ111Xは、制御部10から目標位置の入力を逐次的に受け、サーボモータ112Xを制御する。サーボモータ112Xは、上述のボールねじ54(図2参照)を駆動することで、ガイド53(図2参照)に沿って移動機構50を移動する。
【0030】
より具体的には、サーボドライバ111Xは、サーボモータ112Xの回転角度を検知するためのエンコーダ113Xのフィードバック信号からサーボモータ112Xの実回転速度を算出し、当該実回転速度が目標回転速度よりも小さい場合にはサーボモータ112Xの回転速度を上げ、当該実回転速度が目標回転速度よりも大きい場合にはサーボモータ112Xの回転速度を下げる。このように、サーボドライバ111Xは、サーボモータ112Xの回転速度のフィードバックを逐次的に受けながらサーボモータ112Xの回転速度を目標回転速度に近付ける。
【0031】
サーボドライバ111Yは、制御部10から目標位置の入力を逐次的に受け、サーボモータ112Yを制御する。サーボモータ112Yは、上述のボールねじ52を駆動することでガイド53(図2参照)をガイド51に沿って移動し、Y軸方向の任意の位置に移動機構50を移動する。
【0032】
より具体的には、サーボドライバ111Yは、サーボモータ112Yの回転角度を検知するためのエンコーダ113Yのフィードバック信号からサーボモータ112Yの実回転速度を算出し、当該実回転速度が目標回転速度よりも小さい場合にはサーボモータ112Yの回転速度を上げ、当該実回転速度が目標回転速度よりも大きい場合にはサーボモータ112Yの回転速度を下げる。このように、サーボドライバ111Yは、サーボモータ112Yの回転速度のフィードバックを逐次的に受けながらサーボモータ112Yの回転速度を目標回転速度に近付ける。
【0033】
サーボドライバ111Zは、制御部10から目標位置の入力を逐次的に受け、サーボモータ112Zを制御する。サーボモータ112Zは、主軸頭21に接続されているボールねじ(図示しない)を介して送り駆動し、Z方向の任意の位置に主軸22を移動する。
【0034】
より具体的には、サーボドライバ111Zは、サーボモータ112Zの回転角度を検知するためのエンコーダ113Zのフィードバック信号からサーボモータ112Zの実回転速度を算出し、当該実回転速度が目標回転速度よりも小さい場合にはサーボモータ112Zの回転速度を上げ、当該実回転速度が目標回転速度よりも大きい場合にはサーボモータ112Zの回転速度を下げる。このように、サーボドライバ111Zは、サーボモータ112Zの回転速度のフィードバックを逐次的に受けながらサーボモータ112Zの回転速度を目標回転速度に近付ける。
【0035】
サーボドライバ111Rは、制御部10から目標回転速度の入力を逐次的に受け、サーボモータ112Rを制御する。サーボモータ112Rは、Z軸方向を中心として主軸22を回転駆動する。
【0036】
より具体的には、サーボドライバ111Rは、サーボモータ112Rの回転角度を検知するためのエンコーダ113Rのフィードバック信号からサーボモータ112Rの実回転速度を算出し、当該実回転速度が目標回転速度よりも小さい場合にはサーボモータ112Rの回転速度を上げ、当該実回転速度が目標回転速度よりも大きい場合にはサーボモータ112Rの回転速度を下げる。このように、サーボドライバ111Rは、サーボモータ112Rの回転速度のフィードバックを逐次的に受けながらサーボモータ112Rの回転速度を目標回転速度に近付ける。
【0037】
このように、制御部10は、サーボドライバ111X〜111Z,111Rを制御することで、移動機構50の駆動と、主軸22の駆動とを協働させる。これにより、工作機械100は、移動機構50に保持されるワークを任意の形状に加工することができる。
【0038】
<C.ステップ加工>
次に、図4および図5を参照して、工作機械100によるステップ加工について説明する。図4および図5は、工作機械100によるステップ加工を時系列に示す図である。
【0039】
上述のように、ステップ加工は、Z軸の正方向への主軸22の駆動と、Z軸の負方向への主軸22の駆動とを繰り返しながら、ワークの穴の切削を進める加工方法である。ステップ加工に要する時間を短縮するためには、主軸22がZ軸の正方向へ駆動されてから負方向に駆動されるまでの間の1回当たりの切削工程で当該正方向に切削される穴の幅(すなわち、ステップ幅)を可能な限り長くし、主軸22の戻り回数を減らすことが好ましい。
【0040】
しかしながら、ステップ幅が長くなると、切り屑の詰まりが穴内で発生する可能性が高くなってしまう。これに関して、穴が浅い段階では切り屑の詰まりが発生したとしても、加工を継続することにより切り屑の詰まりが解消することがある。そこで、工作機械100は、ワークの穴の深さに応じてステップ幅を決める。ワークの穴の深さに応じてステップ幅が最適化されることで、工作機械100は、切り屑の排出効果を維持しつつ加工時間を短縮することができる。
【0041】
より具体的な処理として、ステップS1において、工作機械100の制御部10(図3参照)は、各切削工程で切削される予定の穴の深さに応じて、次の切削工程でのステップ幅を決定する。図4の例では、まず、制御部10は、1回目の切削工程におけるステップ幅をD(1)とする。1回目の切削工程におけるステップ幅をD(1)は、予め定められてもよいし、ユーザによって設定されてもよい。
【0042】
次に、制御部10は、1回目の切削工程におけるステップ幅D(1)に基づいて、2回目の切削工程におけるステップ幅D(2)を決定する。このとき、制御部10は、2回目の切削工程におけるステップ幅D(2)を1回目の切削工程におけるステップ幅D(1)よりも短くする。一例として、制御部10は、ステップ幅D(2)に所定の係数w(0<w<1)を乗算し、当該乗算結果をステップ幅D(1)とする。
【0043】
次に、制御部10は、2回目の切削工程におけるステップ幅D(2)に基づいて、3回目の切削工程におけるステップ幅D(3)を決定する。このとき、制御部10は、3回目の切削工程におけるステップ幅D(3)を2回目の切削工程におけるステップ幅D(2)よりも短くする。一例として、制御部10は、ステップ幅D(2)に所定の係数w(0<w<1)を乗算し、当該乗算結果をステップ幅D(3)とする。このように、穴の深さが「D(1)+D(2)」(第2値)である場合におけるステップ幅D(3)は、穴の深さがD(1)(第1値)である場合におけるステップ幅D(2)よりも短い。
【0044】
このような処理が繰り返されることで、各切削工程でのステップ幅D(1)〜D(n)が決定される。これにより、ステップ幅D(1)〜D(n)は、ワークの穴の深さが深いほど短くなる。ステップ幅D(1)〜D(n)の合計は、ワークWに最終的に形成される穴の深さに相当する。
【0045】
次に、制御部10は、決定した各切削工程でのステップ幅D(1)〜D(n)に基づいて、Z方向における各切削工程での工具32(または主軸22)の目標位置z(1)〜z(n)を算出する。より具体的には、制御部10は、所定のマージンD(0)とステップ幅D(1)とを原点位置z(0)に加算し、当該加算結果を1回目の切削工程の目標位置z(1)として算出する。原点位置z(0)は、各切削工程での工具32の戻り位置であり、たとえば、加工プログラム内において規定されている。マージンD(0)は、原点位置z(0)からワーク表面までの間の距離を示す。マージンD(0)は、たとえば、加工プログラム内において規定されていてもよいし、加工プログラム内の各種情報から算出されてもよい。
【0046】
制御部10は、算出した目標位置z(1)にステップ幅D(2)を加算した結果を2回目の切削工程の目標位置z(2)とする。このような算出処理が繰り返されることで、各ステップ幅に対応する目標位置z(1)〜z(n)が算出される。
【0047】
次に、制御部10は、ステップS1で決定した目標位置z(1)に基づいて、上述のサーボドライバ111Z(図3参照)を制御し、Z方向への主軸22の駆動を開始する。その後、サーボドライバ111Zは、サーボモータ112Z用のエンコーダ113Z(図3参照)からフィードバック信号を逐次的に受け、当該フィードバック信号に基づいてZ方向における主軸22の現在位置を算出する。算出された主軸22の現在位置は、制御部10に逐次的に出力される。制御部10は、サーボドライバ111Zから得た主軸22の現在位置に所定のオフセット値を加算することで、工具32の先端部の現在位置zAを算出する。これにより、工具32の現在位置zAがリアルタイムに特定される。制御部10は、工具32の現在位置zAが1回目の切削工程の目標位置z(1)に一致したか否かを逐次的に判断する。
【0048】
ステップS2において、工具32の現在位置zAが1回目の切削工程の目標位置z(1)に一致したとする。このことに基づいて、制御部10は、上述のサーボドライバ111Zを制御し、Z軸の負方向に主軸22を駆動する。これにより、制御部10は、工具32を原点位置z(0)に戻す。
【0049】
ステップS3において、工具32の現在位置zAが原点位置z(0)に一致したとする。このことに基づいて、制御部10は、Z軸の正方向への主軸22の駆動を再び開始する。その後、制御部10は、工具32の現在位置zAを逐次的に取得し、当該現在位置zAを2回目の切削工程の目標位置z(2)と順次比較する。
【0050】
ステップS4において、工具32の現在位置zAが2回目の切削工程の目標位置z(2)に一致したとする。このことに基づいて、制御部10は、上述のサーボドライバ111Zを制御し、Z軸の負方向に主軸22を駆動する。これにより、制御部10は、工具32を原点位置z(0)に戻す。
【0051】
ステップS5において、工具32の現在位置zAが原点位置z(0)に一致したとする。このことに基づいて、制御部10は、Z軸の正方向への主軸22の駆動を再び開始する。その後、制御部10は、工具32の現在位置zAを逐次的に取得し、当該現在位置zAを3回目の切削工程の目標位置z(3)と順次比較する。
【0052】
ステップS6において、工具32の現在位置zAが3回目の切削工程の目標位置z(3)に一致したとする。このことに基づいて、制御部10は、上述のサーボドライバ111Zを制御し、Z軸の負方向に主軸22を駆動する。これにより、制御部10は、工具32を原点位置z(0)に戻す。
【0053】
ステップS7において、工具32の現在位置zAが原点位置z(0)に一致したとする。このことに基づいて、制御部10は、Z軸の正方向への主軸22の駆動を再び開始する。その後、制御部10は、工具32の現在位置zAを逐次的に取得し、当該現在位置zAを4回目の切削工程の目標位置z(4)と順次比較する。
【0054】
以上のような切削工程が繰り返されることで、制御部10は、最終目標位置までワークWの切削を進める。結果として、ステップ幅D(1)〜D(n)の合計に相当する深さの穴がワークWに形成される。
【0055】
なお、上述では、ステップ幅D(1)〜D(n)および目標位置z(1)〜z(n)がステップ加工の開始前に決定される例について説明を行ったが、ステップ幅D(1)〜D(n)および目標位置z(1)〜z(n)は、ステップ加工中に逐次的に決定されてもよい。
【0056】
また、図4では、ドリル工具としての工具32を用いてステップ幅を徐々に短くするステップ加工について説明を行ったが、当該ステップ加工は、タップ工具や、穴を切削するためのその他の工具にも応用され得る。
【0057】
<D.機能構成>
次に、図6図8を参照して、ステップ加工を実現するための機能構成について説明する。図6は、制御部10の機能構成の一例を示す図である。
【0058】
図6に示されるように、制御部10は、駆動制御部152と、閾値設定部154と、強制反転部156とを含む。典型的には、これらの機能構成は、後述のCNCユニット10A(図9参照)に実装されるが、これらの機能構成の一部または全部は、工作機械100と通信可能なその他の装置に実装されてもよい。当該その他の装置は、たとえば、CNCユニットに接続されるCPUユニットや、サーバーなどを含む。
【0059】
以下では、駆動制御部152、閾値設定部154、および強制反転部156について順に説明する。
【0060】
(D1.駆動制御部152)
まず、駆動制御部152の機能について説明する。
【0061】
駆動制御部152は、上述のサーボドライバ111Z(図3参照)に駆動命令を出力することで、Z軸方向における主軸22の駆動を制御する。当該駆動命令は、たとえば、主軸22の回転のON/OFF、主軸22の回転方向、Z方向における主軸22の目標位置、または、主軸22の駆動に関するその他の駆動指令などを含む。駆動制御部152は、適切なタイミングでサーボドライバ111Zに駆動指令を出力することで、上述の図4および図5に示されるステップ加工を実現する。
【0062】
なお、上述の図4および図5では、ワークの穴の深さに応じてステップ幅を徐々に短くするステップ加工の例について説明を行ったが、このようなステップ幅を徐々に短くする処理は、必ずしも、ステップ加工の全切削工程で実行される必要はなく、ステップ加工の少なくとも一部の切削工程で実行されればよい。
【0063】
図7は、ステップ幅を徐々に短くする処理を一部の切削工程で無効にしている態様を表わした図である。図7に示されるD(1)〜D(9)は、各切削工程におけるステップ幅を示す。「z0’」は、ワーク表面の位置(Z座標)を示す。z(1)〜z(9)は、各切削工程における工具32の目標位置(Z座標)を示す。
【0064】
本例では、ステップ加工の各切削工程が複数の工程に分類する。図7の例では、ステップ加工の切削工程が、初期工程、中間工程、および最終工程の3つに分類されている。初期工程では、表面位置z0’から目標位置z(3)までの範囲ΔWS(第1範囲)の切削が進められる。中間工程では、目標位置z(3)から目標位置z(6)までの範囲ΔWM(第3範囲)の切削が進められる。最終工程では、目標位置z(6)から目標位置z(9)までの範囲ΔWE(第2範囲)の切削が進められる。
【0065】
範囲ΔWEは、範囲ΔWMよりもZ軸の正方向側の範囲を示す。すなわち、範囲ΔWEの最小値は、範囲ΔWMの最大値以上である。
【0066】
範囲ΔWMは、範囲ΔWSよりもZ軸の正方向側の範囲を示す。すなわち、範囲ΔWMの最小値は、範囲ΔWMの最大値以上である。
【0067】
駆動制御部152は、穴の深さが範囲ΔWSまたは範囲ΔWEに属する場合には、ステップ幅を徐々に短くする処理を有効にする。一方で、駆動制御部152は、穴の深さが範囲ΔWMに属する場合には、ステップ幅を徐々に短くする処理を無効にする。この場合は、駆動制御部152は、ステップ幅を固定する。一例として、ステップ幅D(1)〜D(9)は、以下の式(1)の関係を満たす。
【0068】
(数1)
D(1)>D(2)>D(3)≧D(4)=D(5)=D(6)≧D(7)>D(8)>D(9)・・・(1)
なお、ステップ幅を徐々に短くする処理を無効にする区域は、範囲ΔWMに限定されない。当該区域は、範囲ΔWS,ΔWM,ΔWEの内の1〜2つの範囲であってもよい。また、ステップ加工の切削工程の分類数は、範囲ΔWS,ΔWM,ΔWEの3つに限定されるわけではなく、2つであってもよいし、4つ以上であってもよい。
【0069】
好ましくは、駆動制御部152は、主軸22にかかる負荷が所定値を超えた場合には、主軸22の駆動を正方向から負方向に強制的に切り替えてもよい。主軸負荷が所定値よりも高いことは、ワークの穴内で切り屑の詰まりが発生している可能性が高いことを示す。強制反転処理により、切り屑の詰まりによる工具の欠損が防止される。強制反転命令は、たとえば、後述の強制反転部156から出力される。駆動制御部152は、強制反転部156から強制反転命令を受けた場合には、主軸22の駆動を正方向から負方向に切り替える。
【0070】
駆動制御部152は、強制反転処理を有効にする切削工程を適宜切り替えてもよい。ある局面において、駆動制御部152は、穴の深さが範囲ΔWMに属するときにのみ強制反転処理を有効にし、穴の深さが範囲ΔWSまたは範囲ΔWEに属するときには強制反転処理を無効にする。他の局面において、駆動制御部152は、穴の深さに依存せずに強制反転処理を有効する。この場合、強制反転部156が強制反転命令を出力する感度を穴の深さに応じて変える。この処理の詳細については後述する。
【0071】
(D2.閾値設定部154)
次に、図8を参照して、閾値設定部154の機能について説明する。図8は、ステップ加工中における主軸負荷の推移を示す図である。
【0072】
閾値設定部154は、後述の強制反転部156が強制反転命令を出力する基準となる主軸負荷の閾値をワークの穴の深さに応じて切り替える。一例として、ワークの穴の深さが範囲ΔWMに属する場合には、閾値設定部154は、主軸負荷の閾値を「th1」(第1閾値)に設定する。また、ワークの穴の深さが範囲ΔWSまたは範囲ΔWEに属する場合には、閾値設定部154は、主軸負荷の閾値を「th2」(第2閾値)に設定する。閾値「th2」は、閾値「th1」よりも大きい。
【0073】
このような閾値の効果は、次の通りである。上述のように穴が浅い初期工程においては、切削を続けることで穴の詰まりが解消することがある。また、穴が深くなる最終工程においては、ステップ幅が短いので、切り屑の詰まりが発生する可能性が低い。そのため、切り屑の詰まりが発生する可能性は、中間工程において高くなる。中間工程における閾値「th1」が初期工程および最終工程における閾値「th2」よりも低く設定されることで、強制反転命令は、中間工程において出力されやすくなる。これにより、中間工程における切り屑の詰まりがより確実に検知される。
【0074】
なお、初期工程における閾値「th1」と、最終工程における閾値「th1」とは、同じある必要はない。初期工程における閾値「th1」は、最終工程における閾値「th1」よりも大きくてもよいし、最終工程における閾値「th1」よりも小さくてもよい。典型的には、初期工程における閾値「th1」は、最終工程における閾値「th1」よりも小さい。
【0075】
(D3.強制反転部156)
引き続き、図8を参照して、強制反転部156の機能について説明する。
【0076】
強制反転部156は、Z方向における主軸負荷を定期的に取得し、当該主軸負荷が閾値設定部154に設定された閾値を超えた場合に、強制反転命令を駆動制御部152に出力する。
【0077】
主軸負荷は、たとえば、任意の方法で取得される。一例として、主軸負荷は、主軸22をZ方向に駆動する上述のサーボモータ112Z(図3参照)への出力値(電流値)を、Z方向における主軸負荷として取得する。当該出力値が高いほど、主軸負荷が高いことを示す。
【0078】
他の例として、主軸負荷を検知するために動力計(図示しない)が用いられる。当該動力計は、たとえば、上述のテーブル55(図2参照)のワークの設置部分に設けられる。動力計110は、工具32がワークに及ぼす力を検知することで、主軸22にかかる負荷を間接的に検知する。
【0079】
強制反転部156は、取得した主軸負荷に基づいて、駆動制御部152に強制反転命令を出力する。一例として、強制反転部156は、ワークの穴の深さが範囲ΔWSに属する初期工程では、主軸負荷が閾値「th2」を超えたことに基づいて、強制反転命令を出力する。また、強制反転部156は、ワークの穴の深さが範囲ΔWMに属する中間工程では、主軸負荷が閾値「th1」を超えたことに基づいて、強制反転命令を出力する。さらに、強制反転部156は、ワークの穴の深さが範囲ΔWEに属する最終工程では、主軸負荷が閾値「th2」を超えたことに基づいて、強制反転命令を出力する。図8の例では、最終工程において、工具負荷が閾値「th2」を超えているので、強制反転部156は、最終工程において強制反転命令を出力する。
【0080】
<E.CNCユニット10Aのハードウェア構成>
次に、図9を参照して、上述の制御部10(図3参照)の一例であるCNCユニット10Aのハードウェア構成について説明する。図9は、CNCユニット10Aのハードウェア構成の一例を示す模式図である。
【0081】
CNCユニット10Aは、制御回路101と、ROM102と、RAM103と、通信インターフェイス104と、フィールドバスコントローラ105と、記憶装置120とを含む。これらのコンポーネントは、内部バス109に接続される。
【0082】
制御回路101は、たとえば、少なくとも1つの集積回路によって構成される。集積回路は、たとえば、少なくとも1つのCPU、少なくとも1つのGPU(Graphics Processing Unit)、少なくとも1つのASIC(Application Specific Integrated Circuit)、少なくとも1つのFPGA(Field Programmable Gate Array)、またはそれらの組み合わせなどによって構成され得る。
【0083】
制御回路101は、加工プログラム122などの各種プログラムを実行することでCNCユニット10Aの動作を制御する。加工プログラム122は、工作機械100の制御プログラムであり、ワークの加工を実現するための各種命令を規定している。上述のステップ加工に係る命令コードは、たとえば、設計者によって加工プログラム122に記述される。当該命令コードは、設計者が利用可能なGコードの一部として予め実装されている。
【0084】
制御回路101は、加工プログラム122などのプログラムの実行命令を受け付けたことに基づいて、記憶装置120またはROM102からRAM103にプログラムを読み出す。RAM103は、ワーキングメモリとして機能し、プログラムの実行に必要な各種データを一時的に格納する。
【0085】
通信インターフェイス104には、LANやアンテナなどが接続される。CNCユニット10Aは、通信インターフェイス104を介して外部機器(たとえば、サーバー)とデータをやり取りする。CNCユニット10Aは、当該外部機器から加工プログラム122をダウンロードできるように構成されてもよい。
【0086】
フィールドバスコントローラ105は、フィールドバスに接続される各種ユニットとの通信を実現するためのインターフェイスである。当該フィールドバスに接続されるユニットの一例として、CPUユニット200やI/Oユニット(図示しない)などが挙げられる。
【0087】
記憶装置120は、たとえば、ハードディスクやフラッシュメモリなどの記憶媒体である。記憶装置120は、加工プログラム122や制御パラメータ124などを格納する。制御パラメータ124は、ステップ加工に関するパラメータであり、ステップ加工時において加工プログラム122に参照される。一例として、制御パラメータ124は、各切削工程におけるステップ幅、各切削工程における工具の目標位置、および、ステップ加工時における工具の戻り位置(原点位置)などを含む。制御パラメータ124は、図8に示されるように加工プログラム122と別に規定されていてもよいし、加工プログラム122内に規定されていてもよい。加工プログラム122および制御パラメータ124の格納場所は、記憶装置120に限定されず、制御回路101の記憶領域(たとえば、キャッシュメモリなど)、ROM102、RAM103、外部機器(たとえば、サーバー)などに格納されていてもよい。
【0088】
加工プログラム122は、単体のプログラムとしてではなく、任意のプログラムの一部に組み込まれて提供されてもよい。この場合、加工プログラム122によるステップ加工処理は、任意のプログラムと協働して実現される。このような一部のモジュールを含まないプログラムであっても、本実施の形態に従う加工プログラム122の趣旨を逸脱するものではない。さらに、加工プログラム122によって提供される機能の一部または全部は、専用のハードウェアによって実現されてもよい。さらに、少なくとも1つのサーバーが加工プログラム122の処理の一部を実行する所謂クラウドサービスのような形態でCNCユニット10Aが構成されてもよい。
【0089】
<F.ステップ加工のフロー>
図10を参照して、ワークの穴の深さに応じてステップ幅を徐々に短くする上述のステップ加工の流れについて説明する。図10は、ステップ加工の流れを示すフローチャートである。
【0090】
図10に示されるステップ加工は、上述の加工プログラム122(図9参照)に規定されているステップ加工の命令コードが工作機械100の制御部10に実行されることにより開示される。他の局面において、処理の一部または全部が、回路素子またはその他のハードウェアによって実行されてもよい。
【0091】
ステップS110において、制御部10は、上述の駆動制御部152(図6参照)として機能し、ステップ加工の各切削工程におけるステップ幅D(1)〜D(n)を決定する。より具体的には、まず、制御部10は、ワークに形成する目標の穴の深さを取得する。当該目標の穴の深さは、たとえば、加工プログラム122内のステップ加工に係る命令コードに規定されている。次に、制御部10は、取得した目標の穴の深さに基づいて、ステップ加工の各切削工程におけるステップ幅D(1)〜D(n)を決定する。典型的には、制御部10は、前の切削工程におけるステップ幅よりも今回のステップ幅を短くする。ステップ幅D(1)〜D(n)の合計値は、ワークに最終的に形成される穴の深さに相当する。すなわち、n回の切削工程が実行されることで、1回のステップ加工が完了する。
【0092】
ステップS112において、制御部10は、上述の駆動制御部152として機能し、ステップS110で決定したステップ幅D(1)〜D(n)に基づいて、各切削工程における工具32の目標位置z(1)〜z(n)を算出する。より具体的には、制御部10は、所定の原点位置z(0)(図4参照)に、所定のマージンD(0)(図4参照)とステップ幅D(1)とを加算し、当該加算結果を1回目の切削工程の目標位置z(1)として算出する。次に、制御部10は、算出した目標位置z(1)にステップ幅D(2)を加算し、当該加算結果を2回目の切削工程の目標位置z(2)として算出する。このような算出処理が繰り返されることで、各切削工程における工具32の目標位置z(1)〜z(n)が算出される。
【0093】
ステップS114において、制御部10は、現在何回目の切削工程が実行されているかを示す変数「i」を「1」に初期化する。1回の切削工程は、原点位置z(0)から目標位置に向けてZ方向の正方向に工具32を駆動する処理と、当該目標位置から原点位置z(0)に工具32を戻す処理とを含む。
【0094】
ステップS116において、制御部10は、上述の閾値設定部154(図6参照)として機能し、現在の穴の深さに応じた、主軸負荷の閾値を設定する。当該閾値は、主軸22の強制反転を実行するか否かの基準となる。一例として、制御部10は、ステップ幅D(0)〜D(i)の合計を算出し、当該合計値を現在の穴の深さとして算出する。穴の深さと閾値との対応関係は閾値情報として予め定められている。制御部10は、当該閾値情報を参照して、現在の穴の深さに対応する閾値を取得する。
【0095】
ステップS118において、制御部10は、上述の駆動制御部152として機能し、目標位置z(i)に向けてZ軸の正方向に主軸22の駆動を開始する。
【0096】
ステップS120において、制御部10は、工具32の先端部の現在位置zAを取得する。より具体的には、まず、サーボドライバ111Zは、サーボモータ112Z用のエンコーダ113Zからフィードバック信号を受け、当該フィードバック信号に基づいてZ方向における主軸22の現在位置を算出する。次に、制御部10は、主軸22の現在位置に所定のオフセット値を加算し、当該加算結果を工具32の現在位置zAとして算出する。
【0097】
ステップS122において、制御部10は、主軸22にかかる負荷を取得する。一例として、制御部10は、主軸22をZ方向に駆動する上述のサーボモータ112Zへの出力値(電流値)を主軸負荷として取得する。
【0098】
ステップS130において、制御部10は、上述の強制反転部156(図6参照)として機能し、ステップS122で取得した主軸負荷が、ステップS116で設定された閾値を超えたか否かを判断する。制御部10は、当該主軸負荷が当該閾値を超えたと判断した場合(ステップS130においてYES)、制御をステップS142に切り替える。そうでない場合には(ステップS130においてNO)、制御部10は、制御をステップS140に切り替える。
【0099】
ステップS140において、制御部10は、ステップS120で取得した工具の現在位置zAが目標位置z(i)に達したか否かを判断する。制御部10は、工具の現在位置zAが目標位置z(i)に達したと判断した場合(ステップS140においてYES)、制御をステップS142に切り替える。そうでない場合には(ステップS140においてNO)、制御部10は、制御をステップS120に戻す。
【0100】
ステップS142において、制御部10は、上述の駆動制御部152として機能し、Z軸の負方向に主軸22を駆動し、工具32を原点位置z(0)に戻す。
【0101】
ステップS150において、制御部10は、現在の切削工程の実行回数「i」が予定実行回数「n」以上であるか否かを判断する。制御部10は、実行回数「i」が予定実行回数「n」以上であると判断した場合(ステップS150においてYES)、図10に示されるステップ加工を完了する。そうでない場合には(ステップS150においてNO)、制御部10は、制御をステップS152に切り替える。
【0102】
ステップS152において、制御部10は、変数「i」をインクリメントする。すなわち、制御部10は、変数「i」に1を加算する。その後、制御部10は、制御をステップS116に戻す。
【0103】
なお、上述では、主軸負荷が閾値を超えた場合に、ステップ幅が更新されない例について説明を行ったが、制御部10は、主軸負荷が閾値を超えた場合に、ステップS110で決定したステップ幅を更新してもよい。
【0104】
<G.まとめ>
以上のように、工作機械100は、ワークに形成される穴が深くなるど、ステップ幅を短くする。穴が浅い段階では切り屑の詰まりが発生したとしても、加工を継続することにより切り屑の詰まりが解消することが多い。そのため、穴が浅い段階ではステップ幅が長く設定されたとしても、切り屑の詰まりによる工具の欠損が生じにくい。また、工作機械100は、ステップ幅をより長く設定することで工具の戻り回数を減らすことができ、ステップ加工に要する時間を通常よりも短縮することができる。
【0105】
一方で、穴が深い段階では切り屑の詰まりが発生しやすい。そのため、工作機械100は、穴が深い段階ではステップ幅をより短く設定する。これにより、工作機械100は、切り屑の排出効果を高めることができ、切り屑の詰まりによる工具の欠損を防止することができる。
【0106】
今回開示された実施の形態は全ての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内での全ての変更が含まれることが意図される。
【符号の説明】
【0107】
10 制御部、10A CNCユニット、21 主軸頭、22 主軸、23 ハウジング、32 工具、50 移動機構、51,53 ガイド、52,54 ボールねじ、55 テーブル、100 工作機械、101 制御回路、102 ROM、103 RAM、104 通信インターフェイス、105 フィールドバスコントローラ、109 内部バス、110 動力計、111R,111X,111Y,111Z サーボドライバ、112R,112X,112Y,112Z サーボモータ、113R,113X,113Y,113Z エンコーダ、120 記憶装置、122 加工プログラム、124 制御パラメータ、130 操作盤、131 ディスプレイ、132 入力デバイス、152 駆動制御部、154 閾値設定部、156 強制反転部、200 CPUユニット。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10