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

Creación de una red de sensores inalámbricos en su hogar

Este tutorial le enseñará cómo crear una red de módulos de sensores inalámbricos rentables. Muchos de los módulos inalámbricos listos para usar pueden ser demasiado costosos para su uso en múltiples unidades de sensores. Si bien los módulos Wi-Fi y Zigbee son populares y fáciles de usar, su costo puede hacer que su uso en una variedad de sensores no sea práctico. Sin embargo, existen módulos de RF de bajo costo sin todas las características costosas que funcionarán bien para estos propósitos. La plataforma Arduino puede usar módulos de radio de gama baja para comunicarse de manera fácil y confiable.

Una vez que el hardware esté ensamblado, aprovechará la plataforma Raspberry Pi para publicar los datos en el servicio de Internet de las cosas de Xively, donde puede rastrear los valores a lo largo del tiempo y activar las condiciones de umbral.

Este proyecto incluirá tres partes, dos unidades transmisoras y una unidad receptora. Los transmisores están compuestos por una placa Arduino, un sensor y un transmisor de RF. La unidad receptora está compuesta por una placa Arduino, un receptor de RF, un convertidor de nivel lógico y una Raspberry Pi.

Existe una amplia gama de placas compatibles con Arduino que se pueden utilizar para este proyecto. El requisito mínimo para la placa para este proyecto es dos pines GPIO digitales y un pin analógico. Seleccione una placa compatible con Arduino que coincida con el costo y las necesidades de simplicidad para este proyecto.

En este tutorial he usado un conjunto de placas Arduino Nano que encajan bien en una placa y son fáciles de programar. Sin embargo, las versiones de 5V de Arduino pro mini o Trinket también funcionarán bien y a un precio mucho más bajo. Sin embargo, estos requieren un poco más de experiencia para programar y usar. Elija sabiamente.

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

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

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

Tenga cuidado de seguir la configuración a continuación y asegúrese de verificar dos veces la hoja de datos del sensor y el módulo de RF para asegurarse de que los componentes estén colocados en la placa de pruebas correctamente y que los pines de alimentación, tierra y señal estén conectados a los pines correctos. El diagrama de fritzing se incluye en el paquete fuente para obtener más detalles.

La antena es una parte importante de la placa porque el módulo de RF no tiene una antena incorporada. Usé un cable de puente hembra a macho de 6 pulgadas conectado a la placa de pruebas y funcionó lo suficientemente bien como para permitir la recepción desde todas las partes de mi casa y un poco afuera. Como se indica en el diagrama, 6.5 pulgadas es óptimo para esta antena si necesita un rango adicional.

Una nota sobre el uso de RF. Existen diferentes leyes y reglas sobre el uso de frecuencias en diferentes países. Asegúrese de cumplir con estas reglas antes de transmitir. Dicho esto, las señales de estos módulos apenas son lo suficientemente potentes como para pasar fuera de su hogar. Sin embargo, en perfectas condiciones, estos módulos pueden transmitir hasta 500 pies.

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

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

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

La definición de MYID es una identificación numérica que el transmisor utiliza para identificarse de forma única. Debido a que tendrá varios transmisores en diferentes ubicaciones, es importante tener una identificación única para cada uno. Este número se utilizará de nuevo cuando configure el script del receptor.

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

12 Humedad:44,00% Temperatura:60,80 * F Enviando mensaje:ID:1:TS:23143:TF:60.79:RH:44.00

El mensaje se compone de pares Nombre:Valor que manejará el receptor. El transmisor leerá y transmitirá su señal en un intervalo aleatorio largo. Los sensores no cambian mucho ni con frecuencia, por lo que transmitir más de una vez por minuto no aporta ningún valor. El tiempo de espera aleatorio es para permitir que coexistan varios sensores.

Incluso si se duplica y se pierde la señal de ambos transmisores, el intervalo aleatorio garantizará que sus próximas transmisiones no se superpongan. La semilla aleatoria para este intervalo se establece desde un analogRead en un puerto analógico no utilizado que devolverá valores aleatorios para garantizar que no haya dos transmisores 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 que indica que mi laboratorio es de hecho solo un pelo por debajo de los 61 grados. Sin embargo, la humedad relativa RH:44,00 es un cómodo 44%. Se 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 de 2 a 5 minutos entre transmisiones de forma predeterminada. Si desea acelerar esto con fines de depuración, modifique el valor de delay () al final del boceto para que sea más como 5000 (ms). Se recomienda encarecidamente que vuelva a cambiar esto y vuelva a cargar el código en sus transmisores cuando esté listo para usarlo a tiempo completo.

La placa receptora será responsable de recibir el mensaje de transmisión en su componente de receptor de RF y enviar ese mensaje a través de cables seriales a la Raspberry Pi. La placa Arduino se utiliza para recibir la señal por un par de razones muy importantes. El código VirtualWire utiliza la naturaleza en tiempo real de Arduino para administrar la modulación y demodulación de la señal.

Esto significa que la unidad receptora debe funcionar a la misma frecuencia. Además, hay poco espacio para la fluctuación en el procesador receptor, al que es propensa la Raspberry Pi, debido a su sistema operativo preventivo, no en tiempo real. Al comparar los costos de un Arduino Pro Mini más el módulo receptor de RF con los de un módulo Zigbee que podía hablar directamente con la Raspberry Pi, se reveló que usar un Arduino externo seguía siendo bastante económico.

En este punto, NO conecte los cables de tierra y de 5 V del Pi a la placa de pruebas. Mantenga los cables de puente a mano, pero no querrá alimentar el Arduino tanto desde el puerto USB como desde la Raspberry Pi.

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

Este componente es necesario para convertir la señal serial Arduino de 5V en una señal serial Raspberry Pi de 3.3V y no dañar la Pi. Consulte la imagen a continuación para obtener ayuda adicional.

Para obtener más detalles:Creación de una red de sensores inalámbricos en su hogar


Proceso de manufactura

  1. Redes de sensores inalámbricos:6 cosas para recordar al cambiar de tecnología
  2. ¿Qué es una red de sensores inalámbricos de baja potencia?
  3. Interfaz para el sensor de entrada inalámbrico
  4. Construcción de una red de sensores para un molino de molinos del siglo XVIII
  5. Cómo alimentar y cuidar sus redes de sensores inalámbricos
  6. Transferencia de datos magnética inalámbrica
  7. Monitoreo de CO2 con sensor K30
  8. ¿Qué tan alto eres?
  9. Sensor capacitivo de huellas dactilares con Arduino o ESP8266
  10. Adaptadores MIDI inalámbricos USB-BLE
  11. Red de sensores inalámbricos de largo alcance