Page 1 sur 1

demande d'info sur capteur detection arret frigo

Publié : 15 août 2017, 19:39
par sebnatl
Bonjour , je désirerais faire un capteur avec une résistance thermique reglagle ou viewtopic.php?f=7&t=1956
avec un seuil mis dans l attiny85 qui déclencherais un des switch ( plus compliqué pour moi ) car une alarme en 433 pour gérer ça . j ai deja trouvé https://forum.mysensors.org/topic/6930/ ... m-finished mais je suis sur que l attiny85 peut le faire .
merci pour vos idées .

Re: demande d'info sur capteur detection arret frigo

Publié : 15 août 2017, 20:12
par Neutrino
Bonjour,

Tu peux te baser sur ça : https://easydomoticz.com/forum/viewtopic.php?f=7&t=1956
[edit : Oops, en fait tu as déjà relevé ce topic :mrgreen: ]
J'en ai déjà un dans mon frigo, Domoticz s'occupe de m'envoyer une notification au cas où.
C'est basé sur un capteur DHT22 ou une ds18b20.

Toutefois, tu dois pouvoir le modifier le code pour envoyer un On/Off suivant un certain seuil.

Re: demande d'info sur capteur detection arret frigo

Publié : 15 août 2017, 20:45
par sebnatl
merci pour ton info mais je ne maitrise pas trop ! sinon avec un capteur d ouverture et un résistance thermique mais je ne sais ce qui existe sur le marché .

Re: demande d'info sur capteur detection arret frigo

Publié : 20 août 2017, 09:09
par sebnatl
j ai trouvé des infos et j ai repris un script qui fonctionne avec un seuil https://www.youtube.com/watch?v=52syrku0i_8 mais je voudrais rajouter un second seuil ( une sortie avec une led et une seconde avec un buzzer ) voici le script:

Code : Tout sélectionner

#include <OneWire.h>

// OneWire DS18S20, DS18B20, DS1822 Temperature Example
//
// http://www.pjrc.com/teensy/td_libs_OneWire.html
// https://www.youtube.com/watch?v=52syrku0i_8 ( Kristian Blåsol )
// The DallasTemperature library can do all this work for you!
// http://milesburton.com/Dallas_Temperature_Control_Library

OneWire  ds(2);  // pin 2 (a 4.7K resistor is necessary)
int relay = 3;   // pin relay
int threshold = 320; // egal 20 degrés ( 20X16=320)
int temp;

void setup(void) {
   pinMode(relay, OUTPUT);
}

void loop(void) {
  byte i;
  byte present = 0;
  byte type_s;
  byte data[12];
  byte addr[8];
    
  if ( !ds.search(addr)) {
    ds.reset_search();
    delay(250);
    return;
  }
 
  ds.reset();
  ds.select(addr);
  ds.write(0x44, 1);        // start conversion, with parasite power on at the end
  
  delay(1000);     // maybe 750ms is enough, maybe not
  // we might do a ds.depower() here, but the reset will take care of it.
  
  present = ds.reset();
  ds.select(addr);    
  ds.write(0xBE);         // Read Scratchpad

  for ( i = 0; i < 9; i++) {           // we need 9 bytes
    data[i] = ds.read();
  }   
  temp=(data[1]*256)+data[0];
  if(temp<threshold) {
    digitalWrite(relay, HIGH);
  }
   else {
    digitalWrite(relay, LOW);
}

}
il n y a pas de transmission donc sans RF seulement visuel et sonore .
le second avec 2 sorties

Code : Tout sélectionner

#include <OneWire.h>

// OneWire DS18S20, DS18B20, DS1822 Temperature Example
//
// http://www.pjrc.com/teensy/td_libs_OneWire.html
// https://www.youtube.com/watch?v=52syrku0i_8 ( Kristian Blåsol )
// The DallasTemperature library can do all this work for you!
// http://milesburton.com/Dallas_Temperature_Control_Library

OneWire  ds(2);  // pin 2 (a 4.7K resistor is necessary)
int relay = 3;   // pin relay
int relay2 = 4;   // pin relay2
int threshold = 320; // egal 20 degrés ( 20X16=320)
int threshold2 = 400;
int temp;

void setup(void) {
   pinMode(relay, OUTPUT);
   pinMode(relay2, OUTPUT);
}

void loop(void) {
  byte i;
  byte present = 0;
  byte type_s;
  byte data[12];
  byte addr[8];
    
  if ( !ds.search(addr)) {
    ds.reset_search();
    delay(250);
    return;
  }
 
  ds.reset();
  ds.select(addr);
  ds.write(0x44, 1);        // start conversion, with parasite power on at the end
  
  delay(1000);     // maybe 750ms is enough, maybe not
  // we might do a ds.depower() here, but the reset will take care of it.
  
  present = ds.reset();
  ds.select(addr);    
  ds.write(0xBE);         // Read Scratchpad

  for ( i = 0; i < 9; i++) {           // we need 9 bytes
    data[i] = ds.read();
  }   
  temp=(data[1]*256)+data[0];
  if(temp<threshold) {
    digitalWrite(relay, LOW);
  }
   else {
    digitalWrite(relay, HIGH);
}
  if(temp<threshold2) {
    digitalWrite(relay2, LOW);
  }
   else {
    digitalWrite(relay2, HIGH);
}

}
il faut regler les seuils :
ici :int threshold = 320; // egal 20 degrés ( 20X16=320)
int threshold2 = 400;

Re: demande d'info sur capteur detection arret frigo

Publié : 22 août 2017, 17:43
par sebnatl
y aurait t il beaucoup de modif pour passer ce sketch pour attiny 85 ? je pense essayer !