Sadržaj:
2025 Autor: John Day | [email protected]. Zadnja promjena: 2025-01-13 06:57
Napravio sam "pametan" terarij/vivarij kao školski projekt.
ElectroTerrom upravlja Raspberry Pi koji hostira web stranicu i pohranjuje podatke prikupljene sa senzora u bazi podataka MariaDB.
Web stranica prikazuje temperaturu i relativnu vlažnost sa senzora i omogućuje kontrolu ventilatora i LED trake. Ta traka također može raditi automatski pomoću LDR senzora.
Pretpostavljam neko praktično znanje o korištenju Raspberry Pi, Arduino, MariaDB (Mysql) i ožičenju matičnih ploča.
Pribor
Napravio sam popis materijala kako biste mogli pronaći sve potrebno za ovaj projekt.
Korak 1: Postavljanje Raspberry Pi
Prvo morate postaviti osnove za Raspberry Pi:
Koristio sam ssh vezu za kontrolu Pi-a s prijenosnim računalom:
Za kodiranje sam koristio Visual Studio Code s proširenjem ssh:
Kako biste web stranicu učinili dostupnom u svojoj privatnoj mreži, možete provjeriti ovo uputstvo od koraka 1 do 3: https://www.instructables.com/id/Host-your-website-on-Raspberry-pi/ Ne postoji dodatna sigurnosna izgradnja u ovom projektu pa se čuvajte otkrivanja na internetu.
Korak 2: Stvaranje elektroničkog kruga
U shemi fritzinga možete vidjeti sve potrebne komponente u ovom projektu. 1-žični osjetnik temperature može se zamijeniti ugrađenim osjetnikom temperature DHT22.
Arduino napaja Pi putem USB kabela.
Korak 3: Arduino + programiranje
Budući da su funkcije u Arduino knjižnicama za DHT22 i upravljački program LED trake vrlo razrađene, odlučio sam dodati Arduino za ove dijelove.
Stoga vam je potreban Arduino IDE.
Uvezite ove knjižnice:
- DHT knjižnica:
- RGBdriver: u spremištu electroterra github
Korak 4: Testiranje senzora i aktuatora na Pi
U spremištu Github nalaze se neke testne datoteke za pojedine komponente.
To su klase: mcp.py (pokrivaju analogne podatke iz LDR -a) pcf.py (komuniciraju I2C podatke) i pcf_lcd.py (povezivanje s LCD -om).
Korak 5: Baza podataka
Napravite bazu elektroterra na radnoj ploči Mysql putem datoteke ispisa (final_dump_electroterra.sql u spremištu Github) s nekim testnim podacima.
Postoji problem s kompatibilnošću pomoću čarobnjaka "Proslijedi inženjera u bazu podataka" u Mysql Workbenchu. Uklonite VISIBLE parametar u sql izrazima jer to ne radi u MariaDB -u.
Korak 6: Frontend
HTML, CSS i Javascript kod možete pronaći u spremištu Github. Treba ih staviti u direktorij u kojem će web stranica biti hostirana. Dizajn je optimiziran za mobilnu upotrebu i testiran je na najnovijim stabilnim verzijama Chromea, Firefoxa i Edgea.
Korak 7: Pozadina
Kod app.py, datarepository.py i Database.py moraju biti u kućnom direktoriju korisnika korisnika Pi. Da bi Pi automatski pokrenuo datoteku pri ponovnom pokretanju, koristite ove upute:
Kôd možete pronaći u spremištu github:
Korak 8: Sastavite stvari zajedno
Ova postavka dokaz je koncepta.
Ventilator je pričvršćen vrućim ljepilom. U ventilacijskoj traci izbušeno je nekoliko dodatnih rupa za ožičenje.
Sljedeća je bila kutija za čuvanje elektroničkih dijelova. Korištena je jednostavna plastična kutija. Razmislite o dodavanju ventilacijske trake u slučaju pregrijavanja.
Korak 9: Testiranje
Uključite Raspberry Pi i napajanje.
Potražite IP adresu prikazanu na LCD zaslonu.
Na taj način možete nadzirati podatke i upravljati aktuatorima.