Dernière mise à jour :
27/05/2018
Présentation
Ce chronomètre est une petite variation du
chronomètre
001b.
Il permet un comptage au centième de seconde près et non
plus à la seconde près.
En revanche, il n'affiche plus
les heures et s'arrête de compter à 99 minutes 59 secondes
99 centièmes de secondes. Tout comme son ancètre 001b, la
précision est celle permise par son oscillateur à quartz,
donc suffisante pour grand nombre d'applications. Là encore il
est fait usage de six
afficheurs
à leds sept segments à anode commune câblés pour fonctionner
en
mode
multiplexé.
Il est possible de ne conserver que quatre afficheurs sur les six si
l'affichage souhaité ne nécessite pas la présence des minutes. Version
avec
PIC 16F628A associé à un décodeur TTL sept segments de
type SN7447.
Caractéristiques principales
- Entrée START, pour démarrage depuis zéro ou pour reprise sur pause.
- Entrée PAUSE pour arrêt avec mémorisation valeur en cours.
-
Entrée MR (Memory Reset) pour remise à zéro générale.
Avertissements
J'ai testé pratiquement ce montage après l'avoir simulé avec succès,
mais
seulement avec quatre afficheurs sur les six (secondes et centièmes).
Je ne pense pas que l'affichage des minutes pose problème mais je
préfère signaler que le test n'a pas été complet.
Schéma
Usage de deux circuits intégrés fonctionnant tous deux
sous 5 V, couplés à six afficheurs sept segments et six transistors
courants.
Vous ne serez sans doute pas surpris de retrouver un schéma quasiment
identique à celui du
chronomètre
001b.
Les différences principales résident dans le logiciel du PIC
et dans la base de
temps portée à 8 MHz (quartz externe 8 MHz contre précédement 4 MHz
interne). Deux condensateurs ont en outre
été ajoutés sur les poussoirs START et PAUSE, nous
en reparlerons plus loin.
Fonctionnement général
Le PIC est programmé pour
délivrer une
interruption toutes les 10 ms, c'est ce qui permet la précision
au centième de seconde. Si le chronomètre
est
démarré (appui
sur la touche SW1 / START ou commande via un transistor à
collecteur ouvert par exemple), les interruptions incrémentent
un compteur et l'affichage est mis à jour. Si le
chronomètre est en mode pause (appui sur le poussoir SW2 /
PAUSE), le compteur ne reçoit plus rien mais
conserve sa valeur en cours, qui reste affichée. Un nouvel appui
sur SW1 / START redémarre le comptage là où il
était arrêté. L'appui sur le bouton
SW3 / MR (RAZ) remet le compteur à zéro. Du fait que l'on
souhaite une précision au centième de seconde, il est
hors de question d'utiliser des routines logicielles d'anti-rebond sur
les poussoirs START et PAUSE qui durent plusieurs dizaines de ms. J'ai
donc opté pour un debouncing (anti-rebond logiciel) de seulement
10 ms, avec des condensateurs de 100 nF en parallèle sur les
poussoirs en question. De cette façon, on conserve une
précision de 1 centième de seconde sur la mise en route
et sur l'arrêt du comptage. Ce qui signifie que la
précision de l'affichage entre START et PAUSE sera de 2
centièmes de seconde. Pour la remise à zéro, point
besoin de cette précision temporelle.
Start et Pause par barrière lumineuse
Ce montage a été conçu pour chronométrer un
parcours d'obstacles
(agility et éducation canine). Les tops de départ et
d'arrivé peuvent
être donnés par pression sur des boutons-poussoirs, mais je
conseille
l'utilisation d'une barrière lumineuse au départ et
à l'arrivée dans le but d'uniformiser les temps de réaction du circuit pour chaque
"participant". La sortie des barrières lumineuses du commerce peut être de
différents types :
-
sortie sur relais
-
sortie TTL (0 V ou +5V)
-
sortie sur collecteur commun d'un transistor NPN
-
sortie sur collecteur commun d'un transistor PNP
L'adaptation de ces différents types de sortie sur le chronomètre
s'effectuera selon un des schémas d'adaptation suivants (une sortie sur
relais ou sur transistor NPN en collecteur ouvert ne demande l'ajout
d'aucun composant) :
Tous les transistors montrés ci-avant sont câblés en émetteur commun et
agissent comme des interupteurs électroniques. Une commande logique
positive sur leur base provoque la "fermeture" de leur jonction E-C, ce
qui provoque du même coup une inversion de l'état logique. Pour les
deux derniers cas de figure avec sortie sur transistor PNP, il faut
choisir l'interface requise pour que le transistor relié à
l'entrée du PIC (entrée START ou STOP) soit
bloqué au repos.
Une
autre solution assez "classe" et économique consiste à utiliser le faisceau laser d'un
pointeur laser 1 mW premier prix pour constituer la ou les barrières
lumineuses.
Voir page
Barrière
lumineuse 001 pour un exemple pratique.
Multiplexage
L'affichage
est de type multipléxé, les afficheurs sont allumés les uns après les
autres, ce qui permet d'économiser de l'énergie et de limiter le nombre
de fils de câblage. Pour plus de détails, merci de vous reporter à la
page
Affichage
et multiplexage.
La fréquence de raffraichissement est de l'ordre de 100 Hz
pour chaque afficheur (environ 600 Hz pour les six), ce qui
permet de ne pas voir les segments scintiller.
Logiciel du PIC
Code source (format MikroPascal Pro V3.80) et fichier binaire compilé
*.hex
disponible dans l'archive suivante.
Chronomètre
001c - 16F628A (19/12/2010)
Si
vous souhaitez recevoir par la poste un PIC préprogrammé
et prêt à utiliser, merci de consulter la page
PIC - Sources.
Prototype
Réalisé sur plaque sans soudure, avec les liaisons qui vont bien vers
la platine EasyPic4.
Comme
dit en avertissement, tests effectués avec quatre afficheurs seulement
sur les six normalement requis, secondes et centièmes de secondes.
Circuit imprimé
Non réalisé.
Corrections et remarques
27/05/2018
- Ajout paragraphe descriptif pour adaptation à des barrières lumineuses du commerce (avec schémas interfaces).
19/12/2010
-
Mise à jour du code logiciel d'une part pour éviter que les afficheurs
éclairent moins quand on appuie sur les boutons Start ou Pause, mais
surtout pour que le comptage ne soit pas ralenti quand l'impulsion de
démarrage perdure. A l'origine il fallait une impulsion de durée
comprise entre 10 et 15 ms, désormais l'impulsion
peut durer
tant qu'on veut, du moment qu'elle s'arrête avant l'arrivée de
l'impulsion de STOP.
xx/xx/xxxx
- Première mise à disposition.