Affichage_Atrylec_com

Vous n'êtes pas seuls dans l'Univers !

Transistor_100

L'afficheur à quatorze LED

Le projet permet d’afficher des messages lisibles grâce à une double colonne de sept LED.
Ces LED sont disposées à intervalles réguliers, avec une colonne de LED rouges et une autre de vertes.
L’allumage et l’extinction de ces diodes produit, par déplacement, l’apparition des messages.
En effet, à partir d’une certaine vitesse de déplacement, l'œil humain ne suit plus et perçoit le message, alors qu’en réalité, à chaque instant, une seule colonne de LED est active.
Le rôle de la partie électronique est donc de commander cette double colonne de diodes pour produire l’affichage voulu.

documentaires-des-proprietes-icone-5224-32

Information :
Ce projet a servi de sujet de T.P.E. - Travaux Personnels Encadrés, en classe de première.
Il n'utilise pas de microcontrôleur, mais uniquement de la logique câblée.
Des mémoires de type « RAM », à accès parallèle, permettent de compléter le dispositif.

Le système se compose de trois ensembles : le clavier qui permet d’entrer les données, la partie électronique et son alimentation qui traitent ces données, et les deux colonnes de LED ultra lumineuses rouges et vertes. Le fonctionnement de chacun de ces ensembles va être détaillé ci-après.

TPE2007
Un exemple d'affichage que peut générer le projet

Version 1 - 2007

1) Le clavier

Comme la solution de l’interfaçage avec un clavier d’ordinateur a dû être abandonnée, il a fallu réaliser un clavier spécifique au projet. Il est composé d’une série de 37 boutons-poussoirs classiques qui correspondent aux caractères alphanumériques. Il comprend également trois commandes spéciales qui sont : le bouton «  FIN message », un bouton de sélection de la couleur et un bouton RàZ de remise à zéro. Un bus de dix conducteurs permet la communication avec la partie électronique.

Le bouton « FIN message » insère un caractère spécial qui sera reconnu lors de la reproduction du message. Ceci provoquera immédiatement la reproduction du message depuis le début. Cette fonction permet de reboucler le message sur lui-même à l’infini.

Le bouton « couleur » est un interrupteur miniature à enclenchement. La position enclenchée correspond à la couleur rouge sélectionnée et à l’apparition du potentiel de l’alimentation sur la ligne « COUL » du bus (1 logique). Lorsqu’il n’est pas enclenché, le vert est sélectionné (0 logique).

Un dernier poussoir permet la sélection d’un caractère spécial comme les signes de ponctuation par exemple. Pour saisir un caractère de ce type, il faut maintenir le bouton et appuyer sur la touche alphanumérique correspondante.

Le bouton « remise à zéro », quant à lui, permet de corriger le message lors de la saisie, s’il a été mal entré.

Ces trois boutons sont reliés d’un côté directement au potentiel d’alimentation, et de l’autre côté à leur fil respectif du bus.

Les touches alphanumériques transmettent un signal binaire sur six fils du bus, et bien sûr chaque touche a sa propre combinaison. Par exemple l’appui sur le « A » transmet un zéro logique sur les cinq premiers fils et un un logique sur le dernier conducteur. L’adresse binaire reçue par l’électronique est donc « 000001 ». Le premier conducteur correspond au bit de poids fort, tandis que le dernier conducteur achemine le bit de poids faible. Pour générer le signal binaire à partir de l’appui d’une touche, un réseau de diodes a été utilisé (type 1N4148). Ainsi le bouton « O » qui transmet le signal « 001111 » est relié -comme tous les autres- au potentiel d’alimentation et à quatre diodes anti-retour qui renvoient ce potentiel sur les quatre premières lignes binaires. Les lignes non reliées au potentiel de l’alimentation sont considérées comme des zéros logiques.

Le bouton « caractère spécial » force le bit de poids fort à 1 quand une touche alphanumérique est sollicitée. Cela permet de pouvoir saisir les adresses binaires correspondant aux caractères spéciaux suivant le 9. D’un point de vue électronique, cinq diodes rassemblent les signaux des cinq premières lignes d’adresses. Un un logique est donc présent à ce point du clavier dès que l’on appuie une touche. Ce signal arrive au bouton « caractère spécial », qui le réinjecte dans la dernière ligne d’adresse lorsqu’il est appuyé. Ainsi le bit de poids fort est mis à 1.

Clavier
Schéma du clavier, sans l'ensemble des touches

2) L’ensemble électronique

Cette partie est la plus conséquente. Elle est basée sur l’utilisation de deux mémoires à accès parallèles et de deux circuits intégrés renfermant chacun deux compteurs binaires synchrones 4 bits. Une partie utilisant des portes logiques, des condensateurs, des résistances et des transistors assure la gestion de l’ensemble. L’alimentation est architecturée autour d’un régulateur de tension 5 Volt.

Les références des composants évoqués ci-dessus seront indiquées par la suite.

a) L’alimentation

La source de courant du projet est fournie par une pile rechargeable de 9 Volt. Il est néanmoins possible de l’alimenter en 12 Volt continus, par exemple avec la tension d’un allume-cigare. Le courant ainsi délivré est filtré par les condensateurs C1 et C2, tandis que la diode D1 montée en inverse assure une protection en cas d’erreur de branchements. Cette tension qui bénéficie d’un premier filtrage arrive au régulateur L7805. Ce dernier délivre 5 Volt à partir d’une tension d’alimentation comprise entre 9V et 15V. Un second filtrage est opéré sur cette tension régulée : C4 permet de fournir de l’énergie en cas de baisse de tension, dû par exemple à l’allumage des sept LED simultanément. Tous les circuits intégrés sont alimentés par cette tension de 5 Volt. Il est à noter que la tension fournie par la source d’alimentation est envoyée directement au clavier.

Alimentation
Schéma de l'alimentation électrique

b) Les mémoires

Le circuit intègre deux mémoires RAM à accès parallèle. La première, MEM1, sert à mémoriser le message à reproduire en tant que tel. Cela signifie que ce sont les adresses binaires de chaque caractère qui y sont mémorisés, accompagnées de leur bit renseignant sur leur couleur.

La seconde mémoire, MEM2, contient la table de caractères. C’est elle qui permet, à partir des adresses binaires, de générer un caractère en activant les LEDs correspondantes, en fonction du temps. Les mémoires utilisées possèdent, comme toute mémoire RAM à accès parallèle :

- Des entrées d’adresse (ici 11) permettant de sélectionner une zone de la mémoire

- Des entrées/sorties de données (ici 8) permettant d’écrire ou de lire dans la mémoire

- Des entrées de contrôle (ici 3) permettant de choisir le mode de fonctionnement de la puce mémoire : lecture/écriture, désactivation des sorties, désactivation de la puce

- Deux broches réservées à l’alimentation (ici le 0V et le +5V).






La puce mémoire contenant le message voit ses entrées/sorties reliées aux six lignes d’adresses provenant du clavier, au fil transmettant l’information « COUL » et à celui transmettant le signal « FIN message ». Il faut préciser que des résistances de 1KΩ sont insérées entre les lignes provenant du clavier et les entrées/sorties de la mémoire. Leur but est de ramener la tension transmise par le clavier à 5V afin de ne pas détériorer la mémoire. Si une entrée/sortie ne reçoit pas le potentiel de l’alimentation du à l’appui d’une touche, elle est ramenée au 0V par l’intermédiaire d’une des huit résistances de 10KΩ. Chaque broche E/S reçoit donc 0V (ligne du bus clavier correspondante sans potentiel) ou 5V (ligne du bus au potentiel de l’alimentation).

Les huit premières entrées d’adressage sont commandées par deux compteurs binaires synchrones 4 bits, A et B, tandis que les trois autres restantes sont inutilisées et donc reliées au 0V. Il y a huit lignes d’adressage utilisées, ce qui permet de mémoriser jusqu’à 2 puissance 8, soit 256 caractères (256 octets). Ce nombre est largement suffisant pour cette application.

Il y a également trois entrées de contrôle de la mémoire. L’entrée /CE qui permet d’activer la puce, est reliée au 0V car elle est active sur niveau bas. Ainsi la puce est en permanence sélectionnée. L’entrée /OE qui place les sorties en haute impédance lorsqu’elle est à 1, est elle aussi reliée en permanence au 0V. Enfin, l’entrée la plus importante pour cette réalisation est l’entrée /WE. Cette entrée, essentielle à toute puce mémoire, permet de provoquer la mémorisation des données présentes sur les huit entrées/sorties. Pour la mémoire utilisée ici, ce phénomène de mémorisation se produit quand /WE est à niveau bas. Si /WE reçoit un niveau haut, la puce est en mode lecture et pour une certaine adresse binaire, la puce transmet les données correspondantes.

La broche /WE est contrôlée par la partie logique du projet. Il en est de même pour l’entrée d’horloge /CPa du compteur binaire A contenu dans le circuit intégré 4520. Le compteur B, contenu dans le même boîtier, est bouclé sur le compteur A grâce à la liaison /CPb et Q3a. L’entrée d’horloge CPa active sur front montant du compteur A est commandée par une broche de la table de caractères, comme cela sera expliqué par la suite. Enfin, il faut signaler que les entrées de remise à zéro des deux compteurs sont reliées entre elles et à la partie logique.






Cette mémoire possède les mêmes caractéristiques que la mémoire « message » mais elle est en plus dotée d’une pile de sauvegarde et d’un circuit d’économie d’énergie. Cela lui permet donc d’être plus facilement programmable qu’une mémoire FLASH car elle se comporte comme une RAM avec sauvegarde en cas de coupure de l’alimentation.

Elle possède aussi 11 entrées d’adresse dont les deux dernières, A9 et A10 sont inutilisées et donc reliées au 0V. Les six entrées allant de A3 jusqu’à A8 servent à sélectionner un caractère dans la table de caractère. Elles sont en fait reliées directement aux entrées/sorties de la mémoire « Message » qui peut donc indiquer à la table de caractères ce qui doit être affiché. Les trois premières entrées, A0, A1 et A2 sont utilisées pour déterminer la COLONNE du caractère sélectionné dans la mémoire. Il y a 8 combinaisons possibles pour ces entrées, ce qui permet d’avoir des caractères s’étalant sur 8 colonnes au maximum. Le fonctionnement est donc le suivant : un caractère est demandé par la mémoire « Message » qui transmet l’adresse correspondante aux entrées A3~A8 de la table de caractères. Le compteur binaire C fait défiler les adresses des colonnes de ce caractère sur les entrées A0~A2. Sur les sorties de la mémoire « Table de caractères » on récupère des zéro et des un logiques. Lorsqu’une sortie est à un, la LED qui s’y rattache s’allume. Un zéro provoque son extinction.

Pour que chaque caractère puisse avoir une largeur adaptée, il a fallu recourir à une astuce. On remarque que les entrées/sorties de la mémoire sont au nombre de 8, mais que seules 7 sorties sont utilisées pour piloter les LED. La dernière sortie est donc utilisée ici comme signal « FIN du caractère ». Lorsqu’un caractère est en cours de reproduction, cette 8è sortie présente un zéro logique. Quand la reproduction d’un caractère est terminée, elle transmet un niveau haut. Ce signal provoque la remise à zéro du compteur C, qui fait défiler les adresses des colonnes du caractère. Il incrémente également le compteur A, ce qui provoque l’apparition de l’adresse binaire correspondant au caractère suivant.

Principe_de_fonctionnement
Principe de fonctionnement de la table de caractères

Schema_global
Schéma global : partie numérique

Comme indiqué sur le schéma, des résistances de protections sont insérées entre les broches de la mémoire MEM2 et les anodes des LED.
Leurs valeurs ohmiques se déterminent connaissant la tension de fonctionnement Vf des LED, leur intensité de fonctionnement et la tension V apparaissant sur les broches de la puce MEM2.

Pour déterminer la valeur de Rp on applique la loi d'Ohm, et on trouve :

Rp = (V - Vf) / If

Ici, on considère que V vaut 5V.

En consultant les données fabricant, pour les LED vertes utilisées par ce projet, on trouve : Vf = 2,5V et If = 20mA

Pour les LED rouges utilisées par ce projet : Vf=2V et If=40mA.

Comme l'anode d'une LED rouge est reliée à l'anode de la LED verte correspondante, il faut choisir la valeur de Rp la plus grande des deux pour être sûr d'avoir un fonctionnement normal des LED. On a pris comme valeur 220Ω afin de garantir une protection maximale.

Cablage_des_LED
Schéma du câblage des LED

c) Partie en logique câblée

Cette partie de l’ensemble électronique contient tout ce qui est nécessaire pour contrôler les mémoires, les compteurs et les couleurs des LED.
De plus, des éléments tels qu’un buzzer et une LED bicolore ont étés rajoutés.
Le buzzer émet un signal acoustique lorsqu’un caractère est saisi. Il faut donc lui joindre un circuit oscillateur.
La LED bicolore renseigne sur la couleur d’un caractère lors de la saisie.
Elle peut s’illuminer en rouge ou en vert et possède aussi son circuit de commande.

1) Monostables

Les monostables présents sur le projet servent à provoquer le passage bref à un niveau bas de l’entrée /WE de la mémoire contenant le message et l’incrémentation du compteur A. Cela permet de saisir un message dans cette mémoire, une adresse après l’autre. Ce processus de mise en mémoire puis d’incrémentation du compteur se déclenche dès qu’une touche alphanumérique est appuyée. Le système sait qu’une touche est sollicitée grâce à six diodes dont les anodes sont reliées aux lignes A0 à A5 du connecteur du clavier. Leurs cathodes sont rassemblées et reliées, via une résistance R2, de 1kΩ, à l’entrée de déclenchement du premier monostable. Une autre résistance R1, de 10kΩ, ramène cette entrée au 0V lorsque aucune touche n’est appuyée. Ce premier monostable, de type non redéclenchable, s’active quand un front montant est appliqué sur son entrée, grâce à l’inverseur U3A. Sa sortie est reliée à la broche /WE de la mémoire « message ». On récupère sur cette sortie un bref niveau bas qui entraîne la mémorisation des données binaires correspondant à la touche appuyée au clavier. Enfin, il faut noter que ces monostables ont aussi un rôle anti-rebond afin de filtrer les signaux transmis par les poussoirs du clavier.
Le temps T pendant lequel la sortie est à niveau bas est donné par la relation :
T≈0.69 x R x C
R et C sont les valeurs de la résistance (en Ohm) et du condensateur (en Farad) déterminant la temporisation.
Ici, on souhaite avoir une temporisation de 0.1seconde au maximum, afin que la procédure d’enregistrement des données soit rapide. En appliquant la relation précédente avec une résistance de 10kΩ et un condensateur de 10µF, on obtient T≈ 0.07 sec, ce qui est compatible avec les caractéristiques requises.

La suite de la procédure d’enregistrement d’un caractère se caractérise par l’incrémentation du compteur A qui sert à l’adressage de la mémoire message. Cette incrémentation est assurée par le second élément monostable. Son entrée de déclenchement est reliée à la sortie du premier monostable et est active sur front montant du fait de l’inverseur U3C. La sortie, qui présente un niveau bas pendant moins de 0.1 seconde, commande la broche d’horloge /CPa du compteur A.

Chronogrammes
Chronogrammes pour expliquer le fonctionnement

Monostables
Schéma des monostables

2) Générateur de signal acoustique

Comme cela a déjà été indiqué, le projet est pourvu d’un buzzer qui génère un signal lorsqu’un caractère est saisi au clavier et mis en mémoire. Ce signal joue un rôle de confirmation pour l’utilisateur. Lorsqu’il est émis, on peut être certain que le clavier est correctement raccordé au dispositif et que le bouton-poussoir a été appuyé une fois. Si jamais deux signaux se font entendre pour un appui, cela signifie que la touche a été mal appuyée. A ce moment-la, on peut corriger à l’aide du bouton « Remise à zéro ». De plus, l’absence de signal indique que la pile est trop faible, car ce signal n’est généré qu’à partir d’une certaine tension de seuil à l’alimentation.

Cet oscillateur est réalisé grâce à un astable contenant une porte NON-ET et un inverseur. L’avantage est que l’on dispose d’une entrée de commande qui, lorsqu’elle est soumise à un niveau haut, permet l’oscillation. Les composants déterminant la fréquence sont la résistance R1 et le condensateur C1. Le but de cet oscillateur est de produire un son caractérisé par une fréquence audible avoisinant les 1000 Hz. La fréquence d’oscillation d’un tel montage est donnée par :

f=1/(0.65.R.C)

En considérant que la valeur du condensateur C1 sera fixée, un simple calcul permet de déterminer la valeur de la résistance R1 pour obtenir la fréquence voulue. Avec les composants utilisés ici, la fréquence de l’oscillateur avoisine les 1500Hz. Le rôle du transistor Q1 est de fournir un courant suffisant au buzzer, sans perturber l’oscillateur.

C’est le circuit des monostables qui commande l’entrée de commande.

Generateur_de_signal
Schéma du générateur de signal acoustique

3) Oscillateur principal avec circuit de Marche/Arrêt

Pour fournir un signal d’horloge au système, un circuit astable faisant appel à une porte NON-ET et un inverseur logique a été mis à contribution. Cet oscillateur permet d’assurer le défilement des caractères composant le message. Il est pourvu d’une résistance variable AJ1 qui permet d’influer sur la fréquence d’oscillation, et donc d’agir sur la largeur apparente des caractères lors de l’affichage. Ce signal d’horloge incrémente le compteur C qui fait défiler un caractère colonne après colonne. Rappelons que le passage au caractère suivant se fait grâce au signal « FIN caractère » transmis par la table de caractères. La résistance R4 de 1kΩ sert de résistance « seuil » pour le réglage de la fréquence. Pour déterminer la fréquence on utilise la même relation que pour le générateur de signal acoustique.

Ceci permet de dire que la fréquence minimale de cet oscillateur avoisine les 150Hz quand on a la résistance maximale de 101kΩ, et dépasse les 15kHz pour la valeur maximale de la résistance, soit 1 kΩ.

Comme cet astable conditionne le fonctionnement du projet, il a fallu y rajouter un dispositif de commande qui est déclenché par l’utilisateur grâce à un poussoir. Pour ce faire, il a fallu faire appel au dernier compteur binaire contenu dans le second circuit CD4520. Il est utilisé simplement en tant que diviseur par deux de fréquence. On peut alors parler de comportement similaire à une bascule T : la sortie change d’état à chaque front montant présenté sur l’entrée. Ceci permet d’éviter d’avoir à rajouter un circuit intégré, qui prend de la place et nécessite une alimentation, pour obtenir le même fonctionnement. Pour compléter ce dispositif, la cellule R1 et C1 réalise un circuit anti-rebond afin d’éviter que la sortie ne change d’état à chaque rebond lors de l’appui du poussoir Marche/Arrêt.

Les compteurs A et B, contenus dans le même circuit intégré, servent à adresser la mémoire contenant le message. Afin de synchroniser l’affichage avec le déplacement, ils sont remis à zéro par le signal transmis par un « balancier » qui détecte l’arrivée en fin de position lorsque le système est agité manuellement. Ces compteurs sont aussi remis à zéro par le signal « FIN message » transmis par la mémoire contenant le message. Toutefois, cette remise à zéro par « FIN message » ne doit s’effectuer qu’à la condition que le message soit en cours de reproduction, d’où la porte ET réalisée avec deux NON-ET. En effet lors de l’insertion du signal « FIN message » lors de la saisie au clavier, on provoque la mise à un de l’entrée FIN_Mess qui, si elle était directement reliée aux entrées de remise à zéro des compteurs A et B, provoquerait leur réinitialisation prématurément, avant que l’ordre « FIN message » n’aie pu s’enregistrer.

L’appui sur le bouton de Marche/Arrêt provoque également la remise à zéro des trois compteurs A, B et C afin de préparer l’enregistrement d’un message suivant et d’éviter le blocage du compteur C sur une adresse de colonne d’un caractère, ce qui provoquerait l’allumage permanent des LED. Enfin, le compteur C est aussi remis à zéro si la ligne « FIN_Caract » passe à 1. Il faut rappeler que cette ligne est contrôlée par la dernière sortie de la table de caractères.

Le balancier transmet son signal sur la ligne « Bal », la sortie CPc incrémente le compteur C sur front montant, MRa_b remet les compteurs A et B à zéro tandis que MRc réinitialise C.

Oscillateur
Schéma de l'oscillateur principal

4) Circuit de contrôle de la LED bicolore

Pour faciliter la programmation d’un message, le système est pourvu d’une diode électroluminescente bicolore à cathode commune. Elle peut s’illuminer en vert ou en rouge et renseigne sur la couleur du caractère saisi. Durant la reproduction du message, cette LED s’éteint, pour ne pas perturber l’affichage. Le circuit gérant ceci est très simple car il ne fait appel qu’à deux transistors, tous deux de type PNP. Pour étudier son fonctionnement, il y a trois cas.

Cas 1 : Système arrêté et bouton « COULEUR » du clavier enclenché

Le fait que le système ne reproduise pas de message impose qu’un zéro logique soit présent sur la base de Q2, via la résistance R5.

Ce transistor voit son collecteur relié à la cathode commune de la LED bicolore et son émetteur est relié au 0V. On considère que Q2 se sature et que la cathode commune est alors reliée au 0V.

Comme le bouton « COULEUR » est enclenché, la ligne « COUL » est au potentiel de la pile, et la LED s’allume en ROUGE car elle est reliée au +9V via la résistance de protection R2.

Dans le même temps, le transistor Q1 est bloqué, la différence de potentiel entre l’anode et la cathode de la LED verte est quasi-nulle et celle-ci ne brille pas.

La broche I/O7 de la mémoire message est soumise à un 1 logique.

Cas 2 : Système arrêté et bouton « COULEUR » relâché

L’interprétation pour Q2 est la même que précédemment et on considère que la LED bicolore voit sa cathode reliée au 0V.

Le bouton « COULEUR » n’étant pas appuyé, la ligne « COUL » est portée au 0V par la résistance R6. La LED rouge ne peut donc pas s’allumer mais la base du transistor Q1 est aussi reliée au 0V ce qui provoque l’apparition du +5V sur son émetteur étant donné que son collecteur est relié au +5V. La LED verte peut donc s’allumer.

En parallèle, la broche I/O7 de la mémoire « Message » voit un zéro logique du fait de la résistance R4.

Cas 3 : Système reproduisant un message

Comme le système reproduit un message, la ligne Q0d présente un état haut. Cela se répercute sur la base de Q2 qui devient bloqué. La LED bicolore n’ayant plus sa cathode reliée au 0V demeure éteinte.

Controle
Schéma du circuit de contrôle de la LED bicolore

5) Gestion des couleurs et des interruptions des LED

Les LEDs ultra lumineuses permettant de générer les caractères sont organisées en deux colonnes de sept LED : une rouge et une verte. Par sélection d’une de ces colonnes, le caractère reproduit sera vert ou rouge. Comme les LED rouges sont légèrement espacées des vertes, il n’a pas été retenu de permettre aux deux colonnes d’être actives en même temps, pour afficher du jaune.

Afin d’avoir un affichage correct des lettres, il a fallu ajouter un circuit permettant d’interrompre l’allumage des LED brièvement durant la reproduction du message, et ce pour chaque colonne d’un caractère.

Effet
Effet du dispositif d'interruption

Le système permettant de contrôler la sélection d'une colonne de LED se base sur l'alimentation ou la coupure de l'alimentation de leurs cathodes. Les LED rouges ont leurs cathodes reliées entre elles et au collecteur du transistor Q1. Si ce dernier est saturé, on peut considérer que les cathodes sont reliées au 0V et que les LED rouges peuvent être allumées. Le principe est identique pour les LED vertes, contrôlées par Q2. Il est à rappeler que les anodes de chacune des LED sont reliées aux sorties de la table de caractères.

Pour déterminer quelle colonne doit être activée, seules deux portes NON-ET ont été employées, formant un circuit logique correspondant à l'effet désiré. Ce circuit logique commande les deux transistors PNP Q1 et Q2. Le signal Q0c, qui provient du compteur C, sert de signal d'interruption et contrôle l'entrée « INT » du circuit logique de gestion de la couleur. Lorsqu'il est à niveau haut, les LED sont obligatoirement éteintes. Quand au signal « COUL », il provient de la mémoire message et renseigne sur la couleur du caractère à reproduire.

Gestion
Couleurs et interruptions

Couleurs
Schéma du circuit de gestion de la couleur

Commentaires (1)

zadok78

Le samedi 26 novembre 2011 à 22:55

Super ton site!

Ajouter un commentaire

Votre pseudo :

Votre commentaire :

Je veux remonter !