Method and system for estimating operation parameters of a servomotor

Information

  • Patent Grant
  • 9768720
  • Patent Number
    9,768,720
  • Date Filed
    Thursday, August 11, 2016
    8 years ago
  • Date Issued
    Tuesday, September 19, 2017
    7 years ago
Abstract
A method for estimating operation parameters of a servomotor is described. The method includes the steps of: driving the servomotor to rotate stably at an initial angular velocity; computing d- and q-axis components of an initial voltage when the servomotor rotates at the initial angular velocity; accelerating the servomotor to a predetermined angular velocity according to the initial voltage; and computing at least one operation parameter of the servomotor after the servomotor rotates at the predetermined angular velocity.
Description
CROSS-REFERENCE TO RELATED APPLICATION

This application claims priority of Chinese Patent Application No. 201510500888.X, filed on Aug. 14, 2015.


FIELD

The disclosure relates to a method and a system for estimating operation parameters of a servomotor, and more particularly to a method and a system for estimating a torque constant, inertia and a friction coefficient of the servomotor.


BACKGROUND

Servomotor systems are widely used in industries, and a reliable automatic control method of the servomotor system is needed, such that manpower cost may be reduced and productivity may be increased.


However, differently structured servomotors require different operation parameters (e.g., a torque constant, inertia and a friction coefficient) for control thereof.


SUMMARY

Therefore, an object of the disclosure is to provide a method and a system for rapidly estimating operation parameters of a servomotor.


According to an aspect of the disclosure, the method for estimating operation parameters of a servomotor is described. The method is to be implemented by a system that includes a current control loop for outputting an output current to the servomotor, and a control module for controlling the current control loop. The method includes the following steps:


a) outputting, by the control module, a current signal to the current control loop to enable the current control loop to output the output current to the servomotor;


b) driving, by the current control loop, the servomotor to rotate stably at an initial angular velocity by limiting integrated value of a difference between a current value of the current signal and a current value of the output current;


c) computing, by the control module, d- and q-axis components of an initial voltage when the servomotor rotates at the initial angular velocity;


d) outputting, by the control module, the initial voltage having the d- and q-axis components to the current control loop for accelerating the servomotor from the initial angular velocity to a predetermined angular velocity by feed-forward control; and


e) after the servomotor rotates at the predetermined angular velocity, computing, by the control module, at least one operation parameter of the servomotor.


According to another aspect of the disclosure, the system for estimating operation parameters of a servomotor includes a current control loop and a control module.


The current control loop is configured to output an output current to the servomotor.


The control module is configured to control the current control loop, and is operable to:


output a current signal to the current control loop to enable the current control loop to output the output current to the servomotor and to drive the servomotor to rotate stably at an initial angular velocity by limiting integrated value of a difference between a current value of the current signal and a current value of the output current;


compute d- and q-axis components of an initial voltage when the servomotor rotates at the initial angular velocity;


output the d- and q-axis components of the initial voltage to the current control loop for accelerating the servomotor from the initial angular velocity to a predetermined angular velocity by feed-forward control; and


compute at least one operation parameter of the servomotor after the servomotor rotates at the predetermined angular velocity.





BRIEF DESCRIPTION OF THE DRAWINGS

Other features and advantages of the disclosure will become apparent in the following detailed description of the embodiments with reference to the accompanying drawings, of which:



FIG. 1 is a block diagram illustrating an embodiment of system for estimating operation parameters of a servomotor according to the disclosure;



FIG. 2 is a block diagram illustrating an embodiment of an angular position control loop of the system according to the disclosure;



FIG. 3 is a block diagram illustrating an embodiment of a rotating speed control loop of the system according to the disclosure;



FIG. 4 is a block diagram illustrating an embodiment of a current control loop of the system according to the disclosure;



FIG. 5 is a timing diagram for illustrating timing waveforms of a current signal used to control the current control loop, an output current outputted to the servomotor, and an angular velocity of the servomotor;



FIG. 6 is an enlarged plot for illustrating the timing waveform of the angular velocity;



FIG. 7 is a flow chart of a method for estimating the operation parameters of the servomotor according to the disclosure; and



FIG. 8 is a plot for illustrating a result of an experiment according to another embodiment for computing an estimated torque constant, an estimated friction coefficient and an estimated inertia based upon the angular velocity.





DETAILED DESCRIPTION

Referring to FIG. 1, an embodiment of a system 100 for estimating operation parameters of a servomotor 4 according to this disclosure is illustrated. The servomotor 4 is connected to a load 2, and the system 100 is configured to estimate the operation parameters of the servomotor 4 for controlling the servomotor 4 to stably drive the load 2. In this embodiment, the servomotor 4 is a permanent-magnet synchronous motor.


The system 100 includes a control loop module 3 and a control module 1.


The control loop module 3 includes a current control loop 32, a rotating speed control loop 31 and an angular position control loop 30. The current control loop 32 is configured to output an output current to the servomotor 4. The rotating speed control loop 31 is configured to drive the servomotor 4 according to an angular velocity signal. The angular position control loop 30 is configured to generate the angular velocity signal outputted to the rotating speed control loop 31.


The control module 1 is configured to control the current control loop 32 and the rotating speed control loop 31. In this embodiment, the control module 1 is a computer provided with a software and/or a firmware. The control module 1 is programmed to cooperate with the control loop module 3 to implement a method for estimating the operation parameters of the servomotor 4 according to this disclosure, so that the servomotor 4 loaded with the load 2 can be controlled, for example by the control loop module 3, according to the operation parameters.


Referring further to FIG. 5, in durations t0-t7, the system 100 is configured to compute the operation parameters, such as an estimated torque constant {circumflex over (K)}t, an estimated inertia Ĵ and an estimated friction coefficient {circumflex over (B)}, of the servomotor 4 loaded with the load 2. By tuning the control loop module 3 with the operation parameters, the servomotor 4 can be controlled by the control loop module 3 to stably operate.


It should be noted that, for the sake of convenience of description, notation standard are briefly addressed herein. A symbol with a “*” represents a value of an instruction signal, e.g., ω* represents an angular velocity value of the angular velocity signal for instructing the rotating speed control loop 31. A symbol with a “^” represents an estimated quantity, e.g., Ĵ represents the estimated inertia. A symbol without any tag represents an actual physical quantity, e.g., J represents an actual inertia.


Block diagrams of the angular position control loop 30, the rotating speed control loop 31 and the current control loop 32 are illustrated in FIG. 2, FIG. 3 and FIG. 4, respectively.


Referring to FIG. 2, a transfer function of the angular position control loop 30 is, but is not limited to,









θ


(
s
)




θ
*



(
s
)



=


K
p_p


s
+

K
p_p




,





where θ is an angle value of an angular position of the servomotor 4, θ* is an angle value of an angle signal for instructing the angular position control loop 30, Kp_p is a proportional gain of the angular position control loop 30 associated with a cutoff frequency and a bandwidth of the angular position control loop 30, and s is a complex frequency parameter.


Referring to FIG. 3, a transfer function of the rotating speed control loop 31 is, but is not limited to,









ω


(
s
)




ω
*



(
s
)



=




K
i_v

B


s
+


K
i_v

B



=


ω
v


s
+

ω
v





,





where ω is an angular velocity value of an actual angular velocity of the servomotor 4, ω* is an angular velocity value of the angular velocity signal, Ki_ν is an integral gain of the rotating speed control loop 31, B is an actual friction coefficient of the servomotor 4, and ων is a bandwidth of the rotating speed control loop 31 associated with the cutoff frequency.


In this embodiment, the rotating speed control loop 31 is implemented by a proportional integral controller (PI controller). The rotating speed control loop 31 computes a difference by subtracting the angular velocity value of the actual angular velocity ω of the servomotor 4 from the angular velocity value of the angular velocity signal ω*, which is generated by the angle control loop 30. Then, the rotating speed control loop 31 processes the difference with reference to the integral gain Ki_ν and a proportional gain Kp_ν of the rotating speed control loop 31 so as to obtain a torque value of a torque signal T*e. It should be noted that values of the integral gain Ki_ν and the proportional gain Kp_ν are to be solved herein. Next, the torque value of the torque signal T*e is divided by the estimated torque constant {circumflex over (K)}t to obtain a current value of a current signal i*. In particular, the current signal is used to instruct the current control loop 32, and has a d-axis component i*d and a q-axis component i*q. Referring to FIG. 4, the current control loop 32 includes a q-axis control loop 321 and a d-axis control loop 322. A transfer function of the q-axis control loop 321 is, but is not limited to,










i
q



(
s
)




i
q
*



(
s
)



=




K

p

_iq



L
q



s
+


K
p_iq


L
q




=


ω
iq


s
+

ω
iq





,





where iq is a q-axis component of the output current, i*q is the q-axis component of the current signal, Kp_iq is a proportional gain of the q-axis control loop 321, Lq is a q-axis inductance, and ωiq is a bandwidth of the q-axis control loop 321. The d-axis control loop 322 has a transfer function similar to that of the q-axis control loop 322. As shown in FIG. 4, id is a d-axis component of the output current, i*d is the d-axis component of the current signal, Kp_id is a proportional gain of the d-axis control loop 322, Ld is a d-axis inductance, and ωid is a bandwidth of the d-axis control loop 322.


Referring to FIG. 4 in combination with FIG. 3, since an output of the current control loop 32 varies much faster than an output of the rotating speed control loop 31, in this embodiment, the transfer function of the q-axis control loop 321 of the current control loop 32 is approximated by one, which means that the q-axis component of the current signal i*q is approximately equal to the q-axis component iq of the output current







(


i
.
e
.

,



i
q


i
q
*



1


)

.





It is known that an actual motor torque Te of the servomotor 4 is equal to the q-axis component iq of the output current multiplied by a torque constant Kt. The angular velocity value of the actual angular velocity ω of the servomotor 4 is derived from a difference between the actual motor torque Te of the servomotor 4 and an actual load torque TL of the load 2 with reference to the actual inertia J and an actual friction coefficient B.


As illustrated in FIG. 4, in the q-axis control loop 321, a difference between the q-axis component i*q of the current signal and the q-axis component iq of the output current that is fedback to an input of the q-axis control loop 321 is processed with reference to the proportional gain Kp_iq and an integral gain Ki_iq of the q-axis control loop 321, and then combined with a q-axis component νq0 of an initial voltage, so as to obtain a q-axis component νq of an output voltage outputted to the servomotor 4. Similarly, in the d-axis control loop 322, a difference between the d-axis component i*d of the current signal and the d-axis component id of the output current that is fedback to an input of the d-axis control loop 322 is processed with reference to the proportional gain Kp_id and an integral gain Ki_id of the d-axis control loop 322, and then combined with a d-axis component νd0 of the initial voltage, so as to obtain a d-axis component νd of the output voltage.


Furthermore, for the current control loop 32 in this embodiment, integrated values of the differences between the q- and d-axis components i*q, i*d of the current signal and the q- and d-axis components iq, id of the output current are limited by respective limiters 3211, 3221 so as to limit the integrated values in a reasonable range.


It is worth noting that the d-axis component i*d is set as zero (i*d=0) in this embodiment. In other words, only the q-axis component i*q of the current signal is considered in the following description, and the d-axis control loop 322 may be omitted in other embodiments.


Specifically, referring back to FIG. 1, the control module 1 includes a current configuring unit 11, an initial-voltage configuring unit 12, a torque-constant estimating unit 13, an initial-inertia estimating unit 14, a friction-coefficient estimating unit 15, an inertia estimating unit 16, a first calculator 171 and a second calculator 172.


At first, the current configuring unit 11 generates the q-axis component i*q of the current signal for the current control loop 32, and the current control loop 32 drives the servomotor 4 to rotate stably at an initial angular velocity ω0 by limiting the integrated value of the difference between the current value of the current signal i* and a current value of the output current.


When the servomotor 4 rotates at the initial angular velocity ω0, the initial-voltage configuring unit 12 of the control module 1 computes the d-axis component νd0 and the q-axis component νq0 of the initial voltage, and outputs the d- and q-axis components νd0, νq0 of the initial voltage to the current control loop 32 for accelerating the servomotor 4 from the initial angular velocity ω0 to a predetermined angular velocity ω1 by feed-forward control and by relaxing the limitation of the integrated value. The control module 1 then computes at least one operation parameter of the servomotor 4 after the servomotor 4 rotates at the predetermined angular velocity ω1.


For example, when the servomotor 4 rotates at the predetermined angular velocity ω1, the torque-constant estimating unit 13 computes an initial estimated torque constant {circumflex over (K)}t0. The initial-inertia estimating unit 14 computes an initial estimated inertia Ĵ0 with the q-axis component i*q of the current signal equal to zero (i.e., i*q=0). The first calculator 171 computes an initial proportional gain Kp_ν0 and an initial integral gain Ki_ν0 of the rotating speed control loop 31 based upon the initial estimated torque constant {circumflex over (K)}t0 and the initial estimated inertia Ĵ0, and then controls the rotating speed control loop 31 with the initial proportional gain Kp_ν0 and the initial integral gain Ki_ν0.


In addition, the control module 1 measures the q-axis component iq of the output current which corresponds to the predetermined angular velocity ω1. Based upon the predetermined angular velocity ω1 and the q-axis component iq of the output current, the torque-constant estimating unit 13 computes the estimated torque constant {circumflex over (K)}t, and the friction-coefficient estimating unit 15 computes the estimated friction coefficient {circumflex over (B)}. Furthermore, the inertia estimating unit 16 computes the estimated inertia Ĵ using curve fitting based upon a plurality of angular velocity values and the estimated friction coefficient {circumflex over (B)}.


Finally, the second calculator 172 computes a proportional gain Kp_ν and an integral gain Ki_ν for controlling the rotating speed control loop 31 based upon the estimated torque constant {circumflex over (K)}t and the estimated friction coefficient {circumflex over (B)}.


Referring to FIGS. 1 and 5-7, the method implemented by the system 100 for estimating the operation parameters of the servomotor 4 has the following steps. It should be noted again that the d-axis component i*d of the current signal is set as zero (i*d=0) throughout the procedure of this embodiment.


In duration t0-t1 (step S1), the current configuring unit 11 of the control module 1 outputs the q-axis component i*q of the current signal to the current control loop 32 to enable the current control loop 32 to output the q-axis component iq of the output current to the servomotor 4. In step S1, the q-axis component i*q of the current signal is equal to i1 (i*q=i1).


The current control loop 32 drives the servomotor 4 to rotate stably at the initial angular velocity ω0 by limiting the integrated value of the difference between the q-axis component i*q of the current signal and the q-axis component iq of the output current. When the servomotor 4 reaches the initial angular velocity ω0 at instant t1, the q-axis component iq of the output current is equal to i2 (iq=i2).


In duration t1-t2 (step S2), the initial-voltage configuring unit 12 computes d- and q-axis components νd0 and νq0 of the initial voltage when the servomotor 4 rotates at the initial angular velocity ω0. The d- and q-axis components νd0 and νq0 of the initial voltage is computed based upon:

νd0=−ω0×P×Lq×iq, and
νq00×P×Ld×id0×P×λ,

where Ld and Lq are respectively d- and q-axis components of inductance, P are pole pair of servomotor, and λ is a physical quantity of flux linkage. Reference may be made to “Permanent Magnet Synchronous and Brushless DC Motor Drives,” 2010 (Ch. 3, pages 227-233) for calculation of the physical quantity of the flux linkage.


In duration t2-t3 (step S3), the initial-voltage configuring unit 12 outputs the initial voltage having the d- and q-axis components νd0 and νq0 to the current control loop 32, so that the servomotor 4 is accelerated by feed-forward control. As a result, the q-axis component iq of the output current follows the q-axis component i*q of the current signal. When the q-axis component iq of the output current reaches the q-axis component i*q of the current signal, the control module 1 commands the current control loop 32 to relax the limitation of the integrated value, so as to accelerate the servomotor 4 to achieve the predetermined angular velocity ω1 at instant t3.


In duration t3-t4 (step S4), the servomotor 4 stably rotates at the predetermined angular velocity ω1, and the torque-constant estimating unit 13 computes the initial estimated torque constant {circumflex over (K)}t0 based upon









K
^


t





0


=


3
2

·


v
q

ω



,





where ω is the angular velocity value of the actual angular velocity of the servomotor 4. In the following, the initial-inertia estimating unit 14 computes the initial estimated inertia Ĵ0 based upon









J
^

0

=




K
^


t





0


×

i
1


α


,





where α is a current angular acceleration of the servomotor 4 accelerating from the initial angular velocity ω0 to the predetermined angular velocity ω1, and i1 is the value at which the q-axis component i*q of the current signal is set (i*q=i1). Next, the current configuring unit 11 outputs to the current control loop 32 the current signal with the q-axis component i*q equal to zero (i*q=0), so that the rotating speed control loop 31 takes over the controlling of the servomotor 4 from the current control loop 32.


Then, the first calculator 171 computes the initial proportional gain Kp_ν0 based upon Kp_ν0=2·ων·J0 and the initial integral gain Ki_ν0 based upon Ki_ν0ν2·J0. Following the computation of the initial proportional gain Kp_ν0 and the initial integral gain Ki_ν0, the control module 1 controls the rotating speed control loop 31 with the initial proportional gain Kp_ν0 and the initial integral gain Ki_ν0. It is worth noting that in FIG. 5, the angular velocity value of the actual angular velocity ω of the servomotor 4 decreases slightly at the beginning of the duration t3-t4. The decrease of the angular velocity value of the actual angular velocity ω is attributed to the q-axis component i*q of the current signal being forced to zero (i*q=0) when the rotating speed control loop 31 takes over control of the servomotor 4 from the current control loop 32. However, the angular velocity value of the actual angular velocity ω recovers eventually to the predetermined angular velocity ω1 after the rotating speed control loop 31 controls the servomotor 4 with the initial proportional gain Kp_ν0 and the initial integral gain Ki_ν0.


Furthermore, at the end of the duration t3-t4 (step S5), the torque-constant estimating unit 13 computes the estimated torque constant {circumflex over (K)}t of the servomotor 4 based upon









K
^

t

=

1.5
×



v
q

-


i
3

·

r
s




ω
1




,





and the friction-coefficient estimating unit 15 computes the estimated friction coefficient {circumflex over (B)} of the servomotor 4 based upon








B
^

=




K
^

t

·

i
3



ω
1



,





where rs is a resistance value of the servomotor 4, and i3 is the q-axis component iq of the output current measured when the servomotor rotates 4 at the predetermined angular velocity ω1 in the duration t3-t4.


Finally, in duration t4-t7 (step S6), the control module 1 deactivates the servomotor 4 so as to make the servomotor 4 decelerate for computing the estimated inertia Ĵ. Referring to FIG. 6, when the servomotor 4 decelerates to an angular velocity value ω2 between ω1 and ω0, the inertia estimating unit 16 samples a plurality of angular velocity values ωd1 to ωdn during deceleration of the servomotor 4, i.e., in duration t5-t6, and computes the estimated inertia Ĵ using curve fitting.


Specifically, the estimated inertia Ĵ is computed based upon








J
^

=


B
^

N


,





where N is a constant associated with time solved by the curve fitting with an exponential function ω(t)=M·eN·t, and M is a constant associated with the angular velocity of the servomotor 4 solved by the curve fitting with the exponential function.


Subsequently, the second calculator 172 computes the proportional gain based upon Kp_νν·Ĵ and the integral gain based upon Ki_νν·{circumflex over (B)}, and controls the rotating speed control loop 31 with the proportional gain Kp_ν and the integral gain Ki_ν. Therefore, the rotating speed control loop 31 is capable of controlling the servomotor 4 to stably operate.


Referring to FIG. 8, a result of an experiment according to another embodiment is illustrated. The result shows that, by the method of this disclosure, the estimated torque constant is computed as








K
^

t

=

4.78
×

10

-
1




(


N
·
m

A

)







during acceleration of the servomotor 4, the initial estimated inertia is computed as Ĵ0=1.4×10−3 (kg·m2) when the servomotor 4 rotates substantially at 1500 rpm, the estimated friction coefficient is computed as







B
^

=

2.45
×

10

-
3




(


N
·
m


rad


/


sec


)







during deceleration of the servomotor 4, and the estimated inertia is computed as Ĵ=3.44×10−4 (kg·m2) before the servomotor 4 comes to a stop. The duration for estimating the operation parameters by the method of this disclosure is only about 1.4 seconds.


Referring to Table 1 below, an error between each of the operation parameters estimated by the method of this disclosure and manual setting value is shown. The error of the estimated inertia Ĵ is 5.0%. The error of the estimated friction coefficient {circumflex over (B)} is roughly 5.1%. The error of the estimated torque constant {circumflex over (K)}t is roughly 1.5%.












TABLE 1






Manual





setting value
Estimation
Error







Inertia
3.28 × 10−4
3.44 × 104
5.0%


(kg · m2)















Friction




coefficient





(


N
·
m


rad
/
sec


)









2.33 × 10−3
2.45 × 10−3
5.1%












Torque




constant





(


N
·
m

A

)









4.86 × 10−1
4.78 × 10−1
1.5%









By the method of this disclosure, the system 100 is capable of estimating the operation parameters of the servomotor 4 and computing the proportional gain Kp_ν and the integral gain Ki_ν according to the operation parameters for automatically controlling the servomotor 4 within about 1.4 seconds.


To sum up, by limiting the integrated value of the difference between the current value of the current signal i* and the current value of the output current, operation errors of the servomotor 4 are reduced so that the servomotor 4 controlled by the system 100 is capable of stable operation. Moreover, by the method of this disclosure, the operation parameters, such as the estimated inertia Ĵ, the estimated friction coefficient {circumflex over (B)} and the estimated torque constant {circumflex over (K)}t, are automatically, precisely and rapidly computed during operation of the servomotor 4. So-called dynamic performance, i.e. automatically and rapidly tuning the operation parameters for control of the servomotor 4, is achieved.


In the description above, for the purposes of explanation, numerous specific details have been set forth in order to provide a thorough understanding of the embodiment. It will be apparent, however, to one skilled in the art, that one or more other embodiments may be practiced without some of these specific details. It should also be appreciated that reference throughout this specification to “one embodiment,” “an embodiment,” an embodiment with an indication of an ordinal number and so forth means that a particular feature, structure, or characteristic may be included in the practice of the disclosure. It should be further appreciated that in the description, various features are sometimes grouped together in a single embodiment, figure, or description thereof for the purpose of streamlining the disclosure and aiding in the understanding of various inventive aspects.


While the disclosure has been described in connection with what is considered the exemplary embodiment, it is understood that this disclosure is not limited to the disclosed embodiment but is intended to cover various arrangements included within the spirit and scope of the broadest interpretation so as to encompass all such modifications and equivalent arrangements.

Claims
  • 1. A method for estimating operation parameters of a servomotor, the method to be implemented by a system that includes a current control loop for outputting an output current to the servomotor, and a control module for controlling the current control loop, the method comprising the steps of: a) outputting, by the control module, a current signal to the current control loop to enable the current control loop to output the output current to the servomotor;b) driving, by the current control loop, the servomotor to rotate stably at an initial angular velocity by limiting integrated value of a difference between a current value of the current signal and a current value of the output current;c) computing, by the control module, d- and q-axis components of an initial voltage when the servomotor rotates at the initial angular velocity;d) outputting, by the control module, the initial voltage having the d- and q-axis components to the current control loop for accelerating the servomotor from the initial angular velocity to a predetermined angular velocity by feed-forward control; ande) after the servomotor rotates at the predetermined angular velocity, computing, by the control module, at least one operation parameter of the servomotor.
  • 2. The method of claim 1, the system further including a rotating speed control loop that is controlled by the control module to drive the servomotor according to an angular velocity signal, wherein, in step c), the control module is configured to compute the d- and q-axis components of the initial voltage based upon: νd0=−ω0×P×Lq×iq, andνq0=ω0×P×Ld×id+ω0×P×λ,
  • 3. The method of claim 2, wherein: in step d), when the q-axis component of the output current reaches the q-axis component of the current signal, the control module commands the current control loop to relax the limitation of the integrated value, so as to accelerate the servomotor to achieve the predetermined angular velocity;in step e), the control module computes an estimated friction coefficient when the servomotor rotates at the predetermined angular velocity.
  • 4. The method of claim 3, wherein step e) includes the sub-steps of: when the servomotor rotates at the predetermined angular velocity ω1, computing an initial estimated torque constant based upon
  • 5. The method of claim 4, wherein step e) further includes the sub-steps of: deactivating the servomotor so as to make the servomotor decelerate;sampling a plurality of angular velocity values during deceleration of the servomotor; andcomputing an estimated inertia using curve fitting based on the angular velocity values and the estimated friction coefficient.
  • 6. The method of claim 5, wherein, in step e), the control module is configured to compute an estimated torque constant {circumflex over (K)}t based upon
  • 7. The method of claim 6, further comprising the steps of computing a proportional gain based upon Kp_ν=ων·Ĵ and an integral gain based upon Ki_ν=ων·{circumflex over (B)}, and controlling the rotating speed control loop with the proportional gain Kp_ν and the integral gain Ki_ν.
  • 8. A system for estimating operation parameters of a servomotor, the system comprising: a current control loop configured to output an output current to the servomotor; anda control module configured to control said current control loop, and being operable to output a current signal to said current control loop to enable said current control loop to output the output current to the servomotor and to drive the servomotor to rotate stably at an initial angular velocity by limiting integrated value of a difference between a current value of the current signal and a current value of the output current,compute d- and q-axis components of an initial voltage when the servomotor rotates at the initial angular velocity,output the d- and q-axis components of the initial voltage to said current control loop for accelerating the servomotor from the initial angular velocity to a predetermined angular velocity by feed-forward control, andcompute at least one operation parameter of the servomotor after the servomotor rotates at the predetermined angular velocity.
  • 9. The system of claim 8, further comprising a rotating speed control loop configured to be controlled by said control module to drive the servomotor according to rotating speed of the servomotor, wherein said control module is configured to compute the d- and q-axis components of the initial voltage based upon: νd0=−ω0×P×Lq×iq, andνq0=ω0×P×Ld×id+ω0×P×λ, where νd0 and νq0 are respectively the d- and q-axis components of the initial voltage, Ld and Lq are respectively d- and q-axis components of inductance, ω0 is the initial angular velocity, P are pole pair of servomotor, id and iq are respectively d- and q-axis components of the output current, and λ is a physical quantity of flux linkage;wherein said current control loop is configured to output the output current having the q-axis component that follows a q-axis component of the current signal.
  • 10. The system of claim 9, wherein said control module includes a friction-coefficient estimating unit configured to: when the q-axis component of the output current reaches the q-axis component of the current signal, command said current control loop to re lax the limitation of the integrated value, so as to accelerate the servomotor to achieve the predetermined angular velocity; andcompute an estimated friction coefficient when the servomotor rotates at the predetermined angular velocity.
  • 11. The system of claim 10, wherein said control module includes: a current configuring unit configured to output to said current control loop the current signal with the q-axis component equal to 0;a torque-constant estimating unit configured to compute an initial estimated torque constant when the servomotor rotates at the predetermined angular velocity;an initial-inertia estimating unit configured to compute an initial inertia based on the initial estimated torque constant when the servomotor rotates at the predetermined angular velocity; anda calculator configured to compute an initial proportional gain and an initial integral gain based on the initial inertia, and to control said rotating speed control loop with the initial proportional gain and the initial integral gain.
  • 12. The system of claim 11, wherein: said torque-constant estimating unit is configured to compute the initial estimated torque constant based upon
  • 13. The system of claim 11, wherein said control module further includes an inertia estimating unit configured to: deactivate the servomotor so as to make the servomotor decelerate;sample a plurality of angular velocity values during deceleration of the servomotor; andcompute an estimated inertia using curve fitting based on the angular velocity values and the estimated friction coefficient.
  • 14. The system of claim 13, wherein said control module is further operable to: compute an estimated torque constant {circumflex over (K)}t based upon
  • 15. The system of claim 14, wherein said control module is further operable to compute a proportional gain based upon the estimated inertia, to compute an integral gain based upon the estimated friction coefficient, and to control said rotating speed control loop with the proportional gain and the integral gain.
  • 16. The system of claim 15, wherein said control module is operable to compute the proportional gain based upon Kp_ν=ων·Ĵ, and to compute the integral gain based upon Ki_ν=ων·{circumflex over (B)}.
Priority Claims (1)
Number Date Country Kind
2015 1 0500888 Aug 2015 CN national
US Referenced Citations (25)
Number Name Date Kind
6940251 Sarlioglu Sep 2005 B1
7088077 Nagashima Aug 2006 B2
7211984 Patel May 2007 B2
7339344 Borisavljevic Mar 2008 B2
7405531 Khatib Jul 2008 B2
7860624 Kubota Dec 2010 B2
7986118 Yoshikawa Jul 2011 B2
8207701 Tang Jun 2012 B2
8232758 Okita Jul 2012 B2
8519649 Taniguchi Aug 2013 B2
8860355 Ueda Oct 2014 B2
8872463 Sonoda Oct 2014 B2
20050137739 Yoshida Jun 2005 A1
20060069481 Kubota Mar 2006 A1
20060097688 Patel May 2006 A1
20060250101 Khatib Nov 2006 A1
20080067960 Maeda Mar 2008 A1
20080258670 Yoshikawa Oct 2008 A1
20100000815 Tang Jan 2010 A1
20110050146 Okita Mar 2011 A1
20110285337 Taniguchi Nov 2011 A1
20130026963 Sonoda Jan 2013 A1
20130063068 Ueda Mar 2013 A1
20140265952 Katariya Sep 2014 A1
20140368137 Taniguchi Dec 2014 A1
Related Publications (1)
Number Date Country
20170045870 A1 Feb 2017 US