AmpliAudio : Différence entre versions

De troyesGEII
Aller à : navigation, rechercher
({{Rouge|Utilisation d'un filtre passif passe bas}})
({{Rouge|Schéma fonctionnel : }})
 
(58 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 |adroite]]
+
[[Fichier:Image111.PNG |vignette|(800px|Filtre passif passe bas |centré]]
 +
 
 +
 
 +
 
 +
 
  
  
Ligne 51 : 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.
  
=Première partie=
+
={{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

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

Enceinte acoustique
Régulateur de fréquence et Volume de sons


Transmission de sons



Étude du projet

Schéma fonctionnel :

Enceinte acoustique

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.

Carte Arduino leonardo

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

Filtre passif passe bas




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 :

Tableau des valeurs
Une période de Courbe Sinus

- 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:

Programme_1
Programme_2









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 :

Signal de commande d'entrée
Signal de la sortie du filtre


Schématique et Routage de la carte :

Montage de fonctionnement :

Signal de commande d'entrée

1) Schématique Eagle :

2) Routage Eagle :