Innehållsförteckning:

Spara Arduino Sensordata till MYsql med bearbetning: 6 steg
Spara Arduino Sensordata till MYsql med bearbetning: 6 steg

Video: Spara Arduino Sensordata till MYsql med bearbetning: 6 steg

Video: Spara Arduino Sensordata till MYsql med bearbetning: 6 steg
Video: SIE558 2016 Temperature Sensor Data Processing in a Dorm 2024, November
Anonim
Spara Arduino Sensordata till MYsql med bearbetning
Spara Arduino Sensordata till MYsql med bearbetning

Ärligt talat är det svårt att lagra Arduino -data direkt till MySQL så att jag i beroende av Arduino IDE använde Processing IDE som liknar Arduino IDE men med många olika användningsområden och du kan koda det i java.

Obs! Kör inte Arduino seriell bildskärm medan du kör bearbetningskoden eftersom portkonflikt uppstår eftersom båda måste använda samma port

Du behöver:

  1. Arduino Uno/Mega eller klon
  2. Wamp -server
  3. Bearbetar IDE 2.2.1 (använd inte större än så)
  4. BezierSQLib-0.2.0 bibliotek för bearbetning (nedladdningslänk nedan)
  5. sensor (jag använde LDR och LM35 för att mäta ljus och temperatur)

Steg 1: Inställning av Arduino

Inställning Arduino
Inställning Arduino

Bränn den enkla demokoden nedan till arduino som fungerar som avsändare., void setup () {Serial.begin (9600); }

void loop ()

{int i = 0, j = 0; i = analogRead (A0); j = analogRead (A1); Serial.print (i); Serial.print (","); Serial.println (i); }

Steg 2: Konfigurera MySQL

Konfigurera MySQL
Konfigurera MySQL
  1. Installera Wamp -server för MySQL och konfigurera den för att lagra data
  2. Kör wamp -server
  3. öppna MySQL -konsolen
  4. välj databas
  5. Skapa sedan tabellen för dina data

skapa tabelldata (sno int (4) primärnyckel auto_increment, LDR int (4), TEMP int (4));

använd desc your_table_name för att visa tabelldetaljer

desc data;

Det är allt för DB nu kan vi gå vidare till bearbetning …

Steg 3: Konfigurera Processing IDE

Konfigurera Processing IDE
Konfigurera Processing IDE
  1. Ladda ner och installera Processing IDE 2.2.1
  2. Extrahera ovanstående ZIP till MyDocuments/Processing/Libraries
  3. Öppna nu bearbetning IDE och kontrollera att biblioteket är installerat korrekt eller inte som i bilden ovan
  4. Kopiera sedan koden nedan till bearbetningen och ge den din egen namn

/* ARDUINO TILL MYSQL GENOM BEHANDLING Läs seriemeddelanden från Arduino och skriv det sedan i MySQL. Författare: J. V. JohnsonSelva september 2016 */

import de.bezier.data.sql.*; // importera MySQL -biblioteket

import bearbetning. serie.*; // importera det seriella biblioteket

MySQL msql; // Skapa MySQL -objekt

Sträng a; int slut = 10; // siffran 10 är ASCII för linefeed (slutet av serial.println), senare kommer vi att leta efter detta för att bryta upp enskilda meddelanden String serial; // deklarera en ny sträng som heter 'seriell'. En sträng är en sekvens av tecken (datatyp kallad "char") Seriell port; // Seriell port, detta är en ny instans av serieklassen (ett objekt)

void setup () {

String user = "root"; Strängpass = ""; Stringdatabas = "iot_database"; msql = ny MySQL (detta, "localhost", databas, användare, pass); port = new Serial (this, Serial.list () [0], 9600); // initiera objektet genom att tilldela en port och överföringshastighet (måste matcha Arduino) port.clear (); // funktion från seriellt bibliotek som slänger ut den första läsningen, ifall vi började läsa i mitten av en sträng från Arduino serial = port.readStringUntil (end); // funktion som läser strängen från seriell port tills en println och sedan tilldelar sträng till vår strängvariabel (kallad 'seriell') serial = null; // initialt kommer strängen att vara null (tom)}

void draw ()

{while (port.available ()> 0) {// så länge det kommer data från seriell port, läs den och lagra den serial = port.readStringUntil (end); } if (seriell! = null) {// om strängen inte är tom, skriv ut följande // Obs! Delningsfunktionen som används nedan är inte nödvändig om du bara skickar en enda variabel. Det är dock användbart för att analysera (separera) meddelanden när // läser från flera ingångar i Arduino. Nedan finns exempelkod för en Arduino -skiss a = split (seriell, ','); // en ny array (kallad 'a') som lagrar värden i separata celler (separerade med kommatecken som anges i ditt Arduino -program) println (a [0]); // skriv ut LDR -värde println (a [1]); // skriv ut LM35 -värdefunktion (); }}

void -funktion ()

{if (msql.connect ()) {msql.query ("infoga i data (LDR, Temp) värden ("+a [0]+","+a [1]+")"); } annat {// anslutning misslyckades! } msql.close (); // Måste stänga MySQL -anslutning efter körning}

Steg 4: Kör programmet

Utför programmet
Utför programmet

Kör programmet genom att klicka på kör -knappen, stäng inte popup -fönstret, stängningen avbryter körningen och frågan nedan för att visa lagrad data i MySQL …

välj * från data;

För att se antalet infogade data, använd nedanstående fråga.

välj antal (*) från data;

Steg 5: Slutsats

Jag vill tacka dig för att du läste min handledning. Jag skulle uppskatta om du tyckte att det var användbart och släpp en gilla (favorit) eller fråga mig något eftersom det håller mig motiverad att göra dessa instruktioner. ställ gärna frågor som du behöver veta …

Glad kodning Arduino …

Rekommenderad: