1 Control y Guiado de un Robot Móvil Autónomo mediante Tecnología GSM. Artal J.S., Caraballo J. y López D. Departamento de Ingeniería Eléctrica. Escuela Universitaria de Ingeniería Técnica Industrial. Universidad de Zaragoza, Campus Tecnológico Río Ebro. María de Luna nº 3. Edificio Torres Quevedo, 50018. Zaragoza, Spain. E-mail: [email protected]. Tlfno: 976 762823. Fax 976 762226. Abstract— Las aplicaciones constituidas por las tecnologías celulares GSM & GPRS han demostrado sobradamente su eficacia en el sector de las telecomunicaciones durante las últimas décadas. Debido a que el uso del teléfono móvil está tan extendido, en el presente documento se ha seleccionado la red inalámbrica GSM para el desarrollo de una aplicación basada en una comunicación bidireccional point-to-point con un pequeño robot móvil autónomo. Dicha comunicación se efectúa a través de mensajes cortos de texto SMS. Para la gestión de las comunicaciones se ha hecho uso de los comandos AT, lo que permite gobernar el módulo Siemens TC65 implementado en el robot. A su vez este dispositivo es el encargado de enviar y recibir llamadas y mensajes de texto de manera similar a un teléfono móvil. De esta forma la comunicación entre ambos interlocutores (usuario ↔ robot) es posible, aunque se encuentren a grandes distancias e incluso diferentes continentes, siempre y cuando se localicen en el interior de una zona con cobertura. Index Terms — Mobile Communications Systems, GSM/GPRS Network, Remote Control, Mobile Robots, AT Command. I. INTRODUCCIÓN E L ámbito de las telecomunicaciones han transformado el mundo que conocíamos, en tan apenas las dos últimas décadas. Gran parte de esta revolución se debe a la tecnología GSM aplicada a la telefonía móvil. Palabras cómo tarjeta SIM, códigos PIN y PUK, SMS, llamada pérdida o buzón de voz eran desconocidas para muchos a mediados de los años 90 y a día de hoy, pasada una década del tercer milenio, las usamos cómo si llevasen una eternidad entre nosotros. Los teléfonos móviles son dispositivos que con el paso del tiempo se han convertido en objetos familiares al alcance de todo el mundo. Gran parte del éxito de la tecnología GSM en un principio -Groupe Spécial Mobile-, se debe al acuerdo MoU (Memorandum of Understanding) de las operadoras de telefonía de los principales países europeos en 1987, que posteriormente se amplio a países de África, Asia y Australia. Así desde 1989 continúa con las tareas de normalización el ETSI (European Telecommunication Standards Institute). Es en este momento donde las siglas se mantienen, pero se modifica su significado por “Global System for Mobile communications”. Las redes de telefonía y normas de la primera generación fueron muchas y distintas en cada país, siendo por lo general incompatibles entre si. En Norteamérica el sistema empleado fue AMPS (Advanced Mobile Phone Service), Italia y Reino Unido optaron por TACS (Total Access Communication System), en los países nórdicos NMT (Nordic Mobile Telephone) mientras en España se utilizaron NMT y TACS. Por todo ello, el acuerdo conseguido para la segunda generación de telefonía móvil fue un paso muy importante que permitió unificar criterios y normas, facilitando la compatibilidad de los terminales, en beneficio de los usuarios. De esta forma GSM es la denominada segunda generación de telefonía móvil, GPRS (General Pocket Radio Service) [1] se corresponde con la generación 2,5 y UMTS (Universal Mobile Telecommunications System) es la tercera generación conocida vulgarmente como 3G. II. CIRCUITO DE APLICACIÓN GSM Con objeto de implementar una comunicación inalámbrica haciendo uso de la red de telecomunicaciones GSM, se ha desarrollado un circuito de aplicación destinado al control del módulo TC65 -fabricado por Siemens Mobile-. En la actualidad para conseguir el módulo hay que dirigirse a la compañía Cinterion. Este dispositivo puede actuar en las 4 bandas de frecuencia destinadas a la red GSM. Su control ha sido efectuado por medio de un microcontrolador PIC16F876 -Microchip- que dispone internamente de un elemento USART (Universal Synchronous Asynchronous Receiver Transmitter), lo que permite efectuar la comunicación entre los dispositivos de una manera sencilla, μP ↔ GSM TC65. Figura 1. Módulo TC65 –Siemens- implementado en el robot. El módem GSM posee unas dimensiones de 34×45×3,5mm y un peso aproximado de 7,5g; ver figura 1. El sistema ofrece una potencia de emisión de 2W (clase 4) para las frecuencias de 850/900MHz y una potencia de 1W (clase 1) para las frecuencias de 1800/1900MHz. Los valores de consumo más elevados aparecen asociados a la corriente de alimentación del dispositivo en aquellos instantes donde se produce una comunicación con otro módulo, ya sea motivado por una llamada entrante, el envío de mensajes cortos de texto SMS en la red GSM o la transmisión de información por medio de la comunicación GPRS. Según el fabricante, durante el tiempo en que la comunicación se ha establecido, el valor máximo de los picos de corriente puede oscilar entorno a los 3,2A. Estos 2 picos poseen una duración de 500μs y se repiten con un periodo de 5ms aproximadamente, ver figura 2. Ésta gráfica de consumo tiene su origen en el protocolo de comunicación de la red GSM, donde el tiempo de enlace queda dividido en partes -denominados slots-, alternándose los motivados por la transmisión (instantes donde aparecen los picos de corriente) y los debidos a la recepción de datos (momentos donde el consumo es casi mínimo). peligrosos (existe posibilidad de inflamación de la pila), el proceso de carga es finalizado. Si por el contrario la energía se obtiene a través de un dispositivo externo, una opción de alimentación sería el uso de un regulador con bajo dropout. Figura 3. Esquema de carga de una batería mediante el TC65. Figura 2. Consumo de corriente durante la comunicación. El sistema de alimentación del dispositivo TC65 debe ser capaz de proporcionar los picos de corriente, anteriormente citados, sin incorporar un excesivo valor de tensión de rizado VRIPPLE ≤ 400mV. Este fenómeno obliga a que la resistencia de salida del equipo de alimentación posea un valor relativamente bajo; como consecuencia del mínimo valor de tensión de alimentación que posee el módulo, VSUPPLY = +3,2V. El valor mínimo necesario para su correcto funcionamiento, no es coincidente con el existente en los pines de alimentación del dispositivo, sino con el presente en un condensador interno (valor sensiblemente inferior), figura 2. Para conocer en todo momento el valor exacto de alimentación, se envía el comando AT^SBV. Como resultado de la ejecución de esta instrucción el dispositivo devuelve el valor de su tensión en milivoltios. El fabricante recomienda que la resistencia de salida posea un valor inferior a RO < 130mΩ. En este supuesto, son las baterías de Litio (Litio-ion o Litio-polímero) las más adecuadas para su uso. Estas baterías poseen como principal característica su baja resistencia interna de salida (datos típicos del fabricante Energizer: Pb-acid ≤ 20mΩ, LiPo ≈ 90/120mΩ, Ni-MH ≈ 25/40mΩ, NiCd ≈ 25/35mΩ o Liion ≈ 25/75mΩ). De este modo, el módulo TC65 se encuentra preparado para una alimentación con este tipo de baterías –el valor de tensión de una celda de litio VCell = +3,7V es coincidente con el valor de tensión aceptado por el dispositivo–. Así el sistema ofrece la posibilidad de efectuar de forma automática el proceso de carga de esta batería mediante la incorporación de un pequeño circuito externo, figura 3. Como se puede apreciar la carga puede ser realizada a través de un transistor controlado mediante el pin 'CHARGEGATE'. Los terminales VSense e ISense controlan los parámetros de tensión y corriente durante el proceso de carga. En el supuesto de no utilizar el cargador, estos pines deben conectarse a BAT+ para el correcto funcionamiento del dispositivo. Así el módulo permite gestionar la temperatura de la batería, mediante la incorporación de una resistencia NTC al pin BATTEMP. Si esta temperatura alcanza valores El módulo TC65 dispone de un conector U.FL para incorporar una pequeña antena exterior. Así pues se ha seleccionado una antena de telefonía de alta ganancia, Pentaband GSM+UMTS PC29 -Taoglas- que se encuentra construida sobre tecnología PCB y posee unas dimensiones de 80×30×0,8mm. Su diseño es ideal para la integración y desarrollo global de aplicaciones, encontrándose optimizada en las redes de telefonía UMTS, WCDMA(3G) - HSPA(3,5G) de 2100MHz y las bandas GSM 850/900/1800/1900MHz. TABLA 1. Características Técnicas de la antena GSM+UMTS PC29. Sistema Frecuencia Eficiencia Ganancia Impedancia Radiación Polarización AMPS GSM DCS PCS UMTS 850MHz 900MHz 1800MHz 1900MHz 2100MHz 56,84% 72,98% 63,52% 55,79% 63,25% -2,45dB -1,37dB -1,97dB -2,53dB -1,99dB 50Ω Omni-direccional Horizontal El módulo TC65 dispone de 10 pines de entrada-salida configurables, donde el terminal GP10 puede actuar a su vez como contador de pulsos. En la aplicación aquí desarrollada este puerto GPIO se ha considerado como un puerto de expansión adicional del μP. El máximo valor de su tensión de entrada se corresponde con 3,05V considerándose el umbral del estado alto en 2,15V. Como salida en estado bajo posee un umbral máximo correspondiente a 0,2V. El fabricante recomienda la conexión pull-up o pull-down de manera externa en caso de utilizar estos terminales como salida. Los terminales ADC1_IN y ADC2_IN pueden actuar como sendas entradas analógicas, de forma que permiten la lectura de valores de tensión comprendidos dentro del intervalo -25/+2425mV; los valores de tensión situados fuera del rango no son tenidos en consideración por el dispositivo. Del mismo modo, el terminal SYNC, configurable mediante el comando AT^SSYNC, nos permite visualizar el estado del módulo cuando es conectado a un diodo led. Así pues cuando el led permanece apagado indica que el dispositivo se encuentra en modo POWER DOWN (apagado); un parpadeo intermitente de 600ms on/off, indica la ausencia de la tarjeta SIM o que el código PIN debe ser introducido; un parpadeo 75ms/3s indica que el módulo está conectado a una red GSM mientras que una iluminación constante, indica el modo llamada. 3 Figura 4. Desarrollo del sistema mínimo implementado en el robot. El dispositivo Siemens TC65 utilizado es un módulo comercial OEM -Original Extended Manufacturer- que debe ser integrado en un sistema externo más complejo -el dispositivo no se encuentra preparado para el uso de modo autosuficiente-. De esta forma se ha desarrollado un sistema mínimo constituido por el módulo TC65, una antena GSM, la tarjeta SIM, el μP PIC16F876 y los componentes discretos necesarios para garantizar un correcto funcionamiento, ver figura 4. El conector correspondiente al módulo Siemens es el elemento de mayor complejidad a la hora de integrarlo en la placa PCB. Es un conector del tipo Molex board-board que contiene 80 pines con unas dimensiones de 5,30×20,54mm, debido al pequeño tamaño de los terminales 0,25×1,2mm su soldadura debe ser realizada con herramientas de precisión. Unas tiras de zócalos hembras rodean al módulo, lo que proporciona el acceso a todos los terminales del dispositivo. Figura 5. Circuito de Aplicación constituido por μP16F876. El arranque del dispositivo se consigue mediante el pin IGT “Ignition” a través de la introducción de un flanco descendente procedente del terminal RA0 del μP. Tras dicho evento se produce el arranque del módulo TC65. Aunque la principal peculiaridad del módulo es su autonomía -puede ser programado mediante el software Java Micro-Edition y dispone de un puerto de salida GPIO para comunicación con otros equipos- se ha utilizado un dispositivo externo para su gestión. En la presente comunicación no se ha considerado objeto de estudio la programación java del dispositivo. Así pues, la conexión del sistema TC65 con el PIC debe realizarse a través de uno de los puertos serie del módem -por ejemplo ASC0- junto con los pines de la USART del PIC destinados a la comunicación serie asíncrona TX / RX. Señalar que la nomenclatura utilizada por el puerto serie del módulo TC65 puede llevar a confusión, ya que el terminal RXD0 se corresponde con la transmisión de datos mientras que el pin TXD0 pertenece a la recepción. Ambos dispositivos utilizan voltajes de alimentación distintos (TC65 → 4,2V; PIC → 5V), de modo que requieren una adaptación entre los niveles de tensión correspondientes a sus puertos serie. El valor ofrecido por el TC65 en su terminal RX adecuado al 1 lógico digital es +3V, valor aceptado a su vez por el pin RX del μP. Pero no así en sentido inverso donde los +5V del terminal TX del μP no es admitido por el pin TX del TC65, provocando además daños irreversibles en el módulo. Así los contactos del PIC son del tipo TTL, con pull-up programable mediante software, donde a partir de valores ≥ 2V ya consideran el estado alto (1 lógico), mientras que el 0 lógico (estado bajo), se corresponde a valores inferiores a ≤ 0,15VCC. Este inconveniente ha sido resuelto con la incorporación de un adaptador de niveles. Como consecuencia de la pequeña capacidad de almacenamiento que posee el micro en su memoria interna (limitada a una E2PROM de 256bytes) se ha incorporado en el circuito de aplicación una memoria Microchip 24LC16 de 16 kbits (constituidos por 8 bloques de 256bytes), figura 5. Dicha memoria de almacenamiento está gestionada por el μP por medio de su conexión I2C. La necesidad de una mayor capacidad queda justificada por el número de mensajes SMS que es preciso almacenar. Los diversos mensajes de texto empleados junto con la serie de instrucciones (AT Command) usadas por el dispositivo, son almacenados en las memorias como cadena de caracteres. Estos mensajes están compuestos aproximadamente por 100 caracteres en formato ASCII, donde cada carácter ocupa 1 byte de memoria aproximadamente (1sms ≅ 100bytes). Indicar del mismo modo, que las distintas instrucciones en formato AT Command son almacenadas en la memoria interna del μP con objeto de reducir el tiempo de acceso a la información. La posición que ocupa el primer carácter y el número total de caracteres que conforman cada mensaje de texto, son conocidos de antemano por el μP lo que facilita y agiliza su uso. De esta manera, la cadena de caracteres ASCII que compone el cuerpo del mensaje de texto SMS, son recogidos de la memoria E2PROM externa a través de la comunicación I2C y almacenados temporalmente en un registro del μP. Una vez allí son combinados junto al AT Command, constituyendo la instrucción a transmitir al TC65. Figura 6. Formato de datos 8-N-1 (bits - parity - stop) a transmitir. La transferencia de información entre el μP y el módulo TC65 se efectúa a través de una comunicación serie asíncrona que puede ser configurable en ambos módulos con una velocidad de transferencia de datos predeterminada de 9600 bps. Cada paquete de información está formado por 1 bit de start, 8 bit 4 de datos y 1 bit de stop, no existiendo bits de paridad. A. AT Command. En los casos donde no se hace uso de la programación en Java, el control del módulo TC65 se efectúa mediante el lenguaje constituido por el juego de comandos de Hayes, denominados coloquialmente Comandos AT donde sus iniciales provienen de la abreviatura de “Attention”. Estos comandos, creados originalmente por la compañía Hayes en el año 1977, fueron poco a poco tomados por el resto de compañías como un lenguaje standard para el control de los módems. Así con la aparición de las redes GSM, la mayoría de las compañías de telecomunicaciones adoptaron también este lenguaje para la gestión de los diferentes terminales móviles. En este lenguaje de comunicación se hace uso de una serie de instrucciones standard, válidas para cualquier módem de comunicación GSM, donde los paquetes de datos que constituyen las instrucciones siempre poseen la misma estructura. Estos paquetes de datos están integrados por caracteres ASCII y son enviados mediante una transmisión serie (lo que permite utilizar el teclado del ordenador y la ejecución del programa Hyperterminal). De este modo, en el dispositivo TC65 estos comandos de control son transmitidos vía serie, mediante los puertos ASC0, ASC1 del dispositivo o la conexión USB. Cuando el dispositivo reconoce un comando AT válido, muestra por la línea de entrada un aviso de aceptación “OK”, figura 7. En caso contrario, situación de rechazo, el mensaje mostrado se corresponde con “ERROR”. A continuación se presentan los principales comandos que han sido empleados para el control del dispositivo TC65. AT^SCFG: Configuración de varios parámetros principales del módulo, el puerto serie principal y la gestión de las URC. AT+CPIN="$$$$": Introducción de la clave PIN necesaria para desbloquear la tarjeta SIM. Imprescindible en la conexión a red GSM. Sin la introducción de la contraseña la tarjeta SIM permanece invisible. ATD665417539: Comienzo de una llamada a través de la red GSM desde el terminal hacia el usuario cuyo número de subscripción aparezca indicado. Para establecer la conexión este usuario debe aceptar dicha llamada. AT+CHUP: Permite rechazar una llamada entrante durante los instantes en los que ésta se produce. AT+CLIP: Permite obtener el número de teléfono del usuario que efectúa la conexión con nuestro terminal. AT+CMGS: Envío de un mensaje corto de texto. En primer lugar se indica el tipo de mensaje junto con el número del destinatario. Tras la respuesta del dispositivo se introducen el conjunto de caracteres ASCII que forman el texto del mensaje. AT+CMGF: Configuración del tipo de estructura de los mensajes. Selección entre el modo PDU (los caracteres están constituidos por 7 bits quedando todos ellos encadenados) y el modo TEXTO –tipo utilizado en la aplicación implementada-. AT^SBV: Valor de la tensión de entrada del dispositivo (mV). AT+CMGR: Lectura de mensajes SMS almacenados en la memoria del dispositivo TC65 o en la tarjeta SIM. AT+CPBR: Lectura de un número de teléfono almacenado en la agenda de direcciones, ya sea en la SIM o en el TC65. AT^SCKS: Estado cerrado/abierto del zócalo SIM. AT+CNMI: Configuración de la indicación del nuevo mensaje SMS recibido, junto con la posición que ocupa en la lista de mensajes acumulados en memoria. Esta posición es necesaria para su posterior lectura. AT^SSYNC: Configuración del pin SYNC. AT^SCPIN: Configuración del puerto de entrada-salida GPIO. AT+CMTI: Aviso de recepción de un mensaje de tipo SMS. ATE: Habilita el eco del dispositivo en los puertos de comunicación. Devuelve el carácter recibido en el puerto serie lo que permite su visualización mediante el Hyperterminal. En la transmisión de información entre un módem GSM y el terminal móvil se han utilizado los mensajes de texto, que coloquialmente se denominan SMS -short message service-. Estos mensajes forman parte del standard GSM que permite, de una manera sencilla, el envío de un máximo de 140 caracteres ASCII de 8 bits (modo texto) o 160 caracteres ASCII de 7 bits (modo PDU). Si esta última opción es la seleccionada, en ella no resulta permitido el envío de símbolos específicos del castellano como la letra ñ o las vocales acentuadas. Con objeto de simplificar el manejo de los SMS por la aplicación, se utiliza el modo texto (símbolosSMS ≤ 140). Figura 7. Ejemplos de comunicación TC65 mediante Hyperterminal. Como ejemplo, en el envío de mensajes de texto se utiliza el comando AT+CMGS, siendo necesarios los siguientes pasos: 1- Se envía el comando correspondiente a un mensaje corto de texto: AT+CMGS = 665417539 <CR> 2- Espera de la respuesta de dispositivo listo: > 3- Se introducen la serie de caracteres ASCII que conforman el cuerpo del mensaje, por ejemplo: "Destino recibido. Me dirijo hacia la posición $$" <^Z> 4- Si el proceso ha sido correcto el módulo responde: OK. Las URCs "Unsolicited Result Codes" son una serie de datos y comandos enviados por el dispositivo (de formato similar a un flag) que no son respuesta a una petición de información del usuario o resultado de la ejecución de una instrucción anterior. Así por ejemplo el URC "^SYSSTART" indica el arranque del TC65. Al tratarse de una comunicación asíncrona es importante el adecuado seguimiento de estos indicadores. Los más utilizados son los avisos de llamada entrante "RING", mensaje SMS recibido "+CMTI" o tensión del dispositivo por debajo del límite mínimo "^SBC: Undervoltage", ver figura 7. El indicador de recepción de un nuevo mensaje de texto se efectúa mediante el flag URC “+CMTI”. Cuando un mensaje SMS es recibido por el TC65, el dispositivo envía por su 5 puerto serie la cadena de caracteres: +CMTI: “ubicación del mensaje”, “nº de posición” <CR>. La ubicación del mensaje significa el lugar físico donde está almacenado el mensaje recibido, “SM” = tarjeta SIM, “ME” = TC65, “MT” = Puede estar en uno o en otro. De la misma forma el nº de posición, indica la localización del mensaje recibido dentro de la lista de mensajes. Posteriormente estos datos son necesarios para obtener la cadena de caracteres del mensaje recibido. Esto es posible mediante el comando: AT+CMGR = nº de posición <CR>. Como respuesta se obtiene el número de identificación del remitente y los caracteres que conforman el mensaje SMS. Otro ejemplo consiste en el establecimiento de comunicación con otro dispositivo mediante el uso del comando ATD. 1- Intento de conexión: ATD665417539 <CR> 2- Si el dispositivo no es capaz de conectar con la red GSM, la respuesta del módulo es: NO CARRIER <CR>; si por el contrario el terminal que recibe la llamada rechaza dicha comunicación, la respuesta es: BUSY <CR>. Cuando el módulo recibe un intento de conexión procedente de otro dispositivo, aparece por el puerto de comunicación: 1- URC correspondiente a la llamada entrante: RING <CR> 2- Código de Identificación del usuario que realiza la llamada: +CLIP:”665417539”, 129,,,,0 3- Estos avisos aparecen cada segundo durante el tiempo que el usuario que efectúa la llamada intenta la conexión. 4- Para rechazar la llamada entrante: AT+CHUP <CR> En un principio, para la configuración inicial del módulo y comprobar su correcto funcionamiento, se realizó la conexión del mismo al PC a través del USB. Así mediante el programa Hyperterminal se efectuó la configuración del puerto serie 0 -RXD0 y TXD0- para que fuese compatible con el PIC. Entre los parámetros que deben ser redefinidos se encuentran la velocidad de transferencia de datos “bit-rate”, paridad, etc... Otras variables a configurar son las relacionadas con la tarjeta SIM incorporada al dispositivo. En ella se almacenan los datos correspondientes al cliente, como por ejemplo el número de teléfono que se utiliza para la identificación en la conexión a la red GSM. Las opciones de seguridad también constituyen otra serie de parámetros a configurar en la SIM, por ejemplo el número PIN está compuesto por 4 caracteres alfanuméricos que deben ser introducidos para desbloquear la tarjeta. La mayor parte de estos parámetros quedan registrados en la memoria del módem y no es necesario repetirlos cada vez que es encendido el equipo. B. La Tarjeta SIM. La tarjeta SIM (Subscriber Identity Module) es un dispositivo de almacenamiento de pequeño tamaño, inteligente y desmontable utilizado en teléfonos móviles o módems. El uso de este componente es obligatorio para operar en la red de comunicaciones GSM. El equivalente a la tarjeta SIM en las redes UMTS (Universal Mobile Telecommunications System) se denomina UICC – Universal Integrated Circuit Card. La tecnología UMTS es usada en los móviles de tercera generación siendo sucesora de la técnica GSM. Sus principales características son la capacidad multimedia, elevada velocidad de acceso a Internet y la incorporación de una extensa variedad de servicios [2, 3], ver figura 8. Figura 8. Estructura interna de una tarjeta SIM. En el interior de la SIM se encuentran parámetros básicos como la identidad del usuario -utilizada para autentificarse ante la red, de esta manera es posible intercambiar la línea de un terminal a otro simplemente cambiando la tarjeta-, la identificación del área local LAI - Local Area Identification, el nombre del proveedor de servicios (MoviStar, Vodafone, Orange,...) junto con el número de serie de identificación IMSI – International Mobile Subscriber Identity o la clave de autenticación Ki – Authentication Key. Cada SIM dispone de una clave Ki única, posee un valor de 128bits (16bytes) y tiene por objeto el permitir la identificación de la tarjeta en la red. Todos estos datos se encuentran disponibles en el interior de la memoria que posee una capacidad de almacenamiento del orden de 16 a 512kbytes. El dispositivo que contiene la SIM (teléfono móvil, módem GSM...) la utiliza para almacenar una cantidad limitada de mensajes SMS o la agenda de direcciones del usuario -donde se almacenan números de identificación de otras personas y números de servicios del proveedor de la red-. La tarjeta SIM standard más popular posee 8 contactos entre los que destacan los terminales IO (línea serie de entrada y salida de datos) y CLK (señal de reloj fC ≤ 5MHz), operando a una tensión de alimentación de +1,8/3V (ISO/IEC 7816-3) [3]. La tarjeta empleada en nuestro supuesto es del tipo mini-SIM card y posee unas dimensiones de 25×15×0,76mm, siendo su consumo ≤ 20mA (máximo valor de corriente capaz de proporcionar el TC65). A su vez el módulo TC65 dispone del pin CCIN (no posee equivalencia con la tarjeta SIM) que situado sobre el zócalo indica cuando se encuentra cerrado conteniendo en su interior una tarjeta. De esta manera, es utilizado para evitar errores de funcionamiento cuando la tarjeta es extraída del zócalo de forma insegura [3]. Una vez que el dispositivo TC65 ha sido encendido, es necesario introducir la orden de desbloqueo de la tarjeta SIM por medio del comando AT+CPIN=$$$$. Este requisito puede ser omitido si durante la configuración no se ha considerado el parámetro de seguridad. La conexión a la red GSM se efectúa de forma automática por el módulo. Para lo cual la tarjeta SIM debe encontrarse activada, es decir con el usuario dado de alta en una compañía que opere en territorio nacional. Si por el contrario se dispone de una tarjeta prepago es preciso disponer de saldo para efectuar acciones como enviar un SMS o llamar a otro usuario. Mediante el comando AT+CREG es posible comprobar si nos encontramos en una red GSM con el módulo preparado para el intercambio de información. 6 C. Configuración mediante Hyperterminal. La configuración previa y comprobación de funcionamiento del dispositivo TC65 es realizada mediante la conexión USB del ordenador. Los terminales destinados a esta conexión son USB_IN, USB_DP y USB_DN, utilizando como referencia una masa cualquiera del módulo. El driver necesario para su reconocimiento es enviado por el fabricante o distribuidor junto al dispositivo en el momento de la compra y debe ser instalado antes de su utilización. También se adjuntan ficheros con los datasheets del dispositivo, lista completa de comandos AT, descripción del hardware y otras herramientas útiles para el desarrollo de una aplicación. Así mediante el programa Hyperterminal incluido en Windows es posible introducir las diversas instrucciones, configurando las características del puerto serie y efectuando al mismo tiempo un chequeo de las diferentes funcionalidades del dispositivo, de forma previa a su implementación. Cuando el módulo ha sido configurado, su gestión se efectúa de manera autónoma por el μP del robot. III. APLICACIÓN DEL TC65 AL ROBOT El circuito constituido por el dispositivo TC65 ha sido integrado en un pequeño robot móvil autónomo (denominado MBot) con objeto de garantizar una comunicación inalámbrica mediante la red GSM. De esta forma la información derivada de las diversas incidencias del robot puede ser recibida por parte del usuario. La comunicación se ha efectuado a través de un puerto de expansión del MBot y el puerto B del PIC16F876 que es el encargado a su vez de gestionar el TC65. Este robot opera en el interior de una pequeña aplicación logística, donde traslada objetos entre los diferentes puntos del almacén con la ayuda de una herramienta tipo pinza, figura 9. Figura 9. Robot Móvil denominado “Teseo”, trasladando un pequeño objeto a las coordenadas de destino. Con objeto de establecer un canal de comunicación e iniciar su funcionamiento, el MBot debe recibir 2 llamadas -para evitar posibles errores- desde un dispositivo conocido (el número de usuario debe encontrarse almacenado en la SIM). Esta llamada puede ser efectuada, por ejemplo desde un teléfono móvil o un módem GSM conectado al ordenador. Así pues, una vez se haya establecido la comunicación, desde el MBot se le remite al usuario un SMS "Conexión establecida. A la espera de destino" con la finalidad de informar sobre la constitución de dicha conexión. A partir de este momento el robot permanece en modo stand-by a la espera de recibir nuevas instrucciones. Por su parte el usuario debe enviar un SMS indicando al MBot las nuevas coordenadas de la dirección de destino. Cuando el robot inicia su desplazamiento transmite un SMS de confirmación "Destino recibido. Me dirijo hacia la posición $$", donde indica su cometido al cliente. Una vez que ha llegado al destino y con el objeto atrapado, el usuario recibe otro mensaje "Misión completada. Pieza recogida. En espera del nuevo rumbo" solicitando el nuevo destino al que transportar el objeto. De este modo, el MBot va cumpliendo las diferentes solicitudes hasta que la persona envía un SMS con la finalización de la maniobra "Fin de operaciones", tras la cuál el robot se traslada a su posición de referencia. Hay que indicar que el pequeño robot también transmite un SMS predefinido con objeto de indicar al usuario las diversas incidencias que van sucediendo durante el transcurso del desplazamiento. Así estos mensajes tienen lugar por ejemplo en una de las siguientes circunstancias: tensión de alimentación por debajo del umbral mínimo "Bajo voltaje, necesidad de energía", ruta cortada por objeto fijo o móvil "Error. Ruta cortada por objeto fijo/móvil", fallo en la navegación "Error. Fallo en la navegación", estación de destino sin objeto "Error. No existe objeto en el destino",... El circuito de comunicación también transmite un SMS de forma autónoma si se detecta un fallo en la comunicación o cuando el MBot se encuentre próximo a un lugar sin cobertura. IV. CONCLUSION En el presente documento se ha descrito una aplicación de control y guiado de un pequeño robot móvil autónomo, basada en la tecnología GSM, mediante el módulo TC65 gestionado a su vez por un microcontrolador PIC. Dicha aplicación permite la comunicación bidireccional point-to-point entre el robot y el usuario por medio de llamadas y mensajes de texto SMS, que contienen la información necesaria para efectuar las acciones y movimientos deseados dentro del entorno logístico planteado. En su implementación se han utilizado los comandos AT para controlar al módulo GSM, gestionando por ejemplo el envío, recepción y lectura de mensajes SMS. Una de las principales ventajas de la red GSM es la posibilidad de que el usuario y el robot se encuentren en lugares e incluso continentes diferentes, existiendo comunicación siempre que ambos interlocutores se encuentren dentro de una zona con cobertura de telefonía. ACKNOWLEDGMENT Los autores agradecen la ayuda financiera concedida por la Universidad de Zaragoza para el desarrollo del presente trabajo, a través del proyecto PIIDUZ_10_2_528. REFERENCES [1] [2] [3] Ghribi B., Logrippo L. "Understanding GPRS: the GSM packet radio service". Elsevier Science Direct. Computer Networks, vol. 34, issue 5. November 2000, pp763 to 779. GSM 11.11. Digital Cellular Telecommunications System (Phase 2+). Specification of the Subscriber identity Module – Mobile Equipment (SIM-ME) Interface. http://www.3gpp.org/ftp/specs/html-info/1111.htm GSM 11.14. Digital Cellular Telecommunications System (Phase 2+). Specification of the SIM Application Toolkit for the Subscriber Identity Module - Mobile Equipment (SIM-ME) Interface.