Dernière mise à jour :
22/12/2013
Présentation
14/12/2013, WE d'angoisse. Les enfants et moi
sortons le sapin et cherchons en vain les décorations. Tout a disparu,
plus de guirlande ni de boules.
Du
coup, j'ai du réfléchir à une solution d'urgence. Je venais de recevoir
un bandeau de LED tricolores pour un proto prévu pour une scène, que
j'ai temporairement détourné de son objectif. Restait à assembler
un module pour faire bouger tout ça et sans régie lumière. Un truc
autonome, quoi... Puisqu'il y avait un PIC 18F2520 déjà inséré dans un
des nombreux support de ma platine EasyPic7, je suis parti là-dessus.
Fainéant le bougre ! Ceci dit, deux versions seront proposées à terme :
- schéma 004 : montage avec PIC 18F2520, variations réellement aléatoires mais limitées en nombre (8 ou 256);
- schéma 004b : montage avec PIC 16F88, nombre de variations possibles plus étendu (un million) mais en pseudo-aléatoire.
On peut dire que je l'ai échappée belle.
Schéma 004
Je n'avais pas beaucoup de temps pour développer un machin super original, alors je suis resté sur un classique. Quoi que...
Mode de fonctionnement
Il est différent selon la version :
- schéma 004 avec PIC 18F2520 : l'activation des sorties est de type tout ou rien et réellement
aléatoire, elle ne se base pas sur une séquence pseudo-aléatoire qui se répète
au terme d'une durée plus ou moins grande. Ici, on fait usage du CAN
intégré dans le PIC, dont l'entrée est activée mais volontairement
laissée en l'air pour capter le maximum de parasites. La valeur
numérique lue après échantillonage est un peu n'importe quoi et dépend
de ce qui se passe dans l'environnement du circuit. En d'autres mots,
peu prévisible. Les variations de couleur dépendent ainsi de la
position des humains dans la pièce, de la façon dont on éternue, du
nombre de fois que le téléphone portable sonne, etc. Actuellement, le nombre de
variations est limité à 8 combinaisons pour trois sorties (R, V, B) ou 256 si on utilise les 8 sorties.
- schéma
004b avec PIC 16F88 : le nombre de variations possibles est nettement
supérieur, mais le circuit fait appel à un générateur pseudo-aléatoire
et non plus au CAN. Le rendu est tout de même pas mal, ça pourrait être
pire.
Lecture principale du CAN (schéma 004 avec PIC 18F2520)
Rien de sorcier, on utilise
l'entrée RA0 comme entrée analogique routée sur l'entrée du CAN intégré
au PIC. Selon l'endroit où l'on fait fonctionner le montage, on pourra
connecter une petite antenne de quelques centimètres sur cette entrée
pour facilité la composition de "données" aléatoires.
Réglage de sensibilité (schéma 004 avec PIC 18F2520)
Plutôt
que de chercher à compliquer le montage en ajoutant un amplificateur à
gain élevé et impédance d'entrée infinie, j'ai préféré voir le résultat
qu'on pouvait obtenir en faisant une "loupe" sur la plage de mesure du
CAN. Pour cela, on exploite les entrées RA2 et RA3 qui peuvent
respectivement servir de références basse et haute du CAN. Dans les
faits, un fonctionnement convenable a été observé avec RA2 à la masse
et RA3 au +5 V, la loupe n'est pas toujours obligatoire. Je la laisse,
au cas où...
Sorties
Le programme du PIC permet de piloter huit séries de LED mais je n'en
ai utilisé que trois. Le schéma montre un ULN2803 dont le boîtier
comporte huit transistors darlington, mais sur mon proto je me suis
contenté d'un triplet de transistors 2N2222.
Alimentation
Le
bandeau de LED utilisé ici est alimenté en +12 V et le PIC est alimenté
par une tension de +5 V. Vous ne serez donc pas trop surpris de trouver
entre ces deux points, un régulateur de tension de 5 V de type LM7805.
J'ai effectué des tests avec une tension générale comprise entre 9 V et
12 V, c'est plus "doux" sous 9 V mais les LED bleues du bandeau LED ne
s'illuminent quasiment plus (leur tension de seuil est plus élevée, il
leur en faut plus que les LED rouges et vertes). J'ai trouvé qu'une
valeur de 11 V allait très bien, sous 12 V c'était trop lumineux à mon
goût.
Schéma 004b - avec PIC 16F88
Mêmes grimaces, on diminue juste le nombre de broches.
Logiciel du PIC
Fichier binaire compilé (*.hex)
prêt à flasher dans le PIC, dans l'archive zip suivante :
Oscillateur
aléatoire 004 - 18F2520 - (15/12/2013)
Si vous souhaitez
recevoir par la poste un PIC
préprogrammé et prêt à utiliser, merci de
consulter la page
PIC
- Sources.
Prototype
PIC programmé sur ma platine de développement
EasyPic7 et ensuite rapidement déporté sur une plaque sans
soudure, pour faciliter son placement près du sapin de Noël. Les photos
sont prise avec le PIC 18F2520 à l'oeuvre, pas fait de photo avec le
16F88.
Au début, les variations de couleurs étaient trop rapides et ça
faisait vite mal à la tête. Après ralentissement, c'est nettement plus
agréable !
Circuit imprimé
Non réalisé.
Historique
15/12/2013
- Première mise à disposition.