Programar Arduino utilizando Ruby

  • por Lucas Campos

 

 

 

¿Alguna vez pensaste en poder programar Arduino con un lenguaje diferente a su adaptación propia de C++? ¿Te gusta la sintaxis y elegancia que ofrecen lenguajes como Ruby?

Si bien, programar Arduino en su lenguaje nativo no es complicado, sí puede ser tedioso para algunas personas o puede tornarse aburrida su estructura a lo largo del tiempo. Por esta razón, con el tiempo se han generado distintas alternativas para poder desarrollar aplicaciones para esta plataforma.

Una de las mejores opciones, sin duda alguna, es poder programar nuestro sistema Arduino simplemente con Ruby… sí, solo utilizando Ruby.

En este pequeño tutorial configuraremos nuestro Arduino para que pueda ser programado con Ruby y llevaremos a cabo un pequeño programa “Hello World!” en 3 simples pasos.

 

 

 

 

Configurando nuestro Arduino:

Para este pequeño tutorial usaremos Firmata, un protocolo que nos permitirá comunicarnos de manera ágil y utilizer todas las capacidades de nuestro Hardware: Pines digitales y análogos, PWM, etc.

Primero, conectaremos nuestro Arduino al ordenador y luego, seleccionaremos el ejemplo “StandardFirmata” tal como se muestra a continuación:

 

A continuación, simplemente lo cargamos a nuestro Arduino y ya estará apropiadamente configurado.

 

Instalación de la gema:

Primero que nada, debemos tener instalado Ruby en nuestro ordenador obviamente, pero en esta ocasión no enseñaré su instalación, ya que en la red hay bastantes tutoriales disponibles y no nos centraremos en este punto.

Para instalar la gema Ruby Firmata usaremos el siguiente comando:  

sudo gem install arduino_firmata

 

 

Creando nuestro “Hello World!”:

Para crear nuestro programa, simplemente necesitaremos hacer uso de nuestro editor de text favorito en mi caso TextMate2.

Lo que haremos básicamente será prender y apagar el Led que incluye la placa en el pin 13 (pin digital) y cada vez que esto suceda imprimiremos una frase en consola.

Ahora lo que nos compete.

 

Creamos un archivo ruby con un nombre a nuestro gusto, yo lo he llamado hello_world.rb, e ingresamos las siguientes líneas de código:

require "rubygems"
require "arduino_firmata"

#creamos la conexión a nuestro Arduino
arduino = ArduinoFirmata.connect

#creamos un ciclo donde cada 1 segundo prenderá y apagará el led
#ubicado en el puerto 13 e imprimirá en la frase que designemos
loop do
    arduino.digital_write 13, true
    sleep 1
    puts "Hello World :D"
    arduino.digital_write 13, false
    sleep 1
    puts "Bye Bye World :("
end

 

Luego de guardado simplemente ejecutaremos el archivo en nuestra consola y obtendremos el siguiente resultado:

 

Así de fácil ha sido crear nuestro primer programa para Arduino utilizando Ruby y la librería Firmata. ¿Sencillo no?

 

 

Hay infinitas posibilidades para poder hacer uso de tu Arduino, desde Python hasta JavaScript, y esto es justamente lo que enriquece tanto una plataforma de desarrollo libre como lo es Arduino.

Los programas desarrollados con firmata pueden ser aplicados sin problema a una aplicación creada con Ruby on Rails sin problemas, imagina las posibilidades a las cuales se amplía el universo de las aplicaciónes web con una librería como esta.