METHOD FOR RETURNING TO ORIGIN

Abstract: When returning a movable part to the origin, a numeric control unit (21) reads an absolute position within one turn of a motor (23) from an absolute position detector (24), determines the distance from one pre-determined point of a motor (grid point) to the absolute position thus read and conducts initial setting of the distance B as a command position REFn from the grid point. Thereafter, the numeric control unit (21) outputs a movement command value DELTA Rn to a digital servo circuit (22) every predetermined time DELTA T, updates the command position REFn in accordance with the formula REFn + DELTA Rn -> REFn, determines REFn at the first point of time after restoration from step-in of a deceleration limit (25), outputs (N - REFn) as the last commanded movement quantity DELTA Rn to the digital servo circuit (22) to return a movable part to the position of the origin predetermined on the grid point.

Description: This invention relates to a reference-point return method and, more particularly, to a reference-point return method well suited for use in effecting return to a reference point in a numerically controlled machine tool employing a digital servo-circuit, which digitally generates a velocity command to move a movable element, and an absolute position detector. In a numerically controlled machine tool, it is necessary to return a movable element to a predetermined reference point before the start of numerical control, whereby coincidence can be achieved between machine position and the present position internally of a numerical control unit. Fig. 4 is a block diagram of part of an apparatus for practicing a reference-point return method according to the prior art, and Fig. 5 is the associated time chart. If a move command is given as NC data in a case where a reference-point return command ZRN is "0", a numerical control unit 11 computes a minute traveling distance, at a predetermined time interval, to be traversed along each axis during the time interval, and applies this minute traveling distance to a pulse distributor 12 for each axis at the abovementioned time interval until a destination is reached. Based on the minute traveling distance inputted thereto, the pulse distributor 12 performs a pulse distribution calculation to generate command pulses Pc. An error counter 13 constituted by a reversible counter counts the command pulses P C , and a DA converter (not shown) applies 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 whenever it makes one full revolution. Accordingly, the amount of rotation of the servomotor 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 stop arriving and the number of feedback pulses P F generated becomes 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", on the other hand, the numerical control unit 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 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. 5. 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 PF 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 numerical control unit 11 generates a control signal D0₁. After the control signal D0₁ 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 command pulses P C , so that the content REF thereof varies as shown in Fig. 5. A servo delay (= E) at time T0 is set in the reference counter 18, after which the command pulses PC are counted. Therefore, the content REF can be regarded as a command position reset whenever the capacity N is reached. The actual machine position is indicated by the one-dot chain line in Fig. 5. 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 control unit 11 executes processing in such a manner that the traveling velocity of the movable element is slowed down to a second reference velocity VR₂ (at time T1), 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 T2), the numerical control unit 11 generates a gate signal D0₂. 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" (T3), 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 displayed M pulses from the grid 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 control unit, 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 velocity 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 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 control unit 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, the applicant has proposed, as Japanese Patent Application No. 61-034880 (filed on February 19, 1987 and entitled "Reference-Point Return Method", corresponding to U.S.P. 4,782,275 and EP-A-2 58 447), a reference-point return method applicable to reference-point return in a machine tool employing a digital servo. In this proposed reference-point return method, an incremental pulse generated whenever a motor rotates through a predetermined angle and a one-revolution signal generated whenever the motor makes one revolution are essential requisites. Recently, machine tools have come to employ an absolute position detector composed of a pulse coder which outputs absolute position within one revolution of a motor whenever the motor rotates through a predetermined angle, and a counter for counting the number of revolutions of the motor in dependence upon the direction of rotation using the absolute position within one revolution generated by the pulse coder, and storing the absolute position of the machine based on the number of motor revolutions and the absolute position within one revolution. The counter continues storing the absolute position of the machine even when power is cut off. The capacity of the counter is a number of pulses N generated by the pulse coder per one revolution of the motor. Though such an absolute position detector outputs absolute position within one revolution of the motor, it is not adapted to produce the incremental pulses and the one-revolution signal. As a consequence, a problem which arises with the proposed reference-point return method is that it cannot be applied to reference-point return in a machine tool equipped with the absolute position detector. Accordingly, an object of the present invention is to provide a reference-point return method applicable to a numerically controlled machine tool which employs a digital servo-circuit and an absolute position detector. According to the present invention there is provided a reference-point return method in a numerical control system equipped with a computerised numerical control unit for generating a move command value ΔR n at every predetermined time ΔT to transport a movable element, a motor for driving the movable element, an absolute position detector which is capable of discriminating N absolute positions of the motor that occur within one revolution thereof, for outputting an absolute position P A at which the motor is presently situated within one revolution of the motor, and a deceleration limit switch provided in the vicinity of a reference point set at a predetermined grid point to which the numerical control unit returns the movable element, the method comprising: a first step of obtaining a distance B between an absolute position of the motor within one revolution thereof at a start of reference-point return and a grid point which is a particular one of the N absolute positions of the motor within said one revolution thereof; a second step of initially setting said distance B as a commanded position REF n from the last-mentioned grid point; a third step of subsequently updating said commanded position REF n every predetermined time ΔT in accordance with the following equation: REF n + ΔR n → REF n except that in a case where REF n + ΔR n ≧ N holds the equation: REF n + ΔR n - N → REF n is used; and a fourth step of obtaining the commanded position REF n from said predetermined grid point at an initial time Tk following recovery after depression of the deceleration limit switch, and outputting as a final move command value ΔR n . Thus when a return is made to a reference point, a processor in a numerical control unit reads absolute position of a motor within one revolution thereof from an absolute position detector at any point in time, obtains a distance B from a predetermined motor point (a grid point) to the absolute position that has been read, and initially sets the distance B as a command position REF n from the grid point. There are N absolute positions of the motor within one revolution thereof. Thereafter, the processor outputs a move command value ΔR n to a digital servo-circuit every predetermined time ΔT, updates a commanded position REF n in accordance with the equation REF n + ΔR n → REF n where REF n + ΔR n - N → REF n holds in case of (REF n + ΔR n ) ≧ N , obtains REF n at an initial time following restoration after a deceleration limit switch is depressed, and outputs (N - REF n ) to the digital servo-circuit as a final commanded traveling distance ΔR n to return the movable element to a reference-point position set at a predetermined grid point. Brief Description of the Drawings Fig. 1 is a block diagram showing the principal portions of a numerical control system for describing the reference-point return method of the present invention; Fig. 2 is a flowchart of processing according to the present invention; Fig. 3 is a time chart according to the invention; Fig. 4 is a block diagram of a conventional apparatus; and Fig. 5 is a time chart associated with the apparatus of Fig. 4. Fig. 1 is a block diagram showing the principal portions of a numerical control system for describing the reference-point return method of the present invention. Numeral 21 denotes a computerized numerical control unit for transporting a movable element such as a tool or table by generating a move command value ΔR n at every predetermined time ΔT. Numeral 21a denotes a processor, and 21b a RAM. Numeral 22 designates a digital servo-circuit and 23 a servomotor. Shown at numeral 24 is an absolute position detector composed of a pulse coder which outputs absolute position within one revolution of the servomotor 23 whenever the motor rotates through a predetermined angle, and a counter 24b for counting the number of revolutions of the motor in dependence upon the direction of rotation using the absolute position within one revolution generated by the pulse coder, and storing and outputting the absolute position of the machine based on the number of motor revolutions and the absolute position within one revolution. The counter 24b continues storing the absolute position of the machine even when power is cut off. By way of example, it will be assumed that there exist a total of N absolute positions, from OOOO H (H indicates a hexadecimal number) to FFFF H , within one revolution of the motor, and that a point indicated by OOOO H is a grid point. Numeral 25 denotes a deceleration limit switch provided in the vicinity of a reference point, and numeral 26 designates the movable element of a machine tool. Fig. 2 is a flowchart of processing for the reference-point return method according to the present invention, and Fig. 3 is a time chart. Reference-point return processing according to the invention will now be described with reference to Figs. 1 through 3. It is assumed that a sampling pulse SP is generated and 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 Pn, and an error by E n . Also, let a commanded position from a grid point every revolution be expressed by REF n . (a) When the power supply of the numerical control system is turned on and the reference-point return mode is established, the processor 21a goes to the absolute position detector 24 to read, at a predetermined time every ΔT, the absolute position P A (P A is a hexadecimal value) at which the motor is presently situated. (b) Next, the processor 21a computes the distance B from the grid point to the absolute position at which the motor is situated. If the grid point is OOOO H , for example, then distance B = P A . If PA = 1FFF H holds, then the distance B will be 1FFF H . (c) When the distance B has been obtained, the processor 21a initially sets B as a commanded position REF n-1 from the grid point. (d) Thereafter, the processor 21a computes a minute traveling distance ΔR n every predetermined time ΔT (2 msec) along each axis in transport the movable element 26 at the rapid-traverse velocity, multiplies the traveling distance by a predetermined gain and applies the result to the digital servo-circuit 22 to rotate the servomotor 23, thereby transporting the movable element 26. (e) In parallel with the rapid-traverse processing of step (d), the processor 21a performs the following arithmetic operations every ΔT (2 msec): R n-1 + ΔR n → R n (1) R n - P n → E n (2) REF n-1 + ΔR n → REF n (3) to obtain the commanded position R n , error E n and REF n and store these in the RAM 21b. It should be noted that REFn is the commanded position (the commanded position per revolution) of the motor from the grid point. In a case where (REF n + ΔR n ) is greater than N, the command position REF n per revolution is obtained in accordance with the equation REF n + ΔR n - N → REF n (3)' instead of using Eq. (3). As a result, the commanded position REF n every revolution has the commanded traveling distance ΔR n added to it every ΔT and changes as shown in Fig. 3. The absolute position A n read from the absolute position detector 24, namely the present machine position from the grid point, is indicated by the one-dot chain line, and the difference between REF n and An corresponds to a delay E n . In Eq. (2), P n represents the present machine position. If P n-1 represents the position at a time ΔT earlier and A n-1 , An represent the absolute positions at the time ΔT earlier and at the present time, respectively, then P n is computed as follows: P n-1 + (A n - A n-1 ) → P n (4) (f) By virtue of the foregoing control, the actual velocity Va gradually rises and attains a fixed rapid-traverse velocity, so that the movable element 26 is transported in the direction of the reference point at the rapid-traverse velocity. Thereafter, in parallel with the rapid-traverse control of steps (d) and (e), processor 21a checks to see whether the deceleration signal DEC has become "0" as a result of the deceleration limit switch 25 being depressed by the movable element 26. (g) When the movable element 26 travels in the direction of the reference point and the deceleration limit switch 25 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 command amount of movement ΔR n every ΔT and executes the processing of step (e). (h) The processor 21a subsequently checks whether the actual velocity V a has attained a second reference velocity VR₂. (i) If V a = VR₂ holds, signal VRG will become "1" and, hence, deceleration processing is terminated. As a result, the movable element 26 is subsequently moved 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 26 travels further in the direction of the reference point, the deceleration limit switch 25 being depressed by the movable element 26 is restored, so that the deceleration signal DEC changes from "0" to "1". When the condition DEC = "1" is attained, it is determined whether an initial time Tk every ΔT has arrived. (l) If time Tk has arrived, the processor 21a executes Eqs. (1) ∼ (2) and Eq. (3) or (3)' (the operation n → k is performed in each equation) to calculate a command position R k , error E k and commanded position REF k every revolution. Further, the operation REF k → C (see Fig. 3). (m) Next, in accordance with the following equation, the processor 21a calculates an amount of travel ΔR k+1 necessary to make the commanded position a grid position of the motor, and updates the commanded position in accordance with Eq. (1): N - C → ▵R k+1 (7) (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 26 is moved by the amount of delay ΔR k+1 from time Tk and is stopped upon arriving at the one-revolution position. The reference-point return operation is then ended. Thus, a reference-point return operation can be performed by software processing within a computerized numerical control unit. 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 equipped with a computerised numerical control unit (21) for generating a move command value ΔR n (n=1,2...) at every predetermined time ΔT to transport a movable element (26), a motor (23) for driving the movable element (26), an absolute position detector (24) which is capable of discriminating N absolute positions of the motor (23) that occur within one revolution thereof, for outputting an absolute position P A at which the motor (23) is presently situated within one revolution of the motor (23), and a deceleration limit switch (25) provided in the vicinity of a reference point set at a predetermined grid point to which the numerical control unit (21) returns the movable element (26), the method comprising: a first step of obtaining a distance B between an absolute position of the motor (23) within one revolution thereof at a start of reference-point return and a grid point which is a particular one of the N absolute positions of the motor (23) within said one revolution thereof; a second step of initially setting said distance B as a commanded position REF n from the last-mentioned grid point; a third step of subsequently updating said commanded position REF n every predetermined time ΔT in accordance with the following equation: REF n + ΔR n → REF n except that in a case where REF n + ΔR n ≧ N holds the equation: REF n + ΔR n - N → REF n is used; and a fourth step of obtaining the commanded position REF n from said predetermined grid point at an initial time Tk following recovery after depression of the deceleration limit switch (25), and outputting (N-REF n ) as a final move command value ΔR n .

Inventors: MATSUBARA SHUNSUKE F MANSHON H, MATSUMOTO KANAME FANUC DAI- VI, SAKAMOTO KEIJI, MATSUBARA, SHUNSUKE F. MANSHON HARIMOMI 8-203, MATSUMOTO, KANAME FANUC DAI-3 VIRAKARAMATSU, SAKAMOTO, KEIJI
Applicants: FANUC LTD, FANUC LTD.
Application year: 1989
Main classification: G05B19
IPC codes: G05B19, G05D3