AmpliAudio : Différence entre versions
(→{{Rouge|Utilisation d'un filtre passif passe bas}}) |
(→{{Rouge|Schéma fonctionnel : }}) |
||
(57 révisions intermédiaires par le même utilisateur non affichées) | |||
Ligne 26 : | Ligne 26 : | ||
− | ={{Bleu|Schéma fonctionnel}}= | + | ={{Bleu|Étude du projet}}= |
+ | == {{Rouge|Schéma fonctionnel : }} == | ||
[[Fichier:Ampli.jpg |vignette|800px|Enceinte acoustique |centré]] | [[Fichier:Ampli.jpg |vignette|800px|Enceinte acoustique |centré]] | ||
− | + | PS : on a utilisé un filtre passif passe bas au lieu du filtre passe bande comme il est indiqué dans le schéma fonctionnel. | |
− | |||
== {{Rouge|Utilisation d'un filtre passif passe bas}} == | == {{Rouge|Utilisation d'un filtre passif passe bas}} == | ||
Ligne 36 : | Ligne 36 : | ||
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 . | 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 | En utilisant l’oscilloscope on mesure une fréquence de mli de : 31,25khz | ||
− | [[Fichier:Image111.PNG |vignette|800px|Filtre passif passe bas | | + | [[Fichier:Image111.PNG |vignette|(800px|Filtre passif passe bas |centré]] |
Ligne 55 : | Ligne 55 : | ||
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. | 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. | ||
− | = | + | ={{Bleu|Génération d'un signal de sortie sinusoidal}}= |
+ | =={{Rouge|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 : | ||
+ | [[ Fichier:Image1111.png |vignette|(600px|Tableau des valeurs |gauche]] [[ Fichier:Image7.png |vignette|(600px|Une période de Courbe Sinus|centré]] | ||
+ | - Ci dessus on trouve la représentation de la courbe rechercher selon les valeurs déterminé sur le tableau d'agauche. | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | =={{Rouge|Conception 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 du filtre passe bas 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. | ||
+ | |||
+ | =={{Rouge|Programme en Langage C: }}== | ||
+ | [[ Fichier:Image23.png |vignette|(4000px|Programme_1|gauche]] [[ Fichier:Image24.png|vignette|(4000px|Programme_2|centré]] | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ={{Bleu|Résultat final}}= | ||
+ | Au final on est bien a arrivé a voir le signal souhaité en sortie, puisqu'on a bien défini tous les paramètre nécessaire du code et les bonnes valeurs des composants du filtre passe bas pour réussir à générer le signal sinusoïdal en sortie comme il est affiché dans l'imagine ci dessous : | ||
+ | [[ Fichier:Image25.jpg |vignette|(4000px|Signal de commande d'entrée |gauche]] [[Fichier:Image26.jpg |vignette|(4000px|Signal de la sortie du filtre|centré]] | ||
+ | |||
+ | |||
+ | |||
+ | =={{Rouge|Schématique et Routage de la carte : }}== | ||
+ | ==={{Vert|Montage de fonctionnement : }}=== | ||
+ | [[ Fichier:Image27.jpg |vignette|(4000px|Signal de commande d'entrée |centré]] | ||
+ | ==={{Vert|1) Schématique Eagle : }}=== | ||
+ | ==={{Vert|2) Routage Eagle : }}=== |
Version actuelle datée du 19 juin 2018 à 08:49
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
Étude du projet
Schéma fonctionnel :
PS : on a utilisé un filtre passif passe bas au lieu du filtre passe bande comme il est indiqué dans le 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.
Conception 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 du filtre passe bas 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.
Programme en Langage C:
Résultat final
Au final on est bien a arrivé a voir le signal souhaité en sortie, puisqu'on a bien défini tous les paramètre nécessaire du code et les bonnes valeurs des composants du filtre passe bas pour réussir à générer le signal sinusoïdal en sortie comme il est affiché dans l'imagine ci dessous :