DIGITAL SERVO-CONTROL SYSTEM

Abstract: A digital servo-control system used for driving a machine with a plurality of drive shafts having a digital type multi-axis position control unit (31), provided in common to all of the drive shafts, for computing a torque command value (I c1 to I c4 ; τ c1 to τ c4 ) for each drive shaft on the basis of a position detection value (X fi ) detected by a position detector (40 to 43) provided for each drive shaft and a position command value (X ci ) for each drive shaft, and torque control units (32 to 35; 70 to 73), respectively provided in corres­ pondence to a plurality of motors (39; 89) adapted to drive the respective drive shafts, for controlling output torque of a corresponding motor in accordance with the computed torque command value.

Description: BACKGROUND OF THE INVENTION FIELD OF THE INVENTION This invention relates to a digital servo-control system suitable for driving a machine with a number of drive shafts such as a robot or a machine tool. DESCRIPTION OF THE PRIOR ART In order to drive a machine with a number of drive shafts such as a robot or a machine tool, a plurality of motors must be controlled simultaneously. Each motor is driven through a servomechanism. In controlling axial positions through a servo system, a microprocessor is typically used as an axial position control means. This technique is described in, for example, "Assembly Robot and Its Technological Problems" by Koichi Sugimoto et al in the Hitachi Review, Vol. 64, No. 12, December 1982, pages 5 to 10. Incidentally, a number of one-axis servo systems have hitherto been combined to constitute a multi-axis servo system. In recent years, however, demands for high performance and cost reduction have arisen and the aforementioned arrangement has not always been evaluated to be the most profitable arrangement. Accordingly, it has been considered to control a number of shafts by using a multi-axis position control means employed in common to a plurality of servo systems. An example of this type of arrangement will be described briefly. The multi-axis position control means (microcomputer) receives a position command value for each axis and a position detection value detected for each axis and executes an arithmetic operation to determine a speed command value for each axis. The speed command value for each axis thus determined by the multi-axis position control means is applied to a speed control circuit provided for each axis. The speed control circuit of each axis compares a speed detection value from a speed detector provided for each axis with the speed command value to produce a current command value (torque command value) for each axis. The current command value is applied to a current control circuit. The current control circuit of each axis compares the current command value with a current detection value for a motor of each axis and controls a power converter which supplies electric power to the motor. Thus, position control is executed while controlling current and speed under the application of a voltage to the motor. The digital servo control system for effecting multi-axis position control described above in brief, however, faces the following problems. In the first place, a DC motor and besides another type of motor such as an induction motor or a synchronous motor are used as a servomotor at present and hence in multi-axis position controlling, it is sometimes desired to change the type of motor. The type of speed control circuit is usually determined in accordance with the type of motor used. Accordingly, when the motor is exchanged, a servo drive system including the speed control circuit, current control circuit and power converter must also be exchanged. This exchange of the servo drive system is unacceptable from the standpoint of economy. In addition, the speed control circuit is operable in digitized configuration but it is provided for each axis, thereby unduly raising cost. In the second place, the provision of the speed detector and position detector for each axis also raises cost. Further, the employment of the speed detector is contrary to a recent technical trend of effecting speed detection with a position signal supplied from the position detector. US-A-4 240 016 discloses a digital servo-control system with the features included in the first part of the claim. The system includes three motors for effecting motion along three axes, three detectors for detecting the motion of the controlled apparatus along these axes, and a position control means comprising three axis position control units each associated with one of the three axes and one velocity unit common to all axes. The velocity unit is operated in a time-divisional mode in the sense that only one motor is controlled within each divisional period set by a clock. From Winfried Oppelt, "Kleines Handbuch technischer Regelvorgänge", 5th edition, 1972, pages 514, 515, 640 and 641, a time multiplex type control in general and a position control system with subordinated velocity and torque control are known. The document specifically describes a position control system for controlling a single motor. SUMMARY OF THE INVENTION An object of this invention is to provide a digital servo-control system which can assure inexpensive change of various types of motors and easy construction of a multi-axis control system. By taking advantage of the fact that when constructing a servo system by using various types of motors such as DC motors, induction motors and synchronous motors, the servo system differs only in torque generation mechanisms depending on the types of motors used, but is the same for various types of motors in the stage of executing control arithmetic operations of position and speed to generate a torque command. In view of this fact, in this invention, it is so made that means which is responsive to a torque command signal to execute torque control and so forth, is constructed for each of the axes respectively, and a multi-axis position control means executes control arithmetic operations of position and speed for the axes. The above object is met by a digital servo-control system as set forth in the claim. The multi-axis position control means generates a torque command signal for each drive shaft by executing control arithmetic operations of position and speed of each drive shaft on the basis of a position command value and a torque command value, and is used in common to the respective drive shafts by substituting for functional stages which are included in speed control circuits provided for individual drive shafts in the conventional multi-axis control system and which generate a torque command signal which may be used in common to control circuits for different types of motors. In this manner, the conventional functional stages is centralized into the single functional stage according to the invention to reduce cost of hardware. When changing the type of motor, the torque control means is required to be exchanged in accordance with the type of motor used. But the functional centralization of the multi-axis position control means makes the construction of the torque control means simpler than that of the conventional speed control circuit and changing the type of motor can therefore be accomplished inexpensively. The multi-axis position control means executes the speed control arithmetic operations inclusive of speed detection of a drive shaft on the basis of a position detection value for the drive shaft. This eliminates necessity of providing a speed detector for each axis and meets the recent technical trend of effecting speed detection with a position detection value. Since in accordance with the invention only the torque control means is provided for each axis and the position and speed controlling is centralized for multiple axes, the construction of the system with a multi-axis servomechanism can be simplified and adaptability to changing the type of motor can be improved. BRIEF DESCRIPTION OF THE DRAWINGS These and other objects and advantages of the present invention will become apparent by reference to the following description and accompanying drawings wherein: Fig. 1 is a block diagram showing the construction of an embodiment of the invention; Fig. 2 is a block diagram schematically showing examples of a multi-axis position control unit and a multi-axis position detection unit; Fig. 3 is a circuit diagram showing an example of a torque control unit shown in Fig. 1; Fig. 4 is a time chart for explaining the operation of a microprocessor shown in Fig. 1; Figs. 5 to 7 are flow charts for explaining the operation of the microprocessor; and Fig. 8 is a block diagram showing the construction of another embodiment of the invention. DESCRIPTION OF THE PREFERRED EMBODIMENTS Fig. 1 illustrates a digital servo-control system according to an embodiment of the invention as exemplified for four-axis controlling. Referring to Fig. 1, a multi-axis position commanding circuit 1 produces position command signals X c1 to X c4 for four axes which in turn are applied to a digital type multi-axis position control unit 31. A microcomputer is used as the multi-axis position control unit 31. As shown in Fig. 2, the multi-axis position control unit 31 comprises a microprocessor 46, a read-only memory (ROM) 47, a random access memory (RAM) 48, a timer 49 for generating an interruption pulse at a predetermined period, and four digital to analog converters (D/A converters) 50 to 53. Current command signals (torque command signals) I c1 to I c4 delivered from the multi-axis position control unit 31 are inputted to torque control units 32 to 35. In the case of a DC motor, current flowing through the motor is proportional to torque and the current command signal is equivalent to the torque command signal. The torque control unit 32 comprises a current control circuit 37, a drive circuit 38, a DC motor 39 and a current detector 44. In view of the fact that the drive circuit 38 for the DC motor 39 controls torque of a shaft of the motor 39, this drive circuit 38 is included in the torque control unit in the Fig. 1 embodiment. As shown in Fig. 3, the drive circuit 38 comprises a pulse width modulation circuit 60, a base drive circuit 61 for generating base signals for four transistors T r , diodes D connected in anti-parallel relationship with the respective transistors T r , and a DC power source B. An incremental encoder 40 is mechanically coupled to the DC motor 39. DC motors associated with the torque control units 33 to 35 are likewise coupled with encoders 41 to 43, respectively. Output pulses E₁ to E₄ of the encoders 40 to 43 are inputted to a multi-axis position detecting unit 36. The multi-axis position detecting unit 36 comprises, as shown in Fig. 2, four up-down counters 54 to 57 which count the output pulses E₁ to E₄ of encoders 40 to 43, respectively. The operation of the digital servo-control system will now be described with reference to a time chart shown in Fig. 4 and flow charts shown in Figs. 5 to 7. Each time the timer 49 generates an interruption pulse at a predetermined period T (for example, 1ms, the microcomputer 46 executes processings as shown in Fig. 5. Firstly, axial position control for i-th axis APR-i is executed in block 101, where i denotes any one of numerals 1 to 4 assigned to the respective axes. For example, when i = 1, position control APR is executed for the first axis. Contents of processing in block 101 are detailed in Fig. 6. The microprocessor 46 fetches a position command X ci for i-th axis from the multi-axis position commanding circuit 1 in block 111. Subsequently, the microprocessor 46 fetches a position detection value X fi from the i-th counter (for example, counter 54 for i = 1 or counter 55 for i = 2) of the multi-axis position detecting unit 36 in block 112. In block 113, a speed command value N ci is computed on the basis of the position command signal X ci and the position detection value X fi . Where a proportional compensation is used for compensating the position control, the speed command value N ci is computed by using a proportional gain K pi pursuant to the following equation: N ci = K pi (X ci - X fi ) (1) The thus determined speed command value N ci for i-th axis is stored in a predetermined address of the RAM 48 in block 114. Thereafter, 1 (one) is added to "ii" to change designation of axis. If the sum is 5, "i" recovers 1 (one). Changing "i" is executed in block 115. When the position control APR-i consisting of processings in blocks 111 to 115 ends, speed control processings in blocks 102 to 105 shown in Fig. 5 are executed. Blocks 102 to 105 are for different axes but contents of processing are the same in each of these blocks and executed in accordance with a flow chart of Fig. 7. Suffix "j" in Fig. 7 denotes an axis number. Firstly, the microprocessor 46 fetches a speed command value N cj for j-th axis stored in a predetermined address of the RAM 48 in block 121. Subsequently, in block 122, a speed detection value N fj is computed. For computation, a current position detection value X fj (t) is fetched from a counter for j-th axis, for example, counter 54 for the first axis, and subjected to subtraction with respect to a position detection value X fj (t-T) which has been fetched during the previous processing in block 122. The subtraction follows equation (2) as below. where T represents the constant interruption period. After completion of this arithmetric operation, X fj (t). which is expected to be used for the next speed detection, is stored in the area of RAM 48 which has previously been occupied by X fj (t-T). Processings thus for are executed in block 122. A current command value I cj is computed on the basis of the thus obtained speed command value N cj and speed detection value N fj in block 123. Where a gain compensation, for example, is used as a compensation factor for the speed controlling, the following equation indicates the current command value: I cj = K sj (N cj - N fj ) (3) where K sj represents a proportional gain. The thus obtained current command value I cj is applied to either one of the D/A converters 50 to 53 (block 124). If processing is in progress in block 102, then the D/A converter 50 will be selected and an analog current command value I c1 is delivered out of the converter 50. This current command value I c1 is applied to the torque control unit 32, particularly, to its current control circuit 37 as shown in Fig. 3. Then, the four transistors T r are operated by the current command value I c1 through the pulse width modulation circuit 60 and base drive circuit 61 so as to supply a desired current to the DC motor 39. An actual current flowing through the motor 39 is detected by the current detector 44 and becomes a feedback signal I f1 for current controlling. The encoder 40 coupled to the DC motor 39 generates pulses in accordance with a rotation angle of the motor 39. These pulses are counted by the counter 54 and used to obtain a position detection value X f1 and a speed detection value N f1 . In this manner, a moving object driven by the DC motor 39 associated with the first axis is controlled for its position. After executing the speed control arithmetic operation processing ASR 1 for the first axis, the microprocessor 46 continues to sequentially execute speed control arithmetic operation processings ASR 2 to ASR 4 for the second to fourth axes (block 125) to thereby sequentially set current command values I c2 to I c4 for these axes in the D/A converters 51 to 53. In this manner, during the interruption period T, the microprocessor 46 executes a position control arithmetic operation APR-i for one specified axis and speed control arithmetic operations ASR-j for all the axes, as shown in a time chart of Fig. 4. As described above, the Fig. 1 embodiment provides a simplified and inexpensive arrangement which can control position and speed of a plurality of axes. Fig. 8 shows another embodiment of the invention. This embodiment employs synchronous motors and differs from the Fig. 1 embodiment in that torque control units 70 to 73 substitute for the torque control units 32 to 35. The multi-axis position control unit 31 uses, like Fig. 2, position command values X c1 to X c4 from the multi-axis position commanding circuit 1 and position detection values X f1 to X f4 from the multi-axis position detecting unit 36 so as to compute torque commands τ c1 to τ c4 for the four axes and supplies the computed torque commands to the torque control units 70 to 73. In the torque control unit 70, multipliers 75 to 77 multiply the received torque command τ c1 by a three-phase sine-wave signal from a magnetic pole piece position detector 90 to produce current command signals i cu , i cv . amd i cw . The current command signals i cu , i cv and i cw take the form of a three-phase sine-wave which is modulated with τ c1 . These current command signals i cu to i cw are respectively applied to current control circuits 78 to 80 and compared with current detection values i fu to i fw detected by current detectors 86 to 88 for U to V phases. Subsequently, as well known in the art, comparison output signals from the current control circuits 78 to 80 operate a three-phase transistor inverter 85 through pulse width modulation circuits 81 to 83 and a base drive circuit 84. As a result, a three-phase current for generating torque corresponding to τ c1 is passed through a synchronous motor 89. The remaining torque control units 71 to 73 execute similar operations so that the corresponding motors generate amounts of torque equivalent to τ c2 to τ c4 . The motors rotate while generating such amounts of torque and the encoders 40 to 43 detect their rotary positions to provide position detection values X f1 to X f4 which are fetched by the multi-axis position control unit 31 through the multi-axis position detecting unit 36. By repeating the above operations, positioning to meet the target position commands X c1 to X c4 can be ensured. As described above, the Fig. 8 embodiment can use the control unit for DC motors of the Fig. 1 embodiment by exchanging only the torque control units including the synchronous motors. In general, it is therefore possible to reduce cost of applying the control unit according to the invention to different equipments. Although in the foregoing embodiments the controlling of rotary positions of motors has been described, position controlling of a moving object such as a machine tool table driven by a motor may be effected in a similar manner. The DC motor and the synchronous motor have been exemplified for description but an induction motor may be controlled with an arrangement similar to that described thus for by using, for example, vector control wherein torque is generated in proportion to a torque command. Further, the previously described arrangement may also be applied to an oil-pressure motor by using a different type of torque generator. Moreover, although in the foregoing embodiments the speed detection value has been computed from a change in position detection values, the invention may obviously be applicable to other types of servo-control in which a special circuit or a speed detector is used for speed detection.

Claims: A digital servo-control system comprising: a plurality of motors (39; 89) for driving a plurality of drive shafts of a machine, respectively; position detection means (40 to 43, 36) for detecting a position of each of said drive shafts and producing a corresponding position detection signal (X f1 to X f4 ); multi-axis position commanding means (1) for producing a position command signal (X c1 to X c4 ) for each of said drive shafts; digital type position control means (31) for receiving said position detection signal and said position command signal computing a speed command value (N c1 to N c4 ) and a speed detection value (N f1 to N f4 ) for each drive shaft and generating a torque command signal (I c1 to I c4 ; τ c1 to τ c4 ) for each motor on the basis of a respective position detection value and position command value; and motor drive means (32 to 35; 70 to 73) provided in correspondence to each of said plurality of motors (39; 89) receiving said torque command signal and driving the corresponding motor in accordance with said signal, characterized in that said position control means is a single multi-axis position control unit (31) operating in a time-division mode and performing in each of successive predetermined time-division periods (T) the following operations: a) sequentially reading said position detection value (X f1 to X f4 ) and position command value (X c1 to X c4 ) for each drive shaft, computing the speed command value (N c1 to N c4 ) on the basis of the read-out values and storing the computed speed command value; and b) computing the speed detection value (N f1 to N f4 ) for each drive shaft on the basis of the respective position detection value read out within the current predetermined time-division period (T) and the position detection value (X f1 to X f4 ) read out within the immediately preceding time-division period, and computing the torque command signal (I c1 to I c4 ) for each motor on the basis of the respective speed detection value and the stored speed command value; and that said motor drive means are closed-loop torque control means (32 to 35) controlling the corresponding motor (39; 89) on the basis of the respective torque command signal from said position control unit (31) and a feed-back torque detection signal (I f1 to I f4 ).

Inventors: KUBO, KENJI, OBARA, SANSHIRO, OMAE, TSUTOMU, WATANABE, MASAHIKO
Applicants: HITACHI, LTD.
Application year: 1985
Main classification: H02P7
IPC codes: G05B19, H02P5