Explicamos cómo realizar una conexión a Internet, a una página web por socket mediante Arduino UNO y un módulo GPRS/GSM. Mostramos todos los requisitos hardware y software para realizar este proyecto de prueba con Arduino. Indicamos cómo conectar dos Arduinos para enviar la salida serie de uno de ellos (el que lleva el módulo GPRS/GSM) a otro.

Requisitos para realizar conexión a Internet desde Arduino con GPRS

En la siguiente sección del siguiente artículo explicamos los requisitos hardware y software necesarios para realizar el envío de SMS con Arduino y un módulo GPRS, dichos requisitos son los mismos que para la conexión a Internet:

Básicamente necesitaremos un Módulo GPRS (en nuestro caso usamos un GPRS Sagem Quadband Module for Arduino), una Placa Arduino UNO y los requisitos software explicados en este otro artículo, donde también indicamos cómo conectar Arduino al PC paso a paso y cómo enviar programas desde el IDE de Arduino a la memoria Flash de la placa:

Cómo conectar el módulo GPRS a la placa Arduino UNO

En la siguiente sección del siguiente artículo explicamos paso a paso cómo conectar la antena externa al módulo GPRS y cómo conectar el módulo GPRS a la placa Arduino UNO:

Consideraciones importantes a tener en cuenta antes de enviar el programa a Arduino para usar el módulo GPRS

Hay que tener en cuenta que el módulo GPRS tiene «dos posiciones» para la conexión con Arduino:

1. Por un lado hay que indicarle al módulo GPRS cuándo está conectado al PC por el puerto USB (serie emulado), esto se hace colocando dos jumpers que incorpora en la parte superior de la siguiente forma:

Consideraciones importantes a tener en cuenta antes de enviar el programa a Arduino para usar el módulo GPRS

Es muy importante tener esto en cuenta, cuando queramos enviar el programa a Arduino, los dos jumpers deben estar como se indica en la imagen anterior, si no es así el Upload (envío) del programa dará error.

El error que nos mostrará el IDE de desarrollo de Arduino si no hemos colocado los jumpers correctamente será:

avrdude: stk500_getsync(): not in sync: resp=0x00
avrdude: stk500_disable(): protocol error, expect=0x14, resp=0x51

2. Para probar el programa de conexión a Internet o cualquier otra tarea que hayamos programado con Arduino y el módulo GPRS deberemos desconectarlo del USB del PC y alimentarlo externamente. Además, deberemos cambiar los jumpers mencionados anteriormente a esta nueva posición:

Consideraciones importantes a tener en cuenta antes de enviar el programa a Arduino para usar el módulo GPRS

Si no se hace esto, cuando desconectemos Arduino del PC y lo alimentemos externamente, el módulo GPRS no funcionará.

Programar Arduino UNO para realizar una conexión a Internet con el módulo GPRS

Para realizar una conexión a Internet con la placa Arduino UNO, insertaremos una tarjeta SIM en el módulo GPRS con la opción de datos activa, conectaremos el módulo GPRS a la placa Arduino, colocaremos los jumpers del módulo en su posición para conexión con PC y conectaremos Arduino UNO al PC por el puerto USB. Una vez realizados todos estos pasos (explicados anteriormente), abriremos el IDE de desarrollo de Arduino y escribiremos el siguiente programa:

Como siempre, verificaremos el código pulsando en el botón «Verify» del IDE de desarrollo de Arduino:

Programar Arduino UNO para realizar una conexión a Internet con el módulo GPRS

Y lo enviaremos a la placa Arduino pulsando en «Upload»:

Programar Arduino UNO para realizar una conexión a Internet con el módulo GPRS

Enviar salida serie de un Arduino a otro para comprobar resultado de la conexión a Internet

En este proyecto, para poder comprobar la placa Arduino con el módulo GPRS GSM realiza la conexión a Internet correctamente, deberemos conectar una segunda placa Arduino al primero como explicamos a continuación.

Por un lado conectaremos un cable del pin TX – 1 del Arduino sin el módulo GPRS GSM al jumper USB del módulo GPRS GSM como se muestra en la imagen y por otro lado conectaremos un segundo cable del pin GND del Arduino sin el módulo GPRS al ping GND del Arduino con el módulo:

1. Vista del Arduino con el módulo GPRS GSM:

Enviar salida serie de un Arduino a otro para comprobar resultado de la conexión a Internet

2. Vista del Arduino sin el módulo GPRS:

Enviar salida serie de un Arduino a otro para comprobar resultado de la conexión a Internet

3. Vista de los dos Arduinos conectados:

Enviar salida serie de un Arduino a otro para comprobar resultado de la conexión a Internet

Una vez conectados los dos Arduinos, conectaremos el segundo (el que no lleva el programa ni el módulo GPRS) al PC por el puerto USB, iniciaremos el IDE de Arduino, seleccionaremos el puerto desde el menú «Tools» – «Serial Port»:

Enviar salida serie de un Arduino a otro para comprobar resultado de la conexión a Internet

Pulsaremos en el botón «Serial Monitor» y en la ventana que nos mostrará debemos seleccionar la misma velocidad que hayamos indicando en el programa para la conexión serie, en nuestro caso 19200 baud (si no hacemos esto puede que veamos caracteres raros en la pantalla):

Enviar salida serie de un Arduino a otro para comprobar resultado de la conexión a Internet

Ahora alimentaremos eléctricamente el Arduino con el módulo GPRS GSM, tras unos segundos, si la conexión de los dos Arduinos mediante los dos cables es correcta, iremos viendo la salida serie del primer Arduino en el PC y así podremos verificar y testear el resultado de la conexión a Internet:

Enviar salida serie de un Arduino a otro para comprobar resultado de la conexión a Internet