(57)【要約】【課題】機械振動の周波数が変動しても効果的に制振できる数値制御装置と制御方法を提供する。【解決手段】数値制御装置は、工作機械を駆動するサーボモータの速度指令に対し、凸型加減速フィルタで処理することにより、サーボモータの加減速制御を行う。凸型加減速フィルタは、時間軸に対して加速度または速度の大きさを、時間軸における中央部において加速度または速度が凸状に大きくなる二段の凸型フィルタである。凸型加減速フィルタは、工作機械の固有振動数の周辺にある一定の幅を持つ範囲の制振を行うことができる。数値制御装置はフィルタ設定処理を実行し、作業者から凸型加減速フィルタを最適化する為のパラメータの入力を受け付ける。故に数値制御装置は工作機械の製造過程のバラツキや積載質量の変化応じて最適な凸型加減速フィルタを設計できる。【選択図】図３
2019082771.tif 000002
【特許請求の範囲】
【請求項１】
機械を駆動するサーボモータの速度指令又は位置指令に対し、時間軸に対する加速度又は速度の変化を所与の加減速パターンに基づき算出して適用することにより、前記サーボモータの加減速制御を行う加減速制御部を備えた数値制御装置において、
前記加減速パターンは、前記時間軸における中央部において前記加速度又は速度が凸状に大きくなる二段の凸型加減速パターンであって、
前記加減速制御部は、
前記機械を制振する周波数の範囲を示す範囲情報の入力を受け付ける受付部と、
前記受付部が受け付けた前記範囲情報に基づき、前記凸型加減速パターンにおける一段目の前記加速度または速度の大きさと、当該一段目よりも大きい二段目の前記加速度または速度の大きさとの比率を算出する算出部と、
前記算出部が算出した前記比率に基づき、前記凸型加減速パターンの前記一段目と前記二段目の夫々の大きさを設定する設定部と
を備えたこと
を特徴とする数値制御装置。
【請求項２】
前記凸型加減速パターンの前記中央部の周期を、前記機械を制振する周波数の範囲の中央値の逆数であるＴｎとした場合、
前記凸型加減速パターンの前記中央部よりも前側である前側部と、後ろ側である後側部との夫々の周期はＴｎ／２であること
を特徴とする請求項１に記載の数値制御装置。
【請求項３】
前記凸型加減速パターンの前記一段目の前記加速度または速度の大きさをａ、前記二段目の前記加速度又は速度の大きさをｂとした場合、
ａ≠ｂであること
を特徴とする請求項１又は２に記載の数値制御装置。
【請求項４】
前記加減速制御部は、前記凸型加減速パターンに対応するフィルタを有し、当該フィルタで、前記速度指令又は前記位置指令を処理することにより、前記サーボモータの前記加減速制御を行うこと
を特徴とする請求項１から３の何れかに記載の数値制御装置。
【請求項５】
前記フィルタを、前記一段目の前記加速度または速度の大きさａを有する矩形状の第一フィルタと、前記二段目の前記加速度または速度の大きさｂを有する矩形状の第二フィルタとを足し合わせて表現される凸型フィルタと仮定し、
前記凸型加減速パターンの前記中央部の周期を、前記制振する周波数の範囲の中央値の逆数であるＴｎ、ａとｂの比率をＫ、前記凸型フィルタの面積をラプラス変換してＴｎとＫによって成り立つ式をＦ（ｓ）としたとき、
2019082771.tif 000017
であって、
前記フィルタで、前記速度指令又は前記位置指令を処理したときに前記制振する周波数の範囲で振動が０になる周波数と、当該範囲の中心周波数との比率をαとしたとき、
Ｋ＝−ＣＯＳ（απ）
であること
を特徴とする請求項４に記載の数値制御装置。
【請求項６】
機械を駆動するサーボモータの速度指令又は位置指令に対し、時間軸に対して加速度または速度の大きさを所与の加減速パターンに基づき処理することにより、前記サーボモータの加減速制御を行う加減速制御ステップを備えた数値制御装置の制御方法において、
前記加減速パターンは、前記時間軸における中央部において前記加速度又は速度が凸状に大きくなる二段の凸型加減速パターンであって、
前記加減速制御ステップは、
前記機械の固有振動数を中心として前記機械を制振する周波数の範囲を示す範囲情報の入力を受け付ける受付ステップと、
前記受付ステップにおいて受け付けた前記範囲情報に基づき、前記凸型加減速パターンにおける一段目の前記加速度または速度の大きさと、当該一段目よりも大きい二段目の前記加速度または速度の大きさとの比率を算出する算出ステップと、
前記算出ステップにおいて算出した前記比率に基づき、前記凸型加減速パターンの前記一段目と前記二段目の夫々の大きさを設定する設定ステップと
を備えたこと
を特徴とする制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、数値制御装置と制御方法に関する。
【背景技術】
【０００２】
特許文献１は、加減速の時間を機械振動の逆数とすることで振動を抑制する工作機械の制御方法を提案する。該方法は、一つの周波数とその整数倍の周波数の振動しか抑制できないという問題点があった。これに対し、機械振動の逆数の時定数を持つ移動平均フィルタを用いて制振を行う方法がある。該方法は、異なる時定数を持つ複数の移動平均フィルタを重ねて適用することで、複数の周波数の機械振動に対して制振を行える。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開昭５４−９８４７７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
機械の製造過程のバラツキ、機械の積載重量の変化等により、機械振動の周波数は変動する。上記方法は、特定の周波数に対して制振を行うので、機械振動の周波数が変動してしまうと、効果的に制振を行うことができず、加工品質が低下する可能性があった。
【０００５】
本発明の目的は、機械振動の周波数が変動しても効果的に制振できる数値制御装置と制御方法を提供することである。
【課題を解決するための手段】
【０００６】
請求項１の数値制御装置は、機械を駆動するサーボモータの速度指令又は位置指令に対し、時間軸に対する加速度又は速度の変化を所与の加減速パターンに基づき算出して適用することにより、前記サーボモータの加減速制御を行う加減速制御部を備えた数値制御装置において、前記加減速パターンは、前記時間軸における中央部において前記加速度又は速度が凸状に大きくなる二段の凸型加減速パターンであって、前記加減速制御部は、前記機械を制振する周波数の範囲を示す範囲情報の入力を受け付ける受付部と、前記受付部が受け付けた前記範囲情報に基づき、前記凸型加減速パターンにおける一段目の前記加速度または速度の大きさと、当該一段目よりも大きい二段目の前記加速度または速度の大きさとの比率を算出する算出部と、前記算出部が算出した前記比率に基づき、前記凸型加減速パターンの前記一段目と前記二段目の夫々の大きさを設定する設定部とを備えたことを特徴とする。数値制御装置の加減速制御部は、速度指令又は位置指令に対して、従来の移動平均の代わりに凸型の加速度又は速度を持った凸型加減速パターンに基づき、サーボモータの加減速制御を行う。故に数値制御装置は、ある一定の幅を持った範囲の制振を行える。数値制御装置は、機械の制振を行う範囲を作業者が入力する範囲情報で簡単に最適化できるので、想定される機械の製造過程のバラツキや積算質量の変化等に応じて最適な凸型加減速パターンを設計できる。なお、凸型加減速パターンを重ねて適用することで、複数の周波数範囲に対して制振効果を持たせてもよい。
【０００７】
請求項２の数値制御装置にて、前記凸型加減速パターンの前記中央部の周期を、前記制振する周波数の範囲の中央値の逆数であるＴｎとした場合、前記凸型加減速パターンの前記中央部よりも前側である前側部と、後ろ側である後側部との夫々の周期はＴｎ／２とすることで、前記制振する周波数の中央値の周辺に制振効果のある範囲を持たせることが出来る。故に数値制御装置は、一定の幅を持った範囲の制振を行うことができる凸型加減速パターンを設計できる。
【０００８】
請求項３の数値制御装置にて、前記凸型加減速パターンの前記一段目の前記加速度又は速度の大きさをａ、前記二段目の前記加速度又は速度の大きさをｂとした場合、ａ≠ｂであるとよい。数値制御装置は、一段目の加速度又は速度の大きさａと、二段目の加速度又は速度の大きさｂとを互いに異ならせた上で、比率を調整することによって、制振効果のある範囲を変えることができる。故に数値制御装置は、想定される機械の製造過程のバラツキや積算質量の変化に応じて最適な凸型加減速パターンを設計できる。
【０００９】
請求項４の数値制御装置の前記加減速制御部は、前記凸型加減速パターンに対応するフィルタを有し、当該フィルタで、前記速度指令又は前記位置指令を処理することにより、前記サーボモータの前記加減速制御を行うとよい。加減速制御部は、速度指令又は位置指令に対し、前記フィルタで処理することで、前記凸型加減速パターンを実現できるので、加減速制御を簡単且つ速やかに行うことができる。
【００１０】
請求項５の数値制御装置において、前記フィルタを、前記一段目の前記加速度または速度の大きさａを有する矩形状の第一フィルタと、前記二段目の前記加速度または速度の大きさｂを有する矩形状の第二フィルタとを足し合わせて表現される凸型フィルタと仮定し、前記凸型加減速パターンの前記中央部の周期を、前記制振する周波数の範囲の中央値の逆数であるＴｎ、ａとｂの比率をＫ、前記凸型フィルタの面積をラプラス変換してＴｎとＫによって成り立つ式をＦ（ｓ）としたとき、
2019082771.tif 000003
であって、前記フィルタで、前記速度指令又は前記位置指令を処理したときに前記制振する周波数の範囲で振動が０になる周波数と、当該範囲の中心周波数との比率をαとしたとき、Ｋ＝−ＣＯＳ（απ）であるとよい。それ故、数値制御装置は、機械の振動特性に応じてＴｎを決定し、制振する範囲に応じてαを決定することによって、適切なフィルタを設計できる。
【００１１】
請求項６の制御方法は、機械を駆動するサーボモータの速度指令又は位置指令に対し、時間軸に対して加速度または速度の大きさを所与の加減速パターンに基づき処理することにより、前記サーボモータの加減速制御を行う加減速制御ステップを備えた数値制御装置の制御方法において、前記加減速パターンは、前記時間軸における中央部において前記加速度又は速度が凸状に大きくなる二段の凸型加減速パターンであって、前記加減速制御ステップは、前記機械の固有振動数を中心として前記機械を制振する周波数の範囲を示す範囲情報の入力を受け付ける受付ステップと、前記受付ステップにおいて受け付けた前記範囲情報に基づき、前記凸型加減速パターンにおける一段目の前記加速度または速度の大きさと、当該一段目よりも大きい二段目の前記加速度または速度の大きさとの比率を算出する算出ステップと、前記算出ステップにおいて算出した前記比率に基づき、前記凸型加減速パターンの前記一段目と前記二段目の夫々の大きさを設定する設定ステップとを備えたことを特徴とする。数値制御装置は上記制御ステップを行うので、請求項１に記載の効果を得ることができる。
【００１２】
上述の請求項１−５の発明は、任意に組み合わせることができる。例えば請求項１の全部又は一部を備えずに他の請求項２−５の少なくとも何れか１つの構成を備えたものとしても良い。但し特に、請求項１の構成を備えて、請求項２−５の少なくとも何れか１つの構成と組み合わせを備えると良い。請求項１−５の任意の構成要素を抽出し、組み合わせても良い。本出願人はこれらのような構成についても特許権を取得する意思を有する。
【図面の簡単な説明】
【００１３】
【図１】数値制御装置２０と工作機械１０の電気的構成を示すブロック図。
【図２】主処理の流れ図。
【図３】凸型加減速フィルタを示す図。
【図４】フィルタＡ１とＡ２を足し合わせて凸型加減速フィルタを表現したイメージ図。
【図５】凸型加減速フィルタ（Ｋ＝０．９５）を示す図。
【図６】図５に示す凸型加減速フィルタの周波数応答を示すボード線図。
【図７】凸型加減速フィルタ（Ｋ＝０．３）を示す図。
【図８】図７に示す凸型加減速フィルタの周波数応答を示すボード線図。
【図９】Ｋ＝０．８０９の凸型加減速フィルタの周波数応答を示すボード線図。
【図１０】Ｋ＝０．３０９の凸型加減速フィルタの周波数応答を示すボード線図。
【図１１】凸型加減速フィルタで処理した速度パターンを示す図表。
【図１２】凸型加減速フィルタで処理した加速度パターンを示す図表。
【図１３】フィルタ設定処理の流れ図。
【図１４】シミュレーションに用いた移動経路の図。
【図１５】従来型フィルタと凸型加減速フィルタの周波数応答を比較したボード線図。
【図１６】テーブルの固有振動（４０Ｈｚ）を解析した図表。
【図１７】テーブルの固有振動（４２．５Ｈｚ）を解析した図表。
【図１８】テーブルの固有振動（４５Ｈｚ）を解析した図表。
【図１９】テーブルの固有振動（４７．５Ｈｚ）を解析した図表。
【図２０】テーブルの固有振動（５０Ｈｚ）を解析した図表。
【図２１】Ｋに正の値を設定した凸型加減速フィルタの周波数応答を示すボード線図。
【図２２】Ｋに正の値を設定した凸型加減速フィルタで処理した加速度パターンを示す図表。
【図２３】Ｋに負の値を設定した凸型加減速フィルタの周波数応答を示すボード線図。
【図２４】Ｋに負の値を設定した凸型加減速フィルタで処理した加速度パターンを示す図表。
【発明を実施するための形態】
【００１４】
本発明の実施形態を説明する。図１に示す数値制御装置２０は、工作機械１０の動作を制御することで、テーブル（図示略）上面に保持した被削材（図示略）の切削加工を行う。工作機械１０の左右方向、前後方向、上下方向は、夫々Ｘ軸方向、Ｙ軸方向、Ｚ軸方向である。
【００１５】
図１を参照し、工作機械１０の構成を説明する。工作機械１０は、例えばテーブル上面に保持した被削材に対し、Ｚ軸方向に延びる主軸に装着した工具をＸ軸方向、Ｙ軸方向、Ｚ軸方向に移動して加工（例えばドリル加工、タップ加工、側面加工等）を行う立型工作機械である。工作機械１０は図示しない主軸機構、主軸移動機構、工具交換装置等を備える。主軸機構は主軸モータ１２を備え、工具を装着した主軸を回転する。主軸移動機構は、Ｚ軸モータ１１、Ｘ軸モータ１３、Ｙ軸モータ１４を更に備え、テーブル（図示略）上面に支持した被削材に対し相対的に主軸をＸＹＺの各送り軸の方向に夫々移動する。工具交換装置はマガジンモータ１５を備え、複数の工具を収納する工具マガジン（図示略）を駆動し、主軸に装着した工具を他の工具と交換する。Ｚ軸モータ１１、主軸モータ１２、Ｘ軸モータ１３、Ｙ軸モータ１４、マガジンモータ１５は、サーボモータである。本実施形態は、Ｚ軸モータ１１、主軸モータ１２、Ｘ軸モータ１３、Ｙ軸モータ１４、マガジンモータ１５を総称する場合、モータ１１〜１５と呼ぶ。
【００１６】
工作機械１０は操作盤１６を更に備える。操作盤１６は入力部１７と表示部１８を備える。入力部１７は各種入力、指示、設定等を行う為の機器である。表示部１８は各種画面を表示する機器である。操作盤１６は数値制御装置２０の入出力部２５に接続する。Ｚ軸モータ１１はエンコーダ１１Ａを備える。主軸モータ１２はエンコーダ１２Ａを備える。Ｘ軸モータ１３はエンコーダ１３Ａを備える。Ｙ軸モータ１４はエンコーダ１４Ａを備える。マガジンモータ１５はエンコーダ１５Ａを備える。エンコーダ１１Ａ〜１５Ａは数値制御装置２０の後述する駆動回路２６〜３０に各々接続する。
【００１７】
数値制御装置２０の電気的構成を説明する。数値制御装置２０は、ＣＰＵ２１、ＲＯＭ２２、ＲＡＭ２３、記憶装置２４、入出力部２５、駆動回路２６〜３０等を備える。ＣＰＵ２１は数値制御装置２０を統括制御する。ＲＯＭ２２は、主プログラム、フィルタ設定プログラム等の各種プログラムを記憶する。主プログラムは、後述する主処理（図２参照）を実行する為のプログラムである。フィルタ設定プログラムは、後述するフィルタ設定処理（図１３参照）を実行する為のプログラムである。ＲＡＭ２３は各種処理実行中の各種データを記憶する。記憶装置２４は不揮発性メモリであり、例えば加工する為のＮＣプログラムの他、各種データを記憶する。入出力部２５は操作盤１６に接続する。駆動回路２６〜３０はサーボアンプである。駆動回路２６はＺ軸モータ１１とエンコーダ１１Ａに接続する。駆動回路２７は主軸モータ１２とエンコーダ１２Ａに接続する。駆動回路２８はＸ軸モータ１３とエンコーダ１３Ａに接続する。駆動回路２９はＹ軸モータ１４とエンコーダ１４Ａに接続する。駆動回路３０はマガジンモータ１５とエンコーダ１５Ａに接続する。
【００１８】
ＣＰＵ２１は、被削材を加工する為のＮＣプログラムを解釈し、送り軸（Ｘ軸、Ｙ軸、Ｚ軸）、主軸、マガジン軸等の各駆動軸を目標位置に移動する為の制御指令を駆動回路２６〜３０に送信する。駆動回路２６〜３０は、ＣＰＵ２１から受信した制御指令（駆動信号）に応じて対応する各モータ１１〜１５に駆動電流（パルス）を夫々出力する。駆動回路２６〜３０はエンコーダ１１Ａ〜１５Ａからフィードバック信号（位置と速度の信号）を受け、モータ１１〜１５の位置と速度の制御を行う。駆動回路２６〜３０はサーボモータを駆動するサーボアンプであり、例えばＦＰＧＡ回路で構成してもよい。
【００１９】
図２を参照し、主処理を説明する。作業者は操作盤１６の入力部１７を用いて、記憶装置２４に記憶する複数のＮＣプログラムの中から一のＮＣプログラムを選択し、選択したＮＣプログラムに基づく被削材の加工開始を指示する。ＣＰＵ２１は入力部１７から加工開始指示を受け付けると、ＲＯＭ２２に記憶する主プログラムを読み込み、本処理を実行する。
【００２０】
ＣＰＵ２１は入力部１７で選択したＮＣプログラムを読み込み、一行解釈する（Ｓ１）。ＣＰＵ２１は解釈した一行中の制御指令が終了指令（Ｍ３０）か否か判断する（Ｓ２）。解釈した制御指令が終了指令で無ければ（Ｓ２：ＮＯ）、ＣＰＵ２１は制御指令の解釈に基づき、内部指令を生成する（Ｓ３）。ＣＰＵ２１は、生成した内部指令が速度指令か否か判断する（Ｓ４）。生成した内部指令が速度指令でない場合（Ｓ４：ＮＯ）、ＣＰＵ２１は生成した内部指令に基づき、動作を実行する（Ｓ７）。ＣＰＵ２１はＳ１に戻り、ＮＣプログラムの次行を解釈する。内部指令が送り軸の速度指令である場合（Ｓ４：ＹＥＳ）、送り軸の移動中に発生する振動を抑制する為、ＣＰＵ２１は速度指令に対して加減速処理を行う（Ｓ５）。
【００２１】
加減速処理では、ＣＰＵ２１は後述する凸型加減速フィルタ（図３参照）を用いて、生成した速度指令を処理する。その結果、ＣＰＵ２１は、特定の周波数範囲の振動成分を速度指令から取り除くことができる。故に数値制御装置２０は特定の周波数範囲で制振できるので、仮にテーブル上の積載質量が変化するなどして機械固有の振動周波数が変動しても効果的に制振できる。凸型加減速フィルタのデータは、例えば記憶装置２４に記憶する。凸型加減速フィルタの詳細は後述する。ＣＰＵ２１は、凸型加減速フィルタで処理した速度指令に基づき、対応するサーボモータの駆動回路に駆動電流（パルス）を出力して送り軸を駆動する（Ｓ６）。ＣＰＵ２１はＳ１に戻り、次の一行を解釈する。解釈した指令が終了指令の場合（Ｓ２：ＹＥＳ）、ＣＰＵ２１は主処理を終了する。
【００２２】
図３を参照し、凸型加減速フィルタの特徴を説明する。凸型加減速フィルタは、例えばＦＩＲ（Ｆｉｎｉｔｅ  Ｉｍｐｕｌｓｅ  Ｒｅｓｐｏｎｓｅ：有限インパルス応答）フィルタである。凸型加減速フィルタは速度指令又は位置指令に適用できる。凸型加減速フィルタを速度指令に適用した時は加速度の時間変化が凸型になる。凸型加減速フィルタを位置指令に適用した時は速度の時間変化が凸型になる。つまり、凸型加減速フィルタは、速度指令又は位置指令に適用することで、時間軸における中央部において加速度又は速度が凸状に大きくなる二段の加減速パターンとなるように設計されたデジタルフィルタである。なお、加減速パターンとは、加速度又は速度の時間変化を意味する。本実施形態は凸型加減速フィルタを速度指令に適用する場合について説明する。
【００２３】
凸型加減速フィルタは、速度指令から加速度の時間変化を算出する。図３の図表の横軸は時間（秒）、縦軸はゲインを示している。凸型加減速フィルタは、時間軸における中央部においてゲインが凸状に大きくなる二段の凸型のフィルタである。凸型加減速フィルタは、前側部３１、中央部３２、後側部３３の三つの領域を有する。中央部３２は、時間軸における中央部であって加速度又は速度が凸状に大きい領域である。前側部３１は、中央部３２よりも前側の領域である。後側部３３は、中央部３２よりも後ろ側の領域である。
【００２４】
制振を行う周波数範囲の中央値の周期をＴｎとしたとき、中央部３２の周期はＴｎである。前側部３１と後側部３３の夫々の周期はＴｎ／２である。前側部３１と後側部３３の夫々の高さはａ、中央部の高さはｂとする。前側部３１と後側部３３の夫々の高さは同一である。ｂはａよりも大きい。凸型加減速フィルタが振動成分を取り除く周波数範囲の中心周波数は、１／Ｔｎである。本実施形態の凸型加減速フィルタは、ａとｂの比率を調整することにより、制振効果のある範囲を簡単かつ適切に調節できる。本実施形態は、数値制御装置２０へのパラメータ入力で凸型加減速フィルタを簡単に設計できるようにする為、凸型加減速フィルタの数式化について検討を行った。
【００２５】
図４を参照し、凸型加減速フィルタを表現する数式の導出方法を説明する。図４に示すように、本実施形態は、凸型加減速フィルタを、二つの矩形状のフィルタＡ１とＡ２の足し合わせで表現することを考える。フィルタＡ１とＡ２は、何れも時間軸に対してインパルス応答を設定した矩形状フィルタである。フィルタＡ１は横長矩形状である。フィルタＡ２は、フィルタＡ１よりも横幅の狭い矩形状である。フィルタＡ１の周期の長さを２Ｔｎとしたとき、フィルタＡ２の周期の長さはＴｎである。フィルタＡ２は、フィルタＡ１よりＴｎ／２時間遅れている。上記のフィルタＡ１とＡ２を足し合わせることで、凸型のフィルタを表現する。
【００２６】
本実施形態は、上記のフィルタＡ１とＡ２を踏まえ、凸型加減速フィルタのラプラス変換を行い、以下の数１のように定義する。
【数１】
2019082771.tif 000004
Ｆ（ｓ）は、凸型加減速フィルタの全体の面積を示している。Ｆ（ｓ）の中括弧内の前段部分はフィルタＡ１の面積を示し、後段部分はフィルタＡ２の面積を示している。フィルタＡ１の面積は２Ｔｎであるが、それを２Ｔｎで割ることによって１にしている。これに対し、フィルタＡ２の面積をＫとする。Ｋは、フィルタＡ１の面積に対するＡ２の面積の比率を示している。Ｆ（ｓ）は、ＴｎとＫの変数によって成り立つ式である。中括弧内の後段部分中の「−Ｔｎ／２」は、フィルタＡ２がＡ１に対して、Ｔｎ／２の遅れがあることを示している。中括弧内の面積は、１＋Ｋとなり、それを（１＋Ｋ）で割ることによって、凸型加減速フィルタの面積は最終的に１にしている。故に凸型加減速フィルタの入力量と出力量は変わらないので、本実施形態は、凸型加減速フィルタの処理の前後で、送り軸の移動量が同一となるように制御できる。Ｋ＝１のとき、フィルタＡ１とＡ２の夫々の面積は等しい。
【００２７】
次いで、数１を整理すると、凸型加減速フィルタは、以下の数２となる。
【数２】
2019082771.tif 000005
Ｋは、凸型加減速フィルタの一段目（前側部３１及び後側部３３）の高さａと、二段目（中央部３２）の高さｂの比率を調整するパラメータである。このとき、ａは、以下の数３で算出できる。
【数３】
2019082771.tif 000006
【００２８】
ｂは、（ａ＋ｂ）Ｔｎ＝１であることから、数３に代入して変形した以下の数４で算出できる。
【数４】
2019082771.tif 000007
故に凸型加減速フィルタを設計する為のａとｂは、上記数３と数４に、ＫとＴｎを代入することによって夫々算出できるものとなった。
【００２９】
図５〜図８を参照し、凸型加減速フィルタの周波数応答を説明する。凸型加減速フィルタの周波数応答は、制振する周波数の範囲を決定する際に重要である。図５は、Ｋ＝０．９５、Ｔｎ＝２の凸型加減速フィルタであり、図６は、Ｋ＝０．９５、Ｔｎ＝２の凸型加減速フィルタの加速度の周波数応答を示している。周波数応答とは、凸型加減速フィルタで処理した信号が有する周波数ごとの力をＭａｇｎｉｔｕｄｅ（又はゲイン）で示したものである。図６のボード線図の横軸は周波数（Ｈｚ）、縦軸は周波数応答の大きさの絶対値を示している。図５に示すように、Ｋ＝０．９５の凸型加減速フィルタは、後述するＫ＝０．３の凸型加減速フィルタ（図７参照）に比べ、ａとｂの差が大きい。故に中央部３２は、前側部３１及び後側部３３に対して上方に大きく突出している。
【００３０】
図６に示すように、Ｋ＝０．９５の凸型加減速フィルタの周波数応答は、０．５（Ｈｚ）を中心とする０．４〜０．６（Ｈｚ）の範囲で小さくなっている。周波数応答が小さい範囲は、制振効果のある範囲（以下「制振範囲」と呼ぶ）である。制振範囲で周波数応答が０になるのは、制振範囲の中心である０．５（Ｈｚ）と、その前後の周波数である０．４（Ｈｚ）と０．６（Ｈｚ）である。０．４〜０．５の間と、０．５〜０．６の間で、周波数応答は山型に若干膨らんでいる。Ｋ＝０．９５の凸型加減速フィルタの周波数応答では、後述するＫ＝０．３の周波数応答（図８参照）に比べて制振範囲は狭いが、その制振範囲内における周波数応答の山が小さい。このことから、制振範囲におけるＫ＝０．９５の凸型加減速フィルタの制振効果は、Ｋ＝０．３の凸型加減速フィルタに比べて高いことが分かる。
【００３１】
図７は、Ｋ＝０．３の凸型加減速フィルタであり、図８は、Ｋ＝０．３、Ｔｎ＝２の凸型加減速フィルタの加速度の周波数応答を示している。図７に示すように、Ｋ＝０．３の凸型加減速フィルタは、上述したＫ＝０．９５の凸型加減速フィルタに比べ、ａとｂの差が小さい。図８に示すように、Ｋ＝０．３の凸型加減速フィルタの周波数応答は、０．５（Ｈｚ）を中心とする０．３２〜０．６８（Ｈｚ）の範囲で小さくなっている。制振範囲で周波数応答が０になるのは、制振範囲の中心である０．５（Ｈｚ）と、その前後の周波数である０．３２（Ｈｚ）と０．６８（Ｈｚ）である。０．３２〜０．５の間と、０．５〜０．６８の間で、周波数応答は図６に示す周波数応答に比べ、山型に大きく上方に膨らんでいる。Ｋ＝０．３の凸型加減速フィルタの周波数応答では、上述したＫ＝０．９５の周波数応答（図６参照）に比べて制振範囲は広いが、その制振範囲内における周波数応答の山が大きい。これは、速度指令に含まれる制振範囲内の周波数成分が十分に除去できないことを意味し、加減速により機械に振動が発生して加工に影響を及ぼす可能性がある。但し、機械の振動しやすい周波数範囲が、Ｋ＝０．９５のカバーする０．４〜０．６（Ｈｚ）の範囲よりも広い場合は、総合的に考えるとＫ＝０．３の凸型加減速フィルタと比較して制振効果が高いと言える。
【００３２】
以上のことから、凸型加減速フィルタの周波数応答の制振範囲は、Ｋによって変化することが分かる。故に数値制御装置２０は、Ｋを調節することによって、凸型加減速フィルタによる制振範囲を簡単に調節できる。
【００３３】
図９〜図１１を参照し、パラメータＫの設計方法を説明する。上記の通り、Ｋは、凸型加減速フィルタのａとｂを規定する重要な因子である。Ｆ（ｓ）の周波数伝達関数を求める為に、上記の数２のｓをｊωとし、ｅ＾−ｊω＝ｃｏｓω−ｊｓｉｎωを代入して整理すると、上記の数２は、以下の数５のように変形できる。大括弧内の前段部は実部Ｒ（ω）、後段部は虚部Ｉ（ω）である。
【数５】
2019082771.tif 000008
【００３４】
次いで、例えば、図６と図８に示すようなボード線図にて、周波数応答のゲインをＡ（ω）とし、Ａ（ω）＝０となる以下の数６を考える。
【数６】
2019082771.tif 000009
上記の数５と数６から、Ａ（ω）は以下の数７に変形できる。
【数７】
2019082771.tif 000010
【００３５】
Ａ（ω）＝０となる為に、上記の数７のルート内の下線部が０になるＫを求める。即ち、Ｋをコントロールすることによって、周波数応答が０になる周波数ωを決定することができる。数７の下線部が０となるωは、図９、図１０におけるωｚｅｒｏである。以下の数８と数９に示すように、ωｚｅｒｏよりＫを算出する。
【数８】
2019082771.tif 000011
【数９】
2019082771.tif 000012
ωｚｅｒｏを、制振範囲の中心の角周波数ωｎ＝２π／Ｔｎと、それに対する比率αを用いて以下の数１０のように表すことが出来る。
［数１０］
ωｚｅｒｏ＝（２π／Ｔｎ）×α
上記の通り、ωｎは、制振範囲の中心周波数であり、数７より周波数応答が０となる周波数である。故に上記の数９に数１０を代入することにより、パラメータＫは、以下の数１１のように表すことができる。
［数１１］
Ｋ＝−ＣＯＳ（απ）
【００３６】
上記の数１１にαを代入することによって、パラメータＫを算出できる。上記の通り、αはωｚｅｒｏとωｎの比率であるので、作業者は、工作機械１０の振動特性と、想定される工作機械１０の製造過程のバラツキや積載質量の変化等に応じて、ωｚｅｒｏとωｎを決めればよい。なお、工作機械１０の振動特性は、例えば工作機械１０の動作解析等の実験から求めるとよい。
【００３７】
図９を参照し、パラメータＫの計算例１を説明する。図９に示す周波数特性は、Ｔｎ＝２（ｓｅｃ）、ωｎ＝０．５（Ｈｚ）の周波数応答を示す。この周波数応答の特性を有する凸型加減速フィルタは、０．５（Ｈｚ）を中心とする０．４〜０．６（Ｈｚ）の範囲内で周波数応答を抑制できる。ωｎ＝０．５、ωｚｅｒｏ＝０．４と０．６であるので、α＝０．８又は１．２となる。上記の数１１に代入すると、Ｋ＝０．８０９となる。
【００３８】
図１０を参照し、パラメータＫの計算例２を説明する。図１０に示す周波数特性は、Ｔｎ＝２（ｓｅｃ）、ωｎ＝０．５（Ｈｚ）の周波数応答を示す。この周波数応答の特性を有する凸型加減速フィルタは、０．５（Ｈｚ）を中心とする０．３〜０．７（Ｈｚ）の範囲内で周波数応答を抑制できる。ωｚｅｒｏ＝０．３と０．７であるので、α＝０．６又は１．４となる。上記の数１１に代入すると、Ｋ＝０．３０９となる。以上のことから、ωｚｅｒｏとωｎの比率であるαの大きさに応じて、Ｋは変化する。αが大きければ大きいほど、Ｋも大きくなり、αが小さければ小さいほど、Ｋも小さくなる。
【００３９】
図９，図１０に示すように、ωｎを中心とする制振範囲は、想定される工作機械１０の製造過程のバラツキや積算質量の変化等に応じて最適な範囲にするのがよい。例えば、図９に示すように、制振範囲を狭くすると、制振範囲内における振動抑制効果は高くなるが、図１０に示すように、制振範囲を広くすると、制振範囲内における振動抑制効果は低下する。作業者はこれらの性質を考慮し、αを決めるとよい。例えば、工作機械１０の固有振動数ωｎ＝０．５で、条件により、０．５を中心に０．４〜０．６の範囲で振動がバラつく可能性があることが実験的に分かっている場合、ωｚｅｒｏ＝０．４と０．６とすることによってα＝０．８と算出でき、これによりＫを求めることができる。ＫとＴｎが分かれば、凸型加減速フィルタのａとｂを決定できるので、制振範囲が０．４〜０．６となる凸型加減速フィルタを簡単に設計できる。
【００４０】
図９を参照し、凸型加減速フィルタによる振動抑制効果の確認方法を説明する。上記の通り、凸型加減速フィルタで処理したときの周波数応答において、制振範囲内における振動抑制効果は、作業者が決める制振範囲の広さに応じて変化する。故に工作機械１０の振動特性を踏まえ、制振範囲内における周波数応答の最大値が許容範囲となるように、αを決定する必要がある。例えば図９に示す周波数特性において、制振範囲内の周波数応答が最大値となる周波数ωを求める為に、以下の数１２を立てる。数１２は、周波数応答のゲイン関数であるＡ（ω）をωで微分して０になるωを求める為の数式である。
【数１２】
2019082771.tif 000013
このとき、数１２で導出される解は、以下の数１３における（Ａ）〜（Ｇ）の７つの解がある。
【数１３】
2019082771.tif 000014
これら（Ａ）〜（Ｇ）のうち本実施形態で求める解は（Ｅ）である。（Ｅ）は、制振範囲内で周波数応答が最大値となる周波数ωに相当する。（Ｅ）に基づき、ω（Ｈｚ）は、以下の数１４のように表すことができる。
【数１４】
2019082771.tif 000015
このときの周波数応答の振幅は、以下の数１５で算出できる。
【数１５】
2019082771.tif 000016
【００４１】
故に本実施形態は、パラメータＫとＴｎを数１５に代入することにより、制振範囲内における周波数応答の最大値Ａを求めることができる。このことを利用して、数値制御装置２０は、例えば、作業者が入力するパラメータＫとＴｎを受け付け、上記の数１４と数１５に夫々代入することにより、制振範囲内における周波数応答の最大値Ａと、そのときの周波数ωを算出し、それら算出結果を表示部１８に表示するとよい。作業者は、表示部１８に表示した周波数応答の最大値Ａと、そのときの周波数ω及び、例えば対象の機械をハンマリングするなどして得られた振動特性を参考に、適切な制振範囲を決めることができる。
【００４２】
例えば、図９に示すボード線図の周波数応答では、Ｔｎ＝２（ｓｅｃ）、Ｋ＝０．８０９である。数１４にこれらＴｎとＫを代入することにより、制振範囲の最大値となる周波数ω＝０．４４３５と算出できる。一方、数１５にＴｎとＫを代入することにより、制振範囲の最大値Ａ＝０．０２４７と算出できる。
【００４３】
図１１，図１２を参照し、速度指令を凸型加減速フィルタで処理したときの速度パターンと加速度パターンを説明する。図１１に示すように、送り軸の移動時における速度パターンは、ｔ０で移動を開始し、Ｔ１時間をかけて加速してｔ１で最高速度に達する。このような加速期間では、ｔ０で移動開始後のｐ１で傾きがやや急になり、ｔ１で最高速度に到達する前のｐ２で傾きがやや緩やかになっている。つまり、加速期間の中間部で加速度は大きくなり、その前後においては、加速度は小さくなっている。ｔ１で最高速度に到達後、Ｔ２時間をかけて最高速度で移動する。その後、ｔ２で減速を開始し、Ｔ３時間をかけて緩やかに減速してｔ３で停止する。なお、Ｔ３とＴ１は同じ時間である。このような減速期間でも、ｔ２で減速開始後のｐ３で傾きがやや急になり、ｔ３で停止前のｐ４で傾きがやや緩やかになっている。つまり、減速期間の中間部でも加速度は大きくなり、その前後においては、加速度は小さくなっている。
【００４４】
図１２に示すように、加速度は、図１１の速度パターンに対応している。ｔ０〜ｔ１までの加速期間では、ｐ１〜ｐ２の間は最高加速度であるが、その前後であるｔ０〜ｐ１の間、及びｐ２〜ｔ１の間においては、最高加速度よりも低い加速度になっている。ｔ２〜ｔ３までの減速期間でも、ｐ３〜ｐ４の間は最高加速度であるが、その前後であるｔ２〜ｐ３の間、及びｐ４〜ｔ３の間においては、最高加速度よりも低い加速度になっている。数値制御装置２０は、このような速度パターン及び加速度パターンで送り軸を制御することによって、送り軸に発生する振動を効果的に抑制できる。なお、最高加速度は加速度の絶対値が最も高い加速度を示す。なお、最大加速度Ａｍａｘは、入力信号の速度Ｆにｂを乗ずることで求められる。
【００４５】
図１３を参照し、ＣＰＵ２１が実行するフィルタ設定処理を説明する。上記のように、数値制御装置２０は、図２に示す主処理の加減速処理（Ｓ５）にて、上記機能を有する凸型加減速フィルタを用いて、送り軸の加減速制御を行う。工作機械１０の振動特性に対応する凸型加減速フィルタを設計するには、パラメータであるＴｎとαが必要である。作業者は、工作機械１０の固有振動数からＴｎを決定し、制振範囲を決めてαを算出する。作業者は、Ｔｎとαを入力する為に、操作盤１６の表示部１８に表示したメニュー画面からフィルタ設定を選択する。ＣＰＵ２１は、フィルタ設定の選択を受け付けると、ＲＯＭ２２からフィルタ設定プログラムを読出し、本処理を実行する。
【００４６】
ＣＰＵ２１は、表示部１８に入力画面を表示する（Ｓ１１）。入力画面は、パラメータであるＴｎとαの入力欄を備える。作業者は、入力部１７を用いて、各入力欄にＴｎとαを夫々入力する。入力するＴｎとαは、例えば工作機械１０の振動特性、及び想定される工作機械１０の製造過程のバラツキや積載質量の範囲等に基づいて決めるのがよい。ＣＰＵ２１は、Ｔｎとαの入力が完了したか否か判断する（Ｓ１２）。作業者は、例えば各入力欄にＴｎとαの夫々の数値を入力し、決定ボタンを押下する。決定ボタンの押下を受け付けるまでは（Ｓ１２：ＮＯ）、ＣＰＵ２１はＳ１２に戻って待機する。決定ボタンの押下を受け付けた場合、ＣＰＵ２１はＴｎとαの入力が完了したと判断し（Ｓ１２：ＹＥＳ）、入力したＴｎとαを確定してＲＡＭ２３に記憶する（Ｓ１３）。
【００４７】
ＣＰＵ２１は、ＲＡＭ２３に記憶するαを上記の数１０に代入することにより、Ｋを算出する（Ｓ１４）。ＣＰＵ２１はＴｎと算出したＫを上記の数３と数４に代入することにより、ａとｂを算出する（Ｓ１５）。ＣＰＵ２１は、ａ、ｂの算出結果を表示部１８に表示する（Ｓ１６）。作業者は、表示部１８に表示した算出結果を確認することにより、Ｋ、ａ、ｂが適切であるか否かの判断ができる。なお、ａ、ｂを算出した結果、それらの値が不適切であった場合、ＣＰＵ２１は表示部１８にエラー表示を行い、再度Ｓ１１に戻ってパラメータの入力を再度受け付けるとよい。
【００４８】
ＣＰＵ２１は、算出したａ、ｂと、ＲＡＭ２３に記憶するＴｎを、凸型加減速フィルタに設定する（Ｓ１７）。凸型加減速フィルタの構築は完了する。ＣＰＵ２１は構築した凸型加減速フィルタの情報（例えば、ａ、ｂ、Ｔｎ）を記憶装置２４に記憶し（Ｓ１８）、本処理を終了する。故にＣＰＵ２１は、図２に示す主処理の加減速処理（Ｓ５）を実行する際に、記憶装置２４に記憶する凸型加減速フィルタを用いて速度指令を処理できる。
【００４９】
次に、凸型加減速フィルタの制振効果を確認する為、凸型加減速フィルタを用いたテーブル移動のシミュレーションを行った。
【００５０】
実験条件を説明する。実験には、テーブル移動可能な縦型の工作機械１０を用いた。本実験では、工作機械１０は、テーブルの固有振動数がテーブル上の積載質量によって４０〜５０Ｈｚの範囲で変化することが分かっている場合を想定した。よって、凸型加減速フィルタの制振範囲を４０〜５０Ｈｚとし、比較例として従来のＦＩＲフィルタを用いてシミュレーションで比較した。各フィルタの詳細は以下の通りである。
・従来型フィルタ：通常のＦＩＲフィルタであり、２０ｍｓ（５０Ｈｚ）と２５ｍｓ（４０Ｈｚ）の二段のＦＩＲフィルタ（移動平均）を用いた。
・凸型加減速フィルタ：Ｔｎ＝２２．２ｍｓ（約４５Ｈｚ）とした。４０Ｈｚは、４５×０．８８８であることから、α＝０．８８８である。Ｋは、上記の数１１より、０．９３９である。
なお、従来型フィルタの時定数は、２５ｍｓ＋２０ｍｓ＝４５ｍｓである。これに対し、凸型加減速フィルタの時定数は、Ｔｎ＋２（Ｔｎ／２）＝２Ｔｎであり、Ｔｎ＝２２．２ｍｓであるから、２×２２．２ｍｓ＝４４．４ｍｓである。即ち、従来型フィルタの時定数と、凸型加減速フィルタの時定数はほぼ同じに設定されている。それ故、何れのフィルタで速度指令を処理した場合も、テーブルの移動時間はほぼ同じである。
【００５１】
実験では、テーブルを図１４に示す移動経路に沿って移動するときの速度指令を、上記二つのフィルタで夫々処理し、その処理後の速度指令でテーブルを移動したときの振動を解析して比較した。移動経路は、Ｘ軸方向に１０ｍｍの直線経路である。振動は、テーブルの残留振動とした。残留振動とは、Ｘ軸方向に移動した後、停止中の振動である。工作機械１０の機械モデルは、ζ＝０．０１の二次遅れ系とした。
【００５２】
図１５を参照し、上記二つのフィルタの周波数応答とその特性を説明する。図１５の図表の上段は、上記二つのフィルタの周波数応答を示すボード線図、下段は、周波数に対する位相の変化を示している。図１５のゲインの単位はｄＢ（デシベル）である。点線は、従来型フィルタ、実線は凸型加減速フィルタを示している。従来型フィルタでは、（Ａ）４０Ｈｚと（Ｅ）５０Ｈｚでゲインが小さくなっており、その間にゲインの一山が形成されている。これに対し、凸型加減速フィルタでは、（Ａ）４０Ｈｚ、（Ｃ）４５Ｈｚ、（Ｅ）５０Ｈｚでゲインが小さくなっており、（Ａ）と（Ｃ）の間、（Ｃ）と（Ｅ）の間において、夫々ゲインの一山が形成されている。凸型加減速フィルタでは、制振範囲である（Ａ）〜（Ｅ）の間において、常に従来型フィルタよりもゲインが小さくなっていることから制振効果が優れていると言える。一方で、周波数が５０Ｈｚを超えると、凸型加減速フィルタのゲインが従来型のフィルタと比較して大きいため、５０Ｈｚを超える周波数においては制振効果が劣ると言える。
【００５３】
以上の検討を踏まえ、本実験は、図１５に示す（Ａ）〜（Ｅ）の制振範囲内である５つの周波数で、テーブル移動時に生じる振動を比較することにした。５つの周波数とは、（Ａ）４０Ｈｚ、（Ｂ）４２．５Ｈｚ、（Ｃ）４５Ｈｚ、（Ｄ）４７．５Ｈｚ、（Ｅ）５０Ｈｚである。
【００５４】
図１６〜図２０を参照し、５つの周波数ごとのテーブルの振動結果を説明する。三つの図表のうち、上段は位置指令の波形図、中段はテーブルに生じた振動の波形図、下段は加速度指令の波形図である。点線は、従来型フィルタ、実線は、凸型加減速フィルタを示している。テーブルの位置の波形図は、テーブルに生じた振動を示している。
【００５５】
−周波数＝４０Ｈｚ−
図１６に示すように、中段の波形図を見ると、従来型フィルタ及び凸型加減速フィルタの何れにおいても、テーブルが１０（ｍｍ）に到達して停止した後、振動は生じていなかった。従って、４０Ｈｚにおいては、テーブルに振動は生じておらず、振動はほぼ０に抑制されていることが分かった。
【００５６】
−周波数＝４２．５Ｈｚ−
図１７に示すように、中段の波形図を見ると、従来型フィルタでは、テーブルが１０（ｍｍ）に到達して停止した後、大きく振動していることから、振動を抑制できていないことが分かった。これに対し、凸型加減速フィルタでは、テーブルが１０（ｍｍ）に到達して停止した後、小さく振動しているが、従来型フィルタに比べてその振幅ははるかに小さかった。従って、４２．５Ｈｚにおいては、従来型フィルタに比較して、凸型加減速フィルタで処理した場合においては、テーブルの振動が抑制されていることが分かった。
【００５７】
−周波数＝４５Ｈｚ−
図１８に示すように、中段の波形図を見ると、従来型フィルタでは、テーブルが１０（ｍｍ）に到達して停止した後、４２．５Ｈｚの時よりも大きく振動していることから、振動を抑制できていないことが分かった。これに対し、凸型加減速フィルタでは、テーブルが１０（ｍｍ）に到達して停止した後、振動は生じていなかった。凸型加減速フィルタは、制振範囲の中心周波数を４５Ｈｚに設定しているので、テーブルに振動は生じておらず、振動はほぼ０に抑制されていることが分かった。
【００５８】
−周波数＝４７．５Ｈｚ−
図１９に示すように、中段の波形図を見ると、従来型フィルタでは、テーブルが１０（ｍｍ）に到達して停止した後、大きく振動していることから、振動を抑制できていないことが分かった。これに対し、凸型加減速フィルタでは、テーブルが１０（ｍｍ）に到達して停止した後、小さく振動しているが、従来型フィルタに比べてその振幅ははるかに小さかった。従って、４７．５Ｈｚにおいても、従来型フィルタに比較して、凸型加減速フィルタで処理した場合においては、テーブルの振動が抑制されていることが分かった。
【００５９】
−周波数＝５０Ｈｚ−
図２０に示すように、中段の波形図を見ると、従来型フィルタ及び凸型加減速フィルタの何れにおいても、テーブルが１０（ｍｍ）に到達して停止した後、振動は生じていなかった。従って、５０Ｈｚにおいては、テーブルに振動は生じておらず、振動はほぼ０に抑制されていることが分かった。
【００６０】
以上のシミュレーション結果より、従来型フィルタは、４０Ｈｚと５０Ｈｚの二つの周波数の移動平均フィルタであるので、それら二つの周波数においては振動をほぼ０に抑制できるが、それ以外の周波数においては振動を抑制できないことが分かった。これに対し、本発明の凸型加減速フィルタでは、４０Ｈｚ、４５Ｈｚ、５０Ｈｚで振動をほぼ０に抑制できることに加え、夫々の周波数の間である４２．５Ｈｚ、４７．５Ｈｚにおいても振動を抑制できていることが分かった。従って、凸型加減速フィルタでは、４５Ｈｚを中心とする４０〜５０Ｈｚの制振範囲において効果的に制振できることがシミュレーションにより確認された。また、図１６〜図２０の下段に示した加速度波形を見ると、凸型加減速フィルタを通した後の加速度指令波形の最大値は、従来型フィルタと比較して小さい。これは、モータ、駆動回路などを変更すること無しに従来型フィルタを凸型加減速フィルタに置き換え可能であることを意味する。
【００６１】
図２１〜図２４を参照し、Ｋの値と制振可能な周波数との関係について説明する。上記の通り、Ｋは、凸型加減速フィルタの一段目の高さａと、二段目の高さｂの比率を調整するパラメータである。Ｋに正の値を設定した場合と、負の値を設定した場合とで、凸型加減速フィルタの制振可能な周波数は変化する。
【００６２】
図２１のボード線図は、Ｋに正の値を設定した場合の凸型加減速フィルタの周波数応答を示している。Ｋに０、０．１、０．２、０．３を夫々設定し、夫々のＫに対応する凸型加減速フィルタの周波数応答を比較した。周波数が低いほうから一つ目の谷の部分に着目すると、Ｋ＝０の波形図に対し、Ｋに正の値を設定した場合の谷の周波数は、Ｋが正の方向に大きくなればなるほど高周波側にシフトしている。逆に、周波数が低いほうから三つ目の谷の部分は、逆Ｋが大きくなればなるほど低周波数側にシフトしている。図２２は、Ｋに正の値を設定したときの凸型加減速フィルタで処理した加速度パターンの図表である。Ｋ＝０の波形は、長方形状で突出部を持たないが、Ｋに正の値を設定したときは、波形の中央部が上方向に突出する凸型であり、Ｋの絶対値が大きくなればなるほど突出する部分が大きくなっている。
【００６３】
ここまで、Ｋは正の値の例について例を示してきたが、Ｋは負の値とすることも可能である。図２３のボード線図は、Ｋに負の値を設定した場合の凸型加減速フィルタ（凹型加減速フィルタ）の周波数応答を示している。Ｋに０、−０．１、−０．２、−０．３を夫々設定し、夫々のＫに対応する加減速フィルタの周波数応答を比較した。周波数が低いほうから一つ目の谷の部分に着目すると、Ｋ＝０の波形図に対し、Ｋに負の値を設定した場合の谷の周波数は、Ｋが負の方向に大きくなればなるほど低周波側にシフトしている。逆に、周波数が低いほうから三つ目の谷の部分は、逆Ｋが大きくなればなるほど高周波数側にシフトしている。図２４は、Ｋに負の値を設定したときの凸型加減速フィルタで処理した加速度パターンの図表である。Ｋに負の値を設定したときは、波形の中央部が窪んだ凹型であり、Ｋの絶対値が大きくなればなるほど窪んだ部分が小さくなっている。ここで、一つ目の谷の周波数について、Ｋに負の値を設定した場合は、同じ時定数を持つ従来型の加減速フィルタが制振する周波数と比較して低くなることが分かった。例えば、上記の凸型加減速フィルタは、Ｔｎ＝０．０２２２ｍｓであるから時定数＝０．０４４４ｍｓである。移動平均に基づく従来型の加減速フィルタにおいて、周波数応答における周波数が低いほうから一つ目の谷の周波数（制振周波数）は２２．５Ｈｚである。しかし図２３に示したとおり、Ｋに負の値を設定した場合の凸型加減速フィルタの、周波数応答における周波数が低い方から一つ目の谷の周波数は明らかに２２．５Ｈｚよりも低い。よって、Ｋに負の値を設定すると従来型の加減速フィルタよりも低い周波数の振動を抑制できるので、時定数を伸ばさずに低い周波数の振動を抑制できる。
【００６４】
以上説明したように、本実施形態の数値制御装置２０のＣＰＵ２１は、工作機械１０を駆動するサーボモータの速度指令に対し、凸型加減速フィルタで処理することにより、サーボモータの加減速制御を行う。凸型加減速フィルタは、入力信号に対するインパルス応答を規定したＦＩＲフィルタであり、時間軸における中央部においてインパルス応答が凸状に大きくなる二段の凸型フィルタである。速度指令を凸型加減速フィルタで処理することにより、例えば工作機械１０の固有振動数を中心とする周波数の範囲内で、送り軸の移動時に発生する振動を抑制できる。凸型加減速フィルタは、前側部３１、中央部３２、後側部３３を備える。
【００６５】
ＣＰＵ２１はフィルタ設定処理を実行し、作業者からパラメータＴｎとαの入力を受け付ける。Ｔｎとαは、工作機械１０の固有振動数を中心とする制振範囲を規定する為のパラメータである。Ｔｎは、固有振動数の逆数であって、固有振動数の周期である。αは、ωｚｅｒｏとωｎの比率である。ωｎは、制振範囲の中心周波数であり、本実施形態では固有振動数である。ωｚｅｒｏは、制振範囲内で周波数応答が０になるωｎ以外の周波数であって、制振範囲の広さを決める二つの境界値である。
【００６６】
ＣＰＵ２１は、作業者から受け付けたＴｎとαに基づき、パラメータＫを求める。Ｋは、凸型加減速フィルタの一段目（前側部３１及び後側部３３）の高さａと、二段目（中央部３２）の高さｂの比率を調整するパラメータである。ＣＰＵ２１は、求めたＫに基づき、凸型加減速フィルタのａとｂを設定する。故に数値制御装置２０は、工作機械１０の固有振動数の周辺にある一定の幅を持った範囲の制振を行うことができる。数値制御装置２０は、機械の制振を行う範囲を作業者が入力するパラメータＴｎとαで簡単に最適化できるので、想定される工作機械１０の製造過程のバラツキや積載質量の範囲に応じて最適な凸型加減速フィルタを簡単に設計できる。
【００６７】
上記説明にて、工作機械１０は本発明の機械の一例である。図２に示す主処理のＳ５の処理を実行するＣＰＵ２１は、本発明の加減速制御部の一例である。図１３に示すフィルタ設定処理のＳ１２の処理を実行するＣＰＵ２１は、本発明の受付部の一例である。Ｓ１４の処理を実行するＣＰＵ２１は、本発明の算出部の一例である。Ｓ１７の処理を実行するＣＰＵ２１は、本発明の設定部の一例である。パラメータＴｎとαは本発明の範囲情報の一例である。
【００６８】
本発明は上記実施形態に限らず各種変形が可能なことはいうまでもない。上記実施形態のＣＰＵ２１は、ＮＣプログラムを解釈して生成した内部指令である速度指令を、凸型加減速フィルタで処理しているが、位置指令を凸型加減速フィルタで処理しても上記実施形態と同様の効果を得ることができる。凸型加減速フィルタを加速度指令、加加速度指令など位置指令に対して高次の微分を行った指令に対して適用可能である。
【００６９】
上記実施形態のＣＰＵ２１は、凸型加減速フィルタを用いて速度指令を処理し、加速度の時間変化が凸型となるようにしているが、凸型加減速フィルタ以外の方法で処理してもよく、例えば、凸型形状となるような加速度の時間変化を直接算出するようにしてもよい。
【００７０】
上記実施形態のフィルタ設定処理（図１３参照）において、ＣＰＵ２１は、操作盤１６の入力部１７において、パラメータαの入力を受け付けているが、例えば、ωｎとωｚｅｒｏの入力を受け付け、それら用いてαを算出するようにしてもよい。
【００７１】
上記実施形態の工作機械１０は、主軸がＺ軸方向に延びる立型工作機械であるが、水平方向に延びる横型工作機械であってもよい。
【００７２】
上記実施形態の凸型加減速フィルタは、制振範囲の中心周波数ωｎを機械の固有振動数に設定しているが、それ以外の振動数に設定してもよい。
【００７３】
上記実施形態のＣＰＵ２１は、主処理の加減速処理（Ｓ５）にて、速度指令を一つの凸型加減速フィルタで処理しているが、例えば、制振範囲の異なる複数の凸型加減速フィルタで処理してもよい。この場合、一つの凸型加減速フィルタで処理する場合に比べ、より広い周波数範囲で制振できる。
【００７４】
上記実施形態のフィルタ設定処理（図１３参照）において、ＣＰＵ２１は、操作盤１６の入力部１７において、パラメータαの入力を受け付けているが、例えば、別途ＰＣ等を用いて、例えば、パラメータα、ωｎとωｚｅｒｏの入力を受け付け、凸型加減速フィルタを表すパラメータ、例えば、ａ、ｂ、Ｔｎを計算し、直接入力部１７より入力しても良い。
【００７５】
本実施形態はＣＰＵ２１の代わりに、マイクロコンピュータ、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔｓ）、ＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）等を、プロセッサとして用いてもよい。移動制御処理は、複数のプロセッサによって分散処理してもよい。プログラムを記憶するＲＯＭ２２と記憶装置２４は、例えばＨＤＤ及び又は記憶装置等の他の非一時的な記憶媒体で構成してもよい。非一時的な記憶媒体は、情報を記憶する期間に関わらず、情報を留めておくことが可能な記憶媒体であればよい。非一時的な記憶媒体は、一時的な記憶媒体（例えば伝送される信号）を含まなくてもよい。上昇行程制御プログラム、下降行程制御プログラム、ＮＣプログラム等の各種プログラム、凸型加減速フィルタを表すパラメータは、例えば、図示外のネットワークに接続されたサーバからダウンロードして（即ち、伝送信号として送信され）、フラッシュメモリ等の記憶装置等に記憶してもよい。この場合、プログラムは、サーバに備えられたＨＤＤなどの非一時的な記憶媒体に保存していればよい。
【符号の説明】
【００７６】
１０      工作機械
２０      数値制御装置
１１      Ｚ軸モータ
１３      Ｘ軸モータ
１４      Ｙ軸モータ
１６      操作盤
２１      ＣＰＵ
【図１】
2019082771.tif 000018
【図２】
2019082771.tif 000019
【図３】
2019082771.tif 000020
【図４】
2019082771.tif 000021
【図５】
2019082771.tif 000022
【図６】
2019082771.tif 000023
【図７】
2019082771.tif 000024
【図８】
2019082771.tif 000025
【図９】
2019082771.tif 000026
【図１０】
2019082771.tif 000027
【図１１】
2019082771.tif 000028
【図１２】
2019082771.tif 000029
【図１３】
2019082771.tif 000030
【図１４】
2019082771.tif 000031
【図１５】
2019082771.tif 000032
【図１６】
2019082771.tif 000033
【図１７】
2019082771.tif 000034
【図１８】
2019082771.tif 000035
【図１９】
2019082771.tif 000036
【図２０】
2019082771.tif 000037
【図２１】
2019082771.tif 000038
【図２２】
2019082771.tif 000039
【図２３】
2019082771.tif 000040
【図２４】
2019082771.tif 000041