Tabla de contenido:

Crear mis propios gráficos para mis datos de IOT en una Raspberry PI: 3 pasos
Crear mis propios gráficos para mis datos de IOT en una Raspberry PI: 3 pasos

Video: Crear mis propios gráficos para mis datos de IOT en una Raspberry PI: 3 pasos

Video: Crear mis propios gráficos para mis datos de IOT en una Raspberry PI: 3 pasos
Video: ESP32 - Raspberry Pi 4 (Protocolo MQTT - Internet of things IOT) 2024, Noviembre
Anonim
Crear mis propios gráficos para mis datos IOT en un Raspberry PI
Crear mis propios gráficos para mis datos IOT en un Raspberry PI

Siga leyendo si desea poder crear sus propios gráficos IOT utilizando 7 líneas de código.

Quería crear gráficos para mostrar datos en un formato gráfico de mis sensores IOT en una página web. Anteriormente, para esto, había usado servicios de terceros (algunos pagos) y funciones de gráficos de terceros para mi sistema de base de datos, Mysql, usando un lenguaje de programación conocido como Php. Encontré estos servicios de terceros demasiado difíciles o demasiado costosos de implementar. Por lo tanto, he escrito mi propia función Php simple que toma datos como matrices de un archivo de texto o tabla de base de datos (quizás de Mysql) y los muestra como un gráfico de líneas en una página web. He hecho que todo el código php esté disponible en github: https://github.com/scanos/php-simple-chart. También he incluido parte del código aquí: el primer archivo php, PhpSimpleChart2.php, contiene el archivo de función de gráfico de líneas, el otro, PhpSimpleChart_ex1.php, es un archivo de ejemplo que muestra cómo usarlo. Le sugiero que también visite la página de github para obtener actualizaciones de código.

Estoy implementando esto en mi Raspberry Pi. Esto es lo que necesita:

1) Algún conocimiento sobre la implementación de un servidor web como Apache, una base de datos como Mysql y PHP. En conjunto, estos se conocen como LAMP: Linux, Apache, Mysql y PHP. y hay una gran cantidad de información en la web con respecto a la implementación de estos en una Raspberry Pi. Por lo tanto, no cubriré esto aquí.

2) Un entorno linux LAMP, de nuevo, como Raspberry Pi.

3) Un medio para cargar y crear archivos en su entorno web, es decir, las carpetas de su Raspberry Pi donde implementa los archivos php de su programa.

A continuación, le mostraré cómo crear sus propios archivos Php utilizando los dos archivos php a los que aludí anteriormente.

Paso 1: El código de función PHP - PhpSimpleChart2.php

El código de función PHP - PhpSimpleChart2.php
El código de función PHP - PhpSimpleChart2.php

Este archivo se llama PhpSimpleChart2.php; tendrá que descargarlo del repositorio de git haciendo clic en el botón descargar / clonar; consulte la imagen de arriba. Una vez que haya hecho eso, transfiera los dos archivos php a su servidor web usando su cliente FTP estándar o tal vez haya configurado un recurso compartido samba en su Raspberry Pi que hace que sus carpetas Pi se vean como carpetas de Windows.

Realmente no necesita cambiar el código en este archivo Php principal: PhpSimpleChart2.php. Esta es una función de creación de gráfico de líneas simple para Php. Básicamente, se pasan 2 matrices a la función, así como otros argumentos, como las dimensiones del gráfico. La primera matriz contiene los primeros valores brutos, como la temperatura, etc. La segunda matriz contiene los valores de fecha asociados. El programa intenta ajustar automáticamente el tamaño del gráfico en función del rango, mínimo, máximo y elementos de la matriz. El gráfico resultante se puede cortar y pegar en documentos de MS Office como gif, png, etc. Aquí se muestra un-g.webp

Una vez que haya subido PhpSimpleChart2.php a su servidor web, puede escribir su propio script para usarlo. Esto se muestra en la página siguiente.

Paso 2: redacción de su propio programa basado en el programa de ejemplo

Escribir su propio programa basado en el programa de ejemplo
Escribir su propio programa basado en el programa de ejemplo

He mostrado un programa de ejemplo, PhpSimpleChart_ex1.php que nuevamente está en el repositorio de git. La primera línea del código es llamar al script php que contiene la función de gráficos -

require ("PhpSimpleChart2.php");

En este caso, el archivo PhpSimpleChart2.php se coloca en la misma carpeta que el script que está escribiendo para llamarlo. Con suerte, sabrá que los archivos php deben tener las propiedades de lectura / escritura correctas 755.

A continuación, debe crear sus fuentes de datos y completar la matriz. Aquí están las matrices de ejemplo, una para datos y otra para fechas y horas asociadas. Obviamente, tiene que haber el mismo número de valores en ambas matrices.

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

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

Normalmente, leería estos valores de una consulta de base de datos o los cargaría desde un archivo de texto.

A continuación, debe configurar los parámetros para su gráfico. Es bastante sencillo. Primero establece los títulos y luego fija la altura y el ancho del gráfico.

$ chart_text = "Mi gráfico de prueba de julio de 2018";

$ y_title = "Temp Deg C";

$ x_scale = 1000;

$ escala_y = 400;

A continuación, realiza una llamada de función de la siguiente manera.

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

He mostrado la salida de este programa de ejemplo en la imagen adjunta. La función de gráficos intenta escalar automáticamente y evitar el desorden del eje y y los puntos del descriptor del gráfico. Esperemos que funcione para usted. Eso es todo lo que necesitas.

Paso 3: Conclusión

Espero que te haya resultado útil. Es posible que esté utilizando otro método que funcione para usted, pero aquí hay algunas ideas en cualquier caso;

1) La mayoría de los servicios de gráficos de IOT de terceros operan como un servicio en línea al que se puede acceder generalmente como una API.

2) Los usuarios de IOT tienen una amplia gama de competencias con respecto a la implementación de funciones gráficas.

PROS de mi solución

a) Puede operar sin conexión

b) Coste cero.

c) Huella pequeña

CONTRAS

a) No probado con el mismo rigor que las grandes empresas de software.

b) Limitado en funcionalidad, es decir, sin gráficos de barras, etc.

¡Comida para el pensamiento!

Recomendado: