TP 1 : Modulation d’AmplitudeMATLAB Analogique 1. THEORIE : MODULATION D'AMPLITUDE Dessiner le chronogramme et le spectre d'une modulation d'amplitude sans et avec porteuse dont la fréquence de la porteuse a pour valeur 1000 Hz et dont le signal modulant est un signal sinusoïdal de fréquence 100 Hz. On démodule ce signal modulé par détection synchrone. Cette détection utilise un filtre. Quel est son type ? Comparer sa fréquence de coupure à la fréquence du signal modulant 100 Hz et celle de la porteuse 1000Hz. 2. UTILISATIONDEMATLAB-SIMULINK 2.1. Lancement de Matlab-Simulink 2.1.1 Lancement de Matlab Lancer Matlab. Créer un répertoire, par exemple ModAm et placer sur le bureau de votre ordinateur. Le nom de votre répertoire doit contenir moins de 8 caractères et pas d’espace. 2.1.2 Lancement de Simulink Appeler l’outil d'édition graphique en cliquant sur l’icône présent dans la barre d’outils de Matlab (ou en tapant simulink dans la fenêtre de commande de Matlab) : Créer ou ouvrir une feuille de travail : Les fichiers ont l’extension .mdl Nommer-le init.mdl 1 2.1.3 Librairies Les divers éléments de la librairie sont alors disponibles : Librairie simulink : Continuous : Blocs linéaires définis par leurs fonctions de transfert Discrete: idem mais en échantillonné Functions & Tables : Blocs de fonctions mathématiques Math: Blocs d'opérateurs mathématiques et logiques Nonlinear : commutateurs et autres non linéarités Signals & Systems : Divers signaux et blocs Sinks: Outils d'analyse des signaux Sources : Générateurs de signaux Librairie Communications Blokset : Channel Coding : Blocs de séquence de codage et decodage Channels: Divers canaux de transmission bruités,… Comm Sinks : Outils d'analyse des signaux pour les communications Comm Sources : Générateurs de signaux pour les communications Modulation : Modulations et démodulations numriques et analogiques Source Coding : Numérisation, compression,… Synchronisation: Divers PLL Utility Functions : Autres fonctions pour les communications Librairie Simulink Extras : Additional Discrete: Blocs définis par leur fct de transfert en échantillonné Additional Linear : Blocs linéaires définis par leurs fonctions de transfert Additional Sinks: Autres outils d'analyse des signaux Flip Flops : Blocs de bascules logiques Linearization : Transformations : Transformations cartesiens-polaires, degréradians,… 2.2 Configurations Les signaux que l'on vous demande d'analyser sont de 2 types : - l'information à transmettre de fréquence fm de l'ordre de 100 Hz (ωm = 628.3 rd/s). - le signal porteur de fréquence de l'ordre de 1000 Hz ((ωp = 6283 rd/s). Deux paramètres sont à configurer : - La période d'échantillonnage dans certains blocs (par exemple dans Properties/General du Scope). - Le "stop time" qui définit la durée de calcul par Matlab dans Simulations/Parameters : 2 2.2.1 Période d'échantillonnage (pour le bloc SCOPE) Il faut que la fréquence d'échantillonnage soit bien supérieure à celle imposée par Shannon : Théoriquement deux fois la fréquence de la porteuse à 1000 Hz soit 2000 Hz. Pratiquement on choisit donc une fréquence d'échantillonnage de calcul cent fois plus grande, soit : fe = 100 * 1000 = 100 kHz ⇒Te = 1/fe =10 µs. La valeur à rentrer est donc : période d'échantillonnage = 10 µs = 10*0.001 ms = 0.01 ms. 2.2.2 Temps de calcul interne par Matlab La durée de calcul ne doit pas être trop élevée pour éviter des attentes trop longues. Limitons nous à la visualisation de 10 périodes de l'information, soit 10/fm, soit 10 /100 = 0.1s En conséquence la durée de calcul doit être égale à 100 ms. Les valeurs à rentrer sont donc : Start time = 0 et Stop time = 0.1s 2.2.3 Particularité du bloc de visualisation "Scope" Le bloc "Scope" contient un paramètre "limit rows to last", qui contient le nombre d'échantillons à garder. Ne pas imposer cette limite en décochant la case. 2.2.4 Autre particularité du bloc de visualisation "Averaging Power Spectral Density" Le bloc " Power Spectral Density " contient un paramètre "Sample Time", qui permet de régler la fenêtre d'observation en fréquence. La largeur de cette fenêtre est : 1/(2.Sample_time) 3 3. SIMULATION 3.1 Chronogramme des signaux avec le bloc "Scope" Entrer le schéma ci-contre afin de générer et visualiser un signal sinusoïdal de fréquence 1000 Hz et d'amplitude 1. Les blocs qui génèrent les signaux sont dans Simulink/Source, les blocs pour observer sont dans Simulink/Sinks. Régler Start time = 0, Stop Time = 0,1s dans Simulation/Parameters. Lancer la simulation dans Simulation/Start ou CTRL T. La sinusoïde n'est pas assez échantillonnée (pas assez de points) ⇒ Imposer la période d'échantillonnage à 10 µs en activant la fonction Properties/General dans Scope. Il faut aussi s'assurer que le nombre de points à enregistrer soit supérieur ou égal à la durée de calcul (10 ms) diviser par la période d'échantillonnage (10µs) soit 10000 dans Properties/Data History / limit rows to last • Récupérer la copie d’écran de l’oscilloscope et intégrer-la dans votre compte rendu. 3.2 Analyse fréquentielle des signaux avec le bloc "Averaging Power Spectral Density" Compléter le fichier en entrant le schéma ci-contre. Le bloc d'analyse spectrale est dans : Extra-Simulink/Additionnal Sinks. Lancer la simulation. La page d'observation du spectre est vide car la période d'échantillonnage est mal choisie. Le spectre du signal est une raie à 1000 Hz. Choisissons une fenêtre de visualisation de 2000 Hz, soit Te = 1/(2 * 2000) Il est souhaitable que le nombre de points soit 1024 à la place de 512 pour améliorer la précision Lancer la simulation, observer la raie (attention les fréquences affichées sont en rd/s !!!) • Relever le spectre (Le module seulement) dans votre compte-rendu. 4 3.3 Modulation d'amplitude équilibrée Sauver le fichier précédent (init.mdl) et enregistrer-le de nouveau sous le nom ma.mdl. Dans ce fichier ma.mdl : entrer le schéma d'un modulateur d'amplitude équilibrée. La porteuse à 1kHz sera générée par un bloc "signal generator" (Amplitude = 1). La tension de modulation à 100 Hz sera générée par un bloc "signal generator" (Amplitude = 1). La modulation se fera par un bloc "Product". Placer un bloc "Scope" et un bloc "Mux" pour observer le signal modulant et le signal modulé. Placer un bloc "Power Spectral Density" pour observer le spectre du signal modulé, avec une largeur de fenêtre d'observation de 2000 Hz. • Relever le schéma. • Relever le résultat fourni par "Scope" (à l'aide du zoom, visualiser qu'une période du signal modulant) • Relever le spectre en amplitude fourni par "Power Spectral Density". 3.4 Modulation d'amplitude classique Modifier le fichier précédent afin d'entrer le schéma d'un modulateur d'amplitude classique. L'ajout d'une tension continue se fait avec les blocs "constant" et "sum". Régler le taux de modulation à 80%. • Relever le schéma. • Relever le résultat fourni par "Scope" Il est intéressant d'observer le "signal modulant + le terme constant", pour faire apparaître la correspondance entre enveloppe du signal modulé et signal modulant. • Relever le spectre en amplitude fournit par "Power Spectral Density". 5 3.4 Démodulation par détection synchrone Réaliser la démodulation par détection synchrone à l'aide d'un deuxième multiplieur suivi d'un filtre passe-bas. Le filtre sera un filtre du 3ème ordre de type Butherworth : Choisir ω0 = 2ωBF (fBF = 100 Hz) Utiliser le bloc "Transfer Fcn" où s représente jω. L'expression du filtre en fonction de s est donc : • Remplir le tableau suivant avec les coefficients de s Paramètres Valeur Commentaires Numerator 1 Denominator ???? Les 4 coefficients de s (descendant à partir de s3) • Copier dans le compte-rendu le schéma Simulink • Relever les signaux modulants et démodulés sur le même écran. • Relever sur le même scope le signal original et le signal en sortie du filtre. • Conclure 6