Reverse control method for pneumatic position servo system
Technical Field
The invention belongs to the technical field of high-precision position tracking control of a pneumatic system, and relates to a backstepping control method of a pneumatic position servo system.
Background
The pneumatic system takes compressed air as a working medium, is fireproof, explosion-proof and electromagnetic interference resistant, is not influenced by radioactive rays and noise, is insensitive to vibration and impact, has the advantages of long service life, safety, cleanness, high power-to-weight ratio and the like, and is widely applied to various fields.
However, due to the compressibility of the gas, the complex flow characteristics of the gas through the valve port, and the relatively large friction force between the cylinder and the slider, these factors make the high-precision tracking control of the pneumatic position servo system difficult.
Disclosure of Invention
The invention aims to provide a backstepping control method of a pneumatic position servo system, which solves the problem that the tracking control precision of the pneumatic position servo system in the prior art is not high enough.
The technical scheme adopted by the invention is that the method for controlling the backstepping of the pneumatic position servo system is implemented according to the following steps:
step 1, establishing a model of a controlled pneumatic position servo system
The mathematical model of the proportional valve control pneumatic position servo system is as follows (1):
<math>
<mrow>
<mfenced open='{' close=''>
<mtable>
<mtr>
<mtd>
<msub>
<mover>
<mi>m</mi>
<mo>·</mo>
</mover>
<mi>a</mi>
</msub>
<mo>=</mo>
<msub>
<mi>f</mi>
<mi>a</mi>
</msub>
<mrow>
<mo>(</mo>
<mi>u</mi>
<mo>,</mo>
<msub>
<mi>p</mi>
<mi>a</mi>
</msub>
<mo>)</mo>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<msub>
<mover>
<mi>m</mi>
<mo>·</mo>
</mover>
<mi>b</mi>
</msub>
<mo>=</mo>
<msub>
<mi>f</mi>
<mi>b</mi>
</msub>
<mrow>
<mo>(</mo>
<mi>u</mi>
<mo>,</mo>
<msub>
<mi>p</mi>
<mi>b</mi>
</msub>
<mo>)</mo>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mi>KRT</mi>
<msub>
<mover>
<mi>m</mi>
<mo>·</mo>
</mover>
<mi>a</mi>
</msub>
<mo>=</mo>
<mi>K</mi>
<msub>
<mi>p</mi>
<mi>a</mi>
</msub>
<msub>
<mi>A</mi>
<mi>a</mi>
</msub>
<mover>
<mi>y</mi>
<mo>·</mo>
</mover>
<mo>+</mo>
<msub>
<mi>A</mi>
<mi>a</mi>
</msub>
<mrow>
<mo>(</mo>
<msub>
<mi>y</mi>
<mn>0</mn>
</msub>
<mo>+</mo>
<mi>y</mi>
<mo>)</mo>
</mrow>
<msub>
<mover>
<mi>p</mi>
<mo>·</mo>
</mover>
<mi>a</mi>
</msub>
</mtd>
</mtr>
<mtr>
<mtd>
<mi>KRT</mi>
<msub>
<mover>
<mi>m</mi>
<mo>·</mo>
</mover>
<mi>b</mi>
</msub>
<mo>=</mo>
<mi>K</mi>
<msub>
<mi>p</mi>
<mi>b</mi>
</msub>
<msub>
<mi>A</mi>
<mi>b</mi>
</msub>
<mover>
<mi>y</mi>
<mo>·</mo>
</mover>
<mo>+</mo>
<msub>
<mi>A</mi>
<mi>b</mi>
</msub>
<mrow>
<mo>(</mo>
<msub>
<mi>y</mi>
<mn>0</mn>
</msub>
<mo>-</mo>
<mi>y</mi>
<mo>)</mo>
</mrow>
<msub>
<mover>
<mi>p</mi>
<mo>·</mo>
</mover>
<mi>b</mi>
</msub>
</mtd>
</mtr>
<mtr>
<mtd>
<mi>M</mi>
<mover>
<mi>y</mi>
<mrow>
<mo>·</mo>
<mo>·</mo>
</mrow>
</mover>
<mo>=</mo>
<msub>
<mi>p</mi>
<mi>a</mi>
</msub>
<msub>
<mi>A</mi>
<mi>a</mi>
</msub>
<mo>-</mo>
<msub>
<mi>p</mi>
<mi>b</mi>
</msub>
<msub>
<mi>A</mi>
<mi>b</mi>
</msub>
<mo>-</mo>
<msub>
<mi>F</mi>
<mi>f</mi>
</msub>
</mtd>
</mtr>
</mtable>
</mfenced>
<mo>,</mo>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>1</mn>
<mo>)</mo>
</mrow>
</mrow>
</math>
whereinAndmass flow rates of gas flowing into the A side and B side of the cylinder, u is a control signal, and paAnd pbThe pressure of the side A and the side B of the cylinder, AaAnd AbAre respectively cylindersThe sectional areas of the pistons at the A side and the B side, y is the piston displacement, y0Is the piston initial position, M is the slide mass, FfIs friction force, fa(. and f)b() are respectively nonlinear functions related to the internal and external pressures of the side A and the side B of the cylinder, K, R and T are correlation constants, and the piston displacement y is obtained by a displacement detector;
neglecting the friction force, and linearizing the nonlinear function of the formula (1), a third-order linear model of the pneumatic system is obtained as the following formula (2):
<math>
<mrow>
<mfenced open='{' close=''>
<mtable>
<mtr>
<mtd>
<msub>
<mover>
<mi>x</mi>
<mo>·</mo>
</mover>
<mn>1</mn>
</msub>
<mo>=</mo>
<msub>
<mi>x</mi>
<mn>2</mn>
</msub>
</mtd>
</mtr>
<mtr>
<mtd>
<msub>
<mover>
<mi>x</mi>
<mo>·</mo>
</mover>
<mn>2</mn>
</msub>
<mo>=</mo>
<msub>
<mi>x</mi>
<mn>3</mn>
</msub>
</mtd>
</mtr>
<mtr>
<mtd>
<msub>
<mover>
<mi>x</mi>
<mo>·</mo>
</mover>
<mn>3</mn>
</msub>
<mo>=</mo>
<msub>
<mi>a</mi>
<mn>1</mn>
</msub>
<msub>
<mi>x</mi>
<mn>1</mn>
</msub>
<mo>+</mo>
<msub>
<mi>a</mi>
<mn>2</mn>
</msub>
<msub>
<mi>x</mi>
<mn>2</mn>
</msub>
<mo>+</mo>
<msub>
<mi>a</mi>
<mn>3</mn>
</msub>
<msub>
<mi>x</mi>
<mn>3</mn>
</msub>
<mo>+</mo>
<mi>bu</mi>
</mtd>
</mtr>
<mtr>
<mtd>
<mi>y</mi>
<mo>=</mo>
<msub>
<mi>x</mi>
<mn>1</mn>
</msub>
</mtd>
</mtr>
</mtable>
</mfenced>
<mo>,</mo>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>2</mn>
<mo>)</mo>
</mrow>
</mrow>
</math>
wherein x1,x2,x3Is the system state, u is the control input, a1,a2,a3B is an unknown model parameter, and the control objective is to make the model output y track the desired output y requiredd;
Step 2, establishing a backstepping controller model of the pneumatic position servo system
Selecting a backstepping controller from the pneumatic position servo system model formula (2) obtained in the previous step, wherein the control model of the backstepping controller is as follows (3):
<math>
<mrow>
<msup>
<mi>u</mi>
<mo>′</mo>
</msup>
<mo>=</mo>
<mfrac>
<mn>1</mn>
<mover>
<mi>b</mi>
<mo>^</mo>
</mover>
</mfrac>
<mrow>
<mo>(</mo>
<mo>-</mo>
<msub>
<mi>z</mi>
<mn>2</mn>
</msub>
<mo>-</mo>
<msub>
<mover>
<mi>a</mi>
<mo>^</mo>
</mover>
<mn>1</mn>
</msub>
<msub>
<mi>z</mi>
<mn>1</mn>
</msub>
<mo>-</mo>
<msub>
<mover>
<mi>a</mi>
<mo>^</mo>
</mover>
<mn>1</mn>
</msub>
<msub>
<mi>y</mi>
<mi>d</mi>
</msub>
<mo>-</mo>
<msub>
<mover>
<mi>a</mi>
<mo>^</mo>
</mover>
<mn>2</mn>
</msub>
<msub>
<mi>z</mi>
<mn>2</mn>
</msub>
<mo>-</mo>
<msub>
<mover>
<mi>a</mi>
<mo>^</mo>
</mover>
<mn>2</mn>
</msub>
<msub>
<mi>α</mi>
<mn>1</mn>
</msub>
<mo>-</mo>
<msub>
<mover>
<mi>a</mi>
<mo>^</mo>
</mover>
<mn>3</mn>
</msub>
<msub>
<mi>α</mi>
<mn>2</mn>
</msub>
<mo>+</mo>
<msub>
<mover>
<mi>α</mi>
<mo>·</mo>
</mover>
<mn>2</mn>
</msub>
<mo>)</mo>
</mrow>
<mo>,</mo>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>3</mn>
<mo>)</mo>
</mrow>
</mrow>
</math>
wherein <math>
<mrow>
<mfenced open='{' close=''>
<mtable>
<mtr>
<mtd>
<msub>
<mi>z</mi>
<mn>1</mn>
</msub>
<mo>=</mo>
<msub>
<mi>x</mi>
<mn>1</mn>
</msub>
<mo>-</mo>
<msub>
<mi>y</mi>
<mi>d</mi>
</msub>
</mtd>
</mtr>
<mtr>
<mtd>
<msub>
<mi>z</mi>
<mn>2</mn>
</msub>
<mo>=</mo>
<msub>
<mi>x</mi>
<mn>2</mn>
</msub>
<mo>-</mo>
<msub>
<mi>α</mi>
<mn>1</mn>
</msub>
</mtd>
</mtr>
<mtr>
<mtd>
<msub>
<mi>z</mi>
<mn>3</mn>
</msub>
<mo>=</mo>
<msub>
<mi>x</mi>
<mn>3</mn>
</msub>
<mo>-</mo>
<msub>
<mi>α</mi>
<mn>2</mn>
</msub>
</mtd>
</mtr>
</mtable>
</mfenced>
<mo>,</mo>
<msub>
<mi>α</mi>
<mn>1</mn>
</msub>
<mo>=</mo>
<msub>
<mover>
<mi>y</mi>
<mo>·</mo>
</mover>
<mi>d</mi>
</msub>
<mo>-</mo>
<msub>
<mi>c</mi>
<mn>1</mn>
</msub>
<msub>
<mi>z</mi>
<mn>1</mn>
</msub>
<mo>,</mo>
<msub>
<mi>α</mi>
<mn>2</mn>
</msub>
<mo>=</mo>
<mo>-</mo>
<msub>
<mi>z</mi>
<mn>1</mn>
</msub>
<mo>+</mo>
<msub>
<mover>
<mi>α</mi>
<mo>·</mo>
</mover>
<mn>1</mn>
</msub>
<mo>-</mo>
<msub>
<mi>c</mi>
<mn>2</mn>
</msub>
<msub>
<mi>z</mi>
<mn>2</mn>
</msub>
<mo>,</mo>
<msub>
<mover>
<mi>a</mi>
<mo>^</mo>
</mover>
<mn>1</mn>
</msub>
<mo>,</mo>
<msub>
<mover>
<mi>a</mi>
<mo>^</mo>
</mover>
<mn>2</mn>
</msub>
<mo>,</mo>
<msub>
<mover>
<mi>a</mi>
<mo>^</mo>
</mover>
<mn>3</mn>
</msub>
<mo>,</mo>
<mover>
<mi>b</mi>
<mo>^</mo>
</mover>
</mrow>
</math> Are all estimates of system unknown parameters, ydTo obtain the desired output, the derivative of the variable is determined by the Euler equation, which is expressed in the following formula (4):
<math>
<mrow>
<mover>
<mi>x</mi>
<mo>·</mo>
</mover>
<mrow>
<mo>(</mo>
<mi>kΔT</mi>
<mo>)</mo>
</mrow>
<mo>=</mo>
<mfrac>
<mrow>
<mi>x</mi>
<mrow>
<mo>(</mo>
<mrow>
<mo>(</mo>
<mi>k</mi>
<mo>+</mo>
<mn>1</mn>
<mo>)</mo>
</mrow>
<mi>ΔT</mi>
<mo>)</mo>
</mrow>
<mo>-</mo>
<mi>x</mi>
<mrow>
<mo>(</mo>
<mi>kΔT</mi>
<mo>)</mo>
</mrow>
</mrow>
<mi>ΔT</mi>
</mfrac>
<mo>,</mo>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>4</mn>
<mo>)</mo>
</mrow>
</mrow>
</math>
where at is the sampling time,to representThe values at k sampling instants;
the actual output control quantity is limited as shown in formula (5):
<math>
<mrow>
<mi>u</mi>
<mo>=</mo>
<mfenced open='{' close='' separators=' '>
<mtable>
<mtr>
<mtd>
<msub>
<mi>U</mi>
<mi>max</mi>
</msub>
</mtd>
<mtd>
<msup>
<mi>u</mi>
<mo>′</mo>
</msup>
<mo>></mo>
<msub>
<mi>U</mi>
<mi>max</mi>
</msub>
</mtd>
</mtr>
<mtr>
<mtd>
<msup>
<mi>u</mi>
<mo>′</mo>
</msup>
</mtd>
<mtd>
<mo>-</mo>
<msub>
<mi>U</mi>
<mi>max</mi>
</msub>
<mo>≤</mo>
<msup>
<mi>u</mi>
<mo>′</mo>
</msup>
<mo>≤</mo>
<msub>
<mi>U</mi>
<mi>max</mi>
</msub>
</mtd>
</mtr>
<mtr>
<mtd>
<mo>-</mo>
<msub>
<mi>U</mi>
<mi>max</mi>
</msub>
</mtd>
<mtd>
<msup>
<mi>u</mi>
<mo>′</mo>
</msup>
<mo><</mo>
<mo>-</mo>
<msub>
<mi>U</mi>
<mi>max</mi>
</msub>
</mtd>
</mtr>
</mtable>
<mrow>
<mo>;</mo>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>5</mn>
<mo>)</mo>
</mrow>
</mrow>
</mfenced>
</mrow>
</math>
step 3, estimating unknown parameter values of the pneumatic position servo system
The estimation method refers to the following formula (6):
<math>
<mrow>
<mfenced open='{' close=''>
<mtable>
<mtr>
<mtd>
<mfrac>
<mn>1</mn>
<mover>
<mi>b</mi>
<mo>^</mo>
</mover>
</mfrac>
<mo>=</mo>
<mo>∫</mo>
<mrow>
<mo>(</mo>
<mo>-</mo>
<mi>λ</mi>
<mo>)</mo>
</mrow>
<msub>
<mi>z</mi>
<mn>1</mn>
</msub>
<msub>
<mi>y</mi>
<mi>d</mi>
</msub>
<mi>dt</mi>
</mtd>
</mtr>
<mtr>
<mtd>
<msub>
<mover>
<mover>
<mi>a</mi>
<mo>^</mo>
</mover>
<mo>·</mo>
</mover>
<mn>1</mn>
</msub>
<mo>=</mo>
<mo>-</mo>
<msub>
<mi>β</mi>
<mn>1</mn>
</msub>
<msub>
<mi>z</mi>
<mn>1</mn>
</msub>
<msub>
<mi>x</mi>
<mn>1</mn>
</msub>
</mtd>
</mtr>
<mtr>
<mtd>
<msub>
<mover>
<mover>
<mi>a</mi>
<mo>^</mo>
</mover>
<mo>·</mo>
</mover>
<mn>2</mn>
</msub>
<mo>=</mo>
<mo>-</mo>
<msub>
<mi>β</mi>
<mn>2</mn>
</msub>
<msub>
<mi>z</mi>
<mn>1</mn>
</msub>
<msub>
<mi>x</mi>
<mn>2</mn>
</msub>
</mtd>
</mtr>
<mtr>
<mtd>
<msub>
<mover>
<mover>
<mi>a</mi>
<mo>^</mo>
</mover>
<mo>·</mo>
</mover>
<mn>3</mn>
</msub>
<mo>=</mo>
<mo>-</mo>
<msub>
<mi>β</mi>
<mn>3</mn>
</msub>
<msub>
<mi>z</mi>
<mn>1</mn>
</msub>
<msub>
<mi>x</mi>
<mn>3</mn>
</msub>
</mtd>
</mtr>
</mtable>
</mfenced>
<mo>,</mo>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>6</mn>
<mo>)</mo>
</mrow>
</mrow>
</math>
wherein λ > 0, βiAdaptive gain > 0, i-1, 2,3, estimatedThe numerical value is used for updating the parameters of the backstepping controller model formula (3) in real time, and the computer controls the signal output of the amplifier through the D/A and adjusts the displacement of the piston of the rodless cylinder in real time, so that the method is obtained.
The method has the beneficial effects that: 1) no additional pressure detection hardware or algorithm is required; 2) effective control can be implemented without prior knowledge of the object; 3) compared with the existing control methods, the method can obtain better tracking effect and higher control precision.
Drawings
FIG. 1 is a schematic diagram of the structure of the control object (proportional valve control rodless cylinder) of the method of the present invention;
FIG. 2 is a steady state experimental result of tracking an S-curve using the method of the present invention;
FIG. 3 is a steady state experimental result of tracking a sinusoidal signal using the method of the present invention;
FIG. 4 is a steady state experimental result of tracking a multi-frequency sinusoidal signal using the method of the present invention;
FIG. 5 is a steady state experimental result of tracking an S curve by using a sliding mode variable structure 1 method;
FIG. 6 is a steady state experiment result of tracking a sinusoidal signal by using a sliding mode variable structure 1 method;
FIG. 7 is a steady-state experimental result of tracking multi-frequency sinusoidal signals by using a sliding mode variable structure 1 method;
FIG. 8 is a steady state experimental result of tracking an S-curve by using a sliding mode variable structure 2 method;
FIG. 9 is a steady state experimental result of tracking a sinusoidal signal by using a sliding mode variable structure 2 method;
fig. 10 is a steady-state experimental result of tracking a multi-frequency sinusoidal signal by using a sliding mode variable structure 2 method.
In the figure, 1, a piston, 2, a load, 3, a rodless cylinder, 4, a displacement detector, 5, a proportional valve, 6, an amplifier, 7, a computer, 8, a pressure reducing valve and 9, an air pump.
Detailed Description
The invention is described in detail below with reference to the figures and specific embodiments.
The invention relates to a reverse control method of a pneumatic position servo system, which is implemented according to the following three steps:
step 1, establishing a model of a controlled pneumatic position servo system
Referring to fig. 1, the structure of a controlled pneumatic position servo system relied on by the method of the invention is that a piston 1 of a rodless cylinder 3 is fixedly connected with a load 2, the piston 1 is correspondingly contacted with a displacement detector 4, and an output signal of the position detector 4 is transmitted to a computer 7 through A/D conversion; the proportional valve 5 is a five-way valve, the air cavity A side and the air cavity B side of the rodless cylinder 3 are respectively and correspondingly communicated with two air outlet ends (two po ends) of the proportional valve 5, the air inlet end (pu end) of the proportional valve 5 is communicated with an air pump 9 through a pressure reducing valve 8, the valve core position of the proportional valve 5 is connected with a controller of an amplifier 6, and the amplifier 6 is connected with a computer 7 through a signal line.
The following conditions are assumed to be satisfied by the pneumatic system: 1) the working medium (air) used by the system is ideal gas; 2) the flowing state of the gas flowing through the valve port or other throttling ports is an isentropic heat insulation process; 3) the gas pressure and temperature in the same cavity are equal everywhere; 4) ignoring the unaccounted for leaks; 5) when the piston moves, the change processes of the gas in the two cavities are both heat insulation processes; 6) the air source pressure and the atmospheric pressure are constant; 7) the inertia of the proportional valve is negligible compared to the system dynamics. Therefore, the mathematical model of the proportional valve control pneumatic position servo system is obtained as the following formula (1):
<math>
<mrow>
<mfenced open='{' close=''>
<mtable>
<mtr>
<mtd>
<msub>
<mover>
<mi>m</mi>
<mo>·</mo>
</mover>
<mi>a</mi>
</msub>
<mo>=</mo>
<msub>
<mi>f</mi>
<mi>a</mi>
</msub>
<mrow>
<mo>(</mo>
<mi>u</mi>
<mo>,</mo>
<msub>
<mi>p</mi>
<mi>a</mi>
</msub>
<mo>)</mo>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<msub>
<mover>
<mi>m</mi>
<mo>·</mo>
</mover>
<mi>b</mi>
</msub>
<mo>=</mo>
<msub>
<mi>f</mi>
<mi>b</mi>
</msub>
<mrow>
<mo>(</mo>
<mi>u</mi>
<mo>,</mo>
<msub>
<mi>p</mi>
<mi>b</mi>
</msub>
<mo>)</mo>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mi>KRT</mi>
<msub>
<mover>
<mi>m</mi>
<mo>·</mo>
</mover>
<mi>a</mi>
</msub>
<mo>=</mo>
<mi>K</mi>
<msub>
<mi>p</mi>
<mi>a</mi>
</msub>
<msub>
<mi>A</mi>
<mi>a</mi>
</msub>
<mover>
<mi>y</mi>
<mo>·</mo>
</mover>
<mo>+</mo>
<msub>
<mi>A</mi>
<mi>a</mi>
</msub>
<mrow>
<mo>(</mo>
<msub>
<mi>y</mi>
<mn>0</mn>
</msub>
<mo>+</mo>
<mi>y</mi>
<mo>)</mo>
</mrow>
<msub>
<mover>
<mi>p</mi>
<mo>·</mo>
</mover>
<mi>a</mi>
</msub>
</mtd>
</mtr>
<mtr>
<mtd>
<mi>KRT</mi>
<msub>
<mover>
<mi>m</mi>
<mo>·</mo>
</mover>
<mi>b</mi>
</msub>
<mo>=</mo>
<mi>K</mi>
<msub>
<mi>p</mi>
<mi>b</mi>
</msub>
<msub>
<mi>A</mi>
<mi>b</mi>
</msub>
<mover>
<mi>y</mi>
<mo>·</mo>
</mover>
<mo>+</mo>
<msub>
<mi>A</mi>
<mi>b</mi>
</msub>
<mrow>
<mo>(</mo>
<msub>
<mi>y</mi>
<mn>0</mn>
</msub>
<mo>-</mo>
<mi>y</mi>
<mo>)</mo>
</mrow>
<msub>
<mover>
<mi>p</mi>
<mo>·</mo>
</mover>
<mi>b</mi>
</msub>
</mtd>
</mtr>
<mtr>
<mtd>
<mi>M</mi>
<mover>
<mi>y</mi>
<mrow>
<mo>·</mo>
<mo>·</mo>
</mrow>
</mover>
<mo>=</mo>
<msub>
<mi>p</mi>
<mi>a</mi>
</msub>
<msub>
<mi>A</mi>
<mi>a</mi>
</msub>
<mo>-</mo>
<msub>
<mi>p</mi>
<mi>b</mi>
</msub>
<msub>
<mi>A</mi>
<mi>b</mi>
</msub>
<mo>-</mo>
<msub>
<mi>F</mi>
<mi>f</mi>
</msub>
</mtd>
</mtr>
</mtable>
</mfenced>
<mo>,</mo>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>1</mn>
<mo>)</mo>
</mrow>
</mrow>
</math>
whereinAndrespectively, the mass flow rates of gas flowing into the side A of the cylinder (air chamber A in FIG. 1) and the side B of the cylinder (air chamber B in FIG. 1), u is a control signal, paAnd pbThe pressure of the side A and the side B of the cylinder, AaAnd AbPiston cross-sectional areas for cylinder sides A and B (equal for rodless cylinders in this system), respectively, y is piston displacement, y is0Is the piston initial position, M is the slide mass, FfIs friction force, fa(. and f)b() are respectively nonlinear functions related to the internal and external pressures of the side A and the side B of the cylinder, K, R and T are correlation constants, and the piston displacement y is obtained by a displacement detector 4;
neglecting the friction force, and linearizing the nonlinear function of the formula (1), a third-order linear model of the pneumatic system is obtained as the following formula (2):
<math>
<mrow>
<mfenced open='{' close=''>
<mtable>
<mtr>
<mtd>
<msub>
<mover>
<mi>x</mi>
<mo>·</mo>
</mover>
<mn>1</mn>
</msub>
<mo>=</mo>
<msub>
<mi>x</mi>
<mn>2</mn>
</msub>
</mtd>
</mtr>
<mtr>
<mtd>
<msub>
<mover>
<mi>x</mi>
<mo>·</mo>
</mover>
<mn>2</mn>
</msub>
<mo>=</mo>
<msub>
<mi>x</mi>
<mn>3</mn>
</msub>
</mtd>
</mtr>
<mtr>
<mtd>
<msub>
<mover>
<mi>x</mi>
<mo>·</mo>
</mover>
<mn>3</mn>
</msub>
<mo>=</mo>
<msub>
<mi>a</mi>
<mn>1</mn>
</msub>
<msub>
<mi>x</mi>
<mn>1</mn>
</msub>
<mo>+</mo>
<msub>
<mi>a</mi>
<mn>2</mn>
</msub>
<msub>
<mi>x</mi>
<mn>2</mn>
</msub>
<mo>+</mo>
<msub>
<mi>a</mi>
<mn>3</mn>
</msub>
<msub>
<mi>x</mi>
<mn>3</mn>
</msub>
<mo>+</mo>
<mi>bu</mi>
</mtd>
</mtr>
<mtr>
<mtd>
<mi>y</mi>
<mo>=</mo>
<msub>
<mi>x</mi>
<mn>1</mn>
</msub>
</mtd>
</mtr>
</mtable>
</mfenced>
<mo>,</mo>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>2</mn>
<mo>)</mo>
</mrow>
</mrow>
</math>
wherein x1,x2,x3Is the system state, u is the control input, a1,a2,a3B is an unknown model parameter, and the control objective is to make the model output y track the desired output y requiredd。
Step 2, establishing a backstepping controller model of the pneumatic position servo system
Selecting a backstepping (self-adaptive) controller from the pneumatic position servo system model formula (2) obtained in the previous step, wherein the control model of the backstepping controller is as follows (3):
<math>
<mrow>
<msup>
<mi>u</mi>
<mo>′</mo>
</msup>
<mo>=</mo>
<mfrac>
<mn>1</mn>
<mover>
<mi>b</mi>
<mo>^</mo>
</mover>
</mfrac>
<mrow>
<mo>(</mo>
<mo>-</mo>
<msub>
<mi>z</mi>
<mn>2</mn>
</msub>
<mo>-</mo>
<msub>
<mover>
<mi>a</mi>
<mo>^</mo>
</mover>
<mn>1</mn>
</msub>
<msub>
<mi>z</mi>
<mn>1</mn>
</msub>
<mo>-</mo>
<msub>
<mover>
<mi>a</mi>
<mo>^</mo>
</mover>
<mn>1</mn>
</msub>
<msub>
<mi>y</mi>
<mi>d</mi>
</msub>
<mo>-</mo>
<msub>
<mover>
<mi>a</mi>
<mo>^</mo>
</mover>
<mn>2</mn>
</msub>
<msub>
<mi>z</mi>
<mn>2</mn>
</msub>
<mo>-</mo>
<msub>
<mover>
<mi>a</mi>
<mo>^</mo>
</mover>
<mn>2</mn>
</msub>
<msub>
<mi>α</mi>
<mn>1</mn>
</msub>
<mo>-</mo>
<msub>
<mover>
<mi>a</mi>
<mo>^</mo>
</mover>
<mn>3</mn>
</msub>
<msub>
<mi>α</mi>
<mn>2</mn>
</msub>
<mo>+</mo>
<msub>
<mover>
<mi>α</mi>
<mo>·</mo>
</mover>
<mn>2</mn>
</msub>
<mo>)</mo>
</mrow>
<mo>,</mo>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>3</mn>
<mo>)</mo>
</mrow>
</mrow>
</math>
wherein <math>
<mrow>
<mfenced open='{' close=''>
<mtable>
<mtr>
<mtd>
<msub>
<mi>z</mi>
<mn>1</mn>
</msub>
<mo>=</mo>
<msub>
<mi>x</mi>
<mn>1</mn>
</msub>
<mo>-</mo>
<msub>
<mi>y</mi>
<mi>d</mi>
</msub>
</mtd>
</mtr>
<mtr>
<mtd>
<msub>
<mi>z</mi>
<mn>2</mn>
</msub>
<mo>=</mo>
<msub>
<mi>x</mi>
<mn>2</mn>
</msub>
<mo>-</mo>
<msub>
<mi>α</mi>
<mn>1</mn>
</msub>
</mtd>
</mtr>
<mtr>
<mtd>
<msub>
<mi>z</mi>
<mn>3</mn>
</msub>
<mo>=</mo>
<msub>
<mi>x</mi>
<mn>3</mn>
</msub>
<mo>-</mo>
<msub>
<mi>α</mi>
<mn>2</mn>
</msub>
</mtd>
</mtr>
</mtable>
</mfenced>
<mo>,</mo>
<msub>
<mi>α</mi>
<mn>1</mn>
</msub>
<mo>=</mo>
<msub>
<mover>
<mi>y</mi>
<mo>·</mo>
</mover>
<mi>d</mi>
</msub>
<mo>-</mo>
<msub>
<mi>c</mi>
<mn>1</mn>
</msub>
<msub>
<mi>z</mi>
<mn>1</mn>
</msub>
<mo>,</mo>
<msub>
<mi>α</mi>
<mn>2</mn>
</msub>
<mo>=</mo>
<mo>-</mo>
<msub>
<mi>z</mi>
<mn>1</mn>
</msub>
<mo>+</mo>
<msub>
<mover>
<mi>α</mi>
<mo>·</mo>
</mover>
<mn>1</mn>
</msub>
<mo>-</mo>
<msub>
<mi>c</mi>
<mn>2</mn>
</msub>
<msub>
<mi>z</mi>
<mn>2</mn>
</msub>
<mo>,</mo>
<msub>
<mover>
<mi>a</mi>
<mo>^</mo>
</mover>
<mn>1</mn>
</msub>
<mo>,</mo>
<msub>
<mover>
<mi>a</mi>
<mo>^</mo>
</mover>
<mn>2</mn>
</msub>
<mo>,</mo>
<msub>
<mover>
<mi>a</mi>
<mo>^</mo>
</mover>
<mn>3</mn>
</msub>
<mo>,</mo>
<mover>
<mi>b</mi>
<mo>^</mo>
</mover>
</mrow>
</math> Are all estimates of system unknown parameters, ydTo obtain the desired output, the derivative of the variable is determined by the Euler equation, which is expressed in the following formula (4):
<math>
<mrow>
<mover>
<mi>x</mi>
<mo>·</mo>
</mover>
<mrow>
<mo>(</mo>
<mi>kΔT</mi>
<mo>)</mo>
</mrow>
<mo>=</mo>
<mfrac>
<mrow>
<mi>x</mi>
<mrow>
<mo>(</mo>
<mrow>
<mo>(</mo>
<mi>k</mi>
<mo>+</mo>
<mn>1</mn>
<mo>)</mo>
</mrow>
<mi>ΔT</mi>
<mo>)</mo>
</mrow>
<mo>-</mo>
<mi>x</mi>
<mrow>
<mo>(</mo>
<mi>kΔT</mi>
<mo>)</mo>
</mrow>
</mrow>
<mi>ΔT</mi>
</mfrac>
<mo>,</mo>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>4</mn>
<mo>)</mo>
</mrow>
</mrow>
</math>
where at is the sampling time,to representThe values at k sampling instants, e.g. for equation (3)Then there is <math>
<mrow>
<msub>
<mover>
<mi>α</mi>
<mo>·</mo>
</mover>
<mn>2</mn>
</msub>
<mrow>
<mo>(</mo>
<mi>kΔT</mi>
<mo>)</mo>
</mrow>
<mo>=</mo>
<mfrac>
<mrow>
<msub>
<mi>α</mi>
<mn>2</mn>
</msub>
<mrow>
<mo>(</mo>
<mrow>
<mo>(</mo>
<mi>k</mi>
<mo>+</mo>
<mn>1</mn>
<mo>)</mo>
</mrow>
<mi>ΔT</mi>
<mo>)</mo>
</mrow>
<mo>-</mo>
<msub>
<mi>α</mi>
<mn>2</mn>
</msub>
<mrow>
<mo>(</mo>
<mi>kΔT</mi>
<mo>)</mo>
</mrow>
</mrow>
<mi>ΔT</mi>
</mfrac>
<mo>;</mo>
</mrow>
</math>
The actual output control quantity is limited as shown in formula (5):
<math>
<mrow>
<mi>u</mi>
<mo>=</mo>
<mfenced open='{' close='' separators=' '>
<mtable>
<mtr>
<mtd>
<msub>
<mi>U</mi>
<mi>max</mi>
</msub>
</mtd>
<mtd>
<msup>
<mi>u</mi>
<mo>′</mo>
</msup>
<mo>></mo>
<msub>
<mi>U</mi>
<mi>max</mi>
</msub>
</mtd>
</mtr>
<mtr>
<mtd>
<msup>
<mi>u</mi>
<mo>′</mo>
</msup>
</mtd>
<mtd>
<mo>-</mo>
<msub>
<mi>U</mi>
<mi>max</mi>
</msub>
<mo>≤</mo>
<msup>
<mi>u</mi>
<mo>′</mo>
</msup>
<mo>≤</mo>
<msub>
<mi>U</mi>
<mi>max</mi>
</msub>
</mtd>
</mtr>
<mtr>
<mtd>
<mo>-</mo>
<msub>
<mi>U</mi>
<mi>max</mi>
</msub>
</mtd>
<mtd>
<msup>
<mi>u</mi>
<mo>′</mo>
</msup>
<mo><</mo>
<mo>-</mo>
<msub>
<mi>U</mi>
<mi>max</mi>
</msub>
</mtd>
</mtr>
</mtable>
<mrow>
<mo>;</mo>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>5</mn>
<mo>)</mo>
</mrow>
</mrow>
</mfenced>
</mrow>
</math>
step 3, estimating unknown parameter values of the pneumatic position servo system
The estimation method refers to the following formula (6):
<math>
<mrow>
<mfenced open='{' close=''>
<mtable>
<mtr>
<mtd>
<mfrac>
<mn>1</mn>
<mover>
<mi>b</mi>
<mo>^</mo>
</mover>
</mfrac>
<mo>=</mo>
<mo>∫</mo>
<mrow>
<mo>(</mo>
<mo>-</mo>
<mi>λ</mi>
<mo>)</mo>
</mrow>
<msub>
<mi>z</mi>
<mn>1</mn>
</msub>
<msub>
<mi>y</mi>
<mi>d</mi>
</msub>
<mi>dt</mi>
</mtd>
</mtr>
<mtr>
<mtd>
<msub>
<mover>
<mover>
<mi>a</mi>
<mo>^</mo>
</mover>
<mo>·</mo>
</mover>
<mn>1</mn>
</msub>
<mo>=</mo>
<mo>-</mo>
<msub>
<mi>β</mi>
<mn>1</mn>
</msub>
<msub>
<mi>z</mi>
<mn>1</mn>
</msub>
<msub>
<mi>x</mi>
<mn>1</mn>
</msub>
</mtd>
</mtr>
<mtr>
<mtd>
<msub>
<mover>
<mover>
<mi>a</mi>
<mo>^</mo>
</mover>
<mo>·</mo>
</mover>
<mn>2</mn>
</msub>
<mo>=</mo>
<mo>-</mo>
<msub>
<mi>β</mi>
<mn>2</mn>
</msub>
<msub>
<mi>z</mi>
<mn>1</mn>
</msub>
<msub>
<mi>x</mi>
<mn>2</mn>
</msub>
</mtd>
</mtr>
<mtr>
<mtd>
<msub>
<mover>
<mover>
<mi>a</mi>
<mo>^</mo>
</mover>
<mo>·</mo>
</mover>
<mn>3</mn>
</msub>
<mo>=</mo>
<mo>-</mo>
<msub>
<mi>β</mi>
<mn>3</mn>
</msub>
<msub>
<mi>z</mi>
<mn>1</mn>
</msub>
<msub>
<mi>x</mi>
<mn>3</mn>
</msub>
</mtd>
</mtr>
</mtable>
</mfenced>
<mo>,</mo>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>6</mn>
<mo>)</mo>
</mrow>
</mrow>
</math>
wherein λ > 0, βiThe adaptive gain is more than 0, i is 1,2 and 3, and the estimated value is used for updating the backstepping in real timeAnd (3) controlling the parameters of the model formula (3), and outputting the signals of the amplifier 6 through the D/A control by the computer to adjust the displacement of the piston 1 of the rodless cylinder 3 in real time.
Examples
Each part in the pneumatic position servo system structure is selected and used respectively: a rodless cylinder (the adopted model is DGPL-25-450-PPV-A-B-KF-GK-SV) of the FESTO company; a five-way proportional valve (the adopted model is MPYE-5-1/8-HF-010-B); a sliding resistance type linear displacement detector (the adopted model is MLO-POT-450-TLF, and the position detection precision is 0.15mm after the sliding resistance type linear displacement detector is matched with an acquisition card); a computer (adopting a model of P21.2GHz for a CPU); a universal data acquisition card (the adopted model is PCI 2306); other elements such as an air pump constitute a pneumatic position servo system. The control software built in the computer is compiled by VB, and the change curve of the relevant variable in the control process is displayed through a screen.
Control targets are respectively set to
Reference signal 1: s curve
yd=-(A/ω2)sin(ωt)+(A/ω)t, (7)
A has a value of 55.825 and w has a value of 0.5 π.
Reference signal 2: single frequency sinusoidal signal
yd=111.65sin0.5πt, (8)
Reference signal 3: multi-frequency sinusoidal signal
yd=167.475sinπt+167.475sin0.5πt+167.475sin(2πt/7), (9)
+167.475sin(πt/6)+167.475sin(2πt/17)
The control experiment is carried out by adopting the inverse step adaptive controllers of the formula (3) to the formula (6), and the control parameter c in the formula (3) to the formula (6)1,c2,λ,β1,β2,β3The values of (a) may be subjected to iterative experimental trials.
In the present embodiment, 50,1,1,1,1, 1 is set, and the limiter U is controlledmaxWhen the tracking target is the formula (7) to the formula (9), the steady-state tracking curve is as shown in fig. 2,3, and 4.
Fig. 5-10 show the control effect when tracking the same expected output by using two ways in the prior art (i.e. sliding mode variable structure 1 and sliding mode variable structure 2), and the tracking precision of the method of the present invention is higher by comparison.
The sliding mode variable structure 1 method is referred to in the literature [ Gary M. bone, Shu Ning. Experimental compatibility of Position transporting Control Algorithms for Pneumatic cylinder actuators [ J ]. IEEE/ASME Transactions on mechanics, 2007,12(5): 557) 561], and the variable structure controller is represented as follows:
<math>
<mrow>
<mi>S</mi>
<mo>=</mo>
<mover>
<mi>y</mi>
<mrow>
<mo>·</mo>
<mo>·</mo>
</mrow>
</mover>
<mo>-</mo>
<msub>
<mover>
<mi>y</mi>
<mrow>
<mo>·</mo>
<mo>·</mo>
</mrow>
</mover>
<mi>d</mi>
</msub>
<mo>+</mo>
<mn>2</mn>
<mi>λ</mi>
<mrow>
<mo>(</mo>
<mover>
<mi>y</mi>
<mo>·</mo>
</mover>
<mo>-</mo>
<msub>
<mover>
<mi>y</mi>
<mo>·</mo>
</mover>
<mi>d</mi>
</msub>
<mo>)</mo>
</mrow>
<mo>+</mo>
<msup>
<mi>λ</mi>
<mn>2</mn>
</msup>
<mrow>
<mo>(</mo>
<mi>y</mi>
<mo>-</mo>
<msub>
<mi>y</mi>
<mi>d</mi>
</msub>
<mo>)</mo>
</mrow>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>10</mn>
<mo>)</mo>
</mrow>
</mrow>
</math>
<math>
<mrow>
<msub>
<mi>u</mi>
<mi>eq</mi>
</msub>
<mo>=</mo>
<mfrac>
<mn>1</mn>
<msub>
<mi>m</mi>
<mn>0</mn>
</msub>
</mfrac>
<mo>[</mo>
<msub>
<mover>
<mi>y</mi>
<mrow>
<mo>·</mo>
<mo>·</mo>
<mo>·</mo>
</mrow>
</mover>
<mi>d</mi>
</msub>
<mo>+</mo>
<msub>
<mi>n</mi>
<mn>2</mn>
</msub>
<mover>
<mi>y</mi>
<mrow>
<mo>·</mo>
<mo>·</mo>
</mrow>
</mover>
<mo>+</mo>
<msub>
<mi>n</mi>
<mn>1</mn>
</msub>
<mover>
<mi>y</mi>
<mo>·</mo>
</mover>
<mo>+</mo>
<msub>
<mi>n</mi>
<mn>0</mn>
</msub>
<mi>y</mi>
<mo>-</mo>
<mn>2</mn>
<mi>λ</mi>
<mrow>
<mo>(</mo>
<mover>
<mi>y</mi>
<mrow>
<mo>·</mo>
<mo>·</mo>
</mrow>
</mover>
<mo>-</mo>
<msub>
<mover>
<mi>y</mi>
<mrow>
<mo>·</mo>
<mo>·</mo>
</mrow>
</mover>
<mi>d</mi>
</msub>
<mo>)</mo>
</mrow>
<mo>-</mo>
<msup>
<mi>λ</mi>
<mn>2</mn>
</msup>
<mrow>
<mo>(</mo>
<mover>
<mi>y</mi>
<mo>·</mo>
</mover>
<mo>-</mo>
<msub>
<mover>
<mi>y</mi>
<mo>·</mo>
</mover>
<mi>d</mi>
</msub>
<mo>)</mo>
</mrow>
<mo>]</mo>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>11</mn>
<mo>)</mo>
</mrow>
</mrow>
</math>
us=-ks1sat(S/φ) (12)
u′=ueq+us (13)
the actual control is given by equation (12) and the limiting of the control output is given by equation (5) as in the method of the invention, where the model nominal parameter n2=29.5544,n1=218.436,n0=0,m05531.3305, the controller parameter λ is 50, ks1=2.44×104And phi is 0.05, and the control result curves are shown in fig. 5 to 7.
Reference is made to the literature [ T.Nguyen, J.Leavitt, F.Jabbari, J.E.Bobrow.Accurate Slide-Mode Control of Pneumatic Systems Using Low-costSolenoid Valves [ J ]. IEEE/ASME Transactions on mechanics, 2007,12(2):216-219], methods for the Control of sliding Mode variants 2, which are given by the following formula:
<math>
<mrow>
<mi>S</mi>
<mo>=</mo>
<mover>
<mi>y</mi>
<mrow>
<mo>·</mo>
<mo>·</mo>
</mrow>
</mover>
<mo>-</mo>
<msub>
<mover>
<mi>y</mi>
<mrow>
<mo>·</mo>
<mo>·</mo>
</mrow>
</mover>
<mi>d</mi>
</msub>
<mo>+</mo>
<mn>2</mn>
<mi>ζω</mi>
<mrow>
<mo>(</mo>
<mover>
<mi>y</mi>
<mo>·</mo>
</mover>
<mo>-</mo>
<msub>
<mover>
<mi>y</mi>
<mo>·</mo>
</mover>
<mi>d</mi>
</msub>
<mo>)</mo>
</mrow>
<mo>+</mo>
<msup>
<mi>ω</mi>
<mn>2</mn>
</msup>
<mrow>
<mo>(</mo>
<mi>y</mi>
<mo>-</mo>
<msub>
<mi>y</mi>
<mi>d</mi>
</msub>
<mo>)</mo>
</mrow>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>14</mn>
<mo>)</mo>
</mrow>
</mrow>
</math>
u=-ks2sgn(S) (15)
this prior art method controls the cylinder for a switching valve, the actual control being given by equation (15), ks21, u-1 corresponds to valve open and u-1 corresponds to valve closed.
In the present invention, a proportional valve is adopted, so k is takens2The opening amplitude of the proportional valve is controlled to 1.56 (volt), the controller parameter ξ is 1, ω is 50, the control is realized, and the control result curve is shown with reference to fig. 8-10.
TABLE 1 comparison of the error of the method of the present invention with the error of the prior art control method in tracking the output signal of equation (7)
TABLE 2 comparison of the error of the present invention method with the error of the prior art control method in tracking the output signal of equation (8)
In order to more intuitively illustrate the control effect of the method of the present invention, the tracking error is quantitatively calculated under the condition of tracking different desired targets, and the error is defined as defining the root mean square error as:
<math>
<mrow>
<mi>RMSE</mi>
<mo>=</mo>
<msqrt>
<mfrac>
<mn>1</mn>
<mrow>
<msub>
<mi>N</mi>
<mn>2</mn>
</msub>
<mo>-</mo>
<msub>
<mi>N</mi>
<mn>1</mn>
</msub>
</mrow>
</mfrac>
<munderover>
<mi>Σ</mi>
<mrow>
<mi>k</mi>
<mo>=</mo>
<msub>
<mi>N</mi>
<mn>1</mn>
</msub>
</mrow>
<msub>
<mi>N</mi>
<mn>2</mn>
</msub>
</munderover>
<msubsup>
<mi>e</mi>
<mi>k</mi>
<mn>2</mn>
</msubsup>
</msqrt>
<mo>,</mo>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>5.7</mn>
<mo>)</mo>
</mrow>
</mrow>
</math>
wherein N is1For comparing the starting times, N2To compare the end times, ek=y(kΔT)-yd(k Δ T), Δ T being the sampling time interval. To avoid the effects of different initial values of adaptive control and random interference, multiple experiments were performed on the tracking of each input signal, five of which gave the results shown in tables 1-3.
The results in the comparison table show that the average tracking error of the method of the present invention is smaller than that of the existing method under various expected target conditions.
TABLE 3 comparison of the error of the method of the present invention with the error of the prior art control method in tracking the output signal of equation (9)