• Non ci sono risultati.

Let us consider the following continuous-time linear system:

N/A
N/A
Protected

Academic year: 2021

Condividi "Let us consider the following continuous-time linear system:"

Copied!
5
0
0

Testo completo

(1)

Sampled systems

Let us consider the following continuous-time linear system:

G(s) :  ˙x(t) = A x(t) + B u(t) y (t) = C x(t)

U(s)

-

G (s) Y(s)

-

Inserting a zero-order hold H 0 (s) and a sampler (of period T ) at the input and at the output of system G(s), one obtains the following discrete system:

u (kT )

-

H 0 (s) u (t)

-

G(s) y (t)



T

-

y (kT )

The output u(t) of the zero order hold H 0 (s) is a piece wise signal:

u (t) = u(kT ) for kT ≤ t ≤ (k + 1)T

- 6

0 kT

u (kT )

666

6 6 6 6

66

6 6 -

6

0 t

u (t)

The signal y(t) sampled with period T generates the discrete signal y(kT ).

The input-output dynamic behavior of the new sampled system can be descri- bed using the following discrete time state space model:

G (z) :

 x ((k + 1)T ) = F x(kT ) + G u(kT ) y (kT ) = H x(kT )

U (z)

-

G(z) Y

-

(z)

Matrices (A, B, C) and matrices (F, G, H) are linked as follows:

F = e A T , G = Z T

0

e B dσ, H = C

(2)

Proof. The exact relation between matrices (A, B, C) and matrices (F, G, H) can be determined solving the following differential equation

˙x(t) = A x(t) + B u(t)

in the time interval [kT, (k + 1)T ]. The state x(t) that can be reached at time t = kT starting from the initial condition x(kT ) is:

x (t) = e

A(t−kT )

x (kT ) + Z

t

kT

e

A(t−γ)

B u (γ) dγ

Since the input is constant u(t) = u(kT ), the state x((k + 1)T ) reached at time t = (k + 1)T is the following:

x ((k + 1)T ) = e

AT

|{z} F

x (kT ) +

Z

(k+1)T kT

e

A((k+1)T −γ)

B dγ

| {z }

G

u (kT )

= F x(kT ) + G u(kT ) Using the following change of variable:

σ = (k + 1)T − γ → dσ = −dγ matrix G can be transformed as follows:

G = Z

0

T

e

B (−dσ) = Z

T

0

e

B dσ

The discrete output y(kT ) is obtained from y(t) sampling at times t = kT : y (kT ) = y(t)|

t=kT

= C x(t)|

t=kT

= C

|{z} H

x (kT )

The system G (z) obtained from G(s) using this method is called sampled system.

————–

In Matlab the command which converts a continuous-time system SYS to the corresponding discrete-time system SYSD is the following:

SYSD = c2d(SYS,Tsamp,’zoh’)

where Tsamp is the considered sampling period. A continuous-time system

SYS can be discretized using the following methods:

(3)

’zoh’ Zero-order hold on the inputs.

’foh’ Linear interpolation of inputs (triangle appx.)

’tustin’ Bilinear (Tustin) approximation.

’prewarp’ Tustin approximation with frequency prewarping.

The critical frequency Wc is specified as fourth input by C2D(SYSC,TS,’prewarp’,Wc).

’matched’ Matched pole-zero method (for SISO systems only).

• Example in Matlab.

--- clear all; close all

s=tf(’s’);

Stampa=1; MainString=’Gs_Gz’;

gs=1000/(s+10)/(s+5)^2/(s^2+2*s+64); % Linear system

[A,B,C,D]=ssdata(gs); % Corresponding matrices

Gs=ss(A,B,C,D); % System G(s)

figure(1); clf %%%%%%%%%%%%%%%%%

Tfin=3; % Simulation time range

[y,t]=step(Gs,Tfin); % Step response of system G(s)

plot(t,y) % Plot of the step response

hold on; grid on

TC_Range=0.05:0.05:0.2; % Sampling periods Tc Color=’brgmck’;

for ii=1:length(TC_Range) Tc=TC_Range(ii);

Gz=c2d(Gs,Tc); % Discrete G(z) system

[y,t]=step(Gz,Tfin); % Step response of system G(z) stairs(t,y,[’.--’ Color(ii)]) % Stairs plot of the step response end

xlim([0 Tfin])

title(’Step response of systems G(s) and G(z)’) ylabel(’y(k)’)

xlabel(’Time [s]’)

if Stampa; eval([’print -depsc ’ MainString ’_’ num2str(gcf)]); end figure(2); clf %%%%%%%%%%%%%%%%%

Tc=0.05; % Considered sampling period

ti=0:Tc:Tfin; % Sampling instants

ui=sin(10*ti); % input signal u(k)

subplot(211) %%%%%%%%%% % First subplot

stairs(ti,ui,’b’) % Plot of the input signal u(k) grid on

title(’Input signal u(k)’) ylabel(’u(k)’)

subplot(212) %%%%%%%%%% % Second subplot

[y,t]=lsim(Gs,ui,ti,’zoh’); % Response of system G(s) to signal u(k)

plot(t,y) % Plot of the step response

hold on; grid on

Gz=c2d(Gs,Tc); % Discrete system G(z)

[y,t]=lsim(Gz,ui,ti,’zoh’); % Response of system G(z) to signal u(k) stairs(t,y,’.--m’) % Stairs plot of the system response xlim([0 Tfin])

title(’Response of systems G(s) and G(z) to signal u(k)’) ylabel(’y(k)’)

xlabel(’Time [s]’)

if Stampa; eval([’print -depsc ’ MainString ’_’ num2str(gcf)]); end

(4)

• Considered system G(s):

G(s) = 1000

(s + 10)(s + 5) 2 (s 2 + 2s + 64)

• State space matrices of system G(s) (“ [A, B, C, D]=ssdata(Gs) ”):

---

A = B =

[ -22 -7.1563 -6.9531 -4.1504 -1.9531] [ 1/4 ]

[ 32 0 0 0 0] [ 0 ]

[ 0 8.0000 0 0 0] [ 0 ]

[ 0 0 8.0000 0 0] [ 0 ]

[ 0 0 0 4.0000 0] [ 0 ]

C = [ 0, 0, 0, 0, 125/256 ] D = 0

---

• Sampled system G(z) when T c = 0.05:

--- Gz =

2.164e-06 z^4 + 4.667e-05 z^3 + 9.853e-05 z^2 + 3.237e-05 z + 1.04e-06 ---

z^5 - 3.919 z^4 + 6.253 z^3 - 5.048 z^2 + 2.049 z - 0.3329 ---

• State space matrices of system G(z) (“ [F, G, C, D]=ssdata(Gz) ”):

---

F = G =

[ 0.1754 -0.2468 -0.2188 -0.1198 -0.05324] [ 0.006814 ] [ 0.8722 0.775 -0.2068 -0.1171 -0.05328] [ 0.006819 ] [ 0.2182 0.3681 0.9702 -0.01712 -0.00786] [ 0.001006 ] [ 0.0322 0.07669 0.3969 0.9982 -0.0008333] [ 0.0001067 ] [ 0.001707 0.005198 0.03987 0.1999 1] [ 4.432e-06 ]

C = [ 0 0 0 0 0.488 ] D = 0

---

• One can easily verify that:

F = e AT

c

--- expm(A*Tc) =

[ 0.1754 -0.2468 -0.2188 -0.1198 -0.0532]

[ 0.8722 0.7750 -0.2068 -0.1171 -0.0533]

[ 0.2182 0.3681 0.9702 -0.0171 -0.0079]

[ 0.0322 0.0767 0.3969 0.9982 -0.0008]

[ 0.0017 0.0052 0.0399 0.1999 1.0000]

---

(5)

• At the sampling instants t k = kT c the outputs of systems G(s) and G(z) are exactly the same if the input signal u(k) is the same for the two systems.

• Step response of systems G(s) and G(z) for different values of the sampling period T c = [0.05, 0.1, 0.15, 0.2]:

0 0.5 1 1.5 2 2.5 3

0 0.01 0.02 0.03 0.04 0.05 0.06 0.07

Step response of systems G(s) and G(z)

y(k)

Time [s]

• Input signal u(k) = sin(10 k T c ) and output signal y(k) of the two systems G(s) and G(z) when T c = 0.05:

0 0.5 1 1.5 2 2.5 3

−1

−0.5 0 0.5 1

Input signal u(k)

u(k)

0 0.5 1 1.5 2 2.5 3

−0.03

−0.02

−0.01 0 0.01 0.02 0.03

Response of systems G(s) and G(z) to signal u(k)

y(k)

Time [s]

Riferimenti

Documenti correlati

In this paper we study the asymptotic behavior of solutions to an elliptic equation near the singularity of an inverse square potential with a coefficient related to the best

In Section 4 we prove Theorem 1.1 by combining the Pohozaev type identity with the results of our local blow-up analysis.. Section 5 is devoted to the computation of the

Performances of continuous time Bayesian network classi- fiers in the case of classification and clustering are analyzed with the help of a rich set of numerical experiments on

But these properties are far from to be essential: in particular, more important would be to know that the matrix A is well conditioned.. (Of course, all this is convenient if S is

• In Matlab, a continuous time function ”gs” can be discretized using the following

• From this last relation it follows that for continuous-time systems the osservability implies and is implied by the constructability:. Observability

The corresponding discrete sampled system (F, G, H) can be deter- mined as follows.. Let T the

Flash quantizer was used in previous implementations of the modulator, [30, 31], in this version to further improve the power consumption a SAR quantizer was used, a few ∆Σ