Innehållsförteckning:

Projekt ElectroTerra: 9 steg
Projekt ElectroTerra: 9 steg

Video: Projekt ElectroTerra: 9 steg

Video: Projekt ElectroTerra: 9 steg
Video: [ 10 Часть ] Сертификат Terra Electro 2024, November
Anonim
Projekt ElectroTerra
Projekt ElectroTerra

Jag gjorde ett "smart" terrarium/vivarium som ett skolprojekt.

ElectroTerra drivs av en Raspberry Pi som är värd för en webbplats och lagrar data som samlats in från sensorerna i en MariaDB -databas.

Webbplatsen visar temperatur och relativ fuktighet från sensorerna och tillåter kontroll av fläkten och LED -remsan. Den remsan kan också fungera automatiskt med en LDR -sensor.

Jag antar viss praktisk kunskap om hur man använder Raspberry Pi, Arduino, MariaDB (Mysql) och om kabeldragning av brödbrädor.

Tillbehör

Jag gjorde en lista med material så att du kan hitta allt som behövs för detta projekt.

Steg 1: Raspberry Pi Setup

Först måste du ställa in grunderna för Raspberry Pi:

Jag använde en ssh-anslutning för att styra Pi med en bärbar dator:

För kodning använde jag Visual Studio Code med ett ssh -tillägg:

För att göra webbplatsen tillgänglig i ditt privata nätverk kan du kontrollera detta instruerbart från steg 1-3: https://www.instructables.com/id/Host-your-website-on-Raspberry-pi/ Det finns ingen extra säkerhetsbyggnad i detta projekt så se upp med att avslöja det på internet.

Steg 2: Skapa den elektroniska kretsen

Skapa den elektroniska kretsen
Skapa den elektroniska kretsen

I fritzing -schemat kan du se alla nödvändiga komponenter i detta projekt. 1-tråds temperatursensorn kan ersättas av den inbyggda temperatursensorn på DHT22.

Arduino drivs av Pi via USB -kabeln.

Steg 3: Arduino + programmering

Arduino + programmering
Arduino + programmering
Arduino + programmering
Arduino + programmering

Eftersom funktionerna i Arduino -biblioteken för DHT22 och LED -remsdrivrutinen är mycket utarbetade bestämde jag mig för att lägga till en Arduino för dessa delar.

Därför behöver du Arduino IDE.

Se till att importera dessa bibliotek:

  • DHT-bibliotek:
  • RGBdriver: i electroterra github -förvaret

Steg 4: Testa sensorer och ställdon på Pi

I Github -förvaret finns några testfiler för de enskilda komponenterna.

Dessa är klasserna: mcp.py (döljer analoga data från LDR) pcf.py (kommunicerar I2C -data) och pcf_lcd.py (gränssnitt mot LCD).

Steg 5: Databas

Databas
Databas
Databas
Databas

Skapa electroterra -databasen på Mysql -arbetsbänken via dumpfilen (final_dump_electroterra.sql i Github -förvaret) med några testdata.

Det finns ett kompatibilitetsproblem med hjälp av "Forward Engineer to Database" -guiden i Mysql Workbench. Se till att ta bort VISIBLE -parametern i sql -satserna eftersom detta inte fungerar i MariaDB.

Steg 6: Frontend

Frontend
Frontend

HTML-, CSS- och Javascript -koden finns i Github -förvaret. De bör placeras i katalogen där webbplatsen kommer att vara värd. Designen är optimerad för mobil användning och testades på de senaste stabila Chrome-, Firefox- och Edge -versionerna.

Steg 7: Backend

App.py, datarepository.py och Database.py -koden måste finnas i Pi -användarens hemkatalog. För att få Pi att köra filen automatiskt vid omstart använder du dessa instruktioner:

Du hittar koden i github -förvaret:

Steg 8: Att sätta ihop saker

Att sätta ihop saker
Att sätta ihop saker
Att sätta ihop saker
Att sätta ihop saker

Denna inställning är ett bevis på konceptet.

Fläkten fixeras på plats med varmt lim. Några extra hål borrades i ventilationsremsan för kabeldragning.

Nästa upp var en låda för att behålla de elektroniska delarna. En enkel plastlåda användes. Överväg att lägga till en ventilationslist vid överhettning.

Steg 9: Testning

Image
Image
Testning
Testning

Slå på Raspberry Pi och strömförsörjningen.

Bläddra till IP -adressen som visas på LCD -skärmen.

Genom detta kan du övervaka data och styra ställdonen.

Rekommenderad: