GB2248947A - Servo control system for numerically controlled machine - Google Patents

Servo control system for numerically controlled machine Download PDF

Info

Publication number
GB2248947A
GB2248947A GB9123701A GB9123701A GB2248947A GB 2248947 A GB2248947 A GB 2248947A GB 9123701 A GB9123701 A GB 9123701A GB 9123701 A GB9123701 A GB 9123701A GB 2248947 A GB2248947 A GB 2248947A
Authority
GB
United Kingdom
Prior art keywords
shaft
workpiece
output signal
control system
loop
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
GB9123701A
Other versions
GB2248947B (en
GB9123701D0 (en
Inventor
Masao Kume
Takeshi Masaki
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.)
Honda Motor Co Ltd
Original Assignee
Honda Motor Co Ltd
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
Priority claimed from JP3916388A external-priority patent/JP2585688B2/en
Priority claimed from JP63306511A external-priority patent/JPH07107643B2/en
Application filed by Honda Motor Co Ltd filed Critical Honda Motor Co Ltd
Priority to GB9123701A priority Critical patent/GB2248947B/en
Publication of GB9123701D0 publication Critical patent/GB9123701D0/en
Publication of GB2248947A publication Critical patent/GB2248947A/en
Application granted granted Critical
Publication of GB2248947B publication Critical patent/GB2248947B/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23FMAKING GEARS OR TOOTHED RACKS
    • B23F23/00Accessories or equipment combined with or arranged in, or specially designed to form part of, gear-cutting machines
    • B23F23/006Equipment for synchronising movement of cutting tool and workpiece, the cutting tool and workpiece not being mechanically coupled
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23FMAKING GEARS OR TOOTHED RACKS
    • B23F23/00Accessories or equipment combined with or arranged in, or specially designed to form part of, gear-cutting machines
    • B23F23/12Other devices, e.g. tool holders; Checking devices for controlling workpieces in machines for manufacturing gear teeth
    • 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/182Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by the machine tool function, e.g. thread cutting, cam making, tool direction control
    • G05B19/186Generation of screw- or gearlike surfaces

Abstract

A servo control system for a numerically controlled machine such as a gear grinding machine or a hobbing machine comprises a servomotor 204 for moving a workpiece with respect to a tool, a first multiplier 215 for multiplying data AR indicative of a moving distance to be traversed, (eg. by feed shaft 213 of feed table 223 on which the workpiece is mounted), a first accumulator 214 for storing the output ARE from multiplier 215, a position detector 206 (pulse generator) coupled to servomotor 204, a counter 228 for counting pulses from detector 206, a second multiplier 230 for multiplying the output Co from counter 228, a second accumulator 232 for storing output Fp of multiplier 230, and an error counter 216 for calculating a difference between the output signals S1, S2 of accumulators 214, 232 applied in synchronism with a sampling signal Tc, and for applying an output signal Dd to servomotor 204 to move the workpiece smoothly. <IMAGE>

Description

SYNCHRONOUS OPERATION CONTROL SYSTEM FOR NUMERICALLY CONTROLLED MACHINE The present invention relates to a synchronous operation control system for use with a numerically controlled machine such as a gear grinding machine, a hobbing machine, or the like in which a tool and a workpiece are required to operate synchronously, and more particularly a synchronous operation control system for monitoring, on a multiplex basis, a grinding tool mounted on a master shaft, a workpiece mounted on a workpiece shaft, and a servomotor coupled to a slave shaft which rotates the workpiece, for their synchronous operation, and for keeping them in an optimally synchronous condition at all times.
There have recently been put to use synchronously operated gear grinding machines in which a grinding tool such as a grinding wheel having a helical ridge on its outer peripheral surface, and a workpiece such as a gear to be ground are held in mesh with each other, and a shaft on which the grinding wheel is mounted and a shaft on which the gear is mounted are synchronously rotated to cause the grinding wheel to grind and finish the gear to desired dimensions.
One such synchronously operated gear grinding machine is disclosed in U.S. Patent No. 4,631,869 assigned to the present assignee. The disclosed gear grinding machine is constructed as follows: A feed table is disposed on a bed and movable back and forth, and a traverse table is supported on the feed table for displacement in directions normal to the direction of movement of the feed table. A workpiece to be ground is detachably mounted on the traverse table and rotatable by a workpiece spindle motor.
A column is mounted on the bed, and a turntable is rotatably supported on the column and supports a shift table. The shift table holds a wheel spindle unit on which a grinding wheel is detachably supported in mesh with the workpiece. The grinding wheel is rotated to grind the teeth of the workpiece, i.e., a gear.
In order to finish the gear to desired dimensions, the gear is required to be ground while the two shafts are being operated in a synchronous condition, i.e., the ridge on the grinding wheel is being aligned with the groove between teeth on the gear within a predetermined range. If the gear were ground while the shafts are not being synchronously operated, the gear teeth would be curved, the pitch of teeth of the gear would be varied, or other grinding errors would be caused.
Some conventional synchronous operation control systems employ electric means for achieving synchronous operation of the shafts in such synchronously operated grinding machines. To obtain highly accurate synchronism between the shafts, a stepping motor is used as such elec tric means. For high-speed high-torque synchronous operation, a servomotor is employed as the electric means.
Where the stepping motor is used, it is quite difficult to attain a desired grinding speed and a high torque. The synchronous operation control system using the servomotor fails to achieve a desired degree of accuracy of synchronous operation. Therefore, it has been difficult to achieve both high accuracy and increased cycle time on a single synchronous operation control system. When a stepping motor is energized, the intervals between pulses for energizing the stepping motor should be as constant as possible to prevent the stepping motor from running out of control. To meet this requirement, synchronous command pulses and differential command pulses must be added and subtracted through highly complex arithmetic operations, and the summation of the synchronous command pulses and the differential command pulses must depend upon a hardware-implemented logic circuit.
To avoid the above drawbacks, there have been proposed synchronous operation control systems for numerically controlled machines which employ a servomotor and process output data from a rotary encoder coupled to the servomotor according to a software program so that high accuracy and increased cycle time can be attained without relying upon a complex pulse logic circuit.
One example of such a synchronous operation control system is disclosed in Japanese Patent Publication No. 5935729. The disclosed synchronous operation control system includes a detecting means for detecting the angular position of either a hobbing shaft for cutting the teeth of a gear or a motor for rotating the hobbing shaft, and energizes a motor to rotate the gear in synchronism with the hobbing shaft rotating motor based on a positional signal generated by the detecting means.
The present invention provides a synchronous operation control system for a numeri cally controlled machine, comprising: a servo drive source for moving a workpiece with respect to a tool; a first mul tiplier for multiplying data indicative of a moving distance to be traversed by said servo drive source; a first accumu lator for temporarily storing an output signal from said first multiplier; a position detector coupled to said servo drive source; a counter for counting pulses from said posi tion detector; a second multiplier for multiplying an output signal from said counter; a second accumulator for temporar ily storing an output signal from said second multiplier; an error counter for calculating a difference between output signals which are applied from said first and second accumu lators in synchronism with a sampling signal, and for apply ing an output signal to said servo drive source to move said workpiece smoothly.
Preferably, each of said first and second multipliers multiplies the output signal by a number which is equal to the number of sampling cycles per unit unit.
Optionally, said servo drive source comprises a servomotor.
In a preferred arrangement, each of said encoders comprises a pulse generator.
In its preferred aspects, the present invention can provide a synchronous operation control system for use with a machine tool such as a gear grinding machine, a hobbing machine, or the like, the synchronous operation control system employing a master/slave control arrangement in which angular positional information is detected by a rotary encoder mounted on a master shaft and processed to control a slave shaft to rotate synchronously with the master shaft, and allowing various data such as a synchronous rotational speed ratio and parameter gains (e.g., a speed error gain, a positional error gain, and the like) to be entered all as numerical data, so that various specifications of workpieces (e.g., the number of teeth, the module, the helix angle of thread, and the like if the workpiece is a gear) and various specifications of the machine (e.g., the number of threads of the tool,the speed reduction ratio of the gear train, and the like) can be switched instantaneously to make the machine tool flexible enough to manufacture many different product types each in a small quantity.
Embodiments of the present invention will now be described by way or example only with reference to the accompanying drawings, in which: FIG. 1 is a block diagram of a gear grinding apparatus incorporating a synchronous operation control system according to the present invention; FIG. 2 is a block diagram showing in detail a multiply-by-4 counter in the gear grinding apparatus shown in FIG. 1; FIGS. 3A, 3B, 4A, 4B, and 5 are a flowchart of an operation sequence of the gear grinding apparatus of FIG. 1; FIG. 6 is a block diagram of a gear grinding apparatus incorporating a synchronous operation control system according to another embodiment of the present invention; FIGS. 7A through 7C, 8A through 8C, and 9 are a flowchart of an operation sequence of the gear grinding apparatus of FIG. 6;; FIGS. 10 and 11 are block diagrams of gear grinding apparatus incorporating synchronous operation control systems according to other embodiments of the present invention; FIG. 12 is a block diagram of a servo control system in the gear grinding apparatus shown in FIGS. 10 and 11; and FIG. 13 is a flowchart of an operation sequence of the servo control system illustrated in FIG. 12.
FIG. 1 schematically shows a gear grinding apparatus incorporating a synchronous operation control system in accordance with an embodiment of the present invention. The gear grinding apparatus includes a tool motor 10 serving as a first motor for rotating a grinding wheel 12 (having a single helical tooth on its outer peripheral surface in the illustrated embodiment). The tool motor 10 is coupled to the grinding wheel 12 through a master shaft 14 as a tool shaft, and a first rotary encoder such as a pulse generator 16, for example, is coaxially connected to the master shaft 14. The rotational speed of the motor 10, i.e., the rotational speed NM of the master shaft 14, is 3000 rpm, and the resolution of the pulse generator 16, i.e., the resolution RM of the master shaft encoder is 60000 p/r (pulses/ revolution).An output signal PGI from the pulse generator 16 is applied to a feedforward processor 22 through a multiply-by-4 counter 20 in a feedforward control panel 18.
A processed signal V described later on, from the feedforward processor 22 is then applied through a D/A converter 24 as a feedforward command signal Sff to a first input terminal of an adder 26.
Master shaft speed data which is other processed data SM from the feed forward processor 22 is delivered to an input terminal of a semiclosed-loop processor 30 in a semiclosed-loop control panel 28. Another input terminal of the semiclosed-loop processor 30 is supplied with an output signal PG2 from a pulse generator 33 coupled as a second rotary encoder to a servomotor 32 as a second motor, through a multiply-by-4 counter 34. Based on the feedback output signal PG2, the semiclosed-loop processor 30 applies a semiclosed-loop command signal Sf, through a D/A converter 38 to a second input terminal of the adder 26. The adder 26 then issues slave shaft speed data Ss as an output signal via a servoamplifier 40 to the servomotor 32 to control the rotational speed thereof for rotating a workpiece.
The servomotor 32 is coupled to one end of a slave shaft 42 the other end of which is connected through a coupling 43 to an inertia damper 44 for dampening inertial forces of the system and a first gear 46 in coaxial relationship. The first gear 46 is held in mesh with a second gear 48 coupled through a shaft 50 to a third gear 52 which is in mesh with a fourth gear 54. The fourth gear 54 is fixedly mounted coaxially on a workpiece shaft 56 supporting on one end a workpiece 31 which comprises a gear to be ground. These gears will collectively be referred to as a gear train 45.
The workpiece shaft 56 is operatively connected to a hysteresis brake 74 through a first pulley 68 on the shaft 56, a second pulley 72 coupled to the brake 74, and a belt 70 trained around the pulleys 68, 72. The braking forces produced by the hysteresis brake 74 are variable by a current signal issued by an amplifier 78 which amplifies an output signal from an adjusted potentiometer 76.
The servomotor 32, the workpiece 31, and the other parts operatively coupled thereto are mounted on a traverse table 80 which is movable back and forth in the directions of the arrow A by a traverse motor 82 as a third motor through a ball screw (not shown) and a traverse shaft 83. A pulse generator 84 serving as a third rotary encoder is coupled to the traverse motor 82, and applies an output signal PG, to the semiclosed-loop processor 30 through a multiplyby-4 counter 88 in the semiclosed-loop control panel 28.
The distance which the traverse table 80 is caused to traverse in the direction of the arrow A by the traverse motor 82 is processed in a predetermined differential operation (described later on) by the semiclosed-loop processor 30.
The processed result is added to the semiclosed-loop command signal Sf 2 which is applied through the D/A converter 38 to the adder 26.
The feedforward control panel 18 and the semiclosed-loop control panel 28 have clock input terminals CK which are supplied with a sampling clock signal Ts that is produced by frequency-dividing an output signal from a quartz oscillator (not shown). In the illustrated embodiment, the sampling clock signal Ts has a sampling time ts of 300 ps FIG. 2 shows in detail each of the multiply-by-4 counters 20, 34, 88 illustrated in FIG. 1. Each of the multiply-by-4 counters 20, 34, 88 includes counters 100a, 100c for counting positive-going edges of A- and B-phase pulses produced by one of the pulse generators 16, 33, 84, and counters 100b, 100d for counting negative-going edges of the A- and B-phase pulses which are inverted by respective inverters 101a, 101b.Output data from the counters 100a through 100d are differentiated with respect to time by respective differentiators 102a through 102d each time the sampling clock signal Ts is applied, thus generating speed data which are added into multiplied-by-4 output data by an adder 108.
Operation and advantages of the gear grinding apparatus thus constructed will be described below.
Various specifications of the workpiece 31 and various specifications such as resolutions of the pulse generators 16, 33, 84 are given in Table 1 below. These specifications are entered into memories (not shown) in the feed forward processor 22 and the semiclosed-loop processor 30 through input means (not shown):: Table 1
Specifications Number of workpiece teeth Z = 60 Work lee module Mn = 2.5 Helix angle of workplece thread ss = LH25" Workpiece width W = w - 20 mm Resolution of master shaft encoder RM - 60000per Resolution of slave shaft encoder Rs = 240000 /r Number of encoder pulses produced each time traverse shaft moves 1 mm Rt = 10000 p/mm Speed reduction ratio for workpiece shaft Q = 24 Sampling time ts = 300 ps Operations in a positioning loop, i.e., the semiclosed-loop control panel 28, where the workpiece is a spur gear will first be described, and then operations in the respective control panels, taking into consideration the amount of movement in the traverse direction, where the workpiece is a helical gear will be described.
A process of grinding a spur gear will first be described below. When the grinding wheel 12 is rotated at the speed NM = 3000 rpm by the tool motor 10, the pulse generator 16 generates an output signal PG, composed of successive pulses. The output signal PG, is applied via the counter 20 to the feed forward processor 22 in the feed for ward control panel 18.Therefore, when the grinding wheel 12 as a tool is rotated at NM = 3000 rpm, pulses or master shaft speed data SM generated by the pulse generator 16 in each sampling time ts = 300 ps are 900 p/sample as indicated by the following equation (1): 5M = (NM/60) x RM x ts (p/sample) = (3000/60) x 60000 x 300 x 10-' = 900 (p/sample) . (1) The rotational speed NW of the workpiece if the number Z of teeth of the workpiece is Z = 60 when the rotational speed NM of the grinding wheel 12 is NM = 3000 rpm, is 50 rpm as given by the following equation (2):: Nw = (P/Z) x NM (rpm) = (1/60) x 3000 = 50 (rpm) . (2) where P is the number of the threads of the tool which corresponds to the number of the threads of the grinding wheel 12, and is 1 as described above.
In view of the fact that the gear train 45 interposed as a rotation transmitting means between the servomotor 32 and the workpiece 31 has a speed reduction ratio Q of 24 : 1 (Q = 24), the servomotor 32 should be rotated at a speed of 1200 rpm as indicated by the following equation (3): Ns = NW x Q (rpm) = 50 x 24 = 1200 (rpm) (3) Assuming that a rated input voltage vR to be applied to the servomotor 32 when its rated rotational speed NSR is 3000 rpm is VR = 6 V based on rated values of the servomotor 32 and the servoamplifier 40, the rotational speed of the servomotor 32 per one volt is 500 rpm/V, and a voltage of 2.4 V should be applied to the servomotor 32 by the servoamplifier 40 in order to rotate the servomotor 32 at 1200 rpm.This relationship is expressed by the following equation (4): NSR/VR = Rated rotational speed/Rated input voltage SR = 3000/6 = 500 (rpm/V) (4) If the D/A converter 24 is of 12 bits, and in order to obtain a voltage of 2.4 V to rotate the servomotor 32 at Ns = 1200 rpm with an output voltage which corresponds to 12 bits being + 10 V, a value V(D/A24)V =2539 should be sup- plied to the D/A converter 24 as indicated by the equation (5): v(D/A24) x 2 20 2.4 + 211 = 2539 (5) 20 20 Therefore, the feedforward command signal Sff is given a value which is produced by converting the value (D/A24) to an analog signal. In this embodiment, the servoamplifier 40 operates as a voltage follower.Insofar as the grinding wheel 12 is rotated at NM = 3000 rpm, the workpiece 31 is synchronously rotated at Nw = 50 rpm.
A positional loop control system is required since the D/A converter 24 or the servoamplifier 40 is subjected to an error such as an analog offset or drift. Such a positional loop control system will be described below.
The positional loop control system comprises the semiclosed-loop control system which is composed of the semiclosed-loop control panel 28 for producing a feedback output signal PG2 as converted to data of the workpiece shaft 56, from the slave shaft 42.
The semiclosed-loop control system which produces the feedback output signal PG, directly from the servomotor 32 that is relatively stable without being affected by a backlash error caused by the gear train 45 is controlled with a high loop gain.
The semiclosed-loop control system controlled with a high loop gain will be described below. For achieving highly accurate synchronous rotation, it is necessary to effect accurate positional control. Such highly accurate synchronous rotation is obtained as follows: First, a positional output signal PG, produced by the pulse generator 16 in the feedforward control system, described above, is converted to master shaft speed data SM, and then a positional output signal PG2 produced by the pulse generator 33 in the semiclosed-loop control system is converted to slave shaft speed data Ss.
Then, the semiclosed-loop command signal Sf 2 is controlled by the semiclosed-loop processor 30 such that the product (SM x Rs) of the master shaft speed data SM and the resolution Rs of the pulse generator 33 will be of the same value as that of the product (Ss x RM x Z) of the slave shaft speed data Ss of the pulse generator 33, the resolution RM of the pulse generator 16, and the number Z of teeth of the workpiece 31. A positional error Ep is calculated according to an equation (6) below.If the product of the master shaft speed data SM and the slave shaft encoder resolution ratio Ro = Rs/RM is equal to the product of the slave shaft speed data Ss, the master shaft encoder resolution ratio R, = 1, and the number Z of workpiece teeth, then it is determined that the master shaft 14 and the workpiece shaft 56 are completely synchronized. If the above products are different from each other, then the value produced by multiplying the difference or positional error Ep by a positional loop gain Kp (not shown) is issued to the D/A converter 38 to rotate the servomotor 32 to compensate for the positional error Ep.
Ep = (master shaft speed data x slave shaft encoder resolution ratio) - (slave shaft speed data x master shaft encoder resolution ratio x number of workpiece teeth) = '(sM x RM/Rs) - (Ss x 1 x Z) = (900 x 4) - (60 x 1 x 60) = 0 (6) The slave shaft speed data Ss is given by the following equation (7): Ss = Ns x Rs x ts + Q 60 1200 x 240000 x 300 x 10-' + 24 60 = 60 (p/sample) (7) The result of the calculation according to the equation (6) indicates that the master shaft 14 and the slave shaft 42 are rotated in full synchronism with each other.
Now, a condition in which the master shaft 14 and the slave shaft 42 are rotated out of synchronism and correction is needed will be described below. It is assumed that an output signal PGI is applied to the semiclosed-loop control panel 28 such that the rotation of the slave shaft 42 is slightly delayed out of synchronism with the rotation of the master shaft 14 and the slave shaft speed data Ss is Ss = 59 (which represents the servomotor rotational speed Ns = 1180 (rpm)}. The positional error Ep then has a value of 60 as indicated by the following equation (8): Ep = (900 x 4) - (59 x 1 x 60) = 60 (p) - (8) The positional error Ep is multiplied by the positional loop gain Kp in the semiclosed-loop processor 30, and the product is applied to the D/A converter 38, so that the rotational speed of the servomotor 32 is increased to eliminate the delay. Conversely, if the slave shaft 42 becomes faster than the master shaft 14 and the positional error Ep goes negative (Ep < 0), the output signal from the D/A converter 38 also goes negative, thus delaying the servomotor 32 until it gains a normal rotational speed.The unit for the positional error Ep is Cpl = pulses3 because the master shaft speed data SM and the slave shaft speed data Ss may substantially be of values thereof which are integrated with respect to the sampling time ts.
For grinding the spur gear, as described above, it is possible to rotate the master shaft 14 and the slave shaft 42 accurately in synchronism with each other with the feedforward control system and the positional loop control system. If no sufficient synchronous rotation can be achieved only by the feed forward control system and the positional loop control system, then it is possible to add various PID (proportional, integral, derivative) control systems such as a speed loop control system for differentiating the positional error Ep to control the slave shaft 42 with a speed error Ev, an acceleration loop control system for differentiating the speed error Ev to control the slave shaft 42 with an acceleration error Ea, and a positional integral error control system for integrating the positional error Ep to control the slave shaft 42 with a positional integral error Ep1. The above description has been directed to the grinding of a spur gear in a first application.
A process of grinding a helical gear in a second application will be described below. In this grinding process, the distance by which the helical gear is moved in the traverse direction (i.e., in the axial direction of the gear) must be detected, and the synchronous rotation of the master and slave shafts 14, 42 must be differentially corrected. The differential correction is effected by detecting the distance of movement in the traverse direction with the pulse generator 84 connected to the traverse shaft 83 and producing a value including the helix angle ss of the gear through arithmetic operations.
The diameter d of the helical gear on its pitch circle is 165.5 mm according to the following equation (9): . Z-Mn 60 x 2.5 - 165.5 mm (9) cosp = 0.9063 (see Table 1 above for the definition of the symbols) An angle Y of displacement of the gear on its pitch circle across the gear width W = 20 mm then becomes about 6.4570 as indicated by the following equation (10):: y W.tanss X 360 = Wsin(3 x 360 TrZMn 20 x 0. 226 x 360 ~ 6.4570 (10) # x 60 x 2.5 Thus, when the helical gear is moved across its width W = 20 mm in the traverse direction, it is necessary to correct the synchronous rotation by 6.457 on the pitch circle of the gear. The corrective value is then converted to feedback pulses per revolution of the workpiece shaft 56.
Required feedback pulses Pd which correspond to the output signal PG, from the pulse generator 84 are 4305 as calculated by the equation (11) below. The same feedback pulses Pd can be calculated from the displacement angle Y on the pitch circle (see the equation (12) below): Pd = Rt x W x sin Mn x Rs (p) Rt #.Z.Mn 200000 x 0.4226 x 240000 # 4305(p) . . (1 10000 # x60x2.5 Pd = 360 x Rs 360 ~ 6.457 - 360 x 240000 = 4305 (p) .. (12) Therefore, when the helical gear traverses its width W = 20 mm, about 4305 feedback pulses Pd should be corrected.In reality, the above calculations are effected in each sampling time ts = 300 ps. Since the traversing speed is 1 mm/sec. in this embodiment, pulses to be generated per sampling cycle, i.e., the traverse shaft speed data St, is 3 (p/sample) as calculated from the following equation (13), and differential speed command data Sd is indicated by the equation (14): St = 1 x Rt x ts = 1 x 10000 x 300 x 10-' = 3 (p/sample) (13) Sd = 3 x 0.4226 x 24000 Sd = 10000 x Tr x 60 x 2.5 - 0.06457 (p) (14) Consequently, 0.06457 pulse is corrected per sampling time ts. Inasmuch as this value is only a decimal fraction, it does not allow integral operations by itself, and hence is normalized by being multiplied by a multiplier.
Stated otherwise, the differential speed command data Sd = 0.06457 is an irrational number and accumulates errors. It is confirmed that by selecting the multiplier a for normalization to be of a large value so that the differential speed command data Sd will be an integer, any grinding error within the gear width W of several tens mm is kept in a range which will not impose any practical problem. In this embodiment, the multiplier a may practically be about 100,000 or more. The foregoing description is directed to the second application in which the helical gear is ground.
The interrelationship between the feedforward control panel 18 and the semiclosed-loop control panel 28 in the synchronous operation control system shown in FIG. 1 will be described below with reference to the flowchart of FIGS. 3A, 3B, 4A, 4B, and 5. The alphabetical letters a, b following the reference letters "STP" in the flowchart represent steps of control operation effected by the feedforward control panel 18 and the semiclosed-loop control panel 28, respectively.
In steps la, lb, initial data, i.e., the data shown in Table 1, are applied to the feedforward processor 22 and the semiclosed-loop processor 30 and processed thereby (STPla, STPlb). In these steps, those data-items which are not required to be processed in the sampling time ts, e.g., the rotational speed per 1 V of the servomotor 32, the resolution ratios R1, R2, and the like are processed.
Then, the positional output signal PG1 from the pulse generator 16 coupled to the master shaft 14 is applied to the counter 20 in the feedforward control panel 18 and multiplied by 4 (STP2a, STP3a). Output data from the counter 20 is then differentiated with respect to time by the feedforward processor 22 to calculate master shaft speed data SM (see the equation (1)) corresponding to the rotational speed of the grinding wheel 12 (STP4a).
Based on the master shaft speed data SM, the feedforward processor 22 executes a synchronizing arithmetic operation to calculate slave shaft speed data Ss according to the equation (7) (STP5a).
The master shaft speed data SM produced in the step 4a is transferred as parallel data to the semiclosed-loop processor 30 (STP6a). Then, a synchronizing arithmetic operation is carried out according to the equation (9) to calculate workpiece shaft speed data Sw (STP7a).
Based on the slave shaft speed data Ss calculated in the step 5a, the feedforward processor 22 applies a feedforward command signal Sff, multiplied by a feedforward loop gain Kf, to the D/A converter 24 for obtaining a predetermined rotational speed Ns = 1200 rpm for the slave shaft 42 (STP8a, STP9a). The feedforward command signal Sff which is an output signal from the D/A converter 24 is then fed to the first input terminal of the adder 26 (STP20).
The semiclosed-loop control panel 28 receives a positional output signal PG2 from the pulse generator 33 coupled to the slave shaft 42, and multiplies the output signal PG2 by 4 in the counter 34 (STP2b, STP3b). The count from the counter 34 is differentiated into slave shaft speed data Ssl corresponding to the semiclosed-loop system, as according to the equation (7) (STP4b). The slave shaft speed data Ss, is then compared with the slave shaft speed data Ss which is. the result of the synchronizing arithmetic operation corresponding to the feedforward system based on the equation (7) (STP5b).
A traverse shaft positional output signal PG3 from the pulse generator 84 coupled to the traverse shaft 83 is multiplied by 4 by the counter 88, and the multiplied-by-4 output signal from the counter 88 is applied to and differentiated by the semiclosed-loop processor 30 to produce traverse shaft speed data St, corresponding to the semiclosed-loop system according to the equation (13) (STP6b, STP7b). Then, the differential arithmetic operation according to the equation (14) is effected (STP8b).
The master shaft speed data SM from the feedforward processor 22 is received by the semiclosed-loop processor 30 (STP9b). Then, a positional error Epl corresponding to the semiclosed-loop system is calculated (STPlOb, STPllb, STP12b). More specifically, an integrated value of the master shaft speed data SM in the step lOb and an integrated value of the traverse shaft speed data Stl in the step lib are added, and an integrated value of the slave shaft speed data Ss, is subtracted from the sum of the integrated values.
Then, the positional error Ep, is differentiated with respect to time to produce a speed error Ev1 (STP13b), and the positional error Ep, is integrated to produce a positional integral error EPI, (STP14b). The positional error Epl calculated in the steps lob through 12b is multiplied by a positional loop gain Kp, (STP15b), and the speed error Evl calculated in the step 13b is multiplied by a speed gain Kvl (STP16b). Thereafter, the positional integral error Rep11 calculated in the step 14b is multiplied by an integral gain Ki, (STP17b).The results produced in the steps 15b, 16b, 17b are added (STP18b), and an output signal indicative of the sum is applied as a semiclosed-loop command signal Sf 2 via the D/A converter 38 to the second terminal of the adder 26 (STP19b).
The adder 26 adds the feed forward command signal Sff and the semiclosed-loop command signal Sf 2 t and supplies the sum data through the servoamplifier 40 to the slave shaft servomotor 32 (STP20, STP21, STP22).
As described above, the feedforward control panel 18 and the semiclosed-loop control panel 28 are coupled to each other for effecting the synchronizing arithmetic operations.
With the above embodiment, angular positional information is detected by the rotary encoder coupled to the master shaft of a gear grinding machine, a hobbing machine, or the like, and is processed to control the slave shaft to rotate in synchronism with the master shaft. In such synchronous operation control system of the master/slave type, the synchronous rotational speed ratio and various parameter gains are entered all as numerical data. Therefore, various specifications of workpieces (e.g., the number of teeth, the module, the helix angle of thread, and the like if the workpiece is a gear) and various specifications of the machine (e.g., the number of threads of the tool, the gear train, the speed reduction ratio, and the like) can be switched instantaneously to make the machine tool flexible enough to manufacture many different product types each in a small quantity.
Optimum numerical values of the parameter gains (a speed error gain, a positional error gain, etc.) for varying mechanical constants (motor and load inertia, a viscous resistance, a spring constant, and the like) or varying rotational speeds may be stored so that gains matching a certain machining condition can instantaneously be selected.
Since multiplications are employed in the synchronizing arithmetic operations, the shafts can be synchronized theoretically no matter what values the encoder pulse ratio and the speed reduction ratio may have (if subtractions are employed, those values of these ratios which produce remainders cannot be used).
Synchronizing arithmetic operations can also be carried out when the traverse table supporting the workpiece is fed in the traverse direction. Accordingly, a helical gear or the like can be ground or otherwise machined highly accurately.
For calculating a positional error between the master shaft and the slave shaft, an output signal from an encoder coupled to one of the shafts and having a lower resolution is multiplied, and an output signal from an encoder coupled to the other shaft and having a higher resolution is also multiplied, and the multiplied signals are compared with each other. The workpiece can be ground or machined highly accurately without lowering the accuracy of the resolution of the encoders. The shafts can be synchronized theoretically no matter what values the encoder pulse ratio and the speed reduction ratio may have.
FIG. 6 shows a gear grinding apparatus incorporating a synchronous operation control system according to another embodiment of the present invention. Those parts shown in FIG. 6 which are identical to those of FIG. 1 are denoted by identical reference numerals, and will not be described in detail.
A pulse generator 60 serving as a fourth rotary encoder is coupled via a coupling 57 to the end of the workpiece shaft 56 remote from the workpiece 31. An output signal PG4 from the pulse generator 60 is applied to a fully-closed-loop processor 66 through a multiply-by-4 counter 64 in a fully-closed-loop control panel 62.
A multiplied-by-4 signal applied from the counter 64 to the fully-closed-loop processor 66 is then compared with the master shaft speed data 5M from the feedforward processor 22. An output signal indicative of the result of the comparison is applied through a D/A converter 79 as a fully-closed-loop command signal Sfl to a thid input terminal of the adder 26.
The output signal PG, from the pulse generator 84 is applied via the multiply-by-4 counter 88 to the semiclosed-loop processor 30 in the semiclosed-loop control panel 28, and also via a multiply-by-4 counter 86 in the fully-closed-loop control panel 62 to the fully-closed-loop processor 66. Therefore, the amount of movement of the workpiece in the traverse direction of the arrow A upon energization of the traverse motor 82 is subjected to differential arithmetic operations (described later on) by the fully-closed-loop processor 66 and the semiclosed-loop processor 30, and the results of the operations are added to the semiclosed-loop command signal Sf 2 and the fully-closedloop command signal Sf,. Then, signals representing the sums are applied via the D/A converters 38, 79 to the adder 26.
The fully-closed-loop control panel 62 has a clock input terminal CK which is supplied with the sampling clock signal Ts that is produced by frequency-dividing the output signal from the quartz oscillator (not shown). In the embodiment of FIG. 6, the sampling clock signal Ts also has a sampling time ts of 300 ps.
Each of the multiply-by-4 counters 64, 86 in the fully-closed-loop control panel 62 shown in FIG. 6 is iden tical in construction to the multiply-by-4 counters 20, 34, 88 shown in FIG. 2.
Operation and advantages of the gear grinding apparatus of FIG. 6 are as follows: various specifications of the workpiece 31 and various specifications such as resolutions of the pulse generators 16, 33, 60, 84 are given in Table 2 below. Table 2 differs from Table 1 in that a workpiece shaft encoder resolution Rw = 324000 p/r is added to Table 2.These specifications are entered into memories (not shown) in the feedforward processor 22, the fully-closed-loop processor 66, and the semiclosed-loop processor 30 through input means (not shown): Table 2
Specifications Number of workpiece teeth Work piece module tread Mn = 2.5 Helix angle of workpiece ss = LH25 workpiece width W = 20 mm Resolution of master shaft encoder RM = 60000 p/r Resolution of slave shaft encoder Rs = 240000 /r Resolution of workpiece shaft encoder Rw = 324000 ptr Number of encoder pulses produced each time traverse shaft moves 1 mm Rt = 10000 p/mm Speed reduction ratio for workpiece shaft Q = 24 Sampling time ts = 300 lis Operations in a feed forward system and a positioning loop, i.e., the fully-closed-loop control system and the semiclosed-loop control system, where the workpiece is a spur gear will first be described, and then operations in the respective control systems, taking into consideration the amount of movement in the traverse direction, where the workpiece is a helical gear will be described.
A process of grinding a spur gear will first be described below. When the grinding wheel 12 is rotated at the speed NM = 3000 rpm by the tool motor 10, the pulse generator 16 generates an output signal PG, composed of successive pulses. The output signal PG1 is applied via the counter 20 to the feedforward processor 22 in the feedforward control panel 18.Therefore, when the grinding wheel 12 as a tool is rotated at NM = 3000 rpm, pulses or master shaft speed data SM generated by the pulse generator 16 in each sampling time ts = 300 ps are 900 p/sample as indicated by the following equation (21): SM = (NM/60) x RM x ts (p/sample) = (3000/60) x 60000 x 300 x 10-' = 900 (p/sample) (21) The rotational speed NW of the workpiece if the number Z of teeth of the workpiece is Z = 60 when the rotational speed NM of the grinding wheel 12 is NM = 3000 rpm, is 50 rpm as given by the following equation (22):: NW = (P/Z) x NM (rpm) = (1/60) x 3000 = 50 (rpm) - (22) where P is the number of the threads of the tool which cor responds to the number of the threads of the grinding wheel 12, and is 1 as described above.
In view of the fact that the gear train 45 interposed as a rotation transmitting means between the servomotor 32 and the workpiece 31 has a speed reduction ratio Q of 24 : 1 (Q = 24), the servomotor 32 should be rotated at a speed of 1200 rpm as indicated by the following equation (23): Ns = NW x Q (rpm) = 50 x 24 = 1200 (rpm) (23) Assuming that a rated input voltage VR to be applied to the servomotor 32 when its rated rotational speed NSR is 3000 rpm is VR = 6 V based on rated values of the servomotor 32 and the servoamplifier 40, the rotational speed of the servomotor 32 per one volt is 500 rpm/V, and a voltage of 2.4 V should be applied to the servomotor 32 by the servoamplifier 40 in order to rotate the servomotor 32 at 1200 rpm. This relationship is expressed by the following equation (24): N /V = Rated rotational speed/Rated input voltage SR R = 3000/6 = 500 (rpmJV) (24) If the D/A converter 24 is of 12 bits, and in order to obtain a voltage of 2.4 V to rotate the servomotor 32 at Ns = 1200 rpm with an output voltage which corresponds to 12 bits being + 10 V, a value V(D/A24) = 2539 should be supplied to the D/A converter 24 as indicated by the equation (25): V(D/A24) = 212 20 2.4 + 211 = 2539 . (25) Therefore, the feedforward command signal Sff is given a value which is produced by converting the value v to an analog signal. In this embodiment, the servoamplifier 40 operates as a voltage follower.Insofar as the grinding wheel 12 is rotated at NM = 3000 rpm, the workpiece 31 is synchronously rotated at Nw = 50 rpm.
A positional loop control system is required since the D/A converter 24 or the servoamplifier 40 is subjected to an error such as an analog offset or drift. Such a positional loop control system will be described below.
The positional loop control system comprises the semiclosed-loop control system which is composed of the semiclosed-loop control panel 28 for producing a feedback output signal PG2 as converted to data of the workpiece shaft 56, from the slave shaft 42, and the fully-closed-loop control system which is composed of the fully-closed-loop control panel 62 for obtaining a feedback output signal PG4 directly from the workpiece shaft 56.
The semiclosed-loop control system which produces the feedback output signal PG2 directly from the servomotor 32 that is relatively stable without being affected by a backlash error caused by the gear train 45 is controlled with a high gain. In order to correct the error of the gear train 45, the fully-closed-loop control system is controlled with a low gain. Since the fully-closed-loop control system tends to become unstable due to the backlash of the gear train 45 or the rigidity of the gear train 45 itself, the fully-closed-loop control system is difficult to control with a high gain, and hence is handled as an auxiliary loop.
The main loop or the semiclosed-loop control system controlled with a high loop gain will be described below.
For achieving highly accurate synchronous rotation, it is necessary to effect accurate positional control. Such highly accurate synchronous rotation is obtained as follows: First, a positional output signal PG, produced by the pulse generator 16 in the feedforward control system, described above, is converted to master shaft speed data SM, and then a positional output signal PG2 produced by the pulse generator 33 in the semiclosed-loop control system is converted to slave shaft speed data Ss.Then, the semiclosed-loop command signal Sf 2 is controlled by the semiclosed-loop processor 30 such that the product (SM x Rs) of the master shaft speed data SM and the resolution Rs of the pulse generator 33 will be of the same value as that of the product (Ss x RM x Z) of the slave shaft speed data Ss of the pulse generator 33, the resolution RM of the pulse generator 16, and the number Z of teeth of the workpiece 31. A positional error Ep is calculated according to an equation (26) below.
If the product of the master shaft speed data SM and the slave shaft encoder resolution ratio Ro = Rs/RM is equal to the product of the slave shaft speed data Ss, the master shaft encoder resolution ratio R1 = 1, and the number z of workpiece teeth, then it is determined that the master shaft 14 and the workpiece shaft 56 are completely synchronized.
If the above products are different from each other, then the value produced by multiplying the difference or positional error Ep by a positional loop gain Kp (not shown) is issued to the D/A converter 38 to rotate the servomotor 32 to compensate for the positional error Ep.
Ep = (master shaft speed data x slave shaft encoder resolution ratio) - (slave shaft speed data x master shaft encoder resolution ratio x number of workpiece teeth) = (SM x RM/RS) - (Ss x 1 x Z) = (900 x 4) - (60 x 1 x 60) = 0 (26) The slave shaft speed data Ss is given by the following equation (27): Ss = Ns x Rs x ts + Q 60 = 1200 x 240000 x 300 x 10-' + 24 60 = 60 (p/sample) (27) The result of the calculation according to the equation (26) indicates that the master shaft 14 and the slave shaft 42 are rotated in full synchronism with each other.
Now, a condition in which the master shaft 14 and the slave shaft 42 are rotated out of synchronism and cor rection is needed will be described below. It is assumed that an output signal PG2 is applied to the semiclosed-loop control panel 28 such that the rotation of the slave shaft 42 is slightly delayed out of synchronism with the rotation of the master shaft 14 and the slave shaft speed data Ss is Ss = 59 (which represents the servomotor rotational speed Ns = 1180 (rpm)).The positional error Ep then has a value of 60 as indicated by the following equation (28): Ep = (900 x 4) - (59 x 1 x 60) = 60 (p) (28) The positional error Ep is multiplied by the positional loop gain Kp in the semiclosed-loop processor 30, and the product is applied to the D/A converter 38, so that the rotational speed of the servomotor 32 is increased to eliminate the delay. Conversely, if the slave shaft 42 becomes faster than the master shaft 14 and the positional error Ep goes negative (Ep < 0), the output signal from the D/A converter 38 also goes negative, thus delaying the servomotor 32 until it gains a normal rotational speed.The unit for the positional error Ep is Cpl = [pulses] because the master shaft speed data SM and the slave shaft speed data Ss may substantially be of values thereof which are integrated with respect to the sampling time ts.
Positional loop control of the fully-closed-loop control system having a low loop gain will be described below.
The master shaft speed data SM supplied to the fully-closed-loop control system is SM = 900 [p/sample], as described above. The workpiece shaft speed data Sw is given according to the following equation (29): Sw = NM/Z x Rw x ts 60 (p/sample) = 3000/50 x 324000 x 300 x 10' 60 = 97;;2 (p/sample) . (29) In the fully-closed-loop processor 66, the master shaft speed data SM and the workpiece shaft speed data Sw are compared, and the difference is integrated to produce a positional error Ep. After the positional error Epl has been multiplied by a positional loop gain Kp2, the product is supplied as a fully-closed-loop command signal Sf, via the D/A converter 79 to the adder 26 for effecting feedback control. More specifically, in order to compare the master shaft speed data SM and the workpiece shaft speed data Sw at the same level, normalizing operations are effected on these data to calculate normalized master shaft speed data SMs and normalized workpiece shaft speed data Sws according to the following equations (30) and (31):
= 900 x 324000 = 4860 (30) 60000 Sws = Ss x Ns Ns = 97.2 x 3000 = 4860 (31) 60 Therefore, a positional error Ep2 is given by the following equation (32): Ep, = /(Ss - Sws)d(sample) = 0 (32) That the value of the positional error Ep2 is zero means that the master shaft 14 and the workpiece shaft 56 are rotated in synchronism with each other.
As described above, for calculating the positional error Ep2 between the master shaft 14 and the slave shaft 42, the output signal PGI from the pulse generator 16 which is a master shaft encoder having a low encoder resolution is multiplied and then compared with the output signal PG, from the pulse generator 60 which is a workpiece shaft encoder having a high encoder resolution. Therefore, the arithmetic operations can be executed highly accurately without lowering the accuracy of the encoder resolutions. According to the present invention, this principle is applied also to the calculations of a positional error between other shafts.
For grinding the spur gear, as described above, it is possible to rotate the master shaft 14 and the slave shaft 42 accurately in synchronism with each other with the feed forward control system and the positional loop control system. If no sufficient synchronous rotation can be achieved only by the feed forward control system and the positional loop control system, then it is possible to add various PID (proportional, integral, derivative) control systems such as a speed loop control system for differentiating the positional error Ep to control the slave shaft 42 with a speed error Ev, an acceleration loop control system for differentiating the speed error Ev to control the slave shaft 42 with an acceleration error Ea, and a positional integral error control system for integrating the positional error Ep to control the slave shaft 42 with a positional integral error Ep1. The above description has been directed to the grinding of a spur gear in a first application.
A process of grinding a helical gear in a second application will be described below. In this grinding process, the distance by which the helical gear is moved in the traverse direction (i.e., in the axial direction of the gear) must be detected, and the synchronous rotation of the master and slave shafts 14, 42 must be differentially corrected. The differential correction is effected by detecting the distance of movement in the traverse direction with the pulse generator 84 connected to the traverse shaft 83 and producing a value including the helix angle ss of the gear through arithmetic operations.
The diameter d of the helical gear on its pitch circle is 165.5 mm according to the following equation (33): ZMn = 60 x 2.5 d = cosss - 0.9063 = 165.5 mm (331 (see Table 2 above for the definition of the symbols) An angle Y of displacement of the gear on its pitch circle across the gear width W = 20 mm then becomes about 6.457O as indicated by the following equation (34):: = W tanB x 360 = W szinMa x 360 Trd x 360 20 x 0.4226 x 360 ~ 6 457 (34) x x60 x 2.5 Thus, when the helical gear is moved across its width W = 20 mm in the traverse direction, it is necessary to correct the synchronous rotation by 6.457 on the pitch circle of the gear. The corrective value is then converted to feedback pulses per revolution of the workpiece shaft 56.
Required feedback pulses Pd which correspond to the output signal PG4 from the pulse generator 84 are 4305 as calculated by the equation (35) below. The same feedbac pulses Pd can be calculated from the displacement angle Y on the pitch circle (see the equation (36) below): Pd = Rt x W x sin ss x Rs (p) Rt iTZMfl ~ 200000 x TTX 042262.5 x 240000 10000 x w x 60 x 2.5 x 240000 2.5 - 4305 (p) (35) Pd = 360 x Rs 360 x Rs 6.457 x 240000 = 4305 (p) (36) Therefore, when the helical gear traverses its width W = 20 mm, about 4305 feedback pulses Pd should be corrected. In reality, the above calculations are effected in each sampling time ts = 300 s.Since the traversing speed is 1 mm/sec. in this embodiment, pulses to be generated per sampling cycle, i.e., the traverse shaft speed data St, is 3 (p/sample) as calculated from the following equation (37), and differential speedcommand data Sd is indicated by the equation (38): St = 1 x Rt x ts = 1 x 10000 x 300 x 10' = 3 (p/sample) (37) Sd - 3 x 0.4226 x 24000 10000 x n x 60 x 2.5 - 0.06457 (p) (38) Consequently, 0.06457 pulse is corrected per sampling time ts. Inasmuch as this value is only a decimal fraction, it does not allow integral operations by itself, and hence is normalized by being multiplied by a multiplier.
Stated otherwise, the differential speed command data Sd = 0.06457 is an irrational number and accumulates errors. It is confirmed that by selecting the multiplier a for normalization to be of a large value so that the differential speed command data Sd will be an integer, any grinding error within the gear width W of several tens mm is kept in a range which will not impose any practical problem. In this embodiment, the multiplier a may practically be about 100,000 or more. The foregoing description is directed to the second application in which the helical gear is ground.
The interrelationship between the feedforward control panel 18, the fully-closed-loop control panel 62, and the semiclosed-loop control panel 28 in the synchronous operation control system shown in FIG. 6 will be described below with reference to the flowchart of FIGS. 7A, 7B, 7C, 8A, 8B, 8C, and 9. The alphabetical letters a, b, c follow ing the reference letters STP in the flowchart represent steps of control operation effected by the feed forward control panel 18, the semiclosed-loop control panel 28, and the fully-closed-loop control system 62, respectively. Those processing steps which are identical to those shown in the flowchart of FIGS. 3A, 3B, 4A, 4B, and 5 in the first embodiment are denoted by identical reference numerals, and will only briefly be described.
In steps la, lb, lc, initial data, i.e., the data shown in Table 2, are applied to the feedforward processor 22, the semiclosed-loop processor 30, and the fully-closedloop processor 66, and processed thereby (STPla, STPlb, STPlc). In these steps, those data items which are not required to be processed in the sampling time ts, e.g., the rotational speed per 1 V of the servomotor 32, the resolution ratios R1, R, and the like are processed.
Then, the positional output signal PG, from the pulse generator 16 coupled to the master shaft 14 is applied to the counter 20 in the feedforward control panel 18 and multiplied by 4 (STP2a, STP3a). Output data from the counter 20 is then differentiated with respect to time by the feedforward processor 22 to calculate master shaft speed data SM (see the equation (21)) corresponding to the rotational speed of the grinding wheel 12 (STP4a).
Based on the master shaft speed data SM, the feedforward processor 22 executes a synchronizing arithmetic operation to calculate slave shaft speed data Ss according to the equation (27) (STP5a).
The master shaft speed data SM produced in the step 4a is transferred as parallel data to the semiclosed-loop processor 30 (STP6a). Then, a synchronizing arithmetic operation is carried out according to the equation (29) to calculate workpiece shaft speed data Sw (STP7a).
The master shaft speed data SM is transferred as parallel data to the fully-closed-loop processor 66 (STP7a'). Based on the slave shaft speed data Ss calculated in the step 5a, the feedforward processor 22 applies a feedforward command signal Sff, multiplied by a feed forward loop gain Kf, to the D/A converter 24 for obtaining a predetermined rotational speed Ns = 1200 rpm for the slave shaft 42 (STP8a, STP9a). The feedforward command signal Sff which is an output signal from the D/A converter 24 is then fed to the first input terminal of the adder 26 (STP20).
The semiclosed-loop control panel 28 receives a positional output signal PG2 from the pulse generator 33 coupled to the slave shaft 42, and multiplies the output signal PG2 by 4 in the counter 34 (STP2b, STP3b). The count from the counter 34 is differentiated into slave shaft speed data Ss, corresponding to the semiclosed-loop system, as according to the equation (27) (STP4b). The slave shaft speed data Ssl is then compared with the slave shaft speed data Ss which is the result of the synchronizing arithmetic operation corresponding to the feedforward system based on the equation (27) (STP5b).
A traverse shaft positional output signal PG, from the pulse generator 84 coupled to the traverse shaft 83 is multiplied by 4 by the counter 88, and the multiplied-by-4 output signal from the counter 88 is applied to and differentiated by the semiclosed-loop processor 30 to produce traverse shaft speed data Stl corresponding to the semiclosed-loop system according to the equation (37) (STP6b, STP7b). Then, the differential arithmetic operation according to the equation (38) is effected (STP8b).
The master shaft speed data SM from the feed forward processor 22 is received by the semiclosed-loop processor 30 (STP9b). Then, a positional error Ep, corresponding to the semiclosed-loop system is calculated (STPlOb, STPllb, STPl2b). More specifically, an integrated value of the master shaft speed data 5M in the step lob and an integrated value of the traverse shaft speed data St, in the step llb are added, and an integrated value of the slave shaft speed data Ss, is subtracted from the sum of the integrated values.
Then, the positional error Ep, is differentiated with respect to time to produce a speed error Ev, (STP13b), and the positional error Ep, is integrated to produce a positional integral error EPI, (STP14b). The positional error Ep, calculated in the steps lOb through 12b is multiplied by a positional loop gain Kpl (STP15b), and the speed error Ev, calculated in the step 13b is multiplied by a speed gain Kv, (STP16b). Thereafter, the positional integral error EpI, calculated in the step 14b is multiplied by an integral gain Ki, (STP17b).The results produced in the steps 15b, 16b, 17b are added (STP18b), and an output signal indicative of the sum is applied as a semiclosed-loop command signal Sf2 via the D/A converter 38 to the second terminal of the adder 26 (STP19b).
The fully-closed-loop control panel 62 receives a positional output signal PG4 from the pulse generator 60 coupled to the workpiece shaft 56 (STP2c), and multiplies the output signal PG4 by 4 in the counter 64 (STP3c), and the count from the counter 64 is differentiated with respect to time into workpiece shaft speed data Sw (STP4c). The workpiece shaft speed data Sw is then compared with the result of the synchronizing arithmetic operation based on the equation (29) (STP5c).The traverse shaft positional output signal PG, from the pulse generator 84 coupled to the traverse shaft 83 is multiplied by 4 by the counter 86 in the fully-closed-loop control panel 62, and the multiplied-by-4 output signal from the counter 88 is applied to and differentiated by the fully-closed-loop processor 66 to produce traverse shaft speed data St, corresponding to the fully-closed-loop system according to the equation (37) (STP6c, STP7c). Then, the differential arithmetic operation according to the equation (38) is effected (STP8c).
The master shaft speed data SM from the feedforward processor 22 is received by the fully-closed-loop processor 66 (STP9c). Then, a positional error Ep2 is calculated (STPlOc, STPllc, STPl2c). More specifically, an integrated value of the master shaft speed data SM in the step lOc and an integrated value of the traverse shaft speed data Sot 2 in the step lic are added, and an integrated value of the slave shaft speed data Ss, is subtracted from the sum of the integrated values.
Then, the positional error Ep2 is differentiated with respect to time to produce a speed error Ev, (STPl3c), and the positional error Ep2 is integrated to produce a positional integral error EPI, (STP14c). The positional error Ep, calculated in the steps lOc through 12c is multiplied by the positional loop gain Kp2 (STP15c), and the speed error Ev calculated in the step 13c is multiplied by a speed gain Kv (STP16c). Thereafter, the positional integral error EPI 2 calculated in the step 14c is multiplied by an integral gain Ki, (STP17c). The results produced in the steps 15c, 16c, 17c are added (STP18c), and an output signal indicative of the sum is applied as a fully-closed-loop command signal S;1 via the D/A converter 79 to the third terminal of the adder 26 (STP19c).
The adder 26 adds the feedforward command signal Sff, the semiclosed-loop command signal Sf , and the fullyclosed loop command signal Sf,, and supplies the sum data through the servoamplifier 40 to the slave shaft servomotor 32 (STP20, STP21, STP22).
As described above, the feedforward control panel 18, the fully-closed-loop control panel 62, and the semiclosed-loop control panel 28 are coupled to each other for effecting the synchronizing arithmetic operations.
With the above embodiment, angular positional information is detected by the rotary encoder coupled to the master shaft of a gear grinding machine, a hobbing machine, or the like, and is processed to control the slave shaft to rotate in synchronism with the master shaft. In such synchronous operation control system of the master/slave type, the synchronous rotational speed ratio and various parameter gains are entered all as numerical data. Therefore, various specifications of workpieces (e.g., the number of teeth, the module, the helix angle of thread, and the like if the workpiece is a gear) and various specifications of the machine (e.g., the number of threads of the tool, the gear train, the speed reduction ratio, and the like) can be switched instantaneously to make the machine tool flexible enough to manufacture many different product types each in a small quantity.
Optimum numerical values of the parameter gains (a speed error gain, a positional error gain, etc.) for varying mechanical constants (motor and load inertia, a viscous resistance, a spring constant, and the like) or varying rotational speeds may be stored so that gains matching a certain machining condition can instantaneously be selected.
Synchronizing arithmetic operations can also be carried out when the traverse table supporting the workpiece is fed in the traverse direction. Accordingly, a helical gear or the like can be ground or otherwise machined highly accurately.
For calculating a positional error between the master shaft and the workpiece shaft or between the master shaft and the slave shaft, an output signal from an encoder coupled to one of the shafts and having a lower resolution is multiplied, and an output signal from an encoder coupled to the other shaft and having a higher resolution is also multiplied, and the multiplied signals are compared with each other. The workpiece can be ground or machined highly accurately without lowering the accuracy of the resolution of the encoders.
FIGS. 10 and 11 show gear grinding apparatus combined with synchronous operation control systems according to other embodiments of the present invention. The gear grinding apparatus shown in FIGS. 10 and 11 differ from those of FIGS. 1 and 6, respectively, in that they additionally have a servo control system 200 for moving a feed table 223 in the directions of the arrow B along a feed shaft.
The gear grinding apparatus of FIGS. 10 and 11 are suitable for crowning a workpiece or gear 31.
Those components of the gear grinding apparatus shown in FIGS. 10 and 11 which are identical to those shown in FIGS. 1 and 6 are denoted by identical reference numerals, and will not be described in detail.
The servo control system 200 basically comprises a feed shaft control panel 202, a feed motor 204 comprising a servomotor, for example, and a pulse generator 206 coupled coaxially to the feed motor 204.
FIG. 12 illustrates the servo control system 200 in detail. The servo control system 200 includes a control unit 210 for issuing a rotation command signal So which represents rotational speed data AS for the feed motor 204 and moving distance data AR for a feed shaft 213 which comprises a ball screw that is coupled to the feed motor 204 and rotatable thereby. The moving distance data AR is multiplied by a first multiplier 215, as described later on, into moving distance data ARE which is applied to one input terminal of a first accumulator 214 and stored therein. The rotational speed data AS is applied to another input terminal of the first accumulator 214. The first accumulator 214 sends a rotational command signal Si to an additive input terminal of an error counter 216 each time a sampling clock signal Tc is applied to the first accumulator 214.
A digital error output signal Dd from the error counter 216 is applied to and converted by a D/A converter 218 into an analog error output signal Da that is applied to a servoamplifier 220. The servoamplifier 220 amplifies the applied analog error output signal Da to a voltage high enough to drive the feed motor 204, and applies the amplified signal to the feed motor 204. The feed shaft 213 coupled to the feed motor 204 is threaded through a nut 222 secured to a feed table 223 which extends perpendicularly to the traverse table 30. Therefore, by energizing the feed motor 204, the feed table 223 is moved in one direction or the other along the feed shaft 213 to allow the workpiece or gear 31 mounted on the traverse table 80 to be crowned or shaved by the grinding wheel 12.
When the feed motor 204 is energized, pulses are generated from the pulse generator 206 serving as a position detector coupled to the feed motor 204, at a resolution Rc [ pulses/revolution ] . The position detecting pulses Pp = Nc x Rc [ Nc indicates the rotational speed (rps) of the feed motor 204] thus produced are counted by a feedback counter 228. An output signal from the feedback counter 228 is multiplied by a second multiplier 230, the output signal of which is stored as feedback pulse data Fp in a second accumulator 232 for feeding back pulses. The feedback pulse data Fp stored in the second accumulator 232 is then applied to a subtractive input terminal of the error counter 216 each time a sampling clock signal Tc is applied to the second accumulator 232, for thereby effecting feedback control.
The servo control system 210 has a speed resolution Rv of 1 pps (pulses/sec.), and a positioning resolution Rp of 1 pm, i.e., a value produced by dividing the distance which the feed table 223 is moved per revolution of the feed shaft 213, by the resolution Rc of the pulse generator 206.
The sampling clock signal Tc has a sampling period of 1 ms.
The gear grinding apparatus incorporating the synchronous operation control system shown in FIGS. 10 and 12 will operate as follows: FIG. 13 is a flowchart of an operation sequence of the servo control system 200 shown in FIG. 12. Operation of the gear grinding apparatus will be described with reference to the flowchart of FIG. 13.
First, it is assumed that the rotational speed data AS is set to 5 pps and the moving distance data AR is set to 1 mm. In this case, the control unit 210 stores rotational speed data AS = 5 pps in the first accumulator 214, and, since the positioning resolution Rp is 1 pm, the moving distance data AR is multiplied by 1000 (1 mm = 1 pm x 1000) and the result is sent to the first multiplier 215. The magnification a of the first multiplier 215 is set to: a - I second - 15 - 1000 sampling time Ts = lms Therefore, the moving distance data ARE is converted to data corresponding to 1000000 pulses, and the converted data is stored in the first accumulator 214 (STPI).
Then, a step II determines whether the moving distance ARE stored in the first accumulator 214 is zero or not. Since the moving distance data ARE is not zero, i.e., all the moving distance data ARE = 1000000 pulses is stored in the first accumulator 214, control goes from the step II to a step III.
In the step III, when one sampling clock pulse Tc is applied to the first accumulator 214, the first accumulator 214 effects a predetermined arithmetic operation, i.e., the moving distance data ARE - the rotational speed data AS), to subtract 5 from the moving distance data ARE. Then, the rotational speed data AS = 5 is delivered as an additive value or a rotational command signal S, to the error counter 216 (STPIV).
Inasmuch as a feedback subtractive signal S: which is being applied from the second accumulator 232 to the subtractive input terminal of the error counter 216 is of a zero value, a digital error output signal Dd is of a value of 5 and converted by the D/A converter 218 to an analog error output signal Da which is applied to the servoamplifier 220. Since the gain of the servoamplifier 220 is adjusted to 1/1000 (1/a), the feed motor 204 starts rotating at a speed of 5/1000 (rps). At this time, the speed resolution of the pulse generator 206 is I pps.
Therefore, not a single position detecting pulse Pp is produced, and no signal is applied to the feedback counter 228, with its count being zero. .Because the data stored in the second accumulator 232 is zero, a value to be set in a step V is zero (STPV), and control goes to a step VI.
In the step VI, the feedback subtractive signal S 2 t which indicates zero data in this case, is applied from the second accumulator 232 to the subtractive input terminal of the error counter 216 which then subtracts the feedback subtractive signal S, from the rotational command signal S1.
As the feedback subtractive signal S2 is zero at this time, the value of the digital error output signal Dd from the error counter 216 remains unchanged (STPVII).
The value of the digital error output signal Dd from the error counter 216 is 5. The digital error output signal Dd is converted by the D/A converter 218 to the analog error output signal Da which is amplified by the servoamplifier 220 to energize the feed motor 204 (STPVIII).
The rotational command signal S, is fed to the additive input terminal of the error counter 216 each time a sampling clock pulse Tc is applied. When the value of the digital error output signal Dd from the error counter 216 becomes 5000 or more, the pulse generator 206 produces one position detecting pulse Pp which is then multiplied 1000 times by the second multiplier 230 with the same magnification a as that in the first multiplier 215. The multiplied data is stored as feedback pulse data Fp in the second accumulator 232 (STPV). When a next sampling clock pulse Tc is generated, the feedback subtractive signal S2 having a value of 5 is applied to the subtractive input terminal of the error counter 216 (STPVI).As a result, 5 is decremented from the digital error output signal Dd by the error counter 216 (STPVII), with the consequence that the value of the digital error output signal Dd becomes 5005 or 5000. Since the gain of the servoamplifier 220 is adjusted to 1/1000, the feed shaft 213 coupled to the feed motor 204 is rotated with its smoothness or positioning resolution increased to an apparent value which is 1000 times larger. Therefore, the workpiece such as a gear or the like which is moved by the nut 222 in the direction of the arrow B can smoothly be shaped or crowned. When the data stored in the first accumulator 214 is reduced to a value less than 5000, the value of the digital error output signal Dd from the error counter 216 is reduced by decrements of 5 from 5000, thus gradually decelerating the feed motor 204.After the value of the digital error output signal Dd from the error counter 216 becomes zero, i.e., after 1000 position detecting pulses Pp have been generated by the pulse generator 206, the feed motor 204 is de-energized, putting the positioning control process to an end.
With the above embodiments shown in FIGS. 10 through 13, the moving distance data is set to the reciprocal of the product of the speed resolution and the sampling time. Accordingly, the servo drive source such as a servomotor can smoothly be rotated without having to increasing the mechanical resolution of the position detector which is coupled to the servomotor. The control system can be employed in applications where no high positioning accuracy is required but smooth control is needed such as for crowning a gear or the like. The control system is reduced in cost since no highly accurate, high-resolution position detector is used.
The servomotor may be replaced with another servo drive source such as a servovalve or the like.
Although certain preferred embodiments have been shown and described, it should be understood that many changes and modifications may be made therein without departing from the scope of the appended claims.

Claims (4)

CLAIMS:
1. A synchronous operation control system for a numerically controlled machine, comprising: a servo drive source for moving a workpiece with respect to a tool; a first multiplier for multiplying data indicative of a moving distance to be traversed by said servo drive source; a first accumulator for temporarily storing an output signal from said first multiplier; a position detector coupled to said servo drive source; a counter for counting pulses from said position detector; a second multiplier for multiplying an output signal from said counter; a second accumulator for temporarily storing an output signal from said second multiplier; ; an error counter for calculating a difference between output signals which are applied from said first and second accumulators in synchronism with a sampling signal, and for applying an output signal to said servo drive source to move said workpiece smoothly.
2. A synchronous operation control system according to claim 1, wherein each of said first and second multipliers multiplies the output signal by a number which is equal to the number of sampling cycles per unit unit.
3. A synchronous operation control system according to any one of claims 7 through 9, wherein said servo drive source comprises a servomotor.
4. A synchronous operation control system according to any one of claims 1 through 10, wherein each of said encoders comprises a pulse generator.
GB9123701A 1988-02-22 1991-11-07 Synchronous operation control system for numerically controlled machine Expired - Fee Related GB2248947B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
GB9123701A GB2248947B (en) 1988-02-22 1991-11-07 Synchronous operation control system for numerically controlled machine

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP3916388A JP2585688B2 (en) 1988-02-22 1988-02-22 NC synchronous control system
JP63306511A JPH07107643B2 (en) 1988-02-22 1988-12-02 NC synchronous control system
GB8903801A GB2216294B (en) 1988-02-22 1989-02-20 Synchronous operation control system for numerically controlled machine
GB9123701A GB2248947B (en) 1988-02-22 1991-11-07 Synchronous operation control system for numerically controlled machine

Publications (3)

Publication Number Publication Date
GB9123701D0 GB9123701D0 (en) 1992-01-02
GB2248947A true GB2248947A (en) 1992-04-22
GB2248947B GB2248947B (en) 1992-08-05

Family

ID=27264333

Family Applications (1)

Application Number Title Priority Date Filing Date
GB9123701A Expired - Fee Related GB2248947B (en) 1988-02-22 1991-11-07 Synchronous operation control system for numerically controlled machine

Country Status (1)

Country Link
GB (1) GB2248947B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101844324A (en) * 2010-05-11 2010-09-29 常州工学院 Method for preventing surfaces of disc cams from generating gear marks

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1508552A (en) * 1975-04-28 1978-04-26 Burroughs Corp Transducer positioning system
GB2011651A (en) * 1977-11-22 1979-07-11 Victor Company Of Japan Random access system in a rotary recording medium reproducing apparatus
GB1551979A (en) * 1975-09-19 1979-09-05 Intergrated Ind Syst Apparatus for controlling the position of a roll in a rolling mill
GB2040504A (en) * 1979-01-02 1980-08-28 Polaroid Corp Autofocusing camera
GB2073114A (en) * 1980-04-01 1981-10-14 United Technologies Corp Multi-axis force stick, self- trimmed aircraft flight control system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1508552A (en) * 1975-04-28 1978-04-26 Burroughs Corp Transducer positioning system
GB1551979A (en) * 1975-09-19 1979-09-05 Intergrated Ind Syst Apparatus for controlling the position of a roll in a rolling mill
GB2011651A (en) * 1977-11-22 1979-07-11 Victor Company Of Japan Random access system in a rotary recording medium reproducing apparatus
GB2040504A (en) * 1979-01-02 1980-08-28 Polaroid Corp Autofocusing camera
GB2073114A (en) * 1980-04-01 1981-10-14 United Technologies Corp Multi-axis force stick, self- trimmed aircraft flight control system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101844324A (en) * 2010-05-11 2010-09-29 常州工学院 Method for preventing surfaces of disc cams from generating gear marks
CN101844324B (en) * 2010-05-11 2012-05-23 常州工学院 Method for preventing surfaces of disc cams from generating gear marks

Also Published As

Publication number Publication date
GB2248947B (en) 1992-08-05
GB9123701D0 (en) 1992-01-02

Similar Documents

Publication Publication Date Title
JP3129622B2 (en) Quadrant projection correction method in full closed loop system
US4384333A (en) Control system for crankshaft milling and grinding machines
US6823235B2 (en) Controller for machining gears
US4253050A (en) Method and apparatus for the synchronization of a gear machining apparatus
US5051913A (en) Synchronous operation control system for numerically controlled machine
EP0292574B1 (en) Numerical controller
WO1987000646A1 (en) Machine tool control systems
US4789943A (en) Thread cutting control method
US4178537A (en) System for the production of an additional rotational motion of a helically toothed gear workpiece in a positively controlled gear processing machine
US4555871A (en) Method and apparatus for eliminating undulation errors on gear-tooth flanks in production gear-fabricating machines
GB2248947A (en) Servo control system for numerically controlled machine
US4988937A (en) Synchronous control system and method therefor
US5022293A (en) Method and working machine for producing surfaces of non-circular but regular cross sections
JP2585688B2 (en) NC synchronous control system
KR920009888B1 (en) Method of controlling servo motor
JP2670871B2 (en) Flexible feedback method
WO1986000430A1 (en) Apparatus for detecting absolute position of servo control system
JP2912501B2 (en) Method and apparatus for correcting phase of gear grinding machine
JP2758564B2 (en) Frequency dividing device, gear grinding device and grinding wheel forming device
JPH01188913A (en) Servo control system
JPS6172312A (en) Positioning system
JPH05189019A (en) Numerical controller for machine tool
JPS6089201A (en) Numerical controller
JPH07112644B2 (en) Gear grinding machine
JPS5935729B2 (en) Hobbing machine control device

Legal Events

Date Code Title Description
PCNP Patent ceased through non-payment of renewal fee

Effective date: 20020220