Inhoudsopgave:
- Benodigdheden
- Stap 1: Raspberry Pi-installatie
- Stap 2: Het elektronische circuit maken
- Stap 3: Arduino + Programmeren
- Stap 4: Testen van de sensoren en actuatoren op de Pi
- Stap 5: Database
- Stap 6: Frontend
- Stap 7: Backend
- Stap 8: dingen samenbrengen
- Stap 9: Testen
Video: Project ElectroTerra: 9 stappen
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:15
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
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
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
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
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
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
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:
Geautomatiseerde ECG-BME 305 Final Project Extra Credit: 7 stappen
Geautomatiseerd ECG-BME 305 Final Project Extra tegoed: een elektrocardiogram (ECG of ECG) wordt gebruikt om de elektrische signalen te meten die door een kloppend hart worden geproduceerd en het speelt een grote rol bij de diagnose en prognose van hart- en vaatziekten. Een deel van de informatie die uit een ECG wordt verkregen, omvat het ritme
Dopamine Doos - een project vergelijkbaar met Mike Boyd - niet van Mike Boyd zijn: 9 stappen
Dopamine Doos | een project vergelijkbaar met Mike Boyd - niet van Mike Boyd: ik wil er een! Ik heb er een nodig! Ik ben een uitsteller! Nou, ik wil een dopaminedoos… Zonder te hoeven programmeren. Geen geluiden, alleen pure wil
Lightshowpi-project: 4 stappen
Lightshowpi-project: Hallo allemaal! Dit is mijn officiële gids over het maken van een lichtshow met lightshowpi vanaf oktober 2020
Hoe maak je RADAR met behulp van Arduino voor Science Project - Beste Arduino-projecten: 5 stappen
Hoe maak je RADAR met behulp van Arduino voor Science Project | Beste Arduino-projecten: Hallo vrienden, in deze instructable laat ik je zien hoe je een geweldig radarsysteem kunt maken dat is gebouwd met behulp van Arduino nano. Dit project is ideaal voor wetenschappelijke projecten en je kunt dit gemakkelijk doen met heel minder investeringen en kansen als het winnen van een prijs geweldig is om
USB-aangedreven brander! Dit project kan door plastic / hout / papier branden (leuk project moet ook heel fijn hout zijn): 3 stappen
USB-aangedreven brander! Dit project kan door plastic / hout / papier branden (leuk project moet ook heel fijn hout zijn): MAAK DIT NIET MET USB!!!! ik kwam erachter dat het je computer kan beschadigen door alle opmerkingen. mijn computer is in orde. Gebruik een 600mA 5v telefoonoplader. ik heb dit gebruikt en het werkt prima en niets kan worden beschadigd als je een veiligheidsstekker gebruikt om de stroom te stoppen