Sadržaj:

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

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

Video: Praćenje perilice/sušilice rublja s ESP8266 i senzorom ubrzanja: 6 koraka
Video: Komplet za postavljanje perilice i sušilice rublja 2024, Srpanj
Anonim
Praćenje perilice/sušilice rublja s ESP8266 i senzorom ubrzanja
Praćenje perilice/sušilice rublja s ESP8266 i senzorom ubrzanja

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

Zamislite scenarij u kojem možete gledati stanje perilice/sušilice rublja na svom mobitelu ili tabletu. Slično, gdje na svoj telefon možete dobiti poruku u kojoj se navodi da je stroj dovršio dodjelu. Zvuči iznimno fascinantno i susretljivo, zar ne!

Doista, uz pomoć ESP8266 i senzora akcelerometra možete pratiti stanje svoje 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 bio je dobivanje ploče Adafruit Huzzah ESP8266. Adafruit Huzzah ESP8266 je jeftin Wi-Fi čip s punim TCP/IP stogom i sposobnostima mikrokontrolera. ESP8266 pruža zrelu platformu za nadzor i upravljanje aplikacijama pomoću jezika Arduino Wire i Arduino IDE. Modul ESP8266 iznimno je isplativa ploča s 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 i digitalnog serijskog sučelja I²C. Opremljen je za mjerenje ubrzanja s izlaznim brzinama prijenosa podataka od 0,5 Hz do 1 kHz. Sve ove stvari čine ovaj senzor idealnim izborom za ovaj projekt.

4. Spojni kabel

Koristio sam I²C spojni kabel 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 biste trebali imati poteškoća.

Povezivanje Adafruit Huzzah ESP8266 i USB programatora

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

Spajanje senzora i Adafruit Huzzah ESP8266

Uzmite senzor i spojite I²C kabel na njega. Za ispravan 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 s USB programatorom montiranim 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 bi trebala slijediti vezu uzemljenja (GND) između izlaza jednog uređaja i ulaza drugog uređaja

Napajanje strujnog kruga

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

Završna montaža izgledat će kao na slici #3.

Senzor postavite unutar mašine za pranje/sušenje rublja

Prije nego što učinite, pobrinite se da senzor potpuno prekrijete plastikom kako bi preživio kontakt s vodom. Sada postavite senzor i zalijepite ga na bubanj perilice/sušilice rublja. 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 u našem spremištu Github.

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

Napomena: Prije prijenosa 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 na koji god način želite, profitno ili besplatno, pod uvjetom da se uklapa u licence povezanih djela. // Praćenje perilice/sušilice rublja s ESP8266 // Ovaj kod je dizajniran za rad s H3LIS331DL_I2CS I2C mini modulom dostupnim na Dcubestore.com. //

#uključi

#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 poslužitelj (80);

void handleroot ()

{nepotpisani int podaci [6];

for (int i = 0; i <6; i ++) {// Pokreni I2C prijenosnu žicu.beginTransmission (Addr); // Odabir registra podataka Wire.write ((40 + i)); // Zaustavi I2C prijenosnu žicu.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]); ako (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]);

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

// Izlaženje podataka na serijski monitor

Serial.print ("Ubrzanje u osi X:"); Serijski.ispis (xAcc); Serial.println ("m/s"); Serial.print ("Ubrzanje u osi Y:"); Serijski.ispis (yAcc); Serial.println ("m/s"); Serial.print ("Ubrzanje u osi Z:"); Serijski.ispis (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 osi Y = " + String (yAcc) +" m/s/s "); server.sendContent ("

Ubrzanje u osi Z = " + 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: Dovrš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); // Pokretanje serijske komunikacije, postavljena brzina prijenosa = 115200 Serial.begin (115200);

// Povezivanje na WiFi mrežu

WiFi.započni (ssid, lozinka);

// Pričekajte vezu

while (WiFi.status ()! = WL_CONNECTED) {odgoda (500); Serial.print ("."); } Serial.println (""); Serial.print ("Povezano s"); Serijski.println (ssid);

// Dohvaćanje IP adrese 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); // Zaustavi I2C prijenosnu žicu.endTransmission ();

// Pokretanje I2C prijenosa

Wire.beginTransmission (Addr); // Odabir upravljačkog registra 4 Wire.write (0x23); // Postavljanje pune ljestvice, +/- 100g, kontinuirano ažuriranje Wire.write (0x00); // Zaustavi I2C prijenosnu žicu.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 prenesite 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 perilice/sušilice rublja. Prije nego prijeđete na završno ispitivanje, morate promijeniti vrijednost ubrzanja prema položaju bubnja perilice i položaju senzora u if-else stanju u kodu.

Izlaz senzora na serijskom monitoru i web poslužitelju prikazan je na gornjoj slici.

Korak 5: Aplikacije i nadogradnja

Uz pomoć ovog projekta možete pratiti stanje svoje perilice/sušilice rublja na svojim telefonima i prijenosnim računalima. 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 stroj završio s dodjeljivanjem zadatka. S ovim ćete se uvijek sjećati odjeće u perilici. U tu svrhu možete jednostavno nadograditi ovaj projekt dodavanjem nekog dijela u gore navedeni kod.

Nadam se da vam se sviđa ovaj projekt i da će vas potaknuti 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
  • Tehnički list ESP8266

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

  • Kućna automatizacija s ESP8266 i relejnim upravljačem
  • Kontrolna svjetla s ESP8266 i senzorom tlaka

Preporučeni: