A Piezoelectric Motor Energy-Saving Control Method Based on an Iterative Learning
20230055214 · 2023-02-23
Inventors
- Yunshan Wei (Guangzhou, CN)
- Yingyu Chen (Guangzhou, CN)
- Zhijia Zhao (Guangzhou, CN)
- Qingyuan Xu (Guangzhou, IN)
- Kai Wan (Guangzhou, CN)
Cpc classification
H02N2/0075
ELECTRICITY
International classification
Abstract
An iterative learning-based energy-saving control method for a piezoelectric motor, comprising: setting a sampling period of a piezoelectric motor (101); obtaining an expected output trajectory of the piezoelectric motor, and performing sampling according to the sampling period to obtain a sampled expected output sequence (102); setting an initial control input signal of the piezoelectric motor (103); obtaining an actual control input signal according to a mapping relation of the initial control input signal, and transmitting the actual control input signal to the piezoelectric motor to obtain an actual output position (104); obtaining a mapping relation of the output position of the piezoelectric motor according to the actual output position, and sampling the mapping relation according to the sampling period to obtain a sampled actual output sequence (105); calculating the difference between the sampled expected output sequence and the sampled actual output sequence to obtain a sampling error function sequence (106); obtaining an iterative learning gain parameter by calculation according to a preset convergence condition (107); and obtaining, by calculation according to the sampling error function sequence and the iterative learning gain parameter, an iterative input voltage required by iteration of the piezoelectric motor, and transmitting the iterative input voltage to the piezoelectric motor (108).
Claims
1: A piezoelectric motor energy-saving control method based on an iterative learning, characterized in that, comprising: setting a sampling period of a piezoelectric motor; obtaining an expected output trajectory of the piezoelectric motor, and performing a sampling according to the sampling period to obtain a sampled expected output sequence; setting an initial control input signal of the piezoelectric motor; obtaining an actual control input signal according to a mapping relationship of the initial control input signal, and transmitting the actual control input signal to the piezoelectric motor to obtain an actual output position of the piezoelectric motor; obtaining a mapping relationship of an output position of the piezoelectric motor according to the actual output position, and performing a sampling on the mapping relationship of the output position of the piezoelectric motor according to the sampling period to obtain a sampled actual output sequence; performing a difference calculation between the sampled expected output sequence and the sampled actual output sequence to obtain a sampling error function sequence; calculating an iterative learning gain parameter according to a preset convergence condition; calculating an iterative input voltage required by the piezoelectric motor for performing iterations according to the sampling error function sequence and the iterative learning gain parameter, and transmitting the iterative input voltage to the piezoelectric motor.
2: The piezoelectric motor energy-saving control method based on an iterative learning according to claim 1, characterized in that, after transmitting the iterative input voltage to the piezoelectric motor, the method further comprises: repeating steps of the iterations until the sampling error function sequence is smaller than a preset allowable error value range, stopping the iterations.
3: The piezoelectric motor energy-saving control method based on an iterative learning according to claim 1, characterized in that, the specific step of setting the sampling period of the piezoelectric motor is: setting the sampling period T.sub.s of the piezoelectric motor, the sampled discrete sequence is
4: The piezoelectric motor energy-saving control method based on an iterative learning according to claim 3, characterized in that, the step of obtaining an expected output trajectory of the piezoelectric motor, and performing a sampling according to the sampling period to obtain a sampled expected output sequence comprises: obtaining the expected output trajectory y.sub.d(t), performing the sampling according to the sampling period T.sub.s to obtain the sampled expected output sequence y.sub.d(n.Math.T.sub.s),
5: The piezoelectric motor energy-saving control method based on an iterative learning according to claim 4, characterized in that, the specific step of setting the initial control input signal of the piezoelectric motor comprises: setting an initial continuous input signal of the piezoelectric motor as ũ.sub.0(t), which satisfies:
6: The piezoelectric motor energy-saving control method based on an iterative learning according to claim 5, characterized in that, the mapping relationship of the initial control input signal is:
7: The piezoelectric motor energy-saving control method based on an iterative learning according to claim 6, characterized in that, the mapping relationship of the output position of the piezoelectric motor is:
8: The piezoelectric motor energy-saving control method based on an iterative learning according to claim 7, characterized in that, a specific algorithm for performing the difference calculation between the sampled expected output sequence and the sampled actual output sequence is: ē.sub.k(n)=ŷ.sub.d(n)−ŷ.sub.k(n); then the sampling error function sequence is:
ê.sub.k(T)=y.sub.d(T)−{tilde over (y)}.sub.k(T)−∫.sub.T.sub.
9: The piezoelectric motor energy-saving control method based on an iterative learning according to claim 8, characterized in that, the preset convergence condition is:
∥I−LCB∥≤ρ<1.
10: The piezoelectric motor energy-saving control method based on an iterative learning according to claim 9, characterized in that, the steps of calculating an iterative input voltage required by the piezoelectric motor for performing iterations according to the sampling error function sequence and the iterative learning gain parameter, and transmitting the iterative input voltage to the piezoelectric motor comprise: according to the sampling error function sequence and the iterative learning gain parameter, an iterative learning control law is set as:
11: The piezoelectric motor energy-saving control method based on an iterative learning according to claim 2, characterized in that, the specific step of setting the sampling period of the piezoelectric motor is: setting the sampling period T.sub.s of the piezoelectric motor, the sampled discrete sequence is
Description
DESCRIPTION OF FIGURES
[0030]
[0031]
[0032]
[0033]
DESCRIPTION
[0034] The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the accompanying figures in the embodiments of the present invention. Obviously, the described embodiments are only some, but not all, embodiments of the present invention. Based on the embodiments of the present invention, all other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the protection scope of the present invention.
[0035] Referring to
[0036] Step 101, setting a sampling period of a piezoelectric motor;
[0037] Step 102, obtaining an expected output trajectory of the piezoelectric motor, and performing a sampling according to the sampling period to obtain a sampled expected output sequence;
[0038] Step 103, setting an initial control input signal of the piezoelectric motor;
[0039] Step 104, obtaining an actual control input signal according to a mapping relationship of the initial control input signal, and transmitting the actual control input signal to the piezoelectric motor to obtain an actual output position of the piezoelectric motor;
[0040] Step 105, obtaining a mapping relationship of an output position of the piezoelectric motor according to the actual output position, and performing a sampling on the mapping relationship of the output position of the piezoelectric motor according to the sampling period to obtain a sampled actual output sequence;
[0041] Step 106, performing a difference calculation between the sampled expected output sequence and the sampled actual output sequence to obtain a sampling error function sequence;
[0042] Step 107, calculating an iterative learning gain parameter according to a preset convergence condition;
[0043] Step 108, calculating an iterative input voltage required by the piezoelectric motor for performing iterations according to the sampling error function sequence and the iterative learning gain parameter, and transmitting the iterative input voltage to the piezoelectric motor.
[0044] Specifically, a model of a type of piezoelectric motors is as follows:
[0045] wherein x.sub.1,k(t) and x.sub.2,k(t) are the motor position and the motor speed, y.sub.k(t) is the motor position.
[0046] The piezoelectric motor model may be modeled as the following multiple-input multiple-output continuous system:
[0047] and a linear matrix of the system is:
[0048] As shown in the modeled system above, the controlled system operates in a time interval with an upper time limit of T, and it may be regarded as two systems on the time axis. The first system is controlled, its running time length k is iteratively variable, and the running time interval is [0, T.sub.k]. The second system control input is 0, its operating interval is (T.sub.k, T], which is easy to know within this time interval y.sub.k(t)=Ce.sup.Atx.sub.k(T.sub.k). As shown above, in order to make the system reduce the energy consumption of the controlled system on the basis of accurate tracking, it is usually required that each iteration is T.sub.k≤T, and the smaller T.sub.k, the better the energy saving effect.
[0049] The tracking error of the variable trajectory length system may be expressed as:
e.sub.k(t)=y.sub.d(t)−y.sub.k(t).
[0050] In order to facilitate the design of the algorithm, we construct a virtual system as follows:
[0051] The virtual system is an expansion system of the original system, which unifies the running time of the original segmented system as t∈[0,T]. The mapping relationship between the input ũ.sub.k(t) of the virtual system and the input u.sub.k(t) of the original system is:
ũ.sub.k=u.sub.k(t),t∈[0,T.sub.k],
[0052] then when t∈[0, T.sub.k], the mapping relationships between the state, output and error of the virtual system and the original system are:
[0053] The implementation of the algorithm comprises the following steps:
[0054] Step 101: setting a sampling period T.sub.s of a controlled continuous system, the sampled discrete sequence is
[0055] then a corresponding discrete time series is:
[0056] Step 102: obtaining the expected output trajectory y.sub.d(t), performing the sampling according to the sampling period T.sub.s to obtain the sampled expected output sequence y.sub.d(n.Math.T.sub.s),
[0057] and defining the sequence as ŷ.sub.d(n);
[0058] Step 103: setting an initial continuous input signal of the controlled system as ũ.sub.0(t), which satisfies:
[0059] Step 104: according to the following mapping relationship:
[0060] Using the control signal ũ.sub.k(t) to generate the real control signal u.sub.k(t) and inputting the signal u.sub.k(t) to the actual controlled system;
[0061] Step 105: outputting y.sub.k(t) from the actual controlled system, and its mapping relationship with the output {tilde over (y)}.sub.k(t) of the extended system:
[0062] performing the sampling on {tilde over (y)}.sub.k(t) according to the sampling period T.sub.s to obtain the output sequence {tilde over (y)}.sub.k(n.Math.T.sub.s),
and defining the sequence as ŷ.sub.k(n), specifically as follows:
[0063] Step 106: according to the sampling output sequence ŷ.sub.k(n), combined with the expected output trajectory sequence ŷ.sub.d(n), we define the error sequence
ē.sub.k(n)=ŷ.sub.d(n)−ŷ.sub.k(n),
[0064] the sampling error function sequence for calculating the extended system is
[0065] with additional definition
ê.sub.k(T)=y.sub.d(T)−{tilde over (y)}.sub.k(T)−∫.sub.T.sub.
[0066] Step 107: calculating an iterative learning gain L, which is required to satisfy the following convergence conditions:
∥I−LCB∥≤ρ<1.
[0067] Step 108: according to the sampling error function sequence and the iterative learning gain, setting an iterative learning control law as follows:
[0068] wherein ũ.sub.k+1(t) represents a control input signal of the extended system in a k+1-th iteration, ũ.sub.k(t) represents a control input signal of the extended system in a k-th iteration, and an derivative {dot over (ê)}.sub.k(n) of the sampling error function sequence may be approximated as follows:
[0069] according to the iterative learning control law, updating the control input signal ũ.sub.k+1(t) of a next iteration, and ũ.sub.k+1(t) satisfies:
[0070] In a preferred embodiment, after the transmitting the iterative input voltage to the piezoelectric motor, the method further comprises: step 109, performing the iterative steps 104 to 108 repeatedly until the sampling error function sequence is smaller than a preset tolerance value range, and stopping the iterations.
[0071] Please refer to
[0072] The expected trajectory is:
[0073] x.sub.1,k(t) and x.sub.2,k(t) are the motor position and motor speed respectively, setting the motor position as 0 m and the motor speed as 0 m/s at the initial moment of each iteration,
C=[0 1]. The sampling period T.sub.s is 0.01 s, the time period T is 1 s, and according to the convergence condition, calculating the iterative learning gain L to be 0.15, and the algorithm shown in algorithm 107 is used:
∥I−LCB∥≤ρ<1.
[0074] In this application, it may be seen that the error index converges within a finite number of times. As the number of iterations increases, the error index almost completely converges at the 90th iteration, that is, the output trajectory of the motor almost matches the expected output trajectory.
[0075] It may be seen as two systems on the timeline. The first system is controlled, its running time length T.sub.k is iteratively varied, and the running time interval is [0, T.sub.k]. The second system control input is 0 and its operating interval is (T.sub.k, T]. In this embodiment, firstly, it is assumed that the initial state of the motor is static, so the speed is 0 m/s, and according to the algorithm shown in step 101, the sampling period T.sub.s of the controlled continuous system is set; secondly, to obtain the expected output value of the motor sampling, the algorithm used is the algorithm shown in step 102; then, set the initial continuous input signal u.sub.0(t) of the controlled system to 0, and according to the mapping relationship, use the algorithm shown in step 104 to obtain the real control signal input to the actual controlled system, and use the algorithm shown in step 105 to obtain the sampling output sequence of the extended system in this iteration according to the actual system output; then according to the sampling output sequence, use the algorithm shown in step 106 to calculate the sampling error function sequence of the extended system in combination with the sampling period sequence; finally, according to the sampling error function sequence, iterative learning gain and iterative learning control rate, update the control input of the new expansion system in the next iteration and transmit it to the motor control terminal, so that the error index gradually converges. When the running time arrives in (T.sub.k, T], that is, the second system starts to function, the system control input is 0, that is, the system is not under control, but the ideal control input at the corresponding moment may still be calculated according to the iterative learning control law, and finally causes the virtual error {tilde over (e)}.sub.k(t) of the system to converge. According to the expression of the virtual error, it may be seen that the actual error e.sub.k(t) of the system completely converges within the [0, T.sub.k], and within the interval (T.sub.k, T], it converges to ƒ.sub.T.sub.
[0076]
It may be seen from
[0077]
[0078] The algorithm proposed by the invention not only has no limitation of the controlled time interval, but also able to effectively save energy consumption on the basis of precise tracking control, which has high practical application value. The specific idea of the algorithm is to make the controller end the control input in advance at a specific time when it is closer to a target point, letting the robotic arm to reach the target point by inertia. Compared with a control method that relies on motor braking to gradually stop the robotic arm, the former avoids unnecessary energy consumption compared with the latter.
[0079] The specific embodiments described above further describe the purpose, technical solutions and beneficial effects of the present invention in detail. It should be understood that the above descriptions are only specific embodiments of the present invention, and are not intended to limit the protection scope of the present invention. It is particularly pointed out that for those skilled in the art, any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present invention should be included within the protection scope of the present invention.