METHOD OF RETURNING TO ORIGIN

Abstract: The device comprises a numerical control (NC) unit (21), a servo motor (23), a digital servo circuit (22), a rotary encoder (24) which outputs N pulses (Pf) and a one-turn signal (RTS) for every rotation, two carriers (25,27), a gate (26) and a deceleration limit switch (29). The NC unit (21) regards a position at which a one-turn signal is generated as zero, and monitors an instructed position (REFo) until a next one-turn signal is received. When a moving part approaches the origin and restores the deceleration limit switch (29), a distance (N-REFo) from the instructed position to a position at which a next one-turn signal is expected is sent as a final movement instruction (delta Rn) so that the moving part returns to the origin.

Description: This invention relates to a reference point return method and, more particularly, to a reference point return method well-suited for use in performing a reference point return operation in a numerically controlled machine tool employing a digital servo-circuit for digitally generating a velocity command to transport a movable element. In a numerically controlled machine tool, it is required that a movable element be returned to a predetermined reference point, thereby establishing coincidence between the machine position and a present position in a numerical controller before numerical control starts. Fig. 1 is a block diagram of a section for practicing a conventional reference point return method, and Fig. 2 is the associated timechart. If a move command is provided as NC data by an NC tape 10 when a reference point return command ZRN is "0" (i.e. when a reference point return mode is not in effect), a numerical controller 11 calculates, at every predetermined time, a minute traveling distance in the direction of each axis along which a movable element is to be transported in said time, and inputs the minute traveling distance to a pulse distributor for each axis at said every predetermined time until the destination is reached. On the basis of the minute traveling distance inputted thereto, the pulse distributor 12 performs a pulse distribution calculation to generate command pulses P c . An error counter 13 constituted by a reversible counter counts the command pulses P c . A DA converter, not shown, inputs a voltage proportional to the count to a velocity controller 14 as a velocity command, thereby rotating a servomotor 15 to transport a movable element such as a tool or table, not shown. A rotary encoder 16 is rotated by the rotation of the servomotor. The rotary encoder 16 is adapted to generate a single feedback pulse P F whenever it rotates by a predetermined amount and to generate a one-revolution signal RTS whenever it makes one full revolution. Accordingly, the amount of rotation of the servomotor 15 is detected by the rotary encoder 15 and is inputted to the error counter 13 as the feedback pulses P F , thereby diminishing the contents of the counter in the zero direction. When a steady state prevails, the data (error) in the error counter 13 becomes substantially constant and the servomotor 15 rotates at a substantially constant velocity. When the command pulses Pc stop arriving and the number of feedback pulses P F generated is equal to the number of command pulses, the data in the error counter 13 becomes zero and the servomotor 15 stops rotating. When the reference point return command ZRN is "1" (i.e. when the reference point return mode is in effect), on the other hand, the numerical controller 11 calculates a minute traveling distance every predetermined time along each axis for transporting the movable element at a rapid-traverse velocity, and inputs these traveling distances to the pulse distributor 12, whereby the movable element is transported just as described above. It should be noted that the actual velocity V a at this time gradually rises to the rapid-traverse velocity V R , as shown in Fig. 2. A gate 17 is open at the start of reference point return. Therefore, the command pulses P c and the feedback pulses P F are inputted to a reference counter 18, just as to the error counter 13. The reference counter 18 is constituted by a reversible counter and has a capacity N (equivalent to the number of feedback pulses P F generated during one revolution of the rotary encoder). The contents REF of the reference counter 18 agree with the contents (error) E of the error counter 13. When the actual velocity V a exceeds a predetermined first reference velocity VR, the controller 11 generates a control signal D01. After the control signal D01 is generated, a gate control circuit 19 closes the gate 17 in response to generation of the first one-revolution signal RTS. Thereafter, the reference counter 18 counts up only the command pulses P c , so that the content REF thereof varies as shown in Fig. 2. A servo delay (= E) at time T₀ is set in the reference counter 18, after which the command pulses P c are counted. Therefore, the content REF can be regarded as a commanded position reset whenever the capacity N is reached. The actual machine position is as indicated by the one-dot chain line in Fig. 2. When the movable element travels and depresses a deceleration limit switch provided in the vicinity of the reference point, a deceleration signal DEC assumes a low level (= "0"). As a result, the numerical controller 11 executes processing in such a manner that the traveling velocity of the movable element is slowed down to a second reference velocity VR2 (at time T₁), after which the movable element is moved at the velocity VR2. As the movable element travels further at the low velocity and the deceleration limit switch is restored (time T₂), the numerical controller 11 generates the gate signal D02. When a predetermined command pulse P c is subsequently generated, the movable element travels further and the counted value REF in the reference counter 18 becomes zero. As a result, the signal ZR becomes "1" (T₃), whereupon the gate 20 closes and the command pulses P c are no longer delivered. Thereafter, the count in error counter 13 gradually diminishes, as a result of which the rotational velocity of the servomotor 15 decreases. The count E in error counter 13 finally comes to rest at zero when the one-revolution signal RTS is generated. In accordance with this conventional reference point return method, the return to the reference point can be performed accurately independently of the amount of delay. In addition, if a one-revolution position is referred to as a grid point, the movable element can be reference point-returned to the first grid point after the deceleration limit switch is restored. Moreover, by presetting a numerical value M in the reference counter 18, a position displaced M pulses from the grid point position can be made the reference point-return position. Thus, the conventional method is a useful one. There has been a recent trend toward digital control of servomotors. With such a digital servo, a traveling distance Δ R n to be traveled along each axis every predetermined time Δ T (e.g. 2 msec) is calculated by a numerical controller, a value obtained by multiplying the traveling distance Δ R n by a predetermined gain is inputted to a digital servo-circuit every predetermined time Δ T, and the digital servo-circuit performs a calculation in accordance with the following equation every Δ T: E + Δ R n - Δ P n → E (where Δ P n is the actual traveling distance every Δ T and E a cumulative error whose initial value is zero) and executes pulse-width modulation in accordance with the size of the error E, thereby controlling the rotational velocity of the servomotor. In other words, in the case of a digital servo, the pulse distributor 12 which generates the serial pulses is not provided, and the error counter is substituted by a RAM in the numerical controller 11. A problem which results is that the conventional reference point return method cannot be applied to reference point return of a numerically controlled machine employing such a digital servo. Accordingly, an object of the present invention is to provide a reference point return method applicable to reference point return of a numerically controlled machine tool employing a digital servo. According to the present invention there is provided a reference point return method in a numerical control system having: a computerised numerical controller for generating a move command value Δ R n at regular intervals of time Δ T; a digital servo-circuit for digitally servo-controlling a servomotor on the basis of the move command value Δ R n to transport a movable element; pulse generating means for generating a pulse whenever the movable element travels a predetermined amount, as well as a one-revolution signal whenever a predetermined number N of pulses have been generated; first counting means for counting said pulses generated during said time interval Δ T, thereby monitoring an amount of travel Δ P n of the movable element during said time interval Δ T; second counting means for counting said pulses from generation of the one-revolution signal until the end of the current time interval Δ T, thereby monitoring an amount of travel B of the movable element during this time; and a deceleration limit switch; characterised in that the numerical controller returns the movable element to a reference point by: a first step of transporting the movable element by a reference point return command; a second step of obtaining a sum REF n of an error E n , which is the difference between a commanded position R n and a present movable element position P n at the end of the current time interval Δ T after generation of the one-revolution signal, and said amount of travel B, and adopting said sum REF n as a commanded position which prevails when the position at which the one-revolution signal is generated is zero; a third step of updating REF n at every one of said regular intervals of time Δ T in accordance with the formula REF n + Δ R n → REF n and a fourth step of outputting, as a final commanded amount of travel, Δ R n obtained in accordance with the formula (N-REF n ) → Δ R n using a commanded position REF n at the end of the current time interval Δ T after the deceleration limit switch is restored from the depressed state. In a preferred embodiment, a numerical controller transports a movable element by rapid-traverse in response to a reference point return command. As a result, a rotary encoder generates a single pulse whenever it rotates through a predetermined angle and a one-revolution signal whenever it makes one full revolution. It is assumed that the rotary encoder generates N-number of pulses during one revolution. A first counter counts the pulses generated by the rotary encoder during a predetermined time Δ T, thereby monitoring the amount of travel Δ P n of the movable element during this time. A second counter counts the number of pulses generated from generation of the one-revolution signal until an initial time every Δ T, thereby monitoring the amount of travel B of the movable element during this time. At the initial time every Δ T after generation of the one-revolution signal, a sum REF n is calculated, this being the sum of an error E n , which is the difference between a commanded position R n and the present machine position P n which actually prevails, and the amount of travel B obtained by the second counter. It should be noted that REF n is the commanded position when the position at which the one-revolution signal is generated is zero. Thereafter, REF n is updated every Δ T in accordance with the formula REF n + Δ R n → REF n until the next one-revolution signal is generated. The commanded position REF n at the initial time every Δ T after a deceleration limit switch is restored is obtained, (N-REF n ) is outputted to a digital servo-circuit as the final commanded amount of travel, and the movable element is restored to a reference position determined to fall on a prescribed grid point. Brief Description of the Drawings Fig. 1 is a block diagram of the conventional apparatus; Fig. 2 is a time chart for describing the operation of Fig. 1; Fig. 3 is a block diagram of an apparatus for practicing the present invention; Fig. 4 is a flowchart of processing according to the invention; and Fig. 5 is a time chart for describing the operation of Fig. 3. Fig. 3 is a block diagram of an apparatus for practicing the present invention. Numeral 21 denotes a computerized numerical controller for transporting a movable element such as a tool or table by generating a move command value Δ R n at every predetermined time. Numeral 21a denotes a processor, and 21b a RAM. Numeral 22 designates a digital servo-circuit, 23 a servomotor, and 24 a rotary encoder for generating a pulse P F whenever the movable element travels a predetermined distance as well as a one-revolution signal RTS every revolution, or in other words, whenever a predetermined amount (N) of the pulses P F are generated. Numeral 25 represents a first counter which counts the pulses P F in a predetermined time Δ T, thereby monitoring the amount of travel Δ P n of the movable element during this time. Numeral 26 denotes a gate, and 27 a second counter which counts the number of pulses P F produced from generation of the one-revolution signal RTS until an initial time every predetermined time, thereby monitoring the amount of travel B of the movable element during this time. Numeral 29 represents a deceleration limit switch provided in the vicinity of a reference point. Fig. 4 is a flowchart of processing in the reference point return method of the present invention, and Fig. 5 is a time chart. Reference point return processing according to the invention will now be described in accordance with Figs. 3 through 5. It is assumed that the processor performs predetermined processing every Δ T (e.g. 2 msec). Further, let a commanded position at each time T n (n = 1, 2, ...) be expressed by R n , the present machine position by P n , and an error by E n (= R n - P n ) . Also, let a commanded position when the position at which the one-revolution signal is generated be expressed by REF n . (a) When a reference point return operation is requested (ZRN = "1") from an operator's panel, not shown, the processor 21a of the numerical controller 21 calculates a minute traveling distance Δ R n every predetermined time Δ T (2 msec) along each axis for transporting the movable element at a rapid-traverse velocity, multiplies the traveling distance by a prescribed gain an inputs the result to the digital servo-circuit 22, whereby the servomotor 23 is rotated to transport the movable element. Until a step (d) described below is executed, the processor 21a of the numerical controller 11 executes the following calculations every Δ T (2 msec) in concurrence with the processing illustrated in the flowchart of Fig. 2: R n + Δ R n → R n (1) P n + Δ P n → P n (2) E n + Δ R n - Δ P n → E n (3) R n - P n → REF n (4) thereby obtaining the commanded position R n , the present machine position P n , the error E n (the initial value of which is zero), and REF n . These are stored in the RAM 11b. REF n corresponds to the count in reference counter 18 in the prior-art example of Fig. 4. Furthermore, Δ P n in the above equations is the actual traveling distance every Δ T. The feedback pulses P F are counted by the counter 25, and the processor 1a reads the count and resets the counter to zero every Δ T, after which the feedback pulses are again counted starting from zero, whereby Δ P n is obtained. (b) The actual velocity V a gradually increases due to the above-described control, and the processor 21a checks whether the actual velocity V a has exceeded a predetermined first reference velocity VR1. (c) If V a ≧ VR1 holds, then a velocity monitor, not shown, generates a high-level (= "1") velocity attainment signal VRG, as a result of which the processor 21a next checks whether the one-revolution signal RTS has been generated. (d) If the one-revolution signal RTS is generated, it is checked whether an initial time T n every Δ T has arrived. Note that if the one-revolution signal RTS is generated, the gate 26 opens until the initial time T n every Δ T, so that the feedback pulses P F generated by the rotary encoder 24 are applied to the counter 27 to be counted thereby. Thus, the amount of travel B (see Fig. 5) covered from generation of the one-revolution signal RTS until the initial time T n every Δ T is stored in the counter 27. (e) At time T n , the processor 21a generates a sampling pulse SP, reads the amount of travel B stored in counter 27 and, in similar fashion, reads the amount of travel Δ P n during the time Δ T stored in the counter 25. Thereafter, the processor executes the operations of Eqs. (1) through (3) to calculate the commanded position R n , present machine position P n and error E n , and calculates REF n in accordance with the formula R n - P n + B → REF n (5) Note that REF n is the commanded position at time T n when the position at which the one-revolution signal RTS is generated is zero (i.e. the commanded position every single revolution). The actual present machine position is delayed from REF n by (R n - P n + B). (f) Next, the processor 21a checks whether a deceleration signal DEC is "0", brought about by the movable element depressing the deceleration limit switch 29. Until a step (k) described below is executed, the processor 21a executes the calculations of Eqs. (1) through (3) every Δ T in concurrence with the processing illustrated in the flowchart of Fig. 4 to calculate the command position R n , present machine position P n and error E n , and updates the commanded position REF n every revolution in accordance with the equation REF n + Δ R n → REF n (6) or, if (REF n + Δ R n ) is greater than N, REF n + Δ R n - N → REF n (6)' That is, the commanded position REF n when the position at which the one-revolution signal is generated is zero varies as shown in Fig. 5 by having the commanded traveling distance Δ R n added thereto every Δ T. The present machine position is indicated by the one-dot chain line. (g) When the movable element travels in the direction of the reference point and the deceleration limit switch 29 provided in the vicinity of the reference point is depressed by the movable element, the deceleration signal DEC becomes "0". When this occurs, the processor 21a performs deceleration processing. That is, the processor successively decreases the commanded amount of movement Δ R n every Δ T. (h) The processor subsequently checks whether the actual velocity V a has attained a second reference velocity VR2. (i) If V a = VR2 holds, deceleration processing is halted. As a result, the movable element subsequently moves in the direction of the reference point at the abovementioned velocity. (j) The processor 21a then checks whether the deceleration signal DEC has attained the value "1". (k) When the movable element-travels further in the direction of the reference point, the deceleration limit switch 29 being depressed by the movable element is restored, so that the deceleration signal DEC changes from "0" to "1". When the condition DEC = "1" is attained, it is checked whether an initial time T k every Δ T has arrived. (1) If time T k has arrived, the processor executes Eqs. (1) through (3) and Eq. (6) or (6)' (the operation n → k is performed in each equation) to calculate a commanded position R k , a present machine position P k , an error E k and a commanded position REF k which prevails when the position at which the one-revolution signal is generated is zero. Further, the operation REF k → C (see Fig. 5) is performed. (m) Next, in accordance with the following equation, the processor 21a calculates an amount of travel Δ Rk+₁ necessary to make the commanded position the position at which the one-revolution signal is generated: N - C → Δ R k+1 (7) In other words, a commanded amount of travel Δ R k+1 needed to position the movable machine element at the position where the one-revolution signal is generated is calculated. The commanded position is updated in accordance with Eq. (1). (n) Thereafter, Δ R k+1 is outputted to the digital servo-circuit 22 as the final commanded amount of travel. As a result, the movable element is moved ( Δ R k+1 + E k ) from time T k and is stopped upon reaching the position at which the one-revolution signal is generated. The reference point return operation is then ended. Thus, a reference point return operation can be performed by software processing within a computerized numerical controller. Consequently, the invention is well-suited for application to reference point return in a numerically controlled machine tool employing a digital servo-circuit.

Claims: A reference point return method in a numerical control system having: a computerized numerical controller (21) for generating a move command value Δ R n at regular intervals of time Δ T; a digital servo-circuit (22) for digitally servo-controlling a servomotor (23) on the basis of the move command value Δ R n to transport a movable element; pulse generating means (24) for generating a pulse whenever the movable element travels a predetermined amount, as well as a one-revolution signal whenever a predetermined number N of pulses have been generated; first counting means (25) for counting said pulses generated during said time interval Δ T, thereby monitoring an amount of travel Δ P n of the movable element during said time interval Δ T; second counting means (27) for counting said pulses from generation of the one-revolution signal until the end of the current time interval Δ T, thereby monitoring an amount of travel B of the movable element during this time; and a deceleration limit switch (29); characterized in that the numerical controller (21) returns the movable element to a reference point by: a first step of transporting the movable element by a reference point return command; a second step of obtaining a sum REF n of an error E n , which is the difference between a commanded position R n and a present movable element position P n at the end of the current time interval Δ T after generation of the one-revolution signal, and said amount of travel B, and adopting said REF n as a commanded position which prevails when the position at which the one-revolution signal is generated is zero; a third step of updating REF n at every one of said regular intervals of time Δ T in accordance with the formula REF n + Δ R n → REF n and a fourth step of outputting, as a final commanded amount of travel, Δ R n obtained in accordance with the formula (N-REF n ) → Δ R n using a commanded position REF n at the end of the current time interval Δ T after the deceleration limit switch (29) is restored from the depressed state. A reference point return method according to claim 1, characterized in that, in said second step, a commanded position R n is updated in accordance with the formula R n + Δ R n → R n and a present movable element position Pn is update in accordance with the formula P n + Δ P n → P n A reference point return method according to claim 1, characterized in that, in said third step, REF n is updated in accordance with the following formula when REF n + Δ R n ≧ N holds: REF n + Δ R n - N → REF n A reference point return method according to claim 1, characterized in that processing from said second step onward is executed following generation of a one-revolution signal which occurs first after actual velocity exceeds a predetermined velocity.

Inventors: SAKAMOTO KEIJI, TOYOSAWA YUKIO, SAKAMOTO, KEIJI, TOYOSAWA, YUKIO
Applicants: FANUC LTD, FANUC LTD.
Application year: 1987
Main classification: G05B19
IPC codes: G05B19