Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Herstellungsprozess

SmartAgro: Fortschrittliche IoT-Lösungen für Precision Farming

Komponenten und Materialien

Arduino MKR GSM 1400×1
SORACOM Air Global IoT SIM×1
Arduino MKR MEM Shield×1
GY-21 Temperatur- und Feuchtigkeitssensor×1
Adafruit SI1145 UV-Lichtsensor×1
SparkFun Bodenfeuchtesensor (mit Schraubklemmen)×1
Adafruit Wasserdichter DS18B20 Digitaler Temperatursensor×1
Jumper-Kabel×1

Benötigte Werkzeuge und Maschinen

Über dieses Projekt

Überblick

Ackerland ist eine kostbare Ressource, die für das Überleben der modernen Gesellschaft unverzichtbar ist. Doch die Landwirtschaft steht vor vielen Herausforderungen: Temperatur, Luftfeuchtigkeit und Sonneneinstrahlung müssen für die Kulturpflanze stimmen, und man muss sicherstellen, dass nichts die Ernte vernichtet.

Das Konzept des Smart Farming hat in den letzten Jahren Gestalt angenommen – die Idee, den Zustand der Felder ferngesteuert zu überwachen. Doch diese Revolution hat ihren Preis: Die meisten verfügbaren Systeme sind zu teuer für kleine Betriebe und decken große Flächen oft nicht ab.

SmartAgro will ein Netzwerk von Geräten schaffen, die einfach auf dem zu überwachenden Feld platziert werden können. Die Geräte erfassen atmosphärische Daten, Bodenparameter und Lichtwerte und senden alle Daten in die Cloud, wo sie auf einem Dashboard visualisiert werden.

So kann jeder Betrieb – unabhängig von der Größe – in das neue Zeitalter der Landwirtschaft eintreten und eine skalierbare Flotte von Geräten über sein Land verteilen, die z. B. vor drohender Dürre warnen.

SmartAgro: Fortschrittliche IoT-Lösungen für Precision Farming
SmartAgro: Fortschrittliche IoT-Lösungen für Precision Farming

Funktionalität

SmartAgro ermöglicht dem Anwender, eine Flotte von Geräten auf dem Feld einfach zu implementieren. Diese Geräte nehmen in definierten Zeitintervallen Proben von ihren Sensoren.

Die Daten werden auf einer SD-Karte in einer CSV-Datei protokolliert und an das Backend gesendet, wo sie auf einem Dashboard visualisiert werden. Das Projekt besteht aus Frontend (physikalische Geräte) und Backend.

Frontend

Das Frontend sind die physischen Geräte auf dem Feld. Sie erfassen Sensordaten, schreiben sie auf die SD-Karte und senden sie an das Backend.

SmartAgro: Fortschrittliche IoT-Lösungen für Precision Farming

Ein MKR GSM wird für das Frontend verwendet. Das Gerät sammelt Daten und sendet sie an Soracom, wo sie visualisiert werden. Die Schritte bei der Datenerfassung:

SmartAgro: Fortschrittliche IoT-Lösungen für Precision Farming

SD-Karte

Das Gerät loggt die Sensordaten in eine CSV-Datei auf der SD-Karte. Die Daten werden angehängt; falls die Datei nicht existiert, wird sie neu erstellt.

SmartAgro: Fortschrittliche IoT-Lösungen für Precision Farming

Batterie

Das Gerät kann über LiPo-Akku (Buchse am Board), Powerbank oder über den VIN-Pin mit Strom versorgt werden. Die Lebensdauer hängt stark von der Batteriekapazität ab. Zwischen den Messungen geht das Gerät in den Sleep-Mode, um Energie zu sparen.

Datensendung

Die Daten werden per GSM-Verbindung als JSON-Payload an Soracom gesendet. Beispiel-Payload:

{
  "Latitude": 53.3570404,
  "Longitude": -6.2609935,
  "soilTemp": 20.56,
  "soilHumidity": 40,
  "atmoTemp": 22.12,
  "atmoHumidity": 62,
  "uvLight": 0.00,
  "irLight": 257,
  "deviceName": "device1"
}

Backend

Das Backend ist Soracom. Die Daten werden von Soracom empfangen, verarbeitet und auf dem Dashboard dargestellt.

SmartAgro: Fortschrittliche IoT-Lösungen für Precision Farming

Dashboard

Das Dashboard wird auf Soracom Lagoon gehostet. Soracom Air empfängt die Daten, Soracom Harvest sammelt sie, und Lagoon fragt sie aus Harvest ab. Standort jedes Geräts und alle Sensordaten werden auf dem Dashboard geplottet.

SmartAgro: Fortschrittliche IoT-Lösungen für Precision Farming
SmartAgro: Fortschrittliche IoT-Lösungen für Precision Farming

Alerts

Der Benutzer kann E-Mail-Benachrichtigungen einrichten, wenn UV-Index oder Bodenfeuchte abnormale Werte zeigen. So erfährt man rechtzeitig, wenn die Pflanzen Aufmerksamkeit benötigen.

Vorteile

Projektaufbau

Schritt 1: Benötigte Hardware

SmartAgro: Fortschrittliche IoT-Lösungen für Precision Farming

Schritt 2: Schaltung aufbauen

Ein Lötkolben wird benötigt, um alle Komponenten zu verlöten. Das Schaltbild ist in der Fritzing-Datei unten dargestellt. Vergessen Sie nicht, das MEM Shield auf das Board zu stecken!

SmartAgro: Fortschrittliche IoT-Lösungen für Precision Farming

MKR GSM vorbereiten

Ich versorgte das Board über den VIN-Pin mit 2 AA-Batterien. Die Schritte sind in den Bildern dokumentiert.

SmartAgro: Fortschrittliche IoT-Lösungen für Precision Farming

Schritt 3: Code verstehen

Der Code gliedert sich in vier Hauptbereiche:

SD-Karte vorbereiten

bool createFile() {
  Serial.println("Creating File");
  File dataFile = SD.open("datalog.csv", FILE_WRITE);
  if (dataFile) {
    Serial.println("OK - File Created");
    dataFile.println(legend);
    dataFile.close();
    return true;
  } else {
    Serial.println("Error - File Not Detected");
    delay(5000);
    return false;
  }
}
void checkFile() {
  if (SD.exists("datalog.csv")) {
    Serial.println("OK - File Exists, Will Append");
  } else {
    while (!createFile()) {}
  }
}

Daten sammeln

void collectData() {
  soilSens.requestTemperatures();
  soilTemp = soilSens.getTempCByIndex(0);
  soilHumidity = map(analogRead(A1), 1023, 0, 0, 100);
  atmoTemp = gy21.readTemperature();
  atmoHumidity = gy21.readHumidity();
  visibleLight = uv.readVisible();
  irLight = uv.readIR();
  uvLight = uv.readUV() / 100.0;
}

Daten auf SD-Karte brennen

bool burnData(String data) {
  File dataFile = SD.open("datalog.csv", FILE_WRITE);
  if (dataFile) {
    dataFile.println(data);
    dataFile.close();
    return true;
  }
  delay(5000);
  return false;
}

Daten an Soracom senden

void parseData(String dataToSend) {
  if (client.connect(url, 80)) {
    client.println("POST / HTTP/1.1");
    client.println("Host: harvest.soracom.io");
    client.println("User-Agent: Arduino/1.0");
    client.println("Connection: close");
    client.print("Content-Length: ");
    client.println(dataToSend.length());
    client.println();
    client.println(dataToSend);
  }
  // Response lesen...
}

Danach geht das Gerät für eine definierte Zeit in den Sleep-Mode und wiederholt den Zyklus.

Schritt 4: Variablen einstellen

Schritt 5: SD-Karte vorbereiten

Die SD-Karte muss als FAT32 formatiert werden. (Bilder zeigen die Schritte unter Windows.)

Schritt 6: Code hochladen

MKR GSM mit Computer verbinden, Code hochladen (Modus auf 1 setzen). Alle Sensoren in Wasser tauchen, Taste drücken und auf Datensendung warten. Mehrmals wiederholen, um Soracom Air zu füllen.

Schritt 7: Soracom einrichten

Zwei Abschnitte: (1) Konto erstellen & SIM registrieren, (2) Soracom Harvest für Datensammlung einrichten. Falls Sie bereits ein Soracom-Konto haben, Abschnitt 1 überspringen.

Abschnitt 1: Konto erstellen – Screenshots zeigen den Registrierungsprozess.

Abschnitt 2: Gruppen & Harvest – Screenshots zeigen die Konfiguration von Gruppen und Harvest.

Schritt 8: Soracom Lagoon einrichten

Lagoon ist das Visualisierungstool. Damit erstellen wir Dashboards und E-Mail-Alerts bei abnormalen Werten. Screenshots zeigen die Einrichtung.

Bibliotheken

Abschluss

Ich habe ein Gehäuse entworfen; idealerweise ist der Deckel transparent, damit der UV-Sensor innen Platz findet. Ich habe meinen Sensor außen platziert, um Interferenzen zu vermeiden.

SmartAgro: Fortschrittliche IoT-Lösungen für Precision Farming
SmartAgro: Fortschrittliche IoT-Lösungen für Precision Farming

Verwendung eines SD-Kartenmoduls

Ich nutzte das Arduino MKR MEM Shield, da es kompakt und einfach ist. Ein SD-Kartenmodul geht auch, aber die meisten arbeiten mit 5 V, während der MKR GSM nur 3,3 V liefert – ein Level-Shifter wäre nötig.

Hintergrund

Die Idee kam mir bei einer Busfahrt an Feldern vorbei. Ich hatte von teuren Überwachungssystemen gelesen, die sich Landwirte oft nicht leisten können. Also entschied ich mich, den kostengünstigen Arduino für die Überwachung mehrerer Parameter einzusetzen – damit jeder Betrieb, groß oder klein, in das IoT- und Smart-Farming-Zeitalter eintreten kann.

SmartAgro: Fortschrittliche IoT-Lösungen für Precision Farming

Code

SmartAgro – Vollständiger Code

(Der vollständige Code ist im Originalartikel verlinkt.)

Schaltpläne

SmartAgro: Fortschrittliche IoT-Lösungen für Precision Farming

schematics_rrBJ3HiIfc.fzz

Herstellungsprozess

  1. Arduino-Sensoren: Typen, Anwendungen und reale Projekte
  2. Günstiges drahtloses Sensornetzwerk für Zuhause selbst bauen
  3. K30 CO₂-Sensor: Echtzeit-Luftqualitätsmessung mit Arduino
  4. Digitales Stadiometer bauen: Körpergröße messen mit Arduino & Lasersensor VL53L0X
  5. Einfachen Hindernissensor mit Arduino bauen – IR-LED & Photodiode Tutorial
  6. DFRobot Kapazitiver Fingerabdrucksensor mit Arduino oder ESP8266 einbinden
  7. Sensorturm mit Arduino Cloud: Temperatur, Bewegung & Gase überwachen
  8. Intelligente, bewegungsaktivierte Wasserpistole mit Arduino Nano
  9. PHP-Webinterface zur Steuerung des Arduino Uno – Komplettanleitung
  10. Kompaktes Arduino-Radar mit HC-SR04 Ultraschallsensor & 1,8″ Display