Inhoudsopgave:

Wasmachine/droger monitoring met ESP8266 & acceleratiesensor - Ajarnpa
Wasmachine/droger monitoring met ESP8266 & acceleratiesensor - Ajarnpa

Video: Wasmachine/droger monitoring met ESP8266 & acceleratiesensor - Ajarnpa

Video: Wasmachine/droger monitoring met ESP8266 & acceleratiesensor - Ajarnpa
Video: HomeWizard Energy: Introductie Energy (Live event, Juli 2020) 2024, Juli-
Anonim
Was-/droogautomaatbewaking met ESP8266 en versnellingssensor
Was-/droogautomaatbewaking met ESP8266 en versnellingssensor

De was/droogcombinatie staat in de kelder, en je legt er in de regel een hoop kleding in en daarna word je bezig met je andere huishoudelijke werk. U ziet de kleding over het hoofd die doorweekt en absorberend in de kelder van uw machine is achtergelaten. Welnu, af en toe ren je gewoon naar beneden in de verwachting dat de machine het werk heeft gedaan en daarna zie je de machine nog steeds draaien. Ik weet het, het is irritant.

Stelt u zich eens een scenario voor waarin u de status van de was-/droogcombinatie op uw mobiele telefoon of tablet kunt bekijken. Evenzo, waar u een bericht op uw telefoon kunt krijgen dat de machine zijn opdracht heeft voltooid. Klinkt buitengewoon fascinerend en meegaand, toch!

Met behulp van ESP8266 en een accelerometersensor kunt u inderdaad de status van uw was-/droogcombinatie volgen. U kunt deze onderneming op een eenvoudige manier bij u thuis uitvoeren als u gewoon de instructies volgt en de code kopieert.

Stap 1: Apparatuur die we nodig hebben

Apparatuur die we nodig hebben
Apparatuur die we nodig hebben
Apparatuur die we nodig hebben
Apparatuur die we nodig hebben
Apparatuur die we nodig hebben
Apparatuur die we nodig hebben
Apparatuur die we nodig hebben
Apparatuur die we nodig hebben

1. Adafruit Huzzah ESP8266

De eerste stap was het aanschaffen van een Adafruit Huzzah ESP8266-bord. Adafruit Huzzah ESP8266 is een goedkope wifi-chip met volledige TCP/IP-stack en microcontroller-mogelijkheden. De ESP8266 biedt een volwassen platform voor het bewaken en besturen van toepassingen met behulp van de Arduino Wire Language en de Arduino IDE. De ESP8266-module is een uiterst kosteneffectief bord met een enorme en steeds groter wordende community.

2. Adafruit Huzzah ESP8266 hostadapter (USB-programmeur)

Deze ESP8266-hostadapter is speciaal ontworpen voor de Adafruit Huzzah-versie van de ESP8266 en biedt een I²C-interface. De geïntegreerde USB-poort levert stroom en programmering aan de ESP8266.

3. H3LIS331DL versnellingssensor

De H3LIS331DL is een low-power high-performance 3-assige lineaire versnellingsmeter met digitale I²C seriële interface. Het is uitgerust voor het meten van versnellingen met uitgangsdatasnelheden van 0,5 Hz tot 1 kHz. Al deze dingen maken deze sensor een ideale keuze voor dit project.

4. Aansluitkabel

Ik heb de I²C-verbindingskabel gebruikt die beschikbaar is op de bovenstaande link.

5. Mini-USB-kabel

De mini-USB-kabel Voeding is een ideale keuze voor het voeden van de Adafruit Huzzah ESP8266.

Stap 2: Hardwareverbindingen

Hardware-verbindingen
Hardware-verbindingen
Hardware-verbindingen
Hardware-verbindingen
Hardware-verbindingen
Hardware-verbindingen

Over het algemeen zijn de aansluitingen heel eenvoudig. Volg de onderstaande instructies en afbeeldingen en u zou geen problemen moeten ondervinden.

Aansluiting van de Adafruit Huzzah ESP8266 en USB Programmer

Pak eerst de Adafruit Huzzah ESP8266 en plaats de USB Programmer (met Inward Facing I²C Port) erop. Druk de USB Programmer voorzichtig op zijn plaats en we zijn klaar met deze stap. Makkelijk als taart (zie foto #1).

Aansluiting van de Sensor en Adafruit Huzzah ESP8266

Pak de sensor en sluit de I²C-kabel erop aan. Voor een goede werking van deze kabel, onthoud dat de I²C-uitgang ALTIJD verbinding maakt met de I²C-ingang. Hetzelfde moet worden gedaan voor de Adafruit Huzzah ESP8266 met de USB-programmer erop gemonteerd (zie foto #2).

Met behulp van de ESP8266 USB Programmer is het heel eenvoudig om de ESP8266 te programmeren. Het enige wat u hoeft te doen is de sensor in de USB Programmer te steken en u kunt aan de slag. Ik gebruik het liefst deze adapter omdat het een stuk makkelijker is om de hardware aan te sluiten. Zonder deze plug-and-play USB Programmer is er een groot risico op het maken van een verkeerde aansluiting. Eén verkeerde draad kan zowel je wifi als je sensor doden.

Opmerking: de bruine draad moet altijd de massaverbinding (GND) volgen tussen de uitgang van het ene apparaat en de ingang van een ander apparaat

Voeding van het circuit

Steek de mini-USB-kabel in de stroomaansluiting van de Adafruit Huzzah ESP8266. Steek het aan en voila, we zijn klaar om te gaan!

De eindmontage ziet eruit zoals op foto # 3.

Plaats de sensor in de wasmachine/droger voor doeken

Voordat u dit doet, moet u ervoor zorgen dat u de sensor volledig bedekt met plastic, zodat deze het contact met water overleeft. Plaats nu de sensor en plak deze op de trommel van de was-/droogcombinatie. Doe het met opzet zonder het draadwerk van de wasmachine/droger te beschadigen en jezelf pijn te doen.

Hiermee zijn we klaar met al het hardware-werk.

Stap 3: Adafruit Huzzah ESP8266 Arduino-code

De ESP-code voor de Adafruit Huzzah ESP8266 en H3LIS331DL-sensor is beschikbaar in onze Github-repository.

Voordat je verder gaat met de code, moet je de instructies in het Readme-bestand lezen en je Adafruit Huzzah ESP8266 overeenkomstig instellen. Het duurt slechts een moment om dit te doen.

Opmerking: Zorg ervoor dat u uw SSID-netwerk en wachtwoord in de code invoert voordat u gaat uploaden

U kunt hier ook de werkende ESP-code voor deze sensor kopiëren:

// Gedistribueerd met een vrije licentie.// Gebruik het zoals je wilt, winst of gratis, op voorwaarde dat het past in de licenties van de bijbehorende werken. // Bewaking van was-/droogcombinaties met ESP8266 // Deze code is ontworpen om te werken met de H3LIS331DL_I2CS I2C-minimodule die verkrijgbaar is bij Dcubestore.com. //

#erbij betrekken

#include #include #include

// H3LIS331DL I2C-adres is 0x18 (24)

#define Addr 0x18

const char* ssid = "uw ssid-netwerk";

const char* wachtwoord = "uw wachtwoord";

ESP8266WebServer-server (80);

ongeldige handleroot()

{ niet-ondertekende int-gegevens[6];

for (int i = 0; i <6; i++) {// Start I2C Transmission Wire.beginTransmission (Addr); // Selecteer dataregister Wire.write((40 + i)); // Stop I2C-transmissie Wire.endTransmission ();

// Vraag 1 byte aan gegevens aan

Wire.requestFrom(Addr, 1); // Lees 6 bytes aan gegevens // xAccl lsb, xAccl msb, yAccl lsb, yAccl msb, zAccl lsb, zAccl msb if (Wire.available () == 1) { data = Wire.read (); } } vertraging (300);

// Converteer de gegevens

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

int yAccl = ((gegevens[3] * 256) + gegevens[2]);

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

int zAccl = ((gegevens[5] * 256) + gegevens[4]);

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

// Gegevens uitvoeren naar seriële monitor

Serial.print("Versnelling in X-as: "); Serial.print(xAcc); Serial.println ("m/s"); Serial.print("Versnelling in Y-as: "); Serial.print(yAcc); Serial.println ("m/s"); Serial.print("Versnelling in Z-as: "); Serieel.print(zAcc); Serial.println ("m/s"); vertraging (300);

// Gegevens uitvoeren naar webserver

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

CONTROLEER ALLES

www.controleverything.com

H3LIS331DL Sensor I2C Mini-module

"); server.sendContent ("

Versnelling in X-Axis = " + String(xAcc) + "m/s/s"); server.sendContent ("

Versnelling in Y-as = " + String (yAcc) + " m/s/s"); server.sendContent ("

Versnelling in Z-as = " + String(zAcc) + "m/s/s");

als (xAcc > 2)

{ // Voer gegevens uit naar seriële monitor Serial.println ("Doek wasmachine / droger: werkt");

// Gegevens uitvoeren naar webserver

server.sendContent ("

Doeken Wasmachine/Droger: Werkend"); } else { // Voer gegevens uit naar seriële monitor Serial.println ("Doek Wasmachine/Droger: Voltooid");

// Gegevens uitvoeren naar webserver

server.sendContent ("

Doeken Wasmachine/Droger: Voltooid"); } }

ongeldige setup()

{ // Initialiseer I2C-communicatie als MASTER Wire.begin (2, 14); // Initialiseer seriële communicatie, stel baudrate = 115200 Serial.begin (115200) in;

// Maak verbinding met wifi-netwerk

WiFi.begin(ssid, wachtwoord);

// Wacht op verbinding

while (WiFi.status() != WL_CONNECTED) {vertraging (500); Serieel.print("."); } Serieel.println(""); Serial.print("Verbonden met "); Seriële.println(ssid);

// Verkrijg het IP-adres van ESP8266

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

// Start de server

server.on("/", handleroot); server.begin(); Serial.println("HTTP-server gestart");

// Start I2C-verzending

Wire.beginTransmission (Addr); // Selecteer controleregister 1 Wire.write (0x20); // X-, Y-, Z-as inschakelen, inschakelmodus, gegevensuitvoersnelheid 50Hz Wire.write (0x27); // Stop I2C-transmissie Wire.endTransmission ();

// Start I2C-verzending

Wire.beginTransmission (Addr); // Selecteer controleregister 4 Wire.write (0x23); // Stel volledige schaal in, +/- 100g, continue update Wire.write (0x00); // Stop I2C-transmissie Wire.endTransmission (); vertraging (300); }

lege lus()

{ server.handleClient(); }

Stap 4: uitvoerbaarheid van de code

Praktisch van de code
Praktisch van de code

Download nu (git pull) of kopieer de code en open deze in de Arduino IDE.

Compileer en upload de code en bekijk de uitvoer op uw seriële monitor. Na enkele seconden worden alle parameters weergegeven.

Kopieer het IP-adres van ESP8266 van de seriële monitor en plak het in uw webbrowser. U ziet een webpagina met versnellingsaflezing in 3-assen en status van de was-/droogmachine. Voordat u doorgaat met de laatste test, moet u de versnellingswaarde aanpassen aan de trommelpositie van de wasmachine en de plaatsing van de sensor in de als-anders-toestand in de code.

De output van de sensor op Serial Monitor en Web Server wordt getoond in de bovenstaande afbeelding.

Stap 5: Toepassingen en upgraden

Met behulp van dit project kunt u de status van uw was-/droogcombinatie volgen op uw telefoons en laptops. Het is niet nodig om steeds opnieuw te gaan en op te houden / te luisteren om de opdracht af te maken.

U kunt ook een bericht op uw telefoon krijgen dat de machine klaar is met zijn opdracht. Hiermee onthoud je altijd kleding in de wasmachine. Hiervoor kunt u dit project eenvoudig upgraden door een deel in de bovenstaande code toe te voegen.

Ik hoop dat je dit project leuk vindt en dat het inspireert tot verdere experimenten. Het Adafruit Huzzah ESP8266 board is ongelooflijk veelzijdig, goedkoop en toegankelijk voor alle hobbyisten. Dit is slechts een van de vele eenvoudige projecten die kunnen worden gebouwd met de ESP8266.

Stap 6: Middelen om verder te gaan

Bekijk de onderstaande links voor meer informatie over H3LIS331DL en ESP8266:

  • H3LIS331DL Sensorgegevensblad
  • ESP8266-gegevensblad

U kunt ook onze aanvullende artikelen over Home Automation & ESP8266-projecten bekijken:

  • Domotica met ESP8266 en relaiscontroller
  • Controlelampjes met ESP8266 en druksensor

Aanbevolen: