# US 11,561,530 B2 · Method for predicting and compensating frictions of feed system, and computer readable storage

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 11,561,530 B2
- Document ID: US11561530B2
- Status: Granted
- Kind: B2
- Application number: 17/031,235
- Filed: 2020-09-24
- Published: 2021-12-02
- Granted: 2023-01-24
- Earliest claimed: 2020-05-27
- Assignees: Delta Electronics, Inc.
- Applicants: Delta Electronics, Inc.
- Inventors: Chia-Yen Lee; Yu-Hsiang Cheng; Chia-Hui Chen; Ping-Chun Tsai
- Web page: https://patentgrep.com/patent/US11561530B2

## CPC

- G05B 19/404: characterised by control arrangements for compensation, e.g. for backlash, overshoot, tool offset, tool wear, temperature, machine construction errors, load, inertia (G05B19/19, G05B19/41 take precedence)
- G05B 19/4163: {Adaptive control of feed or cutting velocity (without NC B23Q15/12)}
- G05B 19/414: Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller
- G05B 23/0283: {Predictive maintenance, e.g. involving the monitoring of a system and, based on the monitoring results, taking decisions on the maintenance schedule of the monitored system; Estimating remaining useful life [RUL] (preventive maintenance, i.e. planning maintenance according to the available resources without monitoring the system G06Q10/06)}
- G05B 2219/41161: Adaptive friction compensation
- G05B: CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS (systems for controlling or regulating non-electric variables G05D; systems for regulating electric or magnetic variables G05F; control devices or systems insofar as characterised by mechanical features only G05G)

## Abstract

A method for predicting and compensating frictions of a feed system includes following steps: constantly obtaining current signals and angle-position signals of a motor by a motor driver of a feed system after being activated; calculating frictions of the motor upon each rotating position according to the obtained current signals and angle-position signals and generating multiple records of friction data; creating a friction model according to the multiple records of friction data and the angle-position signals each respectively corresponding to each record of friction data with respect to each rotating position; importing current angle-position signal of the motor to the friction model for predicting a predicted friction; calculating a compensation current based on the predicted friction; and, controlling the motor driver to additionally provide the compensation current to the motor for conquering an upcoming friction of the feed system approximate to the predicted friction.

## Claims

### Claim 1

A method for predicting and compensating frictions of a feed system, the feed system including at least one mechanical component, a motor guiding the mechanical component to move, and a motor driver electrically connected with the motor for controlling the motor to rotate, and the method comprising following steps:
a) continually obtaining current signals and angle-position signals of the motor by the motor driver while the motor rotates;
b) estimating frictions of the motor related to each rotation position of the motor according to the current signals and the angle-position signals, for generating multiple records of friction data;
c) performing a calculation, based on the multiple records of friction data and the angle-position signals respectively corresponding to each of the multiple records of friction data, for creating a friction model with respect to the motor while a commutation angle of a ballbar trace occurs at a commutated portion;
d) importing a current record of each angle-position signal of the motor to the friction model for predicting a static friction of the feed system;
e) calculating a compensation current based on the static friction generated by the mechanical component of the feed system; and
f) controlling the motor driver to additionally apply the compensation current to the motor so that both a quadrant error of the motor and the commutation angle of the ballbar trace at the commutated portion are reduced.

### Claim 2 (depends on 1)

The method as claimed in claim 1, further comprising following steps:
g) determining whether the feed system is turned off or not after the step f); and
h) continually executing the step d) to the step f) before the feed system is turned off.

### Claim 3 (depends on 1)

The method as claimed in claim 1, wherein the step a) is to control, by the motor driver, the motor to perform a ballbar testing, and to obtain the current signals and the angle-position signals of the motor in an order as the motor rotates to each the rotation position.

### Claim 4 (depends on 1)

The method as claimed in claim 1, wherein the step b) is to calculate the frictions of the motor related to each the rotation position of the motor according to a formula 1, the formula 1 is: Cf=Cm−J×α−ω×B−Cg, wherein Cf indicates the friction of the feed system, Cm indicates the current signal, J indicates a rotating inertia of the motor, α indicates an angular acceleration of the motor, ω indicates an angular velocity of the motor, B indicates a viscosity friction coefficient, and Cg indicates a constant.

### Claim 5 (depends on 4)

The method as claimed in claim 4, wherein the step b) further executes a formula 2, the formula 2 is: Cm=J×α+sgn(ω)×fc+ω×B+Cg, wherein sgn( ) indicates forward/reverse information of the motor, fc indicates a coulomb friction, and the motor driver in the step b) calculates the angular acceleration and the angular velocity of the motor based on the angle-position signals and corresponding time points of the motor each respectively relates to each the rotation position, and calculates the rotating inertia, the viscosity friction coefficient, the coulomb friction, and the constant through performing a least squares method.

### Claim 6 (depends on 1)

The method as claimed in claim 1, wherein the step c) is to create the friction model according to a formula 3, the formula 3 is:
f
⁡
(
x
)
=
∑
i
=
1
k
u
⁡
(
x
-
c
i
)
⁢
a
i
(
1
-
e
b
i
(
x
-
c
i
)
)
+
d
;
u
⁡
(
x
-
c
i
)
=
{
1
,
x
≥
c
i
0
,
x
<
c
i
,
wherein u indicates a step function ai indicates a first model parameter, bi indicates a second model parameter, ci indicates a third model parameter, and d indicates a fourth model parameter.

### Claim 7 (depends on 6)

The method as claimed in claim 6, wherein the step c) is to perform a curve fitting calculation, based on the formula 3, to the frictions of the motor related to each the rotation position of the motor for obtaining the first model parameter, the second model parameter, the third model parameter, and the fourth model parameter respectively.

### Claim 8 (depends on 1)

The method as claimed in claim 1, wherein the friction model is an estimated friction model, and the method further comprises following steps:
g) re-estimating the frictions of the motor related to each the rotation position of the motor, for generating multiple re-estimated records of friction data;
h) performing a calculation, according to the multiple re-estimated records of friction data and the multiple angle-position signals respectively corresponding to each of the re-estimated records of friction data, for creating a second friction model;
i) comparing the estimated friction model with the second friction model;
j) abandoning the second friction model if a difference between the estimated friction model and the second friction model is smaller than a threshold;
k) updating the estimated friction model based on the second friction model if the difference between the estimated friction model and the second friction model is not smaller than the threshold; and
l) re-executing the step g) to the step k) according to the estimated friction model before the feed system is turned off.

### Claim 9 (depends on 8)

The method as claimed in claim 8, wherein the step m) is to calculate relative errors between multiple model parameters of the estimated friction model and multiple model parameters of the second friction model, and to determine whether each of the relative errors is respectively smaller than the threshold.

### Claim 10 (depends on 1)

The method as claimed in claim 1, wherein the friction model is a reference friction model, and the method further comprises following steps:
g) determining whether an operation time of the feed system is beyond a checking period;
h) re-executing the step d) to the step f) before the operation time is determined beyond the checking period;
i) re-estimating the frictions of the motor related to each the rotation position of the motor and generating multiple re-estimated records of friction data when the operation time is determined beyond the checking period;
j) performing a calculation, according to the multiple re-estimated records of friction data and the multiple angle-position signals respectively corresponding to each of the re-estimated records of friction data, for creating a test friction model;
k) comparing the reference friction model with the test friction model;
l) determining that the feed system is in a healthy status if a difference between the reference friction model and the test friction model is smaller than a threshold; and
m) determining that the feed system is in an unhealthy status and sending an alarm signal if the difference between the reference friction model and the test friction model is not smaller than the threshold.

### Claim 11 (depends on 10)

The method as claimed in claim 10, wherein the step k) is to calculate relative errors between multiple model parameters of the reference friction model and multiple model parameters of the test friction model, and to determine whether each of the relative errors is respectively smaller than the threshold.

### Claim 12 (depends on 11)

The method as claimed in claim 11, wherein the checking period comprises a time period of two to four weeks.

### Claim 13

A non-transitory computer readable storage, recorded with computer executable program codes for implementing following steps after the computer executable program codes are executed:
a) continually obtaining, by a motor driver of a feed system, current signals and angle-position signals of a motor of the feed system while the motor rotates;
b) estimating frictions of the motor related to each rotation position of the motor according to the current signals and the angle-position signals, for generating multiple records of friction data;
c) performing a calculation, based on the multiple records of friction data and the angle-position signals respectively corresponding to each of the multiple records of friction data, for creating a friction model with respect to the motor while a commutation angle of a ballbar trace occurs at a commutated portion;
d) importing a current record of the angle-position signal of the motor to the friction model for predicting a static friction of the feed system;
e) calculating a compensation current based on the static friction generated by the mechanical component of the feed system; and
f) controlling the motor driver to additionally apply the compensation current to the motor so that both a quadrant error of the motor and the commutation angle of the ballbar trace at the commutated portion are reduced.

### Claim 14 (depends on 13)

The non-transitory computer readable storage as claimed in claim 13, wherein the computer executable program codes are executed by the motor driver of the feed system, or executed by a controller, a personal computer, a laptop, or a server wired or wirelessly connected to the feed system.
