Electronique > Réalisations > InterfacesAnalogique > Interface commande 0-10V 001 - Pro

Dernière mise à jour : 28/01/2018

Présentation

Cette interface permet de délivrer des tensions analogiques de façon indépendante sur 16 voies, sur la plage 0-10 V, à partir de données numériques codées sur 12 bits (4096 niveaux).


interface_analog_0-10v_001_pcb_3d_a

Le montage fait appel à des CNA (Convertisseurs Numérique/Analogique) de type MCP4922, et les données numériques à convertir (format 12 bits) arrivent via un unique bus SPI. La plage de tension de sortie est commune à toutes les sorties. Pour un réglage individuel de la plage de tension sur chaque sortie, voir projet Interface commande 0-10V 002.


Avertissement

Cette interface a été élaborée pour travailler avec mon interface DMX 011 et ne peut fonctionner seule. Elle doit obligatoirement être associée à un système envoyant les données numériques aptes à piloter les convertisseurs numérique/analogique MCP4922 (à base d'Arduino, Raspberry, PIC ou tout autre type de microcontrôleur).


Schéma

Carte de conversion N/A 16 voies avec régulation alim 5 V. Le 12 V injecté ici doit de préférence être régulé.


interface_analog_0-10v_001
 

Fonctionnement général

Cette carte d'interface reçoit des données numériques via un bus SPI. Les traditionnels signaux de données et d'horloge sont accompagnés de signaux de commande propres aux circuits intégrés convertisseurs utilisés, des MCP4922 (SHDN, LDAC et CS0 à CS7).


Conversion N/A et amplification

La conversion N/A est assurée par les MCP4922, des convertisseurs doubles de résolution 12 bits assez bon marché de Microchip (environ 1,50 € pièce à l'écriture de ces lignes). Leurs broches de tension de référence VREFA et VREFB permettent de spécifier la valeur haute (maximale) de la tension de sortie correspondant à la pleine échelle du convertisseur (valeur 4095). Ici la tension de référence de chaque CNA provient d'un potentiomètre unique, la plage de tension de sortie est la même pour toutes les sorties. Le transfert des données sur le bus SPI peut s'effectuer à une vitesse maximale de 20 MHz. La tension de sortie de chaque MCP4922 ne peut excéder la tension d'alimentation du convertisseur, avec les broches de référence haute du CNA soumises à la même tension d'alimentation. Pour pouvoir disposer d'une tension de sortie supérieure à +5 V, il faut l'amplifier, et le plus simple pour cela est d'utiliser des AOP qui eux sont alimentés sous une tension suffisante (ici 12 V à 15 V). Les LM324 (AOP d'usage courant) conviennent amplement pour cette tâche, mais si leur tension de sortie peut aller très près du zéro volt, la tension de déchet vers le rail d'alimentation positive en revanche est plus élevée, de l'ordre de 1,5 V. Ce qui veut dire que si le LM324 était alimenté sous 10 V, sa tension de sortie max ne pourrait pas dépasser +8,5 V. C'est la raison pour laquelle l'alimentation des LM324 doit être ici d'au moins 11,5 V, d'où la valeur plus standard de 12 V (ou plus, mais pas trop tout de même pour ne pas faire chauffer inutilement le régulateur de 5 V qui fait suite). Afin de disposer d'une réglage fin de la tension max de sortie (10 V), l'amplification apportée par les AOP est un peu supérieure à 2 (elle est de 2,2 exactement), et la tension de référence des CNA peut être ajustée à une valeur inférieure à +5 V pour compenser cet "excès" de gain.


Procédure d'utilisation

Pour chaque voie de sortie, il faut envoyer les données numériques correspondant à la valeur de tension désirée :

- pour une tension de sortie de 0 V (Nota 1), envoyer la valeur numérique 0
- pour une tension de sortie de 5 V, envoyer la valeur numérique 2047 ou 2048
- pour une tension de sortie de 10 V, envoyer la valeur numérique 4095

Nota 1 : la tension de sortie ne peut pas être exactement de 0 V, mais plutôt de quelques mV. Cala est lié au type d'AOP utilisé et au fait que sa broche d'alim négative est reliée à la masse et non à une tension négative.

Les CNA fonctionnent par paire, il y a une broche de sélection de boîtier CSx par CNA double :

Exemple pour modifier la valeur de la tension de sortie #7 :

- Mettre à l'état logique bas la ligne CS3
- envoyer les données numériques via le bus SPI (lignes CLK et MOSI)
- Mettre à l'état logique haut la ligne CS3
- envoyer une impulsion "négative" sur la ligne LDAC.

Procédure de réglage (globale pour toutes les sorties)

Envoyer la valeur 4095 à tous les CNA, puis ajuster RV1 pour que la tension sur l'ensemble des sorties soit de +10 V par rapport à la masse. La tension de référence Vref doit être voisine de 4,55 V (4,55 V * gain 2,2 = 10 V en sortie). Notez que la tension peut légèrement varier d'une sortie à l'autre, en fonction de la valeur réelle des résistances R1 à R32. Pour une cohérence maximale entre les sorties, utiliser des résistances de précision pour R1 à R32 (1% ou mieux encore 0,5% ou 0,1%).


Alimentation

Deux rails d'alimentation continue sont requis : +12 V pour l'étage de sortie, et +5 V pour les CNA. Le 12 V n'est pas très critique, les AOP doivent ici être alimentés entre +11,5 V et +15 V (maximum 18 V). Le +5 V est tiré d'un régulateur de tension LM7805 en boîtier TO220 qui sera de préférence doté d'un petit dissipateur thermique (radiateur). La tension issue du secondaire du transformateur d'alimentation TR1 est de 9 Vac ou 12 Vac, mais un modèle 9 Vac pourra être tout juste limite (dépend du modèle de transfo, de la tension secteur effective au point d'utilisation et du pont de diodes utilisé). 


Circuit imprimé

Réalisé par mes soins en double face.


Historique

28/01/2018
- Première mise à disposition.