Objectifs
- Savoir les caractéristiques du convertisseur numérique analogique (DAC) MCP4725
- Avoir utilisé le DAC avec Arduino en utilisant la liaison I2C
- Savoir utiliser le DAC dans une application pratique (modulateur de largeur d’impulsion (MLI) ou (PWM))
- Et autres astuces pratiques
Principe de fonctionnement
Le projet dans sa globalité consiste à faire varier le rapport cyclique d’un signal PWM en utilisant une télécommande infrarouge. Deux boutons seront utilisés (Up et Down) pour augmenter ou le réduire le rapport cyclique. La première carte Arduino sert à recevoir la commande pour ensuite incrémenter ou décrémenter la valeur du DAC. La seconde carte sert à convertir la valeur acquit du DAC en un rapport cyclique (valeur comprise entre 0 (0%) et 255 (100%)).
Le projet est subdivisé en deux parties. En premier temps on ne va pas utiliser la liaison IR pour ajuster le rapport cyclique mais un potentiomètre analogique branché dans l’entrée A0 de la carte Arduino 1. Le schéma du principe est illustré ci-après. La partie prochaine abordera l’implémentation de la liaison IR.
Caractéristiques techniques du convertisseur N/A MCP4725
- Résolution 12 bits
- Mémoire non volatile intégrée (EEPROM)
- ± 0,2 LSB d’erreur DNL (typique)
- Mode normal ou hors tension
- Temps d’établissement rapide de 6 µs (typique)
- Référence de tension externe (VDD)
- Faible consommation d’énergie
- Fonctionnement avec alimentation simple: 2,7V à 5,5V
- Interface I2C:
- Huit adresses disponibles
- Standard (100 kbps), Rapide (400 kbps) et Modes haute vitesse (3,4 Mbps)
- Plage de température étendue: -40 ° C à + 125 ° C
- Autres: Datasheet MCP4725
Exemples d’applications
- Découpe de point ou de décalage
- Calibrage du capteur
- Asservissement en boucle fermée
- Instrumentation basse puissance
- Périphériques PC
- Systèmes d’acquisition de données
- Références de tensions réglables
Un DAC à quoi ça sert ?
La carte Arduino est constituée essentiellement d’un microcontrôleur 8 bits. L’Arduino mini contient 8 entrées analogiques (A0-A7). En réalité elles sont les entrées d’un convertisseur numérique analogique (ADC ou CAN). En revanche le µC ne dispose d’aucun convertisseur numérique analogique (DAC ou CNA). Autrement dit on peut lire une tension analogique en utilisant le µC mais on ne peut pas en fournir une ! Par conséquent, un composant DAC externe est nécessaire pour convertir une valeur numérique en une tension analogique. Le DAC est un composant important en électronique, ses applications sont multiples (asservissement, contrôle, génération des signaux, références des tensons, etc.).
Comment envoyer une valeur au DAC ?
Il faut installer la librairie Adafruit_MCP4725 dédiée au DAC MCP4725 disponible ICI. La librairie nécessite la liaison I2C pour communiquer avec le DAC. La déclaration et l’initialisation sont relativement simples. Ci-dessous un exemple :
l’envoie d’une valeur au DAC (écriture dans le DAC) s’effectuer en une seule instruction !