IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Signal Discussion :

Matlab Modulation QAM


Sujet :

Signal

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Juillet 2009
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 50
    Par défaut Matlab Modulation QAM
    Bonjour, je fais un mini projet qui consiste à faire de la modulation démodulation QAM.Le prof m' a déja propozé le debut du programme qui consiste à convertir une sequence binaire en un signal en 1 et -1 mais je n arrive pas à le comprendre puisque je sui debutant en ça! si quelquin peut bien m 'expliquer j en serai reconnaissant et merci . voila le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    clear;
    b=input('Entrer une séquence binaire\n');
    n=length(b);
    t=0:0.001:n;
    x=1:1: (n+2)*1000;
     
    for i=1 : n
    if (b(i)==0))
    b_p(i)=-1;
    else
    b_p(i)=1;
    end
     
     
    ba(x(i*1000: (i+1) *1000))=b(i);
    bw(x(i*1000: (i+1) *1000))=b_p(i);
    if (mod(i,2)==0)
    bow(x(i*1000: (i+1) *1000))=b_p(i);
    bow(x((i+1)*1000: (i+2) *1000))=b_p(i);
    else
    bew(x(i*1000: (i+1) *1000))=b_p(i);
    bew(x((i+1)*1000: (i+2) *1000))=b_p(i);
    end
    if (mod(n,2)~=0)
    bow(x(n *1000: (n+1) *1000))=-1;
    bow(x((n+1) *1000: (n+2)*1000))=-1;
    end
    end
    ba=ba(1000:end);
    bw=bw(1000:end);
    bew=bew(1000: (n+1) *1000);
    bow=bow(2000: (n+2) *1000);
     
     figure(1)
    subplot(2,1,1)
    plot(t,bw)
    grid on;axis ([0 n -2 +2])
    title('Signal converti en niveaux de 1 et -1');

  2. #2
    Modérateur

    Homme Profil pro
    Ingénieur en calculs scientifiques
    Inscrit en
    Août 2007
    Messages
    4 639
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Ingénieur en calculs scientifiques

    Informations forums :
    Inscription : Août 2007
    Messages : 4 639
    Par défaut
    Salut,

    qu'est ce que tu ne comprends pas?

    une première approche est de l'exécuter ligne par ligne en regardant le résultat et en essayant de comprendre...
    Pour une bonne utilisation des balises code c'est ici!
    Petit guide du voyageur MATLABien : Le forum La faq Les tutoriels Les sources


    La nature est un livre écrit en langage mathématique. Galilée.

  3. #3
    Membre averti
    Inscrit en
    Juillet 2009
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 50
    Par défaut
    salut , ce que je ne comprend pas c'est surtout les variables ba bw bew et bow ! je ne sais pas a quoi elles servent ! et puis pourquoi on multiplie par 1000? ça sera quoi l'output de ce bout de programme... bref voila ce que je veux savoir !merci pour le passage

  4. #4
    Modérateur

    Homme Profil pro
    Ingénieur en calculs scientifiques
    Inscrit en
    Août 2007
    Messages
    4 639
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Ingénieur en calculs scientifiques

    Informations forums :
    Inscription : Août 2007
    Messages : 4 639
    Par défaut
    Citation Envoyé par neutrall Voir le message
    salut , ce que je ne comprend pas c'est surtout les variables ba bw bew et bow ! je ne sais pas a quoi elles servent ! et puis pourquoi on multiplie par 1000? ça sera quoi l'output de ce bout de programme... bref voila ce que je veux savoir !merci pour le passage
    As-tu seulement essayer de l'exécuter? tu l'as dis toi-même : ce programme sert à convertir une séquence binaire en un signal en 1 et -1.

    Il y a des choses un peu inutile dans ce programme mais bon, passons...

    comme tu peux le voir, la sortie affichée dans la figure, c'est bw. La multiplication des indices par 1000, c'est pour échantillonner le signal, pour chaque élément de ta séquence, on va lui attribuer 1000 échantillons du signal (si c'est un 1, on aura 1000 '1', si c'est un 0, on aura 1000 '-1'). C'est ainsi qu'est construit le signal bw.

    ba semble être la même chose que bw mais avec des 0 et des 1.
    Quant à bew et bow, je ne sais pas trop, il sont sûrement utile dans la suite du programme de modulation...
    Pour une bonne utilisation des balises code c'est ici!
    Petit guide du voyageur MATLABien : Le forum La faq Les tutoriels Les sources


    La nature est un livre écrit en langage mathématique. Galilée.

  5. #5
    Membre confirmé
    Inscrit en
    Mai 2008
    Messages
    112
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 112
    Par défaut
    Citation Envoyé par neutrall Voir le message
    Bonjour, je fais un mini projet qui consiste à faire de la modulation démodulation QAM.Le prof m' a déja propozé le debut du programme qui consiste à convertir une sequence binaire en un signal en 1 et -1 mais je n arrive pas à le comprendre puisque je sui debutant en ça! si quelquin peut bien m 'expliquer j en serai reconnaissant et merci . voila le code :
    Salut, neutrall!
    Je ne sais pas comment tu veux les transformer. Si tu veux le "0" en "-1", alors parcours ta sequence avec une boucle for et tu pose la condition if pour transformer le "0" en "-1".
    Ceci mache aussi si tu veux mettre le "1" en "-1" et le "0" en "1".

    Merlinerick

Discussions similaires

  1. Aide matlab module pv
    Par espoirespoir2010 dans le forum MATLAB
    Réponses: 2
    Dernier message: 07/09/2011, 12h48
  2. Module matlab: probleme "unassigned output"
    Par nightfire dans le forum MATLAB
    Réponses: 5
    Dernier message: 08/12/2009, 12h05
  3. "Phase shift " d'un signal module en matlab
    Par mihaispr dans le forum Signal
    Réponses: 2
    Dernier message: 02/08/2009, 10h28
  4. Modulation GFSK/OFDM avec Simulink/matlab
    Par somaa dans le forum Simulink
    Réponses: 0
    Dernier message: 15/05/2009, 11h14
  5. modulation d'amplitude en quadrature (QAM)
    Par sousou2007 dans le forum C++
    Réponses: 0
    Dernier message: 13/10/2007, 22h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo