Sommario:

Crea i miei grafici per i miei dati IOT su un Raspberry PI: 3 passaggi
Crea i miei grafici per i miei dati IOT su un Raspberry PI: 3 passaggi

Video: Crea i miei grafici per i miei dati IOT su un Raspberry PI: 3 passaggi

Video: Crea i miei grafici per i miei dati IOT su un Raspberry PI: 3 passaggi
Video: Raspberry Pi 5: Piccolo ma... INFIAMMABILE 😂 2024, Luglio
Anonim
Crea i miei grafici per i miei dati IOT su un Raspberry PI
Crea i miei grafici per i miei dati IOT su un Raspberry PI

Continua a leggere se vuoi essere in grado di creare i tuoi grafici IOT utilizzando 7 righe di codice.

Volevo creare grafici per visualizzare i dati in formato grafico dai miei sensori IOT su una pagina web. In precedenza, per questo, avevo utilizzato servizi di terze parti (alcuni a pagamento) e funzioni grafiche di terze parti per il mio sistema di database - Mysql, utilizzando un linguaggio di programmazione noto come Php. Ho trovato questi servizi di terze parti troppo difficili o troppo costosi da implementare. Pertanto, ho scritto la mia semplice funzione Php che prende i dati come array da un file di testo o da una tabella di database (forse da Mysql) e li visualizza come un grafico a linee su una pagina web. Ho reso disponibile tutto il codice php su github - https://github.com/scanos/php-simple-chart. Ho anche incluso parte del codice qui - il primo file php - PhpSimpleChart2.php - contiene il file della funzione del grafico a linee, l'altro, PhpSimpleChart_ex1.php, è un file di esempio che mostra come utilizzarlo. Ti suggerisco di visitare anche la pagina github per ottenere gli aggiornamenti del codice.

Lo sto implementando sul mio Raspberry Pi. Ecco cosa ti serve:

1) Alcune conoscenze sulla distribuzione di un server Web come Apache, un database come Mysql e PHP. Collettivamente, questi sono conosciuti come LAMP - Linux, Apache, Mysql e PHP. e c'è un'enorme quantità di informazioni sul web riguardo alla distribuzione di questi su un Raspberry Pi. Pertanto, non tratterò questo qui.

2) Un ambiente Linux LAMP - di nuovo, come Raspberry Pi.

3) Un mezzo per caricare e creare file nel tuo ambiente web, ovvero le cartelle sul tuo Raspberry Pi in cui distribuisci i file php del tuo programma.

Successivamente, ti mostrerò come creare i tuoi file Php usando i due file php a cui ho accennato prima.

Passaggio 1: il codice della funzione PHP - PhpSimpleChart2.php

Il codice della funzione PHP - PhpSimpleChart2.php
Il codice della funzione PHP - PhpSimpleChart2.php

Questo file si chiama PhpSimpleChart2.php - dovrai scaricarlo dal repository git facendo clic sul pulsante download / clone - vedi l'immagine sopra. Dopo averlo fatto, trasferisci i due file php sul tuo server web usando il tuo client FTP standard o forse hai impostato una condivisione samba sul tuo Raspberry Pi che fa sembrare le tue cartelle Pi come cartelle di Windows.

Non hai davvero bisogno di cambiare il codice in questo file Php principale - PhpSimpleChart2.php. Questa è una semplice funzione di creazione di grafici a linee per Php. Fondamentalmente, alla funzione vengono passati 2 array e altri argomenti come le dimensioni del grafico. Il primo array contiene i primi valori grezzi come la temperatura ecc. Il secondo array contiene i valori di data associati. Il programma cerca di ridimensionare automaticamente il grafico in base all'intervallo, al minimo, al massimo e agli elementi dell'array. Il grafico risultante può essere tagliato e incollato in documenti MS Office come gif, png, ecc. Qui è mostrato un esempio di gif.

Dopo aver caricato PhpSimpleChart2.php sul tuo server web, puoi scrivere il tuo script per usarlo. Questo è mostrato nella pagina successiva.

Passaggio 2: scrivere il proprio programma in base al programma di esempio

Scrivere il proprio programma in base al programma di esempio
Scrivere il proprio programma in base al programma di esempio

Ho mostrato un programma di esempio, PhpSimpleChart_ex1.php che è di nuovo nel repository git. La prima riga del codice è chiamare lo script php che contiene la funzione di creazione di grafici -

require("PhpSimpleChart2.php");

In questo caso, il file PhpSimpleChart2.php si trova nella stessa cartella dello script che stai scrivendo per chiamarlo. Si spera che tu sappia che i file php devono avere le proprietà di lettura/scrittura corrette 755.

Successivamente, è necessario creare le origini dati e popolare l'array. Ecco gli array di esempio, uno per i dati e uno per le date e le ore associate. Ovviamente, deve esserci lo stesso numero di valori in entrambi gli array.

$array_dati = array("12", "15", "18", "12", "11", "23", "11", "24", "15", "18", "12", " 11", "23", "11", "24");

$array_data = array("12h 14", "12th 15h", "12th 16h", "12th 17h", "12th 18h", "12th 19h", "12th 20h", "12th 21h", "12th 15h", "12a 16", "12a 17", "12a 18", "12a 19", "12a 20", "12a 21");

In genere, leggeresti questi valori da una query di database o li caricheresti da un file di testo.

Successivamente, devi impostare i parametri per il tuo grafico. È piuttosto semplice. Si impostano prima i titoli e poi si fissa l'altezza e la larghezza del grafico.

$chart_text="Il mio grafico di prova luglio 2018";

$y_title="Temp Gradi C";

$x_scale=1000;

$y_scale=400;

Quindi fai una chiamata di funzione come segue.

draw_line_chart($ data_array, $date_array, $chart_text, $x_scale, $y_scale, $y_title);

Ho mostrato l'output di questo programma di esempio nell'immagine allegata. La funzione di creazione di grafici tenta di ridimensionare automaticamente ed evitare l'ingombro dell'asse y e dei punti del descrittore del grafico. Spero che funzioni per te. Questo è tutto ciò di cui hai bisogno.

Passaggio 3: conclusione

Spero che tu l'abbia trovato utile. Potresti utilizzare un altro metodo che funziona per te, ma qui ci sono comunque alcuni pensieri;

1) La maggior parte dei servizi grafici IOT di terze parti opera come un servizio online accessibile solitamente come API.

2) Gli utenti IOT hanno una vasta gamma di competenze per quanto riguarda l'implementazione di funzionalità grafiche.

PRO della mia soluzione

a) Può operare offline

b) Costo zero.

c) Ingombro ridotto

CONTRO

a) Non testato con lo stesso rigore delle grandi software house.

b) Funzionalità limitate, ovvero nessun grafico a barre, ecc.

Cibo per la mente!

Consigliato: