# TPS - TP 4 ###### tags: `TPS` `S2` ## simulation ### emetteur 1) ![](https://i.imgur.com/WLaMdfV.png) 2) Relation entre le temps bit et le temps symbole: N = nombre de bits par symbole Tb = temps bit, Ts = N * Tb ![](https://i.imgur.com/OqsdpEl.png) Dans cette fenetre on voit bien que la periode de D2 est de 2 fois le bit time (donc le nombre de symbole par bits est de 2) 3) ![](https://i.imgur.com/tGqoEfq.png) Pour changer la constellation de manière a avoir l'affichage en bits il faut changer le parametre input type du bloc mapping 4) Les 2 bits sont chacun liés à la valeur I(k) ou Q(k) | premier bit | deuxieme bit | | -------- | -------- | | 0 = im positif 1 = im négatif | lié à Q(k) | | 0 = re positif 1 = re négatif | lié à I(k) | 5) Les blocs qui génèrent cos(wt) et sin(wt) sont des blocs sinwave, la fréquence de la porteuse (et donc de ces blocs) est a 2000pi. 6) ![](https://i.imgur.com/1id4nnl.png) 7) On utilise les cursor mesurements pour connaitre la largeur de la bande principale. on trouve $$ \Delta = 100Hz $$ ![](https://i.imgur.com/HtAf5Jg.png) La DSP se lit directement sur le schéma ou avec peak finder : 10.81 dBm/Hz pour la fréquence porteuse. En mW: 12.05 mW/Hz On compare cette valeur à la valeur obtenue avec la formule de benett (j'ai la flemme de la mettre donc osef). :warning: dans le tp fc = carrier frequence (frequence porteuse pour hugo qui ne parle pas top anglais). $$ Sxx(f) = \frac{T_s}{2} * sinc^2(\pi (f - f_c) * T_s) $$ Si on prend la valeur à la fréquence de la porteuse, sinc = 1. On a Ts/2 car il y a un lobe symétrique à -fc. AN avec la formule : 10 mW/Hz soit 10 dBm/Hz ### 1.2 Le recepteur, partie RF 1. montage 2. ![](https://i.imgur.com/1Zv1Q7h.png) on regle la frequence fp du filtre (passband edge frequency) à 1200 Hz (environ fc + ordre de grandeur du lobe principal) On remarque que I-demod n'est quand meme pas synchronisé à I mais osef la forme est OK ## 2. Emission Réelle avec USRP ### 2.1 Premiere approche On fait le montage avec les valeurs suivantes __bernouilly binary__: sample time 1e-4 bit per sample 2 __QPSK Modulator Baseband__: no config __upsample__: 10 allow multirate processing __Discrete FIR filter__: coefficients: ones(1, 10) __buffer__: no config __SDRU Transmitter__: fc = 2.4545e9 master clock rate = 25,6 MHz interpolation factor = 256 sample rate = frequence des symboles (100kHz avec le upsample) Le upsample + FIR filter permettent d'ajouter des échantillons. Spectre obtenus span : 0.1 MHz average (Traces/Markers > Trace Mode) set ref : -30 dBm ![](https://i.imgur.com/uzImKMG.jpg) montage simulink : ![](https://i.imgur.com/wVLST5w.png) ### Le filtre d'emission (ou de mise en forme) Le filtre de mise en forme permet de réduire la bande du spectre utilisée. Pour cela on utilise un cosinus surélevé à la place du filtre ones(1, 10) : rcosdesign(alpha, span, OSR, shape) les valeurs utilisées sont alpha (roll-off): 0.2 span 8 OSR (Oversampling Ratio): 10 shape: normal On peut tester directement dans matlab avec la commande > my_filter = rcosdesign(alpha, span, OSR, shape) > fvtool(my_filter) ![](https://i.imgur.com/7LrAxIV.png) :warning: pour afficher la réponse fréquencielle et pas impulisonnelle c'est :arrow_up: réponse sur 37 échantillons, max à 18