[go: up one dir, main page]

WO2016199266A1 - 数値制御装置 - Google Patents

数値制御装置 Download PDF

Info

Publication number
WO2016199266A1
WO2016199266A1 PCT/JP2015/066850 JP2015066850W WO2016199266A1 WO 2016199266 A1 WO2016199266 A1 WO 2016199266A1 JP 2015066850 W JP2015066850 W JP 2015066850W WO 2016199266 A1 WO2016199266 A1 WO 2016199266A1
Authority
WO
WIPO (PCT)
Prior art keywords
rotation axis
angle
tolerance
smoothing
axis angle
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.)
Ceased
Application number
PCT/JP2015/066850
Other languages
English (en)
French (fr)
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to PCT/JP2015/066850 priority Critical patent/WO2016199266A1/ja
Priority to US15/580,407 priority patent/US10459425B2/en
Priority to JP2016507714A priority patent/JP6000496B1/ja
Publication of WO2016199266A1 publication Critical patent/WO2016199266A1/ja
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/404Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by control arrangements for compensation, e.g. for backlash, overshoot, tool offset, tool wear, temperature, machine construction errors, load, inertia
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/4093Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by part programming, e.g. entry of geometrical information as taken from a technical drawing, combining this with machining and material information to obtain control information, named part programme, for the NC machine
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/4097Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by using design data to control NC machines, e.g. CAD/CAM
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/34Director, elements to supervisory
    • G05B2219/34015Axis controller
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36403Incremental detector of position deviation attached to tool for correction
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/41Servomotor, servo controller till figures
    • G05B2219/41443Position reference ffw for compensation of position
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/50Machine tool, machine tool null till machine tool work handling
    • G05B2219/50353Tool, probe inclination, orientation to surface, posture, attitude

Definitions

  • the present invention relates to a numerical control device for operating a machine tool based on a machining program.
  • CAM Computer Aided Manufacturing
  • CAM Computer Aided Manufacturing
  • the command position and orientation created by the CAM have a truncation error or the number of output digits at the time of convergence calculation. May contain rounding errors due to limitations. Due to these errors, the trajectory to be expressed is changing smoothly, but the output command loses the smoothness of the trajectory, or a minute reciprocating motion occurs on a specific axis. Can happen.
  • a command including an unsmooth trajectory as described above may cause vibration during machine operation or scratches on the machined surface. Therefore, in order to avoid these, conventionally, a function for smoothing the command of the machining program has been used. As such a technique, for example, there is a technique described in Patent Document 1.
  • a command is obtained by smoothing command data at a command point approximating a curve shape with a line segment, a curve is obtained, and a smoothed curve and a tolerance amount indicating a set allowable correction amount are smaller than the minimum unit of the command data. Correct the command point in units.
  • a technique is disclosed in which the acceleration at the time of driving the machine tool is reduced, the speed is calculated by using the corrected command point so that the acceleration of each moving component is within a specified value, and the speed is controlled.
  • the tolerance amount for limiting the correction amount of the command point is constant, and when the same correction amount is given as in the rotation axis of a machine tool, the correction depends on the current tool position and orientation. There is a problem that it cannot be applied to an axis in which the amount of change in the front and rear tool position and orientation changes. That is, there is a problem that the command value cannot be corrected for an axis whose influence on the position and orientation of the tool changes according to the state of the tool, such as a rotation axis.
  • the present invention has been made in view of the above, and an object of the present invention is to obtain a numerical control device that enables correction of a command value for an axis whose influence on the position and orientation of a tool changes.
  • the present invention provides a tool posture vector tolerance input unit that accepts a tolerance of a tool posture vector correction amount, and a tool posture calculated from a rotation axis angle before smoothing.
  • a rotation axis tolerance determining unit that determines the tolerance of the correction amount of the rotation axis based on the tolerance of the tool posture vector and the rotation angle of the rotation axis before smoothing so that the angle change of the rotation axis becomes smooth
  • a rotation axis angle smoothing processing unit that performs smoothing processing and calculates a rotation axis angle after smoothing, and a tolerance of the correction amount of the rotation axis angle from the rotation axis angle before smoothing to the rotation axis angle after smoothing
  • a rotation axis angle determination unit that corrects the rotation axis angle after smoothing so as to be within the range.
  • the numerical control device has an effect of making it possible to correct a command value for an axis whose influence on the position and orientation of the tool changes.
  • FIG. 1 is a block diagram showing a configuration of a numerical control apparatus according to a first embodiment of the present invention.
  • FIG. Flowchart explaining the flow of command generation processing in the first embodiment The figure which shows the relationship between the tool attitude
  • FIG. 5 is an enlarged view of the first embodiment.
  • FIG. Block diagram showing a configuration of a numerical control apparatus according to a second embodiment of the present invention. Flowchart explaining the flow of command generation processing in the second embodiment
  • FIG. 1 is a block diagram showing the configuration of the numerical control apparatus 101 according to the first embodiment of the present invention.
  • the numerical controller 101 includes a rotation axis tolerance determining unit 102 that calculates a tolerance amount of the rotation axis, a rotation axis angle smoothing processing unit 103 that performs a smoothing process so that an angle change of the rotation axis becomes smooth, and a smoothing A rotation axis angle determination unit 104 that corrects the subsequent rotation axis angle.
  • the numerical control apparatus 101 processes the tool posture vector tolerance input unit 105 for inputting the tolerance of the tool posture vector correction amount to the rotation axis tolerance determination unit 102, the rotation axis tolerance determination unit 102, and the rotation axis angle smoothing processing unit 103.
  • a machining program reading unit 106 that inputs command values for each axis described in the program, a command path interpolation unit 107 that receives the corrected rotation axis angle and calculates an interpolation point of the command path, and a command path interpolation unit 107 And an interpolation point output unit 108 that receives and outputs the interpolation point from.
  • FIG. 2 is a diagram illustrating a hardware configuration of the numerical control apparatus 101 according to the first embodiment.
  • the numerical control device 101 includes an arithmetic device 41 such as a CPU (Central Processing Unit) that performs arithmetic processing, a memory 42 used by the arithmetic device 41 for a work area, a storage device 43 that stores software such as a machining program, and a user.
  • the functions of the numerical control device 101 shown in FIG. 1 are realized by the arithmetic device 41 executing software.
  • the rotation axis tolerance determining unit 102 receives the tolerance of the tool posture vector correction amount from the tool posture vector tolerance input unit 105, and receives the command value of each axis from the machining program reading unit 106.
  • a method for specifying the tolerance of the correction amount of the tool posture vector a method of specifying an angle between vectors before and after the correction can be considered. However, it is not limited to this.
  • the rotation axis tolerance determining unit 102 determines the correction amount of the rotation axis angle based on the tool posture calculated from the tolerance of the correction amount of the tool posture vector and the rotation axis angle before smoothing which is the command value of each axis. Is calculated and output to the rotation axis angle determination unit 104.
  • the rotation axis angle smoothing processing unit 103 receives the rotation axis angle before smoothing which is a command value of each axis from the machining program reading unit 106, and the rotation axis before smoothing so that the change in the angle of the rotation axis becomes smooth. Smooth the angle.
  • the rotation axis angle smoothing processing unit 103 calculates the rotation axis angle after smoothing at the point of interest from the given command point sequence for each block described in the machining program. Then, the rotation axis angle smoothing processing unit 103 outputs the rotation axis angle before and after the smoothing to the rotation axis angle determination unit 104.
  • Examples of the smoothing method include a method of fitting a straight line or a curve by least square approximation, or a method of fitting a spline curve. However, it is not limited to these.
  • the rotation axis angle determination unit 104 receives the tolerance of the correction amount of the rotation axis angle from the rotation axis tolerance determination unit 102, and receives the rotation axis angle before and after smoothing from the rotation axis angle smoothing processing unit 103.
  • the rotation axis angle determination unit 104 corrects the rotation axis angle after smoothing so that the rotation axis angle after smoothing falls within the tolerance of the correction amount of the rotation axis angle from the rotation axis angle before smoothing. To do.
  • the correction method is to limit the amount of change by tolerance for each rotation axis, or while maintaining the direction of the vector connecting the points before and after smoothing on the coordinate space with each axis as the rotation axis, the points before and after smoothing
  • the tool posture vector tolerance input unit 105 receives the tolerance of the correction amount of the tool posture vector from the user and outputs it to the rotation axis tolerance determination unit 102.
  • the machining program reading unit 106 reads the command value of each axis from the machining program, and outputs the command value to the rotation axis tolerance determination unit 102, the rotation axis angle smoothing processing unit 103, and the command path interpolation unit 107.
  • the command path interpolation unit 107 receives the corrected rotation axis angle from the rotation axis angle determination unit 104, receives the command value of each axis from the machining program reading unit 106, and uses the servo amplifier for the tool position and the corrected rotation axis angle.
  • the interpolation point of the command path is calculated at the command cycle to the drive system and output to the interpolation point output unit 108.
  • the interpolation point output unit 108 receives the interpolation point of the command path from the command path interpolation unit 107 and outputs it to a drive system such as a servo amplifier.
  • FIG. 3 is a flowchart for explaining the flow of command generation processing in the first embodiment.
  • the details of the flow of the correction process of the rotation axis angle in the first embodiment will be described based on the flowchart shown in FIG.
  • the tolerance input unit 105 of the tool posture vector receives the tolerance of the correction amount of the tool posture and outputs it to the rotation axis tolerance determination unit 102 (step S101).
  • the machining program reading unit 106 confirms whether or not there is a line that has not been read in the machining program (step S102). When all the lines of the machining program have been read (step S102: No), the entire process is terminated.
  • step S102 If there is a line that has not been read (step S102: Yes), the process proceeds to step S103, and the machining program reading unit 106 reads the line next to the line that has been read in the machining program, and extracts the command value for each axis (step). S103).
  • the rotation axis tolerance determining unit 102 receives the command value of each axis from the machining program reading unit 106, and the tool posture calculated from the received command value of each axis, that is, the rotation shaft angle before smoothing, and the tool posture. Based on the tolerance of the tool posture correction amount received from the vector tolerance input unit 105, the tolerance of the correction amount of the rotation axis angle is determined (step S104).
  • the rotation axis angle smoothing processing unit 103 receives the command value of each axis, that is, the rotation axis angle before smoothing, from the machining program reading unit 106, performs the smoothing process of the rotation axis angle, and performs smoothing after the smoothing.
  • the rotation axis angle is calculated, and the rotation axis angle before and after smoothing is output to the rotation axis angle determination unit 104 (step S105).
  • the rotation axis angle determination unit 104 determines the rotation axis angle after smoothing so that the rotation axis angle after smoothing falls within the tolerance of the correction amount of the rotation axis angle from the rotation axis angle before smoothing. Correction is made (step S106).
  • the command path interpolation unit 107 receives the corrected rotation axis angle from the rotation axis angle determination unit 104, receives the command value of each axis from the machining program reading unit 106, and determines the tool position of the machining program and the corrected rotation axis. Based on the angle, an interpolation point of a command path in a command cycle to a drive system such as a servo amplifier is calculated and output to the interpolation point output unit 108 (step S107).
  • the interpolation point output unit 108 that has received the command path interpolation point from the command path interpolation unit 107 outputs the command path interpolation point to a drive system such as a servo amplifier (step S108), and returns to step S102.
  • FIG. 4 is a conceptual diagram illustrating a relationship between a change in the tool posture vector and the rotation axis according to the first embodiment.
  • FIG. 4 shows a case where the C axis that is the rotation axis is set perpendicularly to the workpiece 10, and shows a situation where the tool posture vector 1 is oriented in a direction inclined by an angle of the B axis from the C axis. Yes.
  • the B axis is set to rotate with the workpiece 10.
  • a position where the tool posture vector 1 is shifted by a change angle 2 is indicated by a conical surface 3.
  • the setting of the B axis and the C axis in FIG. 4 is one specific example, and is not limited to such a setting.
  • FIG. 5 is a correspondence diagram with the rotation axis angle when the tool posture vector in the first embodiment is changed by a certain amount.
  • FIG. 6 is an enlarged view of FIG. 5 in the first embodiment. 5 and 6 are diagrams showing the relationship between the angle of the B axis and the angle of the C axis and the tool posture vector group on the conical surface 3.
  • FIG. 6 is an enlarged view of the vicinity of the C axis angle of 90 [deg] in FIG. 5 in the direction of the C axis angle.
  • FIG. 7 and 8 are diagrams showing a change in the angle of the rotating shaft when the machining program is followed without applying the tolerance of the rotating shaft depending on the tool posture according to the first embodiment.
  • the horizontal axis indicates the tool tip movement amount L [mm]
  • the vertical axis indicates the B-axis angle [deg].
  • the horizontal axis indicates the amount of movement L [mm] of the tool tip
  • the vertical axis indicates the angle [deg] of the C axis.
  • 7 and 8 show a portion where an unnecessary axis reversal has occurred in response to a machining program command.
  • the graphs shown in FIG. 7 and FIG. 8 are excerpts of locations where unnecessary axis reversal of the rotation axis occurs in a machining program. Since the B-axis angle is close to 0 [deg], the large change in the C-axis angle has a small effect on the tool posture, so it is considered that unnecessary axis movement and axis reversal have occurred.
  • the reason why such a program is generated by the CAM is that, even when the tool posture change when calculating the tool posture is small, the C axis corresponding to the tool posture change as shown in FIGS. This is thought to be because the change in the angle of is large.
  • the correction amount of the rotation axis angle when the rotation axis angle is smoothed, the correction amount of the rotation axis angle so that the correction amount of the tool posture vector is within the given tolerance.
  • the tolerance of the rotation is determined and the angle of the rotation axis is corrected. That is, the tolerance of the correction amount of the rotation axis angle is calculated so that the change amount of the tool posture is constant, and the rotation shaft angle is smoothed within the tolerance.
  • the smoothing process is performed by removing from the reference point the command value of the angle at which the tolerance of the correction amount of the rotating shaft angle is equal to or greater than a predetermined value. It may be. In a command with a large tolerance of the correction amount of the rotation axis angle, the influence of the change in the rotation axis angle on the tool posture is small. Therefore, when the CAM generates a command value for the machining program, a slight change in the tool posture is generated. May cause the angle to be greatly reversed.
  • FIG. FIG. 9 is a block diagram showing a configuration of the numerical controller 201 according to the second embodiment of the present invention.
  • the numerical controller 201 includes a rotation axis tolerance determination unit 202 that calculates a tolerance amount of the rotation axis, a rotation axis angle smoothing processing unit 103 that performs a smoothing process so that an angle change of the rotation axis becomes smooth, and a smoothing A rotation axis angle determination unit 104 that corrects the subsequent rotation axis angle.
  • the numerical controller 201 includes a reference tolerance holding unit 204 that holds a reference tolerance that is a reference value of a tolerance amount of each rotating shaft according to the angle of the rotating shaft, and a tolerance magnification with respect to the reference tolerance.
  • a processing program in the tolerance magnification input unit 205 received from the machine, the tolerance input unit 203 according to the angle of the rotation axis for obtaining the tolerance according to the angle of the rotation axis, the rotation axis tolerance determination unit 202 and the rotation axis angle smoothing processing unit 103 From the machining program reading unit 106 for inputting the command value of each axis described in the inside, the command path interpolation unit 107 for receiving the corrected rotation axis angle and calculating the interpolation point of the command path, and the command path interpolation unit 107 An interpolation point output unit that receives and outputs the interpolation point.
  • the hardware configuration of the numerical control device 201 is the same as that shown in FIG. 2, and the function of the numerical control device 201 shown in FIG. 9 is the same as that shown in FIG. This is realized by the arithmetic unit 41 executing software.
  • the function of the reference tolerance holding unit 204 corresponding to the angle of the rotation axis is realized by the memory 42 or the storage device 43.
  • the rotation axis tolerance determining unit 202 receives the tolerance according to the angle of the rotation axis from the tolerance input unit 203 according to the angle of the rotation axis, and the rotation before smoothing which is a command value of each rotation axis from the processing program reading unit 106. Receives the axis angle. Based on the tolerance according to the angle of the rotation axis and the angle of the rotation axis before smoothing, the rotation axis angle determination unit calculates the tolerance of the correction amount of the rotation axis angle with respect to the current rotation axis angle value. To 104.
  • the function of the rotation axis angle smoothing processing unit 103 is the same as that described in the first embodiment.
  • the rotation axis angle determination unit 104 receives the rotation axis tolerance from the rotation axis tolerance determination unit 202, and receives the rotation axis angle before and after smoothing from the rotation axis angle smoothing processing unit 103.
  • the function of the rotation axis angle determination unit 104 is the same as that described in the first embodiment.
  • a reference tolerance holding unit 204 according to the angle of the rotation axis holds a reference tolerance that is a reference value of the tolerance amount of each rotation axis according to the angle of the rotation axis, and is input to the tolerance input unit 203 according to the angle of the rotation axis. Output. Since the reference tolerance holding unit 204 corresponding to the angle of the rotation axis holds the reference tolerance in advance, it is easy to set by omitting the user's input.
  • the tolerance magnification input unit 205 receives the tolerance magnification with respect to the reference tolerance from the user and outputs it to the tolerance input unit 203 corresponding to the angle of the rotation axis.
  • the tolerance input unit 203 according to the angle of the rotation axis receives the reference tolerance from the reference tolerance holding unit 204 according to the angle of the rotation axis, and receives the tolerance magnification with respect to the reference tolerance from the tolerance magnification input unit 205.
  • the tolerance input unit 203 according to the angle of the rotation axis calculates the tolerance according to the angle of the rotation axis by multiplying the reference tolerance by the tolerance magnification, and calculates the tolerance according to the angle of the rotation axis as the rotation axis tolerance determination unit 202. Output to.
  • the tolerance according to the angle of the rotation axis may represent the tolerance of the rotation axis a according to the value of the rotation axis a when there are a plurality of rotation axes a, b and c. In some cases, the tolerance of another rotation axis b or rotation axis c depending on the value may be expressed.
  • a method of expressing tolerance according to the angle of the rotation axis a method of expressing as a tolerance table determined for each angle in a certain range, or a method of expressing as an equation using the angle of the rotation axis as a parameter can be considered. However, it is not limited to these.
  • the machining program reading unit 106 reads the command value of each axis from the machining program and outputs the command value to the rotation axis tolerance determination unit 202, the rotation axis angle smoothing processing unit 103, and the command path interpolation unit 107.
  • command path interpolation unit 107 The functions of the command path interpolation unit 107 and the interpolation point output unit 108 are the same as those described in the first embodiment.
  • FIG. 10 is a flowchart for explaining the flow of command generation processing in the second embodiment.
  • the details of the flow of the rotation axis angle correction process in the second embodiment will be described based on the flowchart shown in FIG.
  • the tolerance magnification input unit 205 receives the tolerance magnification with respect to the reference tolerance for each angle of the rotation axis (step S201).
  • the tolerance input unit 203 according to the angle of the rotation axis receives the reference tolerance according to the angle of the rotation axis from the reference tolerance holding unit 204 according to the angle of the rotation axis (step S202), and from the tolerance magnification input unit 205.
  • a tolerance magnification is received, and a value obtained by multiplying each tolerance value by the tolerance magnification is set as a tolerance corresponding to the angle of the rotation axis (step S203).
  • the tolerance input unit 203 according to the angle of the rotation axis outputs the tolerance according to the angle of the rotation axis to the rotation axis tolerance determination unit 202.
  • the machining program reading unit 106 confirms whether or not there is a line that has not been read in the machining program (step S204). When all the lines of the machining program have been read (step S204: No), the entire process is terminated.
  • step S204 If there is a line that has not been read (step S204: Yes), the process proceeds to step S205, where the machining program reading unit 106 reads the line next to the line that has been read in the machining program, and extracts the command value for each axis (step). S205).
  • the rotation axis tolerance determining unit 202 receives the command value of each axis from the machining program reading unit 106, the angle of the rotation axis obtained from the received command value of each axis, and the tolerance according to the angle of the rotation axis, Based on the above, the tolerance of the rotation axis is determined (step S206).
  • the rotation axis angle smoothing processing unit 103 receives the command value of each axis from the machining program reading unit 106, performs the rotation axis angle smoothing processing, calculates the smoothed rotation axis angle, and performs smoothing.
  • the rotation axis angle before and after smoothing is output to the rotation axis angle determination unit 104 (step S207).
  • the rotation axis angle determination unit 104 determines the rotation axis angle after smoothing so that the rotation axis angle after smoothing falls within the tolerance of the correction amount of the rotation axis angle from the rotation axis angle before smoothing. Correction is made (step S208).
  • the command path interpolation unit 107 receives the corrected rotation axis angle from the rotation axis angle determination unit 104, receives the command value of each axis from the machining program reading unit 106, and determines the tool position of the machining program and the corrected rotation axis. Based on the angle, an interpolation point of a command path in a command cycle to a drive system such as a servo amplifier is calculated and output to the interpolation point output unit 108 (step S209).
  • the interpolation point output unit 108 that has received the command path interpolation point from the command path interpolation unit 107 outputs the command path interpolation point to a drive system such as a servo amplifier (step S210), and returns to step S204.
  • the numerical control device 201 when smoothing the angle of the rotating shaft, unlike the first embodiment, based on the tolerance according to the angle of the rotating shaft, Change the amount of rotation angle correction. Even with such an approach, it is possible to correct the command value for an axis whose influence on the position and orientation of the tool changes. As a result, the amount of correction of the C-axis angle, which is the rotation axis, can be increased at locations where the influence on the tool posture is small, such as when the B-axis angle value described in the first embodiment is small. Unnecessary reversal or change of the shaft angle can be suppressed.
  • the angle command value at which the tolerance of the rotation axis angle correction amount is equal to or greater than a predetermined value is removed from the reference point and the smoothing process is performed. You may do it.
  • the configuration described in the above embodiment shows an example of the contents of the present invention, and can be combined with another known technique, and can be combined with other configurations without departing from the gist of the present invention. It is also possible to omit or change the part.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Geometry (AREA)
  • Numerical Control (AREA)

Abstract

数値制御装置は、工具姿勢ベクトルの修正量のトレランスを受け付ける工具姿勢ベクトルのトレランス入力部(105)と、平滑化前の回転軸角度から算出される工具姿勢と工具姿勢ベクトルの修正量のトレランスとに基づいて回転軸の角度の修正量のトレランスを決定する回転軸トレランス決定部(102)と、回転軸の角度変化が滑らかになるように平滑化前の回転軸角度に平滑化処理を行い平滑化後の回転軸角度を算出する回転軸角度平滑化処理部(103)と、平滑化後の回転軸角度が平滑化前の回転軸角度から回転軸の角度の修正量のトレランスの範囲内に収まるように平滑化後の回転軸角度を修正する回転軸角度決定部(104)と、を備える。

Description

数値制御装置
 本発明は、加工プログラムに基づいて、工作機械を動作させる数値制御装置に関する。
 工作機械を動作させる加工プログラムを作成する際には、CAM(Computer Aided Manufacturing)を用いることが多いが、CAMで作成された指令位置および姿勢には、収束計算時の打切り誤差または出力桁数の制限による丸め誤差が含まれている場合がある。これらの誤差が原因となって、本来表現したい軌跡は滑らかに変化しているにも関わらず、出力された指令では軌跡の滑らかさが失われる、或いは特定の軸について微小な往復動作が発生する、といったことが起こり得る。
 上述のような滑らかでない軌跡を含む指令は、機械動作時の振動または加工面上の傷の原因となる可能性がある。従って、これらを避けるため、従来から、加工プログラムの指令を平滑化する機能が用いられている。そのような技術として、例えば、特許文献1に記載された技術がある。
 特許文献1においては、曲線形状を線分で近似した指令点の指令データを平滑化して曲線を求め、スムージングされた曲線と設定された許容修正量を示すトレランス量で指令データの最小単位より細かい単位で指令点を修正する。これによって工作機械の駆動時の加速度を小さくし、修正された指令点を用いて各移動成分の加速度が規定値以内に収まるような速度を演算し、速度制御を行なう技術が開示されている。
特許第3958112号公報
 しかしながら、上記従来の技術においては、指令点の修正量を制限するトレランス量が一定であり、工作機械の回転軸のように同じ修正量を与えた際に現在の工具位置姿勢に依存して修正前後の工具位置姿勢の変化量が変わる軸に対しては適用出来ないという問題があった。即ち、回転軸の様に、その時々の状態に応じて工具の位置姿勢に与える影響が変化する軸に対しての指令値の修正が出来ないという問題があった。
 本発明は、上記に鑑みてなされたものであって、工具の位置姿勢に与える影響が変化する軸に対しての指令値の修正を可能にする数値制御装置を得ることを目的とする。
 上述した課題を解決し、目的を達成するために、本発明は、工具姿勢ベクトルの修正量のトレランスを受け付ける工具姿勢ベクトルのトレランス入力部と、平滑化前の回転軸角度から算出される工具姿勢と工具姿勢ベクトルの修正量のトレランスとに基づいて回転軸の角度の修正量のトレランスを決定する回転軸トレランス決定部と、回転軸の角度変化が滑らかになるように平滑化前の回転軸角度に平滑化処理を行い平滑化後の回転軸角度を算出する回転軸角度平滑化処理部と、平滑化後の回転軸角度が平滑化前の回転軸角度から回転軸の角度の修正量のトレランスの範囲内に収まるように平滑化後の回転軸角度を修正する回転軸角度決定部と、を備えることを特徴とする。
 本発明にかかる数値制御装置は、工具の位置姿勢に与える影響が変化する軸に対しての指令値の修正を可能にするという効果を奏する。
本発明の実施の形態1にかかる数値制御装置の構成を示すブロック図 実施の形態1にかかる数値制御装置のハードウェア構成を示す図 実施の形態1における指令生成処理の流れを説明するフローチャート 実施の形態1にかかる工具姿勢ベクトルと回転軸との関係を示す図 実施の形態1における工具姿勢ベクトルを一定量変化させた際の回転軸角度との対応図 実施の形態1における図5の拡大図 実施の形態1にかかる工具姿勢に依存した回転軸のトレランスを適用せずに加工プログラムに従った場合の回転軸の角度変化を示す図 実施の形態1にかかる工具姿勢に依存した回転軸のトレランスを適用せずに加工プログラムに従った場合の回転軸の角度変化を示す図 本発明の実施の形態2にかかる数値制御装置の構成を示すブロック図 実施の形態2における指令生成処理の流れを説明するフローチャート
 以下に、本発明の実施の形態にかかる数値制御装置を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
実施の形態1.
 図1は、本発明の実施の形態1にかかる数値制御装置101の構成を示すブロック図である。数値制御装置101は、回転軸のトレランス量を算出する回転軸トレランス決定部102と、回転軸の角度変化が滑らかになるように平滑化処理を行う回転軸角度平滑化処理部103と、平滑化後の回転軸角度を修正する回転軸角度決定部104と、を備える。
 数値制御装置101は、回転軸トレランス決定部102に工具姿勢ベクトル修正量のトレランスを入力する工具姿勢ベクトルのトレランス入力部105と、回転軸トレランス決定部102および回転軸角度平滑化処理部103に加工プログラム中に記載された各軸の指令値を入力する加工プログラム読み取り部106と、修正後の回転軸角度を受け取って指令経路の補間点を算出する指令経路補間部107と、指令経路補間部107から補間点を受け取って出力する補間点出力部108と、をさらに備える。
 図2は、実施の形態1にかかる数値制御装置101のハードウェア構成を示す図である。数値制御装置101は、演算処理を行うCPU(Central Processing Unit)といった演算装置41と、演算装置41がワークエリアに用いるメモリ42と、加工プログラムといったソフトウェアを記憶する記憶装置43と、ユーザとの間の入力インタフェースである入力装置44と、ユーザに情報を表示する表示装置45と、工作機械との通信機能を有する通信装置46と、を備える。図1に示した、数値制御装置101の機能は、演算装置41がソフトウェアを実行することにより実現される。
 回転軸トレランス決定部102は、工具姿勢ベクトルのトレランス入力部105から工具姿勢ベクトルの修正量のトレランスを受け取り、加工プログラム読み取り部106から各軸の指令値を受け取る。なお、工具姿勢ベクトルの修正量のトレランスの指定方法としては、修正前後のベクトル間の角度を指定する方法が考えられる。ただし、これに限定されるものではない。そして、回転軸トレランス決定部102は、工具姿勢ベクトルの修正量のトレランスおよび各軸の指令値である平滑化前の回転軸角度から算出される工具姿勢に基づいて、回転軸の角度の修正量のトレランスを算出して回転軸角度決定部104に出力する。
 回転軸角度平滑化処理部103は、加工プログラム読み取り部106から各軸の指令値である平滑化前の回転軸角度を受け取り、回転軸の角度変化が滑らかになるように平滑化前の回転軸角度に平滑化処理を行う。すなわち、回転軸角度平滑化処理部103は、加工プログラムに記述されたブロック毎の与えられた指令点列から着目点における平滑化後の回転軸角度を算出する。そして、回転軸角度平滑化処理部103は、平滑化前および平滑化後の回転軸角度を回転軸角度決定部104に出力する。平滑化処理の方法としては、最小2乗近似による直線或いは曲線の当てはめを行う方法、またはスプライン曲線のフィッティングといった方法が挙げられる。ただし、これらに限定されるものではない。
 回転軸角度決定部104は、回転軸トレランス決定部102から回転軸の角度の修正量のトレランスを受け取り、回転軸角度平滑化処理部103から平滑化前および平滑化後の回転軸角度を受け取る。回転軸角度決定部104は、平滑化後の回転軸角度が平滑化前の回転軸角度から回転軸の角度の修正量のトレランスの範囲内に収まるように、平滑化後の回転軸角度を修正する。修正方法としては、回転軸ごとにトレランスで変更量を制限する方法、または回転軸を各軸とする座標空間上での平滑化前後の点を結ぶベクトルの方向を保ちながら、平滑化前後の点を結ぶベクトルの長さをトレランス内に制限する方法が挙げられる。ただし、これらに限定されるものではない。
 工具姿勢ベクトルのトレランス入力部105は、工具姿勢ベクトルの修正量のトレランスをユーザから受け付け、回転軸トレランス決定部102に出力する。
 加工プログラム読み取り部106は、加工プログラムから各軸の指令値を読み取り、回転軸トレランス決定部102、回転軸角度平滑化処理部103および指令経路補間部107に出力する。
 指令経路補間部107は、回転軸角度決定部104から修正後の回転軸角度を受け取り、加工プログラム読み取り部106から各軸の指令値を受け取り、工具位置および修正後の回転軸角度について、サーボアンプといった駆動系への指令周期で指令経路の補間点を算出し、補間点出力部108に出力する。
 補間点出力部108は、指令経路補間部107から指令経路の補間点を受け取り、サーボアンプといった駆動系に出力する。
 図3は、実施の形態1における指令生成処理の流れを説明するフローチャートである。以下、実施の形態1における回転軸角度の修正処理の流れの詳細について、図3に示したフローチャートに基づいて説明する。
 まず、工具姿勢ベクトルのトレランス入力部105は、工具姿勢の修正量のトレランスを受け取り、回転軸トレランス決定部102に出力する(ステップS101)。
 ついで、加工プログラム読み取り部106が、加工プログラムに読み取っていない行があるか否かを確認する(ステップS102)。加工プログラムの全ての行を読み終わっている場合(ステップS102:No)、全体の処理を終了する。
 読み取っていない行がある場合(ステップS102:Yes)、ステップS103に進み、加工プログラム読み取り部106は、加工プログラムの読み取り済みの行の次の行を読み取り、各軸の指令値を抽出する(ステップS103)。
 ついで、回転軸トレランス決定部102は、加工プログラム読み取り部106から各軸の指令値を受け取り、受け取った各軸の指令値、即ち平滑化前の回転軸角度から算出される工具姿勢と、工具姿勢ベクトルのトレランス入力部105から受け取った工具姿勢の修正量のトレランスと、に基づいて回転軸の角度の修正量のトレランスを決定する(ステップS104)。
 ついで、回転軸角度平滑化処理部103は、加工プログラム読み取り部106から各軸の指令値、即ち平滑化前の回転軸角度を受け取り、回転軸の角度の平滑化処理を行って平滑化後の回転軸角度を算出し、平滑化前および平滑化後の回転軸角度を回転軸角度決定部104に出力する(ステップS105)。
 ついで、回転軸角度決定部104は、平滑化後の回転軸角度が平滑化前の回転軸角度から回転軸の角度の修正量のトレランスの範囲内に収まるように平滑化後の回転軸角度を修正する(ステップS106)。
 ついで、指令経路補間部107は、回転軸角度決定部104から修正後の回転軸角度を受け取り、加工プログラム読み取り部106から各軸の指令値を受け取り、加工プログラムの工具位置および修正後の回転軸角度に基づいて、サーボアンプといった駆動系への指令周期での指令経路の補間点を算出し、補間点出力部108に出力する(ステップS107)。
 ついで、指令経路補間部107から指令経路の補間点を受け取った補間点出力部108は、指令経路の補間点をサーボアンプといった駆動系に出力し(ステップS108)、ステップS102に戻る。
 以下、実施の形態1にかかる数値制御装置101により得られる効果を説明する。
 図4は、実施の形態1にかかる工具姿勢ベクトルの変化と回転軸との関係を示す概念図である。図4では、ワーク10に垂直に回転軸であるC軸が設定されている場合を示しており、C軸からB軸の角度だけ傾いた方向に工具姿勢ベクトル1が向いている状況を示している。B軸は図示しないが、ワーク10と共に回転するように設定されている。工具姿勢ベクトル1が変化角度2だけずれた位置が円錐面3で示されている。図4におけるB軸およびC軸の設定は一つの具体例であり、このような設定に限定されるわけではない。
 図5は、実施の形態1における工具姿勢ベクトルを一定量変化させた際の回転軸角度との対応図である。図6は、実施の形態1における図5の拡大図である。図5および図6は、具体的にはB軸の角度およびC軸の角度と円錐面3上の工具姿勢ベクトル群との関係を示した図になっている。図6は、図5におけるC軸の角度が90[deg]の周辺をC軸の角度の方向に拡大した図である。図5および図6は、工具姿勢ベクトル1の回転軸の角度が、(B軸の角度[deg],C軸の角度[deg])=(0[deg],90[deg]),(5[deg],90[deg]),(10[deg],90[deg]),(20[deg],90[deg]),(30[deg],90[deg]),(40[deg],90[deg])のそれぞれの場合において、工具姿勢ベクトル1を変化角度2だけずらした円錐面3上の姿勢ベクトル群をB軸の角度およびC軸の角度からなる座標上にプロットした状況を示している。図5および図6では、変化角度2を1[deg]としているが、B軸の角度の値が小さいほど、工具姿勢が特異姿勢に近づくので工具姿勢変化量である変化角度2が同じであっても、回転軸の角度、即ちC軸の角度に与える影響が大きいことが分かる。
 図7および図8は、実施の形態1にかかる工具姿勢に依存した回転軸のトレランスを適用せずに加工プログラムに従った場合の回転軸の角度変化を示す図である。図7は、横軸を工具先端の移動量L[mm]、縦軸をB軸の角度[deg]で示してある。図8は、横軸を工具先端の移動量L[mm]、縦軸をC軸の角度[deg]で示してある。図7および図8では、加工プログラムの指令で不要な軸反転が生じている箇所が示されている。
 図7および図8に示すグラフは、ある加工プログラムの中で、回転軸の不要な軸反転が発生している箇所を抜粋して示したものである。B軸の角度が0[deg]近くであることから、C軸の角度の大きな変化が工具姿勢に与える影響は小さいために不要な軸移動および軸反転が起こっていると考えられる。CAMによりこのようなプログラムが生成される理由としては、工具姿勢を算出する際の工具姿勢変化は微小であっても、図5および図6に示したように、工具姿勢変化に対応するC軸の角度の変化が大きいからであると考えられる。
 このような加工プログラムをそのまま動作させると、C軸の角度の変化が大きいため加減速による速度変化が大きくなり仕上げ面に傷などが生じる可能性がある。また、加減速による待ち時間分だけ加工時間が延びるといった様々な問題が生じる。
 しかし、実施の形態1にかかる数値制御装置101によれば、回転軸の角度を平滑化する際に、工具姿勢ベクトルの修正量が与えられたトレランス内に収まるように回転軸の角度の修正量のトレランスを決定して回転軸の角度の修正を行う。すなわち、工具姿勢の変化量が一定となるように回転軸の角度の修正量のトレランスを算出し、そのトレランス内で回転軸の角度の平滑化を実施する。
 したがって、工具の位置姿勢に与える影響が変化する軸に対しての指令値の修正が可能になる。その結果、上記の例でB軸の角度の値が小さい場合のように工具姿勢に与える影響が小さい箇所では回転軸であるC軸の角度の修正量を大きくすることが可能となり回転軸角度の不要な反転または変化を抑制できる。同時に、B軸の角度の値が大きい場合のように工具姿勢に与える影響が大きい箇所では、回転軸であるC軸の角度の修正量を小さく制限することで回転軸角度の過剰な修正を防いでユーザが意図した経路からのずれを抑制することが可能となる。
 また、実施の形態1のS105における回転軸の平滑化処理において、回転軸の角度の修正量のトレランスが予め定めた値以上となる角度の指令値を参照点から除いて平滑化処理を行うようにしてもよい。回転軸の角度の修正量のトレランスが大きい指令においては、回転軸の角度の変化が工具姿勢に与える影響が小さいので、CAMが加工プログラムの指令値を生成する際に、工具姿勢のわずかな変化により角度が大きく反転している場合がある。従って、回転軸の角度の修正量のトレランスが予め定めた値以上となる箇所における指令値よりもその前後の指令値の方が意味のある情報を持っている可能性が高くなる。したがって、そのような角度の指令値を除いて平滑化することにより、工具姿勢に与える影響が小さい箇所において回転軸の不要な反転または変化が生じている場合に、より効率的に平滑化することが可能となる。
実施の形態2.
 図9は、本発明の実施の形態2にかかる数値制御装置201の構成を示すブロック図である。数値制御装置201は、回転軸のトレランス量を算出する回転軸トレランス決定部202と、回転軸の角度変化が滑らかになるように平滑化処理を行う回転軸角度平滑化処理部103と、平滑化後の回転軸角度を修正する回転軸角度決定部104と、を備える。
 数値制御装置201は、回転軸の角度に応じた各回転軸のトレランス量の基準値である基準トレランスを保持する回転軸の角度に応じた基準トレランス保持部204と、基準トレランスに対するトレランス倍率をユーザから受け付けるトレランス倍率入力部205と、回転軸の角度に応じたトレランスを求める回転軸の角度に応じたトレランス入力部203と、回転軸トレランス決定部202および回転軸角度平滑化処理部103に加工プログラム中に記載された各軸の指令値を入力する加工プログラム読み取り部106と、修正後の回転軸角度を受け取って指令経路の補間点を算出する指令経路補間部107と、指令経路補間部107から補間点を受け取って出力する補間点出力部108と、をさらに備える。
 数値制御装置201のハードウェア構成は、図2に示されたものと同様であり、図9に示した、数値制御装置201の機能は、回転軸の角度に応じた基準トレランス保持部204を除いて演算装置41がソフトウェアを実行することにより実現される。回転軸の角度に応じた基準トレランス保持部204の機能は、メモリ42または記憶装置43により実現される。
 回転軸トレランス決定部202は、回転軸の角度に応じたトレランス入力部203から回転軸の角度に応じたトレランスを受け取り、加工プログラム読み取り部106から各回転軸の指令値である平滑化前の回転軸角度を受け取る。そして、回転軸の角度に応じたトレランスおよび平滑化前の回転軸の角度に基づいて、現在の回転軸の角度の値に対する回転軸の角度の修正量のトレランスを算出して回転軸角度決定部104に出力する。
 回転軸角度平滑化処理部103の機能は、実施の形態1で説明したのと同じである。
 回転軸角度決定部104は、回転軸トレランス決定部202から回転軸のトレランスを受け取り、回転軸角度平滑化処理部103から平滑化前および平滑化後の回転軸角度を受け取る。回転軸角度決定部104の機能は、実施の形態1で説明したのと同じである。
 回転軸の角度に応じた基準トレランス保持部204は、回転軸の角度に応じた各回転軸のトレランス量の基準値である基準トレランスを保持し、回転軸の角度に応じたトレランス入力部203に出力する。回転軸の角度に応じた基準トレランス保持部204は、基準トレランスを予め保持しているので、ユーザの入力の手間が省けて設定が容易となる。
 トレランス倍率入力部205は、基準トレランスに対するトレランス倍率をユーザから受け付け、回転軸の角度に応じたトレランス入力部203に出力する。
 回転軸の角度に応じたトレランス入力部203は、回転軸の角度に応じた基準トレランス保持部204から基準トレランスを受け取り、トレランス倍率入力部205から基準トレランスに対するトレランス倍率を受け取る。回転軸の角度に応じたトレランス入力部203は、基準トレランスにトレランス倍率を乗算したものを回転軸の角度に応じたトレランスとして算出し、回転軸の角度に応じたトレランスを回転軸トレランス決定部202に出力する。
 回転軸の角度に応じたトレランスは、回転軸が回転軸a,bおよびcと複数ある場合に、回転軸aの値に応じた回転軸aのトレランスを表す場合もあるが、回転軸aの値に応じた他の回転軸bまたは回転軸cのトレランスを表す場合もある。また、回転軸の角度に応じたトレランスの表現方法としては、一定範囲の角度毎に定めたトレランステーブルとして表現する方法、または、回転軸の角度をパラメータとする式として表現する方法が考えられる。ただし、これらに限定されない。
 加工プログラム読み取り部106は、加工プログラムから各軸の指令値を読み取り、回転軸トレランス決定部202、回転軸角度平滑化処理部103および指令経路補間部107に出力する。
 指令経路補間部107および補間点出力部108の機能は、実施の形態1で説明したのと同じである。
 図10は、実施の形態2における指令生成処理の流れを説明するフローチャートである。以下、実施の形態2における回転軸角度修正処理の流れの詳細について、図10に示したフローチャートに基づいて説明する。
 まず、トレランス倍率入力部205は、回転軸の角度毎の基準トレランスに対するトレランス倍率を受け取る(ステップS201)。
 ついで、回転軸の角度に応じたトレランス入力部203は、回転軸の角度に応じた基準トレランス保持部204から回転軸の角度に応じた基準トレランスを受け取り(ステップS202)、トレランス倍率入力部205からトレランス倍率を受け取り、基準トレランスの各値にトレランス倍率を乗算した値を回転軸の角度に応じたトレランスとする(ステップS203)。そして、回転軸の角度に応じたトレランス入力部203は、回転軸の角度に応じたトレランスを回転軸トレランス決定部202に出力する。
 ついで、加工プログラム読み取り部106が、加工プログラムに読み取っていない行があるか否かを確認する(ステップS204)。加工プログラムの全ての行を読み終わっている場合(ステップS204:No)、全体の処理を終了する。
 読み取っていない行がある場合(ステップS204:Yes)、ステップS205に進み、加工プログラム読み取り部106は、加工プログラムの読み取り済みの行の次の行を読み取り、各軸の指令値を抽出する(ステップS205)。
 ついで、回転軸トレランス決定部202が、加工プログラム読み取り部106から各軸の指令値を受け取り、受け取った各軸の指令値から得られる回転軸の角度と、回転軸の角度に応じたトレランスと、に基づいて回転軸のトレランスを決定する(ステップS206)。
 ついで、回転軸角度平滑化処理部103は、加工プログラム読み取り部106から各軸の指令値を受け取り、回転軸の角度の平滑化処理を行って平滑化後の回転軸角度を算出し、平滑化前および平滑化後の回転軸角度を回転軸角度決定部104に出力する(ステップS207)。
 ついで、回転軸角度決定部104は、平滑化後の回転軸角度が平滑化前の回転軸角度から回転軸の角度の修正量のトレランスの範囲内に収まるように平滑化後の回転軸角度を修正する(ステップS208)。
 ついで、指令経路補間部107は、回転軸角度決定部104から修正後の回転軸角度を受け取り、加工プログラム読み取り部106から各軸の指令値を受け取り、加工プログラムの工具位置および修正後の回転軸角度に基づいて、サーボアンプといった駆動系への指令周期での指令経路の補間点を算出し、補間点出力部108に出力する(ステップS209)。
 ついで、指令経路補間部107から指令経路の補間点を受け取った補間点出力部108は、指令経路の補間点をサーボアンプといった駆動系に出力し(ステップS210)、ステップS204に戻る。
 以上のように、実施の形態2にかかる数値制御装置201によれば、回転軸の角度を平滑化する際に、実施の形態1とは異なり、回転軸の角度に応じたトレランスに基づいて、回転軸の角度の修正量を変化させる。このようなアプローチによっても、工具の位置姿勢に与える影響が変化する軸に対しての指令値の修正が可能になる。その結果、実施の形態1で説明したB軸の角度の値が小さい場合のように工具姿勢に与える影響が小さい箇所では回転軸であるC軸の角度の修正量を大きくすることが可能となり回転軸角度の不要な反転または変化を抑制できる。同時に、B軸の角度の値が大きい場合のように工具姿勢に与える影響が大きい箇所では、回転軸であるC軸の角度の修正量を小さく制限することで回転軸角度の過剰な修正を防いでユーザが意図した経路からのずれを抑制することが可能となる。
 また、実施の形態2のS207における回転軸の平滑化処理においても、回転軸の角度の修正量のトレランスが予め定めた値以上となる角度の指令値を参照点から除いて平滑化処理を行うようにしてもよい。
 以上の実施の形態に示した構成は、本発明の内容の一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、本発明の要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。
 1 工具姿勢ベクトル、2 変化角度、3 円錐面、10 ワーク、41 演算装置、42 メモリ、43 記憶装置、44 入力装置、45 表示装置、46 通信装置、101,201 数値制御装置、102,202 回転軸トレランス決定部、103 回転軸角度平滑化処理部、104 回転軸角度決定部、105 工具姿勢ベクトルのトレランス入力部、106 加工プログラム読み取り部、107 指令経路補間部、108 補間点出力部、203 回転軸の角度に応じたトレランス入力部、204 回転軸の角度に応じた基準トレランス保持部、205 トレランス倍率入力部。

Claims (4)

  1.  工具姿勢ベクトルの修正量のトレランスを受け付ける工具姿勢ベクトルのトレランス入力部と、
     平滑化前の回転軸角度から算出される工具姿勢と前記工具姿勢ベクトルの修正量のトレランスとに基づいて回転軸の角度の修正量のトレランスを決定する回転軸トレランス決定部と、
     回転軸の角度変化が滑らかになるように前記平滑化前の回転軸角度に平滑化処理を行い平滑化後の回転軸角度を算出する回転軸角度平滑化処理部と、
     前記平滑化後の回転軸角度が前記平滑化前の回転軸角度から前記回転軸の角度の修正量のトレランスの範囲内に収まるように前記平滑化後の回転軸角度を修正する回転軸角度決定部と、
     を備えることを特徴とする数値制御装置。
  2.  回転軸の角度に応じた基準トレランスとトレランス倍率とに基づいて回転軸の角度に応じたトレランスを算出する回転軸の角度に応じたトレランス入力部と、
     前記回転軸の角度に応じたトレランスと平滑化前の回転軸角度とに基づいて回転軸の角度の修正量のトレランスを決定する回転軸トレランス決定部と、
     回転軸の角度変化が滑らかになるように前記平滑化前の回転軸角度に平滑化処理を行い平滑化後の回転軸角度を算出する回転軸角度平滑化処理部と、
     前記平滑化後の回転軸角度が前記平滑化前の回転軸角度から前記回転軸の角度の修正量のトレランスの範囲内に収まるように前記平滑化後の回転軸角度を修正する回転軸角度決定部と、
     を備えることを特徴とする数値制御装置。
  3.  前記基準トレランスを保持する回転軸の角度に応じた基準トレランス保持部と、
     前記基準トレランスに対応するトレランス倍率を受け付けるトレランス倍率入力部と、
     を備え、
     前記基準トレランスに前記トレランス倍率を乗算したものを前記回転軸の角度に応じたトレランスとする
     ことを特徴とする請求項2に記載の数値制御装置。
  4.  前記回転軸角度平滑化処理部は、前記回転軸の角度の修正量のトレランスが予め定めた値以上となる角度の指令値を除いて平滑化処理を行なう
     ことを特徴とする請求項1から3のいずれか1項に記載の数値制御装置。
     
PCT/JP2015/066850 2015-06-11 2015-06-11 数値制御装置 Ceased WO2016199266A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
PCT/JP2015/066850 WO2016199266A1 (ja) 2015-06-11 2015-06-11 数値制御装置
US15/580,407 US10459425B2 (en) 2015-06-11 2015-06-11 Numerical control device
JP2016507714A JP6000496B1 (ja) 2015-06-11 2015-06-11 数値制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2015/066850 WO2016199266A1 (ja) 2015-06-11 2015-06-11 数値制御装置

Publications (1)

Publication Number Publication Date
WO2016199266A1 true WO2016199266A1 (ja) 2016-12-15

Family

ID=56997734

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2015/066850 Ceased WO2016199266A1 (ja) 2015-06-11 2015-06-11 数値制御装置

Country Status (3)

Country Link
US (1) US10459425B2 (ja)
JP (1) JP6000496B1 (ja)
WO (1) WO2016199266A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110461540B (zh) * 2017-03-31 2020-12-15 株式会社牧野铣床制作所 刀具路径生成方法及装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06274229A (ja) * 1993-03-19 1994-09-30 Okuma Mach Works Ltd 数値制御装置
JP2005352876A (ja) * 2004-06-11 2005-12-22 Toyoda Mach Works Ltd Ncデータ作成装置、5軸nc工作機械の制御装置及びclデータ作成装置
JP2006268147A (ja) * 2005-03-22 2006-10-05 Nisshin Kogu Kk 経路情報変換装置及びプログラム並びに方法
JP2010146176A (ja) * 2008-12-17 2010-07-01 Fanuc Ltd 回転軸を有する工作機械用の数値制御装置
JP2013058035A (ja) * 2011-09-07 2013-03-28 Fanuc Ltd ワーク設置誤差補正部を有する多軸工作機械用数値制御装置
JP2015015006A (ja) * 2013-07-08 2015-01-22 ファナック株式会社 5軸加工機を制御する数値制御装置

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4891763A (en) * 1986-04-24 1990-01-02 Brother Kogyo Kabushiki Kaisha NC program editing and programming device
JPH0698554B2 (ja) * 1986-09-22 1994-12-07 豊田工機株式会社 数値制御加工装置
JPH0652484B2 (ja) * 1988-02-15 1994-07-06 豊田工機株式会社 非真円形工作物加工用数値制御装置
US4974165A (en) * 1988-11-28 1990-11-27 Mechanical Technology Incorporated Real time machining control system including in-process part measuring and inspection
EP0664186A4 (en) * 1992-10-09 1995-09-20 SYSTEM AND METHOD FOR DETERMINING MACHINING INFORMATION, AND SYSTEM AND METHOD FOR DETERMINING MACHINING PROCESS INFORMATION.
US5503160A (en) * 1993-10-12 1996-04-02 Hewlett-Packard Company Dynamic filter for real-time artifact removal from waveforms
US5406494A (en) * 1994-03-17 1995-04-11 Creative Technology Corporation Numerical control system with operator controlled cutting
DE69627198T2 (de) * 1996-11-07 2004-02-05 Kabushiki Kaisha Mori Seiki Seisakusho Erzeugung eines messprogramms für nc-bearbeitung und darauf gestütztes bearbeitungsmanagement
US6317646B1 (en) * 1997-03-19 2001-11-13 Fadal Machining Centers, Inc. CNC machine having interactive control of corner tolerance that is programmed to vary with the corner angle
US6242880B1 (en) * 1998-09-08 2001-06-05 Cimplus, Inc. Tolerance based motion control system
KR100563760B1 (ko) * 2000-07-31 2006-03-24 가부시키가이샤 도요다 쥬오 겐큐쇼 통합 cam 시스템, nc 데이터 생성 방법, 가공 설계 시스템, 가공 데이터 생성 장치 및 기록 매체
DE60230009D1 (de) * 2001-10-16 2009-01-08 Fanuc Ltd Numerische Steuerung
JP2003326438A (ja) * 2002-02-28 2003-11-18 Fanuc Ltd 工具異常検出装置
JP3958112B2 (ja) 2002-05-20 2007-08-15 ファナック株式会社 数値制御装置における速度制御方法
SG173407A1 (en) * 2005-03-23 2011-08-29 Hurco Co Inc Method of tolerance-based trajectory planning and control
US8024068B2 (en) * 2006-08-04 2011-09-20 Hurco Companies, Inc. Machine tool control system
JP4902316B2 (ja) * 2006-11-10 2012-03-21 東芝機械株式会社 斜め加工のための5軸加工機の姿勢保証システム
JP4972447B2 (ja) * 2007-04-06 2012-07-11 オークマ株式会社 数値制御装置
US8578581B2 (en) * 2007-04-16 2013-11-12 Pratt & Whitney Canada Corp. Method of making a part and related system
JP4351281B2 (ja) * 2007-12-13 2009-10-28 ファナック株式会社 5軸加工機を制御する数値制御装置
KR101162432B1 (ko) * 2010-03-12 2012-07-04 경북대학교 산학협력단 다축 제어 기계의 오차 보정 방법
US9002503B2 (en) * 2011-04-04 2015-04-07 Okuma Corporation Method and program for calculating correction value for machine tool
JP5326015B2 (ja) * 2012-02-20 2013-10-30 ファナック株式会社 加工曲線作成機能を有する数値制御装置
CN104321707B (zh) 2012-05-22 2016-08-24 三菱电机株式会社 数控装置
US9465380B2 (en) * 2013-08-02 2016-10-11 ICAM Research Corporation Device, system and methods for automatic development and optimization of positioning paths for multi-axis numerically controlled machining
US9939804B2 (en) * 2013-12-13 2018-04-10 Mitsubishi Electric Corporation Numerical control device and numerical control method
EP2952990B1 (de) * 2014-06-06 2019-02-20 Siemens Aktiengesellschaft Optimiertes Steuern einer zerspanenden Werkzeugmaschine
JP6162655B2 (ja) * 2014-07-04 2017-07-12 ファナック株式会社 テーブル形式データによる運転を行う数値制御装置
JP5855715B1 (ja) * 2014-08-07 2016-02-09 ファナック株式会社 工作機械
US20170038760A1 (en) * 2015-08-08 2017-02-09 General Electric Company Machine toolpath compensation using vibration sensing
US11027323B2 (en) * 2016-06-10 2021-06-08 Advanced Orthodontic Solutions Method and apparatus for auto-calibration of a wire bending machine

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06274229A (ja) * 1993-03-19 1994-09-30 Okuma Mach Works Ltd 数値制御装置
JP2005352876A (ja) * 2004-06-11 2005-12-22 Toyoda Mach Works Ltd Ncデータ作成装置、5軸nc工作機械の制御装置及びclデータ作成装置
JP2006268147A (ja) * 2005-03-22 2006-10-05 Nisshin Kogu Kk 経路情報変換装置及びプログラム並びに方法
JP2010146176A (ja) * 2008-12-17 2010-07-01 Fanuc Ltd 回転軸を有する工作機械用の数値制御装置
JP2013058035A (ja) * 2011-09-07 2013-03-28 Fanuc Ltd ワーク設置誤差補正部を有する多軸工作機械用数値制御装置
JP2015015006A (ja) * 2013-07-08 2015-01-22 ファナック株式会社 5軸加工機を制御する数値制御装置

Also Published As

Publication number Publication date
US10459425B2 (en) 2019-10-29
JP6000496B1 (ja) 2016-09-28
JPWO2016199266A1 (ja) 2017-06-22
US20180173193A1 (en) 2018-06-21

Similar Documents

Publication Publication Date Title
JP6257796B2 (ja) 工具経路の生成方法および工作機械
JP5615377B2 (ja) 工具経路の生成方法および生成装置
JP6644630B2 (ja) 加工プログラム処理装置およびこれを備えた多軸加工機
CN108369407A (zh) 刀具路径修正装置及刀具路径修正方法
WO2011052800A1 (ja) 工具経路の生成方法および装置
JP6242539B1 (ja) 数値制御装置
JP6548830B2 (ja) 指令値生成装置
CN113433889B (zh) 一种基于三段式羊角曲线的五轴机床加工的刀具轨迹规划方法
JPWO2020021793A1 (ja) 工具経路修正装置、工具経路修正方法および数値制御装置
JP4431880B2 (ja) 多軸数値制御装置用のncポストプロセッサ装置
CN114115112A (zh) 数控加工方法及装置
CN117359090A (zh) 加工轨迹拐角光顺方法、装置、加工设备及可读存储介质
JP6000496B1 (ja) 数値制御装置
JP5875740B1 (ja) 数値制御装置
CN118550249B (zh) 基于涂胶工艺的五轴机构轨迹规划方法、系统及介质
JP6480896B2 (ja) 数値制御装置および工具の移動制御方法
CN115205457B (zh) 轨迹平滑方法、数控机床及计算机可读存储介质
TWI541623B (zh) 五軸加工數值控制系統及其數值控制方法
JP3545486B2 (ja) 同軸手首ロボットの姿勢制御動作における急動作回避方法
CN109991928B (zh) 用于实现分段变坡加工的方法
CN114675600A (zh) 一种基于圆弧切线矢量的圆弧插补方法
JP2006227701A (ja) 円弧加工指令作成装置及びその方法並びにプログラム
CN115210662B (zh) 数值控制装置
CN117666476B (zh) 一种数控机床的控制方法、系统及电子设备
JP6021690B2 (ja) 数値制御装置

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2016507714

Country of ref document: JP

Kind code of ref document: A

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 15894951

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 15580407

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15894951

Country of ref document: EP

Kind code of ref document: A1