Contenu principal

Créer des modèles en temps discret

Cet exemple indique comment créer des modèles linéaires en temps discret au moyen des commandes tf, zpk, ss et frd.

Spécifier des modèles en temps discret

Control System Toolbox™ vous permet de créer aussi bien des modèles en temps continu et en temps discret. La syntaxe pour la création des modèles en temps discret est similaire à celle des modèles en temps continu, si ce n’est que vous devez également fournir un pas d’échantillonnage (intervalle d’échantillonnage en secondes).

Par exemple, pour spécifier la fonction de transfert en temps discret :

H(z)=z-1z2-1.85z+0.9

avec une période d’échantillonnage Ts = 0.1 s, écrivez :

num = [ 1  -1 ];
den = [ 1  -1.85  0.9 ];
H = tf(num,den,0.1)
H =
 
        z - 1
  ------------------
  z^2 - 1.85 z + 0.9
 
Sample time: 0.1 seconds
Discrete-time transfer function.
Model Properties

ou, de manière équivalente :

z = tf('z',0.1);
H = (z - 1) / (z^2 - 1.85*z + 0.9);

De même, pour spécifier le modèle de représentation d’état en temps discret :

x[k+1]=0.5x[k]+u[k]

y[k]=0.2x[k].

avec une période d’échantillonnage Ts = 0.1 s, écrivez :

sys = ss(.5,1,.2,0,0.1);

Reconnaître des systèmes en temps discret

Il y a plusieurs façons de déterminer si votre modèle LTI est discret :

  • L’affichage montre une valeur de pas d’échantillonnage non nulle

  • sys.Ts ou get(sys,'Ts') renvoient une valeur de pas d’échantillonnage non nulle.

  • isdt(sys) renvoie vrai.

Par exemple, pour la fonction de transfert H spécifiée ci-dessus,

H.Ts
ans = 
0.1000
isdt(H)
ans = logical
   1

Vous pouvez également repérer les systèmes en temps discret en recherchant les traits suivants :

  • Tracés de réponses temporelles - La courbe de réponse a une apparence en escalier en raison de la nature des données échantillonnées

  • Diagramme de Bode - Il y a une barre verticale qui marque la fréquence de Nyquist (pi divisé par le pas d’échantillonnage).

Les tracés suivants montrent ces traits caractéristiques :

step(H)

MATLAB figure

bode(H), grid

MATLAB figure