

Redes Zigbee (I). Introducción.
Escrito por blogElectronica en 1.TECNOLOGÍAS (teórico), 2.DISPOSITIVOS (práctico), zigbee, ZigbeeVoy a iniciar una serie de capítulos breves introductorios a las redes Zigbee. Será teórico-práctico, recomendable para aquellos de vosotros que no sepáis nada de Zigbee y os interese esta tecnología para vuestros futuros desarrollos RF.

Como digo será teórico-práctico. En la parte práctica veremos como llevar a la práctica una red de dispositivos Zigbee resulta muy sencillo. Para ello utilizaremos unos conocidos módulos de la marca MaxStream, que es líder en desarrollo de dispositivos radio y Zigbee. MaxStream es distribuido en España por Matrix Electrónica.
Definición de Zigbee
Zigbee es un protocolo de comunicaciones inalámbrico basado en el estandar de comunicaciones para redes inalámbricas IEEE_802.15.4. Creado por Zigbee Alliance, una organización, teóricamente sin ánimo de lucro, de más de 200 grandes empresas (destacan Mitsubishi, Honeywell, Philips, Motorola, Invensys, …) , muchas de ellas fabricantes de semiconductores.
Zigbee permite que dispositivos electrónicos de bajo consumo puedan realizar sus comunicaciones inalámbricas. Es especialmente útil para redes de sensores en entornos industriales, médicos y, sobre todo, domóticos.
Las comunicaciones Zigbee se realizan en la banda libre de 2.4GHz. A diferencia de bluetooth no utiliza FHSS (Frequency hooping), sino que realiza las comunicaciones a través de una única frecuencia, es decir, de un canal. Normalmente puede escogerse un canal de entre 16 posibles. El alzance depende de la potencia de emisión del dispositivo así como el tipo de antenas utilizadas (cerámicas, dipolos, …) El alcance normal con antena dipolo en visión directa suele ser aproximadamente (tomando como ejemplo el caso de MaxStream, en la versión de 1mW de portencia) de 100m y en interiores de unos 30m. La velocidad de transmisión de datos de una red Zigbee es de hasta 256kbps. Por último decir que una red Zigbee la pueden formar, teóricamente, hasta 65535 equipos, es decir, el protocolo está preparado para poder controlar en la misma red esta cantidad enorme de dispositivos. La realidad es menor, siendo, de todas formas, de miles de equipos.
Pero, ¿cómo es la arquitectura básica de una red Zigbee?
Una red Zigbee la forman básicamente 3 tipos de elementos. Un único dispositivo Coordinador, dispositivos Routers y dispositivos finales (end points).

El Coordinador.
Es el nodo de la red que tiene la única función de formar una red. Es el responsable de establecer el canal de comunicaciones (como hablábamos antes) y del PAN ID (identificador de red) para toda la red. Una vez establecidos estos parámetros, el Coordinador puede formar una red, permitiendo unirse a él a dispositivos Routers y End Points. Una vez formada la red, el Coordinador hace las funciones de Router, esto es, participar en el enrutado de paquetes y ser origen y/o destinatario de información.
Los Routers.
Es un nodo que crea y mantiene información sobre la red para determinar la mejor ruta para enrutar un paquete de información. Lógicamente un router debe unirse a una red Zigbee antes de poder actuar como Router retransmitiendo paquetes de otros routers o de End points.
End Device.
Los dispositivos finales no tienen capacidad de enrutar paquetes. Deben interactuar siempre a través de su nodo padre, ya sea este un Coordinador o un Router, es decir, no puede enviar información directamente a otro end device. Normalmente estos equipos van alimentados a baterías. El consumo es menor al no tener que realizar funciones de enrutamiento.
Post relacionados:
- Zigbee (II). Más definiciones. A continuación tenéis una serie de definiciones que hay que...
- Desarrollando con Zigbee. Primera entrega. Hoy voy a hablar un poco de Zigbee desde un...
- Desarrollando con Zigbee. Segunda entrega. Buenas a todos. Ante todo feliz nuevo año 2008. Hace...
- Capítulo I – Sistemas Embebidos Linux – Introducción y conceptos. Se acaban las vacaciones para todos. Muchos decimos, “ufff, vuelta...
- Comunicaciones vía satélite. Red de satélites Orbcomm. Introducción. Hay equipos electrónicos por los que no siento demasiada motivación,...
Segun mi corto conocimineto creo que los end points no son dispositivos finales, ya que un dispositivo final puede tener varios end points. Digamos que los endpoints solo se usan si se habilitan las binding task, y vendrian a ser como puertos o algo asi entre varios dispositivos. Cuando se manda un mensaje a un end-point, le llega a todos aquellos que tengan definido ese mismo endpoint.
Hola Esteban,
tienes razón, un end device puede tener varios end points. Lo que pasa es que para muchas aplicaciones para un único dispositivo final tienes asociado un único end point definido. Por eso a veces hablo de end device o de end point indistintamente. Corrijo la definición del post (la definición de End device) , pues es cierto, que un dispositivo final puede tener varios endpoints. Por ejemplo, puede tener 2 end points, uno por ejemplo una sonda de temperatura y otro un interruptor de la luz, los dos en el mismo dispositivo final.
Te agradezco mucho el comentario
esta interesane y muy bien explicado muxas gracias que me va a servir de muxo soy de peru
Me alegra que te resulte de interés este blog.
Muchas gracias nohelia por tus comentarios.
Salu2.
Hola a todos. Supongo que el administrador hará un nuevo capítulo sobre esos módulos de MaxStream. Yo he de decir que he trabajado con ellos y que funcionan genial. En mi caso trabajo en el modo punto a punto. No hay administrador y los end points transmiten entre ellos.
Los he utilizado con los microcontroladores de microchip y van genial(se conocen como PICs). Llegan a 1.6km al aire libre (comprobado) y además destacan por la sencillez al configurarlos, sobretodo en modo transparente.
Desde aquí insto al administrador a, cuando pueda, hacer una pequeña aplicación de estos módulos de MaxStream porque tengo mis dudas sobre cómo los estoy utilizando, me transmiten y reciben bien, pero lo hago en el modo transparente punto a punto y me gustaría poder utilizar todo lo que dan estos transceivers.
Salu2
Cordial saludo Victor Gutierrez y a todo blogelectronica
Estoy empezando a trabajar con unos modulos de Xbee Pro, pero todavia no consigo enviar datos entre ellos, es necesario programar los modulos o con programar un PIC basta?, gracias por toda la informacion que me puedan dar.
Hola Silvia,
puedes llegar a programar los módulos (si hablas de Xbee Pro serie1). Para ello has de utilizar las herramientas que te proporcionará Freescale, pues es Freescale quien proporciona la pila Zigbee de la Serie1 de los XBee de Maxtream. La serie 2 de Xbee tiene la pila de Ember, mucho mejor, ya que los dispositivos pueden configurarse como end devices, cosa que no ocurre con la serie 1. En resumen la serie2 es zigbee 100%, la serie1 antigua es, digamos, una aproximación a Zigbee.
Y sí, bastaría con programar un micro (por ejemplo un PIC) para enviar comandos AT vía serie a los módulos de Zigbee. Esa sería la opción más sencilla y más barata (para pequeñas cantidades, es decir, menos de 20.000 unidades).
Salu2.
Yo sólo pretendo comunicar un PC con un Pic a través de dos xbee pro. Los montajes electrónicos y adaptadores de niveles RS232 y TTL están resueltos, pero no consigo comunicación. ¿Es necesario programar los xbee aunque lo único que pretendo es sustituir el cable serie?
¿En ese caso bastaría con cambiar valores DL y MY?
Este es mi primer paso, pero voy descubriendo que las posibilidades pueden ser tremendas. A ver si inicio con acierto este primer paso para adentrarme.
Por cierto estoy asombrado por tu excelente trabajo en este blog y por las ganas que pones para que aprendamos. Enhorabuena
Hola Jose Antonio,
yo conozco más los XBee Serie2 pero los comandos básicos son iguales. No tienes que programar nada para hacer un cable replacer.
Al menos con la serie 2, tal como vienen de fábrica, bastaría con cambiar los valores de DL y DH en ambos dispositivos para tener un cable replacer (la que dices de MY es la dirección de 16 bits que tiene el módulo en la red).
Salu2.
Hola
Me gustaria preguntarle a Víctor Gutiérrez, que antenas ha utilizado para conseguir un alcance de1.6km
gracias y un saludo
Hola a todos, soy muy nuevo en el tema y tengo como tesis la comunicacion inalambrica con zigbee 1.0 basado en MC13192 de Freescale, de un micro-robot, alguien tiene idea de como programarlo?
o si no donde puedo conseguir las caracteristicas y precio de kit x-bee pro para estudiarlo?
Cordial saludo Jose Antonio y todo blogelectronica
Estoy trabajando en la comunicacion inalambrica entre 2 dispositivos xbee y me gustaria saber como resuelves el asunto de la conversion de niveles TTL a CMOS, pues los xbee trabajan con CMOS y los niveles que me da el PC son TTL, estoy utilizando un MAX232 para la comunicacion serial con el PC. Gracias por la atencion prestada.
Hola Vargas,
tienes toda la documentación que precisas (el precio no estoy seguro) en la web de maxstream.net (ahora en Digi.com, pues hace unos meses Maxstream fue comprada por Digi)
Silvia,
lo mismo, da un vistazo a la documentación de la web, encontrarás toda la información que necesitas en la sección de soporte de la web. Aquí tienes el esquemático de la placa del kit de desarrollo donde conectan un PC al módulo xBee a través de 232:
http://ftp1.digi.com/support/documentation/xbibrdev_schematic.pdf
Salu2.
Hola
Supongo que ya lo conocereis pero solo queria contribuir diciendo que mis experimentos con xBee los realizo con Arduino y el xBee shield, sin preocuparme de niveles TTL, CMOS, ni nada. Es un entorno asequible y de muy facil programacion …
http://www.arduino.cc/playground/Shields/Xbee01
…y sigo interesado en el tema de aumentar el alcance del radioenlace a algunos centenares de metros como se ha expuesto aqui…
un saludo
Hola gente, gracias por orientarme con los XBee, no tendran los circuitos (placas), algo sencillo para implementerlos con RS 232 y USB?
Salu2
Hola que tal estoy casi por el mismo camino pero mi idea es más para monitoreo, pero me encantaría ver la posibilidad de que me envíes información sobre ls redes.
Tengo un problema un poco grande, es que en mi pais no se encuentran facilmente esos módulos.
De ante mano gracias si atirnden mis peticiones
Hola, qué tal?
Estoy investigando para hacer una red domótica para estos módulos XBee, y tengo una duda:
, he intentado ver cómo lo hacen en el software XCTU que da Maxstream, pero no lo he conseguido… ¿Sabéis si es Open Source o si el código esta puesto en alún sitio o foro?
Al comunicar la UART de la placa de mi micro (que tiene conversor a RS232 normal) con el RS232 de la placa de desarrollo de los XBee. Se puede mandar directamente los comandos AT como si quisiera que me sacase unos caracteres en el Hyperterminal de un PC? o hay que configurar para que traduzca de alguna forma y lo entienda el XBee?
Espero que mi pregunta no sea demasiado específica o enrevesada
Gracias por todo de antemano, y por cierto un blog estupendo!
hola
Me parece muy interesante el tema del zigbee incluso estoy pensando implementarlo en mi proyecto final de estudio, pero sacame de una duda he leido al respecto y algunos dicen que no es una tecnologia que es un estandar, otros dicen que es una tecnologia, aqui dice que es un protocolo de comunicaciones basado en un estandar…
espero tu respuesta
saludos
Hola estoy inverstigando aserca de este tema para hacer algun proyecto con zigbee como tesis, veo que tu ya lo trabajaste y quisiera saber en que lo aplocaste y si depronto me puedes aconsejar o ayudar con algun tipo de aplicacion que pueda hacer que sea algo sencillo y que no me demore.
buenos dias
Trabajo para una empresa de I+D y me gustaria saber si hay fabricantes o proveedores de dispositivos zigbee en españa si me pudierais indicar algunos de ellos estaria muy agradecido.
gracias
Hola Currante,
pues como distribuidor me lo pones fácil, Matrix Electrónica te puede suministrar módulos Zigbee y algunos productos Zigbee acabados, como sensores de temperatura, A/D, … del fabricante Digi.
Salu2
Hola a todos, ¿donde puedo encontrar un catálogo con precios de los productos MaxStream? es que la página web de MAtrix no lo he encontrado.
Un saludo.
Hola Diana,
no creo que encuentres los precios por ahí. Coge el teléfono y llama a tu distribuidor, es lo más rápido. No es lo mismo el precio para 10 unidades que para 1000 que para 10.000.
Salu2
Hola, cual es el numero de hijos que gestiona cada router o coordinador de Xbee?. He visto que el registro NC tiene un máximo de 10 por lo que parece estar muy limitado.
Saludos
Hola de nuevo,
me han encargado un proyecto sobre ZigBee y tengo algunas dudas, estoy barajando entre varias tecnologías. La red será interior y basicamente sería 1 coordinador, varios routers, y 2 tipos de puntos finales,
1- 1 termostato(1 entrada),
2- 2 sensores de temepratura y la activacion de un motor(2 entradas/ 1salida)
a) que diferencia entre XBee o XBee-pro y las plataformas CC de Freescale, ya que el XBee y el XBee-pro estan basados en ellos, con cual tengo más libertad apra actuar, que me ahorraría si realizo la red con los XBee o XBee-pro en vez de con lo otro.
b) A la hora de realizar los nodos, tanto el coordinador, como los routers como los puntos finales, ¿que placas base puedo usar? En los kits de las diferentes tecnologías siempre aparecen, pero no hablan de ellas, con que tipo son compatibles.
c) La mayoría de las tecnologias tiene los puntos finales cerrados, es decir con sensores ya incorporados, yo necesitaría que tubieran diferentes entradas y salidas para ir probando diferentes modelos de sensores y termostatos etc. ¿Existen diferentes modelos que pueda usar?
d) Un dispositivo LPB(Low power board) ¿que es un repetidor o un router?
4 – Estoy dudando en unsar XBee, FreeScale y Texas Instruments, ¿cual es más apropiado para mi tipo de red?
Hola Alejandro,
yo por lo que he leido puede tener 20 hijos, de los cuanes 6 pueden ser routers y 14 dispositivos finales. Luego a cada router se le peude añadir otros 20 hijos y así sucesivamente hasta completar 5 niveles. La capacidad de estas redes esta en 65K terminales.
hola diana,me han parecido muy interesantes tus preguntas…has cnseguido alguna respuesta a eyas aunq fuese x otra parte??me stoy metiendo en el tema y m gustaria saer cuanto mas mejor!!
Hola a todos tengo un problema y no encuentro como solucionarlo compre el kit de inicio y actualice el firmware y todo estaba bien, pero cambie en la pantalla del x-ctu el modem le di en escribir y ahora no me lee el modulo lo trato de resetear pero no funciono me manda un ventana que me dice que precione config switch lo hago por que supone que es el botton fisico de reset y no pasa nada si alguien tiene experiencia en esto mi correo es “aaroncatzim@hotmail.com” Nota: cuando camnio el modulo por otro todo marcha bien asi que es modulo pero no que tenga, si alguien quiere mas info o puede ayudarme se los agradecere mucho.
Hola, soy nuevo en esto y tengo el mismo problema que Aaron Catzim. Buscando por internet, se ve que este problema es muy comun, pero no queda muy clara la forma de resolverlo. Muchas gracias.
Hola a todos, me encuentro probando el modo API de los XBee serie 2 y no logro enviar desde un pic una cadena de datos desde un end device a un coordinador, alguien me podria ayudar con esto?? q me recomendarian?? agradeceria mucho su ayuda.
hola a todos alguien me podria indicar como cableo el xbee para cambiarle el firmware de 1084 a 10a5 ya lo descargue pero creo que necesito conectar mas pines???
hola con todos..
muy interesante este foro, genial
xfa alguien me puede ayudar:
estoy realizando un proyecto con modulos zigbee pro y pics, la polarizacion de los modulos es muy importante de tal manera q use un regulador a 3.3, mi pregunta es, en el instante de enviar algun dato desde el pic llegaran 5 voltios al modulo… se quema????
gracias por la ayuda
Hola Alejo,
creo recordar que no es 5V tolerante. Una las tensiones adecuadas de 3.3V utilizando un conversor de niveles.
Salu2.
Hola nuevamente con todos, xfa alguien deme una idea…
quiero hacer una red con zigbee de los mas segura, por tanto quiero enviar de uno a otro las direcciones MAC de los módulos…
Que comando puedo utilizar para obtener la MAC????
Hola Alejo,
lo tienes en el manual y es la dirección del módulo.
Comandos ATDH y ATDL
Salu2.
gracias por su aporte…
Estoy realizando un proyecto cin con pic llamado picaxe y el zig bee, conocen como programar tanto el picaxe con zig bee emisor como el picaxe zig bee receptor? receptor
para el ke pregunto si se kema el modulo si le entran 5 volts es un si
jejej
este modulo jala con 3.3v pero eso es de alimentacion y para las entradas de adc son1.3v saludos
hola, tiene algun programa para comunicar dos picaxes por medio de xbee?
Problemas con XBeePRO.
Hola:
Pretendo realizar un proyecto con módulos XBeePRO y no conozco demasiado el tema de las comunicaciones vía radio. El objetivo del proyecto sería trabajar en modo transparente punto a punto y manejar una radio desde un PC vía RS232 y la otra radio que comunica con un microcontrolador PIC16F876 que dispone de salidas digitales y entradas analógicas. Desde el PC se le darían ordenes a la radio 2 para manejar salidas (motores …) o leer entradas analógicas. La idea es que cualquier byte recibido en la radio 2 se envíe al PIC16F876 y la respuesta del PIC se envíe al PC. He probado la comunicación del PC y de Hardware del PIC16F876 a través de dos hilos que sustituye a las radios. Lo tengo probado y funciona bien. (He programado el PIC con el compilador CCS. El programa desde el PC lo manejo desde .NET)
He comprado 2 módulos XBEE PRO (en Onda Radio Barcelona http://www.farnell).
Los modelos de los módulos son XBP24-Z7WIT-004 rev H. Uno de las radios funciona bien (XCTU), la otra parece que esté dañada, pues no contesta. He pedido otro módulo a Onda Radio. Pero mientras me llega me gustaría consultar alguna duda. Con el módulo que funciona estoy comunicando RS232 con XCTU :
A) 1. Las radios compradas creo que tienen un canal fijo porqué si hago ATCHC contesta con error. Si hago ATCH contesta con 0. Parece que en estas radios no se puedan cambiar el Canal ó es a través de otro comando. ¿Qué frecuencia de los canales puedo usar y qué comando AT puedo usar para cambiar el canal?
2. El parámetro MY no se puede cambiar y vale FFFE. Por tanto parece que estas radios siempre bloquean los mensajes de 16 bits. ¿ Esto es cierto ?
B) Creo que para comunicar las dos radios deberíamos: a) configurar el parámetro ID y hacer coincidirlo coincidir en las 2 radios. b) Hacer coincidir el parámetro DH y DL de la radio 2 con el nº de serie SH y SL de la radio 1. c) Y creo que no se debe hacer nada más.
C) Sin hacer nada más y después de configurar las 2 radios con el XCTU, espero que cualquier carácter enviado desde el PC se enviará a la radio 2 y esta manejará las salidas digitales y contestará con los bytes de las informaciones analógicas. ¿Esto será así?
D) Estos módulos son relativamente caros 50 Euros cada uno aproximadamente. No sé si existe otra opción algo más económica.
Muchas gracias.
José Luis