Indholdsfortegnelse:

Log data og lav en graf online ved hjælp af NodeMCU, MySQL, PHP og Chartjs.org: 4 trin
Log data og lav en graf online ved hjælp af NodeMCU, MySQL, PHP og Chartjs.org: 4 trin

Video: Log data og lav en graf online ved hjælp af NodeMCU, MySQL, PHP og Chartjs.org: 4 trin

Video: Log data og lav en graf online ved hjælp af NodeMCU, MySQL, PHP og Chartjs.org: 4 trin
Video: Использование карты Micro SD и регистрация данных с Arduino | Пошаговый курс Arduino, урок 106 2024, Juli
Anonim
Log data og lav en graf online ved hjælp af NodeMCU, MySQL, PHP og Chartjs.org
Log data og lav en graf online ved hjælp af NodeMCU, MySQL, PHP og Chartjs.org
Log data og lav en graf online ved hjælp af NodeMCU, MySQL, PHP og Chartjs.org
Log data og lav en graf online ved hjælp af NodeMCU, MySQL, PHP og Chartjs.org

Denne instruktionsbog beskriver, hvordan vi kan bruge Node MCU -kortet til at indsamle data fra flere sensorer, sende disse data til en hostet PHP -fil, som derefter tilføjer dataene til en MySQL -database. Dataene kan derefter ses online som en graf ved hjælp af chart.js.

En grundlæggende viden om PHP og MySQL er påkrævet for dette projekt, og du skal have adgang til webhosting med disse opsætninger for at kunne oprette og se dine egne grafer. Jeg antager også, at du har grundlæggende viden om at bruge Node MCU -kortet og uploade skitser til det. (Jeg bruger Arduino IDE til dette)

Trin 1: Opbygning af kredsløbet

Bygger kredsløbet
Bygger kredsløbet
Bygger kredsløbet
Bygger kredsløbet
Bygger kredsløbet
Bygger kredsløbet

Da Node MCU kun har en analog pin, vil vi bruge multiplexing til at kunne læse data fra flere sensorer. (En række instrukser dækker dette koncept mere detaljeret, så jeg vil ikke gå ind på det her). I dette eksempel har jeg brugt to sensorer (til lys og temperatur), men du kan ændre disse til hvad du vil og tilføje flere sensorer, hvis det kræves. Jeg har brugt en lysfølsom modstand, en termistor, to ensretningsdioder, en 330 ohm modstand og en 10K modstand og et par springtråde. Det vedlagte Fritzing -diagram viser, hvordan disse alle er forbundet på brødbrættet.

Trin 2: Rediger og upload Sketch to Node MCU

Brug denne vedhæftede.ino -fil. Du bliver nødt til at redigere dette med dit eget WiFi -netværksnavn og adgangskode, så Node MCU kan oprette forbindelse til dit eget netværk.

I bunden af denne skitse står linjen 'forsinkelse (60000);' giver et minuts forsinkelse mellem sensoraflæsninger, men dette kan justeres, så det passer til dine egne krav. Jeg vil dog anbefale at forlade mindst 10 sekunder for at tillade forbindelse til filen 'updater.php' hver gang.

Du bliver også nødt til at redigere stien til, hvor du skal være vært for de to.php -filer og de to javascript -filer, der er nødvendige. Du kan downloade disse i det næste trin.

Trin 3: Database og webfiler

Opret din MySql -database. Opret en tabel kaldet 'temp_light' (du kan ændre dette, men skal redigere de to php -filer for at afspejle eventuelle ændringer, du foretager). Giv tabellen fire felter. Et primært automatisk stigningsfelt. Et heltalsfelt kaldet 'temp', et heltalsfelt kaldet 'light' og et felt kaldet 'date_time', som vil være et tidsstempel og standardværdien 'CURRENT_TIMESTAMP'

Download nu den vedhæftede.zip -fil, og pak den ud. Dette giver dig to php -filer og en mappe kaldet 'scripts', som indeholder.js -filer, som jeg fik fra chartjs.org. De to.js -filer skal ikke redigeres, og mappen 'scripts' skal være på samme sted som dine to php -filer. de to php -filer skal begge redigeres med dit eget databse navn, adgangskode og værts -I. P. adresse.

I filen index.php vil du se linje 50: $ justeret_temp = ($ temp*0,0623);

Denne beregning er at konvertere aflæsningen for temperatur til så tæt som jeg kunne få grader celsius og blev nået frem til ved forsøg og fejl og vil næsten helt sikkert blive nødt til at blive ændret, så den passer til din egen temperatursensor.

Vær nu vært for både php -filer og mappen 'scripts', der indeholder de to.js -filer samlet i det samme bibliotek. Gennemse dette bibliotek, og du bør se din egen graf med dataene, der er sendt fra dit Node MCU -kort.

Trin 4: Det færdige resultat

Jeg lavede oprindeligt dette projekt for omkring to år siden, men var aldrig nået til at skrive en instruerbar til det før nu. Du kan se grafen oprettet af min test her:

Den store stigning i grafen er, hvor solen skinnede gennem vinduet på de to sensorer, og det langsomme fald igen var, da solen langsomt gik ud af syne.

Anbefalede: