Transmission d informations sur le réseau électrique



Documents pareils
Théorie et Codage de l Information (IF01) exercices Paul Honeine Université de technologie de Troyes France

Transmission de données. A) Principaux éléments intervenant dans la transmission

INTRODUCTION A L ELECTRONIQUE NUMERIQUE ECHANTILLONNAGE ET QUANTIFICATION I. ARCHITECTURE DE L ELECRONIQUE NUMERIQUE

Systèmes de communications numériques 2

Capacité d un canal Second Théorème de Shannon. Théorie de l information 1/34

Systèmes de transmission

Théorie et codage de l information

Université de La Rochelle. Réseaux TD n 6

UE 503 L3 MIAGE. Initiation Réseau et Programmation Web La couche physique. A. Belaïd

Les techniques de multiplexage

LES CARACTERISTIQUES DES SUPPORTS DE TRANSMISSION

Compression et Transmission des Signaux. Samson LASAULCE Laboratoire des Signaux et Systèmes, Gif/Yvette

LABO 5 ET 6 TRAITEMENT DE SIGNAL SOUS SIMULINK

Chaine de transmission

ISO/CEI NORME INTERNATIONALE

Projet d informatique M1BI : Compression et décompression de texte. 1 Généralités sur la compression/décompression de texte

Chapitre I La fonction transmission

Mesures d antennes en TNT

I. TRANSMISSION DE DONNEES

Régler les paramètres de mesure en choisissant un intervalle de mesure 10µs et 200 mesures.

Partie Agir : Défis du XXI ème siècle CHAP 20-ACT EXP Convertisseur Analogique Numérique (CAN)

TP Modulation Démodulation BPSK

Projet Matlab : un logiciel de cryptage

Projet audio. Analyse des Signaux ELE2700

Chapitre 13 Numérisation de l information

Expérience 3 Formats de signalisation binaire

TD 1 - Transmission en bande de passe

Représentation d un entier en base b

Etudier l influence de différents paramètres sur un phénomène physique Communiquer et argumenter en utilisant un vocabulaire scientifique adapté

Chapitre 2 : communications numériques.

TS 35 Numériser. Activité introductive - Exercice et démarche expérimentale en fin d activité Notions et contenus du programme de Terminale S


Chapitre 18 : Transmettre et stocker de l information

J AUVRAY Systèmes Electroniques TRANSMISSION DES SIGNAUX NUMERIQUES : SIGNAUX EN BANDE DE BASE

M1107 : Initiation à la mesure du signal. T_MesSig

Communications numériques

Fonctions de la couche physique

LA COUCHE PHYSIQUE EST LA COUCHE par laquelle l information est effectivemnt transmise.

Big Data et Graphes : Quelques pistes de recherche

L information sera transmise selon des signaux de nature et de fréquences différentes (sons, ultrasons, électromagnétiques, électriques).

Travaux pratiques. Compression en codage de Huffman Organisation d un projet de programmation

Chapitre 22 : (Cours) Numérisation, transmission, et stockage de l information

BACCALAURÉAT PROFESSIONNEL EPREUVE DE TRAVAUX PRATIQUES DE SCIENCES PHYSIQUES SUJET A.1

Interception des signaux issus de communications MIMO

La conversion de données : Convertisseur Analogique Numérique (CAN) Convertisseur Numérique Analogique (CNA)

module Introduction aux réseaux DHCP et codage Polytech / 5

LABO PROJET : IMPLEMENTATION D UN MODEM ADSL SOUS MATLAB

La couche physique de l ADSL (voie descendante)

EP A1 (19) (11) EP A1 (12) DEMANDE DE BREVET EUROPEEN. (43) Date de publication: Bulletin 2011/26

Formats d images. 1 Introduction

TP Blender n 2 : Importation d un modèle SketchUp et animation

Information. BASES LITTERAIRES Etre capable de répondre à une question du type «la valeur trouvée respecte t-elle le cahier des charges?

Intérêt du découpage en sous-bandes pour l analyse spectrale

TD1 Signaux, énergie et puissance, signaux aléatoires

LES DIFFÉRENTS FORMATS AUDIO NUMÉRIQUES

SYSTEME DE PALPAGE A TRANSMISSION RADIO ETUDE DU RECEPTEUR (MI16) DOSSIER DE PRESENTATION. Contenu du dossier :

Telecommunication modulation numérique

Codage hiérarchique et multirésolution (JPEG 2000) Codage Vidéo. Représentation de la couleur. Codage canal et codes correcteurs d erreur

MESURES D UN ENVIRONNEMENT RADIOELECTRIQUE AVEC UN RECEPTEUR CONVENTIONNEL ETALONNE

Telecommunication modulation numérique

TELEVISION NUMERIQUE

REALISATION D UNE CALCULATRICE GRACE AU LOGICIEL CROCODILE CLIPS 3.

TP : STATION BLANI 2000 SIMULATION DU RESEAU INFORMATIQUE

Big Data et Graphes : Quelques pistes de recherche

Traitement du signal avec Scilab : transmission numérique en bande de base

ÉPREUVE COMMUNE DE TIPE Partie D

Dossier technique. Présentation du bus DMX et Utilisation des options EL13 / EL14 ERM AUTOMATISMES INDUSTRIELS 1 LE PROTOCOLE DMX 2

IV- Comment fonctionne un ordinateur?

Dan Istrate. Directeur de thèse : Eric Castelli Co-Directeur : Laurent Besacier

Année Transmission des données. Nicolas Baudru mél : nicolas.baudru@esil.univmed.fr page web : nicolas.baudru.perso.esil.univmed.

CREATION D UNE EVALUATION AVEC JADE par Patrick RUER (

Chap17 - CORRECTİON DES EXERCİCES

SUJET ZÉRO Epreuve d'informatique et modélisation de systèmes physiques

1. PRESENTATION DU PROJET

Instruments de mesure

(Third-Man Attack) PASCAL BONHEUR PASCAL 4/07/2001. Introduction. 1 Domain Name Server. 2 Commandes DNS. 3 Hacking des serveurs DNS

Cryptographie et fonctions à sens unique

Acquisition et conditionnement de l information Les capteurs

CARACTERISTIQUE D UNE DIODE ET POINT DE FONCTIONNEMENT

ÉCOLE POLYTECHNIQUE DE MONTRÉAL. Département de Génie Électrique. La technologie de TEXAS INSTRUMENTS DSP pour le cours Analyse des Signaux ELE2700

Solutions web : instructions aux développeurs

QUELQUES ACTIVITES RELATIVES A LA PARTIE A Propagation d une onde ; onde progressive. Comment installer le format de compression divx?

La structure du mobile GSM

Algorithme. Table des matières

Projet de Traitement du Signal Segmentation d images SAR

SYSTEME DE GESTION DES ENERGIES EWTS EMBEDDED WIRELESS TELEMETRY SYSTEM

TD de supervision. J.P. Chemla. Polytech Tours Département productique 2ème année

Caractéristiques des ondes

Donner les limites de validité de la relation obtenue.

Représentation des Nombres

Ladibug TM 2.0 Logiciel de présentation visuel d'image Manuel de l utilisateur - Français

Systèmes de communications numériques 2

Le multiplexage. Sommaire

Transmission des signaux numériques

TD : Codage des images

2. Couche physique (Couche 1 OSI et TCP/IP)

PROJET ALGORITHMIQUE ET PROGRAMMATION II

1 Introduction au codage

Transcription:

Transmission d informations sur le réseau électrique Introduction Remarques Toutes les questions en italique devront être préparées par écrit avant la séance du TP. Les préparations seront ramassées en début de séance. Préambule Nous nous proposons, dans ce TP, de simuler la transmission de mots binaires à l aide du réseau EDF habituel d une maison. Une telle transmission peut permettre, par exemple, de commander un appareil connecté sur une prise secteur, à l aide d un émetteur situé dans une autre pièce de l habitation. Ce type de transmission dite par courant porteur en ligne (CPL) est également beaucoup utilisé aujourd hui pour relier un ordinateur à une box ADSL sans fil supplémentaire. Pour illustrer cette transmission, nous chercherons à transmettre une chaine de caractères qu il faudra auparavant coder de manière binaire. Cette première étape sera effectuée à l aide de l algorithme de Huffman. Ensuite, le message binaire devra être superposé (de manière adéquate) au secteur EDF de la maison, éventuellement pollué par différentes sources de bruit (ayant pour origine par exemple l actionnement successif d interrupteurs ou d autres sources de bruit électromagnétique). La présence de bruit impose l utilisation préalable de techniques de codage de canal permettant d assurer au moins une détection, voir une correction des erreurs de transmission. Le récepteur devra ensuite isoler du secteur EDF l information binaire, puis la décoder de façon à restituer la chaine de caractère émise. Le système de transmission proposé peut donc être représenté schématiquement selon la figure 1. Le détail des différentes opérations binaires nécessaires est représenté Figure 3.!ZZIGZZAG! Chaîne de caractères Codage de Source 0111001... Codage de binaire Canal 10010... binaire!zzigzzag! binaire 0111001... Décodage de source 10 V 0 V Mise en forme Signal Analogique Couplage avec EDF binaire 10010... Décodage de canal Correction des erreurs 10110... binaire Mise en forme 10 V 0 V Signal Analogique Câble électrique Extraction du signal Figure 1 Synopsis de la transmission, du texte à envoyer au texte reçu. 1

I Codage de source Nous souhaitons transmettre dans un premier temps le texte suivant : texte =!ZZIGZZAG! Prép. 1 Quelles sont les fréquences d apparition des caractères dans le message (tous les caractères seront pris en compte)? En déduire l entropie de la source. 1. Sous MATLAB, définir le chemin d accès en sélectionnant le dossier contenant les scripts à compléter (File Set Path Add with Subfolders). 2. Commenter et compléter la fonction entropie fournie, qui doit vous renvoyer la valeur de l entropie de la source à coder (ici la variable texte). Vérifier que la valeur d entropie calculée par la fonction correspond bien à celle attendue. On souhaite envoyer le texte précédent à l aide de symboles binaires. Il nous faut donc coder chacun des caractères du texte en cherchant à minimiser le nombre de symboles 0 ou 1 à transmettre. On propose pour cela d utiliser le code de Huffman. Prép. 2 Calculer les mots de code associés aux lettres de la source en utilisant l algorithme de Huffman (au plus haut). Prép. 3 En déduire le code binaire data_comp correspondant au message. 3. La fonction [texte_compr,arbre]=huffman_compr(texte) réalise pour vous le codage de la chaîne de caractère texte à transmettre. Cette fonction retourne le message compressé texte_compr et l arbre de Huffman dans la variable arbre. Le code retourné est composé de trois champs : les mots de code (arbre.valeur), leur fréquence d apparition (arbre.frequence) et les symboles d information (arbre.info). Commenter le code de la fonction huffman_compr. Retrouver alors le code binaire correspondant au texte à transmettre en utilisant cette fonction. Prép. 4 Calculer la longueur moyenne L des mots de code. Le théorème fondamental du codage de source est-il vérifié? 4. Coder le calcul de la longueur moyenne L des mots du code. Prép. 5 Sans compression, combien de digits sont nécessaires pour coder une lettre de la source? Calculer alors le taux de compression obtenu à l aide du code de Huffman. 5. Coder le calcul du taux de compression. 6. Tester l intégralité des étapes précédentes pour différents textes de votre choix, comme : texte = CECI EST UNE DEMO. CETTE PHRASE VA ETRE COMPRESSEE PAR LE CODE DE HUFF- MANN., ou encore texte = ABCDEFGHIJKLMOPQRSTUVWXYZ Comparer les taux de compression des trois messages ainsi que leur entropie. Conclure sur les performances du code de Huffman. II Codage de canal Le texte est maintenant codé sous une forme binaire. Afin de pouvoir corriger d éventuelles erreurs lors de la transmission, on introduit ici une étape de codage de canal exploitant les codes correcteurs d erreurs, qui produiront en leur sortie un nouveau flux binaire. Celui-ci intégre l information à transmettre (le texte) ainsi que les digits de contrôle nécessaires à la bonne transmission de celui-ci. Dans toute la suite, les digits de contrôle sont ajoutés à l information à l aide d un code de Hamming C H dont la matrice génératrice G est : 2

1 1 1 0 0 0 0 G = 1 0 0 1 1 0 0 0 1 0 1 0 1 0. 1 1 0 1 0 0 1 Prép. 6 Quelles sont la dimension k et la longueur n du code? Indiquer l emplacement des digits d information et des digits de contrôle au sein des mots de code construits. A l issue de l étape de codage source, nous disposons du vecteur texte_compr comprenant le texte codé de manière binaire à l aide de l algorithme de Huffman. Il est nécessaire pour la suite de faire correspondre à chacun des mots de k symboles binaires constituant data_compr un mot de code de longueur n incluant le contrôle nécessaire à la bonne transmission de l information. Prép. 7 Coder avec la matrice génératrice G ci-dessus le code binaire data_comp obtenu à la question Prép. 3. En déduire les différentes étape nécessaires au codage d un flux binaire d information. Comment procéder si la longueur du flux binaire à coder n est pas un multiple de k? Coder cette étape de génération des mots de code. Pour cela : Parcourir texte_compr par paquets de k digits ; A l aide de la matrice G ci-dessus, calculer les mots de code de longueur n correspondant ; Concaténer les mots de codes obtenus afin d obtenir le nouveau flux binaire dans une variable nommée code. III Transmission Nous disposons maintenant d un flux binaire incluant à la fois l information à transmettre et les digits de contrôle nécessaire à sa bonne transmission en présence d erreurs. Néanmoins, il n est pas possible de connecter directement la sortie du codeur de canal précédent au réseau électrique : il faut auparavant transformer le flux binaire en un signal (tension) qui est superposé au secteur. C est l ensemble de ces étapes qui est étudié dans cette section. Afin de simuler la propagation du signal d information sur le réseau EDF, vous disposez d une librairie Simulink nommée librairie.mdl représentée Figure 2. III.1 1. Lancer Simulink depuis l invite de commande Matlab en tapant simplement la commande simulink. Une fois lancé, faire File Open, puis sélectionner le fichier librairie.mdl. 2. Ouvrir maintenant une nouvelle simulation en faisant File Open, puis sélectionner le fichier simulation.mdl. Une page blanche apparait alors à l écran. Il s agit maintenant de la compléter en glissant les blocs de la librairie et en les connectant les un aux autres de manière adéquate. Codage en bande de base Cette étape de codage en bande de base permet d obtenir un signal électrique correspondant au flux binaire à transmettre, et compatible avec le canal qui est ici un câble électrique. 3. Dessiner le schéma permettant d obtenir, à partir du code binaire à transmettre, la tension secteur couplée à l information. 4. La plupart des blocs sont paramétrables en double cliquant dessus. Commenter les valeurs par défaut de ces paramètres et justier leur choix. 5. Utiliser le bloc Vers Matlab pour récupérer la tension correspondant au code à transmettre. Ce signal est échantillonné à la fréquence f e = 50kHz. Lancer la simulation du schéma depuis la commande Simulation Start. 3

Figure 2 Librairie Simulink librairie.mdl utilisée pour la simulation de la transmission III.2 III.3 6. Visualiser l allure temporelle du signal obtenu. Etudier son contenu fréquentiel à l aide de la commande fft effectuant une transformation de Fourier des signaux discrets (TFSD). Commenter. 7. Visualiser l allure du contenu fréquentiel obtenu pour les différents textes à transmettre. Conclure quant à l occupation spectral du signal. Transmission au sein d un canal bruité 8. Ajouter au schéma précédent le canal de transmission, ainsi que la source de bruit nommée Bruit de fond. Lancer la simulation et visualiser le signal obtenu en sortie du canal. Commenter. 9. Faire varier la puissance du bruit en changeant la valeur du RSB (pour cela, double-cliquer le bloc de la source de bruit). Que constatez-vous visuellement? Extraction de l information et détection 8. Ajouter au schéma précédent les blocs Découplage et Détection. Préciser le rôle de chacun de ces traitement au sein de la chaîne de transmission. 9. Visualiser la tension de sortie du bloc Découplage pour différentes valeurs de RSB. Commenter son allure. Comment peut-on décider si le niveau de tension reçu correspond à un 0 ou un 1 émis? 4

IV Décodage A l issue de la simulation précédente, nous disposons d un flux binaire contenant à la fois l information (le texte) et les bits de contrôle (la redondance). Selon l importance du bruit, un certain nombre de 0 (resp. 1) se sont transformés en 1 (resp. 0). L objectif de cette partie est donc de mettre en oeuvre une technique de décodage permettant de détecter la présence de ces erreurs, et éventuellement de les corriger. Une fois la correction effectuée, il sera a priori possible de remonter au flux binaire codant le texte seulement, flux qui sera enfin décompressé afin d afficher en toute lettre le texte correspondant. En cas d erreurs lors de la transmission, il est donc fort probable que le texte reçu ne soit pas le même que celui émis. La méthode de décodage proposée repose sur la matrice de contôle H suivante : 0 0 0 1 1 1 1 H = 0 1 1 0 0 1 1. 1 0 1 0 1 0 1 Prép. 8 Justifier le choix de cette matrice H. En particulier, quelle relation G et H doivent-elles vérifier? Combien d erreurs par mot peuvent être corrigées par ce code? IV.1 RSB infini On supposera dans cette partie que le bruit parasitant la transmission possède une puissance nulle, i.e. le rapport signal sur bruit est infini. Prép. 9 Avec de telles conditions de bruit, quel est le taux d erreur bit (comparaison bit émis/bit reçu) attendu? IV.2 1. Double cliquer sur le bloc Bruit de fond, et mettre le RSB à la valeur Inf. Lancer la simulation et récupérer le code binaire reçu. Utiliser pour cela le bloc Code reçu qui génère automatiquement après simulation une variable sortie_simulink dans Matlab. 2. Comparer les codes binaires émis code et reçu sortie_simulink. Que constatez-vous? Justifier. 3. Calculer le taux d erreur binaire de la transmission par comparaison entre les 0/1 reçus et les 0/1 envoyés. Celui-ci correspond-il au taux d erreur attendu? 4. Sachant que la transmission la méthode de détection sont susceptibles d introduire un retard lors des traitements, ajuster le code Matlab de façon à obtenir le taux d erreur attendu. Le code reçu correspondant sera stocké dans une variable code_recu. RSB = - 5dB Dans cette partie, le bruit possède maintenant une puissance non négligeable. Il sera donc vraisemblablement à l origine d erreurs lors de la transmission. Prép. 10 Soit le mot reçu code_recu de n bits code_recu=1011011. code_recu appartient-il au code? Si non, donner la position de l erreur. Effectuer alors la correction et donner le mot d information info_corrigee de k bits a priori envoyé. 5. Calculer le taux d erreur binaire obtenu dans ces conditions de bruit. 6. Déterminer le syndrome de chacun des mots reçus. Pour cela, découper le flux binaire récupéré à l issue de la simulation code_recu en blocs de n digits. A chacun de ces blocs correspond un syndrome noté syndrome calculé à l aide de la matrice H précédente. 5

7. Pour chacune des valeurs de syndrome, effectuer si nécessaire la correction d erreur. A l issue de cette étape, vous disposez donc d un nouveau flux binaire nommé code_corrige constitué des mots reçus corrigés. 8. Pour chacun des mots corrigés, extraire l information transmise info_corrigee. Pour cela, repérer à l aide de la matrice G où se situent les digits d information et de contrôle au sein d un mot de code. 9. Extraire également les digits d information directement depuis le flux binaire reçu (i.e. sans effectuer de correction d erreur) et les stocker dans une variable info_non_corrigee. A l aide des deux questions précédentes, vous disposez donc maintenant de 2 flux binaires (info_corrigee et info_non_norrigee) constitués de l information (le texte) uniquement, exploitant ou non respectivement les digits de contrôle envoyés pour transmettre l information. 10. A l aide de la fonction texte = huffman_decompr(info,arbre), décoder ces 2 flux binaires. Afficher le texte obtenu, et le comparer au texte émis. Que constatez-vous? IV.3 Influence du RSB Dans cette section, nous allons étudier la qualité de la transmission d information en fonction du niveau de bruit parasitant le canal. Pour cela, nous allons faire évoluer le RSB d une valeur de 10 db à environ 10dB. 11. Déterminer le taux d erreur binaire pour différentes valeurs de RSB. Représenter ce taux en fonction du RSB sur une courbe. Que constatez vous? 12. Déterminer le taux d erreur caractère par comparaison entre les caractères reçus et les caractères émis pour différentes valeurs de RSB. Représenter ce taux en fonction du RSB sur une courbe. Que constatez vous? 13. Pour une valeur de RSB faible, visualiser la position des erreurs au sein du flux binaire reçu. Le code correcteur proposé est-il adapté à une transmission dans de telles conditions de bruit? Conclure. 6

texte Huffman texte_compr V O I L A 1001011101010... G code 1011001 0001111 1001101... code_recu H syndrome code_corrige Transmission 1011011 0001111 1101101... 110 000 010... 1011001 0001111 1001101... Sans correction info_corrigee Huffman texte_recu 101101111101 info_non_corrigee 100101110101...... V O I L? P O R L? Huffman texte_recu Figure 3 Détails de la transmission. En haut, on retrouve le codage de Huffman, permettant de coder le texte (texte) de manière binaire (texte_compr). Ensuite sont ajoutés à l information des digits de contrôle pour former le code envoyé (code). A la réception, le flux binaire peut être légèrement différent de celui émis (code_recu). Si on décide d exploiter les digits de contrôle ajoutés précédemment (calcul du syndrome), alors on retrouve le texte envoyé. Sinon, des erreurs viennent modifier le texte reçu (texte_recu) par rapport au texte envoyé (texte). 7