SERVO CONTROL DEVICE, ROBOT, AND SERVO CONTROL METHOD
20200101596 ยท 2020-04-02
Inventors
Cpc classification
H02P23/18
ELECTRICITY
International classification
B25J9/10
PERFORMING OPERATIONS; TRANSPORTING
F16H49/00
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
Abstract
A servo control device for controlling a motor based on a position command when an operation target is connected to the motor via a wave gear reduction mechanism may include a position control system configured to detect a shaft angular position of the motor to perform a closed-loop control based on the shaft angular position; an inverse control element having an inverse characteristic of dynamics of the position control system; and a compensation amount generation unit configured to generate a compensation amount for compensating for an angular transmission error of the wave gear reduction mechanism. The inverse control element is configured to apply compensation amount to the position control system.
Claims
1. A servo control device for controlling a motor based on a position command when an operation target is connected to the motor via a wave gear reduction mechanism, comprising: a position control system configured to detect a shaft angular position of the motor to perform a closed-loop control based on the shaft angular position; an inverse control element having an inverse characteristic of dynamics of the position control system; and a compensation amount generation unit configured to generate a compensation amount for compensating for an angular transmission error of the wave gear reduction mechanism, wherein the inverse control element is configured to apply compensation amount to the position control system.
2. The servo control device according to claim 1, further comprising: a compensation loop configured to feed the shaft angular position back to the position control system, outside the position control system, wherein the compensation loop comprises the compensation amount generation unit and the inverse control element.
3. The servo control device according to claim 1, wherein the position control system is configured by a discrete time system, and the inverse control element comprises a delay element.
4. The servo control device according to claim 2, wherein the position control system is configured by a discrete time system, the inverse control element comprises a delay element, and a forward compensation unit configured to perform a forward compensation is provided on an input side of the inverse control element in the compensation loop.
5. The servo control device according to claim 4, wherein the forward compensation unit is configured to perform the forward compensation by estimating the shaft angular position at a time advanced by a delay time period, based on a control cyclic difference value of a signal of a current shaft angular position.
6. The servo control device according to claim 1, wherein the position control system is configured to execute a closed-loop control based on a model matching control.
7. The servo control device according to claim 6, wherein the position control system is configured to execute the model matching control based on a robust pole assignment in which two poles in the closed-loop control are assigned to be robust against disturbances.
8. The servo control device according to claim 1, wherein the position control system is configured to execute a control based on a model following control in which a model corresponding to a control target is constructed, and a control is performed so that an actual output of the control target follows a result obtained by inputting a command into the model.
9. The servo control device according to claim 1, wherein the position control system is configured to execute a closed-loop control based on a P-PI control.
10. The servo control device according to claim 1, wherein the position control system is configured to execute a closed-loop control based on a disturbance observer compensation control.
11. The servo control device according to claim 1, wherein the compensation amount generation unit comprises a correction table in which a relationship between a shaft angular position of the motor and the angular transmission error is previously measured and accumulated, and is configured to generate the compensation amount based on the correction table.
12. The servo control device according to claim 1, wherein the compensation amount generation unit is configured to approximate a first-order frequency component of the angular transmission error with a sine function by previously measuring a relationship between a shaft angular position of the motor and the angular transmission error, and generate the compensation amount based on the sine function.
13. A robot driven by the servo control device according to claim 1.
14. A servo control method of controlling a motor based on a position command when an operation target is connected to the motor via a wave gear reduction mechanism, comprising: detecting a shaft angular position of the motor to execute a closed-loop control, based on the shaft angular position in a position control system; generating a compensation amount for compensating for an angular transmission error of the wave gear reduction mechanism; effecting an inverse characteristic of dynamics of the position control system on the compensation amount; and applying the compensation amount on which the inverse characteristic is effected, to the position control system.
15. The servo control method according to claim 14, wherein in a compensation loop provided outside the position control system, the compensation loop being configured to feed the shaft angular position back to the position control system, the generating a compensation amount and the effecting an inverse characteristic are executed.
16. The servo control method according to claim 14, wherein the closed-loop control is executed in a discrete time system, and a delay element is added to the inverse characteristic.
17. The servo control method according to claim 15, wherein the closed-loop control is executed in a discrete time system, a delay element is added to the inverse characteristic, and performing a forward compensation is performed before the s effecting the inverse characteristic in the compensation loop.
18. The servo control method according to claim 17, wherein the performing a forward compensation comprises estimating the shaft angular position at a time advanced by a delay time period, based on a control cyclic difference value of a signal of a current shaft angular position.
19. The servo control method according to claim 14, wherein the generating a compensation amount comprises generating the compensation amount with reference to a correction table in which a relationship between the shaft angular position of the motor and the angular transmission error is previously measured and accumulated.
20. The servo control method according to claim 14, wherein the generating a compensation amount comprises generating the compensation amount by a sine function for approximating a first-order frequency component of the angular transmission error obtained by previously measuring a relationship between the shaft angular position of the motor and the angular transmission error.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0022] Embodiments will now be described, by way of example only, with reference to the accompanying drawings which are meant to be exemplary, not limiting, and wherein like elements are numbered alike in several Figures, in which:
[0023]
[0024]
[0025]
[0026]
[0027]
[0028]
[0029]
[0030]
[0031]
[0032]
[0033]
DETAILED DESCRIPTION
[0034] Next, at least an embodiment of the present invention will be described with reference to the drawings.
[0035] A servo control system according to the present embodiment includes a motor 2 configured to drive an operation target 4 and a servo control device 1 configured to control the motor 2. The operation target 4 is connected to the motor 2 via a wave gear reduction mechanism 5. The motor 2 is, for example, an AC servomotor or a DC servomotor, and drives the operation target 4 which is a load. The motor 2 is attached with a position detection mechanism 3 such as an encoder configured to detect a rotational position of the motor 2 independently of the wave gear reduction mechanism 5. The servo control device 1 executes a control based on a closed loop system, based on a position command applied from outside and a detection signal from the position detection mechanism 3 to drive the motor 2. It is noted that examples of the operation target 4 driven by the motor 2 include a robot hand and a robot arm included in a robot, and a moving mechanism for moving a position in a gravity direction of the robot hand.
[0036]
[0037]
[0038] In the system illustrated in
[0039] If (1T(s)) is constantly 0, then y=(1/N)x, but due to the dynamics of the system, it cannot be said that 1T(s) is constantly 0. Therefore, in the system illustrated in
[0040]
[0041] That is, in the output angular position y of the wave gear reduction mechanism 5, the influence of the angular transmission error d.sub.d does not appear.
[0042] However, the system illustrated in
[0043] In the system illustrated in
[0044] That is, in the output of the wave gear reduction mechanism 5, the influence of the dynamics is removed, and the influence of the angular transmission error will not appear at each output angular position y of the wave gear reduction mechanism.
[0045] In the system illustrated in
[0046] In many cases, the inverse system 22 is non-proper and cannot be realized as is. If the inverse system 22 is non-proper, an appropriate delay is added to a transfer function T.sup.1 (s) of the inverse system 22 so that the inverse system 22 is proper, and a phase advance process is performed on the input of the compensation amount generation unit 23 to compensate for the delay. The phase advance process or a phase advance compensation includes estimation of a future value, but the input of the compensation amount generation unit 23 is the shaft angular position x of the motor 2 and a time period change is small as compared to the compensation signal (error signal) which is the output of the compensation amount generation unit 23, and thus, the future value can be estimated with sufficient accuracy. Alternatively, if the change in the shaft angular position x of the motor 2 is sufficiently slow compared to a response speed of the position control system 21, the influence of the angular transmission error can be substantially removed simply by adding the delay to the transfer function T.sup.1(s) of the inverse system 22 even if the phase advance process is not performed.
[0047] The method of performing the servo control based on the system illustrated in
[0048] If the servo control device 1 includes a microprocessor or the like to perform digital control, instead of the transfer functions T(s) and T.sup.1(s), the system will be described by using discretized transfer function T(z) or T.sup.1 (z) using a forward operator z. In particular, if the model matching control system is used as described above, implementation with the digital control is practically essential.
[0049] It is assumed that the position control system 21 of the system illustrated in
The inverse system or the inverse model of this discretized position control system model is as follows.
However, this is non-proper, and thus, it is an unrealizable function. Therefore, a second-order delay z.sup.2 is added to obtain the following equation
Now, a realizable inverse model is obtained. However, since the second-order delay z.sup.2 is added, to realize more accurate control, the phase of the input signal to the inverse model provided in the compensation loop is to be advanced by two orders and the input signal advanced by two orders is to be estimated. Advancement of the phase by one order can be realized by adding a pseudo differential of the target signal (that is, a difference between signal values in one cycle of the control cycle) to the signal value, and advancement by two orders can be realized by adding two cycles. On the input side of the inverse model, a model of the angular transmission error is arranged, and advancement of the phase of the output signal from the model of the angular transmission error by two orders is equivalent to advancement of the phase of the input signal to the model of the angular transmission error by two orders, but when the output signal from the model of the angular transmission error and the input signal to the model of the angular transmission error are compared in time period change, the time period change of the input signal is more gradual because the input signal is a position signal indicating the shaft angular position x of the motor 2, and thus, the error can be decreased when the input signal to the model of the angular transmission error is subject to pseudo differential. When the delay generated in the inverse modeling is compensated by the phase advance process in the compensation loop, the angular transmission error can be compensated in a state where there is no delay due to the dynamics or the like, and thus, an ideal compensation for the angular transmission error can be performed. Generally, in the digital control of the motor, the shaft angular position of the motor changes sufficiently slowly within a control sampling cycle, and therefore, in the system illustrated in
[0050] Therefore, the system illustrated in
[0051] Next, a method different from the servo control method described by using
[0052] In the system illustrated in
[0053] As can be seen from
[0054]
[0055] Next, model matching control of the position control systems 21, 31, 41, and 51 will be described. If the operation target 4 driven from the motor 2 via the wave gear reduction mechanism 5 is, for example, a joint of a robot, in addition to the angular transmission error, various types of disturbances such as an interference force are added to the joint, and inertia also changes due to a change in posture of the robot. Then, if the position control systems 21, 31, 41, and 51 are regarded as the model matching control system, these systems are constructed by a robust model matching control system having both clear modeling and robustness. Here, the robust model matching control system is a system in which a feedback position servo control system including the motor 2 and the operation target 4 is a model matching control system robust against fluctuations, mismatches, and disturbances. If the robust model matching control system is employed, the robustness against mismatches and disturbances is improved, and the effect of compensating for the angular transmission error is further improved.
[0056] Several methods are known as a method of implementing the robust model matching control system. One of the methods is a robust pole assignment method of determining assignment of two poles in closed-loop control to be robust against disturbances in a particular assumed model (Akihiro Ito, et al., Trend and Some Design Examples of Robust Control in Mechatronic Systems, Journal of the Japan Society for Precision Engineering, Vol. 66, No. 5 (2000), p. 811-815). In the robust pole assignment method, there are a method of using a first-order controller and a method of using a second-order controller as a controller order.
[0057] A transfer function F.sub.a(z) of the PI control unit 61, a transfer function H.sub.1 of the first gain element 63, a transfer function H.sub.2 of the second gain element 65, and a transfer function F.sub.b(z) of the low pass filter 66 are represented as follows, respectively:
F.sub.a(z)=(+q.sub.0)m.sub.0/(r.sub.0),
H.sub.1=(p.sub.1m.sub.1+m.sub.0q.sub.0)/(m.sub.0q.sub.0),
H.sub.2={(m.sub.1m.sub.0)/m.sub.0}H.sub.1,
[0058] F.sub.b(z)=q.sub.0z/(+q.sub.0), where m.sub.0 and m.sub.1 are both model parameters, and the relationship with the above-mentioned model parameters a.sub.0 and a.sub.1 is m.sub.0=a.sub.0+a.sub.1+1, m.sub.1=a.sub.1+2. If the disturbance d(k) is zero, the following equations are obtained from the block diagram illustrated in
y(k)=P(z)x(k),
v.sub.1(k)=(/z)y(k).
In addition,
v.sub.1(k)=[m.sub.0/(+p.sub.1)]u(k) is obtained.
[0059] If the input of the low pass filter 66 is w(k), then
is established. For u(k) which is the output of the PI control unit 61, u(k)=F.sub.a(z) {e(k)F.sub.b(z)w(k)} is established. As between F.sub.a(z) and F.sub.b(z), there is a relationship of:
the following is obtained.
Further, if this equation is still modified, then finally, the following equation is obtained.
[0060] This equation indicates that in the system illustrated in
[0061] A robust pole assignment method using the second-order controller is described, for example, in Japanese Patents No. 3200496, No. 3850628, and No. 3962215. As an example, in the robust pole assignment method disclosed in Japanese Patent No. 3850628, if the transfer function of the control target is P(z)=r.sub.0z/(.sub.2+p.sub.1), similarly to above, and a stable characteristic polynomial is m()=.sub.2+m.sub.1+m.sub.0, the following is selected as a stable observer polynomial q():
[0062] q()=.sup.n+q.sub.n1.sup.n1+ . . . +q.sup.0, n=2+d, where d is an assumed disturbance order of a compensation target.
[0063] Then, if
k()=k.sub.n1.sup.n1+ . . . +k.sub.d+1.sup.d+1+q.sub.d.sup.d+ . . . +q.sub.0, and
h()=h.sub.n.sup.n+ . . . +h.sub.0, then
k.sub.j=q.sub.j,j=0 to d.
[0064] k.sub.i=d+1 to n1 and h.sub.i, i=0 to n are selected so that k()r.sub.0+h(){.sup.2+p.sub.1}=q() {p()m()} is satisfied to configure.
[0065] a closed-loop control system for applying a control input represented by x(k)={k()/q()}x(k)+{h()/q()}y(k)+(m.sub.0/r.sub.0)x.sub.1(k).
[0066] Two poles of the closed-loop control system, that is, roots of the characteristic polynomial m() are provided with a feedforward compensator represented by x.sub.1(k) for adjusting a ratio of compensation by each F.sub.1 and F.sub.2. Here,
x.sub.1(k)=F.sub.2[{z.sup.1r(k)+F.sub.1(r(k)z.sup.1r(k))}z.sup.1{z.sup.lr(k)+F.sub.1(r(K)z.sup.1r(k))}+z.sup.1{r(k)z.sup.1r(k)}]+z.sup.1[z.sup.1r(k)+F.sub.1{r(k)z.sup.lr(k)}], where
[0067] x(k) is the input signal to the control target, y(k) is the position output signal from the control target, k() is a numerator polynomial of a filter transfer function k()/q() to which the input signal x(k) is input, h() is a numerator polynomial of a filter transfer function h()/q() to which the position output signal y(k) is input, x.sub.1(k) is a position command to the closed-loop control system, and r(k) is a reference position command input to the entire control system. F.sub.1 and F.sub.2 are feedforward compensation coefficients for a first pole and a second pole of the closed-loop control system, respectively. p() is a denominator polynomial of a transfer function representing a characteristic of the control target, r.sub.0 is a numerator term (coefficient) of the transfer function of the control target, and p.sub.1 is a coefficient of a denominator polynomial of the transfer function of the control target. q() is a stable observer characteristic polynomial incorporated into the controller, and q.sub.0 is its zero-order term.
[0068]
[0069] According to the robust pole assignment method using the second-order controller, because of the feedforward compensation, the compensation for the first pole of m() can be performed with F.sub.1 and the compensation for the second pole can be performed with F.sub.2 independently. Therefore, this characteristic can be utilized to realize the model matching control robust against mismatches and disturbances.
[0070] Although the robust pole assignment methods using the first-order controller or the second-order controller have been described above, the implementation of the robust pole assignment method is not limited to those described above, and there are other implementations. For example, each of the blocks in the above-described configuration can be grouped or separated, and as long as insertion positions of the blocks are equivalent in those in the block diagram illustrated in
[0071] An example of a control method other than the robust model matching control includes a model following control.
[0072] A goal of the model following control is to establish y(s)=M(s)r(s). If there is no disturbance d(s) here,
u.sub.ff(s)=M(s)P.sup.1(s)r(s),
u.sub.fb(s)=C(s){M(s)r(s)y(s)},
u(s)=u.sub.ff(s)+u.sub.fb(s), and
y(s)=P(s)u(s) are established, and therefore,
y(s)=P(s){M(s)P.sup.1(s)r(s)+C(s)[M(s)r(s)y(s)]} is obtained.
[0073] Since y(s)=M(s)r(s) is obtained from the above equation, it is understood that the control target P(s) follows the model M(s) in the system illustrated in
y(s)=P(s)d(s)P(s)C(s)y(s) is established.
[0074] From the above equation,
y(s)=[P(s)/{1+P(s)C(s)}]d(s) is obtained.
[0075] From the above equation, if the characteristic polynomial of P(s)/{1+P(s)C(s)} is stable and the numerator component includes a denominator component of the disturbance d(s), the influence of the disturbance d(s) is converged on 0. That is, in the model following control illustrated in
[0076] Further, in at least an embodiment of the present invention, as a method other than the robust model matching control for constructing the position control system, it is possible to use a method in which the P-PI control constructed to be robust against mismatches and disturbances is performed to grasp a whole of the system, a method in which a disturbance observer compensation control constructed to be robust against mismatches and disturbances (for example, see Kouhei Onishi, Robust Motion Control by Disturbance Observer, Journal of the Robotics Society of Japan, Vol. 11, No. 4 (1993), p. 486-493) is performed to grasp a whole of the system, and the like. It is possible to construct an inverse model of the position control system as long as the position control system can be correctly modeled by either the P-PI control or the disturbance observer compensation control.
[0077] In the servo control device according to the embodiment described above, with a simple configuration where if the position control system of detecting the shaft angular position of the motor and performing the closed-loop control based on the shaft angular position is provided, an inverse control element, that is, an inverse system or an inverse model, having an inverse characteristic of dynamics of the position control system, and a compensation amount generating unit including, for example, a correction table, the compensation amount generation unit being configured to generate the compensation amount by which the angular transmission error of the wave gear reduction mechanism is compensated are provided, and the compensation amount of the angular transmission error is applied via the inverse control element to the position control system, the angular transmission error of the wave gear device can be effectively compensated with high accuracy.
[0078] As will be appreciated by one skilled in the art, aspects of the present disclosure may be embodied as a system, method, or computer program product. Accordingly, aspects of the present disclosure may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects that may all generally be referred to herein as a circuit, module, unit, element, or system. Furthermore, aspects of the present disclosure may take the form of a computer program product embodied in one or more computer readable medium(s) having computer readable program code embodied thereon.
[0079] Any combination of one or more computer readable medium(s) may be utilized. The computer readable medium may be a computer readable signal medium or a computer readable storage medium. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of the computer readable medium would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this document, a computer readable storage medium may be any tangible medium that may contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
[0080] A computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
[0081] Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
[0082] Computer program code for carrying out operations for aspects of the present disclosure may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C++ or the like and conventional procedural programming languages, such as the C programming language or similar programming languages. The program code may execute entirely on the laser scanner, partly on the laser scanner, as a stand-alone software package, partly on the laser scanner and partly a connected computer, partly on the laser scanner and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the laser scanner through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external laser scanner (for example, through the Internet using an Internet Service Provider).
[0083] Aspects of the present disclosure are described with reference to block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the disclosure. It will be understood that each block of the block diagrams, and combinations of blocks in block diagrams, may be implemented by computer program instructions.
[0084] These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the block diagram block or blocks. These computer program instructions may also be stored in a computer readable medium that may direct a computer, other programmable data processing apparatus, or other devices to function in a particular manner, such that the instructions stored in the computer readable medium produce an article of manufacture including instructions which implement the function/act specified in the block diagram block or blocks.
[0085] The computer program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other devices to cause a series of operational steps to be performed on the computer, other programmable apparatus or other devices to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide processes for implementing the functions/acts specified in the block diagram block or blocks.
[0086] The block diagrams in
[0087] While the description above refers to particular embodiments of the present invention, it will be understood that many modifications may be made without departing from the spirit thereof. The accompanying claims are intended to cover such modifications as would fall within the true scope and spirit of the present invention.
[0088] The presently disclosed embodiments are therefore to be considered in all respects as illustrative and not restrictive, the scope of the invention being indicated by the appended claims, rather than the foregoing description, and all changes which come within the meaning and range of equivalency of the claims are therefore intended to be embraced therein.