US20020003416A1 - Numerical control apparatus - Google Patents

Numerical control apparatus Download PDF

Info

Publication number
US20020003416A1
US20020003416A1 US09/879,240 US87924001A US2002003416A1 US 20020003416 A1 US20020003416 A1 US 20020003416A1 US 87924001 A US87924001 A US 87924001A US 2002003416 A1 US2002003416 A1 US 2002003416A1
Authority
US
United States
Prior art keywords
axis
synchronous
control
unit
command
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.)
Granted
Application number
US09/879,240
Other versions
US6404160B2 (en
Inventor
Masakazu Sagasaki
Yoshinori Yamada
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
Assigned to MITSUBISHI DENKI KABUSHIKI KAISHA reassignment MITSUBISHI DENKI KABUSHIKI KAISHA ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: SAGASAKI, MASAKAZU, YAMADA, YOSHINORI
Publication of US20020003416A1 publication Critical patent/US20020003416A1/en
Application granted granted Critical
Publication of US6404160B2 publication Critical patent/US6404160B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime 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
    • 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/414Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller
    • 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/414Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller
    • G05B19/4141Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller characterised by a controller or microprocessor per axis
    • 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/50216Synchronize speed and position of several axis, spindles
    • 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/50218Synchronize groups of axis, spindles

Definitions

  • the present invention in general relates to a numerical control apparatus for synchronous control of two or more spindle motors or servo motors driven in a machine tool. More particularly, this invention relates to a numerical control apparatus capable of realizing synchronous control of higher precision.
  • Some of the machine tools are hitherto capable of executing synchronous control of two or more spindle motors or servo motors to be driven.
  • the numerical control apparatus executes the processing program commanded from a paper tape or the like, that is, executes the numerical control process written in the processing program, and the spindle motors or servo motors of the machine tool are driven to process the work as commanded.
  • FIG. 12 is an essential block diagram showing an outline of a conventional numerical control apparatus for driving spindle motors or servo motors of a machine tool.
  • the conventional machine tool comprises a numerical control apparatus 101 for synchronously controlling a motor for driving a reference axis of a lathe and a motor for driving the synchronous axis, a processing program 102 in which a program for numerical control processing is written, the reference axis including a spindle amplifier 120 , a spindle motor 121 , a gear 122 , a reference spindle 123 , and an encoder 124 , and the synchronous axis including a spindle amplifier 140 , a spindle motor 141 , a gear 142 , a synchronous spindle 143 , and an encoder 144 , and the rotating speed of two spindles is synchronously controlled by the numerical control apparatus 101 , and further by closing chucks 125 and 145 , a work 200 is held between the reference spindle 123 and synchronous spindle 143 .
  • the spindle amplifiers 120 and 140 are installed between the numerical control apparatus 101 and spindle motor 121 , and between the numerical control apparatus 101 and spindle motor 121 , respectively, and the spindle amplifiers drive the corresponding spindle motors 121 and 141 .
  • the reference spindle 123 and synchronous spindle 143 installed by way of the gears 122 and 142 are controlled according to the feedback position from the corresponding encoders 124 and 144 .
  • the numerical control apparatus 101 comprises, as shown in the drawing, an analysis processing unit 103 for analyzing the information about the reference axis and synchronous axis, an interpolation processing unit 104 for issuing the interpolation position command or rotating speed command analyzed in the analysis processing unit 103 to subsequent circuits, a PLC circuit 105 for issuing a specified signal, a machine control signal processing unit 106 for processing the specified signal, a memory 107 for storing a processing program 102 , a parameter setting unit 108 for setting parameters, a screen display unit 109 for displaying the information in the memory 107 on a screen, axis control units 110 a , 110 b , 110 c , . . .
  • a reference axis control unit 111 which controls the reference axis on the basis of the received information
  • a synchronous axis control unit 112 which control the synchronous axis on the basis of the received information
  • a data input/output circuit 113 for issuing various information to the reference axis and synchronous axis.
  • the processing program 102 being read in from a tape reader is read out and stored in the memory 107 . Since the spindle synchronous control is a control executed by the spindle synchronous command code, the spindle synchronous command coded described in the processing program 102 is read out into the analysis processing unit 103 in every block from the memory 107 .
  • the spindle synchronous command code thus being read out is analyzed in the analysis processing unit 103 , and the analysis processing unit 103 notices its analysis result, that is, the information about the reference axis and synchronous axis for synchronous control to the interpolation processing unit 104 .
  • the interpolation processing unit 104 notices information about the reference axis, for example, to the axis control unit 110 b (see FIG. 12) assigned to the reference axis, out of the axis control units 110 a , 110 b , 110 c , . . . , and notices information about the synchronous axis to the axis control unit 110 c (see FIG. 12) assigned to the synchronous axis.
  • the spindle synchronous control is explained, but not in case of spindle synchronous control, for example, information about rotating speed is noticed to the axis control unit 110 a (see FIG. 12) not assigned to either reference axis or synchronous axis.
  • the axis control units 110 a , 110 b , 110 c , . . . are assigned as shown in the diagram for the sake of convenience of explanation, but each axis control unit operates similarly when assigned to the reference axis, assigned to synchronous axis, or not assigned to either.
  • the axis control unit 110 b notices information about the reference axis, rotating speed command and other information to the reference axis control unit 111 as shown in the diagram
  • the axis control unit 110 c notices information about the synchronous axis to the synchronous axis control unit 112 .
  • the command position of the reference axis is calculated from the received rotating speed command, and notices this command position to the data input/output circuit 113 and synchronous axis control unit 112 .
  • the synchronous axis control unit 112 calculates the command position of the synchronous axis according to the command position of the reference axis noticed from the referenced axis control unit 111 and the information about the synchronous axis is noticed to the data input/output circuit 113 .
  • the data input/output circuit 113 notices the received position commands to the spindle amplifiers 120 and 140 , and the spindle amplifier 120 having received the command position of reference axis rotates the reference spindle 123 by controlling the speed of the spindle motor 121 according to the received command position, and further the spindle amplifier 140 having received the command position of synchronous axis rotates the synchronization spindle 143 by controlling the speed of the spindle motor 141 according to the received command position.
  • the synchronous axis control unit 112 controls the command position of the synchronous axis on the axis of the command position of the reference axis calculated by the reference axis control unit 111 , so that spindle synchronous control is executed between one reference spindle 123 and one synchronous spindle 143 .
  • each axis is synchronized by noticing the command position, the axes are finally converged at the specified position, but each axis of synchronous control is different in the position control gain, speed and load, and hence there is a position deviation amount, and the precision of synchronism is lowered in an intermediate process.
  • one reference axis monitors fluctuations of two or more synchronous axes, and synchronous control is effected while correcting so as to decrease the position deviation amount, and therefore the control is very much complicated, and three or more spindles could not be synchronously controlled at the same time.
  • the axes may fluctuate due to disturbance or the like.
  • each axis moves in a direction for recovering the position deviation amount, and an abnormal torque occurs, and the work may be flawed or distorted.
  • the numerical control apparatus is for synchronously controlling a plurality of spindle motors or servo motors driven by a machine tool according to a processing program.
  • This numerical control apparatus comprises a memory unit (corresponding to a memory 7 described in an embodiment later) which stores the processing program, a synchronous control management unit (corresponding to synchronous control management unit 11 ) which manages the dominant relation of plural axes to be controlled synchronously, and plural axis control units (corresponding to axis control units 10 a , 10 b , 10 c , . . .
  • one axis control unit stores information about reference axis
  • plural axis control units stores information about synchronous axis control the individual motors, and the plural axes can be controlled synchronously in relation to one reference axis, and also other axis can be controlled synchronously on the basis of the reference axis.
  • the processing program being read out from the tape reader or the like is stored in the memory unit, and the information about the reference axis or synchronous axis, and the information about the rotating direction of synchronous axis, rotation ratio and others are analyzed inside, for example, on the basis of the spindle synchronous command described in the program, and the result is noticed to the synchronous control management unit.
  • the synchronous control management unit combination of all axes for synchronous control is management, and this information is noticed to the plural axis control units, thereby setting one axis control unit which controls the reference axis, and one or plural axis control units which control the synchronous axis.
  • the numerical control apparatus of the invention realizes synchronous control of three or more spindle motors or servo motors easily by management of the synchronous control management unit. That is, for one reference axis, plural axes (synchronous axes) can be control synchronously, and also other axis can be controlled synchronously on the basis of the synchronous axis.
  • each one of the plural axis control units comprises an axis control system changeover unit (corresponding to an axis control system changeover unit 71 described in embodiment below) which changes over to either system of speed control system (speed control mode) for driving the corresponding motor depending on the speed command value described in the processing program or the position control system (position control mode) for driving depending on the moving stroke per unit time converted from the speed command value, an axis control command converting unit (corresponding to an axis control command converting unit 72 ) which calculates the moving stroke per unit time from the speed command value with respect to the reference axis, reference position input and output units (corresponding to reference position input unit 73 and reference position output unit 75 ) which issues the moving stroke per unit time of the reference axis calculated in the axis control command value converting unit to other axis control unit, or for receiving the moving stroke per unit time of the reference axis calculated in other axis control unit, and a synchronous position calculation processing unit (corresponding to synchronous position calculation processing
  • the synchronous position calculation processing unit when controlling the reference axis, adds the moving stroke of the reference axis calculated in the axis control command converting unit to the reference position of the reference axis, and calculates the command position to the reference axis, and when controlling the synchronous axis, on the other hand, calculates the moving stroke per unit time of the synchronous axis, from the moving stroke received in the reference position input and output unit, the gear ratio of synchronous axis to referenced axis, command rotation ratio, and command unit time ratio, and adds the moving stroke to the reference position of the synchronous axis, thereby calculating the command position to the synchronous axis.
  • an accurate command position can be calculated, and the precision of synchronous control of axis can be enhanced.
  • the axis control system changeover unit of the axis control unit which control the synchronous axis calculates a theoretical command position by subtracting the speed command value described in the processing program, theoretical value of position deviation amount calculated from the position control gain of the motor, and delay amount corresponding to the sampling delay time of feedback position, from the feedback position from the axis, and later changes over from the ordinary speed control system to the position control system in a contracted state of fluctuation of position deviation amount.
  • each one of the plural axis control units further comprises a synchronous position correction unit (corresponding to a synchronous position correction unit 76 described in embodiment below) which corrects the fluctuation of the axis by calculating the position correction amount form the position deviation amount of reference axis and position deviation amount of synchronous axis, and adding the position correction amount to the command position of the synchronous axis.
  • a synchronous position correction unit corresponding to a synchronous position correction unit 76 described in embodiment below
  • the axis control unit which controls the reference axis calculates the command position to the reference axis
  • the plural axis control units which control the synchronous axis calculate the command position to the synchronous axis on the basis of the moving stroke per unit time received from the axis control unit which controls the reference axis.
  • the synchronous position correction unit corrects the fluctuation of the axis by adding the obtained position correction amount only to the command position of the synchronous axis. Therefore, since the axis can be controlled simultaneously without causing effect on processing during processing at the reference axis sided, the processing cycle can be shortened, and further by correcting the command position of the synchronous axis, the synchronous precision is enhanced.
  • the synchronous position correction unit in the axis control unit which controls the synchronous axis multiplies the position deviation amount of reference axis by the command rotation ratio of reference axis and synchronous axis, and the command unit time ratio, and calculates the difference between the calculation result and the position deviation amount of the reference axis, then determines the value of passing the obtained difference through the primary delay filter according to a specific time constant determined by the parameter as the position correction amount.
  • each one of the plural axis control units comprises a theoretical position deviation amount calculation processing unit (corresponding to an theoretical position deviation amount calculation processing unit 77 described in embodiment below) which calculates the theoretical position deviation amount from the speed control value described in the processing program and the position control gain of the motor, and the synchronization position correction unit, in the axis control unit which control the synchronous axis, calculates the difference between the theoretical position deviation amount of the reference axis calculated in the theoretical position deviation amount calculation processing unit and the actual position deviation amount obtained from the reference axis, and determines the value calculated from the difference, the command rotation ratio of the synchronous axis to the reference axis, and the command unit time ratio, as the position correction amount.
  • a theoretical position deviation amount calculation processing unit corresponding to an theoretical position deviation amount calculation processing unit 77 described in embodiment below
  • the synchronous position correction unit of the axis control unit which control the synchronous axis corrects the deviation portion occurring in synchronous control by using the actual delay amount to the theoretical position deviation amount of the reference axis as the position correction amount, synchronism deviation portion due to delay caused by cutting load or the like can be easily corrected, and moreover since the position control gain and load are different, even in case of synchronous control between axes always having a difference in position deviation amount, synchronous control of high precision can be realized without causing improper torque by correction. As a result, flaw or torsion of work can be prevented, so that processing of higher precision is possible.
  • each one of the plural axis control units comprises a synchronous correction amount fixing unit (corresponding to a synchronous correction amount fixing unit 78 described in embodiment below) which calculates the average of the position deviation amount in steady rotation on the reference axis and synchronous axis for synchronous control, and further calculates their difference, and the synchronous position correction unit determines, in the axis control unit which control the synchronous axis, the difference calculated in the synchronous correction amount fixing unit as the position correction amount.
  • a synchronous correction amount fixing unit corresponding to a synchronous correction amount fixing unit 78 described in embodiment below
  • the position correction amount of the axis control unit which control the synchronous axis corrects the deviation portion occurring during synchronous control by using the difference of the average values of position deviation amount on the reference axis and synchronous axis for synchronous control as the position correction amount
  • the position correction amount is a fixed value, so that the load by calculation of the position correction amount can be lessened.
  • the memory incorporates a synchronous correction coefficient holding unit (corresponding to a synchronous correction coefficient holding unit 51 described in embodiment below) which calculates the average of the position deviation amount in steady rotation on the reference axis and synchronous axis for synchronous control, at the time of initial adjustment of the machine tool, and holds the value obtained by dividing this average by the speed control value as the coefficient for obtaining the position deviation amount, and the synchronous position correction unit calculates, in the axis control unit which control the synchronous axis, the average of the position deviation amount in steady rotation on the reference axis and synchronous axis for synchronous control, by applying the speed command value by the coefficient held in the synchronous correction coefficient holding unit, and obtains this difference as the position correction amount.
  • a synchronous correction coefficient holding unit corresponding to a synchronous correction coefficient holding unit 51 described in embodiment below
  • the synchronous position correction unit of the axis control unit which control the synchronous axis calculates the average of the position deviation amount on the reference axis and synchronous axis for synchronous control, and the value obtained by dividing this average by the speed command value is held in the synchronous correction coefficient holding unit as the coefficient for obtaining the position deviation amount.
  • This held value is a constant for obtaining the position deviation amount not depending on the speed command value, and therefore if the speed command value is different from the time of initial adjustment in synchronous control, the position deviation amount in steady rotation can be easily calculated by multiplying the coefficient by the speed command value.
  • the numerical control apparatus may preferably further comprise a synchronous correction amount error canceling unit (corresponding to a synchronous correction amount error canceling unit 79 described in embodiment below) which cancels the variation component of position deviation amount caused by variation due to disturbance or the like, by subtracting the difference between the average of the position deviation amount in steady rotation on the axis for synchronous control and the actual position deviation amount, temporarily from the position correction amount.
  • a synchronous correction amount error canceling unit corresponding to a synchronous correction amount error canceling unit 79 described in embodiment below
  • the numerical control apparatus may preferably further comprise a multi-level acceleration and deceleration parameter memory unit (corresponding to a multi-level acceleration and deceleration parameter memory unit 81 described in embodiment below) which stores the multi-level acceleration an deceleration speed generated by the acceleration and deceleration pattern of ordinary speed control system, multi-level reference acceleration and deceleration time constant, and multi-level acceleration and deceleration time constant multiplying factor by manipulating the parameter setting screen, a reference inclination amount calculation unit (reference inclination amount calculation unit 83 ) which calculates the reference inclination amount, as the acceleration and deceleration speed per unit time, from the maximum rotating speed and multi-level reference acceleration and deceleration time constant of the reference spindle and synchronous spindle, a multi-level acceleration and deceleration pattern calculation unit (multi-level acceleration and deceleration pattern calculation unit 84 ) which calculates an appropriate multi-level acceleration and deceleration pattern from the set multi-level acceleration and deceleration pattern, and a multi-level
  • the multi-level acceleration and deceleration time constant is determined on the basis of the one of the largest inclination of acceleration and deceleration, and other acceleration and deceleration patterns defined by a constant multiple (1 or larger integer) of the multi-level acceleration and deceleration time constant, and therefore an appropriate multi-level acceleration and deceleration pattern can be selected and judged by a simple process of comparison of multi-level acceleration and deceleration time constants.
  • an appropriate multi-level acceleration and deceleration pattern is calculated from the ratio of the multi-level acceleration and deceleration time constants between spindles different in the multi-level acceleration and deceleration pattern, if it is necessary to select the one of the large inclination of acceleration and deceleration, it can be easily corrected to an appropriate multi-level acceleration and deceleration pattern.
  • FIG. 1 shows a configuration of a numerical control apparatus according to a first embodiment
  • FIG. 2 shows a configuration of axis control unit in the numerical control apparatus
  • FIG. 3 shows a synchronous control management matrix for management of a set of synchronous control
  • FIG. 4 is a flowchart for management of synchronous control
  • FIG. 5 shows a combination of synchronous control axes by analysis of spindle synchronous control command
  • FIG. 6 is a flowchart of axis control unit
  • FIG. 7 shows configuration of a numerical control apparatus according to a second embodiment
  • FIG. 8 shows a specific example of multi-level acceleration and deceleration pattern for synchronous control
  • FIG. 9 is a diagram showing a method of calculation of multi-level acceleration and deceleration time constant multiplying factor
  • FIG. 10 shows an example of setting of multi-level acceleration and deceleration pattern for synchronous control
  • FIG. 11 shows a method of selection and calculation of multi-level acceleration and deceleration pattern
  • FIG. 12 shows a configuration of a conventional numerical control apparatus.
  • FIG. 1 is an essential block diagram of the numerical control apparatus according to the first embodiment. This numerical control apparatus is capable of driving spindle motors or servo motors of a machine tool.
  • the machine tool of the invention comprises a numerical control apparatus 1 for synchronously controlling a motor for driving a reference axis and a motor for driving a synchronous axis, a processing program 2 storing a program for numerical control process, a reference axis including a spindle amplifier 20 , a spindle motor 21 , a gear 22 , a reference spindle 23 , and an encoder 24 , a first synchronous axis including a a spindle amplifier 40 , a spindle motor 41 , a gear 42 , a synchronous spindle 43 , and an encoder 44 , and a second synchronous axis including a spindle amplifier 60 , a spindle motor 61 , a gear 62 , a synchronous spindle 63 , and an encoder 64 , in which the rotating speed of the three spindles is synchronously controlled by the numerical control apparatus 1 , and a work 26 is held between the reference
  • the spindle amplifiers 20 , 40 , and 60 are installed respectively between the numerical control apparatus 1 and spindle motor 21 , between the numerical control apparatus 1 and spindle motor 41 , and between the numerical control apparatus 1 and spindle motor 61 , and the spindle amplifiers are driving the corresponding spindle motors 21 , 41 , and 61 .
  • the reference spindle 23 , synchronous spindle 43 , and synchronous spindle 63 installed respectively by way of the gears 22 , 42 , and 62 are driven according to the feedback position from the corresponding encoders 24 , 44 , and 64 .
  • the numerical control apparatus 1 comprises, as shown in the drawing, an analysis processing unit 3 for analyzing the information about the reference axis and synchronous axes, an interpolation processing unit 4 for transmitting the interpolation position command and rotating speed command analyzed in the analysis processing unit 3 to succeeding circuits, a PLC circuit 5 for issuing a specified signal, a machine control signal processing unit 6 for processing the specified signal, a memory 7 storing the processing program 2 and incorporating an synchronization correction coefficient holding unit 51 described below, a parameter setting unit 8 for setting various parameters by user s manipulation, a screen display unit 9 for displaying the information in the memory 7 on the screen, a synchronous control management unit 11 for managing the combination of spindles for synchronous control, axis control units 10 a , 10 b , 10 c , .
  • FIG. 2 is an essential block diagram specifically describing the axis control units 10 a , 10 b , 10 c , . . . in FIG. 1.
  • each axis control unit comprises an axis control system changeover unit 71 , an axis control command value converting unit 72 , a reference position input unit 73 , a synchronous position calculation processing unit 74 , a reference position output unit 75 , a synchronous position correction unit 76 , an theoretical position deviation amount calculation processing unit 77 , a synchronous correction amount fixing unit 78 , and a synchronous correction amount error temporary canceling unit 79 .
  • Each axis control unit can control either reference axis or synchronous axis by the management of the synchronous control management unit 11 .
  • the axis control system changeover unit 71 changes over the corresponding motor in either speed control system (speed control mode: control in ordinary state) for driving according to the command speed described in the processing program, or position control system (position control mode: synchronous control) for driving according to the moving stroke per unit time converted from the corresponding speed command value.
  • the axis control command value converting unit 72 calculates the moving stroke per unit time from the command speed to the reference axis.
  • the reference position input unit 73 receives the moving stroke per unit time of the reference axis calculated in other axis control unit.
  • the synchronous position calculation processing unit 74 calculates the command position to the corresponding axis on the basis of the moving stroke calculated in the axis control command value converting unit 72 or the moving stroke received in the reference position input unit 73 .
  • the reference position output unit 75 issues the moving stroke per unit time of the reference axis calculated in the axis control value converting unit 72 to other axis control unit.
  • the synchronous position correction unit 76 calculates the position correction amount from the position deviation amount of the reference axis and position deviation amount of synchronous axis, and corrects variation of axis by adding the position correction amount to the command position of the synchronous axis.
  • the theoretical position deviation amount calculation processing unit 77 calculates an ideal position deviation amount from the speed command value described in the processing program and the position control gain of the motor.
  • the synchronous correction amount fixing unit 78 calculates the average of position deviation amount in steady rotation on the reference axis and synchronous axis for synchronous control, further calculates the difference thereof, and determines the result of calculation as the fixed position correction amount.
  • the synchronous correction amount error temporary canceling unit 79 subtracts the difference of the average of position deviation amount in steady rotation on the reference axis and synchronous axis for synchronous control and the actual position deviation amount, temporarily from the position correction amount, and cancels the variation component of position deviation amount caused by variation due to disturbance or the like.
  • the spindle synchronous command described in the processing program 2 synchronous control of three spindles is explained, assuming to control the spindle 23 as reference spindle and spindle 43 as synchronous spindle, and further to control the spindle 23 as reference spindle and spindle 43 as synchronous spindle.
  • the axis control unit 10 a controls the spindle 23 through the spindle amplifier 20
  • the axis control unit 10 b controls the spindle 43 through the spindle amplifier 40
  • the axis control unit 10 c controls the spindle 63 through the spindle amplifier 60 .
  • the processing program 2 being read out, for example, from a tape reader is stored in the memory 7 , and when executing the processing program 2 , the analysis processing unit 3 reads out the processing program 2 block by block from the memory 7 , and analyzes the described spindle synchronous command.
  • This spindle synchronous command is analyzed by the analysis processing unit 3 as information about reference axis and synchronous axes, rotating direction and rotation ratio of synchronous axes, and noticed to the interpolation processing unit 4 . In the interpolation processing unit 4 , these items of information are noticed to the synchronous control management unit 11 .
  • the synchronous control management unit 11 combination of commanded synchronous control axes is managed, and the information about the reference axis is noticed to the axis control unit 10 a responsible for control of reference axis, out of axis control units 10 a , 10 b , 10 c , . . . , or the information about synchronous axes, and information of rotating direction and rotation ratio of synchronous axes 43 and 63 to the reference axis 23 are noticed to the axis control units 10 b , 10 c responsible for control of synchronous axes.
  • the reference position output unit 75 of the axis control unit 10 a and the reference position input unit 73 of the axis control units 10 b , 10 c are connected with each other, so that the synchronous control reference moving stroke of the reference axis mentioned below may be noticed to the synchronous axes.
  • spindle S 1 is the reference spindle
  • spindle S 2 is synchronously controlled
  • further spindle S 1 is the reference spindle
  • spindle S 3 is synchronously controlled.
  • unjust synchronous control pattern is checked. For example, in principle, it is not allowed to combine one synchronous axis with plural reference axes, and therefore if it is attempted to control spindle S 4 as reference axis and spindle S 1 simultaneously during synchronous control of spindle S 2 with spindle S 1 as reference axis, in the synchronous control management unit 11 , since spindle S 2 is already controlled synchronously with spindle S 1 as reference axis, synchronous control with spindle S 4 as reference axis is disabled. Therefore, such command is judged to be synchronous control command of unjust combination.
  • the synchronous control management unit 11 develops such matrix on the memory, and realizes a similar management.
  • the axis control system changeover unit 71 calculates a theoretical value of position deviation amount from the command speed described in the processing program and the position control gain of the axis, and further calculates the moving stroke corresponding to the sampling delay time of the feedback position from this command speed, and subtracts these calculation results from the feedback position from the spindle amplifier, and thereby calculates the command position.
  • a contracted state of variation of this position deviation amount in order to change over the effective command from the speed command value to the position command value, checking for waiting time determined by the attained speed or parameter, consequently, the control system to the spindle is changed over from the ordinary speed control system to the position control system of synchronous control.
  • the axis control command value converting unit 72 converts the speed command to the reference spindle 23 to the moving stroke per unit time, and notices this moving stroke to the synchronous position calculation processing unit 74 as the synchronous control reference moving stroke. Further, the synchronous position calculation processing unit 74 issues the synchronous control reference moving stroke to the axis control units 10 b , 10 c responsible for control of synchronous axes by way of the reference position output unit 75 .
  • the synchronous position calculation processing unit 74 adds the synchronous control reference moving stroke to the synchronous control reference position, and issues the result of addition to the synchronous position correction unit 76 as a new synchronous control reference position.
  • the synchronous position correction unit 76 in order to control the reference axis, the received synchronous control reference position is used as the command value, and the command position is noticed to the spindle amplifier 20 by way of the data input and output circuit 13 .
  • the reference position input unit 73 of the axis control unit 10 b receives the synchronous control reference moving stroke issued from the reference position output unit 75 of the axis control unit 10 a for controlling the reference axis 23 related by the synchronous control management unit 11 , and notices to the synchronous position calculation processing unit 74 .
  • the synchronous position calculation processing unit 74 multiplies the received synchronous control reference moving stroke by the gear ratio of the synchronous axis 43 to the reference axis 23 , command rotation ratio, and command unit ratio, and determines the product as the synchronous control reference moving stroke to the synchronous axis 43 .
  • the synchronous control reference moving stroke is not issued to other axis control unit.
  • this synchronous control reference moving stroke is added to the synchronous control reference position, and the result of addition is noticed to the synchronous position correction unit 76 as a new synchronous control reference position. Consequently, the synchronous position correction unit 76 calculates the position correction amount in a method described below from the position deviation amount of the reference axis 23 and the position deviation amount of the synchronous axis 43 , and adds it to the synchronous control reference position to obtain command position, then notices the obtained command position to the spindle amplifier 40 byway of the data input and output circuit 13 .
  • the operation of the axis control unit 10 c for controlling the synchronous axis 63 is same as mentioned above.
  • the calculation method of position correction amount is selected from the following two, and deviation component due to variation of axis is synchronously corrected.
  • a first calculation method of position correction amount the position deviation amount of reference axis is multiplied by the command unit time ratio of reference axis to synchronous axis, and command rotation ratio, the difference of this calculation result and position deviation amount of synchronous axis is calculated, and the delay amount of synchronous axis to the position of reference axis is obtained.
  • This difference is passed through a primary delay filter according to a specific time constant determined by the parameter in the memory 7 , and the position correction amount is obtained. This method is employed in the case where the difference in the load between reference axis and synchronous axis is not so much.
  • the theoretical position deviation amount calculation processing unit 77 of the axis control unit for controlling the reference axis calculates a theoretical value of position deviation amount of reference axis, from the command speed described in the processing program and the position control gain of the axis, and calculates the difference from the position deviation amount of reference axis obtained through the data input and output circuit 13 . This is multiplied by the command unit ratio and command rotation ratio of synchronous axis to reference axis, and the result of calculation is obtained as the position correction amount in the synchronous axis.
  • This method is employed when the difference is large in the load between reference axis and synchronous axis, and the difference of follow-up delay of reference axis and follow-up delay of synchronous axis is always large.
  • the synchronous position correction unit 76 of the axis control units 10 b , 10 c of synchronous axes can temporarily fix the position correction value by, for example, a specified signal from the PLC circuit 5 , or cancel the error of the position correction amount.
  • This chuck close signal is noticed to the synchronous correction amount fixing unit 78 of the axis control unit of the synchronous axis through the machine control signal processing unit 76 , and in the synchronous correction amount fixing part 78 , at this time, the difference between the average of the position deviation amount of reference axis and average of position deviation amount of synchronous axis is noticed to the synchronous position correction unit 76 as position correction amount.
  • the position correction value obtained in this method is the difference between the average of the position deviation amount of reference axis and average of position deviation amount of synchronous axis, and is hence a fixed value.
  • the average of position deviation amount in steady rotation is detected, and divided by the command speed, and the result is held, for example, in the synchronous correction coefficient holding unit 51 .
  • the held value is the coefficient for obtaining the position deviation amount not depending on the command speed, and hence if the command speed of ordinary operation is different from the command speed of initial adjustment, by multiplying the coefficient by the command speed at this time, the position deviation amount in steady rotation can be calculated easily.
  • the synchronous correction error canceling unit 79 calculates the difference between the average of position deviation amount in steady rotation on reference axis and synchronous axis calculated beforehand, and the actual position deviation amount.
  • the specified signal issued from the PLC circuit 5 together with the input of error cancel signal, the error is temporarily subtracted from the position correction amount applied on the synchronous axis, the variation component of position deviation amount caused by variation due to disturbance or the like is canceled, and the axes are controlled synchronously with an optimum position deviation amount.
  • the synchronous control management unit 11 manages the combination of commanded synchronous control axes, notices the information about reference axis to the axis control unit 10 a for controlling the reference axis, out of axis control units 10 a , 10 b , 10 c , . . . , and also notices the information about synchronous axes and the information about the rotating direction and rotation ratio of synchronous axes 43 , 63 to the reference axis 23 , to the axis control units 10 b , 10 c for controlling the synchronous axes.
  • the synchronous control reference moving stroke of reference axis is noticed to the axis control unit 10 b for controlling the synchronous axis.
  • the information about reference axis is noticed to the axis control unit 10 b , and the information about synchronous axis and the information about the rotating direction and command rotation ratio of the synchronous axis 63 to the reference axis 43 are noticed to the axis control unit 10 c for controlling the synchronous axis. Further, connecting the reference position output unit 75 of the axis control unit 10 b and reference position input unit 73 of the axis control unit 10 c , the synchronous control reference moving stroke of reference axis is noticed to the axis control unit 10 c for controlling the synchronous axis.
  • the axis control system changeover unit 71 changes over the axis control system from speed control system to position control system.
  • the axis control command value converting unit 72 converts the speed command to the reference spindle 23 to the moving stroke per unit time, and notices this moving stroke as the synchronous control reference moving stroke to the synchronous position calculation processing unit 74 .
  • the synchronous control reference moving stroke is issued to the axis control unit 10 b for controlling the synchronous axis through the reference position output unit 75 .
  • the synchronous position calculation processing unit 74 adds the synchronous control reference moving stroke to the synchronous control reference position, and notices the result of addition as a new synchronous control reference position to the synchronous position correction unit 76 .
  • the command position is noticed to the spindle amplifier 20 by way of the data input and output circuit 13 .
  • the axis control command value converting unit 72 converts the speed command to the reference spindle 43 to the moving stroke per unit time, and notices this moving stroke as the synchronous control reference moving stroke to the synchronous position calculation processing unit 74 .
  • the synchronous control reference moving stroke is issued to the axis control unit 10 c for controlling the synchronous axis through the reference position output unit 75 .
  • the synchronous position calculation processing unit 74 adds the synchronous control reference moving stroke to the synchronous control reference position, and notices the result of addition as a new synchronous control reference position to the synchronous position correction unit 76 .
  • the command position is noticed to the spindle amplifier 40 by way of the data input and output circuit 13 .
  • the reference position input unit 73 of the axis control unit 10 c receives the synchronous control reference moving stroke issued from the reference position output unit 75 of the axis control unit 10 b for controlling the reference axis 43 related by the synchronous control management unit 11 , and notices to the synchronous position calculation processing unit 74 .
  • the synchronous position calculation processing unit 74 multiplies the received synchronous control reference moving stroke by the gear ratio of the synchronous axis 63 to the reference axis 43 , command rotation ratio, and command unit ratio, and determines the product as the synchronous control reference moving stroke to the synchronous axis 63 .
  • the synchronous control reference moving stroke is not issued to other axis control unit.
  • FIG. 4 is a flowchart for managing the synchronous control in the numerical control apparatus of the invention.
  • the processing program 2 is analyzed in the analysis processing unit 3 (FIG. 4, S 1 ), and if the information noticed to the synchronous control management unit 11 is obtained by analyzing the spindle synchronous control command as shown in FIG. 5 (S 1 , Yes), referring to the data on the memory showing the synchronous control management matrix shown in FIG. 3, it is judged if the commanded command of synchronous control axes is correct or not (S 2 ). If the information is not obtained by analyzing the spindle synchronous control command (S 1 , No), ordinary speed control is executed.
  • step S 2 if not correct, it means the axis newly commanded as synchronous axis has been already handled as synchronous axis in any combination of synchronous control. For example, if not correct (S 2 , No), the synchronous control management unit 11 controls to issue an alarm (S 7 ), and if correct (S 2 , Yes), the information of synchronous control is newly set in the data of synchronous control management matrix (S 3 ).
  • the synchronous control management unit 11 notices the information about reference axis and synchronous control mode request to the axis control unit ( 10 a , 10 b , . . . etc.) for controlling the axis used as reference axis. Further, the synchronous control management unit 11 also notices the information about synchronous axis, synchronous control mode request, rotation ratio and other information to the axis control unit ( 10 a , 10 b , . . . etc.) of axis as synchronous axis (S 5 ).
  • the synchronous control management unit 11 manages the sequence of processing of axis control units on the basis of the data of synchronous control management matrix (S 6 ).
  • the sequence of management is from the axis not handled as synchronous axis. That is, if the axis is being handled as the reference axis, the next axis handled as synchronous axis is controlled, or if this synchronous axis is also being handled as the reference axis, the second axis handled as synchronous axis is controlled sequentially.
  • searching combinations of synchronous control in all axes it is possible to control in the sequence from reference axis to synchronous axes.
  • FIG. 6 is a flowchart of the process performed by the axis control units.
  • this axis is an axis handled as spindle in ordinary speed control, or an axis handled as reference axis of synchronous control. Accordingly, the axis control unit checks if the corresponding spindle is handled as reference axis or synchronous axis of synchronous control (S 11 ). In the case of the axis handled as ordinary speed control spindle (S 11 , No), the axis control unit issues the command speed to the corresponding spindle amplifier through the data input and output circuit 13 (S 24 ). On the other hand, in case of reference axis (S 11 , Yes), the axis control unit checks if the spindle motor control system has been changed over from the speed control system to position control system or not (S 12 ).
  • the axis control unit checks if the corresponding axis is handled as synchronous axis of synchronous control or not (S 15 ). In this case, it is not handled as synchronous axis, then it is checked if reference axis of synchronous control or not (S 18 ).
  • reference axis the reference position moving stroke which is the moving stroke per unit time of axis is issued to the axis control unit of the axis to be synchronized (s 19 ).
  • the axis control unit checks if handled as synchronous axis of synchronous control or not (S 15 ). In this case, it is handled as synchronous axis (S 15 , Yes), and the axis control unit checks if the reference axis is changed over to the position control system to be in the synchronous control mode or not (S 16 ). If the reference axis is not changed over to the synchronous control mode (S 16 , No), the process advances to step S 18 in order that the command of synchronous axis may be the one calculated at step S 14 .
  • the moving stroke per unit time of the axis synchronized with the reference position moving stroke issued from step S 19 of the reference axis is calculated (S 17 ).
  • the command unit time of reference axis to be Ia the command unit time of synchronous axis to be Ib
  • the position moving stroke per unit time of the synchronous axis is expressed in the following formula.
  • the axis control unit further checks if the synchronous axis is the reference axis of synchronous control or not (S 18 ). If the synchronous control is executed in one set (S 18 , No), this synchronous axis is not handled as reference axis, and the process goes to step S 20 . If the synchronous control is executed in two or more sets (S 18 , Yes), this synchronous axis can be a reference axis of other set. Therefore, in case of reference axis, the reference position moving stroke which is the moving stroke per unit time of the axis is issued to the axis control unit of the axis to be synchronized (S 19 ).
  • the axis control unit calculates the position correction amount (S 21 ), and further adds this position correction amount to the command position, and calculates the corrected command position (S 22 ).
  • the axis control unit issues the command position of axis to the data input and output processing unit 13 , and the spindle amplifier for controlling the synchronous axis controls the position of the spindle according to the commanded command position (S 23 ).
  • the numerical control apparatus of the invention thereafter repeats the same operation according to the flowchart, and synchronously controls a plurality of sets by normal combination among arbitrary axes.
  • synchronous control is realized in two or more spindles in the machine tool, and synchronous control is simultaneously in three or more spindles, and the precision of synchronism is higher than in the prior art.
  • the synchronous position correction unit 76 of the axis control unit for controlling the synchronous axes corrects the deviation component occurring during synchronous control, off-synchronism component due to delay caused by cutting load or the like can be easily corrected, or even in case of synchronous control of axes involving difference always in the position deviation amount due to difference in position control gain or load, unjust torque due to correction does not take place, and synchronous control of high precision is realized. As a result, flaw or distortion of the work can be prevented, and processing of higher precision is possible.
  • FIG. 7 is an essential block diagram of the numerical control apparatus according to the second embodiment.
  • This numerical control apparatus in addition to the components shown in FIG. 1, comprises a multi-level acceleration and deceleration parameter memory unit 81 for storing multi-level acceleration and deceleration speed, multi-level reference acceleration and deceleration time constant, and multi-level acceleration and deceleration time constant multiplying factor described below, generated according to the ordinary speed control acceleration and deceleration pattern, by manipulating the parameter setting screen, a reference inclination amount calculation unit 83 for calculating the reference inclination amount which is the acceleration and deceleration speed per unit time, from the maximum rotating speed and multi-level reference acceleration and deceleration time constant of reference spindle and synchronous spindle, a multi-level acceleration and deceleration pattern calculation unit 84 for calculating an optimum multi-level acceleration and deceleration pattern from the set multi-level acceleration and deceleration parameter, and a multi-level acceleration and deceleration decision unit 82 for determining the pattern
  • the spindle motor accelerates and decelerates according to the acceleration and deceleration pattern of speed control system, that is, along curve 1 shown in FIG. 8( a ).
  • the acceleration and deceleration pattern by speed control system is a pattern at the time of maximum torque output of spindle motor. Accordingly, in spindle synchronous control of two or more spindle motors, in order to accelerate and decelerate while maintaining the precision of synchronism, it is necessary to accelerate and decelerate with plural acceleration and deceleration patterns having a larger allowance (a smaller inclination) than the acceleration and deceleration pattern of speed control system, that is, by setting multi-level acceleration and deceleration pattern.
  • the acceleration and deceleration operation can be done efficiently in a short time form low speed rotation to high speed rotation of the spindle motor (that is, acceleration and deceleration closed to the acceleration and deceleration pattern of speed control can be realized).
  • the acceleration and deceleration pattern of speed control up to maximum rotating speed of 8000 rpm is divided into seven sections. It is divided in a large section where the acceleration and deceleration pattern of speed control system can be approximately linearly, and in a small section where the curve is large.
  • the former corresponds to inclination 2 , inclination 4 , and inclination 7
  • the latter corresponds to inclination 1 , inclination 3 , inclination 5 , and inclination 6 .
  • inclination 2 is the multi-level reference acceleration and deceleration time constant, and it is calculated to be about 500 ms in the following formula.
  • the multi-level acceleration and deceleration time constant multiplying factor is defined as the ratio to the multi-level acceleration and deceleration time constant, and each multi-level acceleration and deceleration time constant multiplying factor the multi-level acceleration and deceleration pattern is calculated as follows.
  • the multi-level acceleration and deceleration time constant multiplying factor 3, multi-level acceleration and deceleration time constant multiplying factor 4, multi-level acceleration and deceleration time constant multiplying factor 5, multi-level acceleration and deceleration time constant multiplying factor 6, and multi-level acceleration and deceleration time constant multiplying factor 7 of inclination 3 , inclination 4 , inclination 5 , inclination 6 , and inclination 7 are calculated, and the parameters as shown in FIG. 10( a ) are obtained.
  • FIGS. 8 ( b ), ( c ), and ( d ) each multi-level acceleration and deceleration time constant multiplying factor is calculated, and patterns as shown in FIGS.
  • the parameters shown in FIG. 10 are stored in the multi-level acceleration and deceleration parameter memory unit 81 in FIG. 7 through the parameter setting screen 8 by manipulating the parameter setting screen not shown in the drawing.
  • FIG. 11 is a flowchart showing the method of selection and calculation of multi-level acceleration and deceleration pattern.
  • the acceleration and deceleration pattern in FIG. 8( a ) shows an acceleration and deceleration pattern of synchronous control of reference spindle 23 and synchronous spindle 43 .
  • the acceleration and deceleration pattern of synchronous spindle b 63 three types are assumed as shown in the diagram. Ina first type, the maximum rotating speed of the synchronous spindle b 63 is same as the maximum rotating speed of reference spindle 23 and synchronous spindle 43 (FIG.
  • the maximum rotating speed of the synchronous spindle b 63 is different from that of the reference spindle 23 and synchronous spindle 43 , and the multi-level reference acceleration and deceleration time constant (the time until reaching the maximum rotating speed) of the synchronous spindle b 63 is smaller than that of the reference spindle 23 and synchronous spindle 43 (FIG.
  • the maximum rotating speed of the synchronous spindle b 63 is different from that of the reference spindle 23 and synchronous spindle 43 , and the multi-level reference acceleration and deceleration time constant of the synchronous spindle b 43 is larger than that of the reference spindle 23 and synchronous spindle 43 .
  • the multi-level acceleration and deceleration decision unit 82 compares, for example, the maximum rotating speed of the reference spindle 23 and synchronous spindle 43 and the maximum rotating speed of the synchronous spindle b 63 (S 31 ).
  • the multi-level acceleration and deceleration decision unit 82 compares the multi-level acceleration and deceleration time constants of the reference spindle 23 , synchronous spindle 43 , and synchronous spindle b 63 , and selects the multi-level acceleration and deceleration pattern of the largest multi-level reference acceleration and deceleration time constant, and notices the selected multi-level acceleration and deceleration pattern to the synchronous control management unit 11 (S 32 ). Referring to the example in FIG.
  • the reference spindle and synchronous spindle of (a) and synchronous spindle b( 1 ) of (b) correspond thereto, and the multi-level reference acceleration and deceleration time constant of the reference spindle and synchronous spindle of FIG. 8( a ) is 500 ms, and the multi-level reference acceleration and deceleration time constant of FIG. 8( b ) is 600 ms. Therefore, in the multi-level acceleration and deceleration decision unit 82 , comparing the both multi-level reference acceleration and deceleration time constants, the multi-level acceleration and deceleration pattern of synchronous spindle b( 1 ) of FIG. 8( b ) having the larger multi-level reference acceleration and deceleration time constant is selected, and the selected multi-level acceleration and deceleration pattern is noticed to the synchronous control management unit 11 (S 32 ).
  • the multi-level acceleration and deceleration decision unit 82 compares the maximum rotating speed of the reference spindle 23 and synchronous spindle 43 and the maximum rotating speed of the reference spindle b 63 , and selects the acceleration and deceleration pattern of the spindle having the smaller maximum rotating speed (S 33 ) At this time, the multi-level acceleration and deceleration decision unit 82 requests calculation of reference inclination amount to the reference inclination amount calculation unit 83 .
  • the reference inclination amount is the multi-level acceleration and deceleration speed per unit time.
  • the reference inclination amount calculation unit 83 calculates the reference inclination amount as follows from the maximum rotating speed of the designated spindle and the multi-level reference acceleration and deceleration time constant (S 34 ).
  • Reference inclination amount maximum rotating speed/multi-level reference acceleration and deceleration time constant
  • the reference inclination amount calculation unit 83 notices the result of calculation to the multi-level acceleration and deceleration decision unit 82 .
  • the multi-level acceleration and deceleration decision unit 802 receives the calculation result from the reference inclination amount calculation unit 83 , the multi-level acceleration and deceleration decision unit 802 checks if the reference inclination amount of the spindle of the smaller maximum rotating speed is less than the reference inclination amount of the spindle of the larger maximum rotating speed or not (S 35 ). At this time, if the reference inclination amount of the spindle of the smaller maximum rotating speed is less than the reference inclination amount of the spindle of the larger maximum rotating speed (S 35 , Yes), the multi-level acceleration and deceleration decision unit 82 notices the acceleration and deceleration pattern selected at step S 33 directly to the synchronous control management unit 11 . Referring to the example in FIG.
  • the reference inclination amount becomes, according to FIG. 8( a ),
  • the multi-level acceleration and deceleration decision unit 82 selects the acceleration and deceleration pattern of the synchronous spindle b( 2 ) with smaller maximum rotating speed.
  • the multi-level acceleration and deceleration decision unit 82 requests calculation of multi-level acceleration and deceleration pattern to the multi-level acceleration and deceleration pattern calculation unit 84 .
  • the multi-level acceleration and deceleration pattern calculation unit 84 calculates the multi-level reference acceleration and deceleration time constant from the reference inclination amount of reference spindle and synchronous spindle and reference inclination amount of synchronous spindle b( 2 ) calculated by the reference inclination amount calculation unit 83 (S 36 ).
  • the multi-level acceleration and deceleration pattern is calculated (S 37 ), and noticed to the multi-level acceleration and deceleration decision unit 82 .
  • the multi-level acceleration and deceleration decision unit 82 notices the multi-level acceleration and deceleration pattern calculated in the multi-level acceleration and deceleration pattern calculation unit 84 to the synchronous control management unit 11 .
  • the reference spindle and synchronous spindle of (a) and the synchronous spindle b( 3 ) of (d) correspond thereto.
  • the multi-level acceleration and deceleration pattern calculation unit 84 calculates the multi-level reference acceleration and deceleration time constant from the reference inclination amount of reference spindle and synchronous spindle, and the reference inclination amount of synchronous spindle b( 2 ) calculated in the reference inclination amount calculation unit 803 .
  • the result is as follows.
  • the multi-level acceleration and deceleration pattern calculation unit 84 calculates the multi-level acceleration and deceleration pattern by using the multi-level acceleration and deceleration parameter shown in FIG. 10( d ). Results of calculation are as follows.
  • the multi-level acceleration and deceleration pattern calculation unit 84 notices the calculation results to the multi-level acceleration and deceleration decision unit 82 .
  • the multi-level acceleration and deceleration decision unit 82 notices the multi-level acceleration and deceleration pattern calculated in the multi-level acceleration and deceleration pattern calculation unit 84 to the synchronous control management unit 11 .
  • the numerical control apparatus of the invention is useful in a machine tool for synchronous control by driving two or more spindle motors or servomotors, and is particularly suited to synchronous control of higher precision.

Abstract

In a numerical control apparatus 1, a synchronous control management unit 11 manages the dominant relation of plural axes to be controlled synchronously. In case of the position control system (synchronous control of axes), in the axis control unit which controls the reference axis, a synchronous position calculation processing unit 74 calculates the command position to the reference axis, by adding the moving stroke of the reference axis calculated in an axis control command value converting unit 72 to the reference position of the reference axis. On the other hand, in the axis control unit which control the synchronous axis, the synchronous position calculation processing unit 74 calculates the moving stroke per unit time of the synchronous axis from the moving stroke received in a reference position input and output unit 73, the gear ratio of synchronous axis to reference axis, and the command unit time ratio, and adds the moving stroke to the reference position of the synchronous axis, thereby calculating the command position to the synchronous axis. One axis control unit which controls the reference axis and plural axis control units for controlling the synchronous axes issue the calculated command positions, and control the individual corresponding motors, and therefore control plural axes synchronously to one reference axis, and further control other axis synchronously by reference to the corresponding synchronous axis.

Description

    TECHNICAL FIELD
  • The present invention in general relates to a numerical control apparatus for synchronous control of two or more spindle motors or servo motors driven in a machine tool. More particularly, this invention relates to a numerical control apparatus capable of realizing synchronous control of higher precision. [0001]
  • BACKGROUND ART
  • Some of the machine tools are hitherto capable of executing synchronous control of two or more spindle motors or servo motors to be driven. For example, the numerical control apparatus executes the processing program commanded from a paper tape or the like, that is, executes the numerical control process written in the processing program, and the spindle motors or servo motors of the machine tool are driven to process the work as commanded. [0002]
  • FIG. 12 is an essential block diagram showing an outline of a conventional numerical control apparatus for driving spindle motors or servo motors of a machine tool. [0003]
  • As shown in FIG. 12, the conventional machine tool comprises a [0004] numerical control apparatus 101 for synchronously controlling a motor for driving a reference axis of a lathe and a motor for driving the synchronous axis, a processing program 102 in which a program for numerical control processing is written, the reference axis including a spindle amplifier 120, a spindle motor 121, a gear 122, a reference spindle 123, and an encoder 124, and the synchronous axis including a spindle amplifier 140, a spindle motor 141, a gear 142, a synchronous spindle 143, and an encoder 144, and the rotating speed of two spindles is synchronously controlled by the numerical control apparatus 101, and further by closing chucks 125 and 145, a work 200 is held between the reference spindle 123 and synchronous spindle 143.
  • On the reference axis and synchronous axis, the [0005] spindle amplifiers 120 and 140 are installed between the numerical control apparatus 101 and spindle motor 121, and between the numerical control apparatus 101 and spindle motor 121, respectively, and the spindle amplifiers drive the corresponding spindle motors 121 and 141. The reference spindle 123 and synchronous spindle 143 installed by way of the gears 122 and 142 are controlled according to the feedback position from the corresponding encoders 124 and 144. The numerical control apparatus 101 comprises, as shown in the drawing, an analysis processing unit 103 for analyzing the information about the reference axis and synchronous axis, an interpolation processing unit 104 for issuing the interpolation position command or rotating speed command analyzed in the analysis processing unit 103 to subsequent circuits, a PLC circuit 105 for issuing a specified signal, a machine control signal processing unit 106 for processing the specified signal, a memory 107 for storing a processing program 102, a parameter setting unit 108 for setting parameters, a screen display unit 109 for displaying the information in the memory 107 on a screen, axis control units 110 a, 110 b, 110 c, . . . for issuing the information about the reference axis and synchronous axis, interpolation position command, and rotating speed command to the subsequent circuits depending on the spindle to be driven, a reference axis control unit 111 which controls the reference axis on the basis of the received information, a synchronous axis control unit 112 which control the synchronous axis on the basis of the received information, and a data input/output circuit 113 for issuing various information to the reference axis and synchronous axis.
  • The conventional numerical control apparatus will now be explained in detail. Herein, in the [0006] spindle motor 121 for driving the reference spindle 123 and the spindle motor 141 for driving the synchronous spindle 143, the spindle synchronous control is explained.
  • In FIG. 12, for example, the [0007] processing program 102 being read in from a tape reader is read out and stored in the memory 107. Since the spindle synchronous control is a control executed by the spindle synchronous command code, the spindle synchronous command coded described in the processing program 102 is read out into the analysis processing unit 103 in every block from the memory 107.
  • The spindle synchronous command code thus being read out is analyzed in the [0008] analysis processing unit 103, and the analysis processing unit 103 notices its analysis result, that is, the information about the reference axis and synchronous axis for synchronous control to the interpolation processing unit 104.
  • Receiving this information, the [0009] interpolation processing unit 104 notices information about the reference axis, for example, to the axis control unit 110 b (see FIG. 12) assigned to the reference axis, out of the axis control units 110 a, 110 b, 110 c, . . . , and notices information about the synchronous axis to the axis control unit 110 c (see FIG. 12) assigned to the synchronous axis. Herein, the spindle synchronous control is explained, but not in case of spindle synchronous control, for example, information about rotating speed is noticed to the axis control unit 110 a (see FIG. 12) not assigned to either reference axis or synchronous axis. In this case, therefore, information about rotating speed command is directly noticed to the data input/output circuit 113, and the spindle amplifier 120 receiving this rotating speed command controls the speed of the spindle motor 121 according to this command, and rotates the spindle 123.
  • The [0010] axis control units 110 a, 110 b, 110 c, . . . are assigned as shown in the diagram for the sake of convenience of explanation, but each axis control unit operates similarly when assigned to the reference axis, assigned to synchronous axis, or not assigned to either.
  • Consequently, the [0011] axis control unit 110 b notices information about the reference axis, rotating speed command and other information to the reference axis control unit 111 as shown in the diagram, whereas the axis control unit 110 c notices information about the synchronous axis to the synchronous axis control unit 112. In the reference axis control unit 111, the command position of the reference axis is calculated from the received rotating speed command, and notices this command position to the data input/output circuit 113 and synchronous axis control unit 112. The synchronous axis control unit 112 calculates the command position of the synchronous axis according to the command position of the reference axis noticed from the referenced axis control unit 111 and the information about the synchronous axis is noticed to the data input/output circuit 113.
  • Finally, the data input/[0012] output circuit 113 notices the received position commands to the spindle amplifiers 120 and 140, and the spindle amplifier 120 having received the command position of reference axis rotates the reference spindle 123 by controlling the speed of the spindle motor 121 according to the received command position, and further the spindle amplifier 140 having received the command position of synchronous axis rotates the synchronization spindle 143 by controlling the speed of the spindle motor 141 according to the received command position. Thus, in the conventional numerical control apparatus, the synchronous axis control unit 112 controls the command position of the synchronous axis on the axis of the command position of the reference axis calculated by the reference axis control unit 111, so that spindle synchronous control is executed between one reference spindle 123 and one synchronous spindle 143.
  • In the conventional numerical control apparatus, however, synchronous control about two spindles in the machine tool is possible, but this control is limited within a set of reference axis and synchronous axis. It means that three or more spindles cannot be synchronously controlled at the same time. [0013]
  • The reason is as follows. For example, if each axis is synchronized by noticing the command position, the axes are finally converged at the specified position, but each axis of synchronous control is different in the position control gain, speed and load, and hence there is a position deviation amount, and the precision of synchronism is lowered in an intermediate process. Accordingly, in the conventional numerical control apparatus, for example, in case of synchronous control of plural axes, one reference axis monitors fluctuations of two or more synchronous axes, and synchronous control is effected while correcting so as to decrease the position deviation amount, and therefore the control is very much complicated, and three or more spindles could not be synchronously controlled at the same time. [0014]
  • Accordingly, in the machine tool conventionally used, in order to perform spindle synchronous control on plural axes, it is necessary to install plural numerical control apparatuses, and the cost of the machine tool is higher. As a result, the control panel for installing the numerical control apparatuses becomes larger in size. [0015]
  • Further, in synchronous control of the conventional numerical control apparatus, when grabbing one work between spindles and closing the chuck, the axes may fluctuate due to disturbance or the like. Thus, in a state having a stagnant position deviation amount, when the reference axis and synchronous axis are mechanically coupled through the work, each axis moves in a direction for recovering the position deviation amount, and an abnormal torque occurs, and the work may be flawed or distorted. [0016]
  • It is an object of this invention to present a numerical control apparatus capable of realizing synchronous control of two or more spindles in a machine tool, realizing synchronous control of three or more spindles at the same time, and also enhancing the precision of synchronism more than in the conventional apparatus. [0017]
  • DISCLOSURE OF THE INVENTION
  • The numerical control apparatus according one aspect of this invention is for synchronously controlling a plurality of spindle motors or servo motors driven by a machine tool according to a processing program. This numerical control apparatus comprises a memory unit (corresponding to a [0018] memory 7 described in an embodiment later) which stores the processing program, a synchronous control management unit (corresponding to synchronous control management unit 11) which manages the dominant relation of plural axes to be controlled synchronously, and plural axis control units (corresponding to axis control units 10 a, 10 b, 10 c, . . . ) having information about reference axis as the reference of synchronous control and information about synchronous axis for operating synchronously with the reference axis stores according to the dominant relation of axes managed by the synchronous control management unit, for controlling the corresponding motors on the basis of the command position calculated inside. In this construction, one axis control unit stores information about reference axis, and plural axis control units stores information about synchronous axis control the individual motors, and the plural axes can be controlled synchronously in relation to one reference axis, and also other axis can be controlled synchronously on the basis of the reference axis.
  • According to the above-mentioned aspect, the processing program being read out from the tape reader or the like is stored in the memory unit, and the information about the reference axis or synchronous axis, and the information about the rotating direction of synchronous axis, rotation ratio and others are analyzed inside, for example, on the basis of the spindle synchronous command described in the program, and the result is noticed to the synchronous control management unit. In the synchronous control management unit, combination of all axes for synchronous control is management, and this information is noticed to the plural axis control units, thereby setting one axis control unit which controls the reference axis, and one or plural axis control units which control the synchronous axis. Thus, the numerical control apparatus of the invention realizes synchronous control of three or more spindle motors or servo motors easily by management of the synchronous control management unit. That is, for one reference axis, plural axes (synchronous axes) can be control synchronously, and also other axis can be controlled synchronously on the basis of the synchronous axis. [0019]
  • Moreover, since combination of plural sets of synchronous controls can be managed, wrong combination of synchronous controls can be judged easily, and in the event of a wrong combination of synchronous controls, it is noticed to the user by alarm or the like, and the wrong combination still exists, by performing synchronous control by exchanging the reference axis and synchronous axis, synchronous control is possible in an arbitrary combination without user's consciousness about reference axis and synchronous axis. [0020]
  • Furthermore, in the numerical control apparatus, each one of the plural axis control units comprises an axis control system changeover unit (corresponding to an axis control [0021] system changeover unit 71 described in embodiment below) which changes over to either system of speed control system (speed control mode) for driving the corresponding motor depending on the speed command value described in the processing program or the position control system (position control mode) for driving depending on the moving stroke per unit time converted from the speed command value, an axis control command converting unit (corresponding to an axis control command converting unit 72) which calculates the moving stroke per unit time from the speed command value with respect to the reference axis, reference position input and output units (corresponding to reference position input unit 73 and reference position output unit 75) which issues the moving stroke per unit time of the reference axis calculated in the axis control command value converting unit to other axis control unit, or for receiving the moving stroke per unit time of the reference axis calculated in other axis control unit, and a synchronous position calculation processing unit (corresponding to synchronous position calculation processing unit 74) which calculates the command position corresponding to the pertinent axis, on the basis of the moving stroke calculated in the axis control command value converting unit or the moving stroke received in the reference position input unit.
  • Thus, in synchronous control of axis (position control system), when controlling the reference axis, the synchronous position calculation processing unit adds the moving stroke of the reference axis calculated in the axis control command converting unit to the reference position of the reference axis, and calculates the command position to the reference axis, and when controlling the synchronous axis, on the other hand, the synchronous position calculation processing unit calculates the moving stroke per unit time of the synchronous axis, from the moving stroke received in the reference position input and output unit, the gear ratio of synchronous axis to referenced axis, command rotation ratio, and command unit time ratio, and adds the moving stroke to the reference position of the synchronous axis, thereby calculating the command position to the synchronous axis. As a result, on the reference axis and synchronous axis, an accurate command position can be calculated, and the precision of synchronous control of axis can be enhanced. [0022]
  • Furthermore, in the numerical control apparatus, the axis control system changeover unit of the axis control unit which control the synchronous axis calculates a theoretical command position by subtracting the speed command value described in the processing program, theoretical value of position deviation amount calculated from the position control gain of the motor, and delay amount corresponding to the sampling delay time of feedback position, from the feedback position from the axis, and later changes over from the ordinary speed control system to the position control system in a contracted state of fluctuation of position deviation amount. [0023]
  • Thus, since changeover from the speed control system of spindle for synchronous control to position control system is executed by calculating the theoretical command position in the specified procedure (calculation by axis control system changeover unit in the axis control unit which controls the synchronous axis), and then contracting the fluctuation of of the position deviation amount, the mode can be changed over to the synchronous control mode (position control system) without causing any effect on the operation of the reference axis. Therefore, since the synchronization of the axis can be controlled without causing effect on processing during processing at the reference axis side, the processing cycle can be shortened. [0024]
  • Furthermore, in the numerical control apparatus, each one of the plural axis control units further comprises a synchronous position correction unit (corresponding to a synchronous [0025] position correction unit 76 described in embodiment below) which corrects the fluctuation of the axis by calculating the position correction amount form the position deviation amount of reference axis and position deviation amount of synchronous axis, and adding the position correction amount to the command position of the synchronous axis.
  • Thus, in case of synchronization control of axis, the axis control unit which controls the reference axis calculates the command position to the reference axis, and the plural axis control units which control the synchronous axis calculate the command position to the synchronous axis on the basis of the moving stroke per unit time received from the axis control unit which controls the reference axis. The synchronous position correction unit corrects the fluctuation of the axis by adding the obtained position correction amount only to the command position of the synchronous axis. Therefore, since the axis can be controlled simultaneously without causing effect on processing during processing at the reference axis sided, the processing cycle can be shortened, and further by correcting the command position of the synchronous axis, the synchronous precision is enhanced. [0026]
  • Furthermore, in the numerical control apparatus, the synchronous position correction unit in the axis control unit which controls the synchronous axis multiplies the position deviation amount of reference axis by the command rotation ratio of reference axis and synchronous axis, and the command unit time ratio, and calculates the difference between the calculation result and the position deviation amount of the reference axis, then determines the value of passing the obtained difference through the primary delay filter according to a specific time constant determined by the parameter as the position correction amount. [0027]
  • Thus, since the deviation occurring during synchronous control is corrected by passing the difference between the calculation result and position deviation amount of reference axis through the primary delay filter, abrupt changes of command position by correction do not occur, and occurrence of useless alarm can be avoided. [0028]
  • Furthermore, in the numerical control apparatus, each one of the plural axis control units comprises a theoretical position deviation amount calculation processing unit (corresponding to an theoretical position deviation amount [0029] calculation processing unit 77 described in embodiment below) which calculates the theoretical position deviation amount from the speed control value described in the processing program and the position control gain of the motor, and the synchronization position correction unit, in the axis control unit which control the synchronous axis, calculates the difference between the theoretical position deviation amount of the reference axis calculated in the theoretical position deviation amount calculation processing unit and the actual position deviation amount obtained from the reference axis, and determines the value calculated from the difference, the command rotation ratio of the synchronous axis to the reference axis, and the command unit time ratio, as the position correction amount.
  • Thus, since the synchronous position correction unit of the axis control unit which control the synchronous axis corrects the deviation portion occurring in synchronous control by using the actual delay amount to the theoretical position deviation amount of the reference axis as the position correction amount, synchronism deviation portion due to delay caused by cutting load or the like can be easily corrected, and moreover since the position control gain and load are different, even in case of synchronous control between axes always having a difference in position deviation amount, synchronous control of high precision can be realized without causing improper torque by correction. As a result, flaw or torsion of work can be prevented, so that processing of higher precision is possible. [0030]
  • Furthermore, in the numerical control apparatus, each one of the plural axis control units comprises a synchronous correction amount fixing unit (corresponding to a synchronous correction [0031] amount fixing unit 78 described in embodiment below) which calculates the average of the position deviation amount in steady rotation on the reference axis and synchronous axis for synchronous control, and further calculates their difference, and the synchronous position correction unit determines, in the axis control unit which control the synchronous axis, the difference calculated in the synchronous correction amount fixing unit as the position correction amount.
  • Thus, since the synchronous position correction amount of the axis control unit which control the synchronous axis corrects the deviation portion occurring during synchronous control by using the difference of the average values of position deviation amount on the reference axis and synchronous axis for synchronous control as the position correction amount, the position correction amount is a fixed value, so that the load by calculation of the position correction amount can be lessened. [0032]
  • Furthermore, in the numerical control apparatus, the memory incorporates a synchronous correction coefficient holding unit (corresponding to a synchronous correction [0033] coefficient holding unit 51 described in embodiment below) which calculates the average of the position deviation amount in steady rotation on the reference axis and synchronous axis for synchronous control, at the time of initial adjustment of the machine tool, and holds the value obtained by dividing this average by the speed control value as the coefficient for obtaining the position deviation amount, and the synchronous position correction unit calculates, in the axis control unit which control the synchronous axis, the average of the position deviation amount in steady rotation on the reference axis and synchronous axis for synchronous control, by applying the speed command value by the coefficient held in the synchronous correction coefficient holding unit, and obtains this difference as the position correction amount.
  • Thus, the synchronous position correction unit of the axis control unit which control the synchronous axis calculates the average of the position deviation amount on the reference axis and synchronous axis for synchronous control, and the value obtained by dividing this average by the speed command value is held in the synchronous correction coefficient holding unit as the coefficient for obtaining the position deviation amount. This held value is a constant for obtaining the position deviation amount not depending on the speed command value, and therefore if the speed command value is different from the time of initial adjustment in synchronous control, the position deviation amount in steady rotation can be easily calculated by multiplying the coefficient by the speed command value. [0034]
  • The numerical control apparatus may preferably further comprise a synchronous correction amount error canceling unit (corresponding to a synchronous correction amount [0035] error canceling unit 79 described in embodiment below) which cancels the variation component of position deviation amount caused by variation due to disturbance or the like, by subtracting the difference between the average of the position deviation amount in steady rotation on the axis for synchronous control and the actual position deviation amount, temporarily from the position correction amount.
  • Thus, when grabbing the work in a state changed in the position deviation amount of the axis, the difference between the average of the position deviation amount in steady rotation on the synchronous axis for synchronous control and the actual position deviation amount calculated preliminarily is subtracted temporarily from the position correction amount applied on the synchronous axis. As a result, variation component of the position deviation amount caused by variation due to disturbance or the like can be canceled, and synchronous control is realized at an optimum position deviation amount. [0036]
  • The numerical control apparatus may preferably further comprise a multi-level acceleration and deceleration parameter memory unit (corresponding to a multi-level acceleration and deceleration [0037] parameter memory unit 81 described in embodiment below) which stores the multi-level acceleration an deceleration speed generated by the acceleration and deceleration pattern of ordinary speed control system, multi-level reference acceleration and deceleration time constant, and multi-level acceleration and deceleration time constant multiplying factor by manipulating the parameter setting screen, a reference inclination amount calculation unit (reference inclination amount calculation unit 83) which calculates the reference inclination amount, as the acceleration and deceleration speed per unit time, from the maximum rotating speed and multi-level reference acceleration and deceleration time constant of the reference spindle and synchronous spindle, a multi-level acceleration and deceleration pattern calculation unit (multi-level acceleration and deceleration pattern calculation unit 84) which calculates an appropriate multi-level acceleration and deceleration pattern from the set multi-level acceleration and deceleration pattern, and a multi-level acceleration and deceleration decision unit (multi-level acceleration and deceleration decision unit 82) which determines the multi-level acceleration and deceleration pattern to be noticed to the synchronous control management unit.
  • Thus, in spindle control between two or more spindle motors, when controlling the acceleration and deceleration of spindle motors by the multi-level acceleration and deceleration pattern of the position control system, the configuration for selecting an appropriate multi-level acceleration and deceleration pattern is designated. For example, if the multi-level acceleration and deceleration pattern is different on each spindle, the multi-level acceleration and deceleration time constant is determined on the basis of the one of the largest inclination of acceleration and deceleration, and other acceleration and deceleration patterns defined by a constant multiple (1 or larger integer) of the multi-level acceleration and deceleration time constant, and therefore an appropriate multi-level acceleration and deceleration pattern can be selected and judged by a simple process of comparison of multi-level acceleration and deceleration time constants. [0038]
  • For example, similarly, since an appropriate multi-level acceleration and deceleration pattern is calculated from the ratio of the multi-level acceleration and deceleration time constants between spindles different in the multi-level acceleration and deceleration pattern, if it is necessary to select the one of the large inclination of acceleration and deceleration, it can be easily corrected to an appropriate multi-level acceleration and deceleration pattern.[0039]
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 shows a configuration of a numerical control apparatus according to a first embodiment; [0040]
  • FIG. 2 shows a configuration of axis control unit in the numerical control apparatus; [0041]
  • FIG. 3 shows a synchronous control management matrix for management of a set of synchronous control; [0042]
  • FIG. 4 is a flowchart for management of synchronous control; [0043]
  • FIG. [0044] 5 shows a combination of synchronous control axes by analysis of spindle synchronous control command;
  • FIG. 6 is a flowchart of axis control unit; [0045]
  • FIG. 7 shows configuration of a numerical control apparatus according to a second embodiment; [0046]
  • FIG. 8 shows a specific example of multi-level acceleration and deceleration pattern for synchronous control; [0047]
  • FIG. 9 is a diagram showing a method of calculation of multi-level acceleration and deceleration time constant multiplying factor; [0048]
  • FIG. 10 shows an example of setting of multi-level acceleration and deceleration pattern for synchronous control; [0049]
  • FIG. 11 shows a method of selection and calculation of multi-level acceleration and deceleration pattern; and [0050]
  • FIG. 12 shows a configuration of a conventional numerical control apparatus.[0051]
  • BEST MODE FOR CARRYING OUT THE INVENTION
  • The invention is more specifically described below while referring to the accompanying drawings. It must be noted, however, that the invention is not limited to the illustrated embodiments alone. [0052]
  • FIG. 1 is an essential block diagram of the numerical control apparatus according to the first embodiment. This numerical control apparatus is capable of driving spindle motors or servo motors of a machine tool. [0053]
  • As shown in FIG. 1, the machine tool of the invention comprises a [0054] numerical control apparatus 1 for synchronously controlling a motor for driving a reference axis and a motor for driving a synchronous axis, a processing program 2 storing a program for numerical control process, a reference axis including a spindle amplifier 20, a spindle motor 21, a gear 22, a reference spindle 23, and an encoder 24, a first synchronous axis including a a spindle amplifier 40, a spindle motor 41, a gear 42, a synchronous spindle 43, and an encoder 44, and a second synchronous axis including a spindle amplifier 60, a spindle motor 61, a gear 62, a synchronous spindle 63, and an encoder 64, in which the rotating speed of the three spindles is synchronously controlled by the numerical control apparatus 1, and a work 26 is held between the reference spindle 23 and synchronous spindle 43 by-closing chucks 25 and 45, and further a rotary tool 65 is rotated.
  • In the reference axis, first synchronous axis and second synchronous axis, the [0055] spindle amplifiers 20, 40, and 60 are installed respectively between the numerical control apparatus 1 and spindle motor 21, between the numerical control apparatus 1 and spindle motor 41, and between the numerical control apparatus 1 and spindle motor 61, and the spindle amplifiers are driving the corresponding spindle motors 21, 41, and 61. The reference spindle 23, synchronous spindle 43, and synchronous spindle 63 installed respectively by way of the gears 22, 42, and 62 are driven according to the feedback position from the corresponding encoders 24, 44, and 64.
  • The [0056] numerical control apparatus 1 comprises, as shown in the drawing, an analysis processing unit 3 for analyzing the information about the reference axis and synchronous axes, an interpolation processing unit 4 for transmitting the interpolation position command and rotating speed command analyzed in the analysis processing unit 3 to succeeding circuits, a PLC circuit 5 for issuing a specified signal, a machine control signal processing unit 6 for processing the specified signal, a memory 7 storing the processing program 2 and incorporating an synchronization correction coefficient holding unit 51 described below, a parameter setting unit 8 for setting various parameters by user s manipulation, a screen display unit 9 for displaying the information in the memory 7 on the screen, a synchronous control management unit 11 for managing the combination of spindles for synchronous control, axis control units 10 a, 10 b, 10 c, . . . for controlling the corresponding spindles by output of information about reference axis and synchronous axes, command position, speed command, etc., and a data input and output unit 13 for sending various information to the reference axis and synchronous axes. In this embodiment, for the sake of convenience of explanation, in particular, synchronous control of three spindles is explained, but the number of spindles for synchronous control is not limited, and any plurality of spindles can be synchronously controlled by the management of the synchronous control management unit 11.
  • FIG. 2 is an essential block diagram specifically describing the [0057] axis control units 10 a, 10 b, 10 c, . . . in FIG. 1.
  • As shown in FIG. 2, each axis control unit comprises an axis control [0058] system changeover unit 71, an axis control command value converting unit 72, a reference position input unit 73, a synchronous position calculation processing unit 74, a reference position output unit 75, a synchronous position correction unit 76, an theoretical position deviation amount calculation processing unit 77, a synchronous correction amount fixing unit 78, and a synchronous correction amount error temporary canceling unit 79. Each axis control unit can control either reference axis or synchronous axis by the management of the synchronous control management unit 11.
  • The axis control [0059] system changeover unit 71 changes over the corresponding motor in either speed control system (speed control mode: control in ordinary state) for driving according to the command speed described in the processing program, or position control system (position control mode: synchronous control) for driving according to the moving stroke per unit time converted from the corresponding speed command value. The axis control command value converting unit 72 calculates the moving stroke per unit time from the command speed to the reference axis. The reference position input unit 73 receives the moving stroke per unit time of the reference axis calculated in other axis control unit. The synchronous position calculation processing unit 74 calculates the command position to the corresponding axis on the basis of the moving stroke calculated in the axis control command value converting unit 72 or the moving stroke received in the reference position input unit 73. The reference position output unit 75 issues the moving stroke per unit time of the reference axis calculated in the axis control value converting unit 72 to other axis control unit. The synchronous position correction unit 76 calculates the position correction amount from the position deviation amount of the reference axis and position deviation amount of synchronous axis, and corrects variation of axis by adding the position correction amount to the command position of the synchronous axis. The theoretical position deviation amount calculation processing unit 77 calculates an ideal position deviation amount from the speed command value described in the processing program and the position control gain of the motor. The synchronous correction amount fixing unit 78 calculates the average of position deviation amount in steady rotation on the reference axis and synchronous axis for synchronous control, further calculates the difference thereof, and determines the result of calculation as the fixed position correction amount. The synchronous correction amount error temporary canceling unit 79 subtracts the difference of the average of position deviation amount in steady rotation on the reference axis and synchronous axis for synchronous control and the actual position deviation amount, temporarily from the position correction amount, and cancels the variation component of position deviation amount caused by variation due to disturbance or the like.
  • The operation of the numerical control apparatus will be explained below. [0060]
  • First, by the spindle synchronous command described in the [0061] processing program 2, synchronous control of three spindles is explained, assuming to control the spindle 23 as reference spindle and spindle 43 as synchronous spindle, and further to control the spindle 23 as reference spindle and spindle 43 as synchronous spindle. In FIG. 1, the axis control unit 10 a controls the spindle 23 through the spindle amplifier 20, the axis control unit 10 b controls the spindle 43 through the spindle amplifier 40, and the axis control unit 10 c controls the spindle 63 through the spindle amplifier 60.
  • The [0062] processing program 2 being read out, for example, from a tape reader is stored in the memory 7, and when executing the processing program 2, the analysis processing unit 3 reads out the processing program 2 block by block from the memory 7, and analyzes the described spindle synchronous command. This spindle synchronous command is analyzed by the analysis processing unit 3 as information about reference axis and synchronous axes, rotating direction and rotation ratio of synchronous axes, and noticed to the interpolation processing unit 4. In the interpolation processing unit 4, these items of information are noticed to the synchronous control management unit 11.
  • In the synchronous [0063] control management unit 11, combination of commanded synchronous control axes is managed, and the information about the reference axis is noticed to the axis control unit 10 a responsible for control of reference axis, out of axis control units 10 a, 10 b, 10 c, . . . , or the information about synchronous axes, and information of rotating direction and rotation ratio of synchronous axes 43 and 63 to the reference axis 23 are noticed to the axis control units 10 b, 10 c responsible for control of synchronous axes. Moreover, the reference position output unit 75 of the axis control unit 10 a and the reference position input unit 73 of the axis control units 10 b, 10 c are connected with each other, so that the synchronous control reference moving stroke of the reference axis mentioned below may be noticed to the synchronous axes.
  • Herein, the management method of combination of synchronous control in the synchronous [0064] control management unit 11 is explained according to the synchronous control management matrix shown in FIG. 3.
  • In the case of synchronous control in combination of a plurality of axes, all combinations are managed in the synchronous [0065] control management unit 11, and it is required to perform synchronous control according to the dominant relation thereof. In the example shown in FIG. 3, spindle S1 is the reference spindle, and spindle S2 is synchronously controlled, and further spindle S1 is the reference spindle, and spindle S3 is synchronously controlled. By managing to control sequentially from the axis other than the synchronous axis, a plurality of spindles are controlled synchronously.
  • Further, by using the synchronous control management matrix, unjust synchronous control pattern is checked. For example, in principle, it is not allowed to combine one synchronous axis with plural reference axes, and therefore if it is attempted to control spindle S[0066] 4 as reference axis and spindle S1 simultaneously during synchronous control of spindle S2 with spindle S1 as reference axis, in the synchronous control management unit 11, since spindle S2 is already controlled synchronously with spindle S1 as reference axis, synchronous control with spindle S4 as reference axis is disabled. Therefore, such command is judged to be synchronous control command of unjust combination. The synchronous control management unit 11 develops such matrix on the memory, and realizes a similar management.
  • By such management of the synchronous [0067] control management unit 11, the following operation is carried out in the axis control units 10 a, 10 b, 10 c receiving such information.
  • The axis control [0068] system changeover unit 71 calculates a theoretical value of position deviation amount from the command speed described in the processing program and the position control gain of the axis, and further calculates the moving stroke corresponding to the sampling delay time of the feedback position from this command speed, and subtracts these calculation results from the feedback position from the spindle amplifier, and thereby calculates the command position. In a contracted state of variation of this position deviation amount, in order to change over the effective command from the speed command value to the position command value, checking for waiting time determined by the attained speed or parameter, consequently, the control system to the spindle is changed over from the ordinary speed control system to the position control system of synchronous control.
  • In the [0069] axis control unit 10 a of the reference axis change over to the position control system, the axis control command value converting unit 72 converts the speed command to the reference spindle 23 to the moving stroke per unit time, and notices this moving stroke to the synchronous position calculation processing unit 74 as the synchronous control reference moving stroke. Further, the synchronous position calculation processing unit 74 issues the synchronous control reference moving stroke to the axis control units 10 b, 10 c responsible for control of synchronous axes by way of the reference position output unit 75.
  • In this state, the synchronous position [0070] calculation processing unit 74 adds the synchronous control reference moving stroke to the synchronous control reference position, and issues the result of addition to the synchronous position correction unit 76 as a new synchronous control reference position. In the synchronous position correction unit 76, in order to control the reference axis, the received synchronous control reference position is used as the command value, and the command position is noticed to the spindle amplifier 20 by way of the data input and output circuit 13.
  • On the other hand, in the [0071] axis control units 10 b, 10 c of synchronous axes changed over to the position control system, the following operation is carried out.
  • First, in the [0072] synchronous axis 43 synchronized with the reference axis 23, the reference position input unit 73 of the axis control unit 10 b receives the synchronous control reference moving stroke issued from the reference position output unit 75 of the axis control unit 10 a for controlling the reference axis 23 related by the synchronous control management unit 11, and notices to the synchronous position calculation processing unit 74.
  • The synchronous position [0073] calculation processing unit 74 multiplies the received synchronous control reference moving stroke by the gear ratio of the synchronous axis 43 to the reference axis 23, command rotation ratio, and command unit ratio, and determines the product as the synchronous control reference moving stroke to the synchronous axis 43. In the axis control unit 10 b, since there is no other axis for synchronous control with synchronous axis 43 as reference axis, the synchronous control reference moving stroke is not issued to other axis control unit.
  • Afterwards, in the synchronous position [0074] calculation processing unit 74, this synchronous control reference moving stroke is added to the synchronous control reference position, and the result of addition is noticed to the synchronous position correction unit 76 as a new synchronous control reference position. Consequently, the synchronous position correction unit 76 calculates the position correction amount in a method described below from the position deviation amount of the reference axis 23 and the position deviation amount of the synchronous axis 43, and adds it to the synchronous control reference position to obtain command position, then notices the obtained command position to the spindle amplifier 40 byway of the data input and output circuit 13. In the synchronous axis 63 synchronized with the reference axis 23, the operation of the axis control unit 10 c for controlling the synchronous axis 63 is same as mentioned above.
  • The method of calculation of the above position correction amount is described in detail below. [0075]
  • In the synchronous [0076] position correction unit 76 of axis control units 10 b, 10 c for controlling the synchronous axes, by the spindle synchronous control described in the processing program 2, the calculation method of position correction amount is selected from the following two, and deviation component due to variation of axis is synchronously corrected.
  • In a first calculation method of position correction amount, the position deviation amount of reference axis is multiplied by the command unit time ratio of reference axis to synchronous axis, and command rotation ratio, the difference of this calculation result and position deviation amount of synchronous axis is calculated, and the delay amount of synchronous axis to the position of reference axis is obtained. This difference is passed through a primary delay filter according to a specific time constant determined by the parameter in the [0077] memory 7, and the position correction amount is obtained. This method is employed in the case where the difference in the load between reference axis and synchronous axis is not so much.
  • In a second calculation method of position correction amount, the theoretical position deviation amount [0078] calculation processing unit 77 of the axis control unit for controlling the reference axis calculates a theoretical value of position deviation amount of reference axis, from the command speed described in the processing program and the position control gain of the axis, and calculates the difference from the position deviation amount of reference axis obtained through the data input and output circuit 13. This is multiplied by the command unit ratio and command rotation ratio of synchronous axis to reference axis, and the result of calculation is obtained as the position correction amount in the synchronous axis. This method is employed when the difference is large in the load between reference axis and synchronous axis, and the difference of follow-up delay of reference axis and follow-up delay of synchronous axis is always large.
  • The synchronous [0079] position correction unit 76 of the axis control units 10 b, 10 c of synchronous axes can temporarily fix the position correction value by, for example, a specified signal from the PLC circuit 5, or cancel the error of the position correction amount.
  • In a method of temporarily fixing the position correction amount, first, the average of position deviation amount in steady rotation on reference axis and synchronous axis for synchronous control is detected preliminarily. Closing the chucks mutually, when the torque is transmitted to each other between axes for synchronous control through the work or the like, for example, the [0080] PLC circuit 75 issues a chuck close signal as the specified signal. This chuck close signal is noticed to the synchronous correction amount fixing unit 78 of the axis control unit of the synchronous axis through the machine control signal processing unit 76, and in the synchronous correction amount fixing part 78, at this time, the difference between the average of the position deviation amount of reference axis and average of position deviation amount of synchronous axis is noticed to the synchronous position correction unit 76 as position correction amount. The position correction value obtained in this method is the difference between the average of the position deviation amount of reference axis and average of position deviation amount of synchronous axis, and is hence a fixed value.
  • Meanwhile, in order to obtain the average of position deviation amount in steady rotation on reference axis and synchronous axis, at the time of initial adjustment of machine tool beforehand, the average of position deviation amount in steady rotation is detected, and divided by the command speed, and the result is held, for example, in the synchronous correction [0081] coefficient holding unit 51. At this time, the held value is the coefficient for obtaining the position deviation amount not depending on the command speed, and hence if the command speed of ordinary operation is different from the command speed of initial adjustment, by multiplying the coefficient by the command speed at this time, the position deviation amount in steady rotation can be calculated easily.
  • Calculating the difference of the average of position deviation amount on reference axis and synchronous axis thus calculated, together with the input of specified signal issued from the [0082] PLC circuit 5, the difference of average of position deviation amount of reference axis and synchronous axis is noticed to the synchronous position correction unit 76 as position correction amount. This method is employed when always working as synchronous axis and correcting the guide bush spindle or the like for mutually transmitting with reference axis through the work.
  • On the other hand, in a method of canceling the error of position correction amount, assume to grab the work in a changed state of position deviation amount of axis, due to variation caused by operation. At this time, the synchronous correction [0083] error canceling unit 79 calculates the difference between the average of position deviation amount in steady rotation on reference axis and synchronous axis calculated beforehand, and the actual position deviation amount. As the specified signal issued from the PLC circuit 5, together with the input of error cancel signal, the error is temporarily subtracted from the position correction amount applied on the synchronous axis, the variation component of position deviation amount caused by variation due to disturbance or the like is canceled, and the axes are controlled synchronously with an optimum position deviation amount.
  • In the operation of the [0084] numerical control apparatus 1 of the invention, by the spindle synchronous command described in the processing program 2, synchronous control of three spindles is explained, for example, supposing to control the spindle 23 as reference spindle, spindle 43 as synchronous spindle, and spindle 63 as synchronous spindle. Explanation is omitted as for the operation same as explained above.
  • After the same operation as explained above, the synchronous [0085] control management unit 11 manages the combination of commanded synchronous control axes, notices the information about reference axis to the axis control unit 10 a for controlling the reference axis, out of axis control units 10 a, 10 b, 10 c, . . . , and also notices the information about synchronous axes and the information about the rotating direction and rotation ratio of synchronous axes 43, 63 to the reference axis 23, to the axis control units 10 b, 10 c for controlling the synchronous axes. Further, connecting the reference position output unit 75 of the axis control unit 10 a and reference position input unit 73 of the axis control units 10 b, 10 c, the synchronous control reference moving stroke of reference axis is noticed to the axis control unit 10 b for controlling the synchronous axis.
  • Next, the information about reference axis is noticed to the [0086] axis control unit 10 b, and the information about synchronous axis and the information about the rotating direction and command rotation ratio of the synchronous axis 63 to the reference axis 43 are noticed to the axis control unit 10 c for controlling the synchronous axis. Further, connecting the reference position output unit 75 of the axis control unit 10 b and reference position input unit 73 of the axis control unit 10 c, the synchronous control reference moving stroke of reference axis is noticed to the axis control unit 10 c for controlling the synchronous axis.
  • In this state, in the [0087] axis control units 10 a, 10 b, and 10 c for reference axis and synchronous axes, the axis control system changeover unit 71 changes over the axis control system from speed control system to position control system.
  • In the [0088] axis control unit 10 a of reference axis changed over to the position control system, the axis control command value converting unit 72 converts the speed command to the reference spindle 23 to the moving stroke per unit time, and notices this moving stroke as the synchronous control reference moving stroke to the synchronous position calculation processing unit 74. In the synchronous position calculation processing unit 74, further, the synchronous control reference moving stroke is issued to the axis control unit 10 b for controlling the synchronous axis through the reference position output unit 75.
  • In this state, the synchronous position [0089] calculation processing unit 74 adds the synchronous control reference moving stroke to the synchronous control reference position, and notices the result of addition as a new synchronous control reference position to the synchronous position correction unit 76. In the synchronous position correction unit 76, in order to control the reference axis, using the received synchronous control reference position as command value, the command position is noticed to the spindle amplifier 20 by way of the data input and output circuit 13.
  • Next, in the [0090] axis control unit 10 b of reference axis changed over to the position control system, the axis control command value converting unit 72 converts the speed command to the reference spindle 43 to the moving stroke per unit time, and notices this moving stroke as the synchronous control reference moving stroke to the synchronous position calculation processing unit 74. In the synchronous position calculation processing unit 74, further, the synchronous control reference moving stroke is issued to the axis control unit 10 c for controlling the synchronous axis through the reference position output unit 75.
  • In this state, the synchronous position [0091] calculation processing unit 74 adds the synchronous control reference moving stroke to the synchronous control reference position, and notices the result of addition as a new synchronous control reference position to the synchronous position correction unit 76. In the synchronous position correction unit 76, in order to control the reference axis, using the received synchronous control reference position as command value, the command position is noticed to the spindle amplifier 40 by way of the data input and output circuit 13.
  • On the other hand, in the [0092] axis control unit 10 c of reference axis changed over to the position control system, the following operation is carried out.
  • First, in the [0093] synchronous axis 63 synchronized with the reference axis 43, the reference position input unit 73 of the axis control unit 10 c receives the synchronous control reference moving stroke issued from the reference position output unit 75 of the axis control unit 10 b for controlling the reference axis 43 related by the synchronous control management unit 11, and notices to the synchronous position calculation processing unit 74.
  • The synchronous position [0094] calculation processing unit 74 multiplies the received synchronous control reference moving stroke by the gear ratio of the synchronous axis 63 to the reference axis 43, command rotation ratio, and command unit ratio, and determines the product as the synchronous control reference moving stroke to the synchronous axis 63. In the axis control unit 10 c, since there is no other axis For synchronous control with synchronous axis 63 as reference axis, the synchronous control reference moving stroke is not issued to other axis control unit.
  • Afterwards, in the synchronous position [0095] calculation processing unit 74, this synchronous control reference moving stroke is added to the synchronous control reference position, and the result of addition is noticed to the synchronous position correction unit 76 as a new synchronous control reference position. Consequently, the synchronous position correction unit 76 calculates the position correction amount from the position deviation amount of the reference axis 43 and the position deviation amount of the synchronous axis 63, and adds it to the synchronous control reference position to obtain command position, then notices the obtained command position to the spindle amplifier 60 by way of the data input and output circuit 13. FIG. 4 is a flowchart for managing the synchronous control in the numerical control apparatus of the invention.
  • Referring to FIG. 4, the managing method of axis for synchronous control and the managing method of processing sequence in each axis control unit are explained below. [0096]
  • First, the [0097] processing program 2 is analyzed in the analysis processing unit 3 (FIG. 4, S1), and if the information noticed to the synchronous control management unit 11 is obtained by analyzing the spindle synchronous control command as shown in FIG. 5 (S1, Yes), referring to the data on the memory showing the synchronous control management matrix shown in FIG. 3, it is judged if the commanded command of synchronous control axes is correct or not (S2). If the information is not obtained by analyzing the spindle synchronous control command (S1, No), ordinary speed control is executed.
  • In judgement at step S[0098] 2, if not correct, it means the axis newly commanded as synchronous axis has been already handled as synchronous axis in any combination of synchronous control. For example, if not correct (S2, No), the synchronous control management unit 11 controls to issue an alarm (S7), and if correct (S2, Yes), the information of synchronous control is newly set in the data of synchronous control management matrix (S3).
  • Later, the synchronous [0099] control management unit 11 notices the information about reference axis and synchronous control mode request to the axis control unit (10 a, 10 b, . . . etc.) for controlling the axis used as reference axis. Further, the synchronous control management unit 11 also notices the information about synchronous axis, synchronous control mode request, rotation ratio and other information to the axis control unit (10 a, 10 b, . . . etc.) of axis as synchronous axis (S5).
  • Finally, the synchronous [0100] control management unit 11 manages the sequence of processing of axis control units on the basis of the data of synchronous control management matrix (S6). The sequence of management is from the axis not handled as synchronous axis. That is, if the axis is being handled as the reference axis, the next axis handled as synchronous axis is controlled, or if this synchronous axis is also being handled as the reference axis, the second axis handled as synchronous axis is controlled sequentially. Thus, searching combinations of synchronous control in all axes, it is possible to control in the sequence from reference axis to synchronous axes.
  • FIG. 6 is a flowchart of the process performed by the axis control units. [0101]
  • Referring to FIG. 6, the operation of each axis control unit processed the sequence of management in the synchronous [0102] control management unit 11 is explained.
  • First, in case of an axis not handled as synchronous axis, this axis is an axis handled as spindle in ordinary speed control, or an axis handled as reference axis of synchronous control. Accordingly, the axis control unit checks if the corresponding spindle is handled as reference axis or synchronous axis of synchronous control (S[0103] 11). In the case of the axis handled as ordinary speed control spindle (S11, No), the axis control unit issues the command speed to the corresponding spindle amplifier through the data input and output circuit 13 (S24). On the other hand, in case of reference axis (S11, Yes), the axis control unit checks if the spindle motor control system has been changed over from the speed control system to position control system or not (S12).
  • If not changed over to the position control system (S[0104] 12, No), the control system of the spindle motor is changed over to the position control system (S13). On the other hand, if already changed over to the position control system (S12, Yes), the moving stroke per unit time is calculated from the speed command to the spindle, and the command position for position control is calculated (S14).
  • Consequently, the axis control unit checks if the corresponding axis is handled as synchronous axis of synchronous control or not (S[0105] 15). In this case, it is not handled as synchronous axis, then it is checked if reference axis of synchronous control or not (S18). Herein, being explained as reference axis, the reference position moving stroke which is the moving stroke per unit time of axis is issued to the axis control unit of the axis to be synchronized (s19).
  • Again, checking if handled as synchronous axis of synchronous control or not (S[0106] 20), since the reference axis is handled herein (S20, No), the axis command position is issued to the data input and output processing unit 13 (S23), and the spindle amplifier for controlling the reference axis controls the position of the spindle according to the commanded command position.
  • Next, the synchronous axis of synchronous control is explained. First, it is checked if the corresponding spindle is handled as reference axis or synchronous axis of synchronous control or not (S[0107] 11) Being handled as synchronous axis herein (S11, Yes), the axis control unit checks if the control system of the spindle motor has been changed over from speed control system to position control system or not by the synchronous control (S12).
  • If not changed over to the position control system (S[0108] 12, No), the control system of the spindle motor is changed over to the position control system (S13). On the other hand, if already changed over to the position control system (S12, Yes), the position moving stroke per unit time is calculated from the speed command to the spindle, and the command position for position control is calculated (S14).
  • Consequently, the axis control unit checks if handled as synchronous axis of synchronous control or not (S[0109] 15). In this case, it is handled as synchronous axis (S15, Yes), and the axis control unit checks if the reference axis is changed over to the position control system to be in the synchronous control mode or not (S16). If the reference axis is not changed over to the synchronous control mode (S16, No), the process advances to step S18 in order that the command of synchronous axis may be the one calculated at step S14. On the other hand, when the reference axis has been changed over to the synchronous control mode (S16, Yes), the moving stroke per unit time of the axis synchronized with the reference position moving stroke issued from step S19 of the reference axis is calculated (S17). For example, assuming the position moving stroke per unit time of reference axis to be La, the rotation ratio to be reference axis rotation: synchronous axis rotation=Ra:Rb, the command unit time of reference axis to be Ia, and the command unit time of synchronous axis to be Ib, the position moving stroke per unit time of the synchronous axis is expressed in the following formula.
  • Lb=La×(Rb/Ra)×(Ib/Ia)
  • Next, the axis control unit further checks if the synchronous axis is the reference axis of synchronous control or not (S[0110] 18). If the synchronous control is executed in one set (S18, No), this synchronous axis is not handled as reference axis, and the process goes to step S20. If the synchronous control is executed in two or more sets (S18, Yes), this synchronous axis can be a reference axis of other set. Therefore, in case of reference axis, the reference position moving stroke which is the moving stroke per unit time of the axis is issued to the axis control unit of the axis to be synchronized (S19). Again, checking if handled as synchronous axis of synchronous control (S20), since it is handled as synchronous axis of synchronous control (S20, Yes), the axis control unit calculates the position correction amount (S21), and further adds this position correction amount to the command position, and calculates the corrected command position (S22).
  • Finally, the axis control unit issues the command position of axis to the data input and [0111] output processing unit 13, and the spindle amplifier for controlling the synchronous axis controls the position of the spindle according to the commanded command position (S23).
  • The numerical control apparatus of the invention thereafter repeats the same operation according to the flowchart, and synchronously controls a plurality of sets by normal combination among arbitrary axes. [0112]
  • According to the numerical control apparatus of the invention, synchronous control is realized in two or more spindles in the machine tool, and synchronous control is simultaneously in three or more spindles, and the precision of synchronism is higher than in the prior art. [0113]
  • In the configuration of the invention, in spindle synchronous control on plural axes, unlike the prior art, it is not necessary to install plural numerical control apparatuses, so that the cost of the machine tool can be curtailed. As a result, the machine tool can be reduced in size. [0114]
  • Further, in the numerical control apparatus of the invention, since the synchronous [0115] position correction unit 76 of the axis control unit for controlling the synchronous axes corrects the deviation component occurring during synchronous control, off-synchronism component due to delay caused by cutting load or the like can be easily corrected, or even in case of synchronous control of axes involving difference always in the position deviation amount due to difference in position control gain or load, unjust torque due to correction does not take place, and synchronous control of high precision is realized. As a result, flaw or distortion of the work can be prevented, and processing of higher precision is possible.
  • FIG. 7 is an essential block diagram of the numerical control apparatus according to the second embodiment. This numerical control apparatus, in addition to the components shown in FIG. 1, comprises a multi-level acceleration and deceleration [0116] parameter memory unit 81 for storing multi-level acceleration and deceleration speed, multi-level reference acceleration and deceleration time constant, and multi-level acceleration and deceleration time constant multiplying factor described below, generated according to the ordinary speed control acceleration and deceleration pattern, by manipulating the parameter setting screen, a reference inclination amount calculation unit 83 for calculating the reference inclination amount which is the acceleration and deceleration speed per unit time, from the maximum rotating speed and multi-level reference acceleration and deceleration time constant of reference spindle and synchronous spindle, a multi-level acceleration and deceleration pattern calculation unit 84 for calculating an optimum multi-level acceleration and deceleration pattern from the set multi-level acceleration and deceleration parameter, and a multi-level acceleration and deceleration decision unit 82 for determining the pattern of acceleration and deceleration pattern, and noticing the pattern to the synchronous control management unit. The components in the second embodiment which are same as those in the first embodiment are provided with the same reference characters, and their description is omitted.
  • The operation of the numerical control apparatus according to the second embodiment will be explained here. [0117]
  • First, setting of multi-level acceleration and deceleration parameter from acceleration and deceleration speed, multi-level reference acceleration and deceleration time constant, and multi-level acceleration and deceleration time constant multiplying factor is explained by referring to the essential block diagram in FIG. 7, a specific example of multi-level acceleration and deceleration pattern for synchronous control in FIG. 8, a diagram showing calculation method of multi-level acceleration and deceleration time constant multiplying factor in FIG. 9, and a setting example of multi-level acceleration and deceleration parameter for synchronous control in FIG. 10. [0118]
  • As shown in FIG. 8([0119] a), usually, the spindle motor accelerates and decelerates according to the acceleration and deceleration pattern of speed control system, that is, along curve 1 shown in FIG. 8(a). However, the acceleration and deceleration pattern by speed control system is a pattern at the time of maximum torque output of spindle motor. Accordingly, in spindle synchronous control of two or more spindle motors, in order to accelerate and decelerate while maintaining the precision of synchronism, it is necessary to accelerate and decelerate with plural acceleration and deceleration patterns having a larger allowance (a smaller inclination) than the acceleration and deceleration pattern of speed control system, that is, by setting multi-level acceleration and deceleration pattern.
  • The reason of multi-level setting of acceleration and deceleration pattern is explained. [0120]
  • During high speed rotation, for example, at 7200 rpm to 8000 rpm in FIG. 8([0121] a), the inclination of acceleration and deceleration is very moderate. The spindle synchronous acceleration and deceleration pattern {circle over (2)} in FIG. 8(a) must be set with a larger allowance than the acceleration and deceleration pattern of speed control due to the same reason as mentioned above, and if set in one stage, the acceleration and deceleration time becomes very long. Hence, by setting a multi-level acceleration and deceleration pattern, the acceleration and deceleration operation can be done efficiently in a short time form low speed rotation to high speed rotation of the spindle motor (that is, acceleration and deceleration closed to the acceleration and deceleration pattern of speed control can be realized).
  • The parameter of multi-level acceleration and deceleration pattern of spindle synchronous control is explained. [0122]
  • In FIG. 8([0123] a), the acceleration and deceleration pattern of speed control up to maximum rotating speed of 8000 rpm is divided into seven sections. It is divided in a large section where the acceleration and deceleration pattern of speed control system can be approximately linearly, and in a small section where the curve is large. For example, in FIG. 8(a), the former corresponds to inclination 2, inclination 4, and inclination 7, and the latter corresponds to inclination 1, inclination 3, inclination 5, and inclination 6.
  • Determining the time constant at the largest inclination, it is defined as the time until reaching the maximum rotating speed, that is, the multi-level reference acceleration and deceleration time constant. In the example in FIG. 8([0124] a), inclination 2 is the multi-level reference acceleration and deceleration time constant, and it is calculated to be about 500 ms in the following formula.
  • 8000(rpm)/(4000(rpm)−500(rpm))×220(ms)=503(ms)
  • Next, the multi-level acceleration and deceleration time constant multiplying factor is defined as the ratio to the multi-level acceleration and deceleration time constant, and each multi-level acceleration and deceleration time constant multiplying factor the multi-level acceleration and deceleration pattern is calculated as follows. [0125]
  • First, the method of determining the multi-level acceleration and deceleration time constant multiplying factor of [0126] inclination 1 is explained according to FIG. 9. For example, from FIG. 1, the inclination (multi-level acceleration and deceleration speed per unit time) is determined as follows:
  • 500(rpm)/220(ms)=2.27(rpm/ms)
  • and the time to accelerate up to 8000 rpm is [0127]
  • 8000(rpm)/2.27(rpm/ms)=3520(ms)
  • Finally, the ratio to the multi-level reference acceleration and deceleration time constant (multi-level acceleration and deceleration time constant multiplying factor) is calculated as follows: [0128]
  • 3520(ms)/500(ms)=7(times)
  • and hence the multi-level acceleration and deceleration time [0129] constant multiplying factor 1 of inclination 1 is 7.
  • Similarly, the multi-level acceleration and deceleration time [0130] constant multiplying factor 3, multi-level acceleration and deceleration time constant multiplying factor 4, multi-level acceleration and deceleration time constant multiplying factor 5, multi-level acceleration and deceleration time constant multiplying factor 6, and multi-level acceleration and deceleration time constant multiplying factor 7 of inclination 3, inclination 4, inclination 5, inclination 6, and inclination 7 are calculated, and the parameters as shown in FIG. 10(a) are obtained. In FIGS. 8(b), (c), and (d), each multi-level acceleration and deceleration time constant multiplying factor is calculated, and patterns as shown in FIGS. 10(b), (c), and (d) are obtained. Herein, since the acceleration and deceleration pattern of the largest inclination is defined as the multi-level reference acceleration and deceleration time constant, the inclination is moderate in other acceleration and deceleration patterns (that is, the multi-level acceleration and deceleration time constant multiplying factor is larger than 1).
  • The parameters shown in FIG. 10 are stored in the multi-level acceleration and deceleration [0131] parameter memory unit 81 in FIG. 7 through the parameter setting screen 8 by manipulating the parameter setting screen not shown in the drawing.
  • FIG. 11 is a flowchart showing the method of selection and calculation of multi-level acceleration and deceleration pattern. [0132]
  • The selection method of multi-level acceleration and deceleration pattern of synchronous control of three or more spindles is explained by referring to FIG. 7, FIG. 8, FIG. 9, FIG. 10, and FIG. 11. [0133]
  • The acceleration and deceleration pattern in FIG. 8([0134] a) shows an acceleration and deceleration pattern of synchronous control of reference spindle 23 and synchronous spindle 43. Herein, suppose the synchronous spindle b63 is further synchronized with the spindle synchronism of reference spindle 23 and synchronous spindle 43. As the acceleration and deceleration pattern of synchronous spindle b63, three types are assumed as shown in the diagram. Ina first type, the maximum rotating speed of the synchronous spindle b63 is same as the maximum rotating speed of reference spindle 23 and synchronous spindle 43 (FIG. 8(b)), in a second type, the maximum rotating speed of the synchronous spindle b63 is different from that of the reference spindle 23 and synchronous spindle 43, and the multi-level reference acceleration and deceleration time constant (the time until reaching the maximum rotating speed) of the synchronous spindle b63 is smaller than that of the reference spindle 23 and synchronous spindle 43 (FIG. 8(c)), and in a third type, the maximum rotating speed of the synchronous spindle b63 is different from that of the reference spindle 23 and synchronous spindle 43, and the multi-level reference acceleration and deceleration time constant of the synchronous spindle b43 is larger than that of the reference spindle 23 and synchronous spindle 43.
  • When three spindles, [0135] reference spindle 23, synchronous spindle 43, and synchronous spindle b 63, start spindle synchronism, the multi-level acceleration and deceleration decision unit 82 compares, for example, the maximum rotating speed of the reference spindle 23 and synchronous spindle 43 and the maximum rotating speed of the synchronous spindle b63 (S31). At this time, when the maximum rotating speed of the reference spindle 23 and synchronous spindle 43 and the maximum rotating speed of the synchronous spindle b63 are matched (S31, Yes), the multi-level acceleration and deceleration decision unit 82 compares the multi-level acceleration and deceleration time constants of the reference spindle 23, synchronous spindle 43, and synchronous spindle b63, and selects the multi-level acceleration and deceleration pattern of the largest multi-level reference acceleration and deceleration time constant, and notices the selected multi-level acceleration and deceleration pattern to the synchronous control management unit 11 (S32). Referring to the example in FIG. 8, the reference spindle and synchronous spindle of (a) and synchronous spindle b(1) of (b) correspond thereto, and the multi-level reference acceleration and deceleration time constant of the reference spindle and synchronous spindle of FIG. 8(a) is 500 ms, and the multi-level reference acceleration and deceleration time constant of FIG. 8(b) is 600 ms. Therefore, in the multi-level acceleration and deceleration decision unit 82, comparing the both multi-level reference acceleration and deceleration time constants, the multi-level acceleration and deceleration pattern of synchronous spindle b(1) of FIG. 8(b) having the larger multi-level reference acceleration and deceleration time constant is selected, and the selected multi-level acceleration and deceleration pattern is noticed to the synchronous control management unit 11 (S32).
  • On the other hand, when the maximum rotating speed of the [0136] reference spindle 23 and synchronous spindle 43 and the maximum rotating speed of the reference spindle b63 are not matched, the multi-level acceleration and deceleration decision unit 82 compares the maximum rotating speed of the reference spindle 23 and synchronous spindle 43 and the maximum rotating speed of the reference spindle b63, and selects the acceleration and deceleration pattern of the spindle having the smaller maximum rotating speed (S33) At this time, the multi-level acceleration and deceleration decision unit 82 requests calculation of reference inclination amount to the reference inclination amount calculation unit 83. Herein, the reference inclination amount is the multi-level acceleration and deceleration speed per unit time.
  • Being requested from the multi-level acceleration and [0137] deceleration decision unit 82, the reference inclination amount calculation unit 83 calculates the reference inclination amount as follows from the maximum rotating speed of the designated spindle and the multi-level reference acceleration and deceleration time constant (S34).
  • Reference inclination amount=maximum rotating speed/multi-level reference acceleration and deceleration time constant
  • The reference inclination [0138] amount calculation unit 83 notices the result of calculation to the multi-level acceleration and deceleration decision unit 82.
  • Receiving the calculation result from the reference inclination [0139] amount calculation unit 83, the multi-level acceleration and deceleration decision unit 802 checks if the reference inclination amount of the spindle of the smaller maximum rotating speed is less than the reference inclination amount of the spindle of the larger maximum rotating speed or not (S35). At this time, if the reference inclination amount of the spindle of the smaller maximum rotating speed is less than the reference inclination amount of the spindle of the larger maximum rotating speed (S35, Yes), the multi-level acceleration and deceleration decision unit 82 notices the acceleration and deceleration pattern selected at step S33 directly to the synchronous control management unit 11. Referring to the example in FIG. 8, the reference spindle and synchronous spindle of (a) and the synchronous spindle b(2) of (c) correspond thereto. Comparing the maximum rotating speed between (a) and (c) in FIG. 8, (a) is 8000 rpm, and (c) is 4000 rpm, and the maximum rotating speed of (c) is smaller, and hence the acceleration and deceleration pattern of synchronous spindle b(2) of (c) is selected.
  • The reference inclination amount becomes, according to FIG. 8([0140] a),
  • 8000(rpm)/500(ms)=16(rpm/ms)
  • and becomes, according to FIG. 8([0141] c),
  • 4000(rpm)/400(ms)=10(rpm/ms).
  • Comparing the two, as shown below, since the reference inclination amount of the synchronous spindle b([0142] 2) with smaller maximum rotating speed is less than the reference inclination amount of the reference spindle and synchronous speed with larger maximum rotating speed,
  • 10(rpm/ms)<16(rpm/ms)
  • the multi-level acceleration and [0143] deceleration decision unit 82 selects the acceleration and deceleration pattern of the synchronous spindle b(2) with smaller maximum rotating speed.
  • On the other hand, when the reference inclination amount of the spindle of the smaller maximum rotating speed is more than the reference inclination amount of the spindle of the larger maximum rotating speed (S[0144] 35, No), the multi-level acceleration and deceleration decision unit 82 requests calculation of multi-level acceleration and deceleration pattern to the multi-level acceleration and deceleration pattern calculation unit 84. Being requested from the multi-level acceleration and deceleration decision unit 82, the multi-level acceleration and deceleration pattern calculation unit 84 calculates the multi-level reference acceleration and deceleration time constant from the reference inclination amount of reference spindle and synchronous spindle and reference inclination amount of synchronous spindle b(2) calculated by the reference inclination amount calculation unit 83 (S36).
  • Using the multi-level reference acceleration and deceleration time constant calculated in the multi-level acceleration and deceleration [0145] pattern calculation unit 84, and the multi-level acceleration and deceleration parameter shown in FIG. 10, the multi-level acceleration and deceleration pattern is calculated (S37), and noticed to the multi-level acceleration and deceleration decision unit 82. The multi-level acceleration and deceleration decision unit 82 notices the multi-level acceleration and deceleration pattern calculated in the multi-level acceleration and deceleration pattern calculation unit 84 to the synchronous control management unit 11. Referring to the example in FIG. 8, the reference spindle and synchronous spindle of (a) and the synchronous spindle b(3) of (d) correspond thereto.
  • Calculating the reference inclination amount, in (a), [0146]
  • 8000(rpm)/500(ms)=16(rpm/ms)
  • and in (d), [0147]
  • 6000(rpm)/300(ms)=20(rpm/ms)
  • Comparing the two, [0148]
  • 16(rpm/ms)<20(rpm/ms)
  • since the synchronous spindle b([0149] 3) with smaller maximum rotating speed is larger in the reference inclination amount, the multi-level acceleration and deceleration pattern calculation unit 84 calculates the multi-level reference acceleration and deceleration time constant from the reference inclination amount of reference spindle and synchronous spindle, and the reference inclination amount of synchronous spindle b(2) calculated in the reference inclination amount calculation unit 803. The result is as follows.
  • 300(ms)×20(rpm/ms)/16(rpm/ms)=375(ms)
  • On the basis of this result of calculation, the multi-level acceleration and deceleration [0150] pattern calculation unit 84 calculates the multi-level acceleration and deceleration pattern by using the multi-level acceleration and deceleration parameter shown in FIG. 10(d). Results of calculation are as follows.
    Spindle rotating Acceleration and deceleration
    speed (rpm) pattern (inclination: rpm/ms)
     0-450 6000/(375 × 6.8) = 2.35
     450-3000 6000/(375 × 1.0) = 16
    3000-3500 6000/(375 × 4.6) = 3.48
    3500-4500 6000/(375 × 5.0) = 3.2
    4500-4900 6000/(375 × 7.1) = 2.25
    4900-5400 6000/(375 × 7.5) = 2.13
    5400-6000 6000/(375 × 15.0) = 1.07
  • The multi-level acceleration and deceleration [0151] pattern calculation unit 84 notices the calculation results to the multi-level acceleration and deceleration decision unit 82. The multi-level acceleration and deceleration decision unit 82 notices the multi-level acceleration and deceleration pattern calculated in the multi-level acceleration and deceleration pattern calculation unit 84 to the synchronous control management unit 11.
  • Thus, according to the numerical control apparatus of the invention, an appropriate acceleration and deceleration pattern maybe always noticed to the synchronous [0152] control management unit 11.
  • INDUSTRIAL APPLICABILITY
  • As described herein, the numerical control apparatus of the invention is useful in a machine tool for synchronous control by driving two or more spindle motors or servomotors, and is particularly suited to synchronous control of higher precision. [0153]

Claims (10)

1. A numerical control apparatus for synchronously controlling a plurality of spindle motors or servo motors driven by a machine tool according to a processing program, the numerical control apparatus comprising:
a memory unit which stores the processing program;
a synchronous control management unit which manages the dominant relation of plural axes to be controlled synchronously; and
plural axis control units, having information about reference axis as the reference of synchronous control and information about synchronous axis for operating synchronously with the reference axis stored according to the dominant relation of axes managed by the synchronous control management unit, which control the corresponding motors on the basis of the command position calculated inside,
wherein one axis control having set the information about reference axis, and plural axis control units having set the information about synchronous axis control the individual corresponding motors, and the plural axes can be controlled synchronously in relation to one reference axis, and also other axis can be controlled synchronously on the basis of the reference axis.
2. The numerical control apparatus according to claim 1, wherein each one of the plural axis control units includes,
an axis control system changeover unit which changes over to either system of speed control system for driving the corresponding motor depending on the speed command value described in the processing program or the position control system for driving depending on the moving stroke per unit time converted from the speed command value;
an axis control command converting unit which calculates the moving stroke per unit time from the speed command value with respect to the reference axis;
reference position input and output units which issue the moving stroke per unit time of the reference axis calculated in the axis control command value converting unit to other axis control unit, or receive the moving stroke per unit time of the reference axis calculated in other axis control unit; and
a synchronous position calculation processing unit which calculates the command position corresponding to the pertinent axis, on the basis of the moving stroke calculated by the axis control command value converting unit or the moving stroke received in the reference position input unit,
wherein, in the position control system, when controlling the reference axis, the synchronous position calculation processing unit adds the moving stroke of the reference axis calculated in the axis control command converting unit to the reference position of the reference axis, and calculates the command position to the reference axis, and
when controlling the synchronous axis, the synchronous position calculation processing unit calculates the moving stroke per unit time of the synchronous axis, from the moving stroke received in the reference position input and output unit, the gear ratio of synchronous axis to referenced axis, command rotation ratio, and command unit time ratio, and adds the moving stroke to the reference position of the synchronous axis, thereby calculating the command position to the synchronous axis.
3. The numerical control apparatus according to claim 1, wherein the axis control system changeover unit of the axis control unit which control the synchronous axis calculates a theoretical command position by subtracting the speed command value described in the processing program, theoretical value of position deviation amount calculated from the position control gain of the motor, and delay amount corresponding to the sampling delay time of feedback position, from the feedback position from the axis, and later changes over from the ordinary speed control system to the position control system in a contracted state of fluctuation of position deviation amount.
4. The numerical control apparatus according to claim 1, wherein each one of the plural axis control units further comprises a synchronous position correction unit which corrects the fluctuation of the axis by calculating the position correction amount form the position deviation amount of reference axis and position deviation amount of synchronous axis, and adding the position correction amount to the command position of the synchronous axis.
5. The numerical control apparatus according to claim 1, wherein the synchronous position correction unit in the axis control unit which controls the synchronous axis multiplies the position deviation amount of reference axis by the command rotation ratio of reference axis and synchronous axis, and the command unit time ratio, and calculates the difference between the calculation result and the position deviation amount of the reference axis, then determines the value of passing the obtained difference through the primary delay filter according to a specific time constant determined by the parameter as the position correction amount.
6. The numerical control apparatus according to claim 1, wherein each one of the plural axis control units includes a theoretical position deviation amount calculation processing unit which calculates the theoretical position deviation amount from the speed control value described in the processing program and the position control gain of the motor,
wherein, the synchronization position correction unit in the axis control unit which controls the synchronous axis calculates the difference between the theoretical position deviation amount of the reference axis calculated in the theoretical position deviation amount calculation processing unit and the actual position deviation amount obtained from the reference axis, and determines the value calculated from the difference, the command rotation ratio of the synchronous axis to the reference axis, and the command unit time ratio, as the position correction amount.
7. The numerical control apparatus according to claim 1, wherein each one of the axis control units includes a synchronous correction amount fixing unit which calculates the average of the position deviation amount in steady rotation on the reference axis and synchronous axis for synchronous control, and further calculates their difference,
wherein, the synchronous position correction unit in the axis control unit which controls the synchronous axis determines the difference calculated in the synchronous correction amount fixing unit as the position correction amount.
8. The numerical control apparatus according to claim 1, wherein the memory unit incorporates a synchronous correction coefficient holding unit which calculates the average of the position deviation amount in steady rotation on the reference axis and synchronous axis for synchronous control, at the time of initial adjustment of the machine tool, and holds the value obtained by dividing this average by the speed control value as the coefficient for obtaining the position deviation amount,
wherein, the synchronous position correction unit in the axis control unit which controls the synchronous axis calculates the average of the position deviation amount in steady rotation on the reference axis and synchronous axis for synchronous control, by applying the speed command value by the coefficient held in the synchronous correction coefficient holding unit, and obtains this difference as the position correction amount.
9. The numerical control apparatus according to claim 1, further comprising a synchronous correction amount error canceling unit which cancels the variation component of position deviation amount caused by variation due to disturbance or the like, by subtracting the difference between the average of the position deviation amount in steady rotation on the axis for synchronous control and the actual position deviation amount, temporarily from the position correction amount.
10. The numerical control apparatus according to claim 1, further comprising:
a multi-level acceleration and deceleration parameter memory unit which stores the multi-level acceleration an deceleration speed generated by the acceleration and deceleration pattern of ordinary speed control system, multi-level reference acceleration and deceleration time constant, and multi-level acceleration and deceleration time constant multiplying factor by manipulating the parameter setting screen;
a reference inclination amount calculation unit which calculates the reference inclination amount, as the acceleration and deceleration speed per unit time, from the maximum rotating speed and multi-level reference acceleration and deceleration time constant of the reference spindle and synchronous spindle;
a multi-level acceleration and deceleration pattern calculation unit which calculates an appropriate multi-level acceleration and deceleration pattern from the set multi-level acceleration and deceleration pattern; and
a multi-level acceleration and deceleration decision unit which determines the multi-level acceleration and deceleration pattern to be noticed to the synchronous control management unit.
US09/879,240 1998-12-24 2001-06-06 Numerical control apparatus Expired - Lifetime US6404160B2 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP1998/005868 WO2000039646A1 (en) 1998-12-24 1998-12-24 Numerical control device

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP1998/005868 Continuation WO2000039646A1 (en) 1998-12-24 1998-12-24 Numerical control device

Publications (2)

Publication Number Publication Date
US20020003416A1 true US20020003416A1 (en) 2002-01-10
US6404160B2 US6404160B2 (en) 2002-06-11

Family

ID=14209690

Family Applications (1)

Application Number Title Priority Date Filing Date
US09/879,240 Expired - Lifetime US6404160B2 (en) 1998-12-24 2001-06-06 Numerical control apparatus

Country Status (7)

Country Link
US (1) US6404160B2 (en)
JP (1) JP4346824B2 (en)
KR (1) KR100591978B1 (en)
DE (1) DE19883028T1 (en)
GB (1) GB2362479B (en)
TW (1) TW407395B (en)
WO (1) WO2000039646A1 (en)

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020138171A1 (en) * 2001-02-22 2002-09-26 Mutoshi Fukutani Numerical control method and numerically controlled allaratus
US20050248304A1 (en) * 2004-05-10 2005-11-10 Fanuc Ltd Numerical controller
US20070100493A1 (en) * 2005-10-28 2007-05-03 Fanuc Ltd Numerical controller
US20070225938A1 (en) * 2006-03-22 2007-09-27 Nintendo Co., Ltd. Inclination calculation apparatus and inclination calculation program, and game apparatus and game program
US20070233424A1 (en) * 2006-03-28 2007-10-04 Nintendo Co., Ltd. Inclination calculation apparatus and inclination calculation program, and game apparatus and game program
US20110088523A1 (en) * 2008-05-13 2011-04-21 Mitsubishi Electric Corporation Numerical control method and numerical control device
CN103231277A (en) * 2013-04-17 2013-08-07 苏州新代数控设备有限公司 Mechanical sensing and controlling system of computerized numerical control (CNC) lathe for accelerating thread cutting circular machining
US20130226355A1 (en) * 2012-02-23 2013-08-29 Okuma Corporation Numerical control machine
CN103348295A (en) * 2012-02-08 2013-10-09 三菱电机株式会社 Numerical control device
US20140086231A1 (en) * 2002-01-08 2014-03-27 Ipr Licensing, Inc. Maintaining a maintenance channel in a reverse link of a wireless communications system
US20140163738A1 (en) * 2012-12-10 2014-06-12 Mitsubishi Electric Corporation Multi-axis control system setting/adjustment function supporting apparatus
EP2012207A3 (en) * 2007-07-02 2015-02-11 Fanuc Corporation Numerical controller controlling acceleration and deceleration of respective control axes up to command speeds
US20150160647A1 (en) * 2013-12-11 2015-06-11 Fanuc Corporation Parameter adjustment support device having function for supporting parameter adjustment
US20190088283A1 (en) * 2017-09-19 2019-03-21 Fanuc Corporation Amplifier selection device, amplifier selection method, and computer-readable storage medium having power source capacity display function
US10365634B2 (en) 2013-10-11 2019-07-30 Mitsubishi Electric Corporation Multiaxial control system setting and adjusting function supporting device
US10394225B2 (en) 2015-08-03 2019-08-27 Fanuc Corporation Synchronization controller having function of solving shock generated in synchronization start block
EP3561621A1 (en) * 2018-04-26 2019-10-30 Siemens Aktiengesellschaft Determination of an adapted leading value
CN110968036A (en) * 2018-09-28 2020-04-07 发那科株式会社 Numerical controller
CN112673331A (en) * 2018-12-27 2021-04-16 欧姆龙株式会社 Synchronization control device, synchronization control system, synchronization control method, and simulation device
CN114095304A (en) * 2022-01-24 2022-02-25 深圳市山龙智控有限公司 Inter-node synchronous precision compensation method and system based on EtherCAT bus

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003058218A (en) * 2001-06-06 2003-02-28 Fanuc Ltd Controller for driving and controlling servo motor
JP3671020B2 (en) * 2002-04-09 2005-07-13 ファナック株式会社 Numerical controller
JP4070744B2 (en) * 2004-04-28 2008-04-02 ファナック株式会社 Synchronous control device
KR100802483B1 (en) * 2005-04-12 2008-02-12 주식회사 터보테크 The integrated controller, motion and sequence control
WO2007074501A1 (en) * 2005-12-26 2007-07-05 Mitsubishi Denki Kabushiki Kaisha Numerical control device and numerical control machine tool
US8366805B2 (en) 2007-04-05 2013-02-05 Worcester Polytechnic Institute Composite structures with porous anodic oxide layers and methods of fabrication
JP4467625B2 (en) * 2008-03-31 2010-05-26 三菱電機株式会社 Numerical control apparatus and numerical control method
DE102009016694A1 (en) 2009-04-07 2010-10-14 Linde Aktiengesellschaft Membrane tube and reactor with membrane tube
US8652239B2 (en) 2010-05-03 2014-02-18 Worcester Polytechnic Institute High permeance sulfur tolerant Pd/Cu alloy membranes
JP5482639B2 (en) * 2010-12-13 2014-05-07 ブラザー工業株式会社 Numerical control device, control program, and storage medium
TWI454335B (en) * 2011-07-27 2014-10-01 Nat Univ Chung Cheng Learning control system for simultaneously reduction in process time and machining errors
WO2015058277A1 (en) 2013-10-25 2015-04-30 Transformix Engineering Inc. Flexible feeding and closing machine for hinged caps
JP5800886B2 (en) * 2013-12-16 2015-10-28 ファナック株式会社 A numerical controller that gives commands to multiple axes with a single command
JP6081954B2 (en) * 2014-04-24 2017-02-15 ファナック株式会社 Numerical control device that speeds up the reversing operation of machine tools
JP6838056B2 (en) * 2016-05-02 2021-03-03 住友電工ハードメタル株式会社 Methods, recording media and programs to correct the trajectory of the cutting edge
JP6404863B2 (en) * 2016-06-27 2018-10-17 ファナック株式会社 Numerical control device that dynamically switches the time constant of the acceleration / deceleration filter
JP7323758B2 (en) * 2018-11-22 2023-08-09 スター精密株式会社 lathe
JP2020106937A (en) * 2018-12-26 2020-07-09 ファナック株式会社 Numerical control device

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5862707A (en) * 1981-10-09 1983-04-14 Fanuc Ltd Numerical control system
JPS62237504A (en) * 1986-04-08 1987-10-17 Fanuc Ltd Numerical controller
JPH01228752A (en) 1988-03-10 1989-09-12 Fanuc Ltd Spindle synchronizing system
JP2824648B2 (en) * 1988-08-02 1998-11-11 ファナック株式会社 Spindle synchronous operation control apparatus and method for machine tool
JPH0283141A (en) * 1988-09-20 1990-03-23 Mitsubishi Electric Corp Numerical control device
JPH02220103A (en) * 1989-02-22 1990-09-03 Fanuc Ltd Spindle control command system
JPH0649260B2 (en) * 1989-02-28 1994-06-29 豊田工機株式会社 Synchronous control device
EP0385459A3 (en) * 1989-03-02 1990-11-14 Toyoda Koki Kabushiki Kaisha Synchronizing control apparatus
DE69023314T2 (en) * 1989-04-26 1996-03-28 Fanuc Ltd METHOD FOR ROTATING A MAIN SHAFT.
JP2676944B2 (en) 1989-09-22 1997-11-17 日本電気株式会社 Position control device
JPH03121748A (en) * 1989-10-06 1991-05-23 Fanuc Ltd Spindle synchronous rotation control system
US5319288A (en) * 1989-10-06 1994-06-07 Fanuc Ltd Main spindle rotation control method
JPH03252704A (en) 1990-03-02 1991-11-12 Mitsubishi Heavy Ind Ltd Rotational synchronization corrective control system
JP3030046B2 (en) * 1990-03-22 2000-04-10 豊田工機株式会社 Non-roundness generating device
JPH03273402A (en) 1990-03-23 1991-12-04 Yaskawa Electric Corp Method for synchronized operation
JP2761426B2 (en) * 1990-03-29 1998-06-04 ファナック株式会社 Numerical control unit
JPH0421388A (en) * 1990-05-16 1992-01-24 Fanuc Ltd Synchronous spindle rotation control system
JP2518457B2 (en) * 1990-07-05 1996-07-24 三菱電機株式会社 How to synchronize the feed axis of the lathe
JPH04238504A (en) 1991-01-22 1992-08-26 Fanuc Ltd Synchronous control system
JPH072911A (en) 1991-11-22 1995-01-06 Sumitomo Dow Ltd Production of copolymer latex, and copolymer latex
JP2850276B2 (en) * 1992-01-29 1999-01-27 三菱電機株式会社 Control device for machine tool with two spindles
JP3316003B2 (en) * 1992-06-20 2002-08-19 スター精密株式会社 Numerically controlled automatic lathe and machining method with numerically controlled automatic lathe
JPH0736512A (en) 1993-07-19 1995-02-07 Toei Denki Kk Synchronizing operation controller
JPH07319519A (en) 1994-05-20 1995-12-08 Toyota Motor Corp Main axis control method for multiaxes numerical controller
JPH0832014A (en) 1994-07-18 1996-02-02 Daido Steel Co Ltd Manufacture of ic package
JP3450065B2 (en) * 1994-10-16 2003-09-22 シチズン時計株式会社 NC lathe
JP3419158B2 (en) 1995-07-20 2003-06-23 三菱電機株式会社 Data processing method for numerical control drive
JP3121748B2 (en) 1995-07-31 2001-01-09 株式会社日立国際電気 Receiving frequency selecting method, receiving frequency selecting circuit, receiving device
JPH0973308A (en) * 1995-09-06 1997-03-18 Mitsubishi Electric Corp Numerical controller controlling plural main axes by plural systems
JP3553741B2 (en) 1996-09-02 2004-08-11 三菱電機株式会社 Numerical control device and spindle motor acceleration / deceleration control method for numerical control device
JPH10174479A (en) * 1996-12-09 1998-06-26 Yaskawa Electric Corp Synchronization control device
JP3038160B2 (en) * 1996-12-10 2000-05-08 ファナック株式会社 Re-threading method for lathe
JP3460781B2 (en) 1997-02-19 2003-10-27 三菱電機株式会社 Numerical control unit
US6333615B1 (en) 1997-07-02 2001-12-25 Mitsubishi Denki Kabushiki Kaisha Synchronization control device for servo motors

Cited By (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020138171A1 (en) * 2001-02-22 2002-09-26 Mutoshi Fukutani Numerical control method and numerically controlled allaratus
US20140086231A1 (en) * 2002-01-08 2014-03-27 Ipr Licensing, Inc. Maintaining a maintenance channel in a reverse link of a wireless communications system
US20050248304A1 (en) * 2004-05-10 2005-11-10 Fanuc Ltd Numerical controller
EP1596264A1 (en) * 2004-05-10 2005-11-16 Fanuc Ltd Numerical controller
US20070100493A1 (en) * 2005-10-28 2007-05-03 Fanuc Ltd Numerical controller
US8224478B2 (en) * 2005-10-28 2012-07-17 Fanuc Ltd Numerical controller
US7920985B2 (en) 2006-03-22 2011-04-05 Nintendo Co., Ltd. Inclination calculation apparatus and inclination calculation program, and game apparatus and game program
US20070225938A1 (en) * 2006-03-22 2007-09-27 Nintendo Co., Ltd. Inclination calculation apparatus and inclination calculation program, and game apparatus and game program
US7379841B2 (en) * 2006-03-22 2008-05-27 Nintendo Co., Ltd. Inclination calculation apparatus and inclination calculation program, and game apparatus and game program
US20070233424A1 (en) * 2006-03-28 2007-10-04 Nintendo Co., Ltd. Inclination calculation apparatus and inclination calculation program, and game apparatus and game program
EP2012207A3 (en) * 2007-07-02 2015-02-11 Fanuc Corporation Numerical controller controlling acceleration and deceleration of respective control axes up to command speeds
US20110088523A1 (en) * 2008-05-13 2011-04-21 Mitsubishi Electric Corporation Numerical control method and numerical control device
US8676358B2 (en) 2008-05-13 2014-03-18 Mitsubishi Electric Corporation Numerical control method and numerical control device
CN103348295A (en) * 2012-02-08 2013-10-09 三菱电机株式会社 Numerical control device
US20130226355A1 (en) * 2012-02-23 2013-08-29 Okuma Corporation Numerical control machine
US9110455B2 (en) * 2012-02-23 2015-08-18 Okuma Corporation Numerical control machine
US20140163738A1 (en) * 2012-12-10 2014-06-12 Mitsubishi Electric Corporation Multi-axis control system setting/adjustment function supporting apparatus
CN103231277A (en) * 2013-04-17 2013-08-07 苏州新代数控设备有限公司 Mechanical sensing and controlling system of computerized numerical control (CNC) lathe for accelerating thread cutting circular machining
US10365634B2 (en) 2013-10-11 2019-07-30 Mitsubishi Electric Corporation Multiaxial control system setting and adjusting function supporting device
US20150160647A1 (en) * 2013-12-11 2015-06-11 Fanuc Corporation Parameter adjustment support device having function for supporting parameter adjustment
US9436178B2 (en) * 2013-12-11 2016-09-06 Fanuc Corporation Parameter adjustment support device having function for supporting parameter adjustment
US10394225B2 (en) 2015-08-03 2019-08-27 Fanuc Corporation Synchronization controller having function of solving shock generated in synchronization start block
US20190088283A1 (en) * 2017-09-19 2019-03-21 Fanuc Corporation Amplifier selection device, amplifier selection method, and computer-readable storage medium having power source capacity display function
US10699743B2 (en) * 2017-09-19 2020-06-30 Fanuc Corporation Amplifier selection device, amplifier selection method, and computer-readable storage medium having power source capacity display function
EP3561621A1 (en) * 2018-04-26 2019-10-30 Siemens Aktiengesellschaft Determination of an adapted leading value
CN110412893A (en) * 2018-04-26 2019-11-05 西门子股份公司 Determine the method and control assembly of the adjusted guidance value of guiding axis
US11300946B2 (en) 2018-04-26 2022-04-12 Siemens Aktiengesellschaft Control component and method for determining an adapted master value of a master axis
CN110968036A (en) * 2018-09-28 2020-04-07 发那科株式会社 Numerical controller
CN112673331A (en) * 2018-12-27 2021-04-16 欧姆龙株式会社 Synchronization control device, synchronization control system, synchronization control method, and simulation device
CN114095304A (en) * 2022-01-24 2022-02-25 深圳市山龙智控有限公司 Inter-node synchronous precision compensation method and system based on EtherCAT bus

Also Published As

Publication number Publication date
JP4346824B2 (en) 2009-10-21
US6404160B2 (en) 2002-06-11
GB0115380D0 (en) 2001-08-15
KR20010108037A (en) 2001-12-07
DE19883028T1 (en) 2002-02-14
GB2362479A (en) 2001-11-21
WO2000039646A1 (en) 2000-07-06
KR100591978B1 (en) 2006-06-20
TW407395B (en) 2000-10-01
GB2362479B (en) 2003-01-15

Similar Documents

Publication Publication Date Title
US6404160B2 (en) Numerical control apparatus
US7167772B2 (en) Machining time calculating apparatus
JP3389417B2 (en) How to compensate for lost motion
US7215089B2 (en) Threading/tapping control apparatus
US8676358B2 (en) Numerical control method and numerical control device
US5059881A (en) Numerical control apparatus having a backlash compensation function and method thereof
US6034498A (en) Servo adjustment method and apparatus therefor
EP2293163B1 (en) Controller for machine tool and five-axis simultaneous control machine tool controlled thereby
US20050246053A1 (en) Numerical control apparatus
EP0265607B1 (en) Numerically controlled machine tool
US20100114359A1 (en) Programming apparatus
EP1293852B1 (en) Method of compensating profile data, and numerical controller and machine tool for practicing the method
GB2281639A (en) Machine tool position synchronization
US6029098A (en) Numerical controller for automatic axial feed
US5198984A (en) Numerical control method for correcting machine tool path errors
US7613541B2 (en) Thread control method and system therefor
JP2007172156A (en) Multi-shaft servo system and automatic adjustment method
US6310457B1 (en) Servomotor controller
EP0540761B1 (en) Method of controlling backlash acceleration
JPH04323705A (en) Synchronous repeat control system for rotation axis
US5795278A (en) Numerical control equipment for a plurality of systems
JP3427800B2 (en) Numerical control unit
JPH07210225A (en) Numerical controller
JPH0498301A (en) Numerically controlled machine tool and numerical controller
JP4310018B2 (en) Tool position correction method for NC machine tools

Legal Events

Date Code Title Description
AS Assignment

Owner name: MITSUBISHI DENKI KABUSHIKI KAISHA, JAPAN

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:SAGASAKI, MASAKAZU;YAMADA, YOSHINORI;REEL/FRAME:011904/0669

Effective date: 20010418

STCF Information on status: patent grant

Free format text: PATENTED CASE

FEPP Fee payment procedure

Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

FPAY Fee payment

Year of fee payment: 4

FPAY Fee payment

Year of fee payment: 8

FPAY Fee payment

Year of fee payment: 12