(→Explication) |
(→Liens avec le quotidien) |
||
(4 versions intermédiaires masquées) | |||
Ligne 1 : | Ligne 1 : | ||
{{avertissement}} | {{avertissement}} | ||
- | + | <videoflash type="dailymotion">x1am4i1|640|480</videoflash> | |
Ligne 18 : | Ligne 18 : | ||
==réalisation du projet== | ==réalisation du projet== | ||
- | === | + | ===Explications=== |
- | + | ||
- | ===Code=== | + | [[Image:Arduino_fritzing.png|800px]] |
+ | |||
+ | Ce petit montage vous permettra de régler la couleur d'une LED RGB grâce à la position de votre main par rapport à un capteur de distance. | ||
+ | |||
+ | [[Média:Luminch_two_final.ino]]===Code=== | ||
<pre> | <pre> | ||
- | + | #define BROCHE_CAPTEUR A0 | |
- | + | #define LED_VERTE 9 | |
+ | #define LED_BLEUE 10 | ||
+ | #define LED_ROUGE 11 | ||
+ | #define SEUIL_DE_DETECTION 80 | ||
+ | |||
+ | |||
+ | void setup() { | ||
+ | pinMode(LED_ROUGE, OUTPUT); | ||
+ | pinMode(LED_VERTE, OUTPUT); | ||
+ | pinMode(LED_BLEUE, OUTPUT); | ||
+ | } | ||
+ | |||
+ | int etat=0; | ||
+ | |||
+ | long int echantillon = 0; | ||
+ | |||
+ | void loop() { | ||
+ | delay(500); | ||
+ | echantillon = analogRead(BROCHE_CAPTEUR); | ||
+ | |||
+ | if((echantillon > 60) && (echantillon < 110)) | ||
+ | { | ||
+ | etat=1; | ||
+ | } | ||
+ | |||
+ | if((echantillon > 130) && (echantillon < 180)) | ||
+ | { | ||
+ | etat=2; | ||
+ | } | ||
+ | |||
+ | if((echantillon > 200) && (echantillon < 250)) | ||
+ | { | ||
+ | etat=3; | ||
+ | } | ||
+ | |||
+ | if((echantillon > 270) && (echantillon < 320)) | ||
+ | { | ||
+ | etat=4; | ||
+ | } | ||
+ | |||
+ | |||
+ | if((echantillon > 340) && (echantillon < 390)) | ||
+ | { | ||
+ | etat=5; | ||
+ | } | ||
+ | |||
+ | |||
+ | if(echantillon > 410) | ||
+ | { | ||
+ | etat=6; | ||
+ | } | ||
+ | |||
+ | switch(etat) | ||
+ | { | ||
+ | case 1: | ||
+ | analogWrite(LED_ROUGE, 255); | ||
+ | analogWrite(LED_VERTE, 0); | ||
+ | analogWrite(LED_BLEUE, 0); | ||
+ | break; | ||
+ | |||
+ | case 2: | ||
+ | analogWrite(LED_ROUGE, 0); | ||
+ | analogWrite(LED_VERTE, 255); | ||
+ | analogWrite(LED_BLEUE, 0); | ||
+ | break; | ||
+ | |||
+ | case 3: | ||
+ | analogWrite(LED_ROUGE, 0); | ||
+ | analogWrite(LED_VERTE,0); | ||
+ | analogWrite(LED_BLEUE, 255); | ||
+ | break; | ||
+ | |||
+ | case 4: | ||
+ | analogWrite(LED_ROUGE, 0); | ||
+ | analogWrite(LED_VERTE, 0); | ||
+ | analogWrite(LED_BLEUE, 0); | ||
+ | break; | ||
+ | |||
+ | case 5: | ||
+ | analogWrite(LED_ROUGE, 0); | ||
+ | analogWrite(LED_VERTE, 255); | ||
+ | analogWrite(LED_BLEUE, 255); | ||
+ | break; | ||
+ | |||
+ | case 6: | ||
+ | analogWrite(LED_ROUGE, 255); | ||
+ | analogWrite(LED_VERTE, 255); | ||
+ | analogWrite(LED_BLEUE, 0); | ||
+ | break; | ||
+ | |||
+ | case 7: | ||
+ | analogWrite(LED_ROUGE, 255); | ||
+ | analogWrite(LED_VERTE, 0); | ||
+ | analogWrite(LED_BLEUE, 255); | ||
+ | break; | ||
+ | |||
+ | case 8: | ||
+ | analogWrite(LED_ROUGE, 255); | ||
+ | analogWrite(LED_VERTE, 0); | ||
+ | analogWrite(LED_BLEUE, 0); | ||
+ | break; | ||
+ | |||
+ | case 9: | ||
+ | analogWrite(LED_ROUGE, 100); | ||
+ | analogWrite(LED_VERTE, 150); | ||
+ | analogWrite(LED_BLEUE, 220); | ||
+ | break; | ||
+ | |||
+ | case 10: | ||
+ | analogWrite(LED_ROUGE, 0); | ||
+ | analogWrite(LED_VERTE, 250); | ||
+ | analogWrite(LED_BLEUE, 200); | ||
+ | break; | ||
+ | |||
+ | case 11: | ||
+ | analogWrite(LED_ROUGE, 255); | ||
+ | analogWrite(LED_VERTE, 255); | ||
+ | analogWrite(LED_BLEUE, 0); | ||
+ | break; | ||
+ | |||
+ | case 12: | ||
+ | analogWrite(LED_ROUGE, 0); | ||
+ | analogWrite(LED_VERTE, 255); | ||
+ | analogWrite(LED_BLEUE, 255); | ||
+ | break; | ||
+ | |||
+ | default: | ||
+ | analogWrite(LED_ROUGE, 255); | ||
+ | analogWrite(LED_VERTE, 255); | ||
+ | analogWrite(LED_BLEUE, 255); | ||
+ | break; | ||
+ | |||
+ | } | ||
+ | } | ||
+ | |||
</pre> | </pre> | ||
Ligne 33 : | Ligne 170 : | ||
==Liens avec le quotidien== | ==Liens avec le quotidien== | ||
- | + | ||
[[Catégorie:Arduino]] | [[Catégorie:Arduino]] |
Sommaire |
Notre projet consiste à changer les couleurs d'une LED en fonction de la distance de la main à un capteur infrarouge.
Ce petit montage vous permettra de régler la couleur d'une LED RGB grâce à la position de votre main par rapport à un capteur de distance.
Média:Luminch_two_final.ino===Code===
#define BROCHE_CAPTEUR A0 #define LED_VERTE 9 #define LED_BLEUE 10 #define LED_ROUGE 11 #define SEUIL_DE_DETECTION 80 void setup() { pinMode(LED_ROUGE, OUTPUT); pinMode(LED_VERTE, OUTPUT); pinMode(LED_BLEUE, OUTPUT); } int etat=0; long int echantillon = 0; void loop() { delay(500); echantillon = analogRead(BROCHE_CAPTEUR); if((echantillon > 60) && (echantillon < 110)) { etat=1; } if((echantillon > 130) && (echantillon < 180)) { etat=2; } if((echantillon > 200) && (echantillon < 250)) { etat=3; } if((echantillon > 270) && (echantillon < 320)) { etat=4; } if((echantillon > 340) && (echantillon < 390)) { etat=5; } if(echantillon > 410) { etat=6; } switch(etat) { case 1: analogWrite(LED_ROUGE, 255); analogWrite(LED_VERTE, 0); analogWrite(LED_BLEUE, 0); break; case 2: analogWrite(LED_ROUGE, 0); analogWrite(LED_VERTE, 255); analogWrite(LED_BLEUE, 0); break; case 3: analogWrite(LED_ROUGE, 0); analogWrite(LED_VERTE,0); analogWrite(LED_BLEUE, 255); break; case 4: analogWrite(LED_ROUGE, 0); analogWrite(LED_VERTE, 0); analogWrite(LED_BLEUE, 0); break; case 5: analogWrite(LED_ROUGE, 0); analogWrite(LED_VERTE, 255); analogWrite(LED_BLEUE, 255); break; case 6: analogWrite(LED_ROUGE, 255); analogWrite(LED_VERTE, 255); analogWrite(LED_BLEUE, 0); break; case 7: analogWrite(LED_ROUGE, 255); analogWrite(LED_VERTE, 0); analogWrite(LED_BLEUE, 255); break; case 8: analogWrite(LED_ROUGE, 255); analogWrite(LED_VERTE, 0); analogWrite(LED_BLEUE, 0); break; case 9: analogWrite(LED_ROUGE, 100); analogWrite(LED_VERTE, 150); analogWrite(LED_BLEUE, 220); break; case 10: analogWrite(LED_ROUGE, 0); analogWrite(LED_VERTE, 250); analogWrite(LED_BLEUE, 200); break; case 11: analogWrite(LED_ROUGE, 255); analogWrite(LED_VERTE, 255); analogWrite(LED_BLEUE, 0); break; case 12: analogWrite(LED_ROUGE, 0); analogWrite(LED_VERTE, 255); analogWrite(LED_BLEUE, 255); break; default: analogWrite(LED_ROUGE, 255); analogWrite(LED_VERTE, 255); analogWrite(LED_BLEUE, 255); break; } }
chercher ici : http://wikidebrouillard.org/index.php/Catégorie:Arduino
© Graphisme : Les Petits Débrouillards Grand Ouest (Patrice Guinche - Jessica Romero) | Développement web : Libre Informatique