Arduino + XBEE S1

El XBee, es un dispositivo que nos permite establecer comunicación inalámbrica RF, esta bajo el protocolo de comunicación Zigbee, la comunicación se realiza en la banda libre de 2,4 GHz. Estos dispositivos varían su alcance gracias al tipo de antena que poseen (cerámica,dipolo, etc), en este articulo hablaremos del Xbee S1, de Digi.

El XBee S1, tiene un alcance de 100 metros  en exteriores con linea de vista y en interiores hasta 30 metros, este posee una antena tipo chip.

Características:

  • Banda de Frecuencia: 2,4 GHz.
  • Pines digitales I/O: 8
  • Pines ADC: 6
  • Voltaje: 3,3 V
  • RF DATE RATE: 256 Kbps.
  • Canales RF: 16
  • Corriente: 50mA.
  • El voltaje en los pines digitales es de 0.7xVcc
  • El voltaje en los pines analógicos hasta 3,6 Voltios.

Estos dispositivos se caracterizan por el bajo consumo de energía para transmitir a grandes distancia, el S1 PRO tiene un alcance de hasta 1,6Km. Permiten realizar configuraciones punto a punto, multipunto y peer to peer.

Una red Zigbee necesita de 3 elementos, un coordinador, routers y finales.

  • El Coordinador es es responsable de la creación de la red, hace el papel de router, envía y recibe información, establece el ID de comunicación, también es llamado el nodo padre.
  • Los Routers, son encargados en las grandes redes de facilitar el camino mas optimo del envió de los datos a su destino. ellos deben estar unidos a la red para poder realizar dicha función.
  • Finales: son los encargados de generar datos y transmitirlos al nodo padre o alguna router, este no puede enviar información a otros finales.

CONFIGURACIÓN

Configuraremos 2 Xbee para establecer una comunicación punto a punto en modo transparente es decir la información recibida es transmitida al pin RX del modulo y la información transmitida desde el pin TX es enviada, así de sencillo. Pues existen mas modos por si quieren investigar un poco esta multipunto, broadcast y el peer to peer. En el mercado existen varios shields o dispositivo que nos permiten interactuar con Arduino o con nuestra computadora. aquí hablaremos del shield de libelium y el Xbee Explorer Dongle de Sparkfun.

Donde el shield de Libelium, nos permite conectar a nuestra arduino UNO o Mega el modulo XBee y conectarlo al computador para poder configurar, y el Explore Dongle de Sparkfun nos permite conectarlo a nuestra computadora para configurarlo o enviar datos y recibir datos desde alguna aplicación ya que posee FDTI.

para empezar la configuración debemos conocer que este modulo permite direccionamiento de 16 bits o 64 bits, esto significa el numero de dispositivo dentro de un misma red, por lo cual se usara un direccionamiento de 16 bits, en este tipo de direccionamiento se utilizan 3 comandos o registros del modulo DH,DL y MY, donde DH es el registro de dirección de destino alto, DL es el registro de dirección bajo y MY es la dirección del modulo. Para seleccionar el direccionamiento de 16 bits, el DH debe ser igual a 0 y el DL debe ser menor a 0XFFFF,  y MY debe ser menor a 0XFFFF.

Conociendo esto para comunicar dos XBee debemos relacionarlos por medio de estos registros, el Modulo 1 debe tener en su DL el vaor del registro MY del Modulo 2 y de la misma manera el Modulo 2 debe tener en el DL el numero de registro MY del modulo 1, adicionalmente el canal CH debe ser el mismo para ambos, este va desde 11 a 26.

Manera mas fácil y que recomiendo para configurar los XBee es  mediante el programa XCTU, de digi lo pueden descargar AQUI!, ya que permite acceder a los registros de una manera directa, como lo veremos, aunque también se puede por medio de comandos AT, pero para que complicarnos si esta aplicación nos permite realizar todo esto.

Configuración desde el shield Libelium:

Este shield tiene un juego de jumper de 3 pines identificados XBEE/USB, que están ubicados hacia los pines digitales del arduino.

En el modo USB, la comunicación se realiza entre el modulo XBEE y el FTDI de la arduino, quien permite la comunicación de mediante el USB. por esa razon debemos retirar el micro al momento de configurar nuestro modulo XBEE.

En el modo XBEE, la comunicación es entre el modulo XBEE y el microcontrolador es decir nuestra arduino, en este modo ya podemos enviar datos de manera inalámbrica una vez configurado nuestro modulo a través del programa hecho en nuestra arduino.

Para poder configurar los registros o parámetros se debe retirar el microcontrolador y el jumper debe estar hacia USB, realizado esto ya podemos colocar el shield en la tarjeta arduino (sin el microcontrolador) y conectar la tarjeta a nuestro computador.

 

ahora abrimos el XCTU.

y damos click en ADD (agregar dispositivo).

una vez dando click se abrirá una ventana donde seleccionaremos el puerto COM al cual esta configurado nuestra arduino y damos click en “finish”.

luego de esto podremos ver agregado el dispositivo, damos click sobre el.

luego empezara a cargar la información del modulo, esperamos que se complete todo este proceso para poder ver los datos

una vez cargado la información podemos configurar los registros con los valores que deseemos, el DL, DH = 0; MY, CH, y el PAN ID, que es el identificador de la red, con estos datos ya ajustados ya quedan listos los XBee para su funcionamiento enviar y recibir datos.

la configuración con el XBEE USB EXPLORER DONGLE, es idéntica la particularidad es que  con el podemos con un app en el computador manejar un robot, recibir datos de sensores, activar motores, encender leds, etc. Solo conectamos a nuestra computadora por el puerto USB y listo seguimos los mismo pasos con el XCTU.

2 comentarios en “Arduino + XBEE S1

    • Hola Elio, pues una red mesh como tal no pues solo tengo un par de XBEE pero seria interesante realizarla, si tengo la posibilidad lo hare y lo compartire no tengas la menor duda.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *