Sadržaj:

Spremite podatke senzora Arduino u MYsql pomoću obrade: 6 koraka
Spremite podatke senzora Arduino u MYsql pomoću obrade: 6 koraka

Video: Spremite podatke senzora Arduino u MYsql pomoću obrade: 6 koraka

Video: Spremite podatke senzora Arduino u MYsql pomoću obrade: 6 koraka
Video: Измерение 5A-30A переменного и постоянного тока с использованием ACS712 с библиотекой Robojax 2024, Juli
Anonim
Spremite podatke senzora Arduino u MYsql pomoću obrade
Spremite podatke senzora Arduino u MYsql pomoću obrade

Iskreno, teško je pohraniti Arduino podatke u MySQL izravno, tako da sam u ovisnosti o Arduino IDE -u koristio Processing IDE koji je sličan Arduino IDE -u, ali s mnogo različite upotrebe i možete ga kodirati u javi.

Napomena: nemojte pokretati Arduino serijski monitor dok radite s kodom za obradu jer će doći do sukoba portova jer oboje moraju koristiti isti port

Ti trebas:

  1. Arduino Uno/Mega ili klon
  2. Wamp server
  3. Obrada IDE 2.2.1 (nemojte koristiti veće od toga)
  4. Biblioteka BezierSQLib-0.2.0 za obradu (veza za preuzimanje ispod)
  5. senzor (koristio sam LDR i LM35 za mjerenje svjetlosti i temperature)

Korak 1: Postavljanje Arduina

Postavljanje Arduina
Postavljanje Arduina

Snimite donji jednostavni demo kôd na arduino koji će djelovati kao pošiljatelj., 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); }

Korak 2: Postavljanje MySQL -a

Postavljanje MySQL -a
Postavljanje MySQL -a
  1. Instalirajte Wamp server za MySQL i konfigurirajte ga za pohranu podataka
  2. Pokrenite wamp server
  3. otvorite MySQL konzolu
  4. odaberite bazu podataka
  5. Zatim kreirajte tablicu za svoje podatke

kreirati podatke tablice (sno int (4) primarni ključ auto_increment, LDR int (4), TEMP int (4));

koristite desc your_table_name za prikaz detalja tablice

desc. podaci;

To je sve za DB. Sada možemo preći na obradu …

Korak 3: Postavljanje IDE -a za obradu

Postavljanje IDE -a za obradu
Postavljanje IDE -a za obradu
  1. Preuzmite i instalirajte IDE za obradu 2.2.1
  2. Raspakirajte gore navedeni ZIP u MyDocuments/Processing/Libraries
  3. Sada otvorite IDE za obradu i provjerite je li biblioteka ispravno instalirana ili nije kao na gornjoj slici
  4. Zatim kopirajte donji kôd u obradu i dajte mu svoje ime

/* ARDUINO U MYSQL KROZ OBRADU Čitajte serijske poruke iz Arduina, a zatim ih upišite u MySQL. Autor: J. V. JohnsonSelva rujan 2016. */

import de.bezier.data.sql.*; // uvoz MySQL biblioteke

import processing.serial.*; // uvoz Serijske biblioteke

MySQL msql; // Kreiranje MySQL objekta

String a; int kraj = 10; // broj 10 je ASCII za linefeed (kraj serial.println), kasnije ćemo to tražiti za razbijanje pojedinačnih poruka String serial; // deklariramo novi niz pod nazivom 'serijski'. Niz je niz znakova (tip podataka poznat kao "char") Serijski port; // serijski port, ovo je nova instanca klase Serial (Object)

void setup () {

String user = "root"; String pass = ""; String database = "iot_database"; msql = novi MySQL (ovaj, "localhost", baza podataka, korisnik, prolaz); port = novi serijski (ovaj, Serial.list () [0], 9600); // inicijalizacija objekta dodjeljivanjem porta i brzinom prijenosa (mora odgovarati onoj kod Arduina) port.clear (); // funkcija iz serijske biblioteke koja izbacuje prvo čitanje, u slučaju da smo počeli čitati usred niza iz Arduina serial = port.readStringUntil (kraj); // funkcija koja čita niz sa serijskog porta do println, a zatim dodjeljuje string našoj varijabli niza (zvanoj 'serijski') serial = null; // u početku će niz biti null (prazan)}

void draw ()

{while (port.available ()> 0) {// sve dok postoje podaci koji dolaze sa serijskog porta, pročitajte ih i spremite serial = port.readStringUntil (end); } if (serial! = null) {// ako niz nije prazan, ispišite sljedeće // Napomena: dolje navedena funkcija podjele nije potrebna ako se šalje samo jedna varijabla. Međutim, korisno je za raščlanjivanje (odvajanje) poruka pri čitanju s više ulaza u Arduinu. Ispod je primjer koda za Arduino skicu a = split (serijski, ','); // novi niz (nazvan 'a') koji sprema vrijednosti u zasebne ćelije (odvojene zarezima navedenim u vašem Arduino programu) println (a [0]); // ispisuje LDR vrijednost println (a [1]); // ispisuje LM35 vrijednost function (); }}

funkcija void ()

{if (msql.connect ()) {msql.query ("umetni u podatke (LDR, Temp) vrijednosti ("+a [0]+","+a [1]+")"); } else {// veza nije uspjela! } msql.close (); // Mora zatvoriti MySQL vezu nakon izvršenja}

Korak 4: Izvršavanje programa

Izvršavanje programa
Izvršavanje programa

Pokrenite program klikom na dugme Pokreni Ne zatvaraj skočni prozor. Zatvaranje skočnog prozora će zaustaviti izvršavanje i ispod upita za pregled pohranjenih podataka u MySQL -u …

odaberite * iz podataka;

Za prikaz broja umetnutih podataka upotrijebite donji upit.

odaberite count (*) iz podataka;

Korak 5: Zaključak

Želim vam zahvaliti što ste pročitali moj vodič. Bio bih vam zahvalan ako biste smatrali da je korisno i ostavite lajk (omiljeni) ili me pitajte bilo šta jer me to motivira da radim ove upute. slobodno postavljajte pitanja koja trebate znati …

Sretno kodiranje Arduina…

Preporučuje se: