Sadržaj:
- Korak 1: Potrebna nam je oprema
- Korak 2: Hardverske veze
- Korak 3: Adafruit Huzzah ESP8266 Arduino kôd
- KONTROLIRAJTE SVE
- H3LIS331DL Senzorski I2C mini modul
- Korak 4: Praktičnost Kodeksa
- Korak 5: Aplikacije i nadogradnja
- Korak 6: Resursi za napredak
Video: Praćenje perilice/sušilice rublja s ESP8266 i senzorom ubrzanja: 6 koraka
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:32
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
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
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
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:
Kako pronaći igle motora perilice rublja: 6 koraka
Kako pronaći igle motora perilice rublja: Pronalaženje iglica motora perilice rublja uz pomoć digitalnog multimetra. Potreban nam je multimetar u načinu rada za ispitivanje kontinuiteta i sličan univerzalni motor za pranje rublja poput onog na gornjoj slici. Mi ćemo počnite prvo vizualnim pregledom t
Obavijesti perilice rublja: 3 koraka
Obavijesti o perilici rublja: Imam "glupu" najjeftiniju perilicu rublja za oko 150 funti. Veličina je bila najveće ograničenje, stoga nemojte me osuđivati previše strogo. Gluplja stvar u mom domaćinstvu sam ja. Pranje bijelog donjeg rublja s crvenim džemperima jedan je od mojih grijeha. Drugi se ne sjeća
Kreativne upotrebe bubnja perilice rublja: 5 koraka
Kreativna upotreba bubnja u perilici rublja: Ovaj vodič ima za cilj inspirirati i na alternativan način pogledati odbačene predmete. Ne misli se nužno duplicirati, već vam daje ideje o mogućoj uporabi bubnja za perilicu rublja koje se obično ne uzimaju u obzir. Moj fokus
Shema ožičenja motora perilice rublja: 6 koraka
Dijagram ožičenja motora perilice rublja: Da bismo mogli spojiti motor perilice ili univerzalni motor, trebat će nam dijagram koji se naziva dijagram ožičenja motora perilice rublja, ovaj se može koristiti za povezivanje ovog univerzalnog motora na 220v ac ili dc samo slijedite isti dijagram
Upozorenje Arduino perilice -sušilice rublja - push obavijest na telefon s Blynkom: 5 koraka (sa slikama)
Upozorenje o perilici -sušilici rublja Arduino - Obavijestite telefon putem Blynka: Naša je perilica u garaži i ne možemo čuti zvučne signale koji označavaju da je pranje završeno. Htio sam pronaći način da dobijem obavijest, gdje god se nalazili u kući, kad ciklus završi. Petljao sam s Arduinom, ESP8266 WiFi