Tabla de contenido:
- Paso 1: Introducción
- Paso 2: preparar la aplicación Laravel
- Paso 3: prepara el remitente de Arduino
- Paso 4: Pasos adicionales
Video: Comunicación de Arduino a Laravel: 4 pasos
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:42
Hola a todos, En este Instructable, le mostraré cómo puede enviar datos desde un Arduino a una aplicación Laravel.
Paso 1: Introducción
Siempre que tengamos un proyecto que requiera la visualización y el registro de algunos datos, generalmente se requiere que tengamos los datos disponibles en la web. De esta manera posiblemente podamos monitorear el estado de un objeto de forma remota o incluso controlar nuestros dispositivos desde cualquier parte del mundo.
Para este proyecto usaremos una placa NodeMCU v1.0 que tiene un módulo ESP8266 12e a bordo. Además, necesitaremos usar una computadora donde podamos alojar nuestra aplicación Laravel. Si desea saber cómo puede configurar dicho entorno, consulte mi video al respecto.
Paso 2: preparar la aplicación Laravel
Nuestro primer paso es instalar Laravel a través de Composer. No entraré en detalles sobre cómo puede hacer esto, ya que la documentación lo explica en detalle y puede encontrarlo aquí.
Para mantener esta demostración simple, dentro de Laravel registraremos la información enviada desde Arduino a un archivo de texto para que podamos revisarlos más tarde. Para eso, primero crearemos una nueva ruta POST en el archivo "api.php". En la devolución de llamada, inyectaremos los detalles de la solicitud para que luego podamos recuperar los parámetros que se envían.
Para escribir en un archivo, estoy usando la fachada de almacenamiento de Laravel con su práctico método de adición. Cuando se llama, este método recibe un nombre de archivo y datos de cadena donde agrega estos datos al archivo especificado. Si el archivo no está presente, se está creando en la primera llamada.
Los datos que escribimos en cada fila están formados por la fecha y hora actuales, seguidos de los valores solicitados para la temperatura y la humedad. Si tiene varios de estos valores, puede repetir el mismo proceso de recuperación para todos ellos.
Paso 3: prepara el remitente de Arduino
Veamos ahora el código Arduino y el envío de datos.
Para que la placa NodeMCU pueda conectarse a nuestro WiFi y enviar una solicitud, primero debemos incluir varias bibliotecas en la parte superior. A continuación, debemos especificar el SSID de la red a la que nos conectamos y su contraseña. Si está utilizando un Uno con un escudo de Ethernet, entonces su proceso será diferente.
Además, guardamos aquí la URL raíz del servidor Laravel que acabamos de crear. En mi caso, esta es la dirección IP de mi computadora local, pero puede agregar cualquier URL de host donde se pueda acceder al código.
En la función de configuración, iniciamos la comunicación en serie para poder monitorear lo que está sucediendo. Además, necesitamos configurar la placa NodeMCU para que pueda conectarse correctamente al WiFi. Una vez hecho esto, podemos iniciar la conexión y esperar hasta que recibamos una dirección IP del enrutador.
Para este ejemplo, en realidad no tengo ningún sensor conectado a la placa. En su lugar, solo estoy generando algunos datos aleatorios usando la función aleatoria y los estoy enviando.
Estos datos deben prepararse en forma de una cadena de consulta y, una vez iniciada la solicitud HTTP, debemos enviarla mediante el método POST en el cliente HTTP. El encabezado que agregamos antes está ahí para que el servidor sepa que hay datos en la solicitud que necesita recopilar.
Como resultado, primero obtenemos el código de estado HTTP y luego la carga útil de respuesta. Si todo salió bien, deberíamos obtener 200 como código y, dado que no devolvimos nada de nuestra aplicación Laravel, la carga útil estará vacía.
Si por alguna razón el código de estado no es 200, entonces la carga útil generalmente contendrá el mensaje de error de lo que sucedió.
Al final, debemos asegurarnos de cerrar la solicitud y esperar un cierto tiempo, 5 segundos en nuestro ejemplo para hacer el mismo proceso nuevamente.
El resultado es que obtenemos esos valores guardados en el archivo de texto en cada iteración, por lo que luego podemos usar esto para mostrarlo o mapearlo en un gráfico.
Paso 4: Pasos adicionales
Como puede ver, el proceso es bastante simple y se puede expandir fácilmente para leer los valores de diferentes sensores y tal vez escribirlos en una base de datos. El resultado de lo que puede construir con esto solo está limitado por su imaginación. Para ayudarlo a comenzar, a continuación hay un enlace al código fuente completo utilizado en el ejemplo.
github.com/bkolicoski/arduino-laravel-comm…
Espero que hayas logrado aprender algo nuevo de este Instructable y, si lo hiciste, házmelo saber en los comentarios, sígueme en Instructables y no olvides suscribirte a mi canal de YouTube.
¡Gracias!
Recomendado:
LoRa 3Km a 8Km Comunicación Inalámbrica con Dispositivo de Bajo Costo E32 (sx1278 / sx1276) para Arduino, Esp8266 o Esp32: 15 Pasos
LoRa 3Km a 8Km Comunicación Inalámbrica con Dispositivo Low Cost E32 (sx1278 / sx1276) para Arduino, Esp8266 o Esp32: creo una librería para administrar EBYTE E32 basada en la serie Semtech de dispositivo LoRa, dispositivo muy potente, simple y económico. Versión de 3Km aquí, versión de 8Km aquí Pueden trabajar en una distancia de 3000 ma 8000 m, y tienen muchas características y
MPU 6050 Gyro, comunicación del acelerómetro con Arduino (Atmega328p): 5 pasos
MPU 6050 Gyro, comunicación del acelerómetro con Arduino (Atmega328p): El MPU6050 IMU tiene un acelerómetro de 3 ejes y un giroscopio de 3 ejes integrados en un solo chip El giroscopio mide la velocidad de rotación o la tasa de cambio de la posición angular a lo largo del tiempo, a lo largo del Eje X, Y y Z. Las salidas del giroscopio son
Comunicación Arduino y Bluetooth móvil (messenger): 8 pasos
Arduino y comunicación móvil por Bluetooth (messenger): la comunicación juega un factor importante en nuestra vida diaria. Pero durante estos momentos de bloqueo, la comunicación con nuestra propia familia o la intercomunicación con las personas de nuestro hogar a veces necesitan teléfonos móviles. Pero el uso de teléfonos móviles para r
Comunicación inalámbrica de largo alcance, 1,8 km, Arduino a Arduino con el HC-12: 6 pasos (con imágenes)
Comunicación inalámbrica de largo alcance, 1.8 km, Arduino a Arduino con el HC-12 .: En este instructivo, aprenderá cómo comunicarse entre Arduinos a una larga distancia de hasta 1.8 km al aire libre. El HC-12 es un puerto serie inalámbrico módulo de comunicación muy útil, extremadamente potente y fácil de usar. Primero leerás
Notificaciones de eventos en tiempo real usando NodeMCU (Arduino), Google Firebase y Laravel: 4 pasos (con imágenes)
Notificaciones de eventos en tiempo real usando NodeMCU (Arduino), Google Firebase y Laravel: ¿Alguna vez ha querido recibir una notificación cuando se realiza una acción en su sitio web pero el correo electrónico no es el adecuado? ¿Quieres escuchar un sonido o una campana cada vez que realizas una venta? O existe la necesidad de su atención inmediata debido a una emergencia