Cuprins:

Proiect ElectroTerra: 9 pași
Proiect ElectroTerra: 9 pași
Anonim
Proiect ElectroTerra
Proiect ElectroTerra

Am realizat un terariu / vivariu „inteligent” ca proiect școlar.

ElectroTerra este condus de un Raspberry Pi care găzduiește un site web și stochează datele colectate de la senzori într-o bază de date MariaDB.

Site-ul web arată temperatura și umiditatea relativă de la senzori și permite controlul ventilatorului și al benzii LED. Această bandă poate funcționa automat și cu un senzor LDR.

Presupun niște cunoștințe practice despre utilizarea Raspberry Pi, Arduino, MariaDB (Mysql) și pe panourile de cablare.

Provizii

Am făcut o listă de materiale, astfel încât să puteți găsi tot ce este necesar pentru acest proiect.

Pasul 1: Configurarea Raspberry Pi

Mai întâi trebuie să configurați elementele de bază pentru Raspberry Pi:

Am folosit o conexiune ssh pentru a controla Pi cu un laptop:

Pentru codificare am folosit Visual Studio Code cu o extensie ssh:

Pentru a face site-ul web disponibil în rețeaua dvs. privată, puteți verifica acest lucru instructabil de la pasul 1 - 3: https://www.instructables.com/id/Host-your-website-on-Raspberry-pi/ Nu există nicio versiune de securitate suplimentară în acest proiect, aveți grijă să îl expuneți pe internet.

Pasul 2: Crearea circuitului electronic

Crearea circuitului electronic
Crearea circuitului electronic

În schema fritzing puteți vedea fiecare componentă necesară în acest proiect. Senzorul de temperatură cu 1 fir poate fi înlocuit de senzorul de temperatură încorporat al DHT22.

Arduino este alimentat de Pi prin cablul USB.

Pasul 3: Programare Arduino +

Programare Arduino +
Programare Arduino +
Programare Arduino +
Programare Arduino +

Deoarece funcțiile din bibliotecile Arduino pentru DHT22 și driverul de bandă LED sunt foarte elaborate, am decis să adaug un Arduino pentru aceste părți.

Prin urmare, aveți nevoie de IDE Arduino.

Asigurați-vă că importați aceste biblioteci:

  • Biblioteca DHT:
  • RGBdriver: în depozitul electroterra github

Pasul 4: Testarea senzorilor și actuatorilor pe Pi

În depozitul Github sunt câteva fișiere de test pentru componentele individuale.

Acestea sunt clasele: mcp.py (acoperirea datelor analogice din LDR) pcf.py (comunicarea datelor I2C) și pcf_lcd.py (interfața cu LCD-ul).

Pasul 5: Baza de date

Bază de date
Bază de date
Bază de date
Bază de date

Creați baza de date electroterra pe Mysql worckbench prin fișierul dump (final_dump_electroterra.sql din depozitul Github) cu câteva date de testare.

Există o problemă de compatibilitate prin utilizarea vrăjitorului „Inginer înainte la bază de date” în Mysql Workbench. Asigurați-vă că eliminați parametrul VISIBLE din instrucțiunile sql, deoarece acest lucru nu funcționează în MariaDB.

Pasul 6: Frontend

În față
În față

Codul HTML, CSS și Javascript pot fi găsite în depozitul Github. Acestea ar trebui să fie introduse în directorul în care va fi găzduit site-ul web. Designul este optimizat pentru utilizare mobilă și a fost testat pe cele mai recente versiuni stabile Chrome, Firefox și Edge.

Pasul 7: Backend

Codul app.py, datarepository.py și Database.py trebuie să fie în directorul principal al utilizatorului Pi. Pentru ca Pi să ruleze automat fișierul la repornire, utilizați aceste instrucțiuni:

Puteți găsi codul în depozitul github:

Pasul 8: Unirea lucrurilor

Punând lucrurile împreună
Punând lucrurile împreună
Punând lucrurile împreună
Punând lucrurile împreună

Această configurare este o dovadă a conceptului.

Ventilatorul este fixat pe loc cu adeziv fierbinte. Unele găuri suplimentare au fost forate în banda de ventilație pentru cablare.

Următorul a fost o cutie pentru păstrarea pieselor electronice. S-a folosit o cutie simplă de plastic. Luați în considerare adăugarea unei benzi de ventilație în caz de supraîncălzire.

Pasul 9: Testarea

Image
Image
Testarea
Testarea

Porniți Raspberry Pi și sursele de alimentare.

Navigați la adresa IP afișată pe ecranul LCD.

Prin aceasta, puteți monitoriza datele și controla dispozitivele de acționare.

Recomandat: