Inhoudsopgave:

Grafisch weerstation: 7 stappen (met afbeeldingen)
Grafisch weerstation: 7 stappen (met afbeeldingen)

Video: Grafisch weerstation: 7 stappen (met afbeeldingen)

Video: Grafisch weerstation: 7 stappen (met afbeeldingen)
Video: Hoe kan in eigen afbeeldingen in het tuinontwerp zetten? (Ontwerpen op maat) 2024, November
Anonim
Grafisch weerstation
Grafisch weerstation

Altijd al een grafisch weerstation willen hebben? En met nauwkeurige sensoren? Misschien is dit project iets voor jou. Met dit weerstation kun je zien wat het weer doet. Temperaturen kunnen bijvoorbeeld stijgen of dalen. Van een normale thermometer is het niet mogelijk om de temperatuurgeschiedenis te zien. Met dit weerstation heb je een geschiedenis van 26 uur, weergegeven op meer dan 320 pixels van een TFT-scherm. Elke 5 minuten wordt er een pixel aan de grafiek toegevoegd waarmee u kunt zien of deze een stijgende of dalende trend heeft. Dit wordt gedaan voor temperatuur, luchtvochtigheid, luchtdruk en CO2 in verschillende kleuren. Buitentemperatuur is ook draadloos inbegrepen. Op deze manier kunt u het weer "voorspellen" op basis van wat de luchtdruk doet.

Normale weerstations hebben sensoren die soms onnauwkeurig zijn. Voor temperatuur hebben ze bijvoorbeeld normaal een nauwkeurigheid van +/- 2 graden. Voor dit weerstation worden nauwkeurigere sensoren gebruikt. De HDC1080 temperatuursensor heeft wel een nauwkeurigheid van +/- 0,2 graden wat veel beter is. Hetzelfde geldt voor luchtvochtigheid en luchtdruk.

Bovenaan het TFT-display worden de metingen van de sensoren elke 5 seconden weergegeven en ververst. Deze metingen zijn ook beschikbaar via RS232.

Belangrijkste kenmerken:

  • Grafieken in verschillende kleuren voor het herkennen van trends
  • Nauwkeurige sensoren voor temperatuur, vochtigheid en luchtdruk.
  • Fabriekskalibratiegegevens en sensortemperatuur worden waar mogelijk afgelezen van sensoren en toegepast op code om de meest nauwkeurige metingen te krijgen.
  • Temperaturen zijn beschikbaar in Celsius (standaard) of Fahrenheit.
  • Buitentemperatuur via draadloze module (optioneel)
  • RS232-interface voor bewaking op afstand.
  • Mooi klein design (zelfs mijn vrouw tolereert het in onze woonkamer;-)

Ik hoop dat u net als ik zult genieten van het bekijken van de weersomstandigheden!

Stap 1: Onderdelen

Onderdelen
Onderdelen
Onderdelen
Onderdelen
Onderdelen
Onderdelen

1 x TFT-module 2,8 inch zonder aanraakscherm ILI9341 Drive IC 240 (RGB) * 320 SPI-interface

1 x Microchip 18f26k22 microcontroller 28-PIN PDIP

1 x HDC1080-module, GY-213V-HDC1080 Digitale vochtigheidssensor met hoge nauwkeurigheid en temperatuursensor

1 x GY-63 MS5611 Hoge-resolutie Atmosferische Hoogte Sensor Module IIC/SPI

1 x MH-Z19 infrarood co2-sensor voor co2-monitor

1 x (optioneel) NRF24L01+PA+LNA draadloze modules (met antenne)

1 x 5V naar 3,3V DC-DC step-down voeding Buck-module AMS1117 800MA

1 x Keramische condensator 100nF

2 x acrylplaat 6 * 12 cm dikte 5 mm of 100 * 100 mm dikte 2 mm;

1 x micro-USB-connector 5-pins zitting Jack Micro usb DIP4-poten Vier poten Plaatsingsplaat zitting mini-usb-connector

1 x zwarte universele Android-telefoon Micro USB EU-stekker Travel AC-wandladeradapter voor Android-telefoons

1 x PCB dubbelzijdig.

Sommige M3 nylon afstandhouders/schroeven

-

Voor buitentemperatuur (optioneel)

1 x Microchip 16f886 microcontroller 28-pins PDIP

1 x Waterdichte DS18b20 temperatuursensor temperatuursensor Roestvrijstalen pakket -100cm draad

1 x 4k7 weerstand

1 x NRF24L01+ draadloze module

1 x Keramische condensator 100nF

1 x prototype PCB breadboard

1 x 85x58x33mm waterdichte doorzichtige kunststof behuizing voor elektronische kabelprojectdoos

1 x plastic batterijhouder opbergdooshouder met draadgeleiders voor 2 x AA 3.0V 2AA

2 x AA-batterij

Stap 2: PCB

PCB
PCB
PCB
PCB
PCB
PCB

Ik gebruikte een dubbelzijdige PCB voor dit project. De Gerber-bestanden zijn beschikbaar. Deze print past aan de achterkant van het TFT-scherm. De temperatuursensor is aan de achterkant gemonteerd om opwarming van het circuit te voorkomen. Sluit de NRF24L01+ op de volgende manier aan op de microcontroller:

pin 2 - CSN van NRF24L01+

pin 8 – GND van NRF24L01+

pin 9 - CE van NRF24L01+

pin 22 - SCK van NRF24L01+

pin 23 - MISO van NRF24L01+

pin 24 - MOSI van NRF24L01+

pin 20 – VCC van NRF24L01+

n.c - IRQ van NRF24L01+

Stap 3: Buitentemperatuur

Buitentemperatuur
Buitentemperatuur
Buitentemperatuur
Buitentemperatuur

De 16f886 microcontroller wordt gebruikt om de DS18B20 temperatuursensor elke 5 minuten uit te lezen. Deze temperatuur wordt verzonden via de NRF24L01+ draadloze module. Een prototype PCB-breadboard is hier voldoende. Gebruik de volgende pinconfiguratie van de microcontroller:

pin 2 - CSN van NRF24L01+

pin 8 - GND

pin 9 - CE van NRF24L01+

pin 14 - SCK van NRF24L01+

pin 15 - MISO van NRF24L01+

pin 16 - MOSI van NRF24L01+

pin 20 - +3 volt van de AA batterijen

pin 21 - IRQ van NRF24L01+

pin 22 - DS18B20-gegevens (gebruik 4k7-weerstand als pull-up)

Stap 4: RS232-uitgang

RS232-uitgang
RS232-uitgang

Elke 5 seconden worden de metingen geleverd via RS232 op pin 27 (9600 baud). U kunt deze interface op uw computer aansluiten en een terminalprogramma (bijv. Putty) gebruiken om de gegevens op te halen. Hiermee kunt u de metingen voor andere doeleinden gebruiken.

Stap 5: Coderen

Code
Code
Code
Code

De sensoren die in dit project worden gebruikt, gebruiken verschillende interfaces van de 18f26k22-microcontroller. Zo wordt de eerste seriële interface gebruikt door de MH-Z19 CO2-sensor. Deze interface is ingesteld op 9600 baud. De tweede seriële interface van deze microcontroller wordt gebruikt om elke 5 seconden de sensormetingen op pin 27 te leveren, zodat u deze kunt aansluiten op uw computer (ook ingesteld op 9600 baud). De HDC1080 temperatuur-/vochtigheidssensor en MS5611 luchtdruksensor werken op de i2c-interface. Het TFT-display en de NRF24L01+ draadloze module werken op dezelfde SPI-interface geconfigureerd op 8 Mhz. De 18f26k22-microcontroller zelf is ingesteld op 64 Mhz. Standaard zijn de temperaturen in Celsius. Door pin 21 met massa te verbinden krijg je de temperaturen in Fahrenheit. Met dank aan Achim Döbler voor zijn µGUI grafische bibliotheek en Harry W (1and0) voor zijn 64bit-oplossing.

De microcontroller 16f886 wordt gebruikt voor het meten van de buitentemperatuur. De DS18B20 temperatuursensor wordt elke 5 minuten uitgelezen (hier wordt een ééndraads protocol gebruikt) en verzonden met de SPI-interface via de NRF24L01+ draadloze module. Meestal staat deze microcontroller in de energiebesparende modus om batterijen te sparen. Natuurlijk worden ook negatieve temperaturen ondersteund. Als deze buitentemperatuurfunctie niet wordt gebruikt, verschijnt deze niet op het TFT-scherm en is dus optioneel.

Voor het programmeren van de 18f26k22 en 16f886 microcontrollers heb je een pickit3 programmer nodig. U kunt de gratis Microchip IPE programmeersoftware gebruiken (vergeet niet VDD in te stellen op 3,0 volt en het selectievakje "Power Target Circuit from Tool" bij "ICSP Options" in het menu "Power" aan te vinken).

Stap 6: Timelaps-vertoning

Image
Image

Een timelaps-impressie van hoe ongeveer 15 uur weermonitoring eruitziet. De witte waas op het display is er in werkelijkheid niet.

  • In rood de binnentemperatuur
  • In oranje de buitentemperatuur
  • In blauw de vochtigheid
  • In groen de luchtdruk
  • In geel de co2

Stap 7: Geniet ervan

Geniet van dit project!!

Maar principieel is het volkomen verkeerd om te proberen een theorie te baseren op alleen waarneembare grootheden. In werkelijkheid gebeurt precies het tegenovergestelde. Het is de theorie die bepaalt wat we kunnen waarnemen.

~ Albert Einstein in natuurkunde en verder van Werner Heisenberg p. 63

Aanbevolen: