Controleur de Lumière : Différence entre versions

De fablabo
Aller à : navigation, rechercher
(Liste des composants)
(le code)
Ligne 120 : Ligne 120 :
  
 
PA1 utilisera un PWM pour régler l'intensité des phares
 
PA1 utilisera un PWM pour régler l'intensité des phares
 +
 +
====Premier test====
 +
 +
Pour valider le circuit
 +
 +
j'ai fait un code simple qui fait clignoter les sorties
 +
 +
[[file:Hello.blink.3.44.zip]]
 +
  
 
====interruptions====
 
====interruptions====

Version du 22 avril 2014 à 14:10


Une centrale de phares clignotants pour velomobile

JoliAfficheur.jpg

Contributeur·ice·s

Statut du projet

Prototype

Statut de la publication

License

CC-by-sa-3.0

Inspiration

Fichiers source

Machines

Matériaux

Lien





Résumé

Le travail de cette semaine à la fabacademy est de construire un circuit actionneur, et de le piloter avec un microcontrolleur.

J'en profite pour réaliser une centrale phares/clignotants pour mon vélomobile.

Pour exploiter un peu plus les possibilités du tiny (car sans ça j'aurais put fair tout ça sans microcontroleur), je vais créer des fonctionnalités de type code/phares (en PWM) et clignotants/warnings

Design du circuit

J'utilise FabModules pour dessiner le circuit  : make_cad_png

Il s'agit d'un ATTINY44, piloté par 3 interrupteurs, pour actionner 3 mosfets.

La carte est pourvue d'un régulateur de tension, ainsi, les lumières pourront être alimentés à différentes tensions.

D'après le datasheet du mosfet (N) , et du régulateur on peut alimenter le circuit jusquà 30V

Fichier:Light.central.44.cad

Light.central.traces.name.png Light.central.44.interior.holes.png

ATTENTION il n'ya pas de diode à l'entrée du régulateur ! si on branche l'alim à l'envers, il brule !

Light.central.board.png

Liste des composants

identifiant composant quantité
D1,D2,D3 Leds rouge 1206 cms 3
R1 Résistance 1206 cms 10Ko 1
R2,R3,R4 Résistance 1206 cms 100 Ohms 3
C1 condensateur 1206 cms 1uF 1
IC1 ATtiny44SSU 1
IC2 régulateur 5V/100mA LM3480IM3-5.0 1
T1,T2,T3 Mosfets N 30V 1.7A 3
J1 Connecteur ISP 6 broches 1
J2,J3,J4,J5 borniers à vis pas de 3.5mm 4

Fabrication

avec la modela..

Code

Je vais coder en C, en partant de l'exemple hello.video car j'ai le même tiny avec l'horloge interne

fonctionnement désiré

en entrée

3 interrupteurs sont câblés avec le connecteur ISP aux entrées PA4, PA5 et PA6 reglées en pullup


1 bouton poussoir (PA4) : à chaque relâchement du bouton on change de mode pour les phares : code > phares > éteint

pendant l'appui, on est en plein phares (pour faire des appels de phares)


2 interrrupteurs monostables (PA5 et PA6) : les clignotants

si on déclenche un clignotant alors que le bouton des phares est allumé, on passe en warnings.


en sortie

Les pins PA0 PA1 PA2 sont câblé sur les mosfets


le code

PA1 utilisera un PWM pour régler l'intensité des phares

Premier test

Pour valider le circuit

j'ai fait un code simple qui fait clignoter les sorties

Fichier:Hello.blink.3.44.zip


interruptions

Les clignotants...clignoteront, donc, ça serai judicieux d'utiliser des interruptions pour détecter les changements des boutons même pendant le delay de clignotement.

quelques ressources à propos des interruptions sur le tiny :

http://www.avrfreaks.net/index.php?name=PNphpBB2&file=viewtopic&t=105493

http://www.nongnu.org/avr-libc/user-manual/group__avr__interrupts.html


dans le datasheet, on voit que les trois entrées des boutons sont sur le même port d'interruption

pwm

pour régler l'intensité des lumières je compte utiliser du PWM

hélas, les sorties que j'ai utilisées n'on pas la fonction hardware

heureusement, on peut fabriquer un pwm en soft :

http://www.kobakant.at/DIY/?p=3393