AmpliAudio : Différence entre versions
(→{{Rouge|Programme en Langage C: }}) |
(→{{Rouge|Programme en Langage C: }}) |
||
Ligne 83 : | Ligne 83 : | ||
puis on définit un Prescaler de 8 accompagné par une PWM , une commande pour gérer la fréquence du signal et finalement on ajoute une boucle while qui comporte une autre boucle for qui permet l'incrémentation des valeurs de OCR4A de manière à prendre tous les 20 valeurs du dernier tableau de 20. | puis on définit un Prescaler de 8 accompagné par une PWM , une commande pour gérer la fréquence du signal et finalement on ajoute une boucle while qui comporte une autre boucle for qui permet l'incrémentation des valeurs de OCR4A de manière à prendre tous les 20 valeurs du dernier tableau de 20. | ||
=={{Rouge|Programme en Langage C: }}== | =={{Rouge|Programme en Langage C: }}== | ||
− | [[ Fichier:Image23.png |vignette|( | + | [[ Fichier:Image23.png |vignette|(1000px|Une période de Courbe Sinus|gauche]] |
Version du 18 juin 2018 à 23:16
Sommaire
Nom du projet :Amplificateur Audio
Introduction
Un amplificateur audio est un amplificateur électronique conçu pour augmenter les signaux audio de faible puissance provenant d'un système de capture (microphone, instrument de musique) ou de stockage (magnétophone, lecteur CD, etc. ) pour pouvoir alimenter une enceinte.
Fonctionnement
La plupart des amplificateurs fonctionnent «à gain fixe», c'est-à-dire que le rapport d'augmentation entre le signal d'entrée et le signal de sortie est constant. Le niveau du signal d'entrée doit alors être ajusté par un ou plusieurs étages pré-amplificateurs, afin d'éviter la saturation de l'ampli. Ces étages ont un gain réglable, ils permettent d'ajuster le niveau du signal avant son augmentation, par conséquent le volume final. On peut trouver un réglage de gain scindé pour chaque canal d'augmentation. Fréquemment, on verra une échelle abstraite de 0 à 10 (ou de -∞ à 0 qui indique l'atténuation en décibels du signal avant son augmentation).
Un amplificateur audio fonctionne toujours sur le même principe :
Une alimentation est chargée d'apporter des tensions symétriques en courant continu, Ces courants sont modulés à l'image de l'entrée audio, par les pré amplificateurs éventuels et les étages de sorties, Le signal augmenté est envoyé.
Quelques Exemples d'utilisation d'un amplificateur Audio
Schéma fonctionnel
Utilisation d'un filtre passif passe bas
Dans un Premier temps on envoie une commande à l'aide d'une Carte arduino leonardo qui comporte le Microcontrôleur : ATMEGA 32u4 représenté dans la photo ci dessus.
la commande envoyé représente un signal carré que l'ont doit modifier de manière à avoir un signal sinusoidal en sortie,c'est pour cela on a pensé à utiliser un filtre passe bas du premier ordre qui permet de couper le signal sur des fréquence bien défini pour qu'on puisse finalement avoir un signal triangulaire au lieu du carré en se basant sur la fréquence de mli qui doit être 10 fois plus grande que Fc : fréquence de coupure du filtre passe bas . En utilisant l’oscilloscope on mesure une fréquence de mli de : 31,25khz
On sait que :
𝑓𝑐 = 1/𝑓𝑚𝑙𝑖 = 1/2𝜋𝑅𝐶.
et d'après cette formule on résout l'équation pour définir les bonnes valeur des deux composants principale du filtre : résistance et condensateur.
Valeur trouvé :
R= 10KΩ , C=10,18nf ≈ 10nF .
Après le choix des bonnes valeurs de composant on les places dans une platine d'essaie en ajoutant une commande d'entrée PWM rapide de la carte Arduino leonardo , ensuite on visualise le signal de sortie pour obtenir une représentation d'un signal triangulaire coupé selon l'état du signal. Explication : Quand le signal carré est à l'état 1 le signal de sortie se remets à l’état 0 de même inversement pour construire finalement un signal triangulaire coupé à chaque passe de l'état 0 à 1.
Génération d'un signal de sortie sinusoidal
Tableau Excel
Tout d’abord j'ai commencé par construire un tableau Excel en définissant la fonction suivante : F(x)=100 + 100*sin(x). Pour que je puisse avoir finalement une courbe de sinus avec un offset de 100 et d'amplitude 100. J'ai pris des valeurs de x (abscisses) qui appartient à l'intervalle suivant : [0,2π] afin de dessiner la courbe sur une période complète en utilisant 20 points différents qui appartient à [0,2π] comme il est représenté dans le tableau excel suivant :
- Ci dessus on trouve la représentation de la courbe rechercher selon les valeurs déterminé sur le tableau d'agauche.
Explication du Programme
Dans cette partie je vais essayer d'expliquer un peu plus l’utilité du dernier tableau excel et sa relation avec le programme C. Tout d'abord je tiens à préciser que ce tableau nous permettra de varier le rapport cyclique qui nous permettra de réussir à obtenir un signal sinusoïdal en sortie comme il était demandé dans les Objectifs du Projet. On sait très que le rapport cyclique par définition générale est le temps de l'état haut du signal sur la période du signal, ce qui veut dire que si on arrive a le varier on arrivera à définir la forme que l'on souhaite en sortie. Dans notre cas on a besoin de de générer un signal sinusoïdal en sortie c pour cela on a besoin de varier le rapport cyclique de tel sorte qu'il prend les valeurs de F(x) (la fonction Sinus définit sur le dernier Tableau Excel ). Dans un premier temps dans le Code on défini un tableau de 20 valeurs, on choisit la commande d'entrée ( dans notre cas c'est PC7 qui est le port 13 de l'arduino Leonardo) puis on définit un Prescaler de 8 accompagné par une PWM , une commande pour gérer la fréquence du signal et finalement on ajoute une boucle while qui comporte une autre boucle for qui permet l'incrémentation des valeurs de OCR4A de manière à prendre tous les 20 valeurs du dernier tableau de 20.