Kazalo:

Zapisovanje podatkov in izdelava grafa na spletu z uporabo NodeMCU, MySQL, PHP in Chartjs.org: 4 koraki
Zapisovanje podatkov in izdelava grafa na spletu z uporabo NodeMCU, MySQL, PHP in Chartjs.org: 4 koraki

Video: Zapisovanje podatkov in izdelava grafa na spletu z uporabo NodeMCU, MySQL, PHP in Chartjs.org: 4 koraki

Video: Zapisovanje podatkov in izdelava grafa na spletu z uporabo NodeMCU, MySQL, PHP in Chartjs.org: 4 koraki
Video: 🚀 AMAZON 2.0 - ИНТЕРНЕТ МАГАЗИН с нуля за 6 часов [Next / React / Nest / PostgreSQL / Prisma / TS] 2024, November
Anonim
Zapisujte podatke in na spletu narišite graf z uporabo NodeMCU, MySQL, PHP in Chartjs.org
Zapisujte podatke in na spletu narišite graf z uporabo NodeMCU, MySQL, PHP in Chartjs.org
Zapisujte podatke in na spletu narišite graf z uporabo NodeMCU, MySQL, PHP in Chartjs.org
Zapisujte podatke in na spletu narišite graf z uporabo NodeMCU, MySQL, PHP in Chartjs.org

Ta Instructable opisuje, kako lahko uporabimo ploščo Node MCU za zbiranje podatkov iz več senzorjev, pošiljanje teh podatkov v gostujočo datoteko PHP, ki nato doda podatke v bazo podatkov MySQL. Podatke si lahko nato ogledate na spletu kot graf z uporabo chart.js.

Za ta projekt boste potrebovali osnovno znanje o PHP in MySQL, za njihovo ustvarjanje in ogled lastnih grafov pa boste potrebovali dostop do spletnega gostovanja. Predvidevam tudi, da imate osnovno znanje o uporabi plošče Node MCU in nalaganju skic nanjo. (Za to uporabljam Arduino IDE)

1. korak: Izdelava vezja

Gradnja vezja
Gradnja vezja
Gradnja vezja
Gradnja vezja
Gradnja vezja
Gradnja vezja

Ker ima Node MCU samo en analogni pin, bomo za branje podatkov iz več senzorjev uporabili multipleksiranje. (Več navodil podrobneje pokriva ta koncept, zato se tukaj ne bom spuščal v to). V tem primeru sem uporabil dva senzorja (za svetlobo in temperaturo), ki pa jih lahko spremenite na karkoli želite in po potrebi dodate več senzorjev. Uporabil sem svetlobno občutljiv upor, termistor, dve usmerniški diodi, 330 ohmski upor in 10K upor ter nekaj mostičnih žic. Na priloženem diagramu Fritzing je prikazano, kako so vsi povezani na mizo.

Korak: Uredite in naložite skico v MCU vozlišča

Uporabite priloženo datoteko.ino. To boste morali urediti z lastnim imenom omrežja WiFi in geslom, tako da se MCU vozlišča lahko poveže z vašim omrežjem.

Na dnu te skice vrstica 'zamuda (60000);' daje minuto zamika med odčitki senzorja, vendar ga je mogoče prilagoditi vašim zahtevam. Priporočam pa, da pustite vsaj 10 sekund, da omogočite povezavo z datoteko 'updater.php' vsakič.

Prav tako boste morali urediti pot do mesta, kjer boste gostili dve datoteki.php in dve datoteki javascript, ki sta potrebni. Te lahko prenesete v naslednjem koraku.

3. korak: zbirke podatkov in spletne datoteke

Ustvarite svojo podatkovno bazo MySql. Ustvarite tabelo z imenom 'temp_light' (to lahko spremenite, vendar boste morali dve datoteki php urediti tako, da odražata vse vaše spremembe). Tabeli podajte štiri polja. Primarno polje za samodejno povečanje. Celobrojno polje z imenom 'temp', celoštevilsko polje z imenom 'light' in polje z imenom 'date_time', ki bo časovni žig in privzeta vrednost 'CURRENT_TIMESTAMP'

Zdaj prenesite priloženo datoteko.zip in jo razpakirajte. Tako boste dobili dve datoteki php in mapo, imenovano "scripts", ki vsebuje datoteke.js, ki sem jih dobil iz chartjs.org. Dve datoteki.js ni treba urejati, mapo 'scripts' pa morate gostiti na istem mestu kot dve datoteki php. obe datoteki php bo treba urediti z lastnim imenom podatkovne zbirke podatkov, geslom in gostiteljskim I. P. naslov.

V datoteki index.php boste videli vrstico 50: $ Adjust_temp = ($ temp*0,0623);

Ta izračun je namenjen pretvorbi odčitavanja temperature v čim bližje stopinjam Celzija in je bil dosežen s poskusi in napakami, zato ga bo skoraj zagotovo treba spremeniti, da bo ustrezal vašemu temperaturnemu senzorju.

Zdaj gostite datoteke php in mapo 'scripts', ki vsebujeta dve datoteki.js skupaj v istem imeniku. Poiščite ta imenik in videli boste svoj graf s podatki, poslanimi z vaše plošče MCU Node.

4. korak: Končan rezultat

Ta projekt sem prvotno naredil pred približno dvema letoma, vendar se mi doslej še ni uspelo sklicevati na navodila. Graf, ki ga je ustvaril moj test, si lahko ogledate tukaj:

Velik trn na grafu je, kjer je sonce skozi okno posijalo na dva senzorja in počasi upadanje je bilo spet, ko je sonce počasi šlo izpred oči.

Priporočena: