Sistema de seguimiento del crecimiento de mosquitos

Sistema de monitoreo del crecimiento de mosquitos basado en temperatura, humedad y flujo de agua en las líneas de alcantarillado para minimizar la propagación del dengue.

IoT mosquito

Cosas utilizadas en este proyecto.

Componentes de hardware

Aplicaciones de software y servicios en línea

Herramientas manuales y máquinas de fabricación.

  • Multiherramienta, Destornillador
  • Impresora 3D (genérica)

Historia

Problema

En las zonas urbanas, especialmente en Indonesia, las líneas de alcantarillado generalmente están ubicadas en la parte delantera de la casa. Este canal drenará el agua restante de cada casa a un vertedero. En algunas acequias, algunos obstáculos provocan que el agua no fluya correctamente, sumado a la temporada tropical en Indonesia, haciendo de estas condiciones un lugar óptimo para la reproducción de mosquitos. Antes de que esto cause un impacto peor, se necesitan algunos tratamientos para superarlo.

Solución

IOT Mosquitos
Solucion del problema

Para superar los problemas que se han mencionado, presentamos un sistema de monitoreo para monitorear el estado de la línea de alcantarillado frente a la casa. El prototipo de este sistema se llama NOMOS, que significa sin mosquito. Este sistema de monitoreo utiliza algunos parámetros como la temperatura, la humedad y el flujo de agua. El sistema determinará el nivel de peligro que puede ocurrir en base a estos tres parámetros si no se realiza inmediatamente la prevención mediante la limpieza del desagüe. El sistema notificará si se necesitan precauciones para que el usuario pueda revisar inmediatamente la línea de alcantarillado.

¿Cómo funciona?

IOT Mosquitos
Como funciona

NOMOS controlará el flujo de agua para ver si funciona bien o no. Las temperaturas cálidas también serán uno de los parámetros para determinar si el estado del alcantarillado es un lugar óptimo para la reproducción de mosquitos. Todos los datos se enviarán a la base de datos utilizando SenseCAP K1100 de Seeed. El sistema también se construirá para proporcionar notificaciones a los usuarios. El uso de tinyML en la plataforma de impulso de borde se utilizará para predecir el nivel de peligro que puede surgir.

Proceso y pasos

  1. Leer el sensor SHT4x
  2. Leer el sensor de flujo de agua YF-S201
  3. Crear GUI en SenseCAP K1100
  4. Haga un soporte para el dispositivo y el sensor.
  5. Haga el conector para el sensor de flujo de agua YF-S201.
  6. Conexión de prueba (opcional)
  7. Enviar datos a Thinkspeak
  8. Recopilar datos
  9. Haga un modelo de aprendizaje automático
  10. Implementación del modelo en el dispositivo.
  11. Cree un sitio web de seguimiento utilizando Weebly.
  12. Pruebe el dispositivo

PASO 1: Leer el sensor SHT4x

Este sensor digital Grove SHT4x se basa en los sensores de temperatura y humedad probados en la industria de Sensirion. Puede proporcionar una precisión constante de temperatura y humedad en un amplio rango de medición. Y con la plataforma Grove, está listo para conectar y usar el sensor SHT4x en cualquier microcontrolador (Arduino) o microprocesador (Raspberry Pi).

IOT Mosquitos
Grove – Sensor de temperatura y humedad (SHT4x)

El primer paso es intentar acceder al sensor SHT4x para conocer los valores de temperatura y humedad del ambiente. En este paso, se utiliza el IDE de Arduino para cargar el programa creado. Hay documentación en el sitio web oficial del estudio de semillas sobre SHT4x en este enlace: (enlace). Cuando se haya accedido correctamente al sensor, el SenseCAP K1100 mostrará la temperatura y la humedad en tiempo real.

IOT Mosquitos
Resultados de la medicion del sensor SHT4x

PASO 2: Leer el sensor de flujo de agua YF-S201

El sensor de flujo de agua está hecho principalmente de plástico, sensor hall y rotor magnético. Este sensor se utiliza para detectar o medir el flujo de agua. Cuando el agua pasa a través del rotor, el rotor magnético girará. La velocidad de rotación del rotor magnético depende de los cambios en el caudal de agua, luego el microcontrolador lee este sensor Hall.

IOT Mosquitos
Sensor de flujo de agua YF-S201

El uso de este sensor es utilizar un pin digital en el SenseCAP K1100. El pin de alimentación del sensor está conectado al pin 3v3, el pin del sensor gnd está conectado al gnd SenseCAP K1100 y el pin de datos está conectado al pin D0 (BCM27). Para obtener más información, consulte la imagen a continuación. Se puede acceder al programa en el siguiente enlace de GitHub: (enlace).

IOT Mosquitos
SenseCAP K-1100 Conexión al sensor de flujo de agua YF-S201

Cuando se haya accedido correctamente al sensor, el SenseCAP K1100 mostrará el valor de medición del flujo de agua en tiempo real.

IOT Mosquitos
Resultados de la medicion del sensor YF-S201

PASO 3: Crear GUI en SenseCAP K1100

SenseCAP K1100 tiene una pantalla LCD TFT incorporada a la que se puede acceder muy fácilmente. Hay documentación en el sitio web oficial que se puede utilizar para acceder a la pantalla LCD TFT en el enlace: (enlace), o este enlace de GitHub para obtener la información completa. código: (enlace). En este proyecto, se crea una GUI simple para mostrar el valor de medición del sensor y los resultados del estado del sistema de monitoreo del crecimiento de Mosquitos. El resultado de la GUI (usando datos ficticios) se muestra en la siguiente imagen.

IOT Mosquitos
GUI para el proyecto

PASO 4: Hacer soporte para dispositivo y sensor

El sensor y el SenseCAP K1100 utilizados en este proyecto siguen siendo módulos componentes. En el proceso de implementación directamente en la naturaleza, es necesario realizar algunas adiciones a los componentes que se utilizarán para que el proyecto pueda implementarse de manera adecuada y rápida. En relación con esto, se fabricaron soportes adicionales para los componentes a utilizar. El proceso de creación de soportes se realiza mediante la aplicación SolidWorks. SolidWorks es una aplicación de diseño asistido por computadora (CAD) e ingeniería asistida por computadora (CAE) de modelado de sólidos publicada por Dassault Systèmes. Según el editor, en 2013, más de dos millones de ingenieros y diseñadores en más de 165.000 empresas utilizaban SolidWorks.

El primer proceso se logra creando una partición de los componentes que se utilizarán, como se muestra en la imagen a continuación.

IOT Mosquitos
El diseño de componentes usando SolidWorks

La siguiente parte es diseñar el soporte para cada componente que se utilizará. El soporte que se construirá se dividirá en varias particiones para facilitar la impresión mediante una impresora 3D. Las particiones que se han creado se pueden ver en la siguiente imagen.

IOT Mosquitos
El diseño del soporte usando SolidWorks

Una vez finalizado el proceso de diseño en forma de particiones, entonces se crea un archivo de ensamblaje para unir todos los archivos que se han creado y ver la viabilidad y precisión de todos los componentes que se han realizado. Este proceso también se utiliza para crear imágenes renderizadas a partir de archivos de ensamblaje que luego se utilizan para la documentación del proyecto. Los resultados del archivo de ensamblaje que se ha creado se pueden ver en la imagen a continuación.

IOT Mosquitos
Archivo de ensamblaje usando SolidWorks

Una vez completado el proceso de diseño, el siguiente proceso es el proceso de impresión de archivos que se crearon con una impresora 3D. Los archivos que se hayan creado con la aplicación SolidWorks se guardarán en forma de archivo STL (archivo de estereolitografía).

IOT Mosquitos
Archivo STL

El siguiente proceso utilizará la aplicación Ultimaker Cura para convertir el archivo STL en un archivo GCode compatible para la impresora 3D utilizada. En este proyecto se utilizó la impresora 3D Anycubic Kossel Pulley. La aplicación Ultimaker Cura es muy fácil de usar, los pasos que se deben seguir son importar un archivo STL existente y presionar el botón de corte. Una vez completado el proceso, guarde el archivo GCode que se creó en el directorio de la PC.

(Cómo utilizar Ultimaker Cura)

Este archivo GCode luego se transfiere a la tarjeta SDCard en la impresora 3D. ¡Entonces imprimamos el archivo!

(Imprimimos el archivo)

IOT Mosquitos
Resultado de la impresion 3D

Un proceso no menos importante es el proceso de renderizado de imágenes para mejorar la documentación. El proceso de representación de imágenes en este proyecto utiliza la aplicación Keyshot. Esta aplicación generará una imagen a partir del archivo de ensamblaje que se creó como se muestra a continuación.

IOT Mosquitos
Proceso de renderizado de imágenes

Se puede acceder a todos los archivos 3D en el enlace: (enlace) o en el archivo adjunto en la parte inferior de la documentación del proyecto.

PASO 5: Haga el conector para el sensor de flujo de agua YF-S201

El sensor de flujo de agua YF-S201 utilizado en este proyecto tiene un conector JST de 3 pines y no es compatible con el conector del SenseCAP K1100.

IOT Mosquitos
Cabezal de pin del sensor de flujo de agua YF-S201

En este proyecto se realizó un conector simple utilizando la aplicación Eagle para el sensor de flujo de agua YF-S201. EAGLE es una aplicación de automatización de diseño electrónico (EDA) programable con funciones de captura de esquemas, diseño de placas de circuito impreso (PCB), enrutador automático y fabricación asistida por computadora (CAM). EAGLE significa Editor de diseño gráfico de fácil aplicación (en alemán: Einfach Anzuwendender Grafischer Layout-Editor) y está desarrollado por CadSoft Computer GmbH. La empresa fue adquirida por Autodesk Inc. en 2016.

La primera parte de la creación de un conector es crear un archivo esquemático. Los componentes que deben agregarse son encabezados de 2×7 y encabezados de 1×3. Después de agregar los componentes, conecte los pines que se utilizarán. Los resultados esquemáticos se pueden ver en la imagen a continuación.

IOT Mosquitos
Esquema del conector

La siguiente parte es crear un archivo de tablero. Una vez realizado, cada pinout conectado debe conectarse para que todos los pinouts estén conectados correctamente. Los resultados del archivo del tablero se pueden ver en la imagen a continuación.

IOT Mosquitos
Placa del conector

Después de imprimirlos y conectarlos al sensor de flujo de agua YF-S201, los resultados se muestran a continuación.

IOT Mosquitos
Resultado del conector

Se puede acceder a los archivos de esquema y placa del conector en el siguiente enlace: (enlace) o en el archivo adjunto en la parte inferior del proyecto.

PASO 6: Prueba de conexión (opcional)

Una de las cosas a tener en cuenta con respecto al SenseCAP K1100 es la sección para conectarse a wifi. Si el producto que tienes es un producto que se fabricó antes del 15 de julio, entonces debes actualizar el firmware para que pueda conectarse a tu wifi. Puedes seguir las instrucciones paso a paso en el siguiente enlace: (enlace).

PASO 7: Enviar datos a Thingspeak

Después de que todos los sensores puedan leerse y emitir valores, la siguiente parte es crear un área de almacenamiento de datos que pueda acomodar las lecturas del sensor 4x SHT y el sensor de flujo de agua YF-S201. La plataforma elegida para esta tarea es el Thingspeak. Thingspeak es un software de código abierto escrito en Ruby que permite a los usuarios comunicarse con dispositivos habilitados para Internet. Facilita el acceso, la recuperación y el registro de datos al proporcionar una API tanto para los dispositivos como para los sitios web de redes sociales. Thingspeak fue lanzado originalmente por ioBridge en 2010 como un servicio de soporte para aplicaciones de IoT.

Seeed Studio ha proporcionado un tutorial paso a paso muy detallado sobre cómo enviar datos utilizando SenseCAP K1100. Puedes seguir el paso a paso en el vídeo a continuación.

https://wiki.seeedstudio.com/Wio-Terminal-Network-Overview/ (Paso a paso cómo utilizar el cliente WiFi usando SenseCAP K1100)

Los datos que se han guardado se pueden ver en la imagen a continuación.

IOT Mosquitos
Almacenamiento de datos usando ThingSpeak

PASO 8: Recopilar datos

Una vez que todos los componentes estén listos, tanto desde la conexión del circuito como desde el proceso de lectura de datos, el siguiente proceso es el proceso de recopilación de datos. En este proyecto, la recopilación de datos se lleva a cabo utilizando un Data Forwarder (reenviador de datos) al Edge Impulse.

Consulte este enlace (enlace) y (enlace). Hay varias aplicaciones que deben instalarse:

  • Node.js v12 o superior
  • IDE de Arduino
  • La CLI de Edge Impulse. Instale abriendo el símbolo del sistema o la terminal y ejecute (Windows): npm install -g edge-impulse-cli

Hay algunas notas que se deben considerar en el proceso de instalación:

  • Instale las herramientas adicionales al instalar NodeJS (no seleccionadas de forma predeterminada).
  • La versión Arduino IDE debe ser al menos 1.15.
  • Más detalles en este enlace. (enlace)

Después de instalar todas las aplicaciones, el siguiente proceso es agregar un programa para el monitor serie que luego se usará para enviar datos mediante un Data Forwarder.

IOT Mosquitos
Monitor serie para enviar datos mediante el reenviador de datos (Data Forwarder)

El siguiente proceso es abrir Edge Impulse CLI usando el símbolo del sistema de Node js con el comando: edge-impulse-data-forwarder

IOT Mosquitos
Inicio de sesion de Edge Impulse utilizando el terminal NodeJS

Inicie sesión con la cuenta de Impulse Edge, seleccione el puerto de SenseCAP K1100, seleccione el proyecto en Impulse Edge y asigne un nombre a cada característica de datos.

¡Y voilá! El dispositivo está listo para recopilar datos. Puede comprobar si el dispositivo está conectado al Edge Impulse.

IOT Mosquitos
El SenseCAP K1100 conectado con Edge Impulse

En este proyecto existen 6 puntos de ubicación que se utilizan como lugar para recolectar datos. Este punto de ubicación se divide en 3 puntos seguros con drenajes que fluyen y 3 puntos de peligro con alcantarillas que no fluyen adecuadamente. El uso de estos dos tipos de plazas se utilizará luego como clases en el proceso de clasificación.

IOT Mosquitos
1.3 NOMO recopila datos de temperatura y humedad

Hay documentación detallada de Seeed para el proceso de recopilación de datos paso a paso en el enlace (enlace), (enlace) y (enlace)

PASO 9: Haga un modelo de aprendizaje automático

El primer proceso de creación de un modelo de aprendizaje automático es Impulse Design. Esta sección comienza creando un impulso que será utilizado. El usuario debe seleccionar el bloque de procesamiento y el bloque de aprendizaje a utilizar.

IOT Mosquitos
Diseño de impulsos en Edge Impulse

En este proyecto, se eligió el bloque de procesamiento aplanado. El bloque Aplanar tomará varias características en forma de parámetros estadísticos como Promedio, Mínimo, Máximo y otras funciones de datos sin procesar dentro de la ventana de tiempo. En este proyecto se seleccionaron cuatro características para simplificar el proceso.

IOT Mosquitos
1.2 Aplanar usando Edge Impulse

En la sección del bloque de aprendizaje se seleccionan Clasificadores NN para realizar el proceso de clasificación. Este proceso tiene como objetivo crear un modelo de aprendizaje automático a partir de características que se extrajeron de los datos sin procesar en el proceso anterior.

IOT Mosquitos
1.2 Clasificador NN usando Edge Impulse

PASO 10: Implementación del modelo en el dispositivo

Edge impulse está equipado con funciones para convertir modelos de aprendizaje automático para varios dispositivos y lenguajes de programación. En la pestaña Implementación, puede seleccionar el tipo de dispositivo o lenguaje de programación que se utilizará. En este proyecto, el modelo de aprendizaje automático se implementará utilizando el IDE de Arduino.

IOT Mosquitos
Descargando el codigo

Cuando se complete la descarga, extraiga el archivo y colóquelo en la carpeta de bibliotecas de Arduino. Abra Arduino IDE y elija el boceto del búfer estático (ubicado en Archivo -> Ejemplos -> nombre de su proyecto -> static_buffer), que ya tiene todo el código repetitivo para la clasificación con su modelo implementado.

PASO 11: Cree un sitio web de seguimiento utilizando Weebly

Weebly fue fundada en 2006 por el director ejecutivo David Rusenko, el director de tecnología Chris Fanini y el ex director de productos Dan Veltri. Rusenko y Fanini asistieron a la Facultad de Ciencias y Tecnología de la Información de la Universidad Estatal de Pensilvania (Penn State). Veltri asistió a la Facultad de Negocios Smeal de la universidad. En ese momento, Penn State exigía que todos los estudiantes mantuvieran un portafolio de Internet, por lo que aprovecharon esta idea y crearon un software que facilitó a cualquiera la creación de un sitio web personal.

Usar Weebly es muy fácil, los usuarios solo necesitan arrastrar y soltar para usar las funciones. Hay muchas funciones que se pueden utilizar, una de las cuales es la función Insertar código. La función Insertar código se utilizará para mostrar gráficos de Thingspeak. La forma de mostrar el gráfico es copiando el código de inserción en Thingspeak y pegándolo en Weebly.

IOT Mosquitos
1.5 Como agregar gráficos y widgets a ThingSpeak

El uso de la monitorización web tiene como objetivo que los usuarios de NOMOS puedan conocer la situación actual de las condiciones del alcantarillado del usuario dondequiera que se encuentren, siempre y cuando estén conectados a Internet. En este proyecto el seguimiento se puede realizar en el siguiente enlace: https://rifqi-abdillah.weebly.com/nomos.html .

PASO 12: Pruebe el dispositivo

 

Cierre

NOMOS se puede utilizar para controlar las condiciones del alcantarillado. NOMOS tiene como objetivo prevenir la cría de mosquitos que se encuentran habitualmente en alcantarillas cuyas condiciones no fluyen adecuadamente y en condiciones ambientales secas y cálidas.

El promotor espera que NOMOS pueda convertirse en una de las soluciones para reducir el riesgo de reproducción de mosquitos en las zonas urbanas. En el futuro, el desarrollador espera que se puedan desarrollar más funciones, por ejemplo, además de monitorear las condiciones del flujo de agua, también se puede desarrollar NOMOS para monitorear el estado de limpieza del alcantarillado.

El desarrollador también espera que en el futuro NOMOS pueda desarrollarse más ampliamente y recibir el apoyo de varias partes, incluido el gobierno, para poder ofrecer una forma de implementación real y mejor.

Hay un proverbio en Indonesia que dice “proporcione un paraguas antes de que llueva”, lo que significa que es mejor preparar algo con fines de prevención antes de que ocurra un impacto negativo mayor. Por eso, cuidemos nuestras alcantarillas utilizando NOMOS y limpiándolas periódicamente para evitar la cría de mosquitos.

¡Nos vemos en el siguiente proyecto!

Piezas y carcasas personalizadas

Soporte para dispositivo

Soporte para SenseCAP K1100 y sensor de flujo de agua YF-S201

Esquemas

Esquema y placa del conector.

Conector del sensor de flujo de agua YF-S201 a SenseCAP K1100

Código

Código fuente NOMOS

Enlace de GitHub para el proyecto completo

Acerca de Rifqi Abdillah 3 Artículos
Soy profesor del programa de Ingeniería Informática en la Universidad Negeri Surabaya. Mi trayectoria académica me ha dotado de amplios conocimientos y habilidades en diversas áreas, incluida la tecnología de sensores y actuadores, Internet de las cosas (IoT), aprendizaje automático, visión por computadora y ciencia de datos.

Sé el primero en comentar

Dejá un Comentario

Tu dirección de correo no será publicada.


*