Sadržaj:

Praćenje perilice/sušilice rublja sa ESP8266 i senzorom ubrzanja: 6 koraka
Praćenje perilice/sušilice rublja sa ESP8266 i senzorom ubrzanja: 6 koraka

Video: Praćenje perilice/sušilice rublja sa ESP8266 i senzorom ubrzanja: 6 koraka

Video: Praćenje perilice/sušilice rublja sa ESP8266 i senzorom ubrzanja: 6 koraka
Video: Gorenje WaveActive sušilice rublja | Elipso 2024, Jun
Anonim
Praćenje perilice/sušilice rublja sa ESP8266 i senzorom ubrzanja
Praćenje perilice/sušilice rublja sa ESP8266 i senzorom ubrzanja

Perilica/sušilica rublja nalazi se u podrumu, a vi u pravilu stavljate hrpu odjeće u nju i nakon toga postajete zaposleni u svom drugom kućnom poslu. Previđate odjeću koja je ostala vlažna i upijajuća u podrumu vaše mašine. Pa opet, s vremena na vrijeme jednostavno trčite dolje očekujući da je mašina završila posao, a nakon toga vidite da mašina još radi. Znam, iritira.

Zamislite scenarij u kojem možete gledati stanje perilice/sušilice rublja na svom mobilnom telefonu ili tabletu. Slično, gdje na svoj telefon možete dobiti poruku u kojoj se navodi da je mašina završila svoj zadatak. Zvuči izuzetno fascinantno i susretljivo, zar ne!

Zaista, uz pomoć ESP8266 i senzora akcelerometra možete pratiti status vaše perilice/sušilice rublja. Ovaj pothvat možete napraviti kod svoje kuće na jednostavan način ako samo slijedite upute i kopirate kôd.

Korak 1: Potrebna nam je oprema

Oprema koja nam je potrebna
Oprema koja nam je potrebna
Oprema koja nam je potrebna
Oprema koja nam je potrebna
Oprema koja nam je potrebna
Oprema koja nam je potrebna
Oprema koja nam je potrebna
Oprema koja nam je potrebna

1. Adafruit Huzzah ESP8266

Prvi korak je bio dobivanje ploče Adafruit Huzzah ESP8266. Adafruit Huzzah ESP8266 je jeftin Wi-Fi čip sa punim TCP/IP stekom i mogućnostima mikrokontrolera. ESP8266 pruža zrelu platformu za praćenje i upravljanje aplikacijama koristeći Arduino Wire Language i Arduino IDE. Modul ESP8266 je izuzetno isplativa ploča sa velikom i sve većom zajednicom.

2. Adapter Host Adapter Huzzah ESP8266 (USB programator)

Ovaj adapter za host ESP8266 dizajniran je posebno za Adafruit Huzzah verziju ESP8266, pružajući I²C sučelje. Integrirani USB priključak napaja i programira ESP8266.

3. Senzor ubrzanja H3LIS331DL

H3LIS331DL je troosni linearni akcelerometar male snage visokih performansi male snage sa digitalnim I²C serijskim interfejsom. Opremljen je za mjerenje ubrzanja sa izlaznim brzinama prijenosa podataka od 0,5 Hz do 1 kHz. Sve ove stvari čine ovaj senzor idealnim izborom za ovaj projekt.

4. Priključni kabel

Koristio sam priključni kabel I²C dostupan na gornjoj poveznici.

5. Mini USB kabel

Napajanje mini USB kabelom idealan je izbor za napajanje Adafruit Huzzah ESP8266.

Korak 2: Hardverske veze

Hardverske veze
Hardverske veze
Hardverske veze
Hardverske veze
Hardverske veze
Hardverske veze

Općenito, veze su vrlo jednostavne. Slijedite upute i slike u nastavku i nećete imati poteškoća.

Povezivanje Adafruit Huzzah ESP8266 i USB programatora

Prije svega uzmite Adafruit Huzzah ESP8266 i na njega postavite USB programator (sa ulazom prema I²C portu). Lagano pritisnite USB programator na mjesto i završili smo s ovim korakom. Lako kao pita (vidi sliku #1).

Povezivanje senzora i Adafruit Huzzah ESP8266

Uzmite senzor i spojite I²C kabel na njega. Za pravilan rad ovog kabela, imajte na umu da se I²C izlaz UVIJEK povezuje s I²C ulazom. Isto bi trebalo učiniti i za Adafruit Huzzah ESP8266 sa USB programatorom postavljenim preko njega (vidi sliku #2).

Uz pomoć ESP8266 USB programatora, vrlo je jednostavno programirati ESP8266. Sve što trebate učiniti je spojiti senzor u USB programator i spremni ste. Radije koristim ovaj adapter jer uvelike olakšava povezivanje hardvera. Bez ovog USB programatora plug and play postoji veliki rizik od pogrešne veze. Jedna pogrešna žica može ubiti vaš WiFi kao i vaš senzor.

Napomena: Smeđa žica uvijek treba slijediti vezu uzemljenja (GND) između izlaza jednog uređaja i ulaza drugog uređaja

Napajanje strujnog kola

Uključite Mini USB kabel u utičnicu za napajanje Adafruit Huzzah ESP8266. Zapali i voila, spremni smo!

Konačna montaža će izgledati kao na slici #3.

Postavite senzor unutar mašine za pranje/sušenje veša

Prije nego što to učinite, pobrinite se da senzor potpuno pokrijete plastikom kako bi preživio kontakt s vodom. Sada postavite senzor i zalijepite ga na bubanj mašine za pranje/sušenje veša. Učinite to namjerno, a da pritom ne oštetite žicu perilice/sušilice i ne ozlijedite se.

Ovime smo završili sa svim hardverskim poslovima.

Korak 3: Adafruit Huzzah ESP8266 Arduino kôd

ESP kod za senzor Adafruit Huzzah ESP8266 i H3LIS331DL dostupan je na našem Github spremištu.

Prije nego prijeđete na kôd, svakako pročitajte upute date u datoteci Readme i podesite svoj Adafruit Huzzah ESP8266 prema njemu. Trebat će samo trenutak da to učinite.

Napomena: Prije učitavanja, obavezno unesite svoju SSID mrežu i lozinku u kôd

Ovdje možete kopirati radni ESP kod za ovaj senzor:

// Distribuirano s licencom za slobodnu volju.// Koristite ga kako god želite, profitno ili besplatno, pod uvjetom da se uklapa u licence povezanih djela. // Nadziranje pranja i sušenja rublja sa ESP8266 // Ovaj kod je dizajniran za rad s H3LIS331DL_I2CS I2C mini modulom dostupnim na Dcubestore.com. //

#include

#include #include #include

// H3LIS331DL I2C adresa je 0x18 (24)

#define Addr 0x18

const char* ssid = "vaša ssid mreža";

const char* password = "vaša lozinka";

ESP8266WebServer server (80);

void handleroot ()

{nepotpisani int podaci [6];

for (int i = 0; i <6; i ++) {// Pokretanje I2C prijenosa Wire.beginTransmission (Addr); // Odabir registra podataka Wire.write ((40 + i)); // Zaustavljanje I2C prijenosa Wire.endTransmission ();

// Zatražite 1 bajt podataka

Wire.requestFrom (Addr, 1); // Očitavanje 6 bajtova podataka // xAccl lsb, xAccl msb, yAccl lsb, yAccl msb, zAccl lsb, zAccl msb if (Wire.available () == 1) {data = Wire.read (); }} kašnjenje (300);

// Pretvorimo podatke

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

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

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

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

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

// Izlaz podataka na serijski monitor

Serial.print ("Ubrzanje u osi X:"); Serial.print (xAcc); Serial.println ("m/s"); Serial.print ("Ubrzanje u osi Y:"); Serial.print (yAcc); Serial.println ("m/s"); Serial.print ("Ubrzanje u osi Z:"); Serial.print (zAcc); Serial.println ("m/s"); kašnjenje (300);

// Izlaženje podataka na web poslužitelj

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

KONTROLIRAJTE SVE

www.controleverything.com

H3LIS331DL Senzorski I2C mini modul

"); server.sendContent ("

Ubrzanje u osi X = " + String (xAcc) +" m/s/s "); server.sendContent ("

Ubrzanje u Y-osi = " + String (yAcc) +" m/s/s "); server.sendContent ("

Ubrzanje u Z-osi = " + niz (zAcc) +" m/s/s ");

ako (xAcc> 2)

{// Izlazni podaci na serijski monitor Serial.println ("Perilica/sušilica rublja: Radi");

// Izlaženje podataka na web poslužitelj

server.sendContent ("

Perilica/sušilica rublja: Rad ");} else {// Izlazni podaci na serijski monitor Serial.println (" Perilica/sušilica rublja: Završeno ");

// Izlaženje podataka na web poslužitelj

server.sendContent ("

Perilica/sušilica rublja: Dovršeno ");}}

void setup ()

{// Inicializirajte I2C komunikaciju kao MASTER Wire.begin (2, 14); // Pokreće serijsku komunikaciju, postavlja brzinu prijenosa = 115200 Serial.begin (115200);

// Povezivanje na WiFi mrežu

WiFi.begin (ssid, lozinka);

// Pričekajte vezu

while (WiFi.status ()! = WL_CONNECTED) {kašnjenje (500); Serial.print ("."); } Serial.println (""); Serial.print ("Povezano sa"); Serial.println (ssid);

// Dobijte IP adresu ESP8266

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

// Pokretanje poslužitelja

server.on ("/", handleroot); server.begin (); Serial.println ("HTTP poslužitelj pokrenut");

// Pokretanje I2C prijenosa

Wire.beginTransmission (Addr); // Odabir upravljačkog registra 1 Wire.write (0x20); // Omogući X, Y, Z os, način uključivanja, izlazna brzina podataka 50Hz Wire.write (0x27); // Zaustavljanje I2C prijenosa Wire.endTransmission ();

// Pokretanje I2C prijenosa

Wire.beginTransmission (Addr); // Odabir upravljačkog registra 4 Wire.write (0x23); // Postavljanje pune skale, +/- 100g, kontinuirano ažuriranje Wire.write (0x00); // Zaustavljanje I2C prijenosa Wire.endTransmission (); kašnjenje (300); }

void loop ()

{server.handleClient (); }

Korak 4: Praktičnost Kodeksa

Praktičnost Kodeksa
Praktičnost Kodeksa

Sada preuzmite (git pull) ili kopirajte kôd i otvorite ga u Arduino IDE -u.

Sastavite i otpremite kôd i pogledajte izlaz na svom serijskom monitoru. Nakon nekoliko sekundi prikazat će se svi parametri.

Kopirajte IP adresu ESP8266 sa serijskog monitora i zalijepite je u svoj web preglednik. Vidjet ćete web stranicu s očitanjem ubrzanja u 3 osi i statusom mašine za pranje/sušenje rublja. Prije nego prijeđete na završno testiranje, morate izmijeniti vrijednost ubrzanja prema položaju bubnja perilice i položaju senzora u if-else stanju u kodu.

Izlaz senzora na serijskom monitoru i web serveru prikazan je na gornjoj slici.

Korak 5: Aplikacije i nadogradnja

Uz pomoć ovog projekta možete pratiti stanje svoje mašine za pranje/sušenje veša na vašim telefonima i laptop računarima. Nema potrebe da stalno ponavljate i držite/slušate kako biste dovršili zadatak.

Na vaš telefon možete dobiti i poruku u kojoj se navodi da je mašina završila svoj zadatak. Ovim ćete se uvijek sjećati odjeće u perilici. U tu svrhu možete jednostavno nadograditi ovaj projekt dodavanjem dijela u gore navedeni kod.

Nadam se da vam se sviđa ovaj projekt i da će vas inspirirati na daljnje eksperimentiranje. Ploča Adafruit Huzzah ESP8266 nevjerojatno je svestrana, jeftina i dostupna svim hobistima. Ovo je samo jedan od mnogih jednostavnih projekata koji se mogu konstruirati pomoću ESP8266.

Korak 6: Resursi za napredak

Za više informacija o H3LIS331DL i ESP8266, pogledajte donje veze:

  • Tehnički list senzora H3LIS331DL
  • ESP8266 Tehnički list

Također možete pogledati naše dodatne članke o projektima kućne automatizacije i ESP8266:

  • Kućna automatizacija sa ESP8266 i relejnim kontrolerom
  • Kontrolna svjetla sa ESP8266 i senzorom pritiska

Preporučuje se: