[RF/Radioelec] compression d'impulsion en utilisant le code de barker
Répondre à la discussion
Affichage des résultats 1 à 18 sur 18

compression d'impulsion en utilisant le code de barker



  1. #1
    bakrimmed

    compression d'impulsion en utilisant le code de barker


    ------

    boujour à toutes et à tous.
    svp j'ai besoin de votre aide dans un projet sur le quel je travaille.
    ce projet consiste à appliquer la compression d'impulsion sur un signal sinusoidal sin(2*pi*f*t) avec f=25KHz, en utilisant une modulation biphasé(code de barker).
    mais ce que j'ai obtenu c'est que le SNR apres une autocorrelation entre signal transmis et signal recu pour le signal modulé est inférieur à celui d'un signal non modulé .donc s'il vous pelait est ce que ca est normal sachant que parmi les avantages de la compression d'impulsion augmenter le SNR. et pour avoir une bonne compression on doit utiliser un signal modulé.
    et merci d'avance.

    -----

  2. #2
    DAUDET78

    Re : compression d'impulsion en utilisant le code de barker

    Bonjour bakrimmed et bienvenue sur FUTURA
    Citation Envoyé par bakrimmed Voir le message
    svp j'ai besoin de votre aide dans un projet sur le quel je travaille.
    ce projet consiste à appliquer la compression d'impulsion sur un signal sinusoidal sin(2*pi*f*t) avec f=25KHz, en utilisant une modulation biphasé(code de barker).
    Grace à ta question, je vais tacher de me rendormir un peu moins sot en ayant regardé ce que c'était que le code de Barker
    Je ne sais pas si tu vas trouver un spécialiste des radars
    mais ce que j'ai obtenu c'est que le SNR apres une autocorrelation entre signal transmis et signal recu pour le signal modulé est inférieur à celui d'un signal non modulé .
    Mais , si il existe, je pense qu'il te demanderas si c'est un essai réel, un calcul mathématique ou une simulation. Bref, un peu plus de détails .
    Dernière modification par gienas ; 23/08/2017 à 08h07.
    J'aime pas le Grec

  3. #3
    micka_ch

    Re : compression d'impulsion en utilisant le code de barker

    Bonjour,

    Je n'ai jamais expérimenté la compression par codage de phase mais j'ai déjà utilisé un chirp linéaire pour de la mesure de distance avec des transducteurs ultrasons.

    Peut-être je peux aider si plus de détail il y a (mesures, courbes, calculs , code matlab , ....)

    Salutations

  4. #4
    annjy

    Re : compression d'impulsion en utilisant le code de barker

    Citation Envoyé par micka_ch Voir le message
    Bonjour,

    Je n'ai jamais expérimenté la compression par codage de phase mais j'ai déjà utilisé un chirp linéaire pour de la mesure de distance avec des transducteurs ultrasons.

    Peut-être je peux aider si plus de détail il y a (mesures, courbes, calculs , code matlab , ....)

    Salutations
    Effectivement, si la fréquence indiquée est exacte, on est plus dans le domaine sonar que radar.
    Le principe reste le même.
    Par contre dans le domaine sonar, les phénomènes de propagation peuvent être plus complexes.....

    mais comme on n'a effectivement pas de détails.....

    A+,
    JY

  5. A voir en vidéo sur Futura
  6. #5
    bakrimmed

    Re : compression d'impulsion en utilisant le code de barker

    merci a vous tous.
    alors la simulation que nous avons fait c'est d'envoyer un signal pour une duree de 0.01S et on genere un autre siganl identique au signal transmis decalé de 0.03s + un bruit gaussian blan et on fait l'autocorrelation entre ces signaux
    pour le premier cas le signal transmis est un sinus sin(2*pi*f*t) et pour le deuxieme on envoie le meme signal du premier cas mais apres une modulation de phase
    et ce qu'on a obtenu comme resultat c'est : (SNR1: before correlation , SNR2: after correlation)
    For 7bit barker code
    SNR1 =10.4213
    SNR2 =55.9106
    For 11bit barker code
    SNR1 =10.5402
    SNR2 =54.0267
    For 13bit barker code
    SNR1 =10.2933
    SNR2 =53.4273
    unmodulated signal
    SNR1 =10.3518 dB
    SNR2 =69.3871 dB

  7. #6
    bakrimmed

    Re : compression d'impulsion en utilisant le code de barker

    un autre probleme due nous avons rencontrer c'est que la compression d'impulsion nous importera une grande bande passante compare' au pure tone.
    et on a interet a travailler sur des multi-canaux, c-a-d avec le pure tone, je px envoyer 8 pulses differents sur une bande de 8KHz, exemple: le premier pulse sur 20KHz, 2eme sur 21KHz...8eme sur 28Khz.
    Alors qu'avaec la compression d'impulsion, surtout module' en frequence, on doit occuper toute la bande pour un seul pulse.
    Donc svp est ce qu'il y a une solution pour faire du multi-canaux avec des pulse wide-band (module') ?? merci

  8. #7
    bakrimmed

    utilisation des multi-canaux avec la compression d'impulssion

    boujour à toutes et à tous.
    svp j'ai besoin de votre aide car j'arrive pas à avancer dans un projet sur lequel je travaille.
    ce projet consiste à appliquer la compression d'impulsion sur un signal sinusoidal sin(2*pi*f*t) avec f=25KHz, en utilisant une modulation biphasé(code de barker).
    mais le probleme que nous avons rencontrer c'est que la compression d'impulsion nous importera une grande bande passante compare' au pure tone.
    et on a interet a travailler sur des multi-canaux, c-a-d avec le pure tone, je px envoyer 8 pulses differents sur une bande de 8KHz, exemple: le premier pulse sur 20KHz, 2eme sur 21KHz...8eme sur 28Khz.
    Alors la compression d'impulsion, surtout module' en frequence, on doit occuper toute la bande pour un seul pulse.
    Donc svp est ce qu'il y a une solution pour faire du multi-canaux avec des pulse wide-band (module') ?? merci

  9. #8
    antek

    Re : utilisation des multi-canaux avec la compression d'impulssion

    Citation Envoyé par bakrimmed Voir le message
    Donc svp est ce qu'il y a une solution pour faire du multi-canaux avec des pulse wide-band (module') ?? merci
    Si tu n'obtiens pas de ici, essaye dans le forum PHYSIQUE.éponse.

  10. #9
    micka_ch

    Re : compression d'impulsion en utilisant le code de barker

    Bonjour,

    Je pense que si tu veux de l'aide, il va falloir partagé ta simulation, du moins la partie qui te pose problème.

    Salutations

  11. #10
    bakrimmed

    Re : compression d'impulsion en utilisant le code de barker

    Nom : spectral.JPG
Affichages : 262
Taille : 99,3 Ko
    voila la representation spectral du signal apres correlation en prenant en consediration que le signal avant modelation est de frequnce 25000Hz

  12. #11
    bakrimmed

    Re : compression d'impulsion en utilisant le code de barker

    Nom : resultat.JPG
Affichages : 249
Taille : 116,1 Ko voila le resulat de la compression avec le signal modulé (remarque la durée et le retard que j'ai mentionée est changé pour cette figure mais le resultat reste le meme)

  13. #12
    bakrimmed

    Re : compression d'impulsion en utilisant le code de barker

    Nom : 23.JPG
Affichages : 264
Taille : 138,1 Ko
    voila le signal transmis/signal recu/signal apres correlation pour le signal unmodulé avec un zoom in sur ces figure (on remarque que la compression est movaise)

  14. #13
    bakrimmed

    Re : compression d'impulsion en utilisant le code de barker

    Nom : 123.JPG
Affichages : 254
Taille : 29,0 Ko
    voilala representation spectrale apres correlation pour le signal unmodulé qui contient jute la frequence du signal transmis

  15. #14
    micka_ch

    Re : compression d'impulsion en utilisant le code de barker

    Bonjour,

    J'ai fait une petite simu avec Matlab et je n'obtient pas la même chose au niveau du signal résultant de la corrélation :

    Nom : Barker7.png
Affichages : 255
Taille : 14,3 Ko

    Voici le script :

    Code:
    Tf=      0.05;          % Longueur de la séquence
    Tpuls =  0.010;          % Durée de la pulse
    NCode=     7;           % Longueur séq. pseudo-aléatoire
    fs =   500000;          % Sampling rate of signal
    Ts =     1/fs;          % Période d'échant.
    fc =    25000;          % Freq. signal
    NPwr = -20;             % puissance du bruit
    bitwidth=round(Tpuls/(NCode*Ts));
    N = round(Tf/Ts);
    Ndelay =round( 0.02/Ts);
    
    hBCode = comm.BarkerCode('SamplesPerFrame', NCode);
    seq = step(hBCode);
    
    seq2=zeros(1,N);
    for i=1:length(seq)
        for j=1:bitwidth
            seq2(j+(bitwidth*(i-1)))=seq(i);
        end
    end
    t = 0:Ts:(N-1)*Ts;
    wt = 2*pi*t*fc;
    s1 = seq2.*sin(wt);
    
    s2 = [zeros(1,Ndelay) s1(1:end-Ndelay)];
    s2 = s2+wgn(1,N,NPwr);
    
    subplot(3,1,1)
    plot(t*1000,s1);
    xlabel('Time [ms]')
    grid on
    hold on
    plot(t*1000,seq2,'Color','r')
    ylabel('TX singal (s_1)')
    str1 = sprintf('Barker-%d Code',NCode);
    legend('Modulated',str1)
    hold off
    subplot(3,1,2)
    plot(t*1000,s2)
    xlabel('Time [ms]')
    ylabel('RX singal (s_2)')
    grid on
    
    subplot(3,1,3)
    cout = xcorr(s2,s1);
    plot(t*1000,cout(N:end));
    grid on
    xlabel('Time [ms]')
    ylabel('XCor(s_2,s_1)')
    Je pense que le résultat est correct car l'enveloppe correspond à l'autocorrélation du code (que l'on trouve sur wikipedia par exemple).

    Salutations
    Dernière modification par micka_ch ; 28/08/2017 à 14h49.

  16. #15
    bakrimmed

    Re : compression d'impulsion en utilisant le code de barker

    je pense que le fait de prendre les sequences de barker aleatoirement est deriere le resultat que vous avez obtenu c'est pour cela il faut prendre les sequences de barker prédefinies et utiliser la methodes d'extension du code suivi pour le code barker

  17. #16
    bakrimmed

    Re : compression d'impulsion en utilisant le code de barker

    voila le code que j'ai fait:
    Code:
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    %%IDAOUBAKRIM 
    %%version 1.0
    %%08/20/2017
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    %generation of trans and received signal for barcker
     clear all;
     clc
     t = 0:1/162500: (0.05-1/162500); %sampling step
     delay_tx_rx=0.03;  %delay between trans and received signal
     barker4=[1,1,0,1];%4 bit barker code
     barker5=[1,1,1,-1, 1];%5 bit barker code
     barker13=[1,1,1,1,1,-1,-1,1,1,-1,1,-1,1];
     barker55=zeros(size(t));
     for i=1:5
         for j=1:5
             barker55(5*i-(5-j))=barker5(j)*barker5(i);
         end
     end
      for i=1:5
         for j=1:13
             barker513(13*i-(13-j))=barker5(i)*barker13(j);
         end
     end
     barker51355=zeros(size(t));
     for i=1:65
         for j=1:25
             barker51355(25*i-(25-j))=barker513(i)*barker55(j);
         end
     end
     %generation of the acoustical signal
     x = zeros(size(t));
     x = sin(2*pi*25000*t).*(t<=0.01)+sin(0).*(t>0.01);
     %modulation of the transmitted signa 
     x_mod=zeros(size(t));
     x_mod= x.*barker51355;
    %generation of received signal
     xd = zeros(size(t));
     xd=[zeros(1,delay_tx_rx*162500), x_mod(1: (0.05-delay_tx_rx)*162500)];
    
     %adding noise to received signal
     noisedSignal = awgn(xd, 20);
     %ploting trans and received signal
     figure(1)
     subplot(3,1,1)
     plot(t,x);
     grid();
     subplot(3,1,2)
     plot(t, xd);
     grid()
     
     cor=xcorr(x_mod,xd);%result of using matched filter for the signal without noise
     disp('maximum found at  : '); 
     disp((find(cor==max(cor)))/162500);
     %ploting received signal after using matched filter (without noise)
     subplot(3,1,3);
     plot(cor);
     grid();
    %using matched filter for the signal with noise
    cor2=xcorr(x_mod,noisedSignal);
     
     % %calculation of SNR
    S = mean(x.^2); %calculate the power of trans signal
    SN = mean(noisedSignal.^2); %calculate the power of received signal with noise
    N = mean((noisedSignal-xd).^2);%calculate the power of received noise
    SN2 = mean((cor2).^2);%calculate the power of received signal after matched filter
    
    SNR1=10*log(SN/N)/log(10)%calculation of SNR before matched filter
    SNR2=10*log(SN2/N)/log(10)%calculation of SNR after matched filter
    
    %ploting received signal before and after using matched filter (with noise)
    figure (2);
    subplot(2,1,1);
    plot(t, noisedSignal);
    grid();
    subplot(2,1,2);
    plot(cor2);
    grid();
    disp('maximum found at  : '); 
    disp((find(cor2==max(cor2)))/162500);
    %ploting the spectral representation of the signal after using matched
    %filter
    figure (3);
    
    n=16249;
    freqlim=0.5*162500;
    freq = linspace(-freqlim,freqlim,n);
    plot(freq,fftshift(abs(fft(cor2))));
    XLABEL('frequency Hz');
    Dernière modification par Antoane ; 28/08/2017 à 18h04. Motif: Remplacement balise quote par code

  18. #17
    bakrimmed

    Re : compression d'impulsion en utilisant le code de barker

    Nom : 1234.JPG
Affichages : 256
Taille : 81,0 Ko
    voila la mdthode pour l'extension du code
    Dernière modification par bakrimmed ; 28/08/2017 à 18h11.

  19. #18
    micka_ch

    Re : compression d'impulsion en utilisant le code de barker

    Bonjour,

    sequences de barker aleatoirement
    ??

    La séquence que j'ai pris n'est pas aléatoire...

    seq' = -1 -1 -1 1 1 -1 1

    Par contre tu n'a pas mentionné que tu faisait du 5*5*5*13, tu parlais de 7, 11 et 13 bit.

    Je ne suis pas expert en modulation BPSK mais à mon avis, avoir un Tbit << Tporteuse c'est pas top. Ta porteuse est a 25 kHz, ta séquence binaire est à 162.5 kBit/s ! Il doit y avoir une limite théorique entre la fréquence de la porteuse et la fréquence du code binaire mais je ne la connais pas.

    Je pense qu'il est préférable de faire une modulation cohérente, ou la période d'un bit et en nombre entier de la période de la porteuse.

    Salutations

Discussions similaires

  1. Réponses: 11
    Dernier message: 29/07/2014, 23h26
  2. En utilisant la définition de la continuité
    Par jojoxxp4 dans le forum Mathématiques du supérieur
    Réponses: 6
    Dernier message: 06/01/2014, 16h27
  3. Un langage codé léger, 2 caractères non codé=1 caractère codé. Une solution?
    Par invite06e0b926 dans le forum Mathématiques du supérieur
    Réponses: 1
    Dernier message: 30/06/2010, 11h02
  4. apareil utilisant un cil
    Par croco01 dans le forum Électronique
    Réponses: 3
    Dernier message: 11/11/2008, 02h15
  5. l'internet en utilisant le modem
    Par inviteec0c9d8b dans le forum Internet - Réseau - Sécurité générale
    Réponses: 6
    Dernier message: 10/02/2008, 22h53
Découvrez nos comparatifs produits sur l'informatique et les technologies.