Introduction: Mini Weerstation Met Flask En MySQL

Picture of Mini Weerstation Met Flask En MySQL

In dit project zullen we een klein weerstation maken die de temperatuur, luchtvochtigheid en neerslag weergeeft. Deze waarden zullen worden ingelezen met een Arduino en we zullen de data sturen naar een database en deze data dan ophalen en weergeven op een website.

Step 1: De Nodige Materialen

Picture of De Nodige Materialen

Voor dit project gebruiken we:

Step 2: Hardware Connectie

Picture of Hardware Connectie

DHT11 verbinden:

  • De VCC pin naar de Arduino 5V pin
  • De DATA pin naar de Arduino digitale pin 7
  • De GND pin naar de Arduino GND pin

Regensensor verbinden:

  • Je kan de data over de pin A0 of D0 sturen aan de hand daarvan beslis je dan of je het connect met een analoge pin van je Arduino of met je digitale pin. Ik heb het geconnecteerd met de A0 en ik heb deze verbonden met de Arduino analoge pin A3.
  • De GND pin naar de Arduino GND pin
  • De VCC pin naar de Arduino 5V pin

Step 3: De Raspberry Pi Up-to-date

Eerst en vooral zullen we een internet connectie maken. Daarvoor moeten we deze file openen:

  • sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Daarin zal je je eigen netwerk moeten toevoegen:

network={
ssid= "SSID_de naam van je netwerk"

psk="je wifi wachtwoord" }

Nu zullen we de pi updaten met dit commando:

  • sudo apt-get update

Als dit klaar is kunnen we hem upgraden met dit commando:

  • sudo apt-get upgrade

Step 4: Installeren Van MySQL

Eerst moeten we de server installeren:

  • sudo apt-get install mysql-server

De volgende stap is de MySQL client installeren:

  • sudo apt-get install mysql-client

Daarna zal je een wachtwoord voor je root user moeten kiezen. Zorg dat je deze zeker onthoud we zullen hem nog nodig hebben.

Voer nu dit commando in om databases te bewerken :

  • mysql -u root -p

Je kan hier simpel uitgeraken door quit in te typen.

Als je met MySQL zal willen werken in python heb je dit ook nodig:

  • sudo apt-get install python-mysql.connector
  • sudo apt-get install python-mysqldb

Step 5: PhpMyAdmin Installeren Op Je Raspberry Pi

Picture of PhpMyAdmin Installeren Op Je Raspberry Pi

We zullen beginnen met ons als hoofdgebruiker te maken daarvoor typen we dit in:

  • sudo bash

Daarna zullen we PhpMyAdmin installeren op de raspberry pi daarvoor typen we dit in:

  • apt-get install phpmyadmin

Tijdens het installeren zal hij vragen welke web server er geinstalleerd is kies voor apache2 zie de afbeelding.

Daarna zullen we de PhpMyAdmin database configureren. Er zal een scherm tevoorschijn komen. Zie afbeelding hier duid je yes aan.

Hierna zal gevraagd worden een wachtwoord te kiezen dit is natuurlijk jou keuze wat je hier invult.

De laatste stap: het configureren van apache om te kunnen werken met PhpMyAdmin

Typ het volgende commando in:

  • nano /etc/apache2/apache2.conf

Deze file zal openen. Druk op CTRL+ V om helemaal naar de onderkant van de file te gaan. Voeg dit dan toe onderaan de file :

  • Include /etc/phpmyadmin/apache.conf

Sla de file nu op door op CTRL + X te drukken en Y in te geven.

Nu zullen we apache2 herstarten typ hiervoor het commando:

  • /etc/init.d/apache2 restart

Nu zou het moeten lukken. Typ nu: http://your.raspberrypi.domain/phpmyadmin en dit zou je nu moeten verwijzen naar de database.

Step 6: Behuizing

Picture of Behuizing

Ik heb een metalen doos gebruikt als behuizing. Ik heb hiervoor gekozen omdat deze redelijk goed bestand is tegen water. Ook heb ik ruime plaats om mijn raspberry pi, breadboard en mijn powerbank te plaatsen. Maar hier ben je natuurlijk vrij in wat je kiest als behuizing. Om mijn raspberry pi, breadboard en powerbank een beetje stevig vast te leggen heb ik gebruik gemaakt van sterke velcro.

Step 7: Code

Er moeten 3 codes upgeload worden:

  • De Arduino code deze zet je op je Arduino.
  • De DHT.h folder deze library moet je toevoegen aan je Arduino
  • De code van mijn website

Step 8: Afgewerkt

Picture of Afgewerkt

Na het installeren van de code zal je een compleet afgewerkt project hebben. Je zal dus op een website de momentele temperatuur, luchtvochtigheid en neerslag kunnen weergeven.

Comments

Swansong (author)2017-07-04

Thanks for sharing :)

About This Instructable

54views

0favorites

License:

More by bjarne98:Mini Weerstation Met Flask En MySQL
Add instructable to: