Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Manufacturing Technology >> Proceso de manufactura

Construya una Red de Sensores Inalámbrica Económica para su Hogar

Este tutorial le enseñará a crear una red de módulos de sensores inalámbricos rentables. Muchos módulos inalámbricos listos para usar pueden ser demasiado caros para usar en múltiples unidades de sensores. Aunque los módulos Wi-Fi y Zigbee son populares y fáciles de usar, su coste puede hacer impracticable su uso en un array de sensores. Existen, sin embargo, módulos RF de bajo coste sin todas las características caras que funcionarán perfectamente para estos propósitos. La plataforma Arduino puede usar módulos de radio de gama baja para comunicarse fácil y fiablemente.

Una vez ensamblado el hardware, aprovechará la plataforma Raspberry Pi para enviar los datos al servicio Internet of Things de Xively donde puede rastrear los valores en el tiempo y disparar condiciones de umbral.

Este proyecto incluye tres partes: dos unidades transmisoras y una unidad receptora. Los transmisores se componen de una placa Arduino, sensor y transmisor RF. La unidad receptora se compone de una placa Arduino, un receptor RF, un conversor de nivel lógico y una Raspberry Pi.

Hay una amplia gama de placas compatibles con Arduino que pueden usarse para este proyecto. El requisito mínimo para la placa es dos pines GPIO digitales y un pin analógico. Seleccione una placa compatible con Arduino que se ajuste a las necesidades de coste y simplicidad para este proyecto.

En este tutorial he usado un conjunto de placas Arduino Nano que encajan bien en una protoboard y son simples de programar. Sin embargo, las versiones de 5V del Arduino Pro Mini o Trinket también funcionarán bien y a un precio mucho menor. Estas requieren un poco más de experiencia para programar y usar. Elija sabiamente.

Los transmisores son circuitos relativamente simples. Solo un pin se usa para recuperar información del sensor de temperatura y humedad y un pin para enviar esos datos al transmisor RF. El diagrama de protoboard se muestra a continuación.

La alimentación de 9V se conectará al conector de barril haciendo los rails inferiores 9V. El regulador de potencia en el Arduino producirá 5V que es seguro para usar con la radio y sensores, el rail superior del diagrama.

El sensor viene con una resistencia de 10k ohm que conecta el pin de datos a la alimentación como resistencia pull-up mientras otro cable lo conecta al GPIO D3.

Tenga cuidado de seguir la configuración siguiente y asegúrese de revisar la hoja de datos del sensor y módulo RF para garantizar que los componentes estén posicionados correctamente en la protoboard y los pines de alimentación, tierra y señal estén conectados a los pines correctos. El diagrama Fritzing está incluido en el paquete fuente para más detalle.

La antena es una parte importante de la placa porque el módulo RF no tiene antena integrada. Usé un cable jumper hembra-macho de 6 pulgadas enchufado en la protoboard y funcionó lo suficientemente bien para permitir recepción desde todas las partes de mi casa y un poco fuera. Como se nota en el diagrama, 6.5 pulgadas es óptimo para esta antena si necesita alcance adicional.

Una nota sobre uso RF. Hay diferentes leyes y reglas sobre uso de frecuencias en diferentes países. Asegúrese de cumplir estas reglas antes de transmitir. Dicho esto, las señales de estos módulos apenas son lo suficientemente potentes para salir de su casa. En condiciones perfectas, estos módulos pueden transmitir hasta 500 pies.

El transmisor usa dos bibliotecas que no vienen incluidas con el IDE de Arduino. Descargue las bibliotecas como se describe a continuación y descomprímalas en su directorio de sketches en un subdirectorio llamado Libraries.

Este tutorial asume que tiene algo de experiencia con Arduino y cómo programarlos usando el IDE de Arduino. Si no, hay muy buenas instrucciones en el sitio oficial de Arduino.

12345 #define MYID 1 //el número ID de esta placa. Cambie esto para cada placa que flashee. //El ID se transmitirá con los datos para saber qué dispositivo está transmitiendo #define TRANSPIN 3 //en qué pin transmitir #define DHTPIN 4 // en qué pin está conectado el DHT #define UNIT 0 // 0 para Fahrenheit y 1 para Celsius

La definición MYID es un ID numérico que el transmisor usa para identificarse de forma única. Como tendrá múltiples transmisores en diferentes ubicaciones es importante tener un ID único para cada uno. Este número se usará nuevamente cuando configure el script del receptor.

La ventana Serial Monitor reinicia el Arduino así que debería ver una línea de código en pantalla que se parece a:

12 Humidity: 44.00 % Temperature: 60.80 *F Sending Message: ID:1:TS:23143:TF:60.79:RH:44.00

El mensaje está compuesto de pares Nombre:Valor que el receptor manejará. El transmisor leerá y transmitirá su señal en un intervalo aleatorio largo. Los sensores no cambian mucho ni frecuentemente, así que transmitir más a menudo que una vez por minuto no añade valor. El tiempo de espera aleatorio permite que múltiples sensores coexistan.

Incluso si hay colisión y se pierde la señal de ambos transmisores, el intervalo aleatorio asegurará que sus próximas transmisiones no se solapen. La semilla aleatoria para este intervalo se establece desde un analogRead en un puerto analógico sin usar que devolverá valores aleatorios para asegurar que no dos transmisores estén en el mismo patrón.

El código de ejemplo que genera la salida anterior está configurado para usar Fahrenheit. Puede ver el identificador TF:60.79 en la cadena del mensaje indicando que mi laboratorio está de hecho justo por debajo de 61 grados. Sin embargo la humedad relativa RH:44.00 es un cómodo 44%. Uno podría inferir del ambiente fresco y húmedo que mi laboratorio está en mi sótano. Uno podría tener razón.

Los transmisores están configurados para esperar 2 a 5 minutos entre transmisiones por defecto. Si desea acelerar esto para propósitos de depuración, modifique el valor delay() al final del sketch a algo como 5000 (ms). Se recomienda encarecidamente que lo cambie de nuevo y vuelva a subir el código a sus transmisores cuando esté listo para uso a tiempo completo.

La placa receptora será responsable de recibir el mensaje de transmisión en su componente Receptor RF y enviar ese mensaje por cables serie a la Raspberry Pi. La placa Arduino se usa para recibir la señal por un par de razones muy importantes. El código VirtualWire usa la naturaleza en tiempo real del Arduino para gestionar la modulación y demodulación de la señal.

Esto significa que la unidad receptora necesita operar a la misma frecuencia. Además, hay poco margen para jitter en el procesador receptor, al que la Raspberry Pi es propensa, debido a su sistema operativo no en tiempo real y con preempción. Comparando los costes de un Arduino Pro Mini más el módulo receptor RF con el de un módulo Zigbee que podría hablar directamente con la Raspberry Pi reveló que usar un Arduino externo seguía siendo bastante económico.

En este punto NO conecte los cables de 5V y tierra de la Pi a la protoboard. Mantenga los cables jumper a mano, pero no quiera alimentar el Arduino tanto desde el puerto USB como desde la Raspberry Pi.

Tenga en cuenta que el conversor de nivel lógico en la lista de materiales arriba no es exactamente el mismo que el de la biblioteca Fritzing, pero los pinouts están bien etiquetados, solo en lugares diferentes. Por favor asegúrese de que los cables correctos estén conectados a los pines correctos en el conversor de nivel lógico real.

Este componente es necesario para convertir la señal serie de 5V del Arduino a una señal serie de 3.3V de la Raspberry Pi y no dañar la Pi. Vea la imagen de abajo para ayuda adicional.

Para más detalle: Construyendo una Red de Sensores Inalámbrica en su Hogar


Proceso de manufactura

  1. Sensor Inalámbrico Fiable para Entradas Largas – Integración Fácil con Raspberry Pi
  2. Desplegar red sensores inalámbrica en molino harinero siglo XVIII
  3. Transferencia Inalámbrica de Datos Magnéticos con Arduino y Sensor 3D Infineon
  4. Sensor K30 CO₂: Monitorización en tiempo real de la calidad del aire interior
  5. Construye un estadiómetro digital: Controla tu altura con Arduino y sensor láser
  6. Integración del sensor de huella capacitivo DFRobot (ID809) con Arduino o ESP8266
  7. Adaptadores USB-BLE MIDI Inalámbricos: Conectividad Sin Cables para Músicos
  8. Redes de Sensores Inalámbricos de Largo Alcance Robustas para Monitoreo Remoto de Datos
  9. Cambio de Redes de Sensores Inalámbricos: 6 Consideraciones Clave para Migración Tecnológica
  10. Entendiendo redes de sensores inalámbricas de baja potencia: Impulsando soluciones IoT eficientes
  11. Despliegue y Gestión de Redes de Sensores Inalámbricos en la Empresa