Electronique > Réalisations > Affichage / mesures > Voltmètre 006

Dernière mise à jour : 27/03/2009

Présentation

Deux voltmètres sont décrits ici, faisant appel à un microcontrolleur de type 12F675. Un permet un affichage sur 12 LEDs, l'autre permet un affichage sur afficheur 7 segments.

voltmetre_006a_pcb_3d_a

La pleine échelle d'affichage est de 0 V à 5 V ou de 0 V à 1 V pour la version à leds, mais il est possible de l'adapter à toute autre valeur au moyen d'un étage adaptateur d'entrée qui peut se résumer à un amplificateur en tension simple ou à un basique pont diviseur résistif (exemples donnés plus loin). Quant à la version à afficheur 7 segments, la pleine échelle d'affichage est de 0 V à 10 V, avec précision au volt près.

Avertissement

Actuellement, et pour la version à leds, le code ne fonctionne que pour le mode d'affichage "Point" (Dot), borne GP3 reliée au +5 V. Le mode d'affichage de type "Barre" (Bar) n'est pas encore implémenté.

Le schéma

Sans grande surprise, le schéma est fort similaire au vumètre 12, qui met finalement en oeuvre les mêmes matériel et logiciel.

voltmetre_006a

Vitesse de rafraichissement
Elle est fixée à 100 ms (dix mesures par seconde), mais peut le cas échéant être augmentée ou diminuée en retouchant le code source fourni.

Pleine échelle et résolution
Deux échelles linéaires sont disponibles, selon position de l'interrupteur SW1 connecté sur l'entrée GP3 du PIC :
- échelle 0 V à 1 V, si SW1 ouvert
- échelle 0 V à 5 V, si SW1 fermé.
Comme le CAN (convertisseur analogique / numérique) du PIC est utilisé avec une résolution constante quelque soit l'échelle choisie, la précision de mesure est cinq fois moins bonne pour l'échelle 0 V à 1 V. Le CAN étant un modèle 10 bits, on dispose en effet de 1024 pas pour la pleine échelle 0 V à 5 V. Ce qui ramène à 1024 / 5 soit 205 pas par volt pour l'échelle 0 V à 1 V.
L'écart en volt entre chaque leds correspond donc :
- pour l'échelle 0 V à 5 V : 5 / 12 = 0,42 V (85 pas de quantification)
- pour l'échelle 0 V à 1 V : 1 / 12 = 0,08 V (17 pas de quantification)
Il est bien sûr possible de faire précéder l'entrée du convertisseur par un amplificateur en tension de gain 5, de telle sorte que l'échelle d'entrée de 0 V à 1 V corresponde à une pleine échelle de 0 V à 5 V à l'entrée du CAN, mais je doute fort que cela vaut le coup dans la majorité des applications.

Méthode d'affichage
On fait appel au multiplexage d'affichage pour allumer la ou les LEDs à tour de rôle et à une vitesse que l'oeil ne peut percevoir.

affichage_multiplexage_002_ex_001a

Pour plus de détails sur la façon dont le multiplexage employé ici fonctionne, merci de vous reporter à la page Vumètre 012

Exemples d'adaptations d'échelle

L'échelle de 0 V - 1 V ou de 0 V - 5 V ne vous convient pas ? Qu'à cela ne tienne, il suffit de peu de choses pour la modifier et l'adapter à vos besoins. C'est ce que montrent les exemples qui suivent, qui se basent sur le circuit proposé en début d'article (même PIC et même logiciel).

Exemple 1 - Echelle 0 V - 12 V (augmentation de la plage d'entrée)
Cette modification est simple à mettre en oeuvre car le souhait est de réduire une tension d'entrée qui est trop importante, et un simple pont diviseur à résistances suffit. L'adaptation qui suit provoque l'allumage de la led D1 pour une tension d'entrée de 1 V, l'allumage de la led D2 pour une tension d'entrée de 2 V, ... et l'allumage de la led D12 pour une tension d'entrée de 12 V.

voltmetre_006b

Exemple 2 - Echelle 0 V - 120 mV (diminution de la plage d'entrée)
Cette modification demande plus de travail car le souhait est de travailler avec des tensions faibles par rapport à la plage de fonctionnement nominale du CAN. L'adaptation qui suit provoque l'allumage de la led D1 pour une tension d'entrée de 10 mV, l'allumage de la led D2 pour une tension d'entrée de 12 mV, ... et l'allumage de la led D12 pour une tension d'entrée de 120 mV. Le gain de l'amplificateur d'entrée, basé sur un LM358, est compris entre 41 et 42, de sorte qu'à une tension d'entrée Vin de 120 mV, corresponde une tension mesurée (à l'entrée du CAN) comprise entre 4,92 V et 5,04 V (le gain théorique réel devrait être de 41,66).

voltmetre_006c

Remarque : la tension min en sortie du LM358, obtenue quand la tension d'entrée Vin est de 0 V, n'est pas nulle mais voisine de 0,1 V. Mais cela ne porte pas à conséquence puisqu'avec une telle tension, toutes les leds restent éteintes.

Variation avec afficheur 7 segments

Les leds peuvent être remplacées par un afficheur 7 segments. Mais comme ce type d'afficheur offre des connections avec un point commun (anode commune ou cathode commune), la liberté précédement prise avec les leds n'est pas possible. L'ajout d'un seul circuit intégré de type décodeur BCD / 7 segments permet cependant de contourner simplement le problème. A la demande d'un internaute, j'ai modifié le code original du voltmètre 006 pour disposer d'un code BCD en sortie du PIC, ce qui permet ainsi de le faire suivre par un décodeur de type SN7447, CD4511, CD4543 ou autre et ainsi de pouvoir attaquer l'afficheur 7 segments de votre choix. Ainsi modifié, le voltmètre passe en version 006z.

voltmetre_006z

Remarques :
- Le pont diviseur en entrée (R1 et R2) permet un affichage direct de la tension d'entrée, une tension de +10 V étant abaissée à +5 V à l'entrée du CAN.
- Si la tension à mesurer (appliquée sur Vin) peut dépasser +10 V, il est nécessaire d'ajouter une protection sur l'entrée pour éviter la destruction du PIC. Pour cela, une simple diode zener de 5,1 V mise en parallèle sur R2 (anode à la masse) suffit, comme cela est fait sur le voltmètre 005b.
- La précision de ce circuit est la même que celle obtenue avec le voltmètre 005b présenté à la page Voltmètre 005, dont seul le procédé utilisé pour l'affichage diffère.

Logiciel

Fichiers de code source et fichier binaire compilé (*.hex) prêt à flasher dans le PIC, dispos dans l'archive dont le lien suit.
Avertissement
Actuellement, le code ne fonctionne que pour le mode d'affichage "Point" (Dot), borne GP3 reliée au +5 V.
Voltmètre 006 - Pour PIC 12F675 - Pour versions à leds (006a, 006b et 006c)
Voltmètre 006z - Pour PIC 12F675 - Pour version à afficheur 7 segments (006z uniquement)
Si vous souhaitez recevoir par la poste un PIC préprogrammé et prêt à utiliser, merci de consulter la page PIC - Sources.