Table des matières:

Surveillance de laveuse/sécheuse avec ESP8266 et capteur d'accélération : 6 étapes
Surveillance de laveuse/sécheuse avec ESP8266 et capteur d'accélération : 6 étapes

Vidéo: Surveillance de laveuse/sécheuse avec ESP8266 et capteur d'accélération : 6 étapes

Vidéo: Surveillance de laveuse/sécheuse avec ESP8266 et capteur d'accélération : 6 étapes
Vidéo: Washer/Dryer Status Monitoring with Arduino ~ HowTo by Phrank 2024, Juillet
Anonim
Surveillance de laveuse/sécheuse avec ESP8266 et capteur d'accélération
Surveillance de laveuse/sécheuse avec ESP8266 et capteur d'accélération

Le lave-linge/sèche-linge se trouve au sous-sol et vous y mettez généralement un tas de vêtements et après cela, vous vous occupez de votre autre travail ménager. Vous négligez les vêtements qui ont été laissés détrempés et absorbants dans le sous-sol de votre machine. Eh bien, de temps en temps, vous descendez simplement les escaliers en vous attendant à ce que la machine ait terminé le travail et après vous voyez la machine toujours en marche. Je sais, c'est irritant.

Imaginez un scénario dans lequel vous pouvez regarder l'état de la laveuse/sécheuse sur votre téléphone cellulaire ou votre tablette. De même, où vous pouvez recevoir un message sur votre téléphone indiquant que la machine a terminé sa mission. Cela semble exceptionnellement fascinant et accommodant, n'est-ce pas !

En effet, avec l'aide de l'ESP8266 et d'un capteur accéléromètre, vous pouvez surveiller l'état de votre lave-linge/sèche-linge. Vous pouvez créer cette entreprise chez vous de manière simple si vous suivez simplement les instructions et copiez le code.

Étape 1: Équipement dont nous avons besoin

Équipement dont nous avons besoin
Équipement dont nous avons besoin
Équipement dont nous avons besoin
Équipement dont nous avons besoin
Équipement dont nous avons besoin
Équipement dont nous avons besoin
Équipement dont nous avons besoin
Équipement dont nous avons besoin

1. Adafruit Huzzah ESP8266

La première étape consistait à obtenir une carte Adafruit Huzzah ESP8266. Adafruit Huzzah ESP8266 est une puce Wi-Fi à faible coût avec une pile TCP/IP complète et une capacité de microcontrôleur. L'ESP8266 fournit une plate-forme mature pour la surveillance et le contrôle des applications utilisant le langage Arduino Wire et l'IDE Arduino. Le module ESP8266 est une carte extrêmement rentable avec une communauté énorme et toujours croissante.

2. Adaptateur hôte Adafruit Huzzah ESP8266 (programmeur USB)

Cet adaptateur hôte ESP8266 a été spécialement conçu pour la version Adafruit Huzzah de l'ESP8266, fournissant une interface I²C. Le port USB intégré fournit l'alimentation et la programmation à l'ESP8266.

3. Capteur d'accélération H3LIS331DL

Le H3LIS331DL est un accéléromètre linéaire 3 axes hautes performances basse consommation avec interface série numérique I²C. Il est équipé pour mesurer des accélérations avec des débits de sortie de 0,5 Hz à 1 kHz. Toutes ces choses font de ce capteur un choix idéal pour ce projet.

4. Câble de connexion

J'ai utilisé le câble de connexion I²C disponible sur le lien ci-dessus.

5. Mini-câble USB

Le câble d'alimentation mini USB est un choix idéal pour alimenter l'Adafruit Huzzah ESP8266.

Étape 2: Connexions matérielles

Connexions matérielles
Connexions matérielles
Connexions matérielles
Connexions matérielles
Connexions matérielles
Connexions matérielles

En général, les connexions sont très simples. Suivez les instructions et les images ci-dessous, et vous ne devriez avoir aucune difficulté.

Connexion de l'Adafruit Huzzah ESP8266 et du programmateur USB

Tout d'abord, prenez l'Adafruit Huzzah ESP8266 et placez-y le programmeur USB (avec port I²C orienté vers l'intérieur). Appuyez doucement sur le programmeur USB pour le mettre en place et nous avons terminé cette étape. Facile comme bonjour (voir la photo #1).

Connexion du capteur et de l'Adafruit Huzzah ESP8266

Prenez le capteur et connectez-y le câble I²C. Pour un fonctionnement correct de ce câble, n'oubliez pas que la sortie I²C se connecte TOUJOURS à l'entrée I²C. La même chose devrait être faite pour l'Adafruit Huzzah ESP8266 avec le programmeur USB monté dessus (voir la photo #2).

Avec l'aide du programmeur USB ESP8266, il est très facile de programmer l'ESP8266. Tout ce que vous avez à faire est de brancher le capteur sur le programmeur USB et vous êtes prêt à partir. Je préfère utiliser cet adaptateur car il facilite beaucoup la connexion du matériel. Sans ce programmeur USB plug and play, il y a beaucoup de risques de faire une mauvaise connexion. Un mauvais fil peut tuer votre wifi ainsi que votre capteur.

Remarque: Le fil marron doit toujours suivre la connexion de masse (GND) entre la sortie d'un appareil et l'entrée d'un autre appareil

Alimentation du circuit

Branchez le câble Mini USB dans la prise d'alimentation d'Adafruit Huzzah ESP8266. Allumez-le et le tour est joué, nous sommes prêts à partir !

L'assemblage final ressemblera à la photo #3.

Placez le capteur à l'intérieur du lave-linge/sèche-linge

Avant de faire cela, assurez-vous de recouvrir entièrement le capteur de plastique afin qu'il résiste au contact avec l'eau. Maintenant, placez le capteur et collez-le sur le tambour de la laveuse/sécheuse. Faites-le délibérément sans endommager le câblage de la laveuse/sécheuse et sans vous blesser.

Avec cela, nous avons terminé avec tout le travail matériel.

Étape 3: Code Arduino Adafruit Huzzah ESP8266

Le code ESP pour les capteurs Adafruit Huzzah ESP8266 et H3LIS331DL est disponible sur notre référentiel Github.

Avant de passer au code, assurez-vous de lire les instructions données dans le fichier Lisez-moi et configurez votre Adafruit Huzzah ESP8266 en fonction de celui-ci. Cela ne prendra qu'un moment pour le faire.

Remarque: Avant de télécharger, assurez-vous d'entrer votre réseau SSID et votre mot de passe dans le code

Vous pouvez également copier le code ESP de travail pour ce capteur à partir d'ici:

// Distribué avec une licence libre-arbitre.// Utilisez-le comme vous le souhaitez, à profit ou gratuitement, à condition qu'il rentre dans les licences de ses œuvres associées. // Surveillance de laveuse/sécheuse avec ESP8266 // Ce code est conçu pour fonctionner avec le mini module H3LIS331DL_I2CS I2C disponible sur Dcubestore.com. //

#comprendre

#include #include #include

// L'adresse I2C H3LIS331DL est 0x18(24)

#define adresse 0x18

const char* ssid = "votre réseau ssid";

const char* mot de passe = "votre mot de passe";

Serveur ESP8266WebServer (80);

void handleroot()

{ données int non signées[6];

for (int i = 0; i < 6; i++) { // Démarrer la transmission I2C Wire.beginTransmission(Addr); // Sélection du registre de données Wire.write((40 + i)); // Arrêter la transmission I2C Wire.endTransmission();

// Demande 1 octet de données

Wire.requestFrom(Adr, 1); // Lecture de 6 octets de données // xAccl lsb, xAccl msb, yAccl lsb, yAccl msb, zAccl lsb, zAccl msb if (Wire.available() == 1) { data = Wire.read(); } } délai(300);

// Convertir les données

int xAccl = ((données[1] * 256) + données[0]); if (xAccl > 32767) { xAccl -= 65536; } entier xAcc = ((100 * 9,8) / 32768) * xAccl;

int yAccl = ((données[3] * 256) + données[2]);

if (yAccl > 32767) { yAccl -= 65536; } int yAcc = ((100 * 9,8) / 32768) * yAccl;

int zAccl = ((données[5] * 256) + données[4]);

if (zAccl > 32767) { zAccl -= 65536; } entier zAcc = ((100 * 9,8) / 32768) * zAccl;

// Sortie des données vers le moniteur série

Serial.print("Accélération dans l'axe X: "); Serial.print(xAcc); Serial.println(" m/s"); Serial.print("Accélération dans l'axe Y: "); Serial.print(yAcc); Serial.println(" m/s"); Serial.print("Accélération dans l'axe Z: "); Serial.print(zAcc); Serial.println(" m/s"); retard (300);

// Sortie des données vers le serveur Web

server.sendContent ("<meta http-equiv='refresh' content='10'""

TOUT CONTRLER

www.controleverything.com

Capteur H3LIS331DL Mini Module I2C

"); server.sendContent ("

Accélération dans l'axe X = " + String(xAcc) + " m/s/s"); server.sendContent ("

Accélération dans l'axe Y = " + String(yAcc) + " m/s/s"); server.sendContent ("

Accélération dans l'axe Z = " + String(zAcc) + " m/s/s");

si (xAcc > 2)

{ // Sortie des données vers le moniteur série Serial.println("Cloths Washer/Dryer: Working");

// Sortie des données vers le serveur Web

server.sendContent ("

Cloths Washer/Dryer: Working"); } else { // Sortie des données vers le moniteur série Serial.println("Cloths Washer/Dryer: Completed");

// Sortie des données vers le serveur Web

server.sendContent ("

Laveuse/sécheuse: Terminé"); } }

void setup()

{ // Initialise la communication I2C en tant que MASTER Wire.begin(2, 14); // Initialiser la communication série, définir le débit en bauds = 115200 Serial.begin(115200);

// Se connecter au réseau Wi-Fi

WiFi.begin(ssid, mot de passe);

// Attendre la connexion

while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } Serial.println(""); Serial.print("Connecté à "); Serial.println(ssid);

// Obtenir l'adresse IP de ESP8266

Serial.print("Adresse IP: "); Serial.println(WiFi.localIP());

// Démarrer le serveur

server.on("/", handleroot); serveur.begin(); Serial.println("Serveur HTTP démarré");

// Démarrer la transmission I2C

Wire.beginTransmission(Adr); // Sélection du registre de contrôle 1 Wire.write(0x20); // Activer les axes X, Y, Z, mode de mise sous tension, débit de sortie de données 50 Hz Wire.write (0x27); // Arrêter la transmission I2C Wire.endTransmission();

// Démarrer la transmission I2C

Wire.beginTransmission(Adr); // Sélection du registre de contrôle 4 Wire.write(0x23); // Définir la pleine échelle, +/- 100g, mise à jour continue Wire.write(0x00); // Arrêter la transmission I2C Wire.endTransmission(); retard (300); }

boucle vide()

{ server.handleClient(); }

Étape 4: Caractère pratique du Code

Caractère pratique du Code
Caractère pratique du Code

Maintenant, téléchargez (git pull) ou copiez le code et ouvrez-le dans l'IDE Arduino.

Compilez et téléchargez le code et voyez la sortie sur votre moniteur série. Après quelques secondes, il affichera tous les paramètres.

Copiez l'adresse IP de l'ESP8266 à partir du moniteur série et collez-la dans votre navigateur Web. Vous verrez une page Web avec la lecture de l'accélération en 3 axes et l'état du lave-linge/sèche-linge. Avant de passer au test final, vous devez modifier la valeur d'accélération en fonction de la position du tambour de la laveuse et du placement du capteur dans la condition if-else du code.

La sortie du capteur sur Serial Monitor et Web Server est illustrée dans l'image ci-dessus.

Étape 5: Applications et mise à niveau

Avec l'aide de ce projet, vous pouvez surveiller l'état de votre laveuse/sécheuse sur vos téléphones et ordinateurs portables. Pas besoin d'aller encore et encore et de patienter/écouter pour qu'il termine la mission.

Vous pouvez également recevoir un message sur votre téléphone indiquant que la machine a terminé sa mission. Avec cela, vous vous souviendrez toujours des vêtements dans la laveuse. Pour cela, vous pouvez simplement mettre à niveau ce projet en ajoutant une partie du code donné ci-dessus.

J'espère que ce projet vous plaira et qu'il inspirera d'autres expérimentations. La carte Adafruit Huzzah ESP8266 est incroyablement polyvalente, bon marché et accessible à tous les amateurs. Ce n'est qu'un des nombreux projets simples qui peuvent être construits à l'aide de l'ESP8266.

Étape 6: Ressources pour aller plus loin

Pour plus d'informations sur H3LIS331DL et ESP8266, consultez les liens ci-dessous:

  • Fiche technique du capteur H3LIS331DL
  • Fiche technique ESP8266

Vous pouvez également consulter nos articles complémentaires sur les projets Domotique & ESP8266:

  • Domotique avec ESP8266 et contrôleur de relais
  • Voyants de contrôle avec ESP8266 et capteur de pression

Conseillé: