|status= Prototype|image=Light.control.soldered.board.jpg|description=Une centrale de phares clignotants pour velo ou velomobile|license=CC-by-sa-3.0|contributeurs=Cedric|ingrédients=electronique
|name=Contrôleur de lumière
|description=Une centrale de phares clignotants pour velomobile
|license= CC-by-sa-3.0|Creative Commons Attribution CC-by-sa-3.0 France
|contributeurs=Cedric
|ingrédients=electronique
}}
==Résumé==
==Essais==
on programme le tiny en tapant
make -f Light.control.44.make program-usbtiny
* ajouter un capteur de lumière pour piloter les phares
===régulateur de tension===
Le nouveau régulateur peut fournir jusqu'à 1 Ampère : http://fr.rs-online.com/web/p/regulateurs-de-tension-a-faible-chute-ldo/7615618/
à noter que j'ai découvert une particularité du code : pour faire des traces qui ne dessinent pas aussi des trous, il faut utiliser des primitives de volume (cube, cylinder...), les formes plates (square,circle) provoquant des trous.
===Le circuit principal===
j'ai repris le même schéma en élargissant les pistes de puissance.
J'ai créé une dérivation pour avoir le choix d'alimenter les lampes soit en 5V régulé, soit avec l'alimentation principale (6 à 12V)
en alternative au bouton, j'ai produit un détecteur de lumière pour actionner les phares directement quand la lumière ambiante baisse.
[[image:Light.Detector.board.png|100px]]
[[image:Light.Detector.cut.png|100px]]
[[image:Light.Detector.traces.png|100px]]
le capteur est un Optek OP580 (phototransistor)
Work in progress : [[Media:Lumvelo.zip]]
===Fabrication===
====Fraisage====
Le circuit est réalisé en fraisage avec la Modela MDX20
====Soudure des composants====
[[image:Lumvelo.soude.jpg|600px]]
====Cablage====
Le circuit a deux ou trois options de cablage :
* on peut choisir la tension d'alimentation des lumières
* on peut éventuellement cabler le capteur de lumière avec les interupteurs (du code doit être écrit)
[[image:LightControl.wiring.png|600px]]
===Tests===
sans charge, ça fonctionne bien
mais lorsqu'on câble des leds derrière les mosfets, ça fait des trucs bizarres
Avec Laurent, j'ai découvert que même sans charge, l'alim perd 1 V quand on actionne les inter de clignotants : ça fait beaucoup alors je check mon code
Je pense que les entrées en pullup fonctionnent bizarrement.
Je vérifie la mise en oeuvre des résistances pullup http://www.micahcarrick.com/avr-tutorial-switch-debounce.html
===Debuggage===
Avec l'aide de Laurent, j'ai réussi à isoler le problème :
En voulant configurer mes entrées numériques en "pullup", je les ai configurées en sortie, donc lorsqu'on actionnai un interrupteur, elles tentaient de fournir un maximum de courant (car étant reliées à la masse, elle provoquaient un court circuit).
J'ai donc changé le code :
<code lang=C>
// initialise button pins pullup
//
set(button_port,LeftBton_pin);
set(button_port,RightBton_pin) ;
set(button_port,LightBton_pin);
//initialise inputs
set(Lights_direction,LeftBton_pin);
set(Lights_direction,RightBton_pin);
set(Lights_direction,LightBton_pin) ;
</code>
par
<code lang=C>
// initialise button pins pullup
button_port |= _BV(PA4);
button_port |= _BV(PA5);
button_port |= _BV(PA6);
</code>
Finalement le code fonctionne !
Le nouveau régulateur peut fournir jusqu'à 1 Ampère : http://www.digikey.com/product-detail/en/LM2940IMP-5.0/LM2940IMP-5.0CT-ND/3701581
Je publie d'hors et déjà les [[media:LightControl.V2.zip|fichiers de fabrication finaux]], avant d'[[Controleur_de_Lumière/Implantation|implanter le circuit]] dans mon vélomobile