(→Allons plus loin dans l'explication) |
(→La manipulation) |
||
Ligne 27 : | Ligne 27 : | ||
[[Fichier:Arduino12545615544.jpg|500px]] | [[Fichier:Arduino12545615544.jpg|500px]] | ||
- | Voici-ici le code assembleur utilisé pour ce montage Arduino: | + | Voici-ici le code assembleur utilisé pour ce montage Arduino : |
+ | |||
+ | <pre> | ||
// Déclaration des pins utilisées | // Déclaration des pins utilisées | ||
Ligne 111 : | Ligne 113 : | ||
} | } | ||
- | + | </pre> | |
==='''Que voit-on ?=== | ==='''Que voit-on ?=== |
Sommaire |
Besoin d'un thermomètre pour mesurer la température de votre réfrigérateur? Ce thermomètre est fait pour vous!
!!!! il semble qu'il y ait une grosse erreur de montage dans votre vidéo : les résistance bleues, telle qu'elle sont branchées, ne servent à rien (elles sont en courts-circuits !)
Pour cette expérience, il suffit de réaliser le montage ci-dessous et de rentrer le code assembleur qui est expliqué à la suite:
Voici-ici le code assembleur utilisé pour ce montage Arduino :
// Déclaration des pins utilisées const int pin_capteur = 0; const int pin_led_rouge=2; const int pin_led_verte=3; const int pin_led_jaune=4; //Variables float temperature_max = 22.0; float temperature_min = 19.0; float temperature=0.0; void setup(void) { pinMode(pin_capteur,INPUT); pinMode(pin_led_rouge,OUTPUT); pinMode(pin_led_verte,OUTPUT); pinMode(pin_led_jaune,OUTPUT); Serial.begin(9600); } void loop (void) { // On récupère la valeur de la tension en sortie du capteur puis à l'aide de l'équation, on trouve la température qui y correspond temperature = analogRead(pin_capteur) * 5000L / 1024L / 10; //On remet à zéro les leds de 10mm digitalWrite(2, LOW); digitalWrite(3, LOW); digitalWrite(4, LOW); //On compare la température reçue aux seuils que l'on a défini lors des déclarations du programme if (temperature<temperature_min)digitalWrite(pin_led_jaune,HIGH); else if (temperature>temperature_max)digitalWrite(pin_led_rouge,HIGH); else digitalWrite(pin_led_verte,HIGH); //On envoie la valeur de la température sur le port série Serial.println(temperature); //On attends une seconde avant de recommencer delay(1000); }
Nous voyons une led allumé. Si nous effectuons un changement de température proche du capture, la led allumée s'éteint et une autre s'allume.
La température est mesurée par le capteur, qui par la suite est comparé avec deux températures de références (temperature_max et temperature_min) par l'Arduino et ensuite celui-ci envoie le signal permettant d'allumer la led correspondante. La mesure est recalculé toutes les secondes.
Comment améliorer le système pour qu'il soit plus efficace?
Voir les détails du code plus haut.
VENTILATEUR AVEC ARDUINO: http://www.wikidebrouillard.org/index.php/Ventilateur_avec_arduino
Thermomètre: http://fr.wikipedia.org/wiki/Thermom%C3%A8tre
© Graphisme : Les Petits Débrouillards Grand Ouest (Patrice Guinche - Jessica Romero) | Développement web : Libre Informatique