Indholdsfortegnelse:

Gem Arduino Sensordata i MYsql ved hjælp af behandling: 6 trin
Gem Arduino Sensordata i MYsql ved hjælp af behandling: 6 trin

Video: Gem Arduino Sensordata i MYsql ved hjælp af behandling: 6 trin

Video: Gem Arduino Sensordata i MYsql ved hjælp af behandling: 6 trin
Video: 🔴How to send sensor Data from Arduino UNO to MySQL Server(PHPMYADMIN) Offline (No internet)? 2024, November
Anonim
Gem Arduino Sensordata til MYsql ved hjælp af behandling
Gem Arduino Sensordata til MYsql ved hjælp af behandling

Det er ærligt talt svært at gemme Arduino -data direkte til MySQL, så i afhængighed af Arduino IDE brugte jeg Processing IDE, der ligner Arduino IDE, men med meget forskellig brug, og du kan kode det i java.

Bemærk: Kør ikke Arduino seriel skærm, mens du kører behandlingskode, fordi der opstår portkonflikt, da begge skal bruge den samme port

Du mangler:

  1. Arduino Uno/Mega eller klon
  2. Wamp server
  3. Behandler IDE 2.2.1 (brug ikke større end det)
  4. BezierSQLib-0.2.0 bibliotek til behandling (downloadlink herunder)
  5. sensor (jeg brugte LDR og LM35 til at måle lys og temperatur)

Trin 1: Indstilling af Arduino

Indstilling af Arduino
Indstilling af Arduino

Brænd nedenstående simple demokode til arduino, der fungerer som afsender., ugyldig opsætning () {Serial.begin (9600); }

hulrum ()

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

Trin 2: Opsætning af MySQL

Opsætning af MySQL
Opsætning af MySQL
  1. Installer Wamp -server til MySQL, og konfigurer den til at gemme data
  2. Kør wamp server
  3. åbn MySQL -konsol
  4. vælg database
  5. Opret derefter tabellen til dine data

oprette tabeldata (sno int (4) auto_increment primær nøgle, LDR int (4), TEMP int (4));

brug desc dit_tabelnavn til at vise tabeloplysninger

desc data;

Det er alt for DB nu kan vi gå til behandling …

Trin 3: Opsætning af Processing IDE

Opsætning af behandling af IDE
Opsætning af behandling af IDE
  1. Download og installer Processing IDE 2.2.1
  2. Uddrag det ovenstående givne ZIP til MyDocuments/Processing/Libraries
  3. Åbn nu behandlings -IDE, og kontroller, at biblioteket er installeret korrekt eller ikke som i ovenstående billede
  4. Kopier derefter nedenstående kode til behandling og navngiv den selv

/* ARDUINO TIL MYSQL GENNEM BEHANDLING Læs serielle meddelelser fra Arduino, og skriv det derefter i MySQL. Forfatter: J. V. JohnsonSelva September 2016 */

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

import behandling. serie.*; // importer det serielle bibliotek

MySQL msql; // Opret MySQL -objekt

String a; int ende = 10; // tallet 10 er ASCII for linefeed (slut på serial.println), senere vil vi kigge efter dette for at opdele individuelle meddelelser String serial; // erklære en ny streng kaldet 'seriel'. En streng er en sekvens af tegn (datatype kendt som "char") Seriel port; // Seriel port, dette er en ny forekomst af Serial -klassen (et objekt)

ugyldig opsætning () {

Stringbruger = "root"; Stringpass = ""; String database = "iot_database"; msql = ny MySQL (denne, "localhost", database, bruger, pas); port = ny Serial (denne, Serial.list () [0], 9600); // initialisere objektet ved at tildele en port og baudrate (skal matche Arduino) port.clear (); // funktion fra serielt bibliotek, der kaster den første læsning ud, hvis vi begyndte at læse midt i en streng fra Arduino serial = port.readStringUntil (ende); // funktion, der læser strengen fra seriel port indtil en println og derefter tildeler streng til vores strengvariabel (kaldet 'seriel') serial = null; // i første omgang vil strengen være null (tom)}

ugyldig trækning ()

{while (port.available ()> 0) {// så længe der kommer data fra seriel port, skal du læse den og gemme den serial = port.readStringUntil (end); } hvis (seriel! = null) {// hvis strengen ikke er tom, skal du udskrive følgende // Bemærk: Opdelingsfunktionen, der bruges nedenfor, er ikke nødvendig, hvis du kun sender en enkelt variabel. Det er imidlertid nyttigt til parsing (adskillelse) af meddelelser, når // læser fra flere input i Arduino. Nedenfor er eksempelkode for en Arduino -skitse a = split (seriel, ','); // en ny matrix (kaldet 'a'), der gemmer værdier i separate celler (adskilt med kommaer angivet i dit Arduino -program) println (a [0]); // udskriv LDR -værdi println (a [1]); // udskriv LM35 -værdifunktion (); }}

void -funktion ()

{if (msql.connect ()) {msql.query ("indsæt i data (LDR, Temp) værdier ("+a [0]+","+a [1]+")"); } andet {// forbindelsen mislykkedes! } msql.close (); // Skal lukke MySQL -forbindelse efter udførelse}

Trin 4: Udførelse af programmet

Udførelse af programmet
Udførelse af programmet

Kør programmet ved at klikke på kør -knappen, ikke luk popup -vinduet lukning stopper udførelsen og forespørgsel nedenfor for at se lagrede data i MySQL …

vælg * fra data;

Brug nedenstående forespørgsel for at se antallet af indsatte data.

vælg antal (*) fra data;

Trin 5: Konklusion

Jeg vil gerne takke dig, fordi du læste min tutorial. Jeg ville sætte pris på, hvis du syntes det var nyttigt og slippe et like (favorit) eller spørge mig om noget, da det holder mig motiveret til at lave disse instruktioner. stil gerne de spørgsmål, du har brug for at vide …

Glad kodning Arduino …

Anbefalede: