[go: up one dir, main page]

JP5350766B2 - Numerical control device for 5-axis machine - Google Patents

Numerical control device for 5-axis machine Download PDF

Info

Publication number
JP5350766B2
JP5350766B2 JP2008316865A JP2008316865A JP5350766B2 JP 5350766 B2 JP5350766 B2 JP 5350766B2 JP 2008316865 A JP2008316865 A JP 2008316865A JP 2008316865 A JP2008316865 A JP 2008316865A JP 5350766 B2 JP5350766 B2 JP 5350766B2
Authority
JP
Japan
Prior art keywords
tool
point
axis
command
singular point
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.)
Active
Application number
JP2008316865A
Other languages
Japanese (ja)
Other versions
JP2010140312A (en
Inventor
俊明 大槻
聡一郎 井出
尚 塩原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fanuc Corp
Original Assignee
Fanuc Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fanuc Corp filed Critical Fanuc Corp
Priority to JP2008316865A priority Critical patent/JP5350766B2/en
Publication of JP2010140312A publication Critical patent/JP2010140312A/en
Application granted granted Critical
Publication of JP5350766B2 publication Critical patent/JP5350766B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Numerical Control (AREA)

Description

本発明は、テーブルに固定されて取り付けられたワーク(加工物)に対して直線軸3軸と回転軸2軸によって加工する5軸加工機を制御する数値制御装置に関する。   The present invention relates to a numerical control device for controlling a 5-axis processing machine that processes a workpiece (workpiece) fixed and attached to a table using three linear axes and two rotation axes.

テーブルに取り付けられたワーク(加工物)を直線軸3軸と回転軸2軸によって加工する5軸加工機を制御する数値制御装置において、各軸の座標値を制御する方法として、工具の位置、工具とワークの相対的な姿勢(以下「工具姿勢」という)、および速度をテーブルに固定された直交座標系(テーブル座標系)上で指令し、これを機械の制御点における各軸の座標値に座標変換して制御する方法である工具先端点制御が知られている(特許文献1参照)。   In a numerical control apparatus for controlling a 5-axis processing machine that processes a workpiece (workpiece) attached to a table with three linear axes and two rotary axes, as a method for controlling the coordinate value of each axis, the tool position, The relative posture of the tool and workpiece (hereinafter referred to as “tool posture”) and speed are commanded on an orthogonal coordinate system (table coordinate system) fixed to the table, and this is the coordinate value of each axis at the machine control point. Tool tip point control is known, which is a method of controlling by converting the coordinates to (see Patent Document 1).

工具先端点制御では、工具の位置と速度が制御され、工具姿勢は各回転軸の位置を補間することによって決定される。工具先端点制御では工具先端点の位置と速度が制御されるが、回転軸2軸は独立して制御されており、指令ブロック途中での工具姿勢は制御されない。   In the tool tip point control, the position and speed of the tool are controlled, and the tool posture is determined by interpolating the position of each rotation axis. In the tool tip point control, the position and speed of the tool tip point are controlled, but the two rotation axes are controlled independently, and the tool posture in the middle of the command block is not controlled.

これに対し、指令ブロック始点と指令ブロック終点の間における工具姿勢を、指令ブロック始点と指令ブロック終点における指令回転軸位置に基づいて計算される工具姿勢を含む平面内に存在するようにサンプリング周期ごとに回転軸位置と直線軸位置を制御する方法である工具姿勢制御も知られている。   On the other hand, the tool posture between the command block start point and the command block end point is set at every sampling period so that it exists in a plane including the tool posture calculated based on the command rotation axis position at the command block start point and the command block end point. In addition, tool attitude control, which is a method for controlling the rotational axis position and the linear axis position, is also known.

工具姿勢制御では、図1に示されるように、指令ブロック途中の工具1の工具姿勢は、指令ブロック始点と終点の工具姿勢を含む平面内を移動し、工具先端点は直線上を移動する(工具先端点の軌跡)ことから、工具姿勢制御はこの直線を含む平面(加工平面)を工具の側面で加工する用途に使用される。また工具姿勢制御は工具姿勢の変化が予測しやすいため、機械構造物と工具との予期しない干渉や衝突を防ぐことができる。   In the tool posture control, as shown in FIG. 1, the tool posture of the tool 1 in the middle of the command block moves in a plane including the command block start point and end point tool posture, and the tool tip point moves on a straight line ( Therefore, the tool attitude control is used for the purpose of machining a plane including this straight line (machining plane) on the side surface of the tool. In addition, since the tool posture control can easily predict a change in the tool posture, unexpected interference and collision between the machine structure and the tool can be prevented.

一方、工具姿勢制御では、工具姿勢を指令ブロックの始点と終点の工具姿勢を含む平面内に保つために、回転軸2軸の動作が不安定になる場合がある。例えば、回転軸2軸のうち1軸の位置が任意となる特異点(特異点姿勢)が存在する機械において工具姿勢制御を行っているときに、指令ブロック途中の工具姿勢が特異点を通過する指令を行い、テーブル座標系で指令された速度で工具を動作させた場合、特異点において回転軸の速度や加速度が非常に大きくなる場合がある(後述する図6参照)。   On the other hand, in the tool posture control, the operation of the two rotation axes may become unstable in order to keep the tool posture within a plane including the tool posture at the start point and the end point of the command block. For example, when tool posture control is performed in a machine having a singular point (singular point posture) where the position of one of the two rotation axes is arbitrary, the tool posture in the middle of the command block passes the singular point. When a command is issued and the tool is operated at a speed commanded in the table coordinate system, the speed and acceleration of the rotating shaft may become very large at a singular point (see FIG. 6 described later).

特許文献2には、上記工具姿勢制御が有する問題点を解決するために、工具の姿勢誤差が姿勢誤差許容値以下となるように特異点近傍の範囲を決定し、その範囲では工具先端点制御を行い、それ以外の範囲では工具姿勢制御を行うことにより、工具姿勢誤差は要求精度を満たしながら、特異点における速度や加速度を抑え、かつ工具の移動時間を出来るだけ短縮しようとする技術が開示されている。   In Patent Document 2, in order to solve the problems of the tool posture control, a range near the singular point is determined so that the posture error of the tool is equal to or less than the posture error allowable value. The tool posture control is performed in other ranges, and the technology to reduce the speed and acceleration at the singular point and reduce the tool movement time as much as possible while the tool posture error satisfies the required accuracy is disclosed. Has been.

特開2003−195917号公報Japanese Patent Laid-Open No. 2003-195917 特開2004−220435号公報JP 2004-220435 A

背景技術で説明した特許文献2に開示される工具姿勢制御が有する問題点を解決する技術では、工具先端点制御と工具姿勢制御の切り換え部分で工具姿勢が滑らかに変化しない。または特異点付近での工具姿勢誤差は許容値内ではあるが許容値そのものの誤差を持つといった問題がある。   In the technique for solving the problems of the tool posture control disclosed in Patent Document 2 described in the background art, the tool posture does not change smoothly at the switching portion between the tool tip point control and the tool posture control. Alternatively, there is a problem that the tool posture error near the singular point is within the allowable value but has the error of the allowable value itself.

実際の加工では加工物や加工場所により、多少の工具姿勢誤差は認めるが工具姿勢を滑らかに変化させたい、または許容値はあるものの工具姿勢誤差を出来るだけ小さくしたいといった要求がある。
そこで本発明の目的は、工具姿勢制御において特異点を通過すると判断した場合には、特異点における回転軸の速度や加速度の非常に大きな移動変動を回避可能な5軸加工機用数値制御装置を提供することである。
In actual machining, some tool posture errors are recognized depending on the work piece and the machining location, but there is a demand to change the tool posture smoothly or to make the tool posture error as small as possible although there is an allowable value.
Therefore, an object of the present invention is to provide a numerical control device for a 5-axis machine capable of avoiding a very large movement fluctuation of the rotational axis speed and acceleration at a singular point when it is determined that the singular point is passed in the tool posture control. Is to provide.

本願の請求項1に係る発明は、直線軸3軸と工具傾斜用回転軸と工具回転用回転軸の回転軸2軸を有する5軸加工機を工具姿勢制御してテーブルに固定されたワークを工具により加工するための指令解析部と補間処理部を有する5軸加工機用数値制御装置において、該工具姿勢制御は、指令ブロックの指令ブロック始点と指令ブロック終点の間における前記ワークに対する前記工具の姿勢が、該指令ブロック始点と該指令ブロック終点における指令回転軸位置に基づいて計算される工具姿勢を含む平面内に存在するようにサンプリング周期毎に前記直線軸3軸と前記回転軸2軸を制御する制御であって、該指令解析部は特異点通過判断部を有し、該特異点通過判断部は、該指令ブロック始点での指令と該指令ブロック終点での指令に基づく計算によって、該指令ブロックにおいて該工具回転用回転軸が任意の位置となる特異点または工具姿勢が該特異点での工具姿勢に対して設定値より近くなる特異点近傍を通過するか否かを判断し、該指令解析部は特異点動作回避準備部を有し、該特異点動作回避準備部は、該特異点通過判断部において該特異点または該特異点近傍を通過すると判断された場合には、該指令ブロック全体に渡って前記工具回転用回転軸を移動させ、かつ前記工具傾斜用回転軸が本来特異点に到達すべき時刻にあらかじめ決められた角度になるように該指令ブロック始点から該指令ブロック終点に向かって前記工具傾斜用回転軸を移動させることにより工具姿勢を滑らかに変化させるように該指令ブロック全体の指令工具経路を変更した工具経路を作成し、該補間処理部は特異点動作回避部を有し、該特異点動作回避部は、該特異点動作回避準備部で変更された工具経路を実行することを特徴とする5軸加工機用数値制御装置である。 In the invention according to claim 1 of the present application, a workpiece fixed on a table is controlled by a tool orientation control of a 5-axis processing machine having three linear axes, a tool tilting rotary axis, and a tool rotating rotary axis. In a numerical control device for a 5-axis machine having a command analysis unit and an interpolation processing unit for machining with a tool, the tool posture control is performed by the tool with respect to the workpiece between a command block start point and a command block end point of a command block. The three linear axes and the two rotary axes are set for each sampling period so that the attitude exists in a plane including the tool attitude calculated based on the command rotation axis position at the command block start point and the command block end point. The command analysis unit includes a singular point passage determination unit, and the singular point passage determination unit is configured to perform a calculation based on a command at the command block start point and a command at the command block end point. To determine whether or not the singular point or the tool posture at which the rotation axis for tool rotation is at an arbitrary position in the command block passes near the singular point near the set value with respect to the tool posture at the singular point. The command analysis unit has a singular point motion avoidance preparation unit, and when the singular point motion avoidance preparation unit determines that the singular point passage determination unit passes the singular point or the vicinity of the singular point, The tool rotation axis is moved over the entire command block, and the tool block rotation axis is moved from the command block start point so as to have a predetermined angle at the time when the tool rotation axis should originally reach the singular point. towards the command end of the block to create a tool path changing command tool path of the entire finger old block to smoothly vary the tool attitude by moving the shaft rotating the tool inclination, between該補In the numerical control device for a 5-axis machine, the physics unit includes a singular point motion avoidance unit, and the singular point motion avoidance unit executes the tool path changed by the singular point motion avoidance preparation unit. is there.

請求項2に係る発明は、該特異点動作回避準備部は、工具姿勢誤差が工具姿勢誤差許容値以下となるように該工具傾斜用回転軸が2次曲線を描き、かつ該工具回転用回転軸が該指令ブロック全体で線形に移動するよう該工具傾斜用回転軸と該工具回転用回転軸の工具経路を変更した工具経路を作成することを特徴とする請求項1に記載の5軸加工機用数値制御装置である。 According to a second aspect of the invention, the singular point motion avoidance preparing section draws a quadratic curve for the tool tilt rotation axis so that the tool posture error is less than the tool posture error allowable value , and the rotation for tool rotation. 2. The 5-axis machining according to claim 1, wherein a tool path is created by changing the tool tilt rotation axis and the tool path of the tool rotation rotation axis so that the axis moves linearly throughout the command block. 3. It is a machine numerical control device.

請求項3に係る発明は、直線軸3軸と工具傾斜用回転軸と工具回転用回転軸の回転軸2軸を有する5軸加工機を工具姿勢制御してテーブルに固定されたワークを工具により加工するための指令解析部と補間処理部を有する5軸加工機用数値制御装置において、該工具姿勢制御は、指令ブロックの指令ブロック始点と指令ブロック終点の間における前記ワークに対する前記工具の姿勢が、該指令ブロック始点と該指令ブロック終点における指令回転軸位置に基づいて計算される工具姿勢を含む平面内に存在するようにサンプリング周期毎に前記直線軸3軸と前記回転軸2軸を制御する制御であって、該指令解析部は特異点通過判断部を有し、該特異点通過判断部は、該指令ブロック始点での指令と該指令ブロック終点での指令に基づく計算によって、該指令ブロックにおいて該工具回転用回転軸が任意の位置となる特異点または工具姿勢が該特異点での工具姿勢に対して設定値より近くなる特異点近傍を通過するか否かを判断し、該指令解析部は特異点動作回避準備部を有し、該特異点動作回避準備部は、該特異点通過判断部において該特異点または該特異点近傍を通過すると判断された場合には、該工具回転用回転軸の移動がなくなるような該工具傾斜用回転軸のブロック終点を計算することによって指令ブロック終点における工具姿勢が指令回転軸位置に基づいて計算される工具姿勢と同じ工具姿勢となるように該指令ブロック全体の工具経路を変更した工具経路を作成し、該補間処理部は特異点動作回避部を有し、該特異点動作回避部は、該特異点動作回避準備部で変更された工具経路を実行することを特徴とする5軸加工機用数値制御装置である。 According to a third aspect of the present invention, a workpiece fixed to a table is controlled by a tool by controlling a tool posture of a 5-axis machining tool having three rotation axes, ie, three linear axes, a tool tilting rotation axis, and a tool rotation rotation axis. In a numerical control device for a 5-axis machine having a command analysis unit and an interpolation processing unit for machining, the tool posture control is performed such that a posture of the tool with respect to the workpiece between a command block start point and a command block end point of a command block is determined. The three linear axes and the two rotary axes are controlled for each sampling period so that the axes exist in a plane including the tool posture calculated based on the command rotary axis positions at the command block start point and the command block end point. The command analysis unit includes a singular point passage determination unit, and the singular point passage determination unit performs calculation based on a command at the command block start point and a command at the command block end point. Then, in the command block, it is determined whether or not the singular point or the tool posture at which the rotation axis for tool rotation is at an arbitrary position passes near the singular point near the set value with respect to the tool posture at the singular point. The command analysis unit has a singular point motion avoidance preparation unit, and when the singular point motion avoidance preparation unit determines that the singular point passage determination unit passes the singular point or the vicinity of the singular point, The tool posture at which the tool posture at the command block end point is calculated based on the command rotation axis position by calculating the block end point of the tool tilting rotation shaft so that the movement of the tool rotation shaft is eliminated. The tool path is created by changing the tool path of the entire command block so that the interpolation processing unit has a singular point operation avoidance unit, and the singular point operation avoidance unit is the singular point operation avoidance preparation unit. changed It is a 5-axis machine for numerical control apparatus characterized by performing the immediately path.

本発明により、工具姿勢制御において特異点を通過すると判断した場合には、特異点における回転軸の速度や加速度の非常に大きな移動を回避可能な数値制御装置を提供することができる。   According to the present invention, when it is determined that a singular point is passed in the tool posture control, it is possible to provide a numerical control device capable of avoiding a very large movement of the rotational axis speed and acceleration at the singular point.

以下、本発明の実施形態を図面と共に説明する。
図2は、工具ヘッドが回転する形式の5軸加工機の説明図である。
5軸加工機は2つの回転軸A軸とC軸を有する。A軸はX軸方向を回転中心軸としワークに対して工具1の姿勢を傾斜させる軸である。C軸はZ軸方向を回転中心軸としワークに対して工具1の姿勢を回転させる軸である。符号3は機械制御点を表している。工具先端点から機械制御点3までの距離を工具長とする。ワークWはテーブル4上に固定して取り付けられている。図2では、2つの回転軸A軸、C軸ともにその位置が0度のときの状態を表している。A軸の位置が0度のときC軸の位置(角度)が何度であっても工具姿勢は変化しない。
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
FIG. 2 is an explanatory diagram of a five-axis machine with a tool head rotating.
The 5-axis machine has two rotation axes A and C. The A-axis is an axis that tilts the posture of the tool 1 with respect to the workpiece with the X-axis direction as the rotation center axis. The C-axis is an axis that rotates the posture of the tool 1 relative to the workpiece with the Z-axis direction as the rotation center axis. Reference numeral 3 represents a machine control point. The distance from the tool tip point to the machine control point 3 is defined as the tool length. The workpiece W is fixedly mounted on the table 4. FIG. 2 shows a state where the positions of the two rotation axes A and C are 0 degrees. When the position of the A axis is 0 degree, the tool posture does not change no matter how many times the position (angle) of the C axis is.

このように5軸加工機は、工具姿勢を制御する回転軸2軸を有する。このうち1軸は工具姿勢を傾斜させる働きがあり、他の1軸は工具姿勢を回転させる働きがある。以後、前者を回転軸1、後者を回転軸2と呼ぶ。回転軸1の位置を調節し、工具軸方向を回転軸2の回転中心軸と平行にするとき、回転軸2の位置は工具姿勢に影響を与えなくなる。このときの回転軸1の位置を特異点と呼ぶ。   As described above, the 5-axis processing machine has two rotation axes for controlling the tool posture. Of these, one axis has a function of tilting the tool posture, and the other one axis has a function of rotating the tool posture. Hereinafter, the former is referred to as a rotating shaft 1 and the latter is referred to as a rotating shaft 2. When the position of the rotary shaft 1 is adjusted and the tool axis direction is parallel to the rotation center axis of the rotary shaft 2, the position of the rotary shaft 2 does not affect the tool posture. The position of the rotating shaft 1 at this time is called a singular point.

図3は、本発明のアルゴリズムを実施する数値制御装置の要部ブロック図である。CPU11は数値制御装置10を全体的に制御するプロセッサである。CPU11はバス23を介してROM,RAM,不揮発性メモリなどで構成されるメモリ12、PMC(プログラマブル・マシン・コントローラ)13、CRTや液晶表示器で構成される表示器14、キーボード等の各種指令やデータを入力するための入力機器15、外部記憶媒体やホストコンピュータ等に接続されるインタフェース16、工作機械の各軸制御回路17(図では5軸分を備えた例を示している)、スピンドル制御回路20に接続されている。CPU11は、メモリ12を構成するROM(図示省略)に格納されたシステムプログラムを、バス23を介して読み出し、該システムプログラムに従って数値制御装置全体を制御する。   FIG. 3 is a principal block diagram of a numerical controller that implements the algorithm of the present invention. The CPU 11 is a processor that controls the numerical controller 10 as a whole. The CPU 11 has various commands such as a memory 12 composed of ROM, RAM, non-volatile memory, a PMC (programmable machine controller) 13, a display 14 composed of a CRT or a liquid crystal display, a keyboard, etc. via a bus 23. And an input device 15 for inputting data, an interface 16 connected to an external storage medium or a host computer, each axis control circuit 17 of a machine tool (in the figure, an example having five axes is shown), a spindle It is connected to the control circuit 20. The CPU 11 reads out a system program stored in a ROM (not shown) constituting the memory 12 via the bus 23 and controls the entire numerical control device according to the system program.

PMC13は数値制御装置10に内蔵されたシーケンスプログラムで制御対象物の加工機の補助装置に信号を出力し、または該補助装置からの信号を入力し制御する。また、数値制御装置で制御される加工機の本体に配備された操作盤の各種スイッチ等の信号を受け、必要な信号処理をした後、CPU11に渡す。   The PMC 13 is a sequence program built in the numerical controller 10 and outputs a signal to an auxiliary device of a processing machine as an object to be controlled, or inputs and controls a signal from the auxiliary device. Further, it receives signals from various switches on the operation panel provided in the main body of the processing machine controlled by the numerical control device, performs necessary signal processing, and then passes them to the CPU 11.

各軸(5軸)の軸制御回路17はCPU11から各軸に補間分配された移動指令量を受けて、各軸の指令をサーボアンプ18に出力する。サーボアンプ18はこの指令を受けて、工作機械の各軸のサーボモータ19を駆動する。各軸のサーボモータ19は位置・速度検出器を内蔵し、この位置・速度検出器からの位置・速度フィードバック信号を軸制御回路17にフィードバックし、位置・速度のフィードバック制御を行う。なお、図3では位置・速度のフィードバックについては記載を省略している。   The axis control circuit 17 for each axis (5 axes) receives a movement command amount interpolated and distributed to each axis from the CPU 11 and outputs a command for each axis to the servo amplifier 18. In response to this command, the servo amplifier 18 drives the servo motor 19 for each axis of the machine tool. The servo motor 19 for each axis has a built-in position / speed detector, and feeds back a position / speed feedback signal from the position / speed detector to the axis control circuit 17 to perform position / speed feedback control. In FIG. 3, the position / speed feedback is not shown.

スピンドル制御回路20は主軸回転指令を受け、スピンドルアンプ21にスピンドル速度信号を出力する。スピンドルアンプ21はスピンドル速度信号を受けて、スピンドルモータ22を指令された回転速度で回転させる。又、ポジションコーダ(図示省略)で主軸の回転速度を検出しスピンドル制御回路20にフィードバックし、速度制御を行う。
上述した数値制御装置10の構成は、従来の5軸制御の数値制御装置と変わりはない。
The spindle control circuit 20 receives a spindle rotation command and outputs a spindle speed signal to the spindle amplifier 21. The spindle amplifier 21 receives the spindle speed signal and rotates the spindle motor 22 at the commanded rotational speed. Further, the rotational speed of the spindle is detected by a position coder (not shown) and fed back to the spindle control circuit 20 for speed control.
The configuration of the numerical control device 10 described above is the same as that of the conventional 5-axis control numerical control device.

図4は、本発明の実施形態を説明する機能ブロック図である。指令解析部30は、加工プログラムを解析し実行形式に変換し、補間処理部31で補間処理を行い各軸へ移動指令を出力する。各軸用加減速部34a〜34eでは移動指令に対して加減速処理を行い、処理後の各軸移動指令に基づきそれぞれサーボ制御35a〜35eを行い、位置、速度、電流のフィードバックを行って各軸サーボモータを駆動制御する。
本発明は、指令解析部30が特異点通過判断部36、特異点動作回避準備部37を有し、補間処理部31が特異点動作回避部38を有する点で従来の数値制御装置と相違する。
FIG. 4 is a functional block diagram illustrating the embodiment of the present invention. The command analysis unit 30 analyzes the machining program, converts it into an execution format, performs interpolation processing in the interpolation processing unit 31, and outputs a movement command to each axis. Each of the axis acceleration / deceleration units 34a to 34e performs acceleration / deceleration processing on the movement command, performs servo control 35a to 35e based on each axis movement command after processing, and performs feedback of position, speed, and current. Drives and controls the axis servo motor.
The present invention is different from the conventional numerical control device in that the command analysis unit 30 includes a singular point passage determination unit 36 and a singular point operation avoidance preparation unit 37, and the interpolation processing unit 31 includes a singular point operation avoidance unit 38. .

次に、特異点通過判断部36について説明する。まず、理解を助けるために図5に示される加工プログラムの一例を説明する。
ブロックN10は、工具姿勢制御を指令するブロックである。「G43.4 P1」は工具姿勢制御の開始を意味し、「H01」は工具長補正番号指定を意味する。
ブロックN20は、始点への位置決めを指令するブロックである。「G90」はアブソリュート指令であり、「G01」は直線補間、「X,Y,Z,A,C」は各軸を意味し、「F」はワークに対する工具先端点の移動速度を意味する。つまり、X軸は0.0mm、Y軸は0.0mm、Z軸は0.0mm、A軸は−20.0度、C軸は0.0度の位置へ、速度600mm/分で直線補間で移動することを表している。
ブロックN30は、X軸が40.0mm、A軸が−20.0度、C軸が180.0度まで移動させる指令である。
Next, the singularity passage determination unit 36 will be described. First, in order to help understanding, an example of the machining program shown in FIG. 5 will be described.
The block N10 is a block for instructing tool posture control. “G43.4 P1” means the start of the tool posture control, and “H01” means the tool length correction number designation.
The block N20 is a block that commands positioning to the start point. “G90” is an absolute command, “G01” means linear interpolation, “X, Y, Z, A, C” means each axis, and “F” means the moving speed of the tool tip point relative to the workpiece. In other words, linear interpolation is performed at a speed of 600 mm / min to a position of 0.0 mm for the X axis, 0.0 mm for the Y axis, 0.0 mm for the Z axis, -20.0 degrees for the A axis, and 0.0 degrees for the C axis. It represents moving.
Block N30 is a command for moving the X axis to 40.0 mm, the A axis to -20.0 degrees, and the C axis to 180.0 degrees.

図6は本発明の機能を用いない従来技術である工具姿勢制御により、図5に示される加工プログラムを図2に示される5軸加工機で実行したときの、ブロックN30の指令ブロック開始時刻からの経過時間に対するA軸、C軸の位置(角度)の変化をグラフにしたものである。また、図7は、機械の動作を工具1と工具取付部2だけ取り出し機械の上方から見た図である。加工プログラムで直線軸の移動が指令された場合には工具1は移動するが、ここでは工具1の工具姿勢のみに着目するために、工具先端点の位置をテーブル座標系原点に固定して考える。   FIG. 6 shows the command block start time of block N30 when the machining program shown in FIG. 5 is executed by the 5-axis machine shown in FIG. 2 by the tool attitude control which is a conventional technique not using the function of the present invention. The graph shows the change in the position (angle) of the A axis and the C axis with respect to the elapsed time. FIG. 7 is a view of the operation of the machine with only the tool 1 and the tool mounting portion 2 taken out and viewed from above the machine. When the movement of the linear axis is commanded by the machining program, the tool 1 moves. Here, however, in order to focus only on the tool posture of the tool 1, the position of the tool tip point is fixed at the origin of the table coordinate system. .

図8は、機械上方からみた機械制御点3の移動のみを表した図である。図8は図7をさらに簡略化した図である。ここで点Sは指令ブロック始点における機械制御点3の位置、点Eは指令ブロック終点における機械制御点3の位置、点Pは特異点における機械制御点3の位置を表している。点S、点Pおよび点Eを結ぶ線分は、機械制御点3の移動経路である。   FIG. 8 is a diagram showing only the movement of the machine control point 3 as viewed from above the machine. FIG. 8 is a further simplified view of FIG. Here, the point S represents the position of the machine control point 3 at the command block start point, the point E represents the position of the machine control point 3 at the command block end point, and the point P represents the position of the machine control point 3 at the singular point. A line segment connecting the point S, the point P, and the point E is a movement path of the machine control point 3.

図2に示される工具ヘッド回転形の5軸加工機で図5に示される加工プログラムを実行する。N30ブロックの始点と終点の工具姿勢を含む平面はYZ平面(以後「平面P」という)となるので、指令ブロック途中の工具1の工具姿勢は常にこの平面P上にある必要がある。また、N30ブロックの途中では特異点を通過する。   The machining program shown in FIG. 5 is executed by the five-axis machining tool of the tool head rotating type shown in FIG. Since the plane including the tool posture at the start point and end point of the N30 block is the YZ plane (hereinafter referred to as “plane P”), the tool posture of the tool 1 in the middle of the command block must always be on this plane P. In addition, a singular point is passed in the middle of the N30 block.

工具1の工具姿勢が平面P上にあるとき、特異点においてC軸は任意の値をとることができるが、特異点以外においてはC軸は0度または180度である必要がある。なぜなら、工具姿勢がワークに対して傾斜している場合、C軸が0度または180度でないと工具が平面Pから離れてしまうからである。   When the tool posture of the tool 1 is on the plane P, the C axis can take an arbitrary value at a singular point, but the C axis needs to be 0 degree or 180 degrees at other than the singular point. This is because, when the tool posture is inclined with respect to the workpiece, the tool is separated from the plane P unless the C axis is 0 degree or 180 degrees.

したがって、平面P上を指令ブロック始点の工具姿勢から指令ブロック終点の工具姿勢へ工具姿勢が変化するとき、5軸加工機はまずC軸が0度のまま(図6の線分a)A軸が−20度から0度まで移動し(図6の線分b)、次にA軸が0度のままC軸が0度から180度まで移動し(図6の線分c)、その後C軸が180度のまま(図6の線分e)A軸が0度から−20度まで移動する(図6の線分d)。工具姿勢制御を忠実に実行しようとすると、C軸は一瞬に移動する(図6の線分c)必要があるが、実際には機械の最大移動速度で抑えられる。   Therefore, on the plane P, when the tool posture changes from the tool posture at the command block start point to the tool block at the command block end point, the 5-axis machine first keeps the C axis at 0 degrees (line segment a in FIG. 6) A axis. Moves from -20 degrees to 0 degrees (line segment b in FIG. 6), then the C axis moves from 0 degrees to 180 degrees with the A axis kept at 0 degrees (line segment c in FIG. 6), and then C The axis remains 180 degrees (line segment e in FIG. 6) and the A axis moves from 0 degrees to −20 degrees (line segment d in FIG. 6). If the tool posture control is to be executed faithfully, the C-axis needs to move instantaneously (line c in FIG. 6), but in practice it can be suppressed at the maximum moving speed of the machine.

また、図6と図7とを対応させて説明すると、図7(a)から図7(b)のA軸20度の移動は図6の線分bに相当する。図7(b)から図7(c)のC軸180度の移動は図6の線分cに相当する。図7(c)から図7(d)のA軸−20度の移動は図6の線分dに相当する。   6 and FIG. 7 will be described in correspondence with each other. A movement of 20 degrees in the A axis in FIGS. 7A to 7B corresponds to a line segment b in FIG. The movement of the C-axis 180 degrees from FIG. 7B to FIG. 7C corresponds to the line segment c in FIG. The movement of the A-axis −20 degrees in FIG. 7C to FIG. 7D corresponds to the line segment d in FIG.

上述したように、工具姿勢制御の指令において、指令ブロック始点と指令ブロック終点における回転軸1に対する位置指令が特異点を挟まず、かつ指令ブロック始点と指令ブロック終点における回転軸2に対する位置指令の差が180度であるとき、この指令ブロックの途中で特異点を通過し、かつ特異点において回転軸2を一瞬で180度移動させる必要があると判断することが出来る。   As described above, in the tool attitude control command, the position command for the rotation axis 1 at the command block start point and the command block end point does not sandwich the singular point, and the difference between the position commands for the rotation axis 2 at the command block start point and the command block end point Is 180 degrees, it can be determined that it is necessary to pass the singular point in the middle of this command block and to move the rotary shaft 2 180 degrees instantaneously at the singular point.

なお現実的には、位置指令は位置指令生成時の計算誤差などの誤差を含んでいるため、位置指令の差を判断する場合は、ちょうど180度ではなく、ある程度の許容値を持っていることが望ましい。ある程度の許容値としては180度を基準としてプラス0.01度、マイナス0.01度といった程度である。また、回転軸2の速度は実際には機械の最大速度で抑えられるが、それでも非常に大きな速度で回転する。   In reality, the position command includes errors such as calculation errors when the position command is generated. Therefore, when determining the difference between the position commands, the position command has a certain allowable value, not just 180 degrees. Is desirable. The allowable value to some extent is about plus 0.01 degrees and minus 0.01 degrees with reference to 180 degrees. Further, the speed of the rotating shaft 2 is actually suppressed at the maximum speed of the machine, but still rotates at a very high speed.

図9は、特異点通過判断部36の処理のアルゴリズムを示すフローチャートである。以下、各ステップに従って説明する。
●[ステップSA1]回避フラグFを0にし初期化する。回避フラグFは、特異点を通過し、かつ特異点で回転軸2の速度が非常に大きくなる場合に1とし、特異点を通過しない、または特異点で回転軸2の速度が大きくならない場合に0とする。
●[ステップSA2]指令ブロック始点と指令ブロック終点の回転軸1に対する位置指令の間に特異点が存在するか否か判断し、特異点が存在する場合には終了し、特異点が存在しない場合にはステップSA3へ移行する。
●[ステップSA3]指令ブロック始点と指令ブロック終点の回転軸2に対する位置指令の差が180度であるか否か判断し、180度である場合にはステップSA4へ移行し、180度ではない場合には終了する。なお、上述したように180度にある程度の許容値を考慮して判断してもよい。
●[ステップSA4]回避フラグFを1にし、終了する。回避フラグFを1にすることは、上述したように、特異点を通過し、かつ特異点で回転軸2の速度が非常に大きくなることを意味する。
FIG. 9 is a flowchart showing an algorithm of processing of the singularity passage determination unit 36. Hereinafter, it demonstrates according to each step.
[Step SA1] The avoidance flag F is set to 0 and initialized. The avoidance flag F is set to 1 when the singular point passes and the speed of the rotating shaft 2 becomes very high at the singular point, and when the singular point does not pass or the speed of the rotating shaft 2 does not increase at the singular point. 0.
[Step SA2] It is determined whether or not a singular point exists between the command block start point and the position command for the rotation axis 1 at the command block end point. If a singular point exists, the process ends. If no singular point exists To step SA3.
[Step SA3] It is determined whether or not the difference between the command block start point and the command block end point relative to the rotation axis 2 is 180 degrees. If it is 180 degrees, the process proceeds to Step SA4, and if it is not 180 degrees It ends. As described above, the determination may be made in consideration of a certain allowable value at 180 degrees.
[Step SA4] Set the avoidance flag F to 1 and finish. Setting the avoidance flag F to 1 means that the speed passes through the singular point and the speed of the rotating shaft 2 becomes very large at the singular point as described above.

特異点通過判断部36の処理の内容を、加工プログラム(図5参照)を例とし具体的な数値を使って説明する。前述したように図2では、2つの回転軸A軸、C軸ともにその位置が0度のときの状態を表している。この5軸加工機では、A軸が回転軸1、C軸が回転軸2に相当し、特異点は回転軸1であるA軸が0度のときである。すなわち、図2に示される状態ではC軸の位置(角度)が何度であっても工具姿勢は変化しない。   The contents of the processing of the singularity passage determination unit 36 will be described using specific numerical values by taking a machining program (see FIG. 5) as an example. As described above, FIG. 2 shows a state where the positions of the two rotation axes A and C are 0 degrees. In this 5-axis machine, the A-axis corresponds to the rotating shaft 1 and the C-axis corresponds to the rotating shaft 2, and the singular point is when the A-axis which is the rotating shaft 1 is 0 degree. That is, in the state shown in FIG. 2, the tool posture does not change no matter how many times the C-axis position (angle) is.

図9に示したフローチャートに従えば、指令ブロック始点と指令ブロック終点の回転軸1に対する位置指令は両者とも−20度であるから、両者の間に特異点は存在せず(ステップSA2)、また、指令ブロック始点と指令ブロック終点の回転軸2に対する位置指令は、前者が0度、後者が180度であるから、その差は180度であり(ステップSA3)、特異点を通過し、かつ回転軸2の速度が大きくなると判断でき、回避フラグFを1にする(ステップSA4)。   According to the flowchart shown in FIG. 9, since the position command for the rotation axis 1 of the command block start point and the command block end point is both -20 degrees, there is no singular point between them (step SA2). Since the former is 0 degrees and the latter is 180 degrees, the difference between the command block start point and the command block end point with respect to the rotation axis 2 is 180 degrees (step SA3). It can be determined that the speed of the shaft 2 is increased, and the avoidance flag F is set to 1 (step SA4).

次に、特異点動作回避準備部37と特異点動作回避部38について説明する。
特異点通過判断部36において特異点を通過し、かつ特異点で回転軸2の速度が非常に大きくなると判断した場合には、特異点動作回避準備部37と特異点動作回避部38にて、特異点における回転軸2の速度が非常に大きくなる現象を回避するための制御を行う。
Next, the singular point motion avoidance preparation unit 37 and the singular point motion avoidance unit 38 will be described.
When the singular point passage determination unit 36 determines that the singular point passes and the speed of the rotating shaft 2 is very high at the singular point, the singular point operation avoidance preparation unit 37 and the singular point operation avoidance unit 38 Control is performed to avoid a phenomenon in which the speed of the rotating shaft 2 at a singular point becomes very large.

図4に示されるように、特異点動作回避準備部37は数値制御装置10の指令解析部30、また特異点動作回避部38は数値制御装置の補間処理部31に含まれる。以下では、特異点動作回避準備部37と特異点動作回避部38とを本発明の実施の形態1、2に基づいて説明する。なお、特異点通過判断部36の処理は実施の形態1、2で共通する。
また、加工プログラムの工具姿勢制御のための処理は、本発明における特異点通過判断部36、特異点動作回避準備部37、および特異点動作回避部38と並行して行われており、特異点動作回避を行わないときは、前記工具姿勢制御による各軸の移動指令により5軸加工機の回転軸2軸を制御する。
As shown in FIG. 4, the singular point motion avoidance preparation unit 37 is included in the command analysis unit 30 of the numerical controller 10, and the singular point motion avoidance unit 38 is included in the interpolation processing unit 31 of the numerical controller. Hereinafter, the singular point motion avoidance preparation unit 37 and the singular point motion avoidance unit 38 will be described based on Embodiments 1 and 2 of the present invention. The process of the singularity passage determination unit 36 is common to the first and second embodiments.
Further, the processing for the tool orientation control of the machining program is performed in parallel with the singular point passage determination unit 36, the singular point operation avoidance preparation unit 37, and the singular point operation avoidance unit 38 in the present invention. When the operation avoidance is not performed, the two rotation axes of the 5-axis machine are controlled by the movement command of each axis by the tool attitude control.

<実施の形態1>
指令ブロック全体に渡って回転軸2を移動させることにより工具姿勢を滑らかに変化させる実施の形態1を説明する。
図10は、本発明の実施の形態1の指令ブロック開始時刻からの時間に対するA軸、C軸の位置の変化を表したグラフである。図11は、図2に示す5軸加工機の上方から見た機械制御点3の移動を表した図である。点Sと点Eを結ぶ線分は、機械制御点3の移動経路である。ここで点Sは指令ブロック始点における機械制御点3の位置、点Eは指令ブロック終点における機械制御点3の位置、点Pは特異点における機械制御点3の位置を表している。実施の形態1では機械制御点3は特異点を通過しない。
<Embodiment 1>
A first embodiment in which the tool posture is smoothly changed by moving the rotary shaft 2 over the entire command block will be described.
FIG. 10 is a graph showing changes in the positions of the A axis and the C axis with respect to the time from the command block start time according to the first embodiment of the present invention. FIG. 11 is a diagram showing the movement of the machine control point 3 as viewed from above the 5-axis machine shown in FIG. A line segment connecting the point S and the point E is a movement path of the machine control point 3. Here, the point S represents the position of the machine control point 3 at the command block start point, the point E represents the position of the machine control point 3 at the command block end point, and the point P represents the position of the machine control point 3 at the singular point. In the first embodiment, the machine control point 3 does not pass the singular point.

図10に示されるように、回転軸1は指令ブロック始点から指令ブロック終点へ向かって滑らかに動作させる。ただし、工具姿勢誤差が大きくならないように、本来特異点に到達すべき時刻にあらかじめ決められた角度になるように制御する。図10では本来特異点に到達すべき時刻である指令ブロック開始時刻から2秒後においてA軸は−10度になるように指定されているとしている。本来特異点に到達すべき時刻の位置(角度)は、パラメータに設定するか、あるいは加工プログラムで指定する。   As shown in FIG. 10, the rotary shaft 1 is smoothly operated from the command block start point to the command block end point. However, in order to prevent the tool posture error from becoming large, control is performed so that the angle is determined in advance at the time when the singular point should be originally reached. In FIG. 10, it is assumed that the A axis is specified to be −10 degrees after 2 seconds from the command block start time, which is the time at which the singular point should be reached. The time position (angle) that should originally reach the singular point is set as a parameter or specified by a machining program.

例えば、指令ブロック開始時刻からの時間に対する位置のグラフを考えたときに、図10のA軸経路に示されるように回転軸1が2次曲線を描くように位置を制御する方法が考えられる。2次曲線は一般に3つのパラメータにより表されるが、回転軸1の位置が時刻0で指令ブロック始点、本来特異点に到達すべき時刻にあらかじめ決められた位置(角度)、および指令ブロックの実行が終了すべき時刻に指令ブロック終点にあるべきという3つの条件から、前記3つのパラメータを求めることができる。   For example, when a graph of the position with respect to time from the command block start time is considered, a method of controlling the position so that the rotating shaft 1 draws a quadratic curve as shown in the A-axis path of FIG. 10 can be considered. A quadratic curve is generally represented by three parameters. The position of the rotation axis 1 is a command block start point at time 0, a position (angle) determined in advance at a time at which the singular point should be reached, and execution of the command block. The three parameters can be obtained from the three conditions that the command block end point should be at the time when the command should end.

回転軸2は図10のC軸経路に示されるように指令ブロック全体で線形に移動を行うように制御する。回転軸1の制御用2次曲線の決定と回転軸2の速度計算を特異点動作回避準備部37で行い、特異点動作回避準備部37で求められた回転軸1の制御用2次曲線と回転軸2の速度の情報に基づき、特異点動作回避部38にて回転軸1および回転軸2の移動を制御する。   The rotary shaft 2 is controlled to move linearly over the entire command block as indicated by the C-axis path in FIG. The determination of the secondary curve for control of the rotating shaft 1 and the calculation of the speed of the rotating shaft 2 are performed by the singular point motion avoidance preparation unit 37, and the control secondary curve obtained by the singular point motion avoidance preparation unit 37 Based on the information on the speed of the rotating shaft 2, the singular point motion avoiding unit 38 controls the movement of the rotating shaft 1 and the rotating shaft 2.

図5に示した加工プログラムの例では、ブロックN30では、工具先端点の移動量が40.0mmであり指令速度が600mm/分であるので、ブロック実行時間は4秒である。A軸が本来特異点に到達すべき時刻2秒に−10度になるように指定されていたとすると、ブロック始点からの時刻tにおけるA軸の位置を表す二次曲線はA(t)=(−5/2)t2+10t−20となる。また、回転軸2の速度は180度を4秒で除算することにより45度/秒となる。上述した図10のグラフで、A軸経路は二次曲線A(t)=(−5/2)t2+10t−20であり、C軸経路は45度/秒で移動する経路として示されている。 In the example of the machining program shown in FIG. 5, in block N30, the amount of movement of the tool tip is 40.0 mm and the command speed is 600 mm / min, so the block execution time is 4 seconds. Assuming that the A-axis is designated to be −10 degrees at the time 2 seconds at which the singular point should be originally reached, the quadratic curve representing the position of the A-axis at time t from the block start point is A (t) = ( −5/2) t 2 + 10t−20. Further, the speed of the rotary shaft 2 is 45 degrees / second by dividing 180 degrees by 4 seconds. In the graph of FIG. 10 described above, the A-axis path is a quadratic curve A (t) = (− 5/2) t 2 + 10t−20, and the C-axis path is shown as a path moving at 45 degrees / second. Yes.

上述した処理を図12−1および図12−2に示すアルゴリズムのフローチャートに従って説明する。図12−1は、本発明の実施の形態1における特異点動作回避準備部37が処理するアルゴリズムを示すフローチャートを説明する。
●[ステップSB1]回避フラグFが1であるか否か判断し、1である場合にはステップSB2へ移行し、1でない場合には終了する。回避フラグFが1であることは、特異点を通過し、かつ特異点で回転軸2の速度が非常に大きくなることを意味する。
●[ステップSB2]指令ブロック始点からの時刻tにおける回転軸1の位置を表す関数A(t)を計算し、ステップSB3へ移行する。
●[ステップSB3]回転軸2の速度V2を計算する。
The processing described above will be described with reference to the flowcharts of the algorithms shown in FIGS. 12-1 and 12-2. FIG. 12A is a flowchart illustrating an algorithm processed by the singular point motion avoidance preparation unit 37 according to the first embodiment of the present invention.
[Step SB1] It is determined whether or not the avoidance flag F is 1. If it is 1, the process proceeds to Step SB2, and if it is not 1, the process is terminated. If the avoidance flag F is 1, it means that the singular point is passed and the speed of the rotating shaft 2 becomes very high at the singular point.
[Step SB2] A function A (t) representing the position of the rotary shaft 1 at the time t from the command block start point is calculated, and the process proceeds to Step SB3.
[Step SB3] The speed V2 of the rotating shaft 2 is calculated.

図12−2は本発明の実施の形態1における特異点動作回避部38が処理するアルゴリズムを示すフローチャートである。
●[ステップSC1]回避フラグFが1であるか否か判断し、1である場合にはステップSC2へ移行し、1でない場合には終了する。回避フラグFが1であることは、特異点を通過し、かつ特異点で回転軸2の速度が非常に大きくなることを意味する。
●[ステップSC2]関数A(t)に基づき回転軸1の移動指令を生成し、ステップSC3へ移行する。
●[ステップSC3]速度V2に基づき回転軸2の移動指令を生成し、処理を終了する。
FIG. 12-2 is a flowchart showing an algorithm processed by the singular point motion avoiding unit 38 according to the first embodiment of the present invention.
[Step SC1] It is determined whether or not the avoidance flag F is 1. If it is 1, the process proceeds to Step SC2, and if it is not 1, the process is terminated. If the avoidance flag F is 1, it means that the singular point is passed and the speed of the rotating shaft 2 becomes very high at the singular point.
[Step SC2] A movement command for the rotary shaft 1 is generated based on the function A (t), and the process proceeds to Step SC3.
[Step SC3] A movement command for the rotating shaft 2 is generated based on the speed V2, and the process is terminated.

参考例1
指令ブロックの一部で工具姿勢を変更する参考例1を説明する。この参考例1は、特異点を通過する指令ブロックで、回転軸1の位置と特異点との差が設定値以下となる範囲で回転軸2の移動が行われるように制御する。
参考例1の対象とする移動指令では、図6に示したように、回転軸1は始点→特異点→終点と移動する。始点→特異点、特異点→終点の回転軸1の位置の変化は線形となるので、両移動中に回転軸1の位置と特異点との差があらかじめ決められた回転軸移動許可値以下となる時刻t1および時刻t2は容易に計算することができる。なお、指令ブロック開始時刻から終了時刻は求めることができる。
< Reference Example 1 >
Reference Example 1 in which the tool posture is changed in part of the command block will be described. The reference example 1 is a command block that passes through a singular point, and controls the movement of the rotary shaft 2 within a range in which the difference between the position of the rotary shaft 1 and the singular point is equal to or less than a set value.
In the movement command which is a target of the reference example 1 , as illustrated in FIG. 6, the rotating shaft 1 moves from the start point to the singular point to the end point. Since the change in the position of the rotation axis 1 from the start point to the singular point and from the singular point to the end point is linear, the difference between the position of the rotation axis 1 and the singular point during both movements is less than a predetermined rotation axis movement permission value. The time t1 and the time t2 can be easily calculated. The end time can be obtained from the command block start time.

また、この時刻(t1,t2)の間に回転軸2がブロック始点からブロック終点まで一定速度で移動するための速度V2も容易に計算することができる。以上の計算を特異点動作回避準備部37で行い、この計算結果の情報に基づき、特異点動作回避部38にて回転軸2の移動を制御する。なお、前記回転軸移動許可値はパラメータで設定するか、あるいは加工プログラムで指定する。   In addition, the speed V2 for moving the rotary shaft 2 at a constant speed from the block start point to the block end point during this time (t1, t2) can be easily calculated. The above calculation is performed by the singular point motion avoidance preparation unit 37, and the movement of the rotating shaft 2 is controlled by the singular point motion avoidance unit 38 based on the information of the calculation result. The rotation axis movement permission value is set by a parameter or by a machining program.

図5に示した加工プログラム例では、ブロックN30の実行時間は4秒であり、この間に工具姿勢(A軸)は40.0度変化するので、工具姿勢の角速度は10.0度/秒である。回転軸移動許可値として10度が設定されていたとすると、N30のブロック開始から1秒後(t1)から3秒後(t2)の2秒間でC軸の移動を行うことになり、C軸の速度は90.0度/秒となる。   In the machining program example shown in FIG. 5, the execution time of the block N30 is 4 seconds, and the tool posture (A axis) changes by 40.0 degrees during this time, so the angular velocity of the tool posture is 10.0 degrees / second. is there. Assuming that 10 degrees is set as the rotation axis movement permission value, the movement of the C axis is performed in 2 seconds from 1 second (t1) to 3 seconds (t2) after the block start of N30. The speed is 90.0 degrees / second.

図13は、参考例1の指令ブロック開始時刻からの時間に対するA軸、C軸の位置の変化を表したグラフである。A軸はA軸経路として示されるように、時刻0の−20度から2秒後に0度まで線形に移動し、そして4秒後までに再度−20度の角度に戻る。C軸はC軸経路として示されるように、時刻0から1秒後までは角度0度を維持し、1秒後から3秒後にかけて移動速度90.0度/秒で移動し、その後4秒後までは180度の角度を維持する。 FIG. 13 is a graph showing changes in the positions of the A-axis and the C-axis with respect to the time from the command block start time in Reference Example 1 . The A-axis moves linearly from −20 degrees at time 0 to 0 degrees after 2 seconds and returns to an angle of −20 degrees again by 4 seconds, as shown as the A-axis path. As shown as the C-axis path, the C-axis maintains an angle of 0 degrees from time 0 to 1 second, moves at a moving speed of 90.0 degrees / second from 1 second to 3 seconds, and then 4 seconds The angle of 180 degrees is maintained until later.

図14は、参考例1の機械上方から見た機械制御点3の移動を表した図である。ここで点Sは指令ブロック始点における機械制御点3の位置、点Eは指令ブロック終点における機械制御点3の位置、点Pは特異点における機械制御点3の位置を表している。点S、点Pおよび点Eを結ぶ線分は、機械制御点3の移動経路である。参考例1では、機械制御点3は特異点Pを通過することになる。 FIG. 14 is a diagram illustrating the movement of the machine control point 3 as viewed from above the machine of Reference Example 1 . Here, the point S represents the position of the machine control point 3 at the command block start point, the point E represents the position of the machine control point 3 at the command block end point, and the point P represents the position of the machine control point 3 at the singular point. A line segment connecting the point S, the point P, and the point E is a movement path of the machine control point 3. In the reference example 1 , the machine control point 3 passes through the singular point P.

上述した処理を図15−1および図15−2に示すアルゴリズムのフローチャートに従って説明する。図15−1は、本発明の参考例1における特異点動作回避準備部37が処理するアルゴリズムを示すフローチャートである。 The processing described above will be described with reference to the algorithm flowcharts shown in FIGS. 15A and 15B. FIG. 15A is a flowchart illustrating an algorithm processed by the singular point motion avoidance preparation unit 37 in Reference Example 1 of the present invention.

図15−2は、本発明の参考例1における特異点動作回避部38が処理するアルゴリズムを示すフローチャートである。
●[ステップSE1]回避フラグFが1であるか否か判断し、1である場合にはステップSE2へ移行し、1でない場合には終了する。回避フラグFが1であることは、特異点を通過し、かつ特異点で回転軸2の速度が非常に大きくなることを意味する。
●[ステップSE2]時刻t1と時刻t2の間であるか否か判断し、間である場合にはステップSE3に移行し、間でない場合には終了する。
●[ステップSE3]速度V2に基づき回転軸2の移動指令を生成し、終了する。
FIG. 15-2 is a flowchart showing an algorithm processed by the singular point motion avoiding unit 38 in Reference Example 1 of the present invention.
[Step SE1] It is determined whether or not the avoidance flag F is 1. If it is 1, the process proceeds to Step SE2, and if it is not 1, the process is terminated. If the avoidance flag F is 1, it means that the singular point is passed and the speed of the rotating shaft 2 becomes very high at the singular point.
[Step SE2] It is determined whether or not it is between time t1 and time t2. If it is between, the process proceeds to step SE3, and if not, the process ends.
[Step SE3] A movement command for the rotary shaft 2 is generated based on the speed V2, and the process ends.

なお、この参考例1では、回転軸1の移動指令は、指令解析部30,補間処理部31でなされる工具姿勢制御の処理によって得られる移動指令を用いる。 In the first reference example , a movement command obtained by a tool posture control process performed by the command analysis unit 30 and the interpolation processing unit 31 is used as the movement command of the rotating shaft 1.

実施の形態2
工具姿勢が誤差を持たずに特異点における回転軸2の急激な動作を回避する実施の形態2を説明する。実施の形態1および参考例1では、許容値内ではあるが、指令に対して工具姿勢が誤差を持っていた。実施の形態2では工具姿勢が誤差を有しない。
一般に、ある工具姿勢を実現するための二回転軸角度の組み合わせは複数存在するが、回転軸の一回転の自由度を除けば二組存在し、その関係は、回転軸1の角度は特異点に対して対称となり、回転軸2の角度は180度の差がある。
< Embodiment 2 >
A second embodiment will be described in which the tool posture does not have an error and a sudden movement of the rotating shaft 2 at a singular point is avoided. In Embodiment 1 and Reference Example 1 , the tool posture has an error with respect to the command, although it is within the allowable value. In the second embodiment , the tool posture has no error.
In general, there are a plurality of combinations of two rotation axis angles for realizing a certain tool posture, but there are two combinations except for the degree of freedom of one rotation of the rotation axis, and the relationship is that the angle of the rotation axis 1 is a singular point. And the angle of the rotation axis 2 has a difference of 180 degrees.

工具姿勢制御で特異点を通過する指令ブロック終了の工具姿勢を実現するための角度の組み合わせのうち一組は、本願発明で取り上げているように特異点で回転軸2が非常に大きな速度で移動する組み合わせとなるが、もう一組の組み合わせでは、指令ブロック終点の工具姿勢は変わらずに回転軸2の移動はなくなり、特異点における回転軸の非常に大きな速度での移動は回避される。   One of the combinations of angles for realizing the tool posture at the end of the command block that passes the singular point in the tool posture control is a singular point and the rotary shaft 2 moves at a very high speed as described in the present invention. However, in the other combination, the tool posture at the end of the command block does not change and the movement of the rotation axis 2 is eliminated, and the movement of the rotation axis at a singular point at a very high speed is avoided.

従って、特異点動作回避準備部37にて回転軸2の移動がなくなるような回転軸1のブロック終点を計算し、特異点動作回避部38ではこの情報に基づいて回転軸の移動指令を生成する。ただしこの場合は、指令ブロック終点の工具姿勢の誤差はないが、回転軸座標は指令されたものと異なっている。   Therefore, the singular point motion avoidance preparation unit 37 calculates the block end point of the rotary shaft 1 such that the movement of the rotary shaft 2 is eliminated, and the singular point motion avoidance unit 38 generates a rotation axis movement command based on this information. . In this case, however, there is no error in the tool posture at the end of the command block, but the rotation axis coordinates are different from the commanded one.

例えば、図2に示した工具ヘッドが回転する5軸加工機では特異点は0度であるので、図5に示した加工プログラム例では、ブロックN30の回転軸指令はA20.0,C0.0であってもブロック終点の工具姿勢は変わらない。またこのときN30ブロック実行中にC軸の移動は発生しないため、C軸の速度や加速度が大きくなることはない。   For example, since the singular point is 0 degree in the 5-axis machine in which the tool head shown in FIG. 2 rotates, in the example of the machining program shown in FIG. 5, the rotation axis command of the block N30 is A20.0, C0.0. Even so, the tool posture at the end of the block does not change. At this time, since the movement of the C axis does not occur during execution of the N30 block, the speed and acceleration of the C axis do not increase.

図16は、本発明の実施の形態2の指令ブロック開始時刻からの時間に対するA軸、C軸の位置の変化を表したグラフである。図17は、本発明の実施の形態2において機械上方から見た機械制御点3の移動を表した図である。ここで点Sは指令ブロック始点における機械制御点3の位置、点Eは指令ブロック終点における機械制御点3の位置、点Pは特異点における機械制御点3の位置を表している。点S、点Pおよび点Eを結ぶ線分は、機械制御点3の移動経路である。実施の形態2では機械制御点3は特異点Pを通過する。 FIG. 16 is a graph showing changes in the positions of the A-axis and the C-axis with respect to the time from the command block start time according to the second embodiment of the present invention. FIG. 17 is a diagram illustrating movement of the machine control point 3 as viewed from above the machine in the second embodiment of the present invention. Here, the point S represents the position of the machine control point 3 at the command block start point, the point E represents the position of the machine control point 3 at the command block end point, and the point P represents the position of the machine control point 3 at the singular point. A line segment connecting the point S, the point P, and the point E is a movement path of the machine control point 3. In the second embodiment , the machine control point 3 passes through the singular point P.

上述した処理を図18−1および図18−2に示すアルゴリズムのフローチャートに従って説明する。図18−1は、本発明の実施の形態2における特異点動作回避準備部37が処理するアルゴリズムを示すフローチャートである。
●[ステップSF1]回避フラグFが1であるか否か判断し、1である場合にはステップSF2へ移行し、1でない場合には終了する。回避フラグFが1であることは、特異点を通過し、かつ特異点で回転軸2の速度が非常に大きくなることを意味する。
●[ステップSF2]回転軸1の指令ブロック終点角度A1と速度V1とを計算する。
●[ステップSF3]回転軸2の速度V2を0(ゼロ)とし、終了する。
The processing described above will be described with reference to the algorithm flowcharts shown in FIGS. 18A and 18B. FIG. 18A is a flowchart illustrating an algorithm processed by the singular point motion avoidance preparing unit 37 in the second embodiment of the present invention.
[Step SF1] It is determined whether or not the avoidance flag F is 1. If 1, the process proceeds to step SF2, and if not, the process ends. If the avoidance flag F is 1, it means that the singular point is passed and the speed of the rotating shaft 2 becomes very high at the singular point.
[Step SF2] The command block end point angle A1 and the speed V1 of the rotary shaft 1 are calculated.
[Step SF3] The speed V2 of the rotary shaft 2 is set to 0 (zero), and the process ends.

図18−2は、本発明の実施の形態2における特異点動作回避部38が処理するアルゴリズムを示すフローチャートである。
●[ステップSG1]回避フラグFが1であるか否か判断し、1である場合にはステップSG2へ移行し、1でない場合には終了する。回避フラグFが1であることは、特異点を通過し、かつ特異点で回転軸2の速度が非常に大きくなることを意味する。
●[ステップSG2]速度V1に基づき回転軸1の移動指令を生成する。
●[ステップSG3]速度V2に基づき回転軸2の移動指令を生成し、終了する。なお、この場合速度V2=0であるので、回転軸2は移動しない。
FIG. 18-2 is a flowchart illustrating an algorithm processed by the singular point motion avoiding unit 38 according to the second embodiment of the present invention.
[Step SG1] It is determined whether or not the avoidance flag F is 1. If it is 1, the process proceeds to Step SG2. If it is not 1, the process is terminated. If the avoidance flag F is 1, it means that the singular point is passed and the speed of the rotating shaft 2 becomes very high at the singular point.
[Step SG2] A movement command for the rotary shaft 1 is generated based on the speed V1.
[Step SG3] A movement command for the rotary shaft 2 is generated based on the speed V2, and the process ends. In this case, since the speed V2 = 0, the rotating shaft 2 does not move.

参考例2
工具姿勢は指令ブロック始点と指令ブロック終点における工具姿勢を含む平面内にあり、かつ指令ブロック終点の回転軸座標が指令されたものとなる方法である。実施の形態2では、工具姿勢の誤差はないが、指令ブロック終点の回転軸座標が指令されたものと異なっており、その後の動作に影響を与える可能性がある。参考例2はこれを防止するものである。
< Reference Example 2 >
This is a method in which the tool posture is in a plane including the tool posture at the command block start point and the command block end point, and the rotation axis coordinates of the command block end point are commanded. In the second embodiment , there is no error in the tool posture, but the rotation axis coordinates of the command block end point are different from those instructed, which may affect the subsequent operation. Reference Example 2 prevents this.

特異点通過判断部36にて特異点を通過すると判断した場合には、数値制御装置10の内部で自動的に、指令ブロック始点から特異点までの動作である動作1、特異点における動作である動作2、特異点から指令ブロック終点までの動作である動作3の三つの動作に分割する。動作2では回転軸2の速度を機械最大速度とは別に設定した特異点回転軸速度となるように制御を行い、動作1と動作3とでは動作2を実行するために必要な時間を考慮してブロック全体の実行時間が変化しないように回転軸1の速度を調節した制御を行う。特異点回転軸速度はパラメータで設定するか、または加工プログラムで指定する。   When the singular point passage determining unit 36 determines that the singular point is passed, the operation is an operation 1 from the command block start point to the singular point, and an operation at the singular point, automatically inside the numerical controller 10. The operation is divided into three operations of operation 2 and operation 3 which is an operation from the singular point to the command block end point. In operation 2, the speed of the rotary shaft 2 is controlled to be a singular point rotary shaft speed set separately from the maximum machine speed, and in operation 1 and operation 3, the time required to execute operation 2 is taken into consideration. Thus, control is performed by adjusting the speed of the rotary shaft 1 so that the execution time of the entire block does not change. The singular point rotation axis speed is set by a parameter or specified by a machining program.

図5に示した加工プログラム例で、ブロックN30に参考例2を適用する。動作1はA軸が−20度から0度へ移動する動作、動作2はC軸が0度から180度へ移動する動作、動作3はA軸が0度から−20度へ移動する動作である。動作2におけるC軸の速度である特異点回転軸速度が180度/秒であるとすると、動作2を実行するために必要な時間は1秒であり、ブロック実行時間は4秒であるから、動作1は指令ブロック開始時刻から1.5秒までの期間であり、動作2は1.5秒から2.5秒の期間であり、動作3は2.5秒から4秒までの期間である。また、動作1と動作3のA軸の速度は13.333度/秒(20度/1.5秒)、−13.333度/秒(−20度/1.5秒)となる。 In the example of the machining program shown in FIG. 5, the reference example 2 is applied to the block N30. Operation 1 is an operation in which the A axis is moved from -20 degrees to 0 degrees, Operation 2 is an operation in which the C axis is moved from 0 degrees to 180 degrees, and Operation 3 is an operation in which the A axis is moved from 0 degrees to -20 degrees. is there. If the singular point rotation axis speed, which is the speed of the C axis in the operation 2, is 180 degrees / second, the time required to execute the operation 2 is 1 second, and the block execution time is 4 seconds. Operation 1 is a period from the command block start time to 1.5 seconds, operation 2 is a period from 1.5 seconds to 2.5 seconds, and operation 3 is a period from 2.5 seconds to 4 seconds. . In addition, the speeds of the A-axis in operations 1 and 3 are 13.333 degrees / second (20 degrees / 1.5 seconds) and -13.333 degrees / second (-20 degrees / 1.5 seconds).

図19は、図5に示した加工プログラム例のブロックN30を本発明の参考例2を適用したときの、指令ブロック開始時刻からの時間に対するA軸、C軸の位置の変化を表したグラフである。図に示されるように、0〜t3(1.5秒)の期間は動作1、t3(1.5秒)からt4(2.5秒)の期間は動作2、t4(2.5秒)から指令ブロック終点(4秒)の期間は動作3として自動的に3つの動作に分割される。 FIG. 19 is a graph showing changes in the positions of the A axis and the C axis with respect to the time from the command block start time when the reference example 2 of the present invention is applied to the block N30 of the machining program example shown in FIG. is there. As shown in the figure, the period from 0 to t3 (1.5 seconds) is operation 1, the period from t3 (1.5 seconds) to t4 (2.5 seconds) is operation 2, and t4 (2.5 seconds). To the command block end point (4 seconds) is automatically divided into three operations as operation 3.

図20は、本発明の参考例2において機械上方から見た機械制御点3の移動を表した図である。ここで点Sは指令ブロック始点における機械制御点3の位置、点Eは指令ブロック終点における機械制御点3の位置、点Pは特異点における機械制御点3の位置を表している。点S、点Pおよび点Eを結ぶ線分は、機械制御点3の移動経路である。参考例2では、機械制御点3は特異点を通過する。 FIG. 20 is a diagram illustrating movement of the machine control point 3 as viewed from above the machine in Reference Example 2 of the present invention. Here, the point S represents the position of the machine control point 3 at the command block start point, the point E represents the position of the machine control point 3 at the command block end point, and the point P represents the position of the machine control point 3 at the singular point. A line segment connecting the point S, the point P, and the point E is a movement path of the machine control point 3. In Reference Example 2 , the machine control point 3 passes through the singular point.

工具先端点の移動がない指令でこの方法を用いると、動作2中には回転軸1であるA軸の動作が発生しないため、特異点において工具の滞留が発生し工具1は回転軸2の特異点回転軸速度に基づいて回転することから、ワークにカッターマークがつくなどの面品質に悪影響を与える可能性がある。しかし、位置決めなど面品質に関係のない部分であれば、工具姿勢を崩すことなく、また指令ブロック終点の回転軸座標を変更することなく、工具の移動を制御することが可能である。   If this method is used with a command in which the tool tip point does not move, the movement of the A-axis, which is the rotating shaft 1, does not occur during the operation 2, so that the tool stays at a singular point and the tool 1 Since the rotation is based on the singular point rotation axis speed, there is a possibility of adversely affecting the surface quality such as a cutter mark on the workpiece. However, it is possible to control the movement of the tool without losing the tool posture and without changing the rotation axis coordinate of the command block end point as long as it is not related to surface quality such as positioning.

上述した処理を図21−1および図21−2に示すアルゴリズムのフローチャートに従って説明する。図21−1は、本発明の参考例2における特異点動作回避準備部が処理するアルゴリズムを示すフローチャートである。
●[ステップSH1]回避フラグFが1であるか否か判断し、1である場合にはステップSH2へ移行し、1でない場合には終了する。回避フラグFが1であることは、特異点を通過し、かつ特異点で回転軸2の速度が非常に大きくなることを意味する。
●[ステップSH2]指令ブロック始点から指令ブロック終点までの区間で、機械の動作を、特異点までの動作1、特異点における動作2、特異点以降の動作3に分割する。
●[ステップSH3]回転軸1の動作1における速度V11、動作2における速度V12、動作3における速度V13を計算し、終了する。ただし、速度V12は0である。
The processing described above will be described with reference to the flowcharts of the algorithms shown in FIGS. 21-1 and 21-2. FIG. 21A is a flowchart illustrating an algorithm processed by the singular point motion avoidance preparation unit in Reference Example 2 of the present invention.
[Step SH1] It is determined whether or not the avoidance flag F is 1. If it is 1, the process proceeds to step SH2. If it is not 1, the process ends. If the avoidance flag F is 1, it means that the singular point is passed and the speed of the rotating shaft 2 becomes very high at the singular point.
[Step SH2] In the section from the command block start point to the command block end point, the machine operation is divided into operation 1 up to the singular point, operation 2 at the singular point, and operation 3 after the singular point.
[Step SH3] The speed V11 in the operation 1 of the rotating shaft 1, the speed V12 in the operation 2, and the speed V13 in the operation 3 are calculated, and the process ends. However, the speed V12 is zero.

図21−2は、本発明の参考例2における特異点動作回避部が処理するアルゴリズムを示すフローチャートである。
●[ステップSJ1]回避フラグFが1であるか否か判断し、1である場合にはステップSJ2へ移行し、1でない場合には終了する。回避フラグFが1であることは、特異点を通過し、かつ特異点で回転軸2の速度が非常に大きくなることを意味する。
●[ステップSJ2]動作1か否か判断し、動作1である場合にはステップSJ3へ移行し、動作1でない場合にはステップSJ4へ移行する。
●[ステップSJ3]図21−1のステップSH3で計算して求めた速度V11に基づき回転軸1の移動指令を生成し、終了する。
●[ステップSJ4]動作2か否かを判断し、動作2である場合にはステップSJ5へ移行し、動作2でない場合にはステップSJ8へ移行する。
●[ステップSJ5]回転軸2の特異点回転軸速度を読み込む。回転軸2の特異点回転軸速度は機械の最大速度とは別にあらかじめ設定あるいは加工プログラムで指定され数値制御装置内に記憶された値である。参考例2を実行してもワークWに悪影響を与えない程度の速度として設定される。
●[ステップSJ6]特異点回転軸速度に基づき回転軸2の移動指令を生成する。
●[ステップSJ7]速度V12に基づき回転軸1の移動指令を生成し、終了する。この場合、速度V12は0である。
●[ステップSJ8]動作3として、図21−1のステップSH3で計算して求めた速度V13に基づき回転軸1の移動指令を生成し、終了する。
FIG. 21-2 is a flowchart illustrating an algorithm processed by the singular point motion avoiding unit in Reference Example 2 of the present invention.
[Step SJ1] It is determined whether or not the avoidance flag F is 1. If it is 1, the process proceeds to step SJ2. If it is not 1, the process ends. If the avoidance flag F is 1, it means that the singular point is passed and the speed of the rotating shaft 2 becomes very high at the singular point.
[Step SJ2] It is determined whether or not the operation 1 is performed. If the operation 1 is performed, the process proceeds to step SJ3. If the operation 1 is not performed, the process proceeds to step SJ4.
[Step SJ3] A movement command for the rotary shaft 1 is generated based on the speed V11 calculated in step SH3 of FIG.
[Step SJ4] It is determined whether or not the operation 2 is performed. If the operation 2 is performed, the process proceeds to step SJ5. If the operation 2 is not performed, the process proceeds to step SJ8.
[Step SJ5] The singular point rotation axis speed of the rotation axis 2 is read. The singular point rotation axis speed of the rotation axis 2 is a value set in advance or specified by a machining program and stored in the numerical control device separately from the maximum speed of the machine. The speed is set so as not to adversely affect the workpiece W even if the reference example 2 is executed.
[Step SJ6] A movement command for the rotating shaft 2 is generated based on the singular point rotating shaft speed.
[Step SJ7] A movement command for the rotary shaft 1 is generated based on the speed V12, and the process ends. In this case, the speed V12 is zero.
[Step SJ8] As operation 3, a movement command for the rotating shaft 1 is generated based on the speed V13 calculated in step SH3 of FIG.

なお、参考例2による移動を示す図19について補足して説明すると、動作1ではA軸はステップSJ3の移動指令による移動、C軸は工具姿勢制御による指令による移動(ただし、工具姿勢制御による指令ではC軸はこの区間で移動しない。図6参照。)を行う。動作2ではA軸の移動指令は0としC軸はステップSJ6の移動指令による移動を行う。動作3ではA軸はステップSJ8の移動指令による移動、C軸は工具姿勢制御による指令による移動(ただし、工具姿勢制御による指令ではC軸はこの区間で移動しない。図6参照。)を行う。 In addition, FIG. 19 showing the movement according to the reference example 2 will be supplementarily described. In the operation 1, the A axis is moved by the movement command in step SJ3, and the C axis is moved by the command by the tool attitude control (however, the command by the tool attitude control is Then, the C axis does not move in this section (see FIG. 6). In operation 2, the A-axis movement command is set to 0, and the C-axis is moved by the movement command in step SJ6. In operation 3, the A-axis is moved by the movement command in step SJ8, and the C-axis is moved by the command by the tool posture control (however, the C-axis is not moved in this section by the command by the tool posture control, see FIG. 6).

以上説明したように、工具姿勢制御を維持しつつ、C軸が急激に回転することを防止できるようになり、5軸加工機への負荷を防止できるとともに、ワークW面にカッターマークが付くことを防止できる。   As described above, it is possible to prevent the C-axis from rotating rapidly while maintaining the tool posture control, to prevent a load on the 5-axis processing machine, and to attach a cutter mark to the workpiece W surface. Can be prevented.

これまでは工具ヘッド回転形5軸加工機(図2参照)によって説明したが、5軸加工機にはテーブル回転形(図22参照)やテーブルと工具ヘッドが回転する混合形(図23参照)がある。テーブル回転形は2つの回転軸によってテーブルが旋回する5軸加工機であり、混合形は工具ヘッドとテーブルに回転軸が1つずつ備わった5軸加工機である。
本発明は、これらテーブル回転形および混合形の5軸加工機においても適用できる。図22のテーブル回転形5軸加工機においてA軸は回転軸1、C軸は回転軸2に相当する。また、図23の混合形5軸加工機においてA軸は回転軸1、C軸は回転軸2に相当する。また、図2、図22、図23では機械の持つ回転軸がA軸とC軸の2軸であるとしたが、機械によってはA軸とB軸、またはB軸とC軸の2軸を持つ場合もある。本発明はこのような機械に対しても適用できる。
Up to now, the tool head rotating type 5-axis processing machine (see FIG. 2) has been described, but the 5-axis processing machine has a table rotating type (see FIG. 22) and a mixed type in which the table and the tool head rotate (see FIG. 23). There is. The table rotation type is a 5-axis machining machine in which the table is rotated by two rotation axes, and the mixed type is a 5-axis machining machine in which one rotation axis is provided for each of the tool head and the table.
The present invention can also be applied to these table rotary type and mixed type 5-axis machines. In the table rotary type 5-axis machine in FIG. 22, the A axis corresponds to the rotary shaft 1 and the C axis corresponds to the rotary shaft 2. 23, the A axis corresponds to the rotary shaft 1 and the C axis corresponds to the rotary shaft 2. In FIGS. 2, 22, and 23, the rotation axes of the machine are the two axes of the A axis and the C axis. However, depending on the machine, the two axes of the A axis and the B axis, or the B axis and the C axis may be used. Sometimes it has. The present invention can also be applied to such machines.

テーブル回転形および混合形の5軸加工機も工具ヘッド回転形の5軸加工機と同様に、工具姿勢を制御する回転軸2軸を有する。このうち1軸はワークに対して工具姿勢を傾斜させる働きがあり、他の1軸はワークに対して工具姿勢を回転させる働きがある。前者を回転軸1、後者を回転軸2と呼ぶ。回転軸1の位置を調節し、工具軸方向を回転軸2の回転中心軸と平行にするとき、回転軸2の位置は工具姿勢に影響を与えなくなる。このときの回転軸1の位置を特異点と呼ぶ。   The table rotating type and the mixed type 5-axis processing machines also have two rotating axes for controlling the tool posture, like the tool head rotating type 5-axis processing machine. Of these, one axis functions to tilt the tool posture relative to the workpiece, and the other one axis functions to rotate the tool posture relative to the workpiece. The former is called a rotating shaft 1 and the latter is called a rotating shaft 2. When the position of the rotary shaft 1 is adjusted and the tool axis direction is parallel to the rotation center axis of the rotary shaft 2, the position of the rotary shaft 2 does not affect the tool posture. The position of the rotating shaft 1 at this time is called a singular point.

工具姿勢制御を説明する図である。It is a figure explaining tool posture control. 工具ヘッドが回転する形式の5軸加工機の説明図である。It is explanatory drawing of the 5-axis processing machine of the type which a tool head rotates. 本発明のアルゴリズムを実施する数値制御装置の要部ブロック図である。It is a principal part block diagram of the numerical control apparatus which implements the algorithm of this invention. 本発明の実施形態を説明する機能ブロック図である。It is a functional block diagram explaining embodiment of this invention. 加工プログラムの一例である。It is an example of a processing program. 指令ブロック開始時刻からの経過時間に対するA軸、C軸の位置の変化をグラフにした図である。It is the figure which made the graph the change of the position of the A-axis with respect to the elapsed time from command block start time, and a C-axis. 機械の動作を工具と工具取付部だけ取り出し機械の上方から見た図である。It is the figure which looked at the operation | movement of the machine from the upper direction of the machine taking out only a tool and a tool attachment part. 機械上方からみた機械制御点の移動のみを表した図である。It is a figure showing only the movement of the machine control point seen from the machine upper direction. 特異点通過判断部の処理のアルゴリズムを示すフローチャートである。It is a flowchart which shows the algorithm of the process of a singular point passage judgment part. 本発明の実施の形態1における指令ブロック開始時刻からの時間に対するA軸、C軸の位置の変化を表したグラフである。It is a graph showing the change of the position of the A-axis with respect to the time from the command block start time in Embodiment 1 of this invention. 本発明の実施の形態1における機械上方から見た機械制御点の移動を表した図である。It is a figure showing the movement of the machine control point seen from the machine upper direction in Embodiment 1 of this invention. 本発明の実施の形態1における特異点動作回避準備部が処理するアルゴリズムを示すフローチャートである。It is a flowchart which shows the algorithm which the singular point operation | movement avoidance preparation part in Embodiment 1 of this invention processes. 本発明の実施の形態1における特異点動作回避部が処理するアルゴリズムを示すフローチャートである。It is a flowchart which shows the algorithm which the singular point operation | movement avoidance part in Embodiment 1 of this invention processes. 本発明の参考例1の指令ブロック開始時刻からの時間に対するA軸、C軸の位置の変化を表したグラフである。It is a graph showing the change of the position of the A-axis with respect to the time from the command block start time of the reference example 1 of this invention, and a C-axis. 本発明の参考例1における機械上方から見た機械制御点の移動を表した図である。It is a figure showing the movement of the machine control point seen from the machine upper direction in the reference example 1 of this invention. 本発明の参考例1における特異点動作回避準備部が処理するアルゴリズムを示すフローチャートである。It is a flowchart which shows the algorithm which the singular point operation | movement avoidance preparation part in the reference example 1 of this invention processes. 本発明の参考例1における特異点動作回避部が処理するアルゴリズムを示すフローチャートである。It is a flowchart which shows the algorithm which the singular point operation | movement avoidance part in the reference example 1 of this invention processes. 本発明の実施の形態2の指令ブロック開始時刻からの時間に対するA軸、C軸の位置の変化を表したグラフである。It is a graph showing the change of the position of the A-axis with respect to the time from the command block start time of Embodiment 2 of this invention, and a C-axis. 本発明の実施の形態2における機械上方から見た機械制御点の移動を表した図である。It is a figure showing the movement of the machine control point seen from the machine upper direction in Embodiment 2 of this invention. 本発明の実施の形態2における特異点動作回避準備部が処理するアルゴリズムを示すフローチャートである。It is a flowchart which shows the algorithm which the singular point operation | movement avoidance preparation part in Embodiment 2 of this invention processes. 本発明の実施の形態2における特異点動作回避部が処理するアルゴリズムを示すフローチャートである。It is a flowchart which shows the algorithm which the singular point operation | movement avoidance part in Embodiment 2 of this invention processes. 本発明の参考例2の指令ブロック開始時刻からの時間に対するA軸、C軸の位置の変化を表したグラフである。It is a graph showing the change of the position of the A-axis with respect to the time from the command block start time of the reference example 2 of this invention, and the C-axis. 本発明の参考例2における機械上方から見た機械制御点の移動を表した図である。It is a figure showing the movement of the machine control point seen from the machine upper direction in the reference example 2 of this invention. 本発明の参考例2における特異点動作回避準備部が処理するアルゴリズムを示すフローチャートである。It is a flowchart which shows the algorithm which the singular point operation | movement avoidance preparation part in the reference example 2 of this invention processes. 本発明の参考例2における特異点動作回避部が処理するアルゴリズムを示すフローチャートである。It is a flowchart which shows the algorithm which the singular point operation | movement avoidance part in the reference example 2 of this invention processes. テーブル回転形の5軸加工機の説明図である。It is explanatory drawing of a table rotation type 5 axis processing machine. 混合形の5軸加工機の説明図である。It is explanatory drawing of a mixed type 5 axis processing machine.

符号の説明Explanation of symbols

1 工具
2 工具取付部
3 機械制御点
4 テーブル
W ワーク
10 数値制御装置
11 CPU
12 メモリ
13 PMC
14 表示器
15 入力機器
16 インタフェース
17 軸制御回路
18 サーボアンプ
19 サーボモータ
20 スピンドル制御回路
21 スピンドルアンプ
22 スピンドルモータ
30 指令解析部
31 補間処理部
34 各軸用加減速部
35 サーボ制御
36 特異点通過判断部
37 特異点動作回避準備部
38 特異点動作回避部
S 指令ブロック始点における機械制御点の位置
E 指令ブロック終点における機械制御点の位置
P 特異点における機械制御点の位置
DESCRIPTION OF SYMBOLS 1 Tool 2 Tool mounting part 3 Machine control point 4 Table W Work 10 Numerical control apparatus 11 CPU
12 memory 13 PMC
14 Display 15 Input Device 16 Interface 17 Axis Control Circuit 18 Servo Amplifier 19 Servo Motor 20 Spindle Control Circuit 21 Spindle Amplifier 22 Spindle Motor 30 Command Analysis Unit 31 Interpolation Processing Unit 34 Acceleration / Deceleration Unit for Each Axis 35 Servo Control 36 Singular Point Passing Judgment unit 37 Singular point motion avoidance preparation unit 38 Singular point motion avoidance unit S Position of machine control point at command block start point E Position of machine control point at command block end point P Position of machine control point at singular point

Claims (3)

直線軸3軸と工具傾斜用回転軸と工具回転用回転軸の回転軸2軸を有する5軸加工機を工具姿勢制御してテーブルに固定されたワークを工具により加工するための指令解析部と補間処理部を有する5軸加工機用数値制御装置において、
該工具姿勢制御は、指令ブロックの指令ブロック始点と指令ブロック終点の間における前記ワークに対する前記工具の姿勢が、該指令ブロック始点と該指令ブロック終点における指令回転軸位置に基づいて計算される工具姿勢を含む平面内に存在するようにサンプリング周期毎に前記直線軸3軸と前記回転軸2軸を制御する制御であって、
該指令解析部は特異点通過判断部を有し、該特異点通過判断部は、該指令ブロック始点での指令と該指令ブロック終点での指令に基づく計算によって、該指令ブロックにおいて該工具回転用回転軸が任意の位置となる特異点または工具姿勢が該特異点での工具姿勢に対して設定値より近くなる特異点近傍を通過するか否かを判断し、
該指令解析部は特異点動作回避準備部を有し、該特異点動作回避準備部は、該特異点通過判断部において該特異点または該特異点近傍を通過すると判断された場合には、該指令ブロック全体に渡って前記工具回転用回転軸を移動させ、かつ前記工具傾斜用回転軸が本来特異点に到達すべき時刻にあらかじめ決められた角度になるように該指令ブロック始点から該指令ブロック終点に向かって前記工具傾斜用回転軸を移動させることにより工具姿勢を滑らかに変化させるように該指令ブロック全体の指令工具経路を変更した工具経路を作成し、
該補間処理部は特異点動作回避部を有し、該特異点動作回避部は、該特異点動作回避準備部で変更された工具経路を実行することを特徴とする5軸加工機用数値制御装置。
A command analysis unit for machining a workpiece fixed on a table with a tool by controlling a tool orientation of a 5-axis machining machine having three linear axes, a tool tilting rotary axis, and a tool rotating rotary axis. In a numerical control device for a 5-axis machine having an interpolation processing unit,
The tool posture control is a tool posture in which the posture of the tool with respect to the workpiece between the command block start point and the command block end point of the command block is calculated based on the command rotation axis positions at the command block start point and the command block end point. Control for controlling the three linear axes and the two rotational axes for each sampling period so as to exist in a plane including
The command analysis unit includes a singular point passage determination unit, and the singular point passage determination unit performs the tool rotation in the command block by calculation based on a command at the command block start point and a command at the command block end point. Determine whether the singular point or tool posture at which the rotation axis is at an arbitrary position passes near the singular point near the set value with respect to the tool posture at the singular point,
Finger Ordinance analysis unit has a singularity operation avoiding preparation unit, said specific point operation avoiding preparation unit, when it is determined that passes near該特Iten or said specific point in該特Iten passage determination unit, the The command block is moved from the command block starting point so that the tool rotation axis is moved over the entire command block, and the tool tilt rotation axis is at a predetermined angle at a time when the tool rotation axis should originally reach the singular point. Creating a tool path in which the command tool path of the entire command block is changed so as to smoothly change the tool posture by moving the rotation axis for tool tilt toward the end point ;
The interpolation processing unit includes a singular point operation avoiding unit, and the singular point operation avoiding unit executes the tool path changed by the singular point operation avoiding preparation unit. apparatus.
該特異点動作回避準備部は、工具姿勢誤差が工具姿勢誤差許容値以下となるように該工具傾斜用回転軸が2次曲線を描き、かつ該工具回転用回転軸が該指令ブロック全体で線形に移動するよう該工具傾斜用回転軸と該工具回転用回転軸の工具経路を変更した工具経路を作成することを特徴とする請求項1に記載の5軸加工機用数値制御装置。   The singular point motion avoidance preparation unit draws a quadratic curve for the tool tilt rotation axis so that the tool posture error is less than or equal to the tool posture error allowable value, and the tool rotation shaft is linear throughout the command block. 2. The numerical control device for a 5-axis machining apparatus according to claim 1, wherein a tool path is created by changing the tool tilt rotation axis and the tool path of the tool rotation rotation axis so as to move to the tool axis. 直線軸3軸と工具傾斜用回転軸と工具回転用回転軸の回転軸2軸を有する5軸加工機を工具姿勢制御してテーブルに固定されたワークを工具により加工するための指令解析部と補間処理部を有する5軸加工機用数値制御装置において、
該工具姿勢制御は、指令ブロックの指令ブロック始点と指令ブロック終点の間における前記ワークに対する前記工具の姿勢が、該指令ブロック始点と該指令ブロック終点における指令回転軸位置に基づいて計算される工具姿勢を含む平面内に存在するようにサンプリング周期毎に前記直線軸3軸と前記回転軸2軸を制御する制御であって、
該指令解析部は特異点通過判断部を有し、該特異点通過判断部は、該指令ブロック始点での指令と該指令ブロック終点での指令に基づく計算によって、該指令ブロックにおいて該工具回転用回転軸が任意の位置となる特異点または工具姿勢が該特異点での工具姿勢に対して設定値より近くなる特異点近傍を通過するか否かを判断し、
該指令解析部は特異点動作回避準備部を有し、該特異点動作回避準備部は、該特異点通過判断部において該特異点または該特異点近傍を通過すると判断された場合には、該工具回転用回転軸の移動がなくなるような該工具傾斜用回転軸のブロック終点を計算することによって指令ブロック終点における工具姿勢が指令回転軸位置に基づいて計算される工具姿勢と同じ工具姿勢となるように該指令ブロック全体の工具経路を変更した工具経路を作成し、
該補間処理部は特異点動作回避部を有し、該特異点動作回避部は、該特異点動作回避準備部で変更された工具経路を実行することを特徴とする5軸加工機用数値制御装置。
A command analysis unit for machining a workpiece fixed on a table with a tool by controlling a tool orientation of a 5-axis machining machine having three linear axes, a tool tilting rotary axis, and a tool rotating rotary axis. In a numerical control device for a 5-axis machine having an interpolation processing unit,
The tool posture control is a tool posture in which the posture of the tool with respect to the workpiece between the command block start point and the command block end point of the command block is calculated based on the command rotation axis positions at the command block start point and the command block end point. Control for controlling the three linear axes and the two rotational axes for each sampling period so as to exist in a plane including
The command analysis unit includes a singular point passage determination unit, and the singular point passage determination unit performs the tool rotation in the command block by calculation based on a command at the command block start point and a command at the command block end point. Determine whether the singular point or tool posture at which the rotation axis is at an arbitrary position passes near the singular point near the set value with respect to the tool posture at the singular point,
The command analysis unit includes a singular point motion avoidance preparation unit, and when the singular point motion avoidance preparation unit determines that the singular point passage determination unit passes the singular point or the vicinity of the singular point, By calculating the block end point of the tool tilting rotation axis so that the movement of the tool rotating shaft is eliminated, the tool posture at the command block end point becomes the same as the tool posture calculated based on the command rotating shaft position. And create a tool path in which the tool path of the entire command block is changed,
The interpolation processing unit includes a singular point operation avoiding unit, and the singular point operation avoiding unit executes the tool path changed by the singular point operation avoiding preparation unit. apparatus.
JP2008316865A 2008-12-12 2008-12-12 Numerical control device for 5-axis machine Active JP5350766B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008316865A JP5350766B2 (en) 2008-12-12 2008-12-12 Numerical control device for 5-axis machine

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008316865A JP5350766B2 (en) 2008-12-12 2008-12-12 Numerical control device for 5-axis machine

Publications (2)

Publication Number Publication Date
JP2010140312A JP2010140312A (en) 2010-06-24
JP5350766B2 true JP5350766B2 (en) 2013-11-27

Family

ID=42350398

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008316865A Active JP5350766B2 (en) 2008-12-12 2008-12-12 Numerical control device for 5-axis machine

Country Status (1)

Country Link
JP (1) JP5350766B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109696879A (en) * 2017-10-24 2019-04-30 发那科株式会社 Numerical control device

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102371505B (en) * 2010-08-18 2013-10-09 中国科学院沈阳计算技术研究所有限公司 Method for detecting singular area in five-axis machining
CN102269984B (en) * 2011-03-17 2012-10-10 华中科技大学 Post-processing method for five-axis linked numerical control processing
JP5417391B2 (en) * 2011-07-29 2014-02-12 新日本工機株式会社 Numerical controller
JP5417392B2 (en) 2011-07-29 2014-02-12 新日本工機株式会社 Numerical controller
DE112012006403T5 (en) * 2012-05-22 2015-03-05 Mitsubishi Electric Corporation Numerical control device
US9448553B2 (en) * 2012-06-19 2016-09-20 D.P. Technology Corp. Cam integrated CNC control of machines
CN104508579B (en) * 2012-07-26 2016-08-24 三菱电机株式会社 Numerical control device
CN107608313B (en) * 2017-09-11 2019-09-27 大连理工大学 A five-axis double-spline curve interpolation speed planning method
EP3715045B1 (en) * 2017-11-22 2023-12-20 Makino Milling Machine Co., Ltd. Machine tool
US11801577B2 (en) 2020-03-18 2023-10-31 Sodick Co., Ltd. 5-axis processing machine
JPWO2023073782A1 (en) * 2021-10-25 2023-05-04

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4101665B2 (en) * 2003-01-16 2008-06-18 三菱電機株式会社 Numerical controller
JP2008287471A (en) * 2007-05-17 2008-11-27 Fanuc Ltd Numerical control method for five-axis processing machine

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109696879A (en) * 2017-10-24 2019-04-30 发那科株式会社 Numerical control device
CN109696879B (en) * 2017-10-24 2021-07-09 发那科株式会社 Numerical controller

Also Published As

Publication number Publication date
JP2010140312A (en) 2010-06-24

Similar Documents

Publication Publication Date Title
JP5350766B2 (en) Numerical control device for 5-axis machine
JP4351281B2 (en) Numerical control device for controlling a 5-axis machine
JP6457432B2 (en) Servo control device, control method and computer program for machine tool for rocking cutting
US9915516B2 (en) Method for controlling shape measuring apparatus
JP6644630B2 (en) Machining program processing device and multi-axis machine equipped with the same
JP4503659B2 (en) Numerical controller for coordinate transformation tool phase control
JP4902815B1 (en) Numerical controller
US7083368B2 (en) Numerical control apparatus
JP4796936B2 (en) Processing control device
JP6012560B2 (en) Numerical controller
JP5452788B1 (en) Numerical controller
JP2016038617A (en) Numerical control device with corner path generation function taking account of acceleration and deceleration after interpolation
US5765976A (en) Method of controlling the normal direction of the main shaft of the numerical control machine tool
JP5905521B2 (en) Numerical control device characterized by suppressing backlash generated during tool tip point control
JP2020067863A (en) Program correction device
JP5399881B2 (en) Numerical control device for 5-axis machine
JP6487490B2 (en) Numerical controller
JP4734439B2 (en) Numerical control device for 4-axis machine
JP2012056005A (en) Method and apparatus for setting parameter
US11513501B2 (en) Numerical controller, CNC machine tool, numerical control method and non-transitory computer readable medium recording a numerical control program
JPH0146276B2 (en)
JP3520142B2 (en) Quadrant projection correction parameter determination device
JP2579911B2 (en) High-speed NC processing machine by copying operation
JPH0474205A (en) Correction system for tool diameter
JP3560710B2 (en) Robot positioning method and positioning device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110621

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121002

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121029

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130507

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130708

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130730

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130822

R150 Certificate of patent or registration of utility model

Ref document number: 5350766

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150