You are on page 1of 17

JUAN CAMILO VALENCIA VARGAS 1 040 180 080 MANUAL DE CONFIGURACION PARA LOS XBEE SERIE 2 RESUMEN.

Este manual pretende explicar al usuario principiante en el uso del software X-CTU que provee la empresa Digi, para la configuracin y prueba de los productos X-Bee. Con el se pretende explicar brevemente las caractersticas del software y la configuracin de los dispositivos en modo de comandos AT, la opcin de comandos API ser explicada brevemente pero no se entrara en profundidad. La aplicacin X-CTU es una aplicacin basada en Windows, hecha para interactuar con los productos que contienen archivos con firmware encontrados en los productos RF de Digi. El software puede ser descargado de la pgina del fabricante, una vez hecho esto procedemos a una instalacin sencilla. CARACTERISTICAS DEL SOFTWARE. Una vez instalado el software nos encontraremos con cuatro pestaas que nos permitirn manipular fcilmente nuestro producto X-Bee. PC Settings. Esta pestaa permite seleccionar al usuario el puerto de comunicaciones serial deseado y la configuracin de este.

Configuracin del puerto Serial.


Aqu configuramos el puerto serial seleccionado y establecemos los parmetros de la comunicacin como son: Baud Rate: la velocidad a la cual nos vamos a comunicar. Flow Control: Si queremos establecer un control de flujo ya sea por Hardware, por software o ninguno. Parity: Si queremos poner un bit de paridad. Stop Bit: si queremos un bit de parada.

Una vez configurado podemos probar la configuracin con el botn Test/Query, y si esta correcta se recibe un mensaje similar a la de la figura 1. Figura 1.

Configuracin del Host. La configuracin del host le permite al usuario configurar como el programa X-CTU interacta con el firmware de los mdulos de RF. Esto incluye determinar en que modo se desea trabajar, si en modo de comandos AT o modo de comandos API. o API mode: seleccione esta opcin si tiene un modulo configurado en modo API, o si desea empezar a configurar un modulo con esta opcin. Podremos agregar un puerto de comunicaciones peor solo es de uso temporal una vez cerrado el programa este desaparecer. Range Test. Esta pestaa permite verificar el rango del radio enlace enviando un paquete de datos especificado por el usuario y verificando la respuesta del paquete mismo con el tiempo especificado. Por defecto el tamao del paquete de datos enviado es de 32 bytes. Este tamao del paquete de datos puede ser cambiado al igual que lo que se enva. Figura 2.

Para cambiar el tamao del paquete lo podemos hacer en el campo al lado del botn Create Data, para cambiar la informacin enviada, lo podemos hacer en la ventana en la ventana de transmisin. En esta pestaa tambin podremos cambiar el retraso de los paquetes y el timeout para la recepcin, lo cual le permite al usuario simular un amplio rango de escenarios. Al habilitar la opcin del RSSI (Received Signal Strength Indicator), nos permite ver con cuanto nivel de seal nos llega el paquete. Otro detalle importante es que si en la pestaa de PC Settings habilitamos la funcin de comandos API, podremos probar tambin estos parmetros en la pestaa de Range Test. Para realizar una prueba en este modo debemos haber configurado previamente otro dispositivo en modo API. TERMINAL. La pestaa terminal tiene tres funciones bsicas: Un simulador de una terminal, similar al hyperterminal de Windows. Habilitar el envo y recepcin de paquetes de datos predefinidos.(Assemble Packet)

Habilitar el envo y recepcin de datos en formatos hexadecimal o ASCII.(Show/Hide Hex) La porcin en blanco de la pestaa terminal es donde habilitamos los comandos de comunicacin y donde adems leeremos los datos recibidos por el modulo. El texto en azul es lo que se copia y se en via al modulo de RF, el texto en rojo son los datos que nos enva el modulo por el puerto serial. La opcin de Assemble Packet permite al usuario ensamblar un paquete de datos en formato ASCII o HEX. Figura 3.

Esto hace que no se enven inmediatamente los valores al modulo a medida que se van escribiendo, sino que primero creamos todo el paquete y luego lo enviamos, tambin es muy til cuando estamos trabajando con el modulo en modo API. MODEM CONFIGURATION. La pestaa de configuracin tiene cuatro funciones bsicas: 1. 2. 3. 4. Proveer una interfaz grafica del usuario con el Firmware. Leer y escribir el firmware al micro controlador del modulo. Descargar archivos actualizados del firmware para los modulos. Grabar o cargar un perfil de modem.

Podremos leer el firmware que tiene el modulo, presionando el botn Read una vez tengamos conectado el modulo. Sino se lee intente habilitar el modo API en la pestaa PC settings y luego intente leer nuevamente el firmware. Una vez leidos los parmetros del firmware estos sern mostrados en tres diferentes colores. Negro: De solo lectura, no configurables. Verde: Valores por defecto. Azul: Valores puestos por el usuario. Antes de cambiar cualquier valor del firmware lo mejor es actualizarlo atraves del botn Download new versions, lo podremos hacer desde la web o desde un archivo

previamente descargado. Una vez actualizado el firmware si podremos hacer los cambios deseados. Figura 4.

Una vez analizado el software para configurar pasaremos a analizar otros conceptos propios de los modulos Zigbee de Digi. TIPOS DE DISPOSITIVOS ZIGBEE. El estndar de Zigbee define tres tipos de dispositivos. Zigbee Coordinator: Encargado de establecer el canal y el PAN-ID (Personal Area Network Identifier). Puede permitir a los router y a los end devices unirse a la red. Puede asistir en el enrutamiento de datos. No puede dormirse. Puede Almacenar datos de los hijos que estn dormidos. Zigbee Router: Este debe unirse a una PAN antes de empezar a transmitir, enrutar o recibir datos. Despus de unirse a la PAN permite que otros routers y end devices se unan a la red. Puede asistir en el enrutamiento de paquetes.

Puede almacenar datos de otros dispositivos dormidos o hijos. Zigbee end device Debe unirse a una PAN antes de empezar a transmitir datos. No puede dejar que otros dispositivos se unan a la red. Puede enviar y recibir datos a travs de sus padres. Puede entrar en modo Sleep para ahorro de energa.

Figura 5.

COCEPTOS DEL FIRMWARE. PAN ID: el identificador de la red de rea personal ya sea con una direccin de 16 o 64 bits. Este identificador es comn a todos los dispositivos de la red. CHANNEL: El estndar IEEE 802.15.4 establece 16 canales de operacin para los mdulos Zigbee. X-bee soporta todos los 16 canales mientras que X-Bee Pro tan solo soporta 14 de los 16 canales. SC: Scan Channel establece la lista de canales a escanear. SD: Scan duration. Establece el tiempo de duracin de escaneo del canal El tiempo de escaneo es medido por as:(# Channels to Scan) * (2 ^ SD) * 15.36ms NJ: Node Join time. Establece el tiempo que un coordinador o un router se puede unir a una red. 0xFF permite que siempre se unan. SH: Serial Number High. SL: Serial Number Low. Establece los 32 bits altos y bajos de la nica direccin de 64 bits. NI: Node identifier: Este establece un nobre al dispositivo en caracteres ASCII imprimibles, y puede ser utilizado para enviar datos. Todos estos son comandos AT y pueden ser configurados tanto en la pestaa de Modem Configuration o a travs de enviar comandos AT por el terminal.

Para entrar en el modo configuracin con comandos AT a travs del terminal enviamos la secuencia de tres caracteres +++ Y esperamos la confirmacin del modulo OK. Para enviar comandos AT se utiliza la siguiente sintaxis

Al final se anexan las tablas de los comandos AT para la configuracin. EJEMPLOS DE TRANSMISION DE DATOS. Antes que nada debemos haber conectado dos dispositivos al PC y haber actualizado los firmware. Despus de haber hecho establecemos uno como coordinador ZB y esperamos a que se una a un canal. Luego procedemos a establecer el otro modulo como router o end device y esperemos a que se enganche a la misma red del coordinador, es decir que tengan el mismo PAN-ID y el mismo canal. Despus de haber verificado esto podremos enviar mensajes desde el router o el end device al coordinador de 2 formas. La primera es enviando a la direccin de destino 0x00. Lo cual se realiza de la siguiente manera. Entramos en modo comandos en el terminal 1. +++ y esperamos confirmacin. a. ATDH0\r //DH=0 b. ATDL0\r //DL=0 c. ATCN\r //exit. En cada uno de los comandos nos debe llegar un ok. Despus de esto todos los mensajes sern enviados al coordinador. La segunda forma es conociendo la direccin de 64 bits del coordinador. Supongamos que la direccin del coordinador es 0x0013A200404A2244. Entramos en modo comandos 1. +++ y esperamos confirmacin. a. ATDH13A200\r b. ATDL404A2244\r c. ATCN\r //exit. De esta manera lo que se envi llegar solo al coordinador. Todo esto es una transmisin unicast es decir solo entre dos dispositivos de la red ZB, aunque solo tenemos dos dispositivos conectados, si ms dispositivos se unieran a la red la comunicacin solo llegara al coordinador.

Ahora realicemos una transmisin broadcast. 1. +++ y esperamos confirmacin. a. ATDH0\r b. ATDLFFFF\r //quiere decir que la transmisin va para todos los dispositivos de la red. c. ATCN\r //exit. MODO API Este modo es ms complejo, pero permite el uso de frames con cabeceras que aseguran la transmisin de los datos, al estilo TCP. Extiende el nivel en el cual la aplicacin del cliente, puede interactuar con las capacidades de red del mdulo. Cuando el mdulo Xbee se encuentra en este modo, toda la informacin que entra y sale, es empaquetada en frames, que definen operaciones y eventos dentro del mdulo. As, un frame de Transmisin de Informacin (informacin recibida por el pin 3 o DIN) incluye: Frame de informacin RF transmitida. Frame de comandos (equivalente a comandos AT). Mientras que un Frame de Recepcin de Informacin incluye: Frame de informacin RF recibida. Comando de respuesta. Notificaciones de eventos como Reset, _ ODEM_ do, Disassociate, etc. Esta API, provee alternativas para la configuracin del mdulo y ruteo de la informacin en la capa de aplicacin del cliente. Un cliente puede enviar informacin al mdulo Xbee. Estos datos sern contenidos en un frame cuya cabecera tendr informacin til referente el mdulo. Esta informacin adems se podr configurar, esto es, en vez de estar usando el modo de comandos para modificar las direcciones, la API lo realiza automticamente. El mdulo as enviar paquetes de datos contenidos en frames a otros mdulos de destino, con informacin a sus respectivas aplicaciones, conteniendo paquetes de estado, as como el origen, RSSI (potencia de la seal de recepcin) e informacin de la carga til de los paquetes recibidos. Entre las opciones que permite la API, se tienen: Transmitir informacin a mltiples destinatarios, sin entrar al modo de Comandos. Recibir estado de xito/falla de cada paquete RF transmitido. Identificar la direccin de origen de cada paquete recibido. Esta conexin, agrega informacin extra a los paquetes de datos RF. Ya no son enviados de forma transparente, sino que cada paquete de datos, son almacenados dentro de un frame, con una estructura definida que permite una forma ms robusta para enviar datos. Esto permite entre otras cosas determinar el origen de algn paquete recibido dentro de la red. Cuando la configuracin API est activada, cada paquete RF que se enva o recibe se encapsula en un frame de datos UART. Para esto se utiliza el comando AP. El frame se observa en la siguiente figura:

Figura 7.

Existen tres posibilidades de configuracin. Con AP=0, se deshabilita el frame API y el mdulo trabaja en modo transparente. Con AP=1, el mdulo trabaja en el modo API. Y con AP=2, el mdulo trabaja en modo API, pero con Carcter de Escape. Este modo es necesario slo cuando se envan bytes que interfieren con la estructura del Frame. stos son: 0x7E Delimitador de Frame.

0x7D Escape 0x11 XON 0x13 XOFF


Este modo, ingresa un carcter de escape, adems de otra operacin sobre el bytes de interferencia. Esto hace que el frame sea ms grande, al agregar bytes, pero evita que la cabecera del frame se confunda con los datos enviados. Otra ventaja es el Checksum, que permite verificar que los datos entregados no se hayan corrompido. Entre las posibilidades que permite la API, es la posibilidad de cambiar parmetros a travs de comandos AT, envindolos al mdulo de destino. As, desde un mdulo, es posible configurar otro utilizando el modo API. Tambin es posible consultar sobre el estado de algn parmetro en otro mdulo. Adems se puede consultar sobre el estado del mdem, como saber si est asociado a un coordinador, o si el mdulo es o no un coordinador. Como regla general el modo API se utiliza cuando: Se envan datos RF a mltiples destinos. Se envan comandos de configuracin remota a otros dispositivos en la red. Se reciben muestras de una I/O de otro dispositivo. Se reciben datos de mltiples destinos y se necesita saber quien los enva. Se soportan modulos Zigbee con cluster ID, perfiles ID u otros dispositivos de otra marca (ZDO). Definiciones necesarias: Perfiles de Aplicacion: Los perfiles de aplicacin especifican varias descripciones de los dispositivos. Estos pueden ser pblicos o privados, los privados estn definidos por el fabricante mientra que los pblicos estn definidos por el desarrollador dentro de un marco definido por Zigbee Alliance, y estos son: Automatizacion de Hogares. Energa inteligente. Automatizacion de edificios comerciales.

Cluster: un cluster es un mensaje definido con un perfil. Los clusters son usados para
especificar una nica funcin, servicio o accin. Unos ejemplos de cluster en automatizacin de hogares son:

On/off. Usado para encender y apagar. Control de nivel. Cada cluster tiene 2 byte identificadores asociados (Cluster ID). Los cluster frecuentemente tiene asociados un mensaje de respuesta.

Endpoint: cada endpoint funciona similar a un puerto TCP/IP, pensado para soportar

una aplicacin. Cada aplicacin endpoint tiene asociado 1 byte de identificacin en un rango de 1 a 240, cada endpoint esta asociado a un perfil de aplicacin.

Zigbee Device Profile: el profile id 0x0000 esta reservado para ZDP. Este perfil esta implementado en todos los dispositivos Zigbee. Este soporta el manejo de los dispositivos en la red.
CONSTRUCCION DE LA TRAMA API. El inicio de trama siempre es 7E. La longitud tiene un valor de dos bytes que especifica el numero de datos que va a contener la trama de datos.

La trama de datos tiene una estructura especifica. El cmdID indica cuales son los mensajes que estarn contenidos en la trama cmdData. Los modulos Xbee soportan las siguientes tramas API:

El Checksum es calculado y verificado con los datos que no son de escape. Para calcularlo no se incluyen el inicio de trama ni la longitud. Se suman todos los bytes manteniendo solo los 8 bits mas bajos y al resultado se resta de 0xFF.
Example: Crear una trama API con un comando AT y confirmarlo con 0xFF). La trama seria. 0x7E 0x00 0x05 0x08 0x01 0x4E 0x4A 0xFF 5F donde 0x0005 = longitud 0x08 = tipo de tram API (Comando AT) 0x01 = Identificacion de trama (un valor no cero) 0x4E4A = comando AT ('NJ') 0xFF = (set NJ to 0xFF) 0x5F = Checksum El checksum se calcula como [0xFF - (0x08 + 0x01 + 0x4E + 0x4A + 0xFF)]. Los siguientes son ejemplos de diferentes tipos de trama API. Transmitir un mensaje al coordinador

Enviar una peticin de comando remoto A T.

Estado de la transmisin Zigbee.

ANEXO DE TABLAS DE COMANDOS AT.

REFERENCIAS: MANUAL SERIE 2 ZB RF MODULES REV D. www.olimex.cl/pdf/Wireless/ZigBee/XBee-Guia_Usuario.pdf

Otrosejemplos: http://rubenlaguna.com/wp/2009/03/12/exampleofxbeeapiframes/ http://www.digi.com/support/kbase/kbaseresultdetl.jsp?kb=184

You might also like