Cours:AmpliAudio
Sommaire
Présentation du projet
Objectif
On souhaite réaliser un amplificateur audio qui sera utilisé au choix pour un ordinateur, smartphone ...
Cet amplificateur devra être capable de délivrer une puissance de 1 watt avec un haut-parleur de 24 ohms.
De plus, on souhaite pouvoir régler le niveau sonore à l'aide de 2 boutons poussoirs. Le "niveau" d'amplification sera visualisé sur la carte à l'aide de leds qui formeront un bargraphe.
Contraintes de fabrication
Passé ces premières explications, un point important de ce module est la réalisation de la carte électronique associée.
Les contraintes suivantes devront être prises en compte :
- Utilisation d'un connecteur "jack 3.5mm"
- Accessibilité de ce connecteur
- coût contenu de la carte électronique
- Les pistes de puissance seront les plus courtes possibles
- pcb simple face
Travail attendu
Objectif
L'objectif sera bien évidemment de terminer le projet de sorte qu'il réponde au cahier des charges décrit précédemment.
Pour ce faire, il conviendra de :
- dimensionner les composants utilisés
- tester les différents blocs fonctionnels
- fabriquer la carte électronique
- programmer les composants
- valider le fonctionnement
Vous serez évalué sur la fabrication de la carte électronique, ainsi que sur un dossier qui devra :
- détailler les différentes fonctions
- expliquer les choix effectués (structure,composants ....)
- utilisera des courbes ou mesures pour appuyer les explications
- donnera une estimation (hors temps de conception) du coût de la carte électronique
Planning à respecter
Vous serez évalué tout au long du projet en début de séance. Ce qui vous permet de terminer en dehors des séances si vous n'avez pas achevé le travail demandé.
Une chose importante à noter : Il vous revient de saisir au fur et à mesure le schéma des différentes fonctions étudiées dès que possible.
Vous trouverez ci dessous l'avancement attendu des différentes séances. Notons également que vous devrez achever votre travail après les 7 séances si le projet n'est pas terminé.
De plus, le routage devra être fait en bonne partie en dehors des séances.
n° de séance | Fonction | Détail de l'attendu |
---|---|---|
1-2 | Filtrage | Etude d'un filtrage passe-bande (100Hz-10kHz) |
3 | Amplificateur | Amplificateur non inverseur |
4 | Bouton/leds | Dimensionnement/choix/validation des composants |
5 | Fabrication | Brasage des composants |
6 | Vérification | Mesure des performances de la carte réalisée |
7-8 | Programmation |
Étude du projet
Schéma fonctionnel
Filtrage
Il convient dans un premier temps de filtrer le signal de la source audio, d'une part pour supprimer les bruits éventuels qui sont plutôt des hautes fréquences, et également supprimer les basses fréquences qui ne pourront pas être rendues correctement par votre haut-parleur.
Vous allez donc réaliser un filtre passe bande. Afin de simplifier l'étude, on cascadera simplement un passe haut puis un passe bas (le passe haut en premier).
Pour que les calculs réalisés sur chaque filtre pris individuellement restent valables lorsqu'on les associe, la résistance utilisée dans le filtre passe bas doit être grande devant la résistance utilisée dans le filtre passe haut.
Vous prendrez un rapport minimum de 10 entre les résistances, idéalement rapport de 100 ou plus.
Dimensionner et vérifier le fonctionnement du filtre RC passe haut de fréquence de coupure 100Hz
Dimensionner et vérifier le fonctionnement du filtre RC passe bas de fréquence de coupure 10kHz
Assembler les 2 filtres et valider le fonctionnement par un diagramme de gain
Amplificateur
Après avoir filtré le signal d'entrée, il convient maintenant de l'amplifier.
On réalisera un amplificateur non inverseur avec un MCP33201 (AOP rail to rail), avec une alimentation symétrique +5V/-5V.
L'amplification devra être réglable entre 0.5 et 20, on utilisera pour ce faire un potentiomètre de valeur 100 kΩ.
Dimensionner les valeurs des différentes résistances et valider le fonctionnement
Ajouter l'étage de filtrage en amont et vérifier le fonctionnement de l'ensemble
On ajoutera un condensateur pour supprimer l'amplification en basse fréquence : demandez des détails ....
Etage de sortie
L'amplificateur opérationnel ne permet pas de délivrer une puissance suffisante pour alimenter le haut-parleur. Nous allons donc utiliser un montage à transistor qui permettra d'augmenter la puissance de sortie.
Il existe différente classe d'amplificateur, dont vous trouverez une description sur la page suivante : classes d'amplificateur audio
Vous réaliserez au choix un amplificateur de classe B ou AB.
Remarque :
- la sortie de l'aop est connectée directement sur l'étage de sortie
- La contre réaction de l'aop sera prise au niveau de la charge (haut-parleur ici)
Numérique
On souhaite pouvoir régler la valeur de l'amplification à l'aide de 2 boutons poussoirs ( + et - ) et le potentiomètre utilisé précédemment sera remplacé par une résistance numérique MCP4017T-104.
Ces 2 boutons seront connectés sur un microcontrôleur attiny841 dont un lien vers la datasheet est donné à la fin de ce document.
La valeur de l'amplification devra être visualisée sur la carte à l'aide de leds qui formeront un bargraphe. Les leds ne seront pas nécessairement toutes de la même couleur.
- Regarder le nb d'e/s du µcontroleur
- Regarder la datasheet de la résistance numérique pour comprendre le branchement de ce composant
- Éventuellement sur carte arduino uno
- valider le fonctionnement des boutons
- valider le fonctionnement des leds
Fabrication de la carte électronique
Saisie du schéma
Comme précisé en introduction, le schéma devrait à ce point être déjà bien avancé.
Votre réflexion doit porter sur les points suivants :
- comment allez-vous programmer le µcontrôleur ?
- comment choisir les meilleurs pattes du µcontrôleur
Quelques éléments de réponse :
ISP | In System Programming : la plupart des µcontrôleurs modernes dont celui-ci sont programmable directement sur la carte (in situ).
Il faut donc prévoir le connecteur de programmation et le relier au composant en respectant l'ordre de câblage. Vous utiliserez, comme Atmel le préconise, le connecteur ISP à 6 broches. |
|
choix des pattes | L'avantage d'utiliser un composant programmable est de pouvoir placer (dans une certaine mesure) les entrées et sorties où bon nous semble. | La liaison i2c permettant de communiquer avec la résistance numérique utilise des broches bien particulières identifiées SDA et SCL.
La programmation du bargraphe sera également simplifiée si toutes les leds sont positionnées sur le même port. |
Pins réservées | La patte RESET principalement, ne peut servir qu'à cet usage !! | Dans le cas contraire, vous ne pourrez plus reprogrammer le microcontrôleur. |
Routage
Il est bien évident que vous devez essayer de respecter les conseils de bases pour réaliser une bonne carte électronique.
Rappelons également qu'une partie de ce dossier est dédiée aux contraintes de fabrication, qu'il convient sans doute à ce stade de relire !
Rappels pour préparation des calques
Via : 0.8 pour les trous et 1,25 pour le diamètre externe
Exports sous forme d'images :
- fond en blanc : Options -> user interface -> layout
- lancer ulp -> drill-aid vous propose Drill center diameter 0,3mm et c'est OK. Le remplissage se fait en couche 116 mais avec des hachures.
- Choisir cette couche 116 puis change -> Fillstyle en plein
- Choisir les couches Bottom (bleu) Pads vias et la 116
- File -> export -> Image donner un nom et choisir 1200 DPI et monochrome
- Idem pour Top (rouge) avec pads et vias (et éventuellement la 116)
Conception du programme
Compilation
Afin de pouvoir utiliser facilement la liaison I2C, vous utiliserez l'environnement arduino dans une version récente > 1.6.
On ajoutera la librairie permettant de programmer ce µcontroleur :
https://github.com/SpenceKonde/ATTinyCore
Chenillard
Vous commencerez par vérifier le fonctionnement de chacune des leds, ce qui vous permettra ensuite de les utiliser pour mettre au point votre programme.
En effet, comme il n'y a pas de liaison série disponible, il n'est pas toujours simple de déboguer un programme. En retour visuel vous permettra de simplifier cette mise au point.
Une fois les leds testées, réaliser un programme de bargraphe.
Boutons
Vous pouvez maintenant vérifier le fonctionnement des boutons.
Faire en sorte que l'appui sur un bouton allume une led
Réglage de l'amplification
Notre programme doit communiquer avec la résistance numérique "MCP4017T-104E/LT" en I2C.
L'adresse du composant est en binaire '0101111'
Vous utiliserez la librairie arduino Wire.
Le composant est simple à utiliser, il suffit d'écrire la valeur de résistance souhaitée (0 à 127) à l'aide de la méthode write de la librairie wire
Composants utilisés
Nom | Type | Boîtier | Librairie Eagle | Référence eagle | Documentation | Fournisseur | Référence |
---|---|---|---|---|---|---|---|
ATTINY841 | µcontrôleur | bt_avr | attiny841.pdf | Farnell | 2443189 | ||
MCP4017T | potentiomètre 100k | CMS | Digital_potenciometrs.lbr | ||||
ISP | barrette mâle sécable | traversant | con-lstb | MA03-2 |