Archivos de la categoría General

Stellaris Launchpad + Energia (pt. 1)

He decidido escribir una serie de posts, acerca del uso del Stellaris Launchpad. Este mini tutorial, vamos a analizar la primera versión del Stellaris Launchpad, que veía con el microcontrolador LM4F120H5QR, pero aplica a las nuevas versiones del board, que tienen el microcontrolador Tiva-C.

Este development board de Texas Instruments, sobresale de otros similares, por que su microcontrolador LM4F120XL tiene las siguientes características:

  • Microcontrolador Stellaris LM4F120H5QR con núcleo ARM® Cortex™-M4 con las siguientes características:
    • Operaciones de punto flotante
    • Velocidad de operación máxima de 80 MHz
    • 256 KB de memoria flash
    • EEPROM interna
    • SRAM de 32 KB
    • 8 UARTs
    • 4 I2C
    • 4 SPI
    • 27 Temporizadores
  • Interfaz ICDI (In-Circuit Debug Interface) USB incluida en la tarjeta.
  • Conexión micro USB-B para depuración.
  • Conexión micro USB-B de dispositivo para aplicaciones de usuario.
  • Switch selector de alimentación de dispositivo/depuración.
  • Pines BoosterPack XL, compatible con muchas tarjetas BoosterPack existentes.
  • 2 botones para aplicaciones de usuario
  • Botón de reset
  • 1 LED RGB
  • Puente (jumper) para medición de corriente
  • Cristal principal de 16 MHz
  • Cristal de 32.768 KHz para hibernación y reloj en tiempo real (RTC – Real Time Clock)

Si lo comparamos con el cásico y conocido Arduino, vemos que tenemos un procesador mucho más poderoso, con muchos mas pines de Entrada y Salida y mas periféficos, lo que permitirá que podamos diseñar aplicaciones embebidas con mayor facilidad. Además de esto, el Stellaris Launchpad, tiene un precio aproximado de USD.12,00  (en su nueva versión, que lleva un microcontrolador TIVA C) lo que lo coloca al nivel de los clones del Arduino Uno, por lo que vale la pena el intento.

Texas Instruments, con el fin de promover el uso de sus microcontroladores, permite descargar de forma gratuita (luego de un pequeño registro) sus herramientas de desarrollo, y son bastante completas. Pero al ser un entorno de desarrollo basado en Eclipse, es bastante lento y pesado, si no tienes un computador bastante potente.

Es aquí cuando aparece Energia. Este entorno de desarrollo, ha sido pensado para facilitar el desarrollo de aplicaciones usando la linea Stellaris de TI, presentando la posibilidad de usar el IDE de Arduino, para los procesadores de TI. Con este entorno, podemos programar fácil y rápidamente aplicaciones con el Launchpad, de la misma manera que lo hacemos con el Arduino, traduciéndose esto en velocidad de desarrollo, y facilidad de uso. Además, Energía es multiplataforma, existiendo versiones para Windows, MacOS y Linux.

En primer lugar, y si estamos trabajando bajo Windows, debemos descargar los Drivers Stellaris ICDI  para USB. esto lo podemos descargar desde este enlace. Si estamos usando Linux o MacOS, podemos saltarnos este paso sin problema.

Una vez descargados los drivers, los descomprimimos en alguna carpeta facil de ubicar, y procedemos a conectar el Launchpad a nuestro puerto USB. Se iniciará el proceso de detección del dispositivo, y deberemos buscar la carpeta donde se descomprimió nuestro Driver, para que windows lo detecte e instale los dispositivos. Si todo sale bien, debemos tener 3 dispositivos nuevos en nuestro computador.


stellaris1

 

Luego descargamos el IDE  Energia desde este enlace, escogiendo la versión que corresponda a nuestro sistema operativo. La descarga es algo grande (alrededor de 200MB) así que tomará algunos minutos. Una vez concluida la descarga, lo descomprimimos en una carpeta (puede ser en Mis Documentos) y listo, podemos empezar.

Al ejecutar Energia, a primera vista, observamos un clon del IDE de Arduino (algo bastante obvio, porque es un fork) pero en color rojo. Además del cambio de color, todas las barras de herramientas y menús, son identicos al IDE de Arduino.

 

Antes de empezar a programar, debemos cerciorarnos de que estamos utilizando la configuración correcta para nuestro Launchpad. Para esto, debemos seleccionar el puerto serie, y tipo de board correctos en el menu Herramientas. En mi caso estoy usando el puerto COM7 y el board LM4F120, que es de la primera serie de los Launchpad con Cortex M4.

stellaris3

Ahora si tenemos todo listo para empezar a programar, y vamos a empezar con el “Hello World!” de los microcontroladores: El blink. Vamos a crear un pequeño sketch que encienda el led Rojo del Launchpad, espere 1 segundo, lo apague, espere 1 segundo, y lo vuelva a encender. Para esto, pegamos el siguiente código en la ventana del editor Energia.

#define LED RED_LED
void setup() {                
  pinMode(LED, OUTPUT);     
}

void loop() {
  digitalWrite(LED, HIGH);   
  delay(1000);               
  digitalWrite(LED, LOW);    
  delay(1000);              
}

Una vez copiado el código, presionamos en boton de descarga, y listo! El Led rojo de nuestro Launchpad empieza a parpadear.

Si queremos jugar un poco, podemos cambiar el color del Led. El launchpad incluye un led RGB, que podemos hacerlo parpadear cambiando esta línea:

#define LED GREEN_LED

O por

#define LED BLUE_LED

En los próximos días, continuaré con la serie, explicando como usar los distintos periféricos, y algunas funciones avanzadas del Launchpad.

Aviator YK016 – El quadcopter creado para principiantes

En este post, y gracias a mis amigos de www.tmart.com, he probado su nuevo Microquad Aviator YK016, que se presenta como una de las mejores opciones de quadcopters, para todos aquellos que quieran iniciarse en el radiocontrol, sin tener que perforar sus bolsillos, o vaciar sus cuentas bancarias.

Este multicóptero viene en un paquete Ready to Fly, es decir, incluye todo lo necesario para su vuelo abrir la caja. Lo único que se deben agregar, son 6 baterías AA para el transmisor.

DSC01169

Como vemos, el multicóptero, además de venir debidamente protegido para el largo viaje desde las bodegas de www.tmart.com en China (o en EEUU en algunos casos) tiene todo lo necesario para iniciar el vuelo. El paquete incluye lo siguiente.

  • Multicóptero (tamaño: 9.5cm entre ejes de rotores)
  • Transmisor de 2.4Ghz
  • Cable cargador USB
  • 4 hélices de repuesto
  • Manual de usuario

DSC01170

Antes de iniciar el vuelo, es necesario cargar completamente la batería del multicóptero. Esta batería está previamente insertada en el quadrotor, por lo que únicamente debemos conectar el cargador a un puerto USB libre en nuestro computador (o usar un cargador de pared, como muchos tenemos para nuestros teléfonos celulares) y conectar la batería del multicóptero al conector del cargador. La carga de esta batería demora alrededor de 15 minutos.

Mientras la batería se va cargando, podemos observar que la principal ventaja de este multirotor con respecto a otros de este tamaño, es su protector de hélices, integrado en cada uno de los 4 motores.

DSC01171

Este protector resulta realmente útil, cuando estamos aprendiendo a volar en interiores. Protege de muy buena forma contra golpes contra paredes u otros objetos que se puedan atravesar durante el vuelo.  Además de los protectores laterales, tiene pequeñas patas bajo los motores, que amortiguarán cualquier caída abrupta del mismo

DSC01172

El transmisor es bastante liviano, y se asemeja a un control de consola (digamos que tiene un aire de control de playstation). Tiene trims digitales, y 2 opciones adicionales: Selección de velocidad de respuesta y selector de modo acrobático.

DSC01175

El selector de velocidad de respuesta, permite cambiar la sensibilidad de las palancas del control remoto, teniendo 3 posiciones: lento, medio y rápido. Inicialmente, el control siempre está en modo lento, y para cambiar el modo, basta con presionar hacia abajo la palanca de la izquierda. Esto resulta un poco incómodo, ya que al presionar, se pierde la posición actual del mando.

Ec modo actobático se activa presionando hacia abajo la palanca de la derecha. Con esto, el multicóptero realizará un giro automático de 360 grados, y regresará a su posición estable automáticamente. Es divertido el giro, pero necesita estar al menos a 1.80m de altura para poder recuperarse del giro, y no golpear contra el piso.

Como mencionamos anteriormente, el transmisor necesita 6 baterías AA para su funcionamiento, y lastimosamente, no incluye un conector USB para cargar el cargador, cuando estemos lejos de una toma de corriente.

Para resumir, la principal ventaja de este multicóptero, es el precio! por $29,99 con envío incluido, se lo puede comprar directamente en www.tmart.com. El paquete, por su peso y volúmen no presenta ningún impedimento para pasar por aduana sin problema, así que es una ganga. Por ese precio, podemos conseguir un controller board para un multicóptero más grande únicamente, así que es una ganga.

Les dejo un video, para que vean cuan estable y resistente es

Nuevo microquad de 4 canales. El mejor de todos!

Bueno, se acercan las navidades, y yo recibí mis regalos adelantados! 😀

Aparte de otros artículos electrónicos de uso diario, mis amigos de www.tmart.com fueron muy amables en enviarme un nuevo microcoptero. En este caso específico, un JXD 385 2.4GHz 4 Channel 6 Axis RC Quadcopter UFO, que reune todas las características de los multicópteros que he probado, en un solo paquete.

Al igual que otros multicópteros, esta unidad tiene un costo especialmente bajo. por $38.62 incluído el envío, uno obtiene todo lo necesario para iniciarse en el mundo de los multicópteros.

La gente de www.tmart.com siempre se encarga de proteger los paquetes de sobremanera para que no se maltraten en el largo viaje desde la china, y este caso no fué la excepción. El paquete llegó sano y salvo a las 3 semanas de haber confirmado la orden.

DSC00898

Como en casos anteriores, este es un multicóptero listo para volar. El paquete incluye todo lo necesario para empezar el vuelo, excepto las 6 baterías AA que necesita el transmisor.  El paquete incluye:

  • Microcoptero de 2.4 Ghz
  • Transmisor de 2.4 Ghz
  • Batería de Lipo 1s 150mah
  • Cargador de baterías USB
  • Hélices de repuesto
  • Manual de usuario

DSC00900

Todo viene protegido debidamente en un encapsulado plástico transparente, salvando así cualquier maltrato que pudiera generarse en el viaje.

EL multicóptero como tal es pequeño, de unos 10cm entre ejes. Viene con las hélices de 2 colores distintos para facilitar la ubicación y dirección en el aire. La verdad, no es dificil de perder de vista en un rango de unos 20m.

DSC00902

El transmisor incluido, aunque bastante básico, resulta cómodo, liviano, y de controles suaves y precisos. Como mencioné, necesita 6 baterias AA para funcionar, y tiene un puerto USB que puede cargar la batería usando el cargador suministrado. Para esto, si recomiendo el uso de baterías recargables.

DSC00901

 

El transmisor tiene 2 botones en su parte superior. El de la izquierda es para seleccionar el modo, entre 3 modos diferentes: lento, rápido y super rápido; El transmisor hará uno, dos o tres bips según el modo seleccionado. El botón de la derecha sirve para activar el modo acrobático. Al presionarlo, el multicoptero realizará un giro de 360 grados en la dirección de la palanca que movamos. Bastante cool!

Que tal funciona se preguntarán? Pues bueno, de todos los multicópteros que han pasado por mis manos, este es el mejor de todos.

  • Super facil de controlar. Sus 3 gyros hacen su trabajo a la prefección.
  • La batería dura unos 10 mins por vuelo, y se carga de 15 a 20 minutos.
  • Sus modos lento, rápido y super rápido, lo hacen perfecto para quienes van iniciando de a poco en el uso de multicopteros, o tienen ya alguna experiencia previa
  • Se puede usar en exteriores. En situaciones de viento moderado, se mantiene super estable y controlable.
  • Puede levantar cierto peso, yo lo probé con una microcámara.
  • Precio super conveniente
  • Envío rápido y gratuito.

Para que observen sus características de vuelo, he grabado un pequeño video. Se los dejo y espero que les agrade

 

 

 

Microhelicóptero de 3 canales, con cámara de video integrada.

Hoy les voy a presentar al nuevo miembro de la flota de microhelicópteros RC. Hace algúnos meses ví este Microhelicóptero IR de 3.5 canales, con video on-board en algún bloque de anuncios y me pareció interesante, más que nada porque a pesar de su pequeño tamaño, incluye una cámara de video, que permite grabar su vuelo en una tarjeta Micro SD.

Este item, como todos los que he recibido desde www.dx.com llegó debidamente empacado, para poder soportar el largo viaje desde la China hasta el Ecuador. El tiempo de despacho fué de algo más de 3 semanas, y el único valor adicional al costo del helicóptero que hay que pagar, es el de $5 que se cancela en aduana por la revisión del item, a su arribo al país. Ya que el costo del item incluye el precio del envío, no es mayor costo dicho pago.

Como les comentaba, el paquete llegó debidamente protegido, para no dañar ninguno de los items que contiene en su interior.

DSC00724

DSC00725

En la caja, vienen señaladas algunas características del helicóptero. Algo bastante cómico pero muy usual en los items que vienen desde la China, es la falla en las descripciones. En este caso, tenemos que nuestro helicóptero tiene una cámara de 130 Mega Pixeles de resolución….. algo exagerado jeje.

DSC00726

 

 

Pasando por alto ese pequeño detalle, vamos a revisar el interior del paquete. Internamente, y protegido con una carcasa plástica, se incluye:

  • Helicóptero RC de 3.5 Canales, con cámara de video
  • Transmisor Infrarojo
  • Cable cargador USB
  • Tarjeta de memoria Micro SD de 1GB
  • Lector de tarjetas Micro SD para puerto USB
  • Hélices de repuesto

DSC00728

 

DSC00729

 

 

Ahora si, vamos a lo que nos interesa. El helicóptero como tal, es un poco más grande que el microhelicóptero que revisé hace algunos meses, y por ende más pesado. Éste tiene un peso de 150gr, con la batería interna, y la tarjeta de memoria conectada.

DSC00730

 

El hecho de que sea un poco más grande y pesado, se dá porque en la parte inferior del mismo, tiene la cámara de video. Es una cámara de 130Kpx (graba video en una resolución de 320×240), y la cámara se activa desde un botón en el transmisor.

DSC00731

 

DSC00732

 

La cámara trae incluida una tarjeta micro sd de 1 GB para grabar directamente el video. Esto es un extra agradable ya que nos permite grabar video sin necesidad de comprar ningún item adicional.

DSC00733

Y como mencionamos, se incluye en el paquete un lector de tarjetas, para descargar los videos y revisarlos en el computador.

DSC00735

 

Previo al vuelo, es necesario cargar la batería. Esto lo hacemos conectando el cargador al puerto USB del computador, y el otro extremo del cable lo conectamos al helicóptero. Aproximadamente demora unos 15 minutos en cargar completamente la batería, y estamos listos para volar.

En las pruebas Out of the Box, el helicóptero se comportó bastante mal. De hecho nunca llegó a elevarse más de 30cm del suelo. Esto puede deberse a 2 factores.

  • Es mucho más pesado que otros microhelicópteros del mismo tamaño
  • Estamos a 2500m sobre el nivel del mar.

Este problema, lo podemos ver en el siguiente video. Ojo que para este video, la batería estaba completamente cargada.

Pues como no se elevaba, la opción más simple de resolver fué eliminar peso. Para esto, removí la aleta de cola, y un contrapeso que tenía dentro de la carcasa, para balancear al helicóptero. Con esto, aunque sea poco, se logró bajar 10gr al peso, con esto vuela mucho mejor.

DSC00744

 

 

Ahora que el helicóptero vuela mucho mejor, podemos probar la cámara de video. Ésta, aunque sea de baja resolución, obtiene buenas tomas con poca luz (incluso mejores que la clásica keychain camera), y no es tan sensible a la vibración del helicóptero. Les dejo un video de muestra de esta cámara

Resumiendo….

  • Se lo puede encontrar en www.dx.com y la compra en línea no presenta ningún problema
  • El bajo precio del helicóptero, incluyendo su envío gratis, lo hace una buena compra para un regalo
  • Incluye todo lo necesario para volar y grabar video
  • En la costa debe volar perfecto, pero resulta un poco frustrante que en la altura de Cuenca tenga un mal desempeño
  • Las modificaciones realizadas para que mejore su vuelo son sencillas, pero al que se inicia en el radio control pueden no resultar tan obvias
  • El helicóptero vuela lento y es muy controlable….. quizás demasiado lento para evitar algunos obstáculos
  • El control remoto tiene el control de potencia con regreso al origen automático. Esto hace muy dificil mantener una posición estática en el aire. Además la palanca derecha, tiende a quedarse pegada en la parte superior. Si el helicóptero fuera más sensible, ocasionaría varios choques contra obstáculos
  • Al ser el transmisor infrarojo, como en todos los helicópteros de este tipo, el vuelo en exteriores está bastante limitado.

No es el mejor microhelicóptero que he probado, pero la camarita de video lo convierte en algo novedoso….

 

 

Intel Galileo – La unión de un Arduino y un procesador x86

alileo

Intel ha anunciado su nueva placa de desarrollo, enfocada en hobbistas y entusiastas de la electrónica.

El nombre de esta nueva incursión: Galileo. Las especificaciones son aún escasas, pero podemos mencionar las siguientes características:

  • Procesador Pentium de 400Mhz
  • Puerto Ethernet 100Mbps
  • Puerto USB Host
  • Puerto USB cliente, para la programación
  • Sockets compatibles con los shields de Arduino

Aún no hay información del precio, pero se anuncia la venta para noviembre de este año. Si el precio es inferior a los $40, tenemos un claro competidor de nuestro popular Raspberry Pi.

Mayor información en http://www.intel.com/content/www/us/en/do-it-yourself/galileo-maker-quark-board.html

Review del Multicoptero UFO de 4 canales, 2.4Ghz. Para empezar en el radio control “con bajo presupuesto”

El día de hoy les voy a presentar la nueva nave que se ha sumado a mi flota de micro multicopteros a control remoto. Es un multicóptero UFO Y4, con control de 4 canales, a 2.4Ghz de frecuencia. Este multicoptero lo pueden encontrar en www.tmart.com, a un excelente precio, tomando en cuenta todo lo que incluye.

DSC00513

Este multicóptero viene empacado de tal manera, que llega totalmente protegido del maltrato que pudiera soportar durante el viaje desde la China. La caja no es demasiado grande (para evitar en lo posible costos en aduana), pero tiene suficiente espacio para proteger al multicóptero, al control remoto y a sus accesorios.

Dentro del paquete, se incluyen los siguientes items:

  • Multicoptero UFO Y4
  • Control remoto de 4 canales, programable
  • 2 baterias LiPo de 1S 300mAh
  • Cargador de baterias USB
  • 3 Hélices de repuesto
  • Manual de usuario

Lo único que debemos comprar antes de volar, son 4 baterías AA para el transmisor. Éste funciona sin problemas con baterías alcalinas. Hay que tomar en cuenta, el momento de desempacar el multicóptero, que las baterías, el cargador y los repuestos, se encuentran en una pequeña cajita en la parte trasera del soporte interno de la caja.

DSC00514

 

DSC00516

 

DSC00518

 

Como les comentaba, este multicóptero tiene una configuración Y4, es decir, lleva forma de Y, con 3 ejes de rotores, pero en la parte delantera tiene 2 motores que giran en sentido contrario para mantener la estabilidad.

DSC00683

DSC00685

 

Algo super práctico, especialmente para los principiantes, es que éste multicoptero tiene una armadura protectora que cubre las hélices, motores y electrónica del equipo. Con esto estamos relativamente a salvo de roturas en las hélices por choques contra paredes y obstáculos. La armadura es muy liviana y resistente, lo que contribuye a que la experiencia de vuelo sea muy buena, y para nada frustrante, como sucede con otros tipos de multicópteros.

En la parte inferior, se encuentra el soporte para las baterías, el cual las asegura para que no se caigan durante el vuelo. Además, en la parte inferior, se encuentra toda la lógica de control, receptor y giroscopios que hacen que el UFO se estabilice solo en el aire.

DSC00686

 

DSC00687

 

El transmisor es una versión mas pequeña de lo normal, de un transmisor de RC. Tiene 4 canales, un LCD bastante grande, pero poco útil, y 2 botones que sirven para seleccionar el modo de vuelo (Lo / Hi Rates) y el modo acrobático, donde el multicoptero realiza giros sobre sus ejes al movimiento de los controles. Ojo con este modo!!, puede causar un serio golpe si no se lo realiza en un lugar con el espacio adecuado. Los controles del transmisor son super suaves, el control es super liviano, en parte porque solo necesita 4 baterías AA, y tiene trims digitales, lo cual es un extra para un equipo de este precio.

Después de unos días de prueba de este multicoptero, podemos resumir sus características en lo siguiente:

Pros:

– Buen empaque protector, y disponibilidad de envío desde EEUU o China
– No se ve como un producto barato. Los acabados del multicoptero y del transmisor son excelentes. Las palancas del transmisor son suaves y precisas.
– El transmisor usa solo 4 baterías AA, y adicionalmente tiene un puerto USB que permite cargar al multicóptero (para esto se necesitan baterías recargables en el transmisor)
– El multicóptero es super estable gracias a sus giroscopios y sistemas de control. Lo hace muy facil de volar para principiantes
– En el paquete viene incluido todo, incluso hélices de repuesto
– Excelente precio (USD. $47, incluido el envío desde la china)
– Puede volar en exteriores, con viento moderado

Contras:

– En el sitio web del distribuidor, no existen partes de repuesto listadas. Pero en ebay se puede conseguir facilmente
– La estructura protectora es también la estructura mecánica del multicóptero. Un golpe extremadamente fuerte podría romperlo y destruir la unidad

Que tal vuela se preguntarán? Les dejo un pequeño y accidentado video de las pruebas. Cabe recalcar que despues de unas 2 semanas de vuelos en interiores y exteriores, el multicoptero sigue como nuevo!

 

 

Arduino GSM Shield: Comunicando tu arduino con el mundo exterior

Si como yo, has estado jugando un poco con tu Arduino, tarde o temprano llega un momento donde es necesario conectarlo al mundo exterior. Lo mas usual es conectarlo mediante Ethernet o WiFi si te dá el presupuesto, para poder enviar información hacia el mundo exterior.

Pero estas no son las únicas opciones de comunicación. En esta ocasión, vamos a revisar el Shield GPRS/GSM EF-Com fabricado por la Elekfreaks, y distribuido por www.dx.com.

Este shield, permite que nuestro arduino opere como un teléfono GSM, obviamente debiendo programar todas las funciones del mismo. Dentro del hardware de este shield, podemos encontrar los siguientes dispositivos:

  • Modem GSM/GPRS basado en el chip SIM900
  • Conectores de entrada y salida de audio (para realizar o recibir llamadas)
  • Reloj RTC, con batería de respaldo
  • Varios pines de GPIO libres controlables  mediante comandos AT
  • Opción para conexión RS232 via hardware o software

Contenido del paquete

Al recibir el paquete, pude notar inicialmente, que el empaque era bastante grande para un shield de Arduino, por lo que definitivamente debía tener varios items en su interior. Dentro del paquete, al abrirlo pude encontrar:

  • Shield GSM / GPRS
  • Antena externa
  • Adaptador de 9V / 1A
  • Display Nokia 5100 con backlight Azul

DSC00285

 

DSC00286

 

DSC00291

 

El display es un extra inesperado. En el sitio web no indica que se incluye este display, pero el Shield tiene un header instalado propiamente para éste. Es un extra que da valor agregado al producto.

Operación

El adaptador de 9V es necesario, porque alimentando directamente al Arduino y al Shield desde el puerto USB, éste no alcanza a proveer la corriente necesaria para su operación. Según el fabricante, el módulo en picos de consumo de corriente, puede superar 1A facilmente.

Algo a tomar muy en cuenta, es la posición del display LCD en el shield. Lastimosamente no existen marcas del Pin 1 del header, y en el Wiki del fabricante, menciona que el LCD con backlight azul (existen 2 versiones, una con backlight azul y otra con backlight blanco) debe ir como se muestra en las fotos, con el display sobre el chip SIM900. Esta posición es incorrecta, ya que el display con backlight azul debe ir montado en la posición exterior del Shield. Esto lo veremos en las imágenes posteriores.

Programación

Como lo mencionabamos, el Shield GPRS funciona como un modem GSM serial, es decir, para su uso, únicamente requerimos los pines Rx, Tx y Gnd del puerto serie de nuestro arduino, o de un puerto serial por Software, en los pines que nosotros definamos

Tomando en cuenta esto, vamos a programar un pequeño Sketch, que ejecutará las siguientes tareas:

  1. Mostrará un mensaje de bienvenida en el LCD Nokia 5100
  2. Esperará un caracter en el puerto serial del Arduino
  3. Mediante un Puerto Serial de Software inicializará la comunicación con el Shield GSM
  4. Enviará un mensaje de texto (SMS) a un número colocado en el software

El código que vamos a usar en nuestro arduino es el siguiente:

#include <"lcd5110_graph.h">
#include <"softwareserial.h">

LCD5110 myGLCD(9,10,11,12,13);

extern uint8_t SmallFont[];

#define rxPin 2
#define txPin 3

SoftwareSerial mySerial(rxPin, txPin);

char *init1="AT+IPR=19200";  // configuracion del modulo para 19200bps
char *init2="AT+CMGF=1";  // configuracion para modo ascii 
unsigned char CR=13; // caracter de retorno de linea
void setup()
{
  myGLCD.InitLCD();
  myGLCD.setFont(SmallFont);

  mySerial.begin(19200);                 // Velocidad de conexion por defecto del Shield  
  Serial.begin(19200);                  // Velocidad del puerto serie
  Serial.println("Conexion Serial Ok.");

  myGLCD.clrScr();
  myGLCD.print("Prueba del", CENTER, 0);
  myGLCD.print("GPRS Shield   ", LEFT, 12);
  myGLCD.print("patolin.com   ", LEFT, 30);
  myGLCD.update();
}

void loop()
{
  // inicializamos el shield

      mySerial.write(init1);
      mySerial.write(CR);
      delay(1000);
      mySerial.write(init2);
      mySerial.write(CR);
      delay(1000);

  myGLCD.clrScr();
  myGLCD.print("SMS", CENTER, 0);
  myGLCD.print("Esperando", LEFT, 12);
  myGLCD.print("caracter al ", LEFT, 24);
  myGLCD.print("RS232", LEFT, 36);
  myGLCD.update();

  // esperamos un caracter cualquiera en el puerto serie

  if (Serial.available()) {
      if (mySerial.available()) Serial.write(mySerial.read());
      // limpiamos el buffer de lectura
      Serial.read();

      // enviamos el sms
      myGLCD.clrScr();
      myGLCD.print("SMS", CENTER, 0);
      myGLCD.print("Enviando....", LEFT, 12);
      myGLCD.update();

      mySerial.write("AT+CMGS=\"099XXXXXXX\""); // reemplace por el numero de celular de destino  
      mySerial.write(CR);
      delay(1000);
      mySerial.write("Prueba de SMS desde Arduino!");  
      mySerial.write(CR);
      delay(1000);
      mySerial.write(26);  // Ctrl+Z para finalizar el mensaje y enviar
      myGLCD.print("enviado!", LEFT, 30);
      myGLCD.update();

  }

}

Bastante sencillo cierto? El código se explica solo. Basta con configurar la comunicación con el Shield a la misma velocidad (19200bps en este caso) y enviar los respectivos comandos. Al ser un modem GRPS, responde a una amplia variedad de comandos AT, que podemos revisarlos en este manual propio del fabricante.

Les dejo un video de la prueba de este código sobre mi Arduino.

Para concluir, las aplicaciones para este Shield son varias! Desde una alarma de seguridad de hogar con notificaciones por SMS, hasta un dispositivo remoto que pueda contestar llamadas y devolver información.

Para concluir, podemos resumir las características de este Shield, en las siguientes:

  • Shield GSM/GPRS Quad-Band 850/900/1800/1900 MHz, con el chip SIM900 GSM
  • Compatible con Arduino Uno / Mega
  • Voltaje de Operación 5Vcc
  • Socket plástico para el Chip GSM ubicado en la parte inferior del Shield
  • Antena externa, en L para mayor facilidad de ubicación
  • Adaptador de alimentación incluido
  • Jacks de Entrada y Salida de Audio, para la generación de llamadas telefónicas via celular
  • Reloj en tiempo real incluido
  • Display LCD Nokia 5100  incluido

Para los entusiastas de la electrónica y del Arduino, puedo comentarles que el precio de este Shield es un poco elevado. El costo es de USD. 57,70 incluido el envío desde China. Si descontamos el valor del LCD y del adaptador, podríamos llegar a los USD. 50,00 que sigue siendo algo elevado, tomando en cuenta el costo del Arduino. Pero si vamos a usar este Shield en una aplicación profesional, Si resulta muchísimo más barato que otras soluciones de comunicación GSM que existen en el mercado.

Les dejo algunos enlaces correspondientes a este producto. Espero les sean de interés