Répondre à la discussion
Affichage des résultats 1 à 6 sur 6

reccurence et transformée en Z



  1. #1
    ABN84

    reccurence et transformée en Z


    ------

    Bonjour,
    j'ai du mal à trouver l'erreur dans ce que je fais, peut etre est ce une incomprehension de ma part:
    prenons la fonction de transfert:
    s + 1
    -----------
    s^2 + s + 1
    si je calcule la transformée en Z (échantillonnée à 0.01s), je trouve :
    0.01 z - 0.0099
    -------------------
    z^2 - 1.99 z + 0.99

    qui equivaut à
    - 0.01 z^-2 0.0101 z^-1
    -------------------
    z^-2 - 2.0099 z^-1 + 1.0101

    l'equation de recurrence correspondant devrait etre:

    y(i)=0.01*u(i-1)-0.0101*u(i)+2.0099*y(i-2)+1.0101*y(i-1)

    or si je simule la sortie de la fonction de tranfert intiale pour une entrée echelon ainsi que la sortie de l'equation de recurrence, je n'obtiens pas la meme chose loin de là.
    Ou ai-je fait une erreur?
    merci

    -----
    "Engineering is the art of making what you want from what you get"

  2. Publicité
  3. #2
    acx01b

    Re : reccurence et transformée en Z

    salut, quel rapport entre les deux fonctions dont tu parles ?
    quel calcul fais-tu pour avoir ta transformée en z à partir de ta transformée de laplace ?

    Citation Envoyé par ABN84 Voir le message
    or si je simule la sortie de la fonction de tranfert intiale pour une entrée echelon
    tu obtiendras une fonction de transformée de Laplace

    Citation Envoyé par ABN84 Voir le message
    ainsi que la sortie de l'equation de recurrence
    pour quelle entrée ?

  4. #3
    ABN84

    Re : reccurence et transformée en Z

    Bonjour,
    tout est fait dans matlab
    Citation Envoyé par acx01b Voir le message
    salut, quel rapport entre les deux fonctions dont tu parles ?
    quel calcul fais-tu pour avoir ta transformée en z à partir de ta transformée de laplace ?
    Pour passer de la TF continue à la TF discrete, j'ai utilisé la fonction c2d
    on peut verifier si tu fait step(H) ou step(c2d(H,0.01)) que les sorties sont identiques. jusque là tout va bien.
    la TF discrete obtenue est exprimée en puissances positives de z.
    il me semble que pour sortir l'equation de recurrence, il fallait avoir des puissances negatives, j'ai donc divisé par 0.99*z^2, numerateur et denominateur.
    de memoire
    a1*z^-1+a0
    ------------------
    z^-2+b1*z^-1+b0
    peut se transformer en une equation de recurrence pour un filtre à reponse infinie:


    je programme:
    Code:
    for i=3:n
          y(i)=...;
    end
    mais le y obtenu pour u(1:n)=1 n'a rien à voir avec ce que tu obtiens avec la simulation directe avec les fonctions dediées matlab:
    .
    Merci
    Dernière modification par ABN84 ; 26/02/2011 à 10h09.
    "Engineering is the art of making what you want from what you get"

  5. #4
    acx01b

    Re : reccurence et transformée en Z

    salut, déjà est-ce que tu es d'accord qu'ici de toute façon tu feras une approximation en discrétisant ton système continu car celui-ci n'est pas borné en fréquence (tu connais le théorème de shannon ?)

    je n'ai rien compris à lsym, et si tu fais :
    u = ones(1,4096);
    y = filter([b0,b1],[a0,a1,a2],u);

  6. #5
    ABN84

    Re : reccurence et transformée en Z

    salut, déjà est-ce que tu es d'accord qu'ici de toute façon tu feras une approximation en discrétisant ton système continu car celui-ci n'est pas borné en fréquence (tu connais le théorème de shannon ?)
    on est d'accord.
    filter donne le bon résultat:
    Code:
    s=tf('s');
    H=c2d((s+1)/(s^2+s+1),0.01)
    num=H.num{1,1}
    den=H.den{1,1}
    Te=0.01
    t=0:Te:10;
    u=ones(1,length(t));
    lsim(H,u,t)
    hold on
    y=filter(num,den,u);
    plot(t,y,'r')
    donc le pb ne vient pas du calcul des coefficients mais de la boucle for dans ce cas.
    "Engineering is the art of making what you want from what you get"

  7. A voir en vidéo sur Futura
  8. #6
    ABN84

    Re : reccurence et transformée en Z

    bonjour,
    bien ecrit, il n'y a plus de problème.
    Merci quand meme, l'utilisation de filter m'a aidé à bien localiser le pb:
    Code:
    for n=3:length(t)
             y(n) = [u(n);u(n-1);u(n-2);y(n-1);y(n-2)]'*[b ,-a(2:end)]';
    end
    "Engineering is the art of making what you want from what you get"

  9. Publicité

Discussions similaires

  1. Transformée de Kramers-Kronig (Transformée de Hilbert) d'une parabole
    Par Ed_Ohzora dans le forum Mathématiques du supérieur
    Réponses: 2
    Dernier message: 16/05/2009, 13h18
  2. reccurence
    Par ABN84 dans le forum Mathématiques du supérieur
    Réponses: 1
    Dernier message: 21/04/2009, 17h37
  3. Curiosité : lien entre transformée de Laplace et la transformée en Z
    Par erff dans le forum Mathématiques du supérieur
    Réponses: 2
    Dernier message: 18/09/2008, 00h42
  4. Réccurence TL
    Par toutankhamon dans le forum Mathématiques du collège et du lycée
    Réponses: 3
    Dernier message: 11/09/2007, 13h04
  5. reccurence double.
    Par lolouki dans le forum Mathématiques du supérieur
    Réponses: 3
    Dernier message: 12/11/2006, 22h32