Inhoudsopgave:

Project ElectroTerra: 9 stappen
Project ElectroTerra: 9 stappen

Video: Project ElectroTerra: 9 stappen

Video: Project ElectroTerra: 9 stappen
Video: Control Position and Speed of Stepper motor with L298N module using Arduino 2024, November
Anonim
Project ElectroTerra
Project ElectroTerra

Ik heb een "slim" terrarium/vivarium gemaakt als schoolproject.

ElectroTerra wordt gerund door een Raspberry Pi die een website host en gegevens die zijn verzameld van de sensoren opslaat in een MariaDB-database.

De website toont temperatuur en relatieve vochtigheid van de sensoren en maakt bediening van de ventilator en LED-strip mogelijk. Die strip kan ook automatisch werken door een LDR sensor.

Ik veronderstel enige praktische kennis van het gebruik van Raspberry Pi, Arduino, MariaDB (Mysql) en over het bedraden van breadboards.

Benodigdheden

Ik heb een lijst met materialen gemaakt, zodat je alles kunt vinden dat nodig is voor dit project.

Stap 1: Raspberry Pi-installatie

Eerst moet je de basis voor de Raspberry Pi instellen:

Ik heb een ssh-verbinding gebruikt om de Pi met een laptop te besturen:

Voor het coderen heb ik Visual Studio Code gebruikt met een ssh-extensie:

Om de website beschikbaar te maken binnen uw privénetwerk, kunt u deze instructable controleren vanaf stap 1 - 3: https://www.instructables.com/id/Host-your-website-on-Raspberry-pi/ Er is geen extra beveiliging ingebouwd in dit project, dus pas op dat u het niet op internet plaatst.

Stap 2: Het elektronische circuit maken

Het elektronische circuit maken
Het elektronische circuit maken

In het fritzing-schema ziet u alle benodigde componenten in dit project. De 1-draads temperatuursensor kan worden vervangen door de ingebouwde temperatuursensor van de DHT22.

De Arduino wordt gevoed door de Pi via de USB-kabel.

Stap 3: Arduino + Programmeren

Arduino + Programmeren
Arduino + Programmeren
Arduino + Programmeren
Arduino + Programmeren

Omdat de functies in de Arduino-bibliotheken voor de DHT22 en de LED-stripdriver erg uitgebreid zijn, heb ik besloten om voor deze onderdelen een Arduino toe te voegen.

Daarvoor heb je de Arduino IDE nodig.

Zorg ervoor dat u deze bibliotheken importeert:

  • DHT-bibliotheek:
  • RGB-stuurprogramma: in de electroterra github-repository

Stap 4: Testen van de sensoren en actuatoren op de Pi

In de Github-repository bevinden zich enkele testbestanden voor de afzonderlijke componenten.

Dit zijn de klassen: mcp.py (die de analoge gegevens van de LDR omvat) pcf.py (communiceren van I2C-gegevens) en pcf_lcd.py (interface met de LCD).

Stap 5: Database

Database
Database
Database
Database

Maak de electroterra-database op de Mysql-werkbank via het dumpbestand (final_dump_electroterra.sql in de Github-repository) met enkele testgegevens.

Er is een compatibiliteitsprobleem bij het gebruik van de wizard "Forward Engineer to Database" in Mysql Workbench. Zorg ervoor dat u de parameter VISIBLE in de sql-instructies verwijdert, aangezien dit niet werkt in MariaDB.

Stap 6: Frontend

Voorkant
Voorkant

De HTML-, CSS- en Javascript-code zijn te vinden in de Github-repository. Ze moeten in de map worden geplaatst waar de website wordt gehost. Het ontwerp is geoptimaliseerd voor mobiel gebruik en is getest op de nieuwste stabiele versies van Chrome, Firefox en Edge.

Stap 7: Backend

De code app.py, datarepository.py en Database.py moet in de homedirectory van de Pi-gebruiker staan. Gebruik deze instructies om de Pi het bestand automatisch te laten uitvoeren bij het opnieuw opstarten:

Je kunt de code vinden in de github-repository:

Stap 8: dingen samenbrengen

Dingen samenbrengen
Dingen samenbrengen
Dingen samenbrengen
Dingen samenbrengen

Deze opstelling is een proof of concept.

De ventilator wordt op zijn plaats vastgezet met hete lijm. In de ventilatiestrip zijn wat extra gaatjes geboord voor bedrading.

De volgende was een doos om de elektronische onderdelen te bewaren. Er werd een eenvoudige plastic doos gebruikt. Overweeg een ventilatiestrip toe te voegen in geval van oververhitting.

Stap 9: Testen

Image
Image
Testen
Testen

Zet de Raspberry Pi en de voedingen aan.

Blader naar het IP-adres dat op het LCD-scherm wordt weergegeven.

Hiermee kunt u de gegevens bewaken en de actuatoren aansturen.

Aanbevolen: