JP2023149799A - Numerical control device, and control method of numerical control device - Google Patents
Numerical control device, and control method of numerical control device Download PDFInfo
- Publication number
- JP2023149799A JP2023149799A JP2022058561A JP2022058561A JP2023149799A JP 2023149799 A JP2023149799 A JP 2023149799A JP 2022058561 A JP2022058561 A JP 2022058561A JP 2022058561 A JP2022058561 A JP 2022058561A JP 2023149799 A JP2023149799 A JP 2023149799A
- Authority
- JP
- Japan
- Prior art keywords
- time
- acceleration
- period
- control device
- numerical control
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 40
- 230000001133 acceleration Effects 0.000 claims abstract description 204
- 238000003860 storage Methods 0.000 claims abstract description 31
- 230000007423 decrease Effects 0.000 claims description 12
- 230000008569 process Effects 0.000 description 23
- 238000004364 calculation method Methods 0.000 description 9
- 230000007246 mechanism Effects 0.000 description 9
- 238000007781 pre-processing Methods 0.000 description 8
- 230000008859 change Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000005457 optimization Methods 0.000 description 5
- 230000005284 excitation Effects 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000000630 rising effect Effects 0.000 description 2
- 230000001629 suppression Effects 0.000 description 2
- 238000005520 cutting process Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 238000005553 drilling Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000003754 machining Methods 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 238000003801 milling Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Landscapes
- Automatic Control Of Machine Tools (AREA)
- Numerical Control (AREA)
Abstract
Description
本発明は、数値制御装置、及び数値制御装置の制御方法に関する。 The present invention relates to a numerical control device and a method of controlling the numerical control device.
特許文献1は振動抑制装置を開示する。振動抑制装置は、工作機械が送り軸指令に応じて駆動した時に発生する振動を抑制する為、送り軸指令に補償トルク指令を付加する。補償トルク指令は、振動の位相に対して逆位相となる波形を有する。該時、振動の振幅は補償トルク指令により減少するので、工作機械は振動を抑制できる。
工作機械が送り軸指令に応じて駆動時に生じる振動の周波数が、送り軸指令の条件に応じて変化する時がある。該時、特許文献1の如く補償トルク指令を用いる方法では駆動時に生じる振動を抑制できない時がある。
The frequency of vibration that occurs when a machine tool is driven in response to a feed axis command may change depending on the conditions of the feed axis command. At this time, the method using a compensation torque command as in
本発明の目的は、機械装置が駆動する時に発生する振動を適切に抑制できる数値制御装置、及び数値制御装置の制御方法を提供することである。 An object of the present invention is to provide a numerical control device and a control method for the numerical control device that can appropriately suppress vibrations generated when a mechanical device is driven.
本発明の第一態様に係る数値制御装置は、加速度指令に基づきモータを駆動して機械装置を駆動する数値制御装置であって、前記加速度指令は、連続する第一期間、第二期間、第三期間、第四期間に亘り前記モータの加速度を制御し、前記第一期間では、前記モータの加速度が零から第一加速度迄増加し、前記第二期間では、前記モータの加速度が前記第一加速度から零迄減少し、前記第三期間では、前記モータの加速度が零から第二加速度迄減少し、前記第四期間では、前記モータの加速度が前記第二加速度から零迄増加し、前記第一期間の長さである第一時間、前記第二期間の長さである第二時間、前記第三期間の長さである第三時間、前記第四期間の長さである第四時間の内、前記第一時間と前記第四時間とが同一であり、且つ、前記第二時間と前記第三時間とが同一であり、前記機械装置の振動の大きさの許容値と前記機械装置の送り量と、前記第一時間、前記第二時間、前記第三時間、及び前記第四時間の合計時間との関係を示す第一情報、及び、前記合計時間と前記第一時間との関係を示す第二情報とを記憶する記憶部と、前記許容値と前記送り量とを取得する取得手段と、前記取得手段により取得した前記許容値と前記送り量とに基づき、前記記憶部に記憶した前記第一情報を参照して、前記合計時間を決定する第一決定手段と、前記第一決定手段により特定した前記合計時間に基づき、前記記憶部に記憶した前記第二情報を参照して、前記第一時間を決定する第二決定手段と、前記第二決定手段により決定した前記第一時間に基づき、前記加速度指令を作成する作成手段とを備えたことを特徴とする。 A numerical control device according to a first aspect of the present invention is a numerical control device that drives a mechanical device by driving a motor based on an acceleration command, wherein the acceleration command is a continuous first period, a second period, and a second period. The acceleration of the motor is controlled over three periods and a fourth period, and in the first period, the acceleration of the motor increases from zero to the first acceleration, and in the second period, the acceleration of the motor increases to the first acceleration. In the third period, the acceleration of the motor decreases from zero to a second acceleration, and in the fourth period, the acceleration of the motor increases from the second acceleration to zero, and in the fourth period, the acceleration of the motor increases from the second acceleration to zero. A first time that is the length of one period, a second time that is the length of the second period, a third time that is the length of the third period, and a fourth time that is the length of the fourth period. The first time and the fourth time are the same, the second time and the third time are the same, and the permissible value of the vibration magnitude of the mechanical device and the mechanical device are the same. first information indicating the relationship between the feed amount and the total time of the first time, the second time, the third time, and the fourth time; and the relationship between the total time and the first time. a storage unit that stores second information indicating the second information; an acquisition unit that acquires the allowable value and the feed amount; a first determining means that determines the total time with reference to the first information; and with reference to the second information stored in the storage unit based on the total time specified by the first determining means; The apparatus is characterized by comprising a second determining means for determining the first time, and a creating means for creating the acceleration command based on the first time determined by the second determining means.
数値制御装置は、決定した加速度指令で機械装置のモータを駆動することにより、モータの駆動時に発生する機械装置の振動を抑制できる。 By driving the motor of the mechanical device using the determined acceleration command, the numerical control device can suppress vibrations of the mechanical device that occur when the motor is driven.
第一態様によれば、前記第一情報は、前記合計時間と前記送り量とを変化させた場合に、前記合計時間と前記送り量の組み合わせ毎に発生した前記振動の大きさの計測値に基づき規定される情報であってもよい。数値制御装置では、第一情報は、振動を計測した計測値に基づく。故に、数値制御装置は、計算のみで決定した場合よりも最適な加速度指令を作成できる。 According to the first aspect, the first information is a measured value of the magnitude of the vibration that occurs for each combination of the total time and the feed amount when the total time and the feed amount are changed. The information may be defined based on the In the numerical control device, the first information is based on a measured value of vibration. Therefore, the numerical control device can create a more optimal acceleration command than when determined only by calculation.
第一態様によれば、前記第一情報に含まれる前記機械装置の前記振動の大きさは、前記加速度指令の指令完了後に前記機械装置に発生した前記振動の大きさを示す振動波形を、所定時間に亘って積分した積分値であってもよい。数値制御装置は、振動波形の積分値を用いることで最適な加速度指令を作成できる。 According to the first aspect, the magnitude of the vibration of the mechanical device included in the first information is a vibration waveform representing the magnitude of the vibration generated in the mechanical device after completion of the acceleration command. It may be an integral value integrated over time. The numerical control device can create an optimal acceleration command by using the integral value of the vibration waveform.
第一態様によれば、前記第二情報は、前記合計時間に対して前記加速度指令の特定の周波数成分を0とする方程式に基づき規定される情報であり、前記第二決定手段は、前記方程式において、前記合計時間に対して前記方程式の解が存在するときは、前記方程式の解となる値を前記第一時間と決定し、前記方程式に解が存在しないときは、前記特定の周波数成分の大きさを最小とする値を前記第一時間と決定してもよい。数値制御装置は、方程式の解が無い場合にも、特定の周波数成分の大きさを最小とする値を第一時間と決定することで最適な加速度指令を作成できる。 According to the first aspect, the second information is information defined based on an equation that sets a specific frequency component of the acceleration command to 0 with respect to the total time, and the second determining means When there is a solution to the equation for the total time, the value that is the solution to the equation is determined as the first time, and when there is no solution to the equation, the value for the specific frequency component is determined as the first time. A value that minimizes the magnitude may be determined as the first time. Even when there is no solution to the equation, the numerical control device can create an optimal acceleration command by determining the value that minimizes the magnitude of a specific frequency component as the first time.
第一態様によれば、前記第二情報は、前記合計時間に対して前記加速度指令の特定の周波数成分を0とする方程式に基づき規定される情報であり、前記第二決定手段は、前記方程式において、前記合計時間に対して前記特定の周波数成分の大きさを最小とする前記第一時間の解が複数存在する場合、前記合計時間の1/2に最も近い値を前記第一時間と決定してもよい。数値制御装置は、合計時間の1/2に近い値を第一時間に決定することで、最適な加速度指令を作成できる。 According to the first aspect, the second information is information defined based on an equation that sets a specific frequency component of the acceleration command to 0 with respect to the total time, and the second determining means If there are multiple solutions for the first time that minimize the magnitude of the specific frequency component with respect to the total time, the value closest to 1/2 of the total time is determined as the first time. You may. The numerical control device can create an optimal acceleration command by determining a value close to 1/2 of the total time for the first time.
第一態様によれば、前記機械装置は、複数の固有振動数を有し、前記第二情報は、前記複数の固有振動数に対する重み係数で規定された重みを、夫々の前記加速度指令の特定の周波数成分を0とする方程式に対して適用した情報であってもよい。数値制御装置は、機械装置が複数の固有振動数を有する場合でも、重み係数を適用することで適切に振動を低減できる。 According to the first aspect, the mechanical device has a plurality of natural frequencies, and the second information includes a weight defined by a weighting coefficient for the plurality of natural frequencies, and a weight specified by a weight coefficient for each of the acceleration commands. It may also be information applied to an equation in which the frequency component of is set to 0. Even when a mechanical device has multiple natural frequencies, the numerical control device can appropriately reduce vibration by applying weighting coefficients.
本発明の第二態様に係る数値制御装置の制御方法は、加速度指令に基づきモータを駆動して機械装置を駆動する数値制御装置の制御方法であって、前記加速度指令は、連続する第一期間、第二期間、第三期間、第四期間に亘り前記モータの加速度を制御し、前記第一期間では、前記モータの加速度が零から第一加速度迄増加し、前記第二期間では、前記モータの加速度が前記第一加速度から零迄減少し、前記第三期間では、前記モータの加速度が零から第二加速度迄減少し、前記第四期間では、前記モータの加速度が前記第二加速度から零迄増加し、前記第一期間の長さである第一時間、前記第二期間の長さである第二時間、前記第三期間の長さである第三時間、前記第四期間の長さである第四時間の内、前記第一時間と前記第四時間とが同一であり、且つ、前記第二時間と前記第三時間とが同一であり、前記数値制御装置は、前記機械装置の振動の大きさの許容値と前記機械装置の送り量と、前記第一時間、前記第二時間、前記第三時間、及び前記第四時間の合計時間との関係を示す第一情報、及び、前記合計時間と前記第一時間との関係を示す第二情報とを記憶する記憶部を備え、前記許容値と前記送り量とを取得する取得ステップと、前記取得ステップにより取得した前記許容値と前記送り量とに基づき、前記記憶部に記憶した前記第一情報を参照して、前記合計時間を決定する第一決定ステップと、前記第一決定ステップにより特定した前記合計時間に基づき、前記記憶部に記憶した前記第二情報を参照して、前記第一時間を決定する第二決定ステップと、前記第二決定ステップにより決定した前記第一時間に基づき、前記加速度指令を作成する作成ステップとを備えたことを特徴とする。 A control method for a numerical control device according to a second aspect of the present invention is a control method for a numerical control device that drives a mechanical device by driving a motor based on an acceleration command, wherein the acceleration command is a continuous first period. , the acceleration of the motor is controlled over a second period, a third period, and a fourth period, and in the first period, the acceleration of the motor increases from zero to the first acceleration, and in the second period, the acceleration of the motor increases from zero to the first acceleration. The acceleration of the motor decreases from the first acceleration to zero, in the third period, the acceleration of the motor decreases from zero to a second acceleration, and in the fourth period, the acceleration of the motor decreases from the second acceleration to zero. a first time that is the length of the first period; a second time that is the length of the second period; a third time that is the length of the third period; and a third time that is the length of the fourth period. of the fourth time, the first time and the fourth time are the same, and the second time and the third time are the same, and the numerical control device controls the mechanical device. first information indicating a relationship between a permissible value of vibration magnitude, a feed amount of the mechanical device, and a total time of the first time, the second time, the third time, and the fourth time; and an acquisition step that stores second information indicating a relationship between the total time and the first time; an acquisition step that acquires the tolerance value and the feed amount; and the tolerance value acquired in the acquisition step. a first determining step of determining the total time by referring to the first information stored in the storage unit based on the feed amount, and determining the total time based on the total time specified in the first determining step; a second determining step of determining the first time with reference to the second information stored in the unit; and a creating step of creating the acceleration command based on the first time determined in the second determining step. It is characterized by having the following.
数値制御装置は、上記制御方法により制御することで、第一態様と同様の効果を得る。 The numerical control device obtains the same effects as the first aspect by controlling by the above control method.
本発明の実施形態を説明する。以下説明は、図中に矢印で示す左右、前後、上下を使用する。工作機械1の左右方向、前後方向、上下方向は夫々工作機械1のX軸方向、Y軸方向、Z軸方向である。図1に示す工作機械1は主軸9に装着した工具4を回転し、テーブル13上面に保持した被削材3に切削加工を施す機械である。数値制御装置30(図2参照)は工作機械1の動作を制御する。
Embodiments of the present invention will be described. In the following explanation, left and right, front and back, and up and down directions indicated by arrows in the drawings will be used. The left-right direction, front-back direction, and up-down direction of the
図1を参照し、工作機械1の構造を説明する。工作機械1は、基台2、コラム5、主軸ヘッド7、主軸9、テーブル装置10、工具交換装置20、制御箱6、操作パネル15(図2参照)、及び加速度センサ18(図2参照)等を備える。基台2は金属製の略直方体状の土台である。コラム5は基台2上部後方に固定する。主軸ヘッド7はコラム5前面に沿ってZ軸方向に移動可能に設ける。主軸ヘッド7は内部に主軸9を回転可能に支持する。主軸9は下部に装着穴(図示略)を有する。主軸9は該装着穴に工具4を装着し、主軸モータ52(図2参照)の駆動で回転する。主軸モータ52は主軸ヘッド7に設ける。主軸ヘッド7はコラム5前面に設けたZ軸移動機構(図示略)でZ軸方向に移動する。数値制御装置30はZ軸モータ51(図2参照)の駆動を制御して主軸ヘッド7をZ軸方向に移動制御する。
The structure of the
テーブル装置10は、Y軸移動機構(図示略)、Y軸テーブル12、X軸移動機構(図示略)、テーブル13等を備える。Y軸移動機構は基台2上面前側に設け、一対のY軸レール、Y軸ボール螺子、Y軸モータ54(図2参照)等を備える。Y軸レールとY軸ボール螺子はY軸方向に延びる。Y軸レールは上面にY軸テーブル12をY軸方向に案内する。Y軸テーブル12は略直方体状に形成し、底部にナット(図示略)を備える。該ナットはY軸ボール螺子に螺合する。Y軸モータ54がY軸ボール螺子を回転すると、Y軸テーブル12はナットと共にY軸レールに沿って移動する。故にY軸移動機構はY軸テーブル12をY軸方向に移動可能に支持する。
The
X軸移動機構はY軸テーブル12上面に設け、一対のX軸レール(図示略)、X軸ボール螺子(図示略)、X軸モータ53(図2参照)等を備える。X軸レールとX軸ボール螺子はX軸方向に延びる。テーブル13は平面視矩形板状に形成し、Y軸テーブル12上面に設ける。テーブル13は底部にナット(図示略)を備える。該ナットはX軸ボール螺子に螺合する。X軸モータ53がX軸ボール螺子を回転すると、テーブル13はナットと共に一対のX軸レールに沿って移動する。故にX軸移動機構はテーブル13をX軸方向に移動可能に支持する。故にテーブル13は、Y軸移動機構、Y軸テーブル12、X軸移動機構により、基台2上をX軸方向とY軸方向に移動する。
The X-axis moving mechanism is provided on the upper surface of the Y-axis table 12, and includes a pair of X-axis rails (not shown), an X-axis ball screw (not shown), an X-axis motor 53 (see FIG. 2), and the like. The X-axis rail and the X-axis ball screw extend in the X-axis direction. The table 13 is formed into a rectangular plate shape in plan view, and is provided on the upper surface of the Y-axis table 12. The table 13 includes a nut (not shown) at the bottom. The nut threads onto the X-axis ball screw. When the
工具交換装置20は主軸ヘッド7の前側に設け、円盤型の工具マガジン21を備える。工具マガジン21は外周に複数の工具(図示略)を放射状に保持する。工具交換装置20はマガジンモータ55(図2参照)により工具マガジン21を駆動し、工具交換指令が指示する工具を工具交換位置に位置決めする。工具交換指令はNCプログラムで指令する。工具交換位置は工具マガジン21の最下部位置である。工具交換装置20は主軸9に装着する工具4と工具マガジン21に取り付けた工具とを主軸ヘッド7の上昇、工具マガジン21の回転、主軸ヘッド7の下降の一連の動作により入れ替え交換する。
The
制御箱6は数値制御装置30(図2参照)を格納する。数値制御装置30は、工作機械1に設けたZ軸モータ51、主軸モータ52、X軸モータ53、Y軸モータ54(図2参照)を夫々制御し、テーブル13上に保持した被削材3と主軸9に装着した工具4を相対移動して各種加工を被削材3に施す。各種加工とは、ドリル、タップ等を用いた穴空け加工、エンドミル、フライス等を用いた側面加工等である。
The
操作パネル15(図2参照)は、例えば工作機械1を覆うカバー(図示略)の外壁に設ける。操作パネル15は入力部16と表示部17(図2参照)を備える。入力部16は各種情報、操作指示等の入力を受け付け、数値制御装置30に出力する。表示部17は数値制御装置30からの指令に基づき、各種画面を表示する。加速度センサ18(図2参照)は、工作機械1の主軸9に設け、主軸9に発生する振動を計測する。
The operation panel 15 (see FIG. 2) is provided, for example, on the outer wall of a cover (not shown) that covers the
図2を参照し、数値制御装置30と工作機械1の電気的構成を説明する。数値制御装置30と工作機械1は、CPU31、ROM32、RAM33、記憶装置34、入出力部35、駆動回路51A~55A、及び加速度センサ18等を備える。CPU31は数値制御装置30を統括制御する。ROM32は、事前処理プログラム、主プログラム等を記憶する。事前処理プログラムは、事前処理(図10参照)を実行する為のプログラムである。主プログラムは、主処理(図11参照)を実行する為のプログラムである。事前処理は主処理の前に実行する。主処理は、NCプログラムを一行ずつ読み込んで各種動作を実行する。NCプログラムは各種制御指令を含む複数行で構成し、制御指令は工作機械1の軸移動、工具交換等である。なお、軸移動は送り量LによりZ軸モータ51等の回転位置を制御する指令である。CPU31は送り量Lから、後述する加速度指令を作成する。
With reference to FIG. 2, the electrical configuration of the
RAM33は各種情報を一時的に記憶する。記憶装置34は不揮発性であり、NCプログラム、各種情報を記憶する。CPU31は作業者が操作パネル15の入力部16で入力したNCプログラムに加え、外部入力で読み込んだNCプログラム等を記憶装置34に記憶できる。
The
駆動回路51AはZ軸モータ51とエンコーダ51Bに接続する。駆動回路52Aは主軸モータ52とエンコーダ52Bに接続する。駆動回路53AはX軸モータ53とエンコーダ53Bに接続する。駆動回路54AはY軸モータ54とエンコーダ54Bに接続する。駆動回路55Aはマガジンモータ55とエンコーダ55Bに接続する。Z軸モータ51、主軸モータ52、X軸モータ53、Y軸モータ54、マガジンモータ55は何れもサーボモータである(以下、総称する場合は単にモータ50と称す)。駆動回路51A~55AはCPU31から指令を受け、対応する各モータ51~55に駆動電流を夫々出力する。駆動回路51A~55Aはエンコーダ51B~55Bからフィードバック信号を受け、位置と速度のフィードバック制御を行う。入出力部35は操作パネル15の入力部16と表示部17、及び加速度センサ18に夫々接続する。
The
被削材3に対して工具4をX軸方向、Y軸方向、Z軸方向に夫々移動するNCプログラムの指令(以下、送り軸指令と称す。)に基づき、工作機械1が駆動する場合を例示する。以下、被削材3に対して工具4をZ軸方向に沿って下向きに移動する時を例示して説明する。詳細説明は省略するが、被削材3に対して工具4をX軸方向、Y軸方向に夫々移動して加工する時も同様である。図3に示すグラフの縦軸は、Z軸方向の位置(図3(A))、速度(図3(B)(C))、加速度(図3(D))を示す。以後、説明を簡単にする為に図3(A)~(D)において下向きを正、上向きを負として説明する。図3(A)において、所定の基準位置にある工具4の位置を示すZ軸座標を零で示す。基準位置よりも下側にある工具4の位置を示すZ軸座標を正の値で示す。図3(B)~(D)において、工具4が下向きに移動する時の速度及び加速度を正の値で示す。
The case where the
CPU31はNCプログラムの送り軸指令を読み込んだ時、主軸9を保持した主軸ヘッド7を送り軸指令により指定した位置まで移動する為、主軸ヘッド7の目標位置の時系列データを生成する。CPU31は、所定周期で目標位置のデータを駆動回路51Aに出力する。駆動回路51Aは、CPU31が出力した目標位置のデータに基づき、Z軸モータ51を駆動する。Z軸モータ51は、主軸ヘッド7を介して工具4を目標位置までZ軸方向に移動する。CPU31が駆動回路51Aに目標位置のデータを入力する都度、駆動回路51AはZ軸モータ51を駆動する。これにより、工具4は、送り軸指令により指定した位置(以下、指令位置と称す。)に最終的に到達する(図3(A)参照)。送り軸指令に基づきCPU31が実行する上記の制御を送り軸制御と称す。
When the
上記において目標位置の時系列データを生成時、CPU31は、指令位置まで工具4がZ軸方向に移動する時の速度が一定に推移するように、各目標位置を決定する(図3(B)参照)。次にCPU31は、速度の時系列変化を示す波形(以下、速度波形と称す。)の立ち上がり特性及び立ち下がり特性に対応する加減速特性を調整する。図3(C)(D)は目標位置が短く一定速区間を持たない場合の速度波形及び加速度波形を示す。本特許ではこのように一定速区間(=加速度0の区間)を持たない場合の加速度指令の算出について扱う。以下、速度波形の加減速特性を調整する処理を、加減速処理と称す。加減速処理を実行した速度波形の立ち上がり及び立ち下がりの夫々の傾きは、工具4の加速度に対応する。
When generating the time-series data of the target positions in the above, the
CPU31は、加減速処理を実行した速度波形に基づき、所定周期毎の目標位置を決定する。CPU31は、決定した目標位置のデータを所定周期で駆動回路51Aに出力する。該時、図3(C)に示すように、駆動回路51Aが駆動するZ軸モータ51により移動する工具4は、移動開始時に加速期間Paで加速し、移動終了時に減速期間Pdで減速する。以下、加速期間Paの長さを加速時間Taと称し、減速期間Pdの長さを減速時間Tdと称す。
The
以下、CPU31がNCプログラムの送り軸指令に基づき駆動回路50Aに出力する制御指令を加速度指令と称す。加速度指令は、工具4を加速する加速指令、及び、工具4が減速する減速指令を含む概念である。図3(D)は、加速度指令に応じて工具4が移動時の加速度の時系列変化(以下、加速度波形と称す。)を示す。加速期間Paにおいて工具4の加速度が増加する期間を第一期間P1と称し、第一期間P1の長さを第一時間T1と称す。第一期間P1では、モータ50の加速度が零から第一加速度A1迄増加する。加速期間Paにおいて工具4の加速度が減少する期間を第二期間P2と称し、第二期間P2の長さを第二時間T2と称す。第二期間P2では、モータ50の加速度が第一加速度A1から零迄減少する。減速期間Pdにおいて工具4の加速度が減少する期間を第三期間P3と称し、第三期間P3の長さを第三時間T3と称す。第三期間P3では、モータ50の加速度が零から第二加速度A2迄減少する。減速期間Pdにおいて工具4の加速度が増加する期間を第四期間P4と称し、第四期間P4の長さを第四時間T4と称す。第四期間P4では、モータ50の加速度が第二加速度A2から零迄増加する。
Hereinafter, the control command that the
加速度指令は、連続する第一期間P1~第四期間P4に亘りモータ50の加速度を制御する。第一期間P1の開始から第四期間P4の終了迄の長さを加減速時間Tsumと称す。第一時間T1~第四時間T4を加減速時定数Tαと総称する。なお、加速度指令は、T1=T4、T2=T3を満たし、第一時間T1と加減速時間Tsumは、0<T1<Tsum/2を満たすことを前提とする。
The acceleration command controls the acceleration of the
既に述べた通り、本特許では図3(D)に示すように加速度0で推移する期間を含まない加速度波形であることを前提とする。 As already stated, this patent assumes that the acceleration waveform does not include a period in which the acceleration is zero, as shown in FIG. 3(D).
図4を参照し、工作機械1の固有振動数ωn/2πについて説明する。固有振動数ωn/2πは、工作機械1が有する固有の共振周波数である。nは自然数である。工作機械1の固有振動数ωn/2πを特定する為、作業者は、インパルスハンマで、例えば工作機械1の主軸9をZ軸方向にインパルス加振する。該時、加速度センサ18は、主軸9に発生したZ軸方向の振幅Amplitudeの振動波形を検出する。CPU31は、加速度センサ18が検出した振動波形を、フーリエ変換する。これにより、図4に示す振幅Amplitudeの周波数特性を取得する。図4示す振幅Amplitudeの周波数特性では、30Hzと50Hzの位置に、振幅Amplitudeのピークが発生している。この場合、工作機械1の固有振動数ω1/2π、ω2/2πは、30Hzと50Hzであると特定できる。
With reference to FIG. 4, the natural frequency ωn/2π of the
図5は、図4に示した振幅Amplitudeの周波数特性をインパルスハンマで測定した加振力で除することで求めたコンプライアンス値であり、機械の周波数毎の振動のし易さを表している。図5を参照し、固有振動数ωn/2πが2つある場合の重み係数Q、Rの取得方法を説明する。重み係数Q、Rは、後述の式(1-1)で使用する。図5に示すように、固有振動数ω1/2πが30Hzの場合のコンプライアンスは、0.1142mm/Nである。固有振動数ω2/2πが50Hzの場合のコンプライアンスは、0.6263mm/Nである。固有振動数ω1/2π、ω2/2πとコンプライアンスとの比は、30Hzのコンプライアンス:50Hzのコンプライアンス=0.1142:0.6263となる。それぞれの比の合計が1となるように調整すると、比は、30Hzのコンプライアンス:50Hzのコンプライアンス=0.15:0.85となる。従って、30Hzの場合の重み係数Qは0.15と決定する。50Hzの場合の重み係数Rは0.85と決定する。 FIG. 5 is a compliance value obtained by dividing the frequency characteristic of the amplitude Amplitude shown in FIG. 4 by the excitation force measured with an impulse hammer, and represents the ease with which the machine vibrates at each frequency. With reference to FIG. 5, a method for obtaining weighting coefficients Q and R when there are two natural frequencies ωn/2π will be described. The weighting coefficients Q and R are used in equation (1-1) described later. As shown in FIG. 5, the compliance when the natural frequency ω 1 /2π is 30 Hz is 0.1142 mm/N. The compliance when the natural frequency ω 2 /2π is 50 Hz is 0.6263 mm/N. The ratio of the natural frequencies ω 1 /2π and ω 2 /2π to the compliance is 30 Hz compliance: 50 Hz compliance = 0.1142:0.6263. When adjusted so that the sum of the respective ratios is 1, the ratio becomes 30 Hz compliance: 50 Hz compliance=0.15:0.85. Therefore, the weighting coefficient Q in the case of 30 Hz is determined to be 0.15. The weighting coefficient R in the case of 50 Hz is determined to be 0.85.
図6を参照し、固有振動数が複数ある場合の振幅マップの作製方法について説明する。振幅マップは、横軸を第一時間T1、縦軸をTsumを変数とした場合における振幅Amplitudeの大きさを示す。振幅マップの作製は、以下の式(1-1)を用いる。以下の式(1-1)は、加速度指令が含む工作機械1の固有振動成分の振幅Amplitudeを示す。工作機械1に発生する固有振動の大きさは、振幅Amplitudeで決まる。また、aは、第一時間T1と第二時間T2との比を示す。ここで、固有振動数ω1/2πが30Hz、固有振動数ω2/2πが50Hz、重み係数Qが0.15、重み係数Rが0.85であるとする。
式(1-1)の第一項は、固有振動数ω1/2πが30Hzの場合に対応する。角周波数ω1は、2・π・30である。送り量Lは定数である。ここで、第一時間T1及び加減速時間Tsumを変数とし、第一時間T1、加減速時間Tsumの組毎に、式(1-1)の第一項に代入する。これにより、各組毎に振幅Amplitudeを得る。これにより、CPU31は、図6(A)に示す振幅マップ(30Hz)を得る。
The first term in equation (1-1) corresponds to the case where the natural frequency ω 1 /2π is 30 Hz. The angular frequency ω 1 is 2·π·30. The feed amount L is a constant. Here, the first time T 1 and acceleration/deceleration time Tsum are used as variables, and are substituted into the first term of equation (1-1) for each pair of first time T 1 and acceleration/deceleration time Tsum. As a result, the amplitude Amplitude is obtained for each group. Thereby, the
式(1-1)の第二項は、固有振動数ω2/2πが50Hzの場合に対応する。角周波数ω2は、2・π・50である。送り量Lは定数である。ここで、CPU31は、第一時間T1及び加減速時間Tsumを変数とし、第一時間T1、加減速時間Tsumの各組毎に、式(1-1)の第二項に代入する。これにより、CPU31は各組毎に振幅Amplitudeを得る。これにより、CPU31は、図6(B)に示す振幅マップ(50Hz)を得る。
The second term in equation (1-1) corresponds to the case where the natural frequency ω 2 /2π is 50 Hz. The angular frequency ω 2 is 2·π·50. The feed amount L is a constant. Here, the
振幅マップ(30Hz+50Hz)の作成では、CPU31は、第一時間T1及び加減速時間Tsumを変数とし、第一時間T1、加減速時間Tsumの組毎に、式(1-1)の第一項及び第二項に代入する。CPU31は、演算した組毎の振幅Amplitudeに対して、重み係数Q、Rを乗算する。重み係数Qは、0.15、重み係数Rは、0.85である。これにより、各組毎に振幅Amplitudeを得る。これにより、CPU31は、図6(C)に示す振幅マップ(30Hz+50Hz)を得る。なお、振幅マップ(30Hz+50Hz)は、振幅マップ(50Hz)と振幅マップ(30Hz)を加算したものに相当する。
In creating the amplitude map (30Hz+50Hz), the
図6(D)に示すグラフは、振幅マップ(30Hz)から加減速時間Tsumが0.06secの場合の振幅Ampliitudeを抽出したグラフである。縦軸は振幅Amplitudeであり、横軸は第一時間T1である。図6(E)に示すグラフは、振幅マップ(50Hz)から加減速時間Tsumが0.06secの場合における振幅Ampliitudeを抽出したグラフである。図6(F)に示すグラフは、振幅マップ(30Hz+50Hz)から加減速時間Tsumが0.06secの場合における振幅Ampliitudeを抽出したグラフである。なお。図6(F)に示すグラフは、図6(D)のグラフと図6(E)のグラフとを加算した結果に相当する。 The graph shown in FIG. 6(D) is a graph obtained by extracting the amplitude Amplitude when the acceleration/deceleration time Tsum is 0.06 sec from the amplitude map (30 Hz). The vertical axis is the amplitude Amplitude, and the horizontal axis is the first time T1 . The graph shown in FIG. 6(E) is a graph obtained by extracting the amplitude Amplitude when the acceleration/deceleration time Tsum is 0.06 sec from the amplitude map (50 Hz). The graph shown in FIG. 6(F) is a graph obtained by extracting the amplitude Amplitude when the acceleration/deceleration time Tsum is 0.06 sec from the amplitude map (30Hz+50Hz). In addition. The graph shown in FIG. 6(F) corresponds to the result of adding the graph in FIG. 6(D) and the graph in FIG. 6(E).
この場合、振幅Amplitudeが最小となる第一時間T1は、0.011secとなる(図6(F)参照)。例えば、CPU31は、加速度指令のうち加減速時間Tsumを0.06secとした場合、第一時間T1を0.011secに決定する。これにより、工作機械1に発生する振幅Amplitudeが最小となる。なお、振幅Amplitudeが最小となる第一時間T1は、式(1-1)の振幅Amplitudeを0とした方程式を第一時間T1について解くことで演算できる。
In this case, the first time T1 at which the amplitude Amplitude is minimum is 0.011 sec (see FIG. 6(F)). For example, when the acceleration/deceleration time Tsum of the acceleration command is 0.06 sec, the
図7を参照し、Tsum-T1テーブルについて説明する。Tsum-T1テーブルは、加減速時間Tsumと第一時間T1との関係を示す。例えば、図6(C)の振幅マップ(30Hz+50Hz)の関係に基づいて加減速時間Tsumを0~0.1まで可変した場合、CPU31は、可変した加減速時間Tsum毎に、第一時間T1と振幅Amplitudeの関係を示すデータを取得する。図6(F)のグラフは、加減速時間Tsumが0.06secの場合の、第一時間T1と振幅Amplitudeの関係を示すデータをグラフ化したものである。 The Tsum-T1 table will be explained with reference to FIG. The Tsum-T1 table shows the relationship between the acceleration/deceleration time Tsum and the first time T1 . For example, when the acceleration / deceleration time Tsum is varied from 0 to 0.1 based on the relationship of the amplitude map (30Hz+50Hz) in FIG. Obtain data indicating the relationship between Amplitude and Amplitude. The graph in FIG. 6(F) is a graph of data showing the relationship between the first time T1 and the amplitude Amplitude when the acceleration/deceleration time Tsum is 0.06 seconds.
CPU31は、可変した加減速時間Tsum毎に取得した第一時間T1と振幅Amplitudeの関係に基づき、振幅Amplitudeが最小となる第一時間T1を決定する。なお、図6(F)のグラフでは、加減速時間Tsumが0.06secの場合、振幅Amplitudeが最小となる第一時間T1は、0.011secである。
The
ここで、振幅Amplitudeの最小値は、式(1-1)について振幅Amplitudeを0とした方程式の第一時間T1の解に相当する。つまり、CPU31は、式(1-1)の振幅Amplitudeを0とした方程式を第一時間T1について解くことで、振幅Amplitudeが最小となる第一時間T1を演算できる。従って、CPU31は、可変した加減速時間Tsum毎に、第一時間T1について方程式(式(1-1)=0)を解くことで、Tsum-T1テーブルを作成できる。つまり、Tsum-T1テーブルは、複数の固有振動数ωn/2πに対する重み係数Q、Rで規定された重みを、夫々の加速度指令の特定の周波数成分を0とする方程式(式(1-1)=0)に対して適用した情報である。
Here, the minimum value of the amplitude Amplitude corresponds to the solution at the first time T 1 of the equation with the amplitude Amplitude set to 0 for equation (1-1). That is, the
ここで、CPU31は、加減速時間Tsumに対して方程式(式(1-1)=0)の解が存在するときは、方程式(式(1-1)=0)の解となる値を第一時間T1と決定する。CPU31は、方程式(式(1-1)=0)の第一時間T1の解が複数存在する場合、加減速時間Tsumの1/2に最も近い値を第一時間T1と決定する。これは、複数の解について振動を比較したとき、第一時間T1の時に加速度指令の最大値が最も小さく、加振力も小さいためである。一方、方程式(式(1-1)=0)に解が存在しないときは、振動マップと加減速時間Tsumに基づき、振幅Amplitudeの大きさを最小とする値を第一時間T1と決定する。CPU31は、Tsum-T1テーブルを記憶装置34に記憶する。
Here, when a solution to the equation (formula (1-1)=0) exists for the acceleration/deceleration time Tsum, the
なお、固有振動数ωn/2πが一つの場合、例えば、固有振動数ω1/2πが30Hzの一つの場合、CPU31は、式(1-1)にQ=1、Q=0を代入し、上記した演算を実行する。これにより、CPU31は、振幅マップ、及びTsum-T1テーブルを作成できる。また、固有振動数ω2/2πが50Hzの一つの場合、CPU31は、式(1-1)にQ=0、R=1を代入し、上記した演算を実行する。これにより、CPU31は、振幅マップ、及びTsum-T1テーブルを作成できる。また、CPU31は、固有振動数ωn/2πが一つの場合にもTsum-T1テーブルを記憶装置34に記憶する。
Note that when there is one natural frequency ωn/2π, for example, when there is one natural frequency ω 1 /2π of 30 Hz, the
図8を参照して振動面積マップについて説明する。振動面積マップは、加減速時間Tsumと送り量Lとを変化させた場合に、加減速時間Tsumと送り量Lの組み合わせ毎に発生した振動の大きさの計測値に基づき規定される情報である。なお、第一時間T1はTsum-T1テーブルに基づき決定されるものとする。 The vibration area map will be explained with reference to FIG. The vibration area map is information defined based on the measured value of the magnitude of vibration that occurs for each combination of acceleration/deceleration time Tsum and feed amount L when the acceleration/deceleration time Tsum and feed amount L are changed. . Note that the first time T1 is determined based on the Tsum-T1 table.
振動面積マップを作成する為、作業者は、送り量Lと加減速時間Tsumの組毎に、送り軸指令を実行する。一例として、送り量Lは、0mm~6mmまでの1mmづつ変化させる。加減速時間Tsumは、0.05sec~0.1secまで0.01secづつ変化させる。に示す。 In order to create a vibration area map, the operator executes a feed axis command for each pair of feed amount L and acceleration/deceleration time Tsum. As an example, the feed amount L is changed in 1 mm increments from 0 mm to 6 mm. The acceleration/deceleration time Tsum is changed from 0.05 sec to 0.1 sec in 0.01 sec increments. Shown below.
送り軸指令を実行すると、加速度センサ18は、工作機械1に発生した振動を計測する。振動の計測結果は、例えば、送り量Lを4mm、加減速時間Tsumを0.07、第一時間T1を0.0167としたときの加速度指令を図8(A)に、計測した振動波形を図8(B)に示す。振動波形は、工作機械1に発生した振動の大きさを示す。CPU31は、加速度指令の指令完了後に、計測した振動波形について、位置Displacementの絶対値を所定時間t1に亘って積分する。所定時間t1は、例えば0.3secである。以下、振動波形の積分値は、振動面積という。つまり、振動面積マップに含まれる工作機械1の振動の大きさは、加速度指令の指令完了後に工作機械1に発生した振動の大きさを示す振動波形を、所定時間t1に亘って積分した積分値である。
When the feed axis command is executed, the
作業者は、送り量Lと加減速時間Tsumの組毎に送り軸指令を実行させる。CPU31は、送り軸指令毎に振動面積を演算する。CPU31は、演算した振動面積を、加減速時間Tsumと送り量Lの組に対応付けてプロットしていく。これにより、CPU31は、図8(C)、(D)に示す振動面積マップを得る。
The operator executes a feed axis command for each pair of feed amount L and acceleration/deceleration time Tsum. The
CPU31は、図8(C)、(D)に示す振動面積マップについて、2次元線形補間を実行する。これにより、図8(E)、(F)に示す補間後の振動面積マップを得る。CPU31は、計測を行っていない送り量Lと加減速時間Tsumの組に関する振動面積の情報を取得可能となる。CPU31は、補間後の振動面積マップを記憶装置34に記憶する。
The
図9を参照し、工作機械1を駆動して被削材3を加工する場合を説明する。被削材3の加工時、例えば、作業者は、送り軸指令の送り量Lを4mmとし、且つ許容可能な振動の許容値を0.0003mmに設定した。この場合、CPU31は、記憶装置34に記憶した補間後の振動面積マップ(図8(F)参照)を参照して、送り量Tsumテーブルを作成する(図9(A)参照)。送り量Tsumテーブルは、記憶装置34に記憶した補間後の振動面積マップ(図8(F)参照)から、振動の許容値を示す一点鎖線をプロットしたものである。図9(A)では、一点鎖線は、許容値が0.0003mmの位置を示す。従って、図9(A)に示す送り量Tsumテーブルは、許容値と、送り量Lと、加減速時間Tsumとの関係を示す。
Referring to FIG. 9, a case will be described in which the
ここで、CPU31は、送り量Lが4mmの場合、送り量Tsumテーブルに基づき、許容値を満たす最短の加減速時間Tsumを、0.065secであると決定する(図9(A)参照)。CPU31は、Tsum-T1テーブルを参照し、加減速時間Tsumが0.065secの場合の最適な第一時間T1を、0.0138secであると決定する(図9(B)参照)。
Here, when the feed amount L is 4 mm, the
この場合、加速度指令は、加減速時間Tsumを0.065sec、第一時間T1を0.0138sec、第二時間T2を0.0187sec、第三時間T3を0.0187sec、第四時間T4を0.0138secと決定する。最適化された加速度指令で、工作機械1を駆動することにより、CPU31は、振動を許容値以下に抑制しつつ、最速での駆動が可能となる。
In this case, the acceleration commands include acceleration/deceleration time Tsum of 0.065 sec, first time T 1 of 0.0138 sec, second time T 2 of 0.0187 sec, third time T 3 of 0.0187 sec, and fourth time T 4 is determined to be 0.0138 sec. By driving the
なお、図9(B)に示すTsum-T1テーブルは、工作機械1の固有振動数が30Hz、50Hzの場合である。例えば、工作機械1の固有振動数が30Hz又は50Hzの一つの場合、夫々に対応するTsum-T1テーブルを参照することで、最適な加減速時間Tsumに対する第一時間T1を決定する。
Note that the Tsum-T1 table shown in FIG. 9(B) is for the case where the natural frequencies of the
図10を参照し、事前処理について説明する。事前処理は、後述の主処理を実行する前に実行する。CPU31は、記憶装置34に記憶した事前処理プログラムを読み出して実行することにより、事前処理を実行する。事前処理を実行すると、CPU31は、工作機械1の固有振動数ωn/2πを取得したか否か判断する(S1)。固有振動数ωn/2πを取得していないと判断した場合(S1:NO)、CPU31は、処理を戻して待機する。
The preprocessing will be explained with reference to FIG. 10. The preprocessing is executed before executing the main processing described below. The
作業者は、インパルスハンマにより工作機械1の主軸9をインパルス加振する。CPU31は、インパルス加振を行った後に振幅Amlitudeの周波数特性(図4参照)を演算し、固有振動数ωn/2πを取得する。例えば、固有振動数ω1/2π、ω2/2πは夫々、30Hz、50Hzである(図4参照)。
The operator applies impulse vibration to the main shaft 9 of the
固有振動数ωn/2πを取得したと判断した場合(S1:YES)、CPU31は、固有振動数ωn/2πが複数存在するか否か判断する(S3)。固有振動数ωn/2πが複数存在しないと判断した場合(S3:NO)、CPU31は、一つの固有振動数ωn/2πに基づき、振幅マップを作成する(S9)。例えば、固有振動数ωn/2πが30Hzの場合、CPU31は、30Hzの振幅マップを作成する。CPU31は、処理をS11に進める。
If it is determined that the natural frequency ωn/2π has been obtained (S1: YES), the
固有振動数ωn/2πが複数存在すると判断した場合(S3:YES)、CPU31は、固有振動数ωn/2πごとに重み係数Q、Rを決定する(S5)。例えば、固有振動数ω1/2π、ω2/2πが夫々、30Hz、50Hzである場合(図4参照)、CPU31は、例えば、コンプライアンスの周波数特性(図5参照)を参照して、重み係数Q、Rを決定する。重み係数Q、Rは夫々、0.15、0.85である。
If it is determined that a plurality of natural frequencies ωn/2π exist (S3: YES), the
CPU31は、決定した重み係数Q、Rを用いて、振幅マップを作成する(S7)。この場合、CPU31は、例えば図6(C)に示す振幅マップ(30Hz+50Hz)を作成する。CPU31は、処理をS11に進める。
The
CPU31は、S7の処理又はS9の処理で作成した振幅マップに基づき、Tsum-T1テーブルを作成する(S11)。この場合、CPU31は、例えば、図7に示すTsum-T1テーブルを作成する。CPU31は、作成したTsum-T1テーブルを記憶装置34に記憶する。
The
次いで、作業者は、送り量Lと加減速時間Tsumとの組み合わせに対応する振動面積の演算が完了したか否か判断する(S13)。振動面積の演算が完了していないと判断した場合(S13:NO)、CPU31は、処理を戻して待機する。作業者は、送り量Lと加減速時間Tsumの組毎に送り軸指令を変更して、工作機械1の振動を計測する。CPU31は、送り量Lと加減速時間Tsumの組毎に計測した振動波形に基づき、振動面積の演算を実行する。
Next, the operator determines whether the calculation of the vibration area corresponding to the combination of the feed amount L and the acceleration/deceleration time Tsum has been completed (S13). If it is determined that the calculation of the vibration area has not been completed (S13: NO), the
振動面積の演算が完了したと判断した場合(S13:YES)、CPU31は、振動面積の演算結果に基づき振動面積マップを作成する(S15)。CPU31は、例えば図8(C)、(D)に示す振動面積マップを作成する。ここで、振動面積マップを作成するとは、送り量Lと加減速時間Tsumの2変数に対する振動波形の積分値の関係を取得することをいう。CPU31は、振動面積マップを補間する(S17)。この場合、CPU31は、例えば図8(E)、(F)に示す振動面積マップを作成する。CPU31は、補間後の振動面積マップを記憶装置34に記憶する。CPU31は、処理を終了する。
If it is determined that the vibration area calculation has been completed (S13: YES), the
図11を参照し、主処理について説明する。CPU31は、記憶装置34に記憶した主プログラムを読み出して実行することにより、主処理を実行する。主処理を実行すると、CPU31は、予め入力部16より入力し、記憶装置34に保存してあった設定パラメータより振動の許容値を取得する(S101)。
The main processing will be explained with reference to FIG. The
振動の許容値を取得したと判断した場合(S101:YES)、CPU31は、事前処理で記憶装置34に記憶した振動面積マップと、S101の処理で取得した振動の許容値に基づき、送り量Tsumテーブルを作成する(S103)。振動の許容値は、例えば、0.0003mmである。この場合、CPU31は、例えば、図9(A)に示す送り量Tsumテーブルを作成する。
If it is determined that the permissible value of vibration has been obtained (S101: YES), the
CPU31は、NCプログラム名を入力部より受け付けたか否か判断する(S105)。NCプログラム名を受け付けていないと判断した場合(S105:NO)、CPU31は、処理を戻して待機する。NCプログラム名を受け付けたと判断した場合(S105:YES)、CPU31は、記憶装置34よりNCプログラム名に対応するNCプログラムより、NCプログラムを一行分読み込む(S107)。なお、ここには示されていないがNCプログラムは事前に入力部16より入力し、記憶装置34に保存してあるものとする。
The
CPU31は、NCプログラムのうち読み込んだ一行分が送り軸指令か否か判断する(S109)。送り軸指令ではないと判断した場合(S109:NO)、CPU31は、送り軸指令以外の読み込んだ指令を実行する(S117)。送り軸指令でない場合は、例えば、工具交換指令等である。CPU31は、処理をS119に進める。
The
一方、送り軸指令であると判断した場合(S109:YES)、CPU31は、図12に示す最適化処理を実行する(S111)。最適化処理では、加減速時間Tsum、第一時間T1の最適化を実行する。最適化処理を実行すると、CPU31は、送り軸指令に含まれる送り量Lを取得する(S201)。なお、送り量Lを取得するとは、入力部16で入力した値、又は予め記憶装置34に設定して記憶した値を取得してもよい。送り量Lは、例えば4mmである。
On the other hand, if it is determined that it is a feed axis command (S109: YES), the
CPU31は、加減速時間Tsumを決定する(S203)。この場合、CPU31は、S103の処理で作成した送り量Tsumテーブル(図9(A)参照)を参照して、送り量Lに対応する加減速時間Tsumを決定する。図9(A)に示すように、送り量Lが4mmの場合、最適な加減速時間Tsumは、0.065secである。
The
CPU31は、S203の処理で決定した加減速時間Tsumと、Tsum-T1テーブルに基づき、第一時間T1を決定する(S205)。CPU31は決定した加減速時間Tsumに基づき、記憶装置34に記憶したTsum-T1テーブル(図9(B))を参照して、第一時間T1を決定する。加減速時間Tsumが0.065secの場合、最適な第一時間T1は、0.0138secである(図9(B)参照)。CPU31は、処理を主処理に処理を戻す。
The
CPU31は、最適化処理で決定した第一時間T1と加減速時間Tsumとに基づき、加速度指令を作成する(S113)。この場合、CPU31は、例えば、加減速時間Tsumを0.065sec、第一時間T1を0.0138sec、第二時間T2を0.0187sec、第三時間T3を0.0187sec、第四時間T4を0.0138secとした加速度指令を作成する。
The
CPU31は、作成した加速度指令に基づき、送り軸指令を実行する。すなわち、加速度指令に基づき所定周期毎の目標位置を駆動回路50Aに出力し、送り量Lの移動を行う(S115)。CPU31は、NCプログラムが最終行であるか否か判断する(S119)。NCプログラムが最終行でないと判断した場合(S119:NO)、CPU31は、処理をS107に戻す。NCプログラムが最終行であると判断した場合(S119:YES)、CPU31は、処理を終了する。
The
以上、説明したように、CPU31は、許容値と送り量Lとを取得する。CPU31は、取得した許容値と送り量Lとに基づき、送り量Tsumテーブルを参照して、加減速時間Tsumを決定する。CPU31は決定した加減速時間Tsumに基づき、Tsum-T1テーブルを参照して、第一時間T1を決定する。CPU31は、決定した第一時間T1に基づき、加速度指令を作成する。
As described above, the
数値制御装置30は、決定した加速度指令で工作機械1のモータ50を駆動することにより、モータ50の駆動時に発生する工作機械1の振動を抑制できる。
By driving the
振動面積マップは、加減速時間Tsumと送り量Lとを変化させた場合に、加減速時間Tsumと送り量Lの組み合わせ毎に発生した振動の大きさの計測値に基づき規定される情報である。数値制御装置30では、振動面積マップは、振動を計測した計測値に基づく。故に、数値制御装置30は、計算のみで決定した場合よりも最適な加速度指令を作成できる。
The vibration area map is information defined based on the measured value of the magnitude of vibration that occurs for each combination of acceleration/deceleration time Tsum and feed amount L when the acceleration/deceleration time Tsum and feed amount L are changed. . In the
振動面積マップに含まれる工作機械1の振動の大きさは、加速度指令の指令完了後に工作機械1に発生した振動の大きさを示す振動波形を、所定時間t1に亘って積分した積分値である。数値制御装置30は、振動波形の積分値を用いることで最適な加速度指令を作成できる。
The magnitude of vibration of the
CPU31は、方程式において、加減速時間Tsumに対して方程式の解が存在するときは、方程式の解となる値を第一時間T1と決定する。CPU31は、方程式に解が存在しないときは、特定の周波数成分の大きさを最小とする値を第一時間T1と決定する。数値制御装置30は、方程式の解が無い場合にも、特定の周波数成分の大きさを最小とする値を第一時間T1決定することで最適な加速度指令を作成できる。
In the equation, when a solution to the equation exists for the acceleration/deceleration time Tsum, the
CPU31は、方程式において、加減速時間Tsumに対して特定の周波数成分の大きさを最小とする第一時間T1の解が複数存在する場合、加減速時間Tsumの1/2に最も近い値を第一時間T1と決定する。数値制御装置30は、加減速時間Tsumの1/2に近い値を第一時間T1に決定することで、最適な加速度指令を作成できる。
In the equation, if there are multiple solutions for the first time T1 that minimize the magnitude of a specific frequency component with respect to the acceleration/deceleration time Tsum, the
工作機械1は、複数の固有振動数ωn/2πを有する。Tsum-T1テーブルは、複数の固有振動数ωn/2πに対する重み係数Q、Rで規定された重みを、夫々の加速度指令の特定の周波数成分を0とする方程式に対して適用した情報である。数値制御装置30は、工作機械1が複数の固有振動数ωn/2πを有する場合でも、重み係数Q、Rを適用することで適切に振動を低減できる。
The
本発明は上記実施形態に限定されず、種々の変更が可能である。本発明は、工作機械1の振動を低減したが、これに限らず他の機械装置において上記実施形態の技術を適用してもよい。数値制御装置30のCPU31により事前処理、主処理を実行する場合に限らず、例えばPC等により事前処理、主処理を実行してもよい。該時、PC等により事前処理、主処理を実行することで決定した加速度波形を示す情報を、数値制御装置30に入力してもよい。数値制御装置30は、入力した加速度波形を示す加速度指令により、工作機械1のモータ50を制御してもよい。
The present invention is not limited to the above embodiments, and various modifications are possible. Although the present invention reduces the vibration of the
上記実施形態では、工作機械1の固有振動数が一つ又は2つの場合を説明したがこれに限らない。例えば、工作機械1の固有振動数が3つ以上でもよい。その場合、式(1-1)には、固有振動数に相当する項を増せばよい。この場合でも、重み係数は、上記実施形態と同様の手法で取得できる。
In the above embodiment, the case where the
上記実施形態では、加減速時間Tsumと送り量Lとを変化させた場合に、加減速時間Tsumと送り量Lの組み合わせ毎に発生した振動の大きさを表す振動面積マップを実測により作製したが、これは振動面積マップ作製手段の一例である。例えば、工作機械1の振動特性を表す数値シミュレーションを用いて振動面積マップを作成しても良い。また、加減速時間Tsumと送り量Lを入力として、振動の大きさを出力とする関数を振動面積マップの代わりに用いても良い。
In the above embodiment, when the acceleration/deceleration time Tsum and the feed amount L are changed, a vibration area map representing the magnitude of vibration generated for each combination of the acceleration/deceleration time Tsum and the feed amount L is created by actual measurement. , which is an example of a vibration area map creation means. For example, the vibration area map may be created using a numerical simulation representing the vibration characteristics of the
上記実施形態では、振動面積マップを2次元線形補間により求めたが、これは補間方法の1例である。例えば、NURBS(非一様有理Bスプライン)補間等による曲面補間を行い、振動面積マップを求めても良い。 In the above embodiment, the vibration area map is obtained by two-dimensional linear interpolation, but this is only one example of an interpolation method. For example, a vibration area map may be obtained by performing curved surface interpolation using NURBS (non-uniform rational B-spline) interpolation or the like.
上記実施形態では、方程式において、第一時間T1の解が複数存在する場合、加減速時間Tsumの1/2に最も近い値を第一時間T1と決定したがこれに限らない。例えば、加減速時間Tsumの1/4としてもよいし、他の値を設定してもよい。 In the above embodiment, when there are multiple solutions for the first time T1 in the equation, the value closest to 1/2 of the acceleration/deceleration time Tsum is determined as the first time T1 , but the present invention is not limited thereto. For example, it may be set to 1/4 of the acceleration/deceleration time Tsum, or other values may be set.
上記実施形態では、加減速時間Tsumに対するT1の関係を求めるために方程式を用いたが、これはT1を求める方法の一例である。例えば、図7に示したTsum-T1テーブルを近似する関数を用いることで、加減速時間Tsumに対するT1を求めても良い。 In the embodiment described above, an equation is used to find the relationship between T1 and the acceleration/deceleration time Tsum, but this is an example of a method for finding T1 . For example, T1 for the acceleration/deceleration time Tsum may be determined by using a function that approximates the Tsum-T1 table shown in FIG.
工作機械1は、本発明の「機械装置」の一例である。加減速時間Tsumは、本発明の「合計時間」の一例である。送り量Tsumテーブルは、本発明の「第一情報」の一例である。Tsum-T1テーブルは、本発明の「第二情報」の一例である。記憶装置34は、本発明の「記憶部」の一例である。S101、201の処理は、本発明の「取得手段」の一例である。S203の処理は、本発明の「第一決定手段」の一例である。S205の処理は、本発明の「第二決定手段」の一例である。S113の処理は、本発明の「作成手段」の一例である。
The
1 :工作機械
4 :工具
30 :数値制御装置
31 :CPU
34 :記憶装置
50 :モータ
50A :駆動回路
T1 :第一時間
T2 :第二時間
T3 :第三時間
T4 :第四時間
Tsum :加減速時間
L :送り量
ωn/2π、ω1/2π、ω2/2π :固有振動数
Q、R :重み係数
1: Machine tool 4: Tool 30: Numerical control device 31: CPU
34: Storage device 50:
Claims (7)
前記加速度指令は、
連続する第一期間、第二期間、第三期間、第四期間に亘り前記モータの加速度を制御し、
前記第一期間では、前記モータの加速度が零から第一加速度迄増加し、
前記第二期間では、前記モータの加速度が前記第一加速度から零迄減少し、
前記第三期間では、前記モータの加速度が零から第二加速度迄減少し、
前記第四期間では、前記モータの加速度が前記第二加速度から零迄増加し、
前記第一期間の長さである第一時間、前記第二期間の長さである第二時間、前記第三期間の長さである第三時間、前記第四期間の長さである第四時間の内、前記第一時間と前記第四時間とが同一であり、且つ、前記第二時間と前記第三時間とが同一であり、
前記機械装置の振動の大きさの許容値と、前記機械装置の送り量と、前記第一時間、前記第二時間、前記第三時間、及び前記第四時間の合計時間との関係を示す第一情報、及び、前記合計時間と前記第一時間との関係を示す第二情報とを記憶する記憶部と、
前記許容値と前記送り量とを取得する取得手段と、
前記取得手段により取得した前記許容値と前記送り量とに基づき、前記記憶部に記憶した前記第一情報を参照して、前記合計時間を決定する第一決定手段と、
前記第一決定手段により特定した前記合計時間に基づき、前記記憶部に記憶した前記第二情報を参照して、前記第一時間を決定する第二決定手段と、
前記第二決定手段により決定した前記第一時間に基づき、前記加速度指令を作成する作成手段と
を備えたことを特徴とする数値制御装置。 A numerical control device that drives a mechanical device by driving a motor based on an acceleration command,
The acceleration command is
Controlling the acceleration of the motor over successive first, second, third, and fourth periods;
In the first period, the acceleration of the motor increases from zero to a first acceleration,
in the second period, the acceleration of the motor decreases from the first acceleration to zero;
In the third period, the acceleration of the motor decreases from zero to a second acceleration,
In the fourth period, the acceleration of the motor increases from the second acceleration to zero,
A first time that is the length of the first period, a second time that is the length of the second period, a third time that is the length of the third period, and a fourth time that is the length of the fourth period. Among the times, the first time and the fourth time are the same, and the second time and the third time are the same,
a third time indicating the relationship between the permissible value of the vibration magnitude of the mechanical device, the feed amount of the mechanical device, and the total time of the first time, the second time, the third time, and the fourth time; a storage unit that stores one information and second information indicating a relationship between the total time and the first time;
acquisition means for acquiring the tolerance value and the feed amount;
a first determining means for determining the total time based on the allowable value and the feed amount acquired by the acquiring means, with reference to the first information stored in the storage unit;
a second determining unit that determines the first time based on the total time specified by the first determining unit and with reference to the second information stored in the storage unit;
and creating means for creating the acceleration command based on the first time determined by the second determining means.
ことを特徴とする請求項1に記載の数値制御装置。 The first information is information defined based on a measured value of the magnitude of the vibration that occurs for each combination of the total time and the feed amount when the total time and the feed amount are changed. The numerical control device according to claim 1, characterized in that:
ことを特徴とする請求項2に記載の数値制御装置。 The magnitude of the vibration of the mechanical device included in the first information is an integral obtained by integrating over a predetermined time a vibration waveform indicating the magnitude of the vibration generated in the mechanical device after the completion of the acceleration command. The numerical control device according to claim 2, wherein the numerical control device is a value.
前記第二決定手段は、前記方程式において、前記合計時間に対して前記方程式の解が存在するときは、前記方程式の解となる値を前記第一時間と決定し、前記方程式に解が存在しないときは、前記特定の周波数成分の大きさを最小とする値を前記第一時間と決定する
ことを特徴とする請求項1~3の何れか一つに記載の数値制御装置。 The second information is information defined based on an equation that sets a specific frequency component of the acceleration command to 0 for the total time,
In the equation, when a solution to the equation exists for the total time, the second determining means determines a value that is a solution to the equation as the first time, and if there is no solution to the equation. 4. The numerical control device according to claim 1, wherein the first time is determined to be a value that minimizes the magnitude of the specific frequency component.
前記第二決定手段は、前記方程式において、前記合計時間に対して前記特定の周波数成分の大きさを最小とする前記第一時間の解が複数存在する場合、前記合計時間の1/2に最も近い値を前記第一時間と決定する
ことを特徴とする請求項1~4の何れか一つに記載の数値制御装置。 The second information is information defined based on an equation that sets a specific frequency component of the acceleration command to 0 for the total time,
In the equation, when there is a plurality of solutions for the first time that minimize the magnitude of the specific frequency component with respect to the total time, the second determining means determines the solution that is the best at 1/2 of the total time. The numerical control device according to any one of claims 1 to 4, characterized in that a value close to the first time is determined as the first time.
前記第二情報は、前記複数の固有振動数に対する重み係数で規定された重みを、夫々の前記加速度指令の特定の周波数成分を0とする方程式に対して適用した情報である
ことを特徴とする請求項1~5の何れか一つに記載の数値制御装置。 The mechanical device has a plurality of natural frequencies,
The second information is characterized in that a weight defined by a weighting coefficient for the plurality of natural frequencies is applied to an equation in which a specific frequency component of each acceleration command is set to 0. A numerical control device according to any one of claims 1 to 5.
前記加速度指令は、
連続する第一期間、第二期間、第三期間、第四期間に亘り前記モータの加速度を制御し、
前記第一期間では、前記モータの加速度が零から第一加速度迄増加し、
前記第二期間では、前記モータの加速度が前記第一加速度から零迄減少し、
前記第三期間では、前記モータの加速度が零から第二加速度迄減少し、
前記第四期間では、前記モータの加速度が前記第二加速度から零迄増加し、
前記第一期間の長さである第一時間、前記第二期間の長さである第二時間、前記第三期間の長さである第三時間、前記第四期間の長さである第四時間の内、前記第一時間と前記第四時間とが同一であり、且つ、前記第二時間と前記第三時間とが同一であり、
前記数値制御装置は、
前記機械装置の振動の大きさの許容値と、前記機械装置の送り量と、前記第一時間、前記第二時間、前記第三時間、及び前記第四時間の合計時間との関係を示す第一情報、及び、前記合計時間と前記第一時間との関係を示す第二情報とを記憶する記憶部
を備え、
前記許容値と前記送り量とを取得する取得ステップと、
前記取得ステップにより取得した前記許容値と前記送り量とに基づき、前記記憶部に記憶した前記第一情報を参照して、前記合計時間を決定する第一決定ステップと、
前記第一決定ステップにより特定した前記合計時間に基づき、前記記憶部に記憶した前記第二情報を参照して、前記第一時間を決定する第二決定ステップと、
前記第二決定ステップにより決定した前記第一時間に基づき、前記加速度指令を作成する作成ステップと
を備えたことを特徴とする数値制御装置の制御方法。 A method for controlling a numerical control device that drives a mechanical device by driving a motor based on an acceleration command, the method comprising:
The acceleration command is
Controlling the acceleration of the motor over successive first, second, third, and fourth periods;
In the first period, the acceleration of the motor increases from zero to a first acceleration,
in the second period, the acceleration of the motor decreases from the first acceleration to zero;
In the third period, the acceleration of the motor decreases from zero to a second acceleration,
In the fourth period, the acceleration of the motor increases from the second acceleration to zero,
A first time that is the length of the first period, a second time that is the length of the second period, a third time that is the length of the third period, and a fourth time that is the length of the fourth period. Among the times, the first time and the fourth time are the same, and the second time and the third time are the same,
The numerical control device includes:
a third time indicating the relationship between the permissible value of the vibration magnitude of the mechanical device, the feed amount of the mechanical device, and the total time of the first time, the second time, the third time, and the fourth time; and second information indicating a relationship between the total time and the first time,
an acquisition step of acquiring the tolerance value and the feed amount;
a first determining step of determining the total time by referring to the first information stored in the storage unit based on the allowable value and the feed amount acquired in the acquiring step;
a second determining step of determining the first time based on the total time specified in the first determining step, with reference to the second information stored in the storage unit;
A method for controlling a numerical control device, comprising: a creation step of creating the acceleration command based on the first time determined in the second determination step.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022058561A JP2023149799A (en) | 2022-03-31 | 2022-03-31 | Numerical control device, and control method of numerical control device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022058561A JP2023149799A (en) | 2022-03-31 | 2022-03-31 | Numerical control device, and control method of numerical control device |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2023149799A true JP2023149799A (en) | 2023-10-16 |
Family
ID=88326973
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022058561A Pending JP2023149799A (en) | 2022-03-31 | 2022-03-31 | Numerical control device, and control method of numerical control device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2023149799A (en) |
-
2022
- 2022-03-31 JP JP2022058561A patent/JP2023149799A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6107306B2 (en) | Numerical control apparatus and drive control method | |
JP6316323B2 (en) | Motor control device | |
CN111123842B (en) | Numerical controller | |
JP6439542B2 (en) | Numerical control device and control method | |
JP5705074B2 (en) | Method and apparatus for monitoring rotational speed of rotating shaft in machine tool, machine tool | |
JP6693013B2 (en) | Vibration suppressing device and vibration suppressing method | |
JP6311635B2 (en) | Numerical control device and control method | |
JP6903485B2 (en) | Vibration damping device and processing machine | |
JP7230872B2 (en) | Numerical controller and numerical control method | |
JP6893792B2 (en) | Machine tools and vibration suppression methods | |
JP7020649B2 (en) | Vibration suppression device and vibration suppression method | |
JP5321515B2 (en) | Numerical control device for machine tools | |
JP5862111B2 (en) | Machining data correction method | |
JP7390643B2 (en) | Vibration suppression method and vibration suppression device | |
JP2023149799A (en) | Numerical control device, and control method of numerical control device | |
JP2019082771A (en) | Numerical controller and control method | |
JP2021070089A (en) | Monitor device and monitor method for rotation speed of spindle in machine tool, and machine tool | |
JP6647422B2 (en) | Feed axis control method and feed axis control device for machine tool | |
JP6582814B2 (en) | Numerical controller and lost motion compensation method for numerical controller | |
JP2022131354A (en) | Vibration suppression method, vibration suppression device, and machine tool | |
JP2019175027A (en) | Numerical value control device and control method | |
CN112305996B (en) | Numerical control device and control method | |
JP2020160830A (en) | Numerical control device, machine tool, control program, and storage medium | |
JP7039772B1 (en) | Display devices, machine tools, and display methods | |
JP7238673B2 (en) | Numerical controller and control method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20221026 |