Innholdsfortegnelse:

Logg data og tegne en graf online med NodeMCU, MySQL, PHP og Chartjs.org: 4 trinn
Logg data og tegne en graf online med NodeMCU, MySQL, PHP og Chartjs.org: 4 trinn

Video: Logg data og tegne en graf online med NodeMCU, MySQL, PHP og Chartjs.org: 4 trinn

Video: Logg data og tegne en graf online med NodeMCU, MySQL, PHP og Chartjs.org: 4 trinn
Video: EXCEL TUTORIAL-HOW TO DRAW MULTIPLE CURVE IN EXCEL 2024, Desember
Anonim
Logg data og tegne en graf online ved hjelp av NodeMCU, MySQL, PHP og Chartjs.org
Logg data og tegne en graf online ved hjelp av NodeMCU, MySQL, PHP og Chartjs.org
Logg data og tegne en graf online ved hjelp av NodeMCU, MySQL, PHP og Chartjs.org
Logg data og tegne en graf online ved hjelp av NodeMCU, MySQL, PHP og Chartjs.org

Denne instruksjonsboken beskriver hvordan vi kan bruke Node MCU -kortet til å samle inn data fra flere sensorer, sende disse dataene til en hostet PHP -fil som deretter legger dataene til en MySQL -database. Dataene kan deretter sees på nettet som en graf, ved hjelp av chart.js.

En grunnleggende kunnskap om PHP og MySQL vil være nødvendig for dette prosjektet, og du trenger tilgang til webhotell med disse oppsettene for å kunne lage og se dine egne grafer. Jeg antar også at du har grunnleggende kunnskap om å bruke Node MCU -kortet og laste opp skisser til det. (Jeg bruker Arduino IDE til dette)

Trinn 1: Bygg kretsen

Bygg kretsen
Bygg kretsen
Bygg kretsen
Bygg kretsen
Bygg kretsen
Bygg kretsen

Siden Node MCU bare har en analog pin, vil vi bruke multipleksing for å kunne lese data fra flere sensorer. (En rekke instrukser dekker dette konseptet mer detaljert, så jeg vil ikke gå inn på det her). I dette eksemplet har jeg brukt to sensorer (for lys og temperatur), men du kan endre disse til hva du vil og legge til flere sensorer om nødvendig. Jeg har brukt en lysfølsom motstand, en termistor, to likeretterdioder, en 330 ohm motstand og en 10K motstand og noen få hoppetråder. Det vedlagte Fritzing -diagrammet viser hvordan disse alle er koblet sammen på brødbrettet.

Trinn 2: Rediger og last opp Sketch to Node MCU

Bruk denne vedlagte.ino -filen. Du må redigere dette med ditt eget WiFi -nettverksnavn og passord slik at Node MCU kan koble til ditt eget nettverk.

Nederst i denne skissen står linjen 'forsinkelse (60000);' gir et minutt forsinkelse mellom sensoravlesninger, men dette kan justeres for å passe dine egne krav. Jeg vil anbefale å forlate minst 10 sekunder for å tillate tilkobling til filen 'updater.php' hver gang.

Du må også redigere banen der du skal være vert for de to.php -filene og de to javascript -filene som kreves. Du kan laste dem ned i neste trinn.

Trinn 3: Database og webfiler

Lag MySql -databasen din. Lag en tabell kalt 'temp_light' (du kan endre dette, men du må redigere de to php -filene for å gjenspeile eventuelle endringer du gjør). Gi tabellen fire felt. Et primært automatisk økningsfelt. Et heltallsfelt kalt 'temp', et heltallsfelt kalt 'light' og et felt kalt 'date_time' som vil være et tidsstempel og standardverdi 'CURRENT_TIMESTAMP'

Last ned den vedlagte zip -filen og pakk den ut. Dette vil gi deg to php -filer og en mappe kalt 'scripts' som inneholder.js -filer som jeg fikk fra chartjs.org. De to.js -filene trenger ikke å redigeres, og mappen 'skript' bør ligge på samme sted som de to php -filene. de to php -filene må begge redigeres med ditt eget databsenavn, passord og verts -I. P. adresse.

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

Denne beregningen er å konvertere avlesningen for temperatur til så nær jeg kunne få grader celsius og ble oppnådd ved prøving og feiling og må nesten helt sikkert endres for å passe din egen temperatursensor.

Vær nå vert for både php -filer og 'scripts' -mappen som inneholder de to.js -filene alle i samme katalog. Bla til den katalogen, og du bør se din egen graf med dataene som er sendt fra Node MCU -kortet.

Trinn 4: Det ferdige resultatet

Jeg opprinnelig laget dette prosjektet for rundt to år siden, men hadde aldri klart å skrive instruksjoner for det før nå. Du kan se grafen som ble opprettet av testen min her:

Den store piggen i grafen er hvor solen skinte gjennom vinduet på de to sensorene og den sakte nedgangen igjen var da solen sakte gikk ut av syne.

Anbefalt: