ZigBee vs WiFi para comunicación inalámbrica

He estado trabajando en un producto usando WiFi. La razón por la que elegí WiFi es porque esencialmente tengo 20-30 nodos que se comunican con un nodo principal a través de un enrutador. Todo esto funciona muy bien y es tan fácil como sus simples solicitudes TCP/IP.

Sin embargo, los nodos a veces se sumergen en el agua y, cuando lo hacen, el nodo pierde rápidamente la conexión y tarda mucho tiempo en volver a conectarse a la red (5-10). Además, los dispositivos se comunican a través de solicitudes HTTP y la latencia de la comunicación no es la mayor.

Recientemente comencé a explorar Zigbee como una alternativa. Sin embargo, no puedo encontrar ninguna información sobre los tiempos de reconexión de nodos, el uso de energía y la latencia de comunicación. ¿Alguien tiene alguna información que le gustaría compartir? Además, ¿funciona automáticamente en una red en estrella?

Tampoco estoy particularmente casado con Zigbee. Si hay otros módulos/protocolos/frecuencias que debería considerar, me encantaría escucharlos. Básicamente, quiero algo con lo que pueda reemplazar mi pila de comunicaciones WiFi rápidamente, y que no sea un gran consumo de energía.

Si sirve de ayuda, estoy usando el Atmega1284P como mi microcontrolador.

Recientemente estaba leyendo la hoja de datos del módulo Xbee ZB SMT y usan el protocolo de comunicaciones ZigBee con mucha salsa especial de Digi encima. Sus módulos se reincorporan a las redes extremadamente rápido si se cayeron, y si no logran reincorporarse, lo intentan muchas veces por minuto durante unos minutos, y luego una vez por minuto a partir de ese momento.
¿Estás buscando algo que funcione bajo el agua? ¿O algo que se vuelva a conectar rápidamente después de ser desconectado?
Es lo último, algo que se volverá a conectar rápidamente una vez que esté sobre el agua. Esencialmente quiere conectarse y transmitir con éxito al nodo principal en un segundo

Respuestas (1)

ZigBee (y más generalmente 802.15.4) apunta a diferentes usos en comparación con WiFi (control frente a transmisión de datos), por lo tanto, tiene una velocidad de datos más baja (250 kbps máx.) pero también un consumo de energía mucho menor (unas pocas decenas de mW de transmisión y recepción).

Seguro que puede hacer redes en estrella, pero también redes más complejas de árboles y mallas. De hecho, la malla es uno de los principales puntos de venta de ZigBee.

Pero en cuanto a los tiempos de reconexión, depende de qué tan buena sea la recepción. Si usa módulos de potencia estándar, están limitados a 1/100 de la potencia de transmisión de 802.11, por lo que es posible que necesite usar módulos de alta potencia o enrutadores para transmitir mensajes. Es posible que deba ajustar la frecuencia de los intentos de reconexión, ya que los nodos generalmente están configurados para operar en un ciclo de trabajo, esperando un cierto tiempo entre transmisiones para reducir la demanda de energía.

La latencia es generalmente baja, ya que el esquema de prevención de colisiones es más ligero (léase "menos sofisticado") que el RTS/CTS utilizado en WiFi. Pero si tiene que enviar grandes cantidades de datos, el rendimiento también limitará su capacidad de respuesta.

Si desea conservar las redes IP, considere usar 6LoWPAN en 802.15.4 desnudo o ZigBee IP.

Y si desea apegarse a Atmel, también puede considerar reemplazar todo el microcontrolador con una MCU de un chip con transceptor. Enlace

Transmitimos un mensaje de 100 bytes como máximo cada 10 segundos, por lo que 250 kbps está bien. Cuando dice que el tiempo de reconexión es tan bueno como la recepción, ¿estamos hablando de la recepción desde el nodo secundario hasta el nodo principal? ¿Y esto podría ser satisfecho si usamos un nodo principal de mayor potencia? La razón por la que el tiempo de reconexión es tan importante es que, en algunos casos, la unidad solo estará sobre el agua durante 1 o 2 segundos como máximo. Si elijo ZigBee, ¿es suficiente tiempo para conectarme y transmitir a la red?
@darudude bueno, no solo. Usted "necesita" garantizar la comunicación bidireccional para que el nodo secundario se comunique con el nodo principal, ya que la (re)conexión se produce mediante un intercambio de mensajes de solicitud y respuesta.
@darudude seguramente es suficiente. La transmisión de 100 bytes toma del orden de milisegundos, y 802.15.4 es por naturaleza un ciclo de trabajo, por lo que el coordinador tolera que los nodos secundarios estén fuera de línea durante un período de tiempo significativo.