SPEED CONTROLLER IN A SERVO SYSTEM

Abstract: The servo system controls speed according to instructions given for each block of position. A number blocks of instructions are read in advance and the deceleration is started earlier so that the speed has already reached a sufficiently low level when it is required. The deceleration start position is calculated based on the instruction speed and the deceleration rate.

Description: Servo System Speed Control Apparatus TECHNICAL FIELD The present invention relates to a servo system speed control apparatus, more particularly, to an apparatus for controlling a speed of a servo system by using a computer. BACKGROUND ART Conventionally, a servo system speed control apparatus using a computer is used, for example, with a computerized numerical control apparatus (CNC apparatus), an industrial robot, and the like. For example, when a workpiece is processed by a CNC apparatus, a suitable speed for processing the workpiece is designated to each block at which a specific process is to be carried out on the workpiece. For example, when an inner portion of the workpiece is to be cut at a right angle, a feed speed for cutting a corner portion of the workpiece is reduced in relation to a feed speed for a straight portion of the workpiece, so that an overload of the cutting tools is avoided and a cut surface of the workpiece is improved, and further, the corner portion of the workpiece is cut with a greater accuracy. Note, in a conventional servo system speed control apparatus, first a speed designated to a block is read and then a speed of the servo system is changed to the designated speed. Therefore, in the conventional servo system speed control apparatus, a problem arises in that, if a block length for decelerating the speed is insufficient, the servo system speed cannot be lowered to the designated speed of the next block. FR-A-231 5116 describes a digital control system which controls a predetermined sequence of operations on a machine tool. The digital control system of FR-A-231 5116 designates the movement input signals for each operation in the form of blocks, which are processed using a shift register. Three movement controllers control movement in their respective mutually perpendicular axes. These controllers are associated with sub-monitor units which have inputs which are fed from the shift register. Successive blocks of movement input signals are applied to the sub-monitor units as the shift register is stepped by a common clock pulse generator to maintain synchronism for the three controllers. This is effected in response to a programmed sequence of events. DISCLOSURE OF THE INVENTION The object of the present invention is to perform a speed control of the servo system, more particularly, to suitably control a deceleration of the servo system. According to the present invention there is provided speed control apparatus for controlling the speed of a servo system by using a computer, characterised in that the apparatus comprises: a memory for storing designated speeds of a plurality of control blocks; means for reading the designated speeds of a plurality of blocks; a servo system deceleration means which is selectively operable to lower the speed of the servo system; and means for controlling the deceleration means such that the servo speed at the start of any block is not greater than the designated speed for that block, wherein the controlling means comprises means for calculating in respect of any one block a deceleration start position which is in advance of the start of the said one block by the distance required for the servo system to be slowed down by the deceleration means from the speed designated for the preceding block to the speed designated for the said one block, and means for initiating operation of the deceleration means at the calculated deceleration start position. According to the servo system speed control apparatus having the above described configuration of the present invention, first a speed value designated for a plurality of blocks is previously read from memory, and then the speed of the servo system is maintained at a speed lower than designated speeds of the blocks at the start position of the previously read blocks by the means for calculating a start position for deceleration. Furthermore, the speed of the servo system is lowered from the calculated deceleration start position by the servo system deceleration means. Consequently, the servo system speed control apparatus can maintain a servo system speed that is lower than the designated speeds of all blocks, and control a deceleration of the servo system with a high degree of accuracy. BRIEF DESCRIPTION OF THE DRAWINGS Fig. 1 is a diagram showing an example of the control command of the CNC apparatus; Fig 2. is a diagram showing an example of a speed change of a servo system controlled by a conventional speed control apparatus of a servo system; Fig. 3 is a schematic block diagram showing a CNC apparatus using a servo system speed control apparatus of the present invention; Fig. 4 is a diagram showing one example of a speed change of a servo system controlled by a servo system speed control apparatus of the present invention; Fig. 5 is a diagram showing a comparison of a speed change of a servo system controlled by the servo system speed control apparatuses of the present invention and of a conventional type; and, Fig. 6 is a flow chart showing an example of a control operation based on the present invention. BEST MODE FOR CARRYING OUT THE INVENTION First, the problems of a conventional servo system speed control apparatus will be explained with reference to Figs. 1 and 2, and then an embodiment of a servo system speed control apparatus according to the present invention will be explained. Figure 1 is a diagram showing an example of the control command of the CNC apparatus, and Fig. 2 is a diagram showing an example of a speed change of a servo system controlled by a conventional servo system speed control apparatus. As shown in Figs. 1 and 2, when a speed of F 1000 between blocks N 120 and N 160 is changed to a speed of F 100 at a block N 170, in a conventional servo system speed control apparatus, a designated speed of the block can be recognized only after reading the contents of the block. Therefore, in the conventional servo system speed control apparatus, a servo system speed cannot be sufficiently decelerated to a speed of F 100 at a start position of the block N 170. Namely, the designated speed of the block N 170 is first recognized at the start position of the block N 170, and then the deceleration of the servo system begins from the start position of the block N 170. Similarly, when a speed of F 500 in block N 180 is changed to a speed of F 100 at a block N 190, and further changed to a speed of F 500 at a block N 200, in the conventional servo system speed control apparatus, the servo system speed cannot be sufficiently decelerated at the start position of the block N 200, since the deceleration of the servo system starts from the start position of the block N 190, and the workpiece is reached before the servo system speed is decelerated to the designated speed of F 100 in the block N 190, so that a speed of the start position of the block N 200 is accelerated to the speed of F 500, which is the designated speed of block N 200. As mentioned above, in the conventional servo system speed control apparatus, first a designated speed of a block is read and then a servo system speed is controlled to the designated speed. Therefore, in the conventional speed control apparatus of the servo system, a problem arises in that, if a block length for deceleration is not sufficient, the servo system speed cannot be decelerated to the designated speed of the next block. For example, when an inner portion of a workpiece is to be cut as a right angle, the feed speed designated for a corner portion cutting block (for example, a speed of F 100) is set to a speed slower than the feed speed designated for a straight portion cutting block (for example, a speed of F 1000). But, when a block length for cutting a corner portion is not sufficient, it is difficult to decelerate the servo system speed of F 1000 to the speed of F 100, which is a suitable speed for cutting the corner portion. Consequently, a CNC apparatus using the conventional servo system speed control apparatus (for example, a lathe), cannot decelerate the servo system to a suitable speed for cutting a corner portion, so that an overload is applied to a cutting tool and a life of the cutting tool is shortened. Below an example of a servo system speed control apparatus according to the present invention will be explained with reference to the accompanying drawings. Figure 3 is a schematic block diagram showing a CNC apparatus using a speed control apparatus of a servo system of the present invention. As shown in Fig. 3, the CNC apparatus comprises a microprocessor 4, a RAM 5 connected to the microprocessor 4 through a bus, a ROM 6, a bubble memory 7, a CRT 8, a keyboard 9, and an axis control unit 10. A command from the axis control unit 10 is supplied to a servo amplifier 11, and a servo motor 12 is controlled in accordance with an output signal of the servo amplifier 11. A position transducer 13, for example, a pulse encoder and the like, is provided at the servo motor 12, and an output signal of the position transducer 13 is fed back to the axis control unit 10. Figure 1 is a diagram showing an example of the control command of the CNC apparatus, and Fig. 4 is a diagram showing one example of a speed change of a servo system controlled by a servo system speed control apparatus of the present invention. As shown in Figs. 1 and 4, when a speed of F 1000 between blocks N 120 and N 160 is changed to a speed of F 100 at a block N 170, in the present embodiment, the designated speeds of a plurality of blocks are previously read, and decelerating start positions are calculated to maintain a servo system speed that is lower than the designated speeds of the blocks at the starting positions of the previously read blocks. Therefore, deceleration begins from a position before the block N 170, and the servo system speed is decelerated to a speed of F 100, which is a designated speed of the block N 170, at the start position of block N 170. Similarly, when a speed of F 500 in a block N 180 is changed to a speed of F 100 at a block N 190, the deceleration is begun from a previous position of block N 190, and the servo system speed is decelerated to a speed of F 100, which is a designated speed of the block N 190, at the start position of the block N 190. Note, when an acceleration is performed, for example, when a speed of F 100 in the block N 170 is changed to a speed of F 500 at the block N 180, the acceleration of the servo system is performed from a start position of block N 180. Namely, for an acceleration, the servo system speed can be accelerated to the designated speed of each block from the start position of each block. In this case, although the actual speed of the servo system is slower than the designated speed of the block, and thus the operation time is longer, there is absolutely no negative influence on the processing accuracy. Similarly, when a speed of F 100 in a block N 190 is changed to a speed of F 500 at a block N 200, acceleration of the servo system is begun from the start position of the block N 200. Figure 5 shows the designated speeds from a block N 1 to block N 15, and speeds of the servo system controlled by both a conventional and the present servo system speed control apparatuses. Curve a denotes a servo system speed controlled by the present servo system speed control apparatus and Curve b denotes the servo system speed controlled by a conventional servo system speed control apparatus. As shown in Fig. 5, from block N 1 to block N 4, where designated speeds are gradually increased, the Curve a and the Curve b indicate that acceleration of the servo system speed is the same as the designated speeds of the blocks. At the start position of a block N 5, Curve a, indicating the speed of the servo system using the servo system speed control apparatus of the present invention, shows a decrease in the servo system speed to the designated speed of a block N 6 at the start position of the block N 6, and Curve b, indicating the speed of the servo system using a conventional servo system speed control apparatus, shows that the servo system speed continues to accelerate until the servo system speed reaches the designated speed of block N 5, and that the deceleration of the servo system speed is begun from the start position of block N 6, where the designated speed of block 6 is first recognized. The servo system speed controlled by the conventional servo system speed control apparatus is decelerated to the designated speed of the block N 6 (designated speed of the block N 7) over the latter half of block N 7. Note, the rising angle of the acceleration curve and the falling angle of the deceleration curve are determined by the characteristics of each servo system. In block N 8 and block N 9, at which the designated speeds thereof are gradually increased, Curve a and the Curve b indicate that the servo system speeds are accelerated, Curve a shows that the deceleration begins just before the end position of block N 9, and that the servo system speed equals the designated speed of block N 12 at the start position of block N 12. Note, as shown in Curve a′, if deceleration is begun from the start position of block N 10 (which is the end position of block N 9) by considering only the designated speed of block N 11, the servo system speed will be equal to the designated speed of the block N 11 at the start position of block N 11, but the servo system speed cannot be lowered to the designated speed of the next block N 12 at the start position of block N 12. In this case, the servo system speed must be kept lower than the designated speeds of all previously read blocks at start positions of all of the blocks. Note, the number of previously read blocks, for example, 40 blocks or 60 blocks, is determined by the servo system using the adjustable speed control apparatus. As described above, in a servo system using the present speed servo system speed control apparatus, the servo system speed is kept lower than the designated speed of all of the blocks. Figure 6 is a flow chart showing an example of a control operation based on the present invention. When the deceleration process is started, first, in step 21, several blocks are pre-read. The number of previously read blocks, for example, 40 blocks or 60 blocks, is determined by the servo system by using the servo system speed control apparatus. Next, at step 22, the deceleration positions of the previously read blocks are confirmed, and the process then moves to step 23. At step 23, a deceleration start position is calculated. In this calculation of the deceleration start position, the servo system speed is kept lower than the designated speed of the blocks at the start position thereof. As described above, referring to Fig. 5, the deceleration start position is calculated from a cross point between a deceleration curve of the servo system through the start positions of each block and the designated speeds of the blocks, or an acceleration curve of the servo system. Next, at step 24, the deceleration is started from the calculated deceleration start position. Consequently, the servo system speed control apparatus can maintain a servo system speed that is lower than the designated speeds of all of the blocks, and thus control the deceleration of the servo system with a high degree of accuracy. In the above explanation, the servo system speed control apparatus of the present invention is not limited to use only for a CNC apparatus such as a lathe, but also can be used for the servo systems of industrial robots and the like.

Claims: Speed control apparatus for controlling the speed of a servo system by using a computer, characterised in that the apparatus comprises: a memory (5, 6) for storing designated speeds of a plurality of control blocks; means for reading the designated speeds of a plurality of blocks; a servo system deceleration means which is selectively operable to lower the speed of the servo system; and means for controlling the deceleration means such that the servo speed at the start of any block is not greater than the designated speed for that block, wherein the controlling means comprises means for calculating in respect of any one block a deceleration start position which is in advance of the start of the said one block by the distance required for the servo system to be slowed down by the deceleration means from the speed designated for the preceding block to the speed designated for the said one block, and means for initiating operation of the deceleration means at the calculated deceleration start position. Speed control apparatus according to claim 1, characterised in that said means for calculating a deceleration start position calculates the start position from a cross point, said cross point being between: a deceleration curve of the servo system which is positioned such that it passes through the desired starting position of a particular block, and either: an acceleration curve of the servo system, where said acceleration curve is followed in accelerating the servo system up to a designated speed of a block which is due to be executed before said particular block; or a curve representing the designated speed of one of the blocks of the plurality of blocks due to be executed before said particular block, whereby the cross point is determined for each of the blocks in the plurality of blocks read from the memory.

Inventors: ARIMOTO NOZOMU, FUJIBAYASHI KENTARO, KAWAMURA HIDEAKI, ARIMOTO, NOZOMU, FUJIBAYASHI, KENTARO, KAWAMURA, HIDEAKI
Applicants: FANUC LTD, FANUC LTD.
Application year: 1988
Main classification: G05B19
IPC codes: G05B19, B23Q15