Arduino dans le brouillard

image principale Arduino dans le brouillard

Difficulté:

ou comment faire de la brume avec un arduino


Ayant fabriqué une caisse de ward (https://fr.wikipedia.org/wiki/Caisse_de_Ward) , j’ai voulu ajouter un brumisateur pour faire plaisir aux plantes et donner un petit effet brumeux…


l’ensemble présenté dans ce tuto permet de générer un peu de brouillard une fois par jour automatiquement ou de déclencher cette brume manuellement avec un bouton poussoir.


https://youtu.be/TDZ7KUTelVc

Matériel :

Budget : Non défini

  • Matériel requis :
  • brumisateur ultrason : 3,2 € (“mist maker” sur ebay)
  • Alim 24V ou un circuit “step up Voltage” permettant de fournir 24V (pour le brumisateur) : 1€
  • un relais 5V (le mien est un JZC-11F)
  • une diode (1N4148 par exemple)
  • arduino uno ou nano : http://www.gotronic.fr/art-module-arduino-nano-3-0-12422.htm
  • alim pour l’arduino (recup) : soit 5V par l’usb soit par la pin 30 avec une alim entre 7 et 12V
  • potentiometre (10 kOhm )
  • un peu de fil electrique
  • un bouton poussoir
  • un fer à souder…

Etape 1 : Brumisateur à ultrason

n’ayant pas de prise adaptée au brumisateur acheté j’ai coupé le fil…
repérer la polarité (partie extérieure du connecteur = masse) repérer les couleurs des fils en mesurant la resistance avec un voltmètre / ohmmètre par example)

Etape 2 : Connection des éléments


Le circuit a trois parties:
1) le contrôle du brumisateur
J’utilise un relais pour déclencher le brumisateur. Le relais est activé directement par l’arduino (pin 9), une diode de protection est utilisée.

2) le déclenchement avec un bouton poussoir (pin 11). Cette pin 11 est reliée à une resistance “pull up” qui la maintient à 5V (HIGH) lorsque l’interrupteur est ouvert. Lorsque le bouton est activé la pin 11 est reliée à la masse et passe en “LOW”

3) un potentiomètre qui permet de régler la durée du cycle de brume.
La pin A1 est reliée au point milieu du potentiomètre. elle va varier entre 0 et 5V (donc entre 1 et 1024 avec la fonction analogRead). On utilise la fonction “map” pour convertir la valeur obtenue en un temps d’activation de le brume.

Etape 3 : Code arduino

Le skecth :

int pushpin = 9; // pin arduino vers bouton
int fog_control = 11; // pin arduino vers relais
int potarpin = 1; // pin arduino analog1 vers potentiometre

long currentTime = 0; // counter
long lastfog = -86401000; // permet d’enclencher le brouillard au demarrage
long fogduration = 10000; //durée du brouillard
long interfog = 86400000; //24H entre deux brouillards

void setup() {

Serial.begin(9600);

Serial.println(“Brumisateur 1.0”);
Serial.println(“Concours arduino ouiaremakers.com 02/2016”);
pinMode(fog_control, OUTPUT);
pinMode(pushpin, INPUT);

}

void loop() {

// let’s fog at start up
currentTime = millis();

if (currentTime > lastfog + interfog ) {

lastfog = millis(); // le dernier brouillard est maintenant

fog_on(); //brouillard
}
// verifier le bouton

if (!digitalRead(pushpin)) {
Serial.println(digitalRead(pushpin));
Serial.println(!digitalRead(pushpin));
fog_on();
}

delay(500);

}

void fog_on() {
long starttime = millis(); // on enregistre l’heure de debut
digitalWrite(fog_control, HIGH); // debut du bouillard
// petite boucle de la durée demandée, on verifie le reglage de la durée pendant cette boucle
while (millis() < starttime + fogduration ) {
checkpotar(); // verification de la durée du brouillard
delay(500); // petite pause avant de reprendre le debut du while
}
digitalWrite(fog_control, LOW); // on a fini et on arrete le brouillard
}

void checkpotar(){
int potarLevel = analogRead(potarpin);
Serial.println(fogduration / 1000);
potarLevel = map(potarLevel, 0, 1024, 0, 9);
switch (potarLevel) {
case 0:
fogduration = 10000; // 10 secondes
break;
case 1:
fogduration = 20000; // 20 secondes
break;
case 2:
fogduration = 30000; // 30 secondes
break;
case 3:
fogduration = 60000; // 1 minute
break;
case 4:
fogduration = 120000; // 2 minutes
break;
case 5:
fogduration = 180000; // 3 minutes
break;
case 6:
fogduration = 240000; // 4 minutes
break;
case 7:
fogduration = 300000; // 5 minutes
break;
case 8:
fogduration = 360000; // 6 minutes
break;
case 9:
fogduration = 6000000; // 10 minutes
break;

}

}

Sources :

http://www.tempescope.com/


Ces tutoriels devraient vous plaire

vignette fabrication de circuits imprimés facile
fabrication de circuits imprimés facile
vignette Arduino et Porte automatique de poulailler
Arduino et Porte automatique de poulailler
vignette Écran Tactile et Raspberry Pi
Écran Tactile et Raspberry Pi
avaatar lmu34

lmu34

Suivre

Vues: 2287
Mis en favoris: 2

Découvrez d'autres tutoriels de

lmu34

Découvrez tous les tutoriels partagés sur Oui Are Makers

Powered by Oui Are Makers