Comunicación inalámbrica de dos Arduino con módulos Zigbee XBee S2C

En este artículo vemos cómo establecer una comunicación inalámbrica entre dos tarjetas Arduino usando módulos Zigbee XBee S2C que se conectan mediante módulos XBee Explorer Regulated de SparkFun a Arduino.

Configuración de módulos XBee S2C

En la página Conexión punto a punto de módulos Zigbee XBee S2C se puede ver cómo hacer la configuración inicial de los módulos XBee S2C a usar en este artículo.

Material y equipo usado

  • 1 Arduino UNO
  • 1 Arduino Mega
  • 2 módulo XBee S2C de Digi-Key
  • 2 módulo XBee Explorer Regulated de SparkFun
  • computadora con con software Arduino IDE 1.6 o superior

Referencias

Artículo en desarrollo…

Conexión punto a punto de módulos Zigbee XBee S2C

En este artículo se muestra cómo establecer una sencilla conexión inalámbrica punto a punto entre dos módulos XBee S2C de Digi-Key, usando XBee Explorer USB de SparkFun para conectarlos a una computadora. Esto con la finalidad de que puedan ser usados para comunicación inalámbrica entre dos dispositivos o robots basados en Arduino o Raspberry Pi.

Material y equipo usado

  • 2 módulo XBee S2C de Digi-Key
  • 2 módulo XBee Explorer USB de SparkFun
  • 2 cable USB a micro USB
  • 1 computadora con Windows 10 y el software XCTU

Zigbee

Zigbee es un estándar de comunicación inalámbrica que soporta tres modos de seguridad: residencial, estándar y alta seguridad. Los módulos Xbee están basados en Zigbee y soportan principalmente seguridad estandar, aunque otros dispositivos que soportan seguridad residencial pueden unirse e interoperar con dispositivos de seguridad estándar.

Para más información sobre seguridad Zigbee consulte el documento XBee®/XBee-PRO S2C Zigbee® RF Module User Guide.

Módulo XBee S2C de Digi-Key

Los módulos XBee S2C son módulos de radiofrecuencia (RF) que proporcionan comunicación rápida y robusta en configuraciones multipunto y punto a punto. Los módulos usados en este artículo son módulos RF XBee S2C 802.15.4 de Digi-Key que tienen las siguientes ventajas:

  • Comunicaciones RF simple y lista que no requiere configuración.
  • Topología de red punto a multipunto.
  • 2.4 GHz para uso a nivel mundial.
  • Espacio en placa XBee común para una variedad de módulos de RF.
  • Corriente en resposo inferior a 1 µA.

Para más información sobre estos módulos puede consultar la página del fabricante: Módulos RF Digi XBee® S2C 802.15.4.

Módulo XBee Explorer USB de SparkFun

Los módulos XBee S2C deben ser configurados antes de usarlos. Una forma fácil y rápida de hacerlo es usando otros módulos que permitan conectarlos a una computadora. Para este artículo se usaron módulos XBee Explorer USB de SparkFun, los cuales tienen un conector micro-usb para conectarse a una computadora.

En el sitio web de Sparkfun se pueden ver más detalles de cómo usar los módulos USB Explorer, Explorer Dongle y Serial Explorer en el tutorial Exploring XBee and XCTU.

En la imagen siguiente se muestra como debe conectarse el XBee S2C sobre el XBee Explorer USB.

Para conectar de forma inalámbrica ambos XBee S2C es necesario configurar uno como Coordinador (Coordinator) y el otro como Dispositivo final (End device). Esto se hace usando el software XCTU.

Software XCTU

El software XCTU está disponible para Windows, MacOS y Linux en el sitio web de Digi. Descargue XCTU e instálelo en su computadora. En este artículo se usó la versión 6.3.11 para Windows, disponible en enero de 2018.

Al iniciar el programa XCTU en una computadora con Windows, verá una ventana como se muestra en la imagen siguiente:

Conecte ambos XBee S2C a la misma computadora y oprima el botón de la lupa en el software XCTU para descubrir dispositivos. Después de un momento de buscar los dispositivos conectados a los puertos USB, se mostrará un cuadro de diálogo con los dispositivos encontrados:

Oprima el botón Next, con lo cual, se mostrará el cuadro de diálogo para establecer los parámetros de configuración de los puertos Serial/USB:

Asegúrese de dejar los valores como en la imagen anterior:

Baud Rate: 9600
Data Bits: 8
Parity: None
Stop Bits: 1
Flow Control: None

Oprima el botón Finish. Esto iniciará la búsqueda de dispositivos XBee en los puertos seleccionados.

Al terminar la búsqueda, se deberá mostrar el mensaje 2 device(s) found (2 dispositivos encontrados).

Seleccione ambos dispositivos y oprima el botón Add selected devices. Con esto, en la ventana principal de XCTU se mostrarán ambos módulos XBee S2C en el panel izquierdo Radio Modules.

Del panel Radio Modules, seleccione el primer Zigbee y oprima el botón configuración (engrane) que está arriba del panel derecho. Esto mostrará las opciones de configuración del Zigbee seleccionado, como se muestra a continuación:

Para ambos Zigbee establezca las propiedades como se muestra a continuación:

Propiedad Zigbee 1 Zigbee 2
ID PAN ID 2018 2018
DH Destination Address High 0 0
DL Destination Address Low 0 0
CE Coordinator Enable Enabled [1] Disabled [0]

ID PAN ID es un valor hexadecimal entre 0 y FFFFFFFF (o mayor). Este es el identificador de red propia, mediante el cual se van a conectar entre si los XBee.

CE Coordinator Enable (coordinador activado) indica qué XBee es el que coordina la comunicación. Uno debe estar activado (Enabled) y el otro desactivado (Disabled).

Una vez configurados los parámetros de ambos XBee se debe oprimir el botón , para cambiar al modo Consola, con lo que se abrirá en el panel derecho una Consola de comandos como se muestra en la siguiente imagen:

Teniendo seleccionado el primer Zigbee, en el panel derecho se oprime el botón Open , el cual abre o inicia la conexión inalámbrica del Zigbee seleccionado del lado izquierdo. Se debe hacer lo mismo con el segundo Zigbee, de modo que para ambos dispositivos el botón Open cambie a botón Close , que sirve para cerrar la comunicación inalámbrica. Para ambos dispositivos, el panel derecho debe verse como en la siguiente figura.

Después de oprimir el botón Open, el cuadro de texto Console log del panel derecho queda habilitado para escribir algo.

Regrese al primer Xbee y escriba en Console log el texto Hola XBee 2 como se muestra en la siguiente figura:

En el cuadro de texto de la derecha se muestra el valor hexadecimal de cada uno de los caracteres que se escriben.

Seleccione el segundo XBee y observe que en Console log se muestra también el texto Hola XBee 2, pero en color rojo. Esto significa que el segundo XBee recibió ese mensaje.

Abajo del mensaje Hola XBee 2, escriba el texto Hola XBee 1, como respuesta del segundo XBee al primero. Observe que el texto Hola XBee 1 se muestra en azul.

En el software XCTU, los mensajes enviados están en azul y los recibidos en rojo.

Finalmente, desde el XBee 1 como despedida, desde el XBee 1 se puede escribir Adios! y en el XBee 2 Chao! quedando como en la siguiente imagen, al estar seleccionado el XBee 1.

Conclusiones

En este artículo se mostró cómo configurar dos módulos XBee S2C para que se comuniquen entre si, estableciendo una sencilla conexión inalámbrica punto a punto y probando tal comunicación enviando mensajes de texto entre ambos.

Una finalidad para llevar a cabo esta configuración es que los módulos queden listos para ser usados en dispositivos o robots basados en Arduino o Raspberry Pi, y se comuniquen entre si de forma inalámbrica.

Referencias