METHOD FOR IDENTIFYING FRICTION PARAMETER FOR LINEAR MODULE
20170261529 · 2017-09-14
Inventors
- Meng-Shiun TSAI (Chia-Yi County, TW)
- Wei-Hsiang YUAN (New Taipei City, TW)
- Chih-Wei WANG (Taichung City, TW)
- Hong-Wei HUANG (Chia-Yi County, TW)
- Chung-Ching LIU (Chia-Yi County, TW)
Cpc classification
G05B19/404
PHYSICS
International classification
Abstract
A method for identifying friction parameters for a linear module is disclosed. Since an acting interval of a friction is determined by a relative velocity between two contacting surfaces, and when the relative velocity is much greater than a Stribeck velocity, there is only a Coulomb friction and a viscous friction exist between the contacting surfaces, it is possible to use a measured torque signal of this interval to identify a Coulomb friction torque, a the linear module's friction torque, and the linear module's equivalent inertia. When the relative velocity between the two contacting surfaces is smaller than the Stribeck velocity, it is possible to identify a maximum static friction torque and the Stribeck velocity by referring to the three known parameters. Thereby, all the friction parameters can be identified within one reciprocating movement of the linear module, making the method highly feasible in practice.
Claims
1. A method used in a linear module for identifying friction parameters for said linear module, in which the friction parameters T.sub.c is the Coulomb friction torque; σ.sub.2, is the viscous friction coefficient; T.sub.s, is the maximum static friction torque; ω.sub.s is the Stribeck velocity, said linear module being driven by a drive module, said drive module comprising a controller, a driver, a motor with an output shaft and a sensor, said controller having a function of storing, computing and outputting a data and being capable of receiving a position command or a speed command and converting the received said position command or said speed command into a driving signal, said driver being electrically connected to said controller and adapted for receiving said driving signal from said controller and then driving the connected said motor to rotate said output shaft according to said driving signal, said sensor being electrically connected to said motor and adapted for detecting the torque and/or the revolving velocity of said output shaft of said motor and then transmitting the detected said torque and/or said revolving velocity to said controller, the method comprising the steps of: step a), inputting a position command into said controller for causing said controller to drive said driver in driving said motor subject to the inputted said position command so that said output shaft is rotated to drive said drive member in moving said driven member back and forth through one cycle; step b), causing said sensor to output the detected said torque data and/or said revolving velocity data to said controller during movement of said driven member; and step c), causing said controller to enable an arithmetic logic therein for calculating the received said torque data and/or said revolving velocity data to identify said T.sub.c that is the Coulomb friction torque, said σ.sub.2 that is the viscous friction coefficient, said T.sub.s that is the maximum static friction torque, and said ω.sub.s that is the Stribeck velocity.
Description
BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS
[0012]
[0013]
[0014]
[0015]
DETAILED DESCRIPTION OF THE INVENTION
[0016] Referring to
[0017] It is to be noted that, in the present preferred embodiment, the identification method is used in a linear module 10. The linear module 10 is driven by a drive module 20. The drive module 20 comprises a controller 21, a driver 22, a motor 23 with an output shaft (not shown), and a sensor 24. The controller 21 has the function of storing, computing and outputting data, and can receive a position command or a speed command and convert the received position command or said speed command into a driving signal. The driver 22 is electrically connected to the controller 21, and adapted for receiving the driving signal from the controller 21 and driving the connected motor 23 subject to the received driving signal to control the rotation of the output shaft. The sensor 24 is electrically connected to the motor. When detected the torque or the revolving velocity of the output shaft of the motor 23, the sensor 24 outputs the torque data and the revolving velocity data of the motor 23 to the controller 21.
[0018] The linear module 20 is a combination structure in which the inertia does not change with the position. The linear module 20 comprises a drive member 21 and a driven member 22. The drive member 21 is electrically connected to the output shaft of the motor 23. The driven member 22 is mounted at the drive member 21, and can be rotated or horizontally moved relative to the driven member 22. Further, the position command here controls the position of the driven member 22 at every time point,
[0019] In the present preferred embodiment, the linear module 20 is a linear platform 20a. The linear platform 20a comprises a screw rod 21a and a platform 23. The platform 23 is pivotally connected with a screw nut 22a. The screw nut 22a is threaded onto the screw rod 21a, and drivable to carry the platform 23 horizontally upon rotation of the screw rod 21a. The screw rod 21a is regarded as the drive member 21 of the linear module. The combination of the screw nut 22a and the platform 23 is regarded as the driven member 22.
[0020] However, in case of robotic arm, it is not applicable to the present preferred embodiment, because the attitude of the robotic arm will change during movement, this makes the overall inertia of the robotic arm to change with the change of the position.
[0021] In the step a) S1, input a position command into the controller 21, causing the controller 21 to drive the driver 22 in rotating the motor 23 subject to the position command so that the output shaft can drive the drive member 21 to move the driven member 22 Back and forth through one cycle.
[0022] In the step b) S2, causing said sensor 24 to output the detected said torque data and/or said the revolving velocity data to said controller 21 during movement of said driven member 22.
[0023] In the step c) S3, the controller 21 uses an arithmetic logic therein to calculate the torque data and the revolving velocity data of the motor 23, thereby identifying T.sub.c, that is the Coulomb friction torque, σ.sub.2 that is the viscous friction coefficient, T.sub.s that is a maximum static friction torque, and ω.sub.s that is the Stribeck velocity.
[0024] The arithmetic logic is explained hereinafter. A first equation is derived from a LuGre friction model. The first equation is written as
T.sub.f=T.sub.csgn(ω)+(T.sub.s−T.sub.c)e.sup.−(ω/ω.sup.
[0025] With respect to equation (1), please refer to Karl Johan Astrom, Carlos Canudas de Wit. Revisiting the LuGre friction model. IEEE Control Systems Magazine, Institute of Electrical and Electronics Engineers, 2008, 28 (6), pp.101-114.
[0026] T.sub.f is the linear module's friction torque, which represents the torque needed to overcome the friction during the operation of the output shaft of the motor to move the linear module.
[0027] T.sub.c is the Coulomb friction torque, which represents the torque needed to overcome the Coulomb friction between the screw rod and the screw nut block.
[0028] ω is the revolving velocity of the output shaft of the motor, which represents the revolving velocity of the motor measured by the sensor and which is not an identification parameter.
[0029] T.sub.s is the maximum static friction torque, which represents the torque needed to overcome the maximum static friction.
[0030] ω.sub.s is the Stribeck velocity. The Stribeck velocity ω.sub.s is 1.5.
[0031] σ.sub.2 is a viscous friction coefficient.
[0032] Then, a second equation is used to identify the friction parameters. This second equation is a common physical equation. The second equation is
T.sub.m=Jα+T.sub.f, (2)
[0033] With respect to equation (2), please refer to Karl Johan Astrom, Carlos Canudas de Wit. Revisiting the LuGre friction model. IEEE Control Systems Magazine, Institute of Electrical and Electronics Engineers, 2008, 28 (6), pp. 101-114.
[0034] where T.sub.m is the motor's output torque, which represents the output torque of the motor that is measured by the sensor and that is not an identification parameter.
[0035] J is the linear module' equivalent inertia
[0036] α is an angular acceleration of the output shaft of the motor, which is derived from a differential on the motor revolving velocity detected by the sensor and which is not an identification parameter.
[0037] Then by combining the first and second equations, a parametric equation is obtained. The parametric equation is
T.sub.m=Jα+T.sub.csgn(ω)+(T.sub.s−T.sub.c)e.sup.−(ω/ω.sup.
[0038] when, ω is much greater than ω.sub.s the linear module is in the high-speed segment. At this time, (T.sub.s−T.sub.c)e.sup.−(ω/ω.sup.
[0039] After ω is identified, α can be in turn identified by performing ω in differentiation once. At this time, there are two ways to identify J, T.sub.c and σ.sub.2.
[0040] In a first approach, sinusoidal position planning (as shown in
and making Y=AX, where Y is a vector composed of the motor's output torques T.sub.m, A is a matrix composed of the motor output shaft's angular acceleration a and the motor output shaft's angular speed ω, and X is a vector composed of the parameters to be identified. At this time, the previous matrix can be rewritten into:
and by using the least square method, J, T.sub.c and σ.sub.2 can be obtained.
[0041] The second approach is to use trapezoidal position planning (as shown in
so as to derive
After σ.sub.2 and T.sub.c are derived,
can be obtained by using the measuring signals in the high-speed segment (ω is much greater than ω.sub.s) and the parametric equation (3).
[0042] when ω is smaller than ω.sub.s or close to ω.sub.s, the linear module is located in the low-speed segment interval.
[0043] At this time, (T.sub.s−T.sub.c)e.sup.−(ω/ω.sup.
[0044] Since J, T.sub.c and σ.sub.2 have been identified, there are only T.sub.s and ω.sub.s remaining in the parametric equation as unknown parameters. At this time, two ways may be considered, as stated below.
[0045] As a third approach, the unknown parameters and the parameters identified in the first or second approach are separated and their natural logarithms are taken, respectively, so as to make the parametric equation (3) become a linear equation that is written as
ln(T.sub.m−Jα−T.sub.csgn(ω)−σ.sub.2ω)=ln(T.sub.s−T.sub.c)−(ω/ω.sub.s).sup.2sgn(ω)
[0046] p=q−ω.sup.2r, where p=ln(T.sub.m−Jα−T.sub.csgn(ω)−σ.sub.2ω), and q=ln(T.sub.s−T.sub.c), r=1/(ω.sub.s).sup.2. Since p can be determined by substituting the known parameters, and ω can be found through direct measurement, q and r can be easily obtained, and in turn T.sub.s and ω.sub.s can be identified.
[0047] As a forth approach, the parametric equation is first rewritten into: T.sub.m−Jα=(T.sub.s−T.sub.c)e.sup.−(ω/ω.sup.
[0048] To sum up, the disclosed method divides the linear module's moving velocity into a high-speed segment interval and a low-speed segment interval, so that by making the linear module perform only one reciprocating movement, all the relevant parameters can be identified. As compared to the prior art, the present invention makes identification of the parameters much more easier and much more feasible in practice.