Inhoudsopgave:

Plant'm: 6 stappen (met afbeeldingen)
Plant'm: 6 stappen (met afbeeldingen)

Video: Plant'm: 6 stappen (met afbeeldingen)

Video: Plant'm: 6 stappen (met afbeeldingen)
Video: Het 6 Stappenplan van de Plenda 2024, December
Anonim
Plant'm
Plant'm

Zoals de meesten vind ik het heerlijk om planten in huis te hebben. Helaas sterven ze bijna altijd binnen een paar weken. Dus toen ik aan het einde van mijn eerste jaar als student aan MCT aan Howest de opdracht kreeg om een project te maken waarin alles wat ik tot nu toe heb geleerd zou worden getoond, wilde ik iets maken dat het aantal dode planten in huis zou verminderen. En zo werd Plant'm geboren.

Ik keek terug naar mijn vorige planten en probeerde de verschillende redenen te bedenken waarom ze het niet overleefden. Meestal kwam dit omdat ik ze vergat water te geven, ze te veel water gaf of ze nooit het daglicht liet zien. Dat is waar Plant'm tussenbeide komt en deze zaken voor u regelt.

Benodigdheden

Elektronica:

  • Raspberry pi 4 + GPIO-doorbraak
  • SD-kaart 16 GB of meer
  • Vloeistofniveausensor
  • LM35
  • Bodemvochtsensor
  • LDR
  • Transistor (BC337)
  • Waterpomp
  • Loden strip
  • Breadboard + voeding
  • LCD scherm
  • Veel startkabels, zowel mannelijk-mannelijk als vrouwelijk-mannelijk

Materialen

  • Oude wijnkisten
  • Oude bureaulamp
  • Schroeven en bouten
  • Scharnieren
  • Nagels
  • Lijm en tape

Stap 1: De Raspberry Pi instellen

Je kunt de afbeelding die nodig is voor de Pi hier downloaden. Ik kies meestal de versie zonder desktop, omdat ik alleen verbinding maak met de Pi via PuTTY. Nadat u de afbeelding naar de SD-kaart heeft geschreven, moet u enkele bestanden wijzigen en toevoegen. In het bestand "cmdline.txt" (open dit bestand niet in Kladblok, open het in Notepad++ of een andere IDE) moet je aan het einde "ip=169.254.10.1" toevoegen. Dit zorgt ervoor dat u via ethernet verbinding kunt maken met ons apparaat (zorg ervoor dat u geen ENTER toevoegt aan het einde van uw bestand, anders krijgt u problemen).

U kunt nu de SD-kaart plaatsen, de Pi via ethernet op uw computer aansluiten en de Pi opstarten. Het kan even duren voordat de Pi de eerste keer opstart. Zodra u kunt inloggen met de standaardgebruiker "pi" met zijn wachtwoord "raspberry". U kunt dit later altijd nog wijzigen.

Eerst moet u enkele configuraties wijzigen. Gebruik "sudo raspi-config" om het configuratiemenu te openen en hier gaan we naar Interfacing-opties. Hieronder zullen we de volgende optie op SPI schakelen.

U kunt nu een draadloze verbinding opzetten zoals hier wordt uitgelegd. Nu we een internetverbinding hebben, kunnen we enkele pakketten in de volgende volgorde downloaden:

  1. "sudo apt update && apt upgrade -y" Dit zal de laatste updates voor de Pi krijgen.
  2. "sudo apt install mariadb-server apache2" Deze zullen respectievelijk de webserver en database draaien.
  3. "sudo pip3 install Flask Flask-Cors Flask-SocketIO gevent gevent-websocket greenlet spi SPI-Pyspidev" Dit zijn enkele Python-pakketten die nodig zijn om de backend voor dit project uit te voeren.
  4. En tot slot "sudo apt install python3-mysql.connector -y" om verbinding te maken met de database

Vervolgens maken we een gebruiker van de database aan. Gebruik "sudo mysql -u root" om in te loggen op uw MySQL-server, hier zullen we een gebruiker maken met de naam db_admin met het bijbehorende wachtwoord, bewaar dit wachtwoord ergens voor later in de instructies. "@"%" GEDENTIFICEERD DOOR "yourPasswordHere" MET SUBSIDIEOPTIE. U kunt nu de webserver bezoeken op het ip-adres dat we eerder hebben toegevoegd.

Stap 2: Het circuit bouwen

Het circuit bouwen
Het circuit bouwen
Het circuit bouwen
Het circuit bouwen
Het circuit bouwen
Het circuit bouwen

Om het circuit te maken, kunt u het volgen met behulp van het schema en de breadboard-weergave die bij de andere afbeeldingen is toegevoegd.

Stap 3: De zaak bouwen

De zaak bouwen
De zaak bouwen
De zaak bouwen
De zaak bouwen
De zaak bouwen
De zaak bouwen
De zaak bouwen
De zaak bouwen

Deze koffer is gemaakt van 4 oude wijnkisten waarvan er 3 uit elkaar waren. Ik heb wat gaten in de behuizing geboord om het scherm, de lamp, de verlengkabel en de temperatuursensor door te verbinden.

Met behulp van enkele scharnieren heb ik 2 deksels bevestigd. Eentje om toegang te geven tot het waterreservoir. In de andere heb ik een gat uitgesneden waar mijn plant uit kan groeien, en nog 2 gaten waar de lichtsensor doorheen kan. Het heeft ook een uitsparing voor de lamp.

Om de elektronica gescheiden te houden van water, bouw ik een tweede niveau voor het waterreservoir om op te zitten met een andere plank en 4 schroeven en bouten. Ik heb hier wat extra gaten in gemaakt voor de bedrading en om wat meer ruimte te geven om de lamp door te laten.

Als voet voor de lamp heb ik een oude bureaulamp gebruikt die het niet meer deed. Ik heb alle interne onderdelen verwijderd omdat ze niet meer nodig waren. Vervolgens heb ik de ledstrip op zijn plaats gelijmd en de 2 metalen buizen verbonden met wat PVC-buizen en een overvloed aan lijm.

Stap 4: De code

De code vind je hier. Gewoon downloaden.

Nu op het plaatsen van de bestanden. Kopieer alle bestanden in de map "Code/Frontend" naar "/var/www/html" op de Pi. Dit zijn de bestanden voor de website. Er zal hoogstwaarschijnlijk al een bestand met de naam "index.html" in deze map staan, u kunt dat gewoon verwijderen. De bestanden in de map "Backend" kunnen in een nieuwe map in de map "home/pi" worden geplaatst. U moet uw eigen wachtwoorden en gebruikersnamen gebruiken in "config.py".

Om ervoor te zorgen dat het opstart zodra u het aansluit, moeten we er een service van maken. U kunt hier leren hoe u services instelt. U moet een bestand maken in de map "/etc/systemd/system". Kopieer en plak in dit bestand het volgende:

[Eenheid]

Description=Plant'm

Na=netwerk.doel

[Onderhoud]

ExecStart=/usr/bin/python3 -u app.py

WorkingDirectory=/home/ine/project1

StandardOutput=overnemen

StandardError=overnemen

Opnieuw opstarten=altijd

Gebruiker=ine

[Installeren]

WantedBy=multi-user.target

U moet de WorkingDirectory wijzigen naar de locatie waar u de backend-bestanden en de gebruiker opslaat naar uw eigen gebruikersnaam. Als je dat eenmaal hebt gedaan, gebruik je "sudo systemctl start myscript.service" om te testen of de service werkt. Als dit het geval is, typt u "sudo systemctl enable myscript.service" om het automatisch te laten starten bij opnieuw opstarten.

Stap 5: De database instellen

De database instellen
De database instellen

Hiervoor gebruiken we MySQL Workbench. Om te beginnen maak je een nieuwe verbinding met de pi. Je kunt mijn instellingen zien in de bijgevoegde screenshot. Vergeet alleen niet uw eigen gebruikersnaam en wachtwoorden te gebruiken. Als je de instellingen hebt ingevuld, druk je op "Test verbinding" om te controleren of het werkt.

Zodra de verbinding tot stand is gebracht, ga je gang en maak je verbinding. Nu gebruiken we het bestand in de map "Database-export". Open het SQL-bestand en voer het uit. Hiermee worden de database en al zijn tabellen gemaakt. Ik heb ook wat testgegevens toegevoegd om op de website te visualiseren.

Stap 6: Kijk hoe die planten groeien

Kijk hoe die planten groeien
Kijk hoe die planten groeien
Kijk hoe die planten groeien
Kijk hoe die planten groeien

Nu alles klaar is, hebben we nu een werkend project dat voor onze planten zal zorgen.

Als je problemen tegenkomt, een vraag of suggestie hebt, laat dan gerust een reactie achter. Ik probeer zo snel mogelijk bij je terug te komen.

Aanbevolen: