(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-03-25
(45)【発行日】2024-04-02
(54)【発明の名称】数値制御装置
(51)【国際特許分類】
G05B 19/4103 20060101AFI20240326BHJP
G05B 19/4093 20060101ALI20240326BHJP
【FI】
G05B19/4103 D
G05B19/4093 P
(21)【出願番号】P 2022505185
(86)(22)【出願日】2021-02-26
(86)【国際出願番号】 JP2021007452
(87)【国際公開番号】W WO2021177180
(87)【国際公開日】2021-09-10
【審査請求日】2022-11-21
(31)【優先権主張番号】P 2020037012
(32)【優先日】2020-03-04
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】390008235
【氏名又は名称】ファナック株式会社
(74)【代理人】
【識別番号】100106002
【氏名又は名称】正林 真之
(74)【代理人】
【識別番号】100165157
【氏名又は名称】芝 哲央
(74)【代理人】
【識別番号】100160794
【氏名又は名称】星野 寛明
(72)【発明者】
【氏名】村上 大樹
【審査官】山本 忠博
(56)【参考文献】
【文献】特開2019-082851(JP,A)
【文献】特開2018-120543(JP,A)
【文献】特開2009-301232(JP,A)
【文献】特開2020-027410(JP,A)
【文献】国際公開第2012/056554(WO,A1)
【文献】特開平09-265310(JP,A)
【文献】特開平01-316185(JP,A)
【文献】特表2009-545826(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05B 19/4103
G05B 19/4093
B23Q 15/00
(57)【特許請求の範囲】
【請求項1】
読み込んだ加工プログラムに基づいて、工作機械が有する工具の先端点の経路を示す先端点列を生成する加工プログラム読込部と、
前記加工プログラム読込部で生成された前記先端点列を補間する補間制御部と、
前記補間制御部で補間された前記先端点列を座標変換して、前記工具の位置を定める制御点の経路を示す制御点列を得るキネマティック変換部と、
前記キネマティック変換部で得られた前記制御点列に対して所定のパラメータでスムージング処理を行い、平滑化するスムージング適用部と、
前記スムージング適用部で平滑化された前記制御点列に基づいて、前記工作機械の駆動を制御する駆動制御部と、を備え、
前記スムージング適用部は、
該スムージング適用部で平滑化された前記制御点列を座標変換して、平滑化された前記先端点列を得る逆キネマティック変換部と、
前記キネマティック変換部で座標変換される前の前記先端点列と、前記逆キネマティック変換部で得られた、平滑化された前記先端点列と、の差の最大値が、予め設定された閾値以下であるか否かのチェックを行うトレランスチェック部と、を有し、かつ、
数値計算により、前記差の最大値が前記閾値以下となるように前記所定のパラメータを決定する、数値制御装置。
【請求項2】
読み込んだ加工プログラムに基づいて、工作機械が有する工具の先端点の経路を示す先端点列を生成する加工プログラム読込部と、
前記加工プログラム読込部で生成された前記先端点列を座標変換して、前記工具の位置を定める制御点の経路を示す制御点列を得るキネマティック変換部と、
前記キネマティック変換部で得られた前記制御点列に対して所定のパラメータでスムージング処理を行い、平滑化するスムージング適用部と、
前記スムージング適用部で平滑化された前記制御点列を補間する補間制御部と、
前記補間制御部で補間された前記制御点列に基づいて、前記工作機械の駆動を制御する駆動制御部と、を備え、
前記スムージング適用部は、
該スムージング適用部で平滑化された前記制御点列を座標変換して、平滑化された前記先端点列を得る逆キネマティック変換部と、
前記キネマティック変換部で座標変換される前の前記先端点列と、前記逆キネマティック変換部で得られた、平滑化された前記先端点列と、の差の最大値が、予め設定された閾値以下であるか否かのチェックを行うトレランスチェック部と、を有し、かつ、
数値計算により、前記差の最大値が前記閾値以下となるように前記所定のパラメータを決定する、数値制御装置。
【請求項3】
前記トレランスチェック部は、前記スムージング適用部で平滑化される前の前記制御点列と、前記スムージング適用部で平滑化された前記制御点列と、の差の最大値が、予め設定された閾値以下であるか否かのチェックを行う、請求項1又は2に記載の数値制御装置。
【請求項4】
読み込んだ加工プログラムに基づいて、工作機械が有する工具の先端点の経路を示す先端点列を生成する加工プログラム読込部と、
前記加工プログラム読込部で生成された前記先端点列を補間する補間制御部と、
前記補間制御部で補間された前記先端点列を座標変換して、前記工具の位置を定める制御点の経路を示す制御点列を得るキネマティック変換部と、
前記キネマティック変換部で得られた前記制御点列に対して所定のパラメータでスムージング処理を行い、平滑化するスムージング適用部と、
前記スムージング適用部で平滑化された前記制御点列に基づいて、前記工作機械の駆動を制御する駆動制御部と、を備え、
前記スムージング適用部は、
該スムージング適用部で平滑化された前記制御点列を座標変換して、平滑化された前記先端点列を得る逆キネマティック変換部と、
前記キネマティック変換部で座標変換される前の前記先端点列と、前記逆キネマティック変換部で得られた、平滑化された前記先端点列と、の差の最大値が、予め設定された閾値となるように解析的に前記所定のパラメータを決定する、数値制御装置。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、数値制御装置に関する。
【背景技術】
【0002】
従来、工作機械の数値制御装置において、ワークに接する工具の先端点で与えられる経路をスムージング(平滑化)する技術が採用されている(例えば、特許文献1参照)。特許文献1には、スムージングする技術として、ベジェ曲線、B-スプライン曲線、NURBS曲線、単純平均、加重平均等の周知技術が開示されている。これらの周知技術では、スムージングの後にトレランス(許容度)のチェックを行い、トレランスオーバの場合(トレランスが守られていない場合)、パラメータを変更してトレランス以内とすることで、パラメータの調整が行われる。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上記の周知技術においては、工具の位置を定める制御点とは異なる先端点で与えられる経路をスムージングしているため、スムージングした経路の座標変換(先端点の座標系→制御点の座標系)を行う必要がある。この結果、制御点で与えられる経路が滑らかではない場合がある。この場合、工作機械の動作に減速が発生し、サイクルタイムの低下や加工面品位の低下が発生することになる。
【0005】
従って、サイクルタイム及び加工面品質を向上することができる数値制御装置の提供が望まれる。
【課題を解決するための手段】
【0006】
本開示の一態様は、読み込んだ加工プログラムに基づいて、工作機械が有する工具の先端点の経路を示す先端点列を生成する加工プログラム読込部と、前記加工プログラム読込部で生成された前記先端点列を補間する補間制御部と、前記補間制御部で補間された前記先端点列を座標変換して、前記工具の位置を定める制御点の経路を示す制御点列を得るキネマティック変換部と、前記キネマティック変換部で得られた前記制御点列に対して所定のパラメータでスムージング処理を行い、平滑化するスムージング適用部と、前記スムージング適用部で平滑化された前記制御点列に基づいて、前記工作機械の駆動を制御する駆動制御部と、を備えている数値制御装置である。
【発明の効果】
【0007】
本開示の一態様によれば、サイクルタイム及び加工面品位を向上することができる数値制御装置を提供できる。
【図面の簡単な説明】
【0008】
【
図1】第1実施形態に係る数値制御装置の機能構成を示すブロック図である。
【
図2】第1実施形態に係る数値制御装置の制御対象である工作機械が有する工具の経路を示す概略図である。
【
図3】第1実施形態に係る数値制御装置で実行される処理を説明するフローチャートである。
【
図4】第2実施形態に係る数値制御装置の機能構成を示すブロック図である。
【
図5】第2実施形態に係る数値制御装置で実行される処理を説明するフローチャートである。
【
図6】第3実施形態に係る数値制御装置の機能構成を示すブロック図である。
【
図7】第3実施形態に係る数値制御装置で実行される処理を説明するフローチャートである。
【
図8】第4実施形態に係る数値制御装置の機能構成を示すブロック図である。
【
図9】第4実施形態に係る数値制御装置で実行される処理を説明するフローチャートである。
【発明を実施するための形態】
【0009】
以下、図面を参照して、実施形態に係る数値制御装置1,2,3,4について説明する。なお、第2実施形態以降の実施形態の説明において、他の実施形態と共通する構成については同一の符号を付し、その説明を省略する。
【0010】
[第1実施形態]
まず、
図1及び
図2を用いて、数値制御装置1の構成について説明する。
図1は、数値制御装置1の機能構成を示すブロック図である。
図2は、数値制御装置1の制御対象である工作機械Aが有する工具Tの経路を示す概略図である。
【0011】
図1に示す数値制御装置1は、CPU(Central Processing Unit)等の演算処理手段(図示省略)と、演算処理手段がプログラムを実行する上で一時的に必要とされるデータを格納するためのRAM(Random Access Memory)といった主記憶手段(図示省略)と、加工プログラムP等の各種プログラムを格納するHDD(Hard Disk Drive)やSSD(Solid State Drive)等の補助記憶手段(図示省略)と、キーボード等の入力手段(図示省略)と、モニタ等の出力手段(図示省略)と、工作機械Aと通信する通信手段(図示省略)と、等を備えている。
【0012】
数値制御装置1が備えているCPU(図示省略)は、各種プログラムを実行することによって、加工プログラム読込部10、補間制御部11、キネマティック変換部12、スムージング適用部13、駆動制御部14等の各種機能を実現する。
【0013】
加工プログラム読込部10は、読み込んだ加工プログラムPに基づいて、工作機械Aが有する工具T(
図2参照)の先端点の経路を示す先端点列P
tcp(t)を生成する。先端点列P
tcp(t)は、直線や円弧やパラメトリック曲線等で表された経路をパラメトリック曲線で表現したものである。この先端点列P
tcp(t)は、例えば工作機械Aが5軸加工機の場合、X,Y,Z軸座標値と回転軸B,Cの座標値からなる5次元ベクトルである。tは、パラメトリック曲線のパラメータである。
【0014】
補間制御部11は、加工プログラム読込部10で生成された先端点列Ptcp(t)を補間する。
【0015】
キネマティック変換部12は、補間制御部11で補間された先端点列P
tcp(t)を座標変換(キネマティック変換)して、工具T(
図2参照)の位置を定める制御点の経路を示す制御点列P
mcn(t)を得る。P
mcn(t)は、P
mcn(t)=M・P
tc
p(t)と表すことができる。このP
mcn(t)は、例えば工作機械Aが5軸加工機の場合、X,Y,Z軸座標値と回転軸B,Cの座標値からなる5次元ベクトルである。Mは、キネマティック変換を行う変換行列である。
【0016】
スムージング適用部13は、キネマティック変換部12で得られた制御点列Pmcn(t)に対して所定のパラメータuでスムージング処理を行い、平滑化する。これにより、平滑化された制御点列Qmcn(t)を得る。Qmcn(t)は、Qmcn(t)=S(u)・Pmcn(t)=S(u)・M・Ptcp(t)と表すことができる。所定のパラメータuは、スムージングの強度を表す変数である。Sは、スムージング処理を行うための演算である。S(u)は、u=0のとき、スムージング処理をせず、uが大きくなるほどスムージング処理の効果が増大し、経路が滑らかになる反面、元の経路からの乖離量が大きくなる。例えば、Sが線形フィルタの場合、その時定数がuに相当する。uは固定値でもよいし、u(t)のようにパラメータtに依存してもよい。uがパラメータtに依存することで、例えば、コーナ部分ではスムージング処理の効果を抑え、自由曲線部ではスムージング処理の効果を大きくすることが可能になる。
【0017】
具体的に、スムージング適用部13は、逆キネマティック変換部130と、トレランスチェック部131と、を有しており、数値計算により所定のパラメータuを決定する。
【0018】
逆キネマティック変換部130は、スムージング適用部13で平滑化された制御点列Qmcn(t)を座標変換(逆キネマティック変換)して、平滑化された先端点列Qtcp(t)を得る。Qtcp(t)は、Qtcp(t)=M-1・Qmcn(t)=M-1・S(u)・Pmcn(t)=M-1・S(u)・M・Ptcp(t)と表すことができる。M-1は、逆キネマティック変換を行う変換行列であり、Mの逆変換を行う変換行列である。
【0019】
トレランスチェック部131は、キネマティック変換部12で座標変換される前の先端点列Ptcp(t)と、逆キネマティック変換部130で得られた、平滑化された先端点列Qtcp(t)と、の差に基づいて、トレランスチェックを行う。Ptcp(t)とQtcp(t)との差d(t)は、d(t)=|Qtcp(t)-Ptcp(t)|と表すことができる。d(t)の最大値をdMaxとすると共に、予め設定されているトレランスをTtcpとして、dMax≦Ttcpを満たすuの最大値(最大のスムージング強度の値)を算出する。これにより、乖離量がTtcp以内であり、かつ、スムージング処理された滑らかな経路を得ることができる。
【0020】
駆動制御部14は、平滑化された制御点列Qmcn(t)に基づいて、工作機械Aの駆動を制御する。具体的に、駆動制御部14は、平滑化された制御点列Qmcn(t)に基づいて、工作機械Aが備えているサーボA1及び主軸A2を駆動するサーボ駆動部(不図示)及び主軸駆動部(不図示)を制御する。
【0021】
次に、
図3を用いて、数値制御装置1で実行される処理について説明する。
図3は、数値制御装置1で実行される処理を説明するフローチャートである。
【0022】
図3に示すように、数値制御装置1で実行される処理は、加工プログラム読込工程S10と、補間制御工程S11と、キネマティック変換工程S12と、スムージング強度設定工程S13と、スムージング適用工程S14と、逆キネマティック変換工程S15と、トレランスチェック工程S16と、駆動制御工程S18と、を備えている。
【0023】
加工プログラム読込工程S10では、読み込んだ加工プログラムPに基づいて、工作機械Aが有する工具Tの先端点の経路を示す先端点列Ptcp(t)を生成する。
【0024】
補間制御工程S11では、加工プログラム読込工程S10で生成された先端点列Ptc
p(t)を補間する。
【0025】
キネマティック変換工程S12では、補間制御工程S11で補間された先端点列Ptc
p(t)を座標変換して、工具Tの位置を求める制御点の経路を示す制御点列Pmcn(t)を得る。
【0026】
スムージング強度設定工程S13では、スムージング強度の値であるパラメータuを設定する。最初は小さい値を設定し、徐々に設定する値を大きくしていく。
【0027】
スムージング適用工程S14では、キネマティック変換部12で得られた制御点列Pm
cn(t)に対して、前工程で得られたパラメータuでスムージング処理を行い、平滑化する。
【0028】
逆キネマティック変換工程S15では、スムージング適用工程S14で平滑化された制御点列Qmcn(t)を座標変換して、平滑化された先端点列Qtcp(t)を得る。
【0029】
トレランスチェック工程S16では、キネマティック変換工程S12で座標変換される前の先端点列Ptcp(t)と、逆キネマティック変換工程S15で得られた、平滑化された先端点列Qtcp(t)と、の差に基づいて、トレランスチェックを行う。
【0030】
S17での判別結果に応じて工程S13~S16を繰り返し実行することで、dMax≦Ttcpを満たすuの最大値を数値計算により算出し、uの最大値でスムージング処理が行われた制御点列Qmcn(t)を得る。
【0031】
駆動制御工程S18では、最終的に得られた制御点列Qmcn(t)に基づいて、工作機械Aの駆動を制御する。
【0032】
このように、数値制御装置1は、読み込んだ加工プログラムPに基づいて、工作機械Aが有する工具Tの先端点の経路を示す先端点列Ptcp(t)を生成する加工プログラム読込部10と、加工プログラム読込部10で生成された先端点列Ptcp(t)を補間する補間制御部11と、補間制御部11で補間された先端点列Ptcp(t)を座標変換して、工具Tの位置を定める制御点の経路を示す制御点列Pmcn(t)を得るキネマティック変換部12と、キネマティック変換部12で得られた制御点列Pmcn(t)に対して所定のパラメータuでスムージング処理を行い、平滑化するスムージング適用部13と、スムージング適用部13で平滑化された制御点列Qmcn(t)に基づいて、工作機械Aの駆動を制御する駆動制御部14と、を備えている。
【0033】
また、数値制御装置1において、スムージング適用部13は、当該スムージング適用部13で平滑化された制御点列Qmcn(t)を座標変換して、平滑化された先端点列Qt
cp(t)を得る逆キネマティック変換部130と、キネマティック変換部12で座標変換される前の先端点列Ptcp(t)と、逆キネマティック変換部130で得られた、平滑化された先端点列Qtcp(t)と、の差に基づいて、トレランスのチェックを行うトレランスチェック部131と、を有し、数値計算により所定のパラメータuを決定することが好ましい。
【0034】
本実施形態に係る数値制御装置1によれば、制御点にスムージングがかかることにより、軸の動作が滑らかとなる。これにより、制御点が急激に動作することが抑制されるため、サイクルタイム及び加工面品位を向上することができる。
【0035】
[第2実施形態]
次に、
図4を用いて、数値制御装置2の構成について説明する。
図4は、数値制御装置2の機能構成を示すブロック図である。本実施形態は、数値計算により所定のパラメータuを決定するスムージング適用部13に代えて、解析的に所定のパラメータuを決定するスムージング適用部23を備えている点で第1実施形態と相違する。
【0036】
図4に示すように、数値制御装置2が備えているCPU(図示省略)は、各種プログラムを実行することによって、スムージング適用部23等の各種機能を実現する。
【0037】
スムージング適用部23は、キネマティック変換部12で得られた制御点列Pmcn(t)に対して所定のパラメータuでスムージング処理を行い、平滑化する。なお、スムージング適用部23は、解析的に所定のパラメータuを決定する。即ち、スムージング適用部23は、dMax=Ttcpを満たすuを算出する。
【0038】
次に、
図5を用いて、数値制御装置2で実行される処理について説明する。
図5は、数値制御装置2で実行される処理を説明するフローチャートである。
【0039】
図5に示すように、数値制御装置2で実行される処理は、加工プログラム読込工程S10と、補間制御工程S11と、キネマティック変換工程S12と、スムージング強度算出工程S23と、スムージング適用工程S14と、駆動制御工程S18と、を備えている。
【0040】
スムージング強度算出工程S23では、スムージング強度の値であるパラメータu(dMax=Ttcpを満たすu)を算出する。
なお、他の工程は、第1実施形態と同様である。
【0041】
このように、数値制御装置2は、読み込んだ加工プログラムPに基づいて、工作機械Aが有する工具Tの先端点の経路を示す先端点列Ptcp(t)を生成する加工プログラム読込部10と、加工プログラム読込部10で生成された先端点列Ptcp(t)を補間する補間制御部11と、補間制御部11で補間された先端点列Ptcp(t)を座標変換して、工具Tの位置を定める制御点の経路を示す制御点列Pmcn(t)を得るキネマティック変換部12と、キネマティック変換部12で得られた制御点列Pmcn(t)に対して所定のパラメータuでスムージング処理を行い、平滑化するスムージング適用部23と、スムージング適用部23で平滑化された制御点列Qmcn(t)に基づいて、工作機械Aの駆動を制御する駆動制御部14と、を備えている。
【0042】
また、数値制御装置2において、スムージング適用部23は、解析的に所定のパラメータuを決定することが好ましい。
【0043】
本実施形態に係る数値制御装置2によれば、制御点にスムージングがかかることにより、軸の動作が滑らかとなる。これにより、制御点が急激に動作することが抑制されるため、サイクルタイム及び加工面品位を向上することができる。
【0044】
[第3実施形態]
次に、
図6を用いて、数値制御装置3の構成について説明する。
図6は、数値制御装置3の機能構成を示すブロック図である。本実施形態は、キネマティック変換する前に先端点列P
tcp(t)を補間することに代えて、スムージング処理が行われた制御点列Q
m
cn(t)を補間する点で第1実施形態と相違する。
【0045】
図6に示すように、数値制御装置3が備えているCPU(図示省略)は、各種プログラムを実行することによって、加工プログラム読込部10、キネマティック変換部12、スムージング適用部13、補間制御部11、駆動制御部14等の各種機能を実現する。
【0046】
キネマティック変換部12は、加工プログラム読込部10で生成された先端点列P
tc
p(t)を座標変換して、工具T(
図2参照)の位置を定める制御点の経路を示す制御点列P
mcn(t)を得る。
【0047】
補間制御部11は、スムージング適用部13で平滑化された制御点列Qmcn(t)を補間する。
【0048】
駆動制御部14は、補間された制御点列Qmcn(t)に基づいて、工作機械Aの駆動を制御する。
【0049】
次に、
図7を用いて、数値制御装置3で実行される処理について説明する。
図7は、数値制御装置3で実行される処理を説明するフローチャートである。
【0050】
図7に示すように、数値制御装置3で実行される処理は、加工プログラム読込工程S10と、キネマティック変換工程S12と、スムージング強度設定工程S13と、スムージング適用工程S14と、逆キネマティック変換工程S15と、トレランスチェック工程S16と、補間制御工程S11と、駆動制御工程S18と、を備えている。
【0051】
キネマティック変換工程S12では、加工プログラム読込工程S10で生成された先端点列Ptcp(t)を座標変換して、工具Tの位置を求める制御点の経路を示す制御点列Pmcn(t)を得る。
【0052】
補間制御工程S11では、最終的に得られた制御点列Qmcn(t)を補間する。
【0053】
駆動制御工程S18では、補間制御工程S11で補間された制御点列Qmcn(t)に基づいて、工作機械Aの駆動を制御する。
なお、他の工程は、第1実施形態と同様である。
【0054】
このように、数値制御装置3は、読み込んだ加工プログラムPに基づいて、工作機械Aが有する工具Tの先端点の経路を示す先端点列Ptcp(t)を生成する加工プログラム読込部10と、加工プログラム読込部10で生成された先端点列Ptcp(t)を座標変換して、工具Tの位置を定める制御点の経路を示す制御点列Pmcn(t)を得るキネマティック変換部12と、キネマティック変換部12で得られた制御点列Pmcn(t)に対して所定のパラメータuでスムージング処理を行い、平滑化するスムージング適用部13と、スムージング適用部13で平滑化された制御点列Qmcn(t)を補間する補間制御部11と、補間制御部11で補間された制御点列Qmcn(t)に基づいて、工作機械Aの駆動を制御する駆動制御部14と、を備えている。
【0055】
また、数値制御装置3において、スムージング適用部13は、当該当該スムージング適用部13で平滑化された制御点列Qmcn(t)を座標変換して、平滑化された先端点列Qtcp(t)を得る逆キネマティック変換部130と、キネマティック変換部12で座標変換される前の先端点列Ptcp(t)と、逆キネマティック変換部130で得られた、平滑化された先端点列Qtcp(t)と、の差に基づいて、トレランスのチェックを行うトレランスチェック部131と、を有し、数値計算により所定のパラメータuを決定することが好ましい。
【0056】
本実施形態に係る数値制御装置3によれば、制御点にスムージングがかかることにより、軸の動作が滑らかとなる。これにより、制御点が急激に動作することが抑制されるため、サイクルタイム及び加工面品位を向上することができる。
【0057】
[第4実施形態]
次に、
図8を用いて、数値制御装置4の構成について説明する。
図8は、数値制御装置4の機能構成を示すブロック図である。本実施形態は、数値計算により所定のパラメータuを決定するスムージング適用部13に代えて、解析的に所定のパラメータuを決定するスムージング適用部23を備えている点で第3実施形態と相違する。
【0058】
図8に示すように、数値制御装置4が備えているCPU(図示省略)は、各種プログラムを実行することによって、スムージング適用部23等の各種機能を実現する。
【0059】
次に、
図9を用いて、数値制御装置4で実行される処理について説明する。
図9は、数値制御装置4で実行される処理を説明するフローチャートである。
【0060】
図9に示すように、数値制御装置4で実行される処理は、加工プログラム読込工程S10と、キネマティック変換工程S12と、スムージング強度算出工程S23と、スムージング適用工程S14と、補間制御工程S11と、駆動制御工程S18と、を備えている。各工程の処理内容については上述した通りである。
【0061】
このように、数値制御装置4は、読み込んだ加工プログラムPに基づいて、工作機械Aが有する工具Tの先端点の経路を示す先端点列Ptcp(t)を生成する加工プログラム読込部10と、加工プログラム読込部10で生成された先端点列Ptcp(t)を座標変換して、工具Tの位置を定める制御点の経路を示す制御点列Pmcn(t)を得るキネマティック変換部12と、キネマティック変換部12で得られた制御点列Pmcn(t)に対して所定のパラメータuでスムージング処理を行い、平滑化するスムージング適用部23と、スムージング適用部23で平滑化された制御点列Qmcn(t)を補間する補間制御部11と、補間制御部11で補間された制御点列Qmcn(t)に基づいて、工作機械Aの駆動を制御する駆動制御部14と、を備えている。
【0062】
また、数値制御装置4において、スムージング適用部23は、解析的に所定のパラメータuを決定することが好ましい。
【0063】
本実施形態に係る数値制御装置4によれば、制御点にスムージングがかかることにより、軸の動作が滑らかとなる。これにより、制御点が急激に動作することが抑制されるため、サイクルタイム及び加工面品位を向上することができる。
【0064】
なお、本開示は、上記各実施形態に限定されるものではなく、種々の変更及び変形が可能である。
【0065】
例えば、上記各実施形態とは異なる方法でdMaxを求めるようにしてもよい。例えば、Ptcp(t1)とQtcp(t2)との差d(t1,t2)は、d(t1,t2)=|Qtcp(t2)-Ptcp(t1)|と表すことができる。任意のt1において、d(t1,t2)が最小となるt2を求め、そのときのdの値をd_min(t1)とする。即ち、Ptcp(t1)とQtcp(t1)との差dが最小とはならない場合があるからである。そして、d_min(t1)が最大となるt1を求め、そのときのd_minの値をdMaxとする。
【0066】
また、上記第1及び第3実施形態では、先端点列Ptcp(t)と先端点列Qtcp(t)との差d(t)=|Qtcp(t)-Ptcp(t)|に基づいてトレランスTtc
pのチェックを行い、dMax≦Ttcpを満たすuの最大値(最大のスムージング強度の値)を算出したが、これに代えて、先端点列Ptcp(t)と先端点列Qtcp(t)との差dtcp(t)=|Qtcp(t)-Ptcp(t)|に基づいてトレランスTt
cpのチェックを行うと共に、制御点列Pmcn(t)と制御点列Qmcn(t)との差dmcn(t)=|Qmcn(t)-Pmcn(t)|に基づいてトレランスTmcnのチェックを行い、dtcp_Max≦Ttcp及びdmcn_Max≦Tmcnを同時に満たすようなuの最大値(最大のスムージング強度の値)を算出するようにしてもよい。
【0067】
この場合、トレランスチェック部131は、キネマティック変換部12で座標変換される前の先端点列Ptcp(t)と、逆キネマティック変換部130で得られた、平滑化された先端点列Qtcp(t)と、の差dtcp(t)に基づくだけでなく、スムージング適用部13で平滑化される前の制御点列Pmcn(t)と、スムージング適用部13で平滑化された制御点列Qmcn(t)と、の差dmcn(t)にも基づいて、トレランスチェックを行う。
【0068】
また、上記第2及び第4実施形態では、先端点列Ptcp(t)と先端点列Qtcp(t)との差d(t)の最大値であるdMaxから、dMax=Ttcpを満たすuを算出したが、これに代えて、先端点列Ptcp(t)と先端点列Qtcp(t)との差dtc
p(t)の最大値であるdtcp_Max、及び制御点列Pmcn(t)と制御点列Qm
cn(t)との差dmcn(t)の最大値であるdmcn_Maxから、dtcp_Ma
x=Ttcp及びdmcn_Max=Tmcnを同時に満たすようなuを算出するようにしてもよい。
【符号の説明】
【0069】
1,2,3,4 数値制御装置
10 加工プログラム読込部
11 補間制御部
12 キネマティック変換部
13,23 スムージング適用部
130 逆キネマティック変換部
131 トレランスチェック部
14 駆動制御部
A 工作機械
A1 サーボ
A2 主軸
T 工具
P 加工プログラム
Ptcp(t) 先端点列
Pmcn(t) 制御点列
S10 加工プログラム読込工程
S11 補間制御工程
S12 キネマティック変換工程
S13 スムージング強度設定工程
S14 スムージング適用工程
S15 逆キネマティック変換工程
S16 トレランスチェック工程
S18 駆動制御工程
S23 スムージング強度算出工程