ENGLISH
|
ESPAÑOL
::: Primeros pasos en GPRS :::
 

1era. Parte.

El artículo anterior tuvo como objetivo introducirnos en el mundo del GPRS. En este, se detallaran los pasos a seguir para establecer una conexión GPRS y se ejemplificara el uso de los comandos básicos del stack TCP/IP de los módulos GSM/GPRS de Motorola.

Concepto de Funcionamiento:

En la figura que se muestra a continuación se ven los elementos que intervienen en una conexión GPRS.



El equipo remoto, el cual esta formado por un DTE (Data Terminal Equipment) y un ModemG20/G24. El DTE es quien necesita enviar y recibir datos, y lo realiza utilizando el ModemG20/G24.

La red GSM, es a través de la cual se brinda el servicio de GPRS y esta compuesta por un conjunto de BTS (Base Transceiver Station), y es este conjunto el que genera la cobertura de red.

El Gateway, es un dispositivo puesto a disposición de los usuarios por parte del prestador del servicio GSM, el cual asigna a cada dispositivo que se conecte una IP privada en forma dinámica para la comunicación, y permite el envío y la recepción de paquetes hacia y desde Internet.

El Servidor, es el equipo que recibe los paquetes enviados por el equipo remoto a través de la red GSM, y quien con ellos realiza alguna tarea. La cual puede ser desde reenviar los paquetes recibidos a otros equipos remotos o mostrarlos en una página web disponible en Internet, etc. Este debe poseer una IP fija de Internet, y tendrá un puerto TCP/IP en modo escucha (LISTEN) el cual recibirá los paquetes IP desde Internet enviados por el remoto a través de GPRS. A fin de confirmar la recepción, es conveniente preveer que el servidor confirme la llegada correcta de un paquete enviando otro hacia el DTE.

Para realizar el envío de datos a través de GPRS, se deben seguir los siguientes pasos.

1- Registrarse en la Red GSM.

Esta tarea es realizada automáticamente por el modulo GSM/GPRS, de igual forma se puede realizar manualmente a través del comando AT+CREG. Es necesario antes de realizar cualquiera de las siguientes acciones que el modulo se encuentre registrado, lo que se puede verificar con el mismo comando antes nombrado y como se detallara en el ejemplo.

2- Attachearse en la Red GPRS.

Esta tarea es realizada automáticamente por el modulo GSM/GPRS, de igual forma se puede realizar manualmente a través del comando AT+CGATT. Es necesario antes de realizar cualquiera de las siguientes acciones que el modulo se encuentre attacheado, lo que se puede verificar con el mismo comando antes nombrado y como se detallara en el ejemplo.

3- Abrir una conexión con el Gateway de la prestadora.

Esta tarea se realiza en forma manual y a través del comando AT+MIPCALL. Ejecutado este comando se pueden llegar a obtener dos respuestas por parte del Gateway de la prestadora:

1- +MIPCALL: 172.17.53.121<CR><LF>
2- +MIPCALL: 0<CR><LF>

La primera de ellas nos indica que se ha establecido una conexión y que para la comunicación con el Gateway se nos ha asignado la IP mostrada. La segunda respuesta nos indica que no se ha podido establecer una conexión.

Debemos aclarar que la IP que el Gateway nos entrega es privada y solo para comunicarnos con él. Cuando nosotros enviamos un paquete hacia Internet, este va desde nuestro equipo hacia el Gateway y sale a Internet por una IP publica y dinámica asignada por el Gateway, la cual estará relacionada con la IP privada que tenemos durante un periodo de tiempo que dependerá de la política de cada prestadora.

La sintaxis del comando AT+MIPCALL es la siguiente:

AT+MIPCALL:<Operación>,”<APN prestadora>”,<USR>,<PSW><CR><LF>

Donde “Operación” puede ser conectar (1) o desconectar (0).

Y para las diferentes prestadoras tenemos los siguientes APN’s, USR’s y PSW’s.

Movistar: APN: internet.unifon USR: wap PSW: wap.
CTI Movil: APN: internet.ctimovil.com.ar USR: gprs PSW: gprs.
Personal: APN: gprs.personal.com.ar USR: gprs PSW: gprs.

4- Abrir el puerto del Servidor en Internet.

Luego que se tiene una conexión, se debe abrir el puerto destino de nuestro servidor.
Para realizar esta tarea se debe usar el comando AT+MIPOPEN, el cual tiene la siguiente sintaxis:

3- AT+MIPOPEN:<Socket>,<Port_Origen>,”<IP_Destino>”,<Port_Destino>, <Protocolo><CR><LF>

Donde “Socket” puede ser de 1 a 4, y “Protocolo” TCP (0), que es nuestro caso, ya que SMTP corre sobre TCP, o UDP (1).

Este comando nos informara si la apertura del puerto fue realiza satisfactoriamente o no, y esto lo hará a través de la siguiente respuesta.

4- +MIPOPEN: <Socket>,<Estado><CR><LF>

Donde si “Estado” es igual a 1, significa que el puerto fue abierto, si el estado es igual a 0 significa que no se pudo abrir.

5- Codificar la información a transmitir.

La información a enviar no se puede transmitir en formato de carácter sino que hay que pasarlos a hexadecimal.
Como ejemplo de esto vemos el famosos mensaje “HOLA MUNDO” que pasando a formato hexadecimal queda de la siguiente forma “484F4C41204D554E444F”

6- Cargar en el Buffer de transmisión la información.

Los datos que vamos a transmitir, se deben colocar primero en un Buffer del modulo G20/G24. Esto se realiza a través del comando AT+MIPSEND, el cual tiene la siguiente sintaxis:

AT+MIPSEND=<Socket>,”<Data>”<CR><LF>
Donde “Socket” nos indica por cual de los 4 sockets van a salir los datos. Y “Data” es el dato codificado en hexadecimal como se explico arriba, no pudiendose cargar mas de 160 caracteres en este campo, lo que representa 80 caracters sin codificar. Como resultado de este comando podemos tener dos respuestas.

ERROR<CR><LF>

En cuyo caso, si tuvimos la precaución de configurar el modo texto del comando de reporte de errores, vamos a saber cual es el posible problema.

+MIPSEND: <Socket>,<Free Size><CR><LF>

En este caso, los datos fueron bien buffereados y la respuesta nos informa además el espacio libre en el Buffer para seguir almacenando datos.

7- Transmitir la información.

Esta se realiza a través del comando AT+MIPPUSH, y la sintaxis es la siguiente:

AT+MIPUSH=<Socket><CR><LF>

Continuará..........

 
Solicite mayor información en: ingenieria@electrocomponentes.com
 
 
Solís 225 / 227 / 229 (1079) - Buenos Aires, Argentina. - Tel: (54 11) 4375-3366 Fax: (54 11) 4325-8076
© Electrocomponentes S.A. - Todos los derechos reservados