Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Manufacturing Technology >> Productieproces

SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw

Onderdelen en benodigdheden

Arduino MKR GSM 14001
SORACOM Air Global IoT SIM1
Arduino MKR MEM Shield1
GY21 Temperatuur en Vochtigheid1
Adafruit SI1145 UV Lichtsensor1
SparkFun Bodemvocht Sensor (met schroefklemmen)1
Adafruit Waterdichte DS18B20 Digitale temperatuursensor1
Jumper wires (standaard)1

Benodigde tools en machines

  • Soldeerbout (standaard)

Over dit project

Overzicht

Landbouwgrond is een kostbare hulpbron, noodzakelijk voor het voortbestaan van de moderne samenleving. Maar er zijn zoveel uitdagingen in de landbouw: u moet de temperatuur, vochtigheid en zonlicht goed hebben voor de gewas, en daarna moet u ervoor zorgen dat niets het gewas vernietigt.

Het concept slimme landbouw heeft in de afgelopen jaren vorm gekregen: het idee om de staat van uw gewas op afstand in de gaten te houden. Maar deze revolutie in de landbouw komt met een hoge prijs: de meeste beschikbare systemen zijn te duur om te implementeren op kleine boerderijen en de systemen dekken mogelijk geen grote boerderijen.

SmartAgro heeft als doel een netwerk van apparaten te creëren, gemakkelijk te gebruiken, die op het te monitoren veld kunnen worden geplaatst. De apparaten verzamelen atmosferische data, bodemgerelateerde parameters en lichtwaarden, en sturen alle data naar de cloud waar het op een dashboard wordt gepresenteerd.

Dit stelt elke boerderij, elke grootte, in staat om in de nieuwe leeftijd van de landbouw te treden, door een schaalbare vloot apparaten over hun land te implementeren die ze kunnen waarschuwen als een droogte nadert.

Video

Afbeelding

SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw

Functionaliteit

SmartAgro stelt de gebruiker in staat om eenvoudig een vloot apparaten op het te monitoren veld te implementeren. Deze apparaten nemen metingen van de sensoren op gedefinieerde tijdstippen.

De data wordt vervolgens gelogd naar een .csv-bestand op een SD-kaart en naar de backend verzonden waar de data gevisualiseerd wordt op een dashboard. Het project bestaat uit een front-end en een backend.

Front-End

De front-end van het project verwijst naar de fysieke apparaten die op het veld worden geplaatst. Deze apparaten nemen monsters van data van hun sensoren, schrijven ze naar een SD-kaart en sturen de data naar de backend. Hieronder volgt een functionaliteitsoverzicht van het project.

SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw

Een MKR GSM wordt gebruikt voor de front-end, het apparaat verzamelt de data en stuurt deze naar Soracom, waar het gevisualiseerd wordt. Hieronder zijn de stappen die het apparaat onderneemt bij het verzamelen van data.

SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw

SD-kaart

Het apparaat logt de data verkregen van de sensoren naar de SD-kaart die eraan bevestigd is. De data wordt toegevoegd aan een .csv-bestand dat daarna gedownload kan worden.

In de setup zoekt het apparaat of er een .csv-bestand beschikbaar is om naar te schrijven en voegt eraan toe als het al bestaat. Het maakt een nieuw bestand aan als er geen bestaat. Hieronder zijn enkele afbeeldingen van het bestand.

SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw

Batterij

Het apparaat kan op meerdere manieren gevoed worden. Het kan gevoed worden door een LiPo-batterij via de aangeleverde poort op het apparaat, door een powerbank of door een batterij aan te sluiten via de VIN-poort op het apparaat.

De levensduur van het apparaat hangt sterk af van de kracht van de batterij. Het apparaat gaat in slaapmodus tussen metingen om zoveel mogelijk energie te besparen.

Data Verzenden

De data wordt naar Soracom gestuurd via een GSM-verbinding naar de server. De data wordt verzonden als een JSON-payload. Deze data wordt dan ontvangen door de backend en verwerkt. Hieronder is een voorbeeld van de 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

De backend van de applicatie verwijst naar Soracom. De data wordt ontvangen door Soracom, verwerkt en vervolgens op het dashboard weergegeven.

SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw

Het Dashboard

Het dashboard voor het project wordt gehost op Soracom Lagoon. De data wordt ontvangen door Soracom Air in de backend, Soracom Harvest verzamelt de data en Lagoon bevraagt het vanuit Harvest.

De locatie van elk apparaat in de vloot en alle sensordata worden op het dashboard geplot. Hieronder zijn screenshots van het dashboard.

SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw

Alerts

De gebruiker kan de backend ook instellen om e-mailnotificaties te ontvangen als de UV-index of bodemvochtigheid die door het apparaat wordt gemeten, afwijkend is. Op deze manier weet de gebruiker of de gewassen aandacht nodig hebben.

Voordelen

De gebruiker die dit project uitvoert, heeft veel voordelen:

  • Data visualiseren onderweg op elk moment, overal met behulp van het dashboard.
  • Apparaten eenvoudig opschalen en als meerdere gebruiken.
  • Lagere kosten dan gebruikelijke oplossingen op de markt.

Het Project Bouwen

Stap 1: Benodigde Apparatuur

Dit project vereist een lijst van sensoren en andere materialen. De complete lijst met benodigde materialen is hieronder.

  • 1x Arduino MKR GSM
  • 1x Arduino MEM Shield
  • 1x GY-21 temperatuur- en vochtigheidsmodule
  • 1x Waterdichte temperatuursensor
  • 1x SI-1145 UV Lichtsensor
  • 1x Bodemvocht Sensor
  • 1x 2AA Batterijdoos (met batterijen) of een LiPo-batterij
  • 1x Soracom SIM-kaart
  • 1x SD-kaart
  • Jumper Wires
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw

Stap 2: De Schakeling Aansluiten

Een soldeerbout is nodig om alle componenten met elkaar te solderen. De schema's geïllustreerd in het Fritzing-bestand hieronder.

Onthoud om de MEM shield op het bord te bevestigen!

SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw

De MKR GSM voorbereiden

De Arduino MKR GSM moet worden voorbereid. Ik voedde het bord met 2 AA-batterijen via de VIN-poort. De stappen zijn hieronder.

SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw

Stap 3: De Code Begrijpen

Er zijn 4 hoofdafdelingen in de code die voor het project wordt gebruikt.

  • SD voorbereiden
  • Data verzamelen
  • Data naar SD schrijven
  • Data naar Soracom sturen

Al deze afdelingen worden hieronder beschreven en gedetailleerd.

SD Voorbereiden
bool createFile() { 
  // maak het .csv bestand op de SD-kaart
  Serial.println("Creating File");
  Serial.println(" OK - Creating and Opening File");
  File dataFile = SD.open("datalog.csv", FILE_WRITE);
  if(dataFile) {
    Serial.println(" OK - File Created");
    Serial.println(" OK - Appending Legend to File");
    Serial.print(" OK - Appending ");
    Serial.println(legend);
    dataFile.println(legend);
    dataFile.close();
    Serial.println(" Success - Data Appended");
  } else {
    Serial.println(" Error - File Not Detected");
    Serial.println(" OK - Trying Again in 5 seconds");
    Serial.println("________________________________________");
    Serial.println("");
    dataFile.close();
    delay(5000);
    return false;
  }
  Serial.println("________________________________________");
  Serial.println("");
  return true; 
}

void checkFile() {
  Serial.println("Checking .csv");
  Serial.println("________________________________________");
  Serial.println("Setting Up File");
  Serial.println(" OK - Checking for File Presence");
  if(SD.exists("datalog.csv")) // controleren of het .csv bestand al bestaat
  {
    // toevoegen aan bestaand bestand als het bestaat
    Serial.println(" OK - File Exists");
    Serial.println(" OK - Will Append to Existing File");
    Serial.println("________________________________________");
    Serial.println("");
  } else {
    // nieuw bestand aanmaken om naar toe te voegen
    Serial.println(" OK - File Not Present");
    Serial.println(" OK - Creating File");
    Serial.println("");
    while(!createFile()) {};
  }
}

De checkFile()-functie controleert of het .csv-bestand waar het apparaat naar toe moet schrijven bestaat. Als het bestand bestaat, eindigt de functie, anders roept het createFile() aan wat een nieuw .csv-bestand aanmaakt om naar toe te schrijven.

Data Verzamelen
void collectData() {
  Serial.println("Gathering Data");
  Serial.println("________________________________________");
  Serial.println("Getting Data from Sensors");
  Serial.println(" OK - Contacting all Sensors");
  // data verzamelen van alle sensoren
  soilSens.requestTemperatures();
  soilTemp = soilSens.getTempCByIndex(0);
  soilHumidity = analogRead(A1);
  soilHumidity = map(soilHumidity, 1023, 0, 0, 100);
  atmoTemp = gy21.readTemperature();
  atmoHumidity = gy21.readHumidity();
  visibleLight = uv.readVisible();
  irLight = uv.readIR();
  rawUVLight = uv.readUV();
  uvLight = (rawUVLight / 100);
  Serial.println(" OK - Data Collected");
  Serial.println(" OK - Dumping Data");
  Serial.print("[Light] Visible ");
  Serial.println(visibleLight);
  Serial.print("[Light] Infrared ");
  Serial.println(irLight);
  Serial.print("[Light] Ultraviolet ");
  Serial.println(uvLight);
  Serial.print("[Atmo] Temperature ");
  Serial.println(atmoTemp);
  Serial.print("[Atmo] Humidity ");
  Serial.println(atmoHumidity);
  Serial.print("[Soil] Temperature ");
  Serial.println(soilTemp);
  Serial.print("[Soil] Humidity ");
  Serial.println(soilHumidity);
  Serial.println(" Success - Data Dumped");
  Serial.println("________________________________________");
  Serial.println("");
}

Deze codesectie verzamelt data van alle sensoren aan boord. Het contacteert sensoren voor atmosferische temperatuur en vochtigheid, bodemvocht en temperatuur en UV-index, IR-lichtwaarde en zichtbaar licht.

Data Naar SD Schrijven
bool burnData(String data) {
  Serial.println("Burning Data");
  Serial.println("________________________________________");
  Serial.println("Burning Data to SD Card");
  Serial.println(" OK - Opening File");
  File dataFile = SD.open("datalog.csv", FILE_WRITE);
  if(dataFile) {
    Serial.println(" OK - File is Present");
    Serial.print(" OK - Appending ");
    Serial.println(data);
    Serial.println(" OK - Burning data");
    dataFile.println(data); // data naar de SD-kaart schrijven
    dataFile.close();
    Serial.println(" Success - Data Appended");
    Serial.println("________________________________________");
    Serial.println("");
  } else {
    Serial.println(" Error - File Not Present");
    Serial.println(" OK - Trying Again in 5 Second");
    Serial.println("________________________________________");
    Serial.println("");
    delay(5000);
  }
  Serial.println("");
}

Deze functie schrijft de data die eerder in een regel van een .csv-bestand is gecompileerd, naar de SD-kaart. De data wordt toegevoegd aan het bestand op de kaart.

Data Naar Soracom Sturen
void parseData(String dataToSend) {
  Serial.println("Sending Data");
  Serial.println("________________________________________");
  Serial.println("Sending Data to Soracom");
  Serial.println(" OK - Setting Up Connection");
  if(client.connect(url, 80)) // verbinding voorbereiden en verzenden formatteren
  {
    Serial.println(" OK - Connection Established, Parsing Data");
    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);
    Serial.println(" OK - Data Parsed");
  }
  Serial.println(" OK - Getting Responce");
  Serial.println("");
  // teruglezen van server
  while(1) {
    if(client.available()) {
      char c = client.read();
      Serial.print(c);
    }
    if(!client.connected()) {
      break;
    }
  }
  Serial.println(" Success - Data is Parsed");
  Serial.println("________________________________________");
  Serial.println("");
}

Ten slotte wordt de data naar Soracom gestuurd. Het apparaat maakt een verbinding met de server en bereidt de inloggegevens voor. De data wordt dan naar de server gestuurd en het antwoord wordt geprint naar de Seriële Monitor.

Het apparaat gaat daarna voor een gedefinieerde hoeveelheid tijd in slaap en herhaalt de stappen opnieuw.

Stap 4: Variabelen Instellen

Een paar variabelen moeten door de gebruiker worden bewerkt voordat het project gebruikt kan worden. De bewerkbare variabelen staan in het hoofdbestand van de code. Deze worden hieronder beschreven.

  • deviceName vertegenwoordigt de aangepaste naam van het apparaat. Deze wordt samen met de payload naar Soracom gestuurd, het is handig om apparaten te identificeren bij het beheren van een vloot apparaten.
  • sleepTime is de hoeveelheid tijd (in milliseconden) dat het apparaat zal slapen tussen metingen. Het apparaat gaat in slaapmodus tussen metingen om de batterijverbruik te reduceren.
  • proDebug wordt op true gezet bij debuggen en op false anders. Als proDebug ingeschakeld is, vereist het apparaat verbonden te zijn met een computer met de seriële monitor aan om te werken. Zet op true tijdens debuggen, maar zorg ervoor dat het op false staat als het in het veld staat. Let op dat het apparaat nog steeds naar de seriële poort print, zelfs als proDebug false is.

Stap 5: De SD-kaart Voorbereiden

De SD-kaart moet worden voorbereid voordat deze met het apparaat kan worden gebruikt. De SD-kaart moet geformatteerd zijn als FAT32. Volg de onderstaande stappen voor het voorbereiden van de SD-kaart.

SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw

Stap 6: De Code Uploaden

Voordat de backend ingesteld wordt, moet data naar haar gestuurd worden.

Om dit te doen, verbind uw MKR GSM met uw computer en upload de code naar het apparaat, zorg ervoor dat de modus van het apparaat ingesteld staat op 1 voor deze setup. Na het uploaden van de code, plaats alle sensoren in water.

Druk nu op de knop op het apparaat en wacht tot de data is verzameld en verstuurd. Herhaal dit een paar keer om Soracom Air te vullen.

Stap 7: Soracom Instellen

Deze stap is opgesplitst in 2 secties: de eerste behandelt het aanmaken van een account bij Soracom en het registreren van uw SIM, de andere behandelt het instellen van Soracom Harvest om de data van Air te verzamelen. Als u al een account bij Soracom heeft, sla de eerste sectie over.

Sectie 1: Account Aanmaken

SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw

Sectie 2: Groepen en Harvest

SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw

Stap 8: Soracom Lagoon Instellen

Het laatste wat op Soracom ingesteld moet worden is Lagoon, dit is het hulpmiddel dat we gebruiken om onze data te visualiseren en e-mailalerts te maken als de data niet goed is. Volg de onderstaande stappen.

SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw

Bibliotheken

  • ArduinoLowPower (c) 2016 Arduino LLC GNU Lesser General Public Licence - deze bibliotheek is in het publieke domein
  • MKRGSM (c) 2016 Arduino AG GNU Lesser General Public Licence - deze bibliotheek is in het publieke domein
  • Wire (c) 2006 Nicholas Zambetti GNU Lesser General Public Licence - deze bibliotheek is in het publieke domein
  • OneWire (c) 2007 Jim Studt GNU General Public Licence - deze bibliotheek is in het publieke domein
  • DallasTemperature GNU General Public Licence - deze bibliotheek is in het publieke domein
  • RTCZero (c) 2015 Arduino LLC GNU Lesser General Public Licence - deze bibliotheek is in het publieke domein
  • SPI (c) 2015 Hristo Gochkov Lesser GNU Lesser General Public Licence - deze bibliotheek is in het publieke domein
  • SD (C) 2010 SparkFun Electronics GNU General Public Licence - deze bibliotheek is in het publieke domein

Eindelijk

Ten slotte heb ik een behuizing voor het project ontworpen, het zou beter zijn als de bovenkant van de behuizing transparant zou zijn zodat de UV-sensor binnenin de behuizing kan worden geplaatst. Ik plaatste mijn sensor buiten de behuizing om eventuele interferentie te voorkomen.

SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw

Ten slotte, zorg ervoor dat alle variabelen ingesteld zijn en plaats het apparaat op het veld, het zou nu klaar moeten zijn om alle parameters te monitoren.

Een SD-kaart Module Gebruiken

Ik heb gekozen voor de Arduino MKR MEM shield omdat het gemakkelijk te gebruiken is en vrij compact. Een SD-kaartmodule kan ook worden gebruikt, hoewel de meeste met 5V werken terwijl de MKR GSM slechts 3.3V kan leveren, daarom is een level converter nodig om de 3.3V op te hogen naar 5V.

Achtergrond

Ik kwam op dit idee toen ik met de bus voorbij velden reed. Ik herinnerde me dat ik had gelezen over nieuwe apparaten die landbouwvelden monitoren, maar ik werd bewust van de kosten die meestal niet betaalbaar zijn voor boeren.

Dus ik besloot de goedkope Arduino te gebruiken om meerdere parameters op de boerderij te monitoren en elke boerderij, groot of klein, de stap in de IoT- en slimme landbouw te laten zetten.

SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw
SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw

Code

SmartAgro

De Complete Code

Schema's

SmartAgro: Geavanceerde IoT Oplossingen voor Precisielandbouw schematics_rrBJ3HiIfc.fzz

Productieproces

  1. Een Betaalbaar Draadloos Sensornetwerk Bouwen voor Uw Huis
  2. K30 CO2-sensor: Real-time binnenluchtkwaliteitmonitoring met Arduino
  3. Bouw een Digitale Lichaamslengtemeter: Je Lengte Meten met Arduino en Lasersensor
  4. Een eenvoudige obstakelsensor bouwen met Arduino – IR LED & Fotodiodo Tutorial
  5. Een DFRobot Capacitieve Vingerafdruksensor integreren met Arduino of ESP8266
  6. Bouw een Sensor Toren met Arduino Cloud: Temperatuur, Beweging & Gas Monitoring
  7. Slimme beweegactiverde waterpistool gebouwd met Arduino Nano
  8. Een PHP-webinterface bouwen om je Arduino Uno te besturen
  9. Compact Arduino Radarsysteem met HC-SR04 Ultrasonische Sensor & 1.8" Display
  10. Arduino Sensordata naar MySQL via PHPMyAdmin: Complete Handleiding
  11. Arduino Sensoren: Typen, Toepassingen en Real-World Projecten