Sommario:

Registra dati e traccia un grafico online utilizzando NodeMCU, MySQL, PHP e Chartjs.org: 4 passaggi
Registra dati e traccia un grafico online utilizzando NodeMCU, MySQL, PHP e Chartjs.org: 4 passaggi

Video: Registra dati e traccia un grafico online utilizzando NodeMCU, MySQL, PHP e Chartjs.org: 4 passaggi

Video: Registra dati e traccia un grafico online utilizzando NodeMCU, MySQL, PHP e Chartjs.org: 4 passaggi
Video: Snap4City Overview per le pubbliche amministrazioni 2024, Dicembre
Anonim
Registra dati e traccia un grafico online utilizzando NodeMCU, MySQL, PHP e Chartjs.org
Registra dati e traccia un grafico online utilizzando NodeMCU, MySQL, PHP e Chartjs.org
Registra dati e traccia un grafico online utilizzando NodeMCU, MySQL, PHP e Chartjs.org
Registra dati e traccia un grafico online utilizzando NodeMCU, MySQL, PHP e Chartjs.org

Questo Instructable descrive come possiamo utilizzare la scheda MCU Node per raccogliere dati da più sensori, inviare questi dati a un file PHP ospitato che quindi aggiunge i dati a un database MySQL. I dati possono quindi essere visualizzati online come un grafico, utilizzando chart.js.

Per questo progetto sarà richiesta una conoscenza di base di PHP e MySQL e sarà necessario accedere al web hosting con queste impostazioni per poter creare e visualizzare i propri grafici. Presumo anche che tu abbia una conoscenza di base dell'utilizzo della scheda MCU Node e del caricamento di schizzi su di essa. (Io uso l'IDE Arduino per questo)

Passaggio 1: costruire il circuito

Costruire il circuito
Costruire il circuito
Costruire il circuito
Costruire il circuito
Costruire il circuito
Costruire il circuito

Poiché l'MCU Node ha un solo pin analogico, utilizzeremo il multiplexing per poter leggere i dati da più sensori. (Un certo numero di istruzioni tratta questo concetto in modo più dettagliato, quindi non ne parlerò qui). In questo esempio ho usato due sensori (per luce e temperatura) ma puoi cambiarli con quello che vuoi e aggiungere altri sensori se necessario. Ho usato un resistore sensibile alla luce, un termistore, due diodi raddrizzatori, un resistore da 330 ohm e un resistore da 10K e alcuni ponticelli. Il diagramma Fritzing allegato mostra come sono tutti collegati sulla breadboard.

Passaggio 2: modifica e carica lo schizzo sul nodo MCU

Usa questo file.ino allegato. Dovrai modificarlo con il nome e la password della tua rete WiFi in modo che l'MCU del nodo possa connettersi alla tua rete.

Nella parte inferiore di questo schizzo la riga 'delay(60000);' fornisce un minuto di ritardo tra le letture del sensore, ma questo può essere regolato in base alle proprie esigenze. Tuttavia, consiglierei di lasciare almeno 10 secondi per consentire la connessione al file "updater.php" ogni volta.

Dovrai anche modificare il percorso in cui ospiterai i due file.php e i due file javascript richiesti. Puoi scaricarli nel passaggio successivo.

Passaggio 3: database e file Web

Crea il tuo database MySql. Crea una tabella chiamata 'temp_light' (puoi cambiarla ma dovrai modificare i due file php per riflettere eventuali modifiche apportate). Assegna alla tabella quattro campi. Un campo di incremento automatico primario. Un campo intero chiamato 'temp', un campo intero chiamato 'light' e un campo chiamato 'date_time' che sarà un timestamp e il valore predefinito 'CURRENT_TIMESTAMP'

Ora scarica il file.zip allegato e scompattalo. Questo ti darà due file php e una cartella chiamata "scripts" che contiene file.js che ho ottenuto da chartjs.org. I due file.js non devono essere modificati e la cartella "scripts" dovrebbe essere ospitata nella stessa posizione dei tuoi due file php. i due file php dovranno essere entrambi modificati con il proprio nome database, password e host I. P. indirizzo.

Nel file index.php vedrai la riga 50: $adjusted_temp=($temp*0.0623);

Questo calcolo serve a convertire la lettura della temperatura il più vicino possibile ai gradi centigradi ed è stato ottenuto per tentativi ed errori e quasi certamente dovrà essere modificato per adattarsi al proprio sensore di temperatura.

Ora ospita entrambi i file php e la cartella "script" contenente i due file.js tutti insieme nella stessa directory. Naviga in quella directory e dovresti vedere il tuo grafico con i dati inviati dalla tua scheda Node MCU.

Passaggio 4: il risultato finale

Inizialmente ho realizzato questo progetto circa due anni fa, ma fino ad ora non ero mai riuscito a scrivere un istruibile per questo. Puoi vedere il grafico creato dal mio test qui:

Il grande picco nel grafico è il punto in cui il sole splendeva attraverso la finestra sui due sensori e il lento declino era di nuovo mentre il sole lentamente scompariva dalla vista.

Consigliato: