Vous êtes sur la page 1sur 13

NONLINEAR SERVO SIMULATION - BACKLASH

Heikki Koivo

EXAMPLE: Consider a linear servo model given in Fig. 1 in SIMULINK form with an open-loop transfer function G ( s) = X ( s) 10 = 2 E ( s) s + s

where X(s) is the Laplace transform of the output and E(s) is the Laplace transform of the input. Assume (as you would with a transfer function) that the initial conditions are zero. Simulate the closed-loop unit step response.

Fig. 1. Linear servo system to be simulated. Move the cursor on top of Step and click twice.

Note that the Step-function is initially zero and at time t=1 it will change to the final value, which by default is one. It is worthwhile to repeat that the stepping time is t=1. There are two alternatives to simulate the system in SIMULINK. Either use Simulation from menu or press Start/Pause Simulation button. Both of these are shown in the Figure below.

Click Scope twice to see the result from simulation. This is shown in the Figure below.

To autoscale the result click binoculars button.

If initial conditions are to be included, the SIMULINK model must be represented in a different way, which is called the state-space model. The open-loop transfer function G ( s) = X ( s) 10 = 2 E ( s) s + s

can be written as

( s 2 + s ) X ( s ) = 10 E ( s ) and further d 2 x dx + = 10e . dt 2 dt Solve the highest order derivative (acceleration) or d 2x dx = + 10e . 2 dt dt Further, let x(0) = 2, x(0) = 1 . In configuring the system, first set up the two integrators in series. Then collect to the input of the first integrator what is on the right hand side of the equation. The result is shown in the Figure below. Because it is not straightforward to give initial conditions at a different time than t=0 s, change the step time in Step to t=0.

Note that the scope will also display x(t ) . Click the integrator on the right, corresponding to x, twice. Now you can adjust the initial condition.

Repeat in a similar fashion for x(0) = 1 . The corresponding unit step response is as follows.

REMARK: If only closed-loop step response is desired, then MATLAB commands of the CONTROL SYSTEMS TOOLBOX are sufficient.

g=tf([10],[1 1 0]) Transfer function: 10 ------5

s^2 + s T=feedback(g,1) Transfer function: 10 -----------s^2 + s + 10 step(T)

The result agrees with SIMULINK simulation.


S tep Respons e
From: U(1) 1.8 1.6 1.4 1.2

A m plitude

To: Y (1)

1 0.8 0.6 0.4 0.2 0 0 2 4 6 8 10 12

Tim e (s ec.)

It is also interesting to see the phase plane plot, i.e. x as a function of x. Time is eliminated in a phase plane, but appears in the curve as a parameter. To see the phase plane, use XY Graph.

XY Graph does not have autoscale-feature. Therefore to see the whole picture adjust the scales. The result is een below.

The graph is not very smooth. This is due to the stored points in XY Graph. This can be fixed by adjusting the Sample time.

The parameters chosen above produce a smooth figure.

SERVO WITH BACKLASH

In practical servo systems many typical nonlinearities occur. These are backlash, saturation, friction, etc. Here we will consider servo with Backlash.

Click Backlash block open and click also Help to better understand Backlash behavior.

Initial conditions in a nonlinear system are essential, because the qualitative behavior can change completely depending on the initial conditions. In the linear case the behavior remains the same. Let us study this with different initial values. Start with x(0) = 2, x(0) = 1 .

10

Next try x(0) = 0.5, x(0) = 0.5 .

Next study the corresponding phase plane plots. In order to obtain a complete enough phase plane plot, change the simulation time. First, choose Simulation menu and then Parameters.

11

The Stop time is changed, after some experimenting to 20 s. Other parameters can be left as they are.

The phase plane plot is shown below. Observe that the system with these initial conditions will reach a stable limit cycle.

12

If initial conditions are changed to x(0) = 0, x(0) = 0.5 the phase plane plot looks different.

13

Vous aimerez peut-être aussi