Inhaltsverzeichnis:

GreenHouse-Sensor - Gunook
GreenHouse-Sensor - Gunook

Video: GreenHouse-Sensor - Gunook

Video: GreenHouse-Sensor - Gunook
Video: Automating a Greenhouse with LoRa! (Part 1) || Sensors (Temperature, Humidity, Soil Moisture) 2024, November
Anonim
GreenHouse-Sensor
GreenHouse-Sensor

Tutorial GreenHouse-Sensor

Realisiert von Alain Wei mit Unterstützung von Pascal Chencaptors | sigfox | ubidots

  1. Ziele
  2. In diesem Projekt verwendete Dinge
  3. Implementierungsschritt
  4. Arbeitsprinzip
  5. Geräteanschluss
  6. Der mbed-Code
  7. Datenverarbeitung und -analyse
  8. Optimieren Sie den Systemverbrauch
  9. Fotos

Schritt 1: Ziele

Für dieses Projekt möchte ich ein autonomes Energiesystem realisieren, und ich muss messen: die Umgebungstemperatur der Luft, die Luftfeuchtigkeit, die Temperatur des Bodens, die Luftfeuchtigkeit des Bodens, Lux und RGB-Helligkeit.

Schritt 2: In diesem Projekt verwendete Dinge

In diesem Projekt verwendete Dinge
In diesem Projekt verwendete Dinge
In diesem Projekt verwendete Dinge
In diesem Projekt verwendete Dinge
In diesem Projekt verwendete Dinge
In diesem Projekt verwendete Dinge

Stückliste:

1) Solarkomponente: eine dünne Harzschicht ermöglicht den Einsatz im Freien

2) Chip LiPo Rider Pro: Laden Sie alle Ihre Projekte in 5 V. auf

3) Chip-Mikrocontroller Nucleo STM 32L432KC: bietet Benutzern eine kostengünstige und flexible Möglichkeit, neue Ideen auszuprobieren und Prototypen mit jeder STM32-Mikrocontroller-Linie zu bauen

4) Modul Sigfox Wisol: zum Entwerfen Ihres IOT-Prototyps mit Sigfox-Netzwerken

5) Bildschirm-LCD: Es wird über den I2C- oder SPI-Bus mit einem Mikrocontroller verbunden

6) Li-Ion-Akku 3, 7V 1050mAh: Schutz vor Überlastung und Entladung.

7) Schwerkraft-Feuchtigkeitssensor SEN0193: Kennen Sie die Wasserkonzentration im Boden. Der Sensor liefert abhängig vom Wassergehalt eine analoge Spannung.

8) Temperatur- und Feuchtigkeitssensor DHT22: kennt die Temperatur und Feuchtigkeit der Luft und kommuniziert mit einem Mikrocontroller vom Arduino-Typ oder kompatibel über einen digitalen Ausgang.

9) Grove-Temperatursensor: Kennen Sie die Bodentemperatur, und dieses Modul ist über ein mitgeliefertes 4-adriges Kabel mit einem digitalen Eingang von Grove Base Shield oder Mega Shield verbunden

10) Farbsensor ADA1334: Erkennt die Farbe einer Lichtquelle oder eines Objekts. Es kommuniziert über einen I2C-Port

11) Lichtsensor TSL2561: Messen Sie eine Helligkeit von 0,1 bis 40000 Lux. Es kommuniziert über den I2C-Bus mit einem Arduino-Mikrocontroller.

Software:

1) SolidWorks (Volumenmodell konstruieren)

2) Malen Sie 3d (entwerfen Sie das Symbol der Anwendung)

3) Altium (die Platine zeichnen)

4) Mbed (Code für Karte schreiben)

Schritt 3: Implementierungsschritt

Nachdem wir das Material und die Software kennen, die wir verwenden werden, gibt es eine Reihe von Schritten, die wir realisieren sollten

1) wir sollten die Schaltung mit Altium simulieren

2) Wir sollten einige Konstruktionsaufgaben erledigen, zum Beispiel: Solid-Modell mit SolidWorks entwerfen, Anwendungssymbol mit Paint 3d entwerfen

3) Wenn die Schaltung korrekt ist, können wir die Schaltung auf der Platine mit den Materialien, die wir bereits vorbereitet haben, realisieren

4) Nach dem Anschließen des Stromkreises sollten wir die Komponente schweißen und die Qualität des Stromkreises testen

5) Am Ende sollten wir die Schaltung mit dem bereits fertiggestellten soliden Modell verpacken

Schritt 4: Arbeitsprinzip

Kapazitiver Bodenfeuchtigkeitssensor SKU: Setzen Sie ihn in den Boden um Ihre Pflanzen ein und beeindrucken Sie Ihre Freunde mit Echtzeit-Bodenfeuchtigkeitsdaten

Temperatur- und Feuchtigkeitssensor DHT11 ST052: Schließen Sie den Sensor an die Pins auf der Platine an. Farbsensor ADA1334: verfügt über RGB- und Clear-Light-Sensorelemente. Ein auf dem Chip integrierter und an den farbempfindlichen Fotodioden lokalisierter IR-Sperrfilter minimiert die IR-Spektralkomponente des einfallenden Lichts und ermöglicht genaue Farbmessungen.

Grove-Temperatursensor: Setzen Sie ihn in den Boden um Ihre Pflanzen ein. Das digitale Thermometer DS18B20 bietet 9-Bit- bis 12-Bit-Celsius-Temperaturmessungen und verfügt über eine Alarmfunktion mit nichtflüchtigen, benutzerprogrammierbaren oberen und unteren Triggerpunkten.

LichtsensorTSL2561: Der Sensor verfügt über eine digitale (i2c) Schnittstelle. Sie können eine von drei Adressen auswählen, sodass Sie bis zu drei Sensoren auf einer Platine haben können, jeder mit einer anderen i2c-Adresse. Der eingebaute ADC bedeutet, dass Sie dies mit jedem Mikrocontroller verwenden können, auch wenn er keine analogen Eingänge hat.

1) Verwenden der Sensoren zum Sammeln von Daten

2) Die Daten werden an den Mikrocontroller übertragen

3) Der Mikrocontroller führt das bereits geschriebene Programm aus und überträgt die Daten an das Modul Sigfox Wisol

4) Das Modul Sigfox Wisol überträgt die Daten über die Antenne an das Sigfox-Backend der Website

Schritt 5: Geräteverbindung

Geräteverbindung
Geräteverbindung

SPIPreInit gSpi(D11, NC, D13); // MOSI MISO CLK

Adafruit_SSD1306_Spi gOled(gSpi, D10, D4, D3); // DC RST CS

Serielles Wisol (USBTX, USBRX); // tx(A2), rx(A7)

DHT dht22(A5, DHT::DHT22); // analog

TSL2561_I2C Lum(D0, D1); // sda, scl

TCS3472_I2C rgbc(D12, A6); // sda, scl

AnalogIn-Feuchtigkeit (A1); // analog

DS1820-Sonde (A0); // analog

DigitalIn-Flag (D6); // Bildschirmsteuerung für Umschalter

Schritt 6: Der Mbed-Code

Den mbed-Code finden Sie dort:

Schritt 7: Datenverarbeitung und -analyse

Datenverarbeitung und -analyse
Datenverarbeitung und -analyse

Nach dem Senden von Daten an die Website Sigfox, da Sigfox jede Nachricht auf maximal 12 Bytes (96 Bits) beschränkt, haben wir verschiedene Messungen unterschiedlichen Bytegrößen zugewiesen und die Daten auf hexadezimal gesetzt. Um den Nutzern einen übersichtlicheren und bequemeren Empfang von Daten zu ermöglichen, senden wir die Daten von Sigfox an die Cloud-Plattform, auf der Cloud-Plattform präsentieren wir die Daten und analysieren sie. Der Umsetzungsprozess ist wie folgt:

1) Registrieren Sie unsere Geräte bei der Cloud-Plattform

2) Rufen Sie die Website der Sigfox-Geräte-Callback-Edition auf

3) Parameterkonfiguration einstellen

4) Fügen Sie einen Kontolink für das Gerät auf der Cloud-Plattform in das URL-Muster ein (rufen Sie die Serveradresse zurück)

5) Füllen Sie den callbackBody (den Informationskörper für die Rückrufanfrage) aus.

6) Einstellungen speichern

Das Bild zeigt das Ergebnis auf der Plattform Ubidots, wir können sehen, dass die Daten in Dezimalzahlen umgewandelt werden, damit wir die Daten klarer und bequemer erhalten, und wir können uns das Diagramm der einzelnen Daten im Detail ansehen, zum Beispiel: Wir können die höchsten finden Temperatur in der Luft

Schritt 8: Optimieren Sie den Verbrauch des Systems

Optimieren Sie den Verbrauch des Systems
Optimieren Sie den Verbrauch des Systems
Optimieren Sie den Verbrauch des Systems
Optimieren Sie den Verbrauch des Systems
Optimieren Sie den Verbrauch des Systems
Optimieren Sie den Verbrauch des Systems

Es gibt einen Regler zwischen Mini-USB und Vin in der MCU, dieser Regler erhöht den Verlust, um den Verlust unseres Systems zu minimieren, speisen wir den Mikrocontroller vom digitalen Ausgang, und wenn wir das System nicht verwenden, machen wir den Mikrocontroller Sensoren schlafen. Wir beweisen, dass diese beiden Methoden den Verlust effektiv reduzieren können:

1) Fügen Sie einen Widerstand zwischen dem Mikrocontroller und dem Generator hinzu

2) Finden Sie den Strom durch den Widerstand auf dem Oszilloskop

3) Bringen Sie die Sensoren in den Ruhezustand und stellen Sie den Strom durch den Widerstand des Oszilloskops wieder her

4) Versetzen Sie den Mikrocontroller in den Ruhezustand und stellen Sie den Strom durch den Widerstand des Oszilloskops wieder her. Unsere experimentellen Ergebnisse sind wie folgt:

Wir stellen fest, dass der Systemverlust minimiert wird, wenn wir den Mikrocontroller in den Ruhezustand versetzen. Und wenn der Mikrocontroller aufgeweckt wird, können die Sensoren Daten sammeln und an Sigfox senden. Aber es gibt ein Problem, wenn wir den Mikrocontroller in den Ruhezustand versetzen, gibt es immer noch Strom zwischen MCU und Sensoren. Wie kann dieser Strom beseitigt werden? Mit Mosfet verbinden wir das Gate mit dem digitalen Ausgang der MCU, wir verbinden den Drain mit den Sensoren und wir verbinden die Source mit dem Pin von 3, 3 V der MCU. Wenn die Gate-Spannung kleiner als Vgs (Gate-Schwellenspannung) ist, gibt es die Sperre zwischen Source und Drain, am Ende der Sensoren liegt keine Spannung an. Wenn wir also den Mikrocontroller in den Ruhezustand versetzen, müssen wir sicherstellen, dass die Gate-Spannung kleiner als Vgs ist, und wenn die MCU funktioniert, sollte die Gate-Spannung größer als Vgs sein.