Publicado el

Intel Galileo Gen 2 ¡Ideal para cualquier proyecto!

[nextpage title=»Introducción»]
La placa Galileo Gen 2 de Intel es la primera de una familia de placas de desarrollo certificadas Arduino basadas en la arquitectura Intel y diseñadas específicamente para fabricantes, estudiantes, formadores y entusiastas de la electrónica.
Esta plataforma proporciona la facilidad del desarrollo de la arquitectura Intel a través de soporte para Microsoft Windows, Mac OS y los sistemas operativos de host, Linux. A ello se suma que la placa Intel Galileo Gen 2 es también compatible con el software de entorno de desarrollo integrado Arduino, lo que facilita la capacidad de uso y la introducción.
La diferencia entre la placa Galileo y una placa Arduino normal, la marca el hecho de poder combinar la estructura de hardware y software del Arduino con el sistema operativo Linux. Gracias a esto, podemos controlar hardware como sensores o motores con otros lenguajes de programación cómo Python, conectarlos a Internet, crear un servidor o tener acceso a fecha y tiempo real entre otras muchas posibilidades de computación. Por lo tanto, la Intel Galileo Gen 2 está enfocada sobre todo a proyectos sobre Internet.
NewImage94
[nextpage title=»Partes y características Intel Galileo Gen 2″]
Galileo Gen 2 es una placa de microcontrolador con procesador de aplicaciones Intel Quark SoC X1000, un sistema de marca en un chip (SoC) Intel Pentium de 32-bit. Además de la compatibilidad de hardware y software Arduino, la placa Intel Galileo Gen 2 tiene varios puertos de E/S de PC estándares y funciones para expandir el uso nativo.
Parte frontal de la placa Intel Galileo Gen 2
Sin título22
Parte posterior de la placa Intel Galileo Gen 2
pppci

Características importantes:

Procesador: Intel Quark SoC X1000, a 32 bits, de un solo hilo, arquitectura de procesador de instrucciones (ISA) Intel Pentium, opera a velocidades arriba de los 400Mhz.
Arduino: La Intel Galileo es la primera placa Arduino basada en arquitectura Intel y es compatible con todas las Arduino Shields. Tiene los mismos pines que un Arduino.

  • 14 pins I/O digitales (6 de estos con salida PWM)
  • 6 pins entradas analógicas (A0 – A5)
  • Serial Communication: 0 (RX) y 1 (TX).
  • 8 pins Power (5V, 3V, GND, Reset…)
  • I2C: A4 o pin SDA y A5 o pin SCL.
  • ICSP Header para conectar Arduino Shields

Ethernet: Conector Ethernet de 100Mb.
Puerto USB client: Para programar y cargar sketchs Arduino.
Puerto USB Host: Para conectar periféricos con USB como teclados, ratones, webcams o almacenamiento USB.
Entrada micro SD: Zócalo para tarjetas micro SD (máximo 32 GB). Sirve para cargar el Linux SO a la Galileo.
Zócalo mini PCI: Permite conectar a la Galileo módulos mini PCI como WiFi o Bluetooth.
Botón reset y reboot: Resetea el sketch Arduino y las shields y reboot resetea la Galileo incluso Linux.
IOREF Jumper: Con este jumper podemos cambiar el voltaje que operan los pins de la Galileo entre 3,3V y 5V.
Memoria: Contiene una memoria RAM DDR3 de 256 MB y una memoria NOR Flash de 8MB.
Fuente de alimentación: La Galileo se alimenta por el conector jack 2,1mm o por los pins Vin y GND.
Estas características las podemos encontrar marcadas en las imágenes anteriores. La placa Intel Galileo Gen 2 viene con un kit de clavijas para adecuarse a la alimentación de cada país.
kit
[nextpage title=»Descarga del IDE y reconocimiento de la placa Galileo «]
Comencemos descargando los drivers de la placa Intel Galileo Gen 2, para que la computadora pueda reconocer la placa al conectarse a un puerto.
Drivers Galileo Gen 2 
Nos desplazaremos hacia abajo y descargamos el que coincida con nuestro sistema operativo. En este caso Windows.
zx
Conectamos nuestra placa Galileo a la fuente de alimentación y posteriormente el cable USB en este caso para que la computadora reconozca que se encuentra algún dispositivo conectado. Luego en el buscador de Windows escribimos administrador de dispositivos ahí verificaremos que si lo detecta pero no lo reconoce.
111
El driver descargado lo descomprimimos y quedara una carpeta con el nombre de Galileo, esta será la que ocuparemos. En Gadget Serial damos clic derecho y actualizar software de controlador. Aparecen dos opciones y seleccionamos buscar controlador en el equipo.
111111
En la ruta buscamos la carpeta descargada anteriormente, la seleccionamos y damos clic en siguiente e instalar. Finalmente la PC reconocerá la tarjeta mostrando el puerto COM.
111
222
22
Ahora descargaremos el IDE para Galileo de la misma forma que los drivers, descargamos el IDE de acuerdo al sistema operativo que tengamos.
IDE Galileo
000
Una vez descargado lo descomprimimos y saldrá una carpeta. Para evitar errores durante el funcionamiento del software pasamos la carpeta al disco local C. Abrimos la carpeta damos clic derecho el logo de Arduino y creamos un acceso directo, este lo pasamos al escritorio para facilitar su uso.
999
Esto es todo para comenzar a utilizar Galileo Gen 2. Como un Arduino normal.
121
[nextpage title=»Funcionamiento de la LCD en Galileo Gen 2″]
Como ejemplo haremos algunos códigos para la LCD, ademas estos servirán para iniciarse con la herramienta LCD si es que aun no has echo proyectos con la misma.
La LCD es muy útil en ciertos proyectos electrónicos que requieran una visualización en tiempo real, la utilización de la LCD en Galileo no es simplemente como en el Arduino normal, la placa Galileo en este caso Gen 2 o generación 2 por cierto motivo al descargar el IDE Intel Galileo Arduino la librería del LCD viene incluida sin embargo, al programar en el entorno de desarrollo instrucciones para la LCD, al momento de cargar el código este se carga correctamente a la placa Galileo pero no logra hacer funcionar la LCD.
En este tutorial explicaremos la forma de hacer funcionar el Display LCD 16×2 en la placa Intel Galileo Gen 2.
Para ello ocuparemos los siguientes materiales:

Como mencionamos anteriormente la LCD no funcionara con las librerías por defecto necesitamos descargar otras librerías para que la LCD funcione normalmente.
Librerías LCD 
66
Descomprimimos el archivo y la carpeta tendrá el nombre de galileo-LiquidCrystal-1 este lo cambiaremos a LiquidCrystal, copiamos o cortamos la carpeta y la pasamos a la carpeta de Arduino>Libraries nos preguntara si queremos sustituirla, finalmente aceptamos.
44444
Ahora si podemos utilizar la LCD con estas nuevas librerías sin ningún problema. Comenzaremos con los ejemplos, pero antes se muestra el conexionado.
nguimk
A continuación los ejemplos en donde en cada linea se describe que función tiene cada una.
Ejemplo 1: Mostraremos en pantalla el famoso Hola mundo además de un blinkeo.

#include <LiquidCrystal.h> //Libreria LCD
LiquidCrystal lcd(12, 11, 5, 4, 3, 2); //Definición de pines
//Configuración inicial
void setup() {
lcd.begin(16,2); //Dimensiones de LCD
lcd.print("Hola mundo"); //Mensaje hola mundo en pantalla
}
//Ciclo infinito
void loop() {
lcd.setCursor(0,1); //Posicinamiento en columna 0 fila 1
lcd.blink(); //Blinkeo de un cuadro
delay(2000); //Durante 2 segundos
lcd.noBlink(); //Cancelacion de Blinkeo
delay(2000); //Durante 2 segundos
}

Ejemplo 2: Para el segundo ejemplo mandaremos mensajes al LCD cada cierto tiempo, centrando los mensajes con espacios en blanco y aprenderemos a limpiar la pantalla.

#include <LiquidCrystal.h> //Libreria LCD
LiquidCrystal lcd(12, 11, 5, 4, 3, 2); //Definición de pines
//Configuración inicial
void setup() {
lcd.begin(16,2); //Dimensiones de LCD
}
//Ciclo infinito
void loop() {
lcd.print(" Tutorial LCD"); //Mensaje en LCD
//En el mensaje cada espacio es un cuadro en la LCD
delay(3000); //Tiempo del mensaje
lcd.clear(); //Limpiamos la pantalla
delay(1000); //Por un tiempo de 2 segundos
lcd.print(" Visita"); //Mensaje en pantalla
delay(1000); //Por un segundo
lcd.setCursor(0,1); //Nos colocamos en columna 0 fila 1
lcd.print(" TESLABEM.com"); //Mensaje en fila 1
delay(3000); //Por un tiempo nde 3 segundos
lcd.clear(); //Limpiamos pantalla
lcd.print(" Robotica y"); //Mensaje en LCD
lcd.setCursor(0,1); //Posicion en columna 0 fila 1
lcd.print(" Electronica"); //Mensaje en LCD
delay(3000); //Durante 3 segundos
lcd.clear(); //Limpiamos pantalla
}

Ejemplo 3: En este ejemplo veremos al texto desplazarse de izquierda a derecha, en este caso las frases son la página de Facebook y Youtube de Teslabem.

#include <LiquidCrystal.h> //Libreria LCD
LiquidCrystal lcd(12, 11, 5, 4, 3, 2); //Definición de pines
//Configuración inicial
void setup() {
lcd.begin(16,2); //Dimensiones LCD
lcd.print("Facebook:www.facebook.com/TeslaBEM"); //Mensaje en LCD
lcd.setCursor(0,1); //Posicion en columna 0 fila 1
lcd.print("Youtube:www.You tube.com/c/teslabem"); //Mensaje en LCD
}
//Ciclo infinito
void loop() {
lcd.setCursor(16,1); //Posicionamiento fuera de la LCD para comenzar de izquierda
lcd.autoscroll(); //Desplazamiento automatico
lcd.print(" "); //Espacio en blanco para dar tiempo al texto
delay(600); //Tiempo de desplazamiento
}

c39873
[nextpage title=»Actualización de firmware»]
Al actualizar el firmware obtendremos un mejor rendimiento de la placa Intel Galileo Gen 2. Para actualizar el firmware debemos descargar el mismo y seleccionar la descarga de acuerdo el sistema operativo.
Firmware
zx
Descomprimimos el archivo, seleccionamos el siguiente icono damos clic derecho y ejecutamos como administrador. Conectamos la placa Galileo a la alimentación y después el cable de datos.
firmware28929
Nos saldrá la siguiente ventana detectando el puerto COM y damos clic en update firmware.
896134
Saldrán las siguientes ventanas, aceptaremos y daremos clic en Sí. Después comienza la actualización, como se muestra a continuación.
029djmoik
098ijmdmwpd
Si todo sale bien deberá aparecer el siguiente mensaje.
xowlñkxmwkl
Ahora ya tenemos actualizado el firmware de nuestra placa Galileo.
[nextpage title=»Instalación de linux en micro SD»]
Para poder realizar este proceso se necesita una tarjeta micro SD puede ser como máximo de 32Gb si así se desea (min 4 Gb) clase recomendada 10. Esta memoria se tiene que formatear en FAT o FAT 32, podemos hacerlo desde Windows insertamos la memoria, damos clic derecho seleccionamos formatear.
opajmizakzmña
Ahora descargaremos la imagen de Linux para SD podemos encontrarla en el siguiente enlace.
Imagen Linux Galileo
ddlñcmck
Una vez finalizada la descarga descomprimimos el archivo y quedara el siguiente .direct este es la imagen de linux.
cnjekwcolw
Este archivo es un contenedor de imágenes binarias para dispositivos de almacenamiento, en este caso de una tarjeta micro SD. Para grabar la imagen a la memoria micro SD necesitaremos una aplicación llamada Win32DiskImager.
Win32DiskImager
Ahora seguiremos los siguientes pasos:

  • Inserta la tarjeta microSD en tu lector de tarjetas.
  • Ejecuta el programa Win32DiskImager como administrador:
  • Abre la aplicación Win32 Disk Imager, da clic en el icono de la carpeta en la esquina superior derecha

lgjrengjr

  • En la lista desplegable en el tipo de archivo, seleccionar *.* para poder ver todos los tipos de archivo.

pwokdeñ

  • Navega hasta donde tienes guardado el archivo .direct, selecciónalo y da clic en Open.
  • Desde la lista desplegable de dispositivos, selecciona el dispositivo correspondiente a tu tarjeta microSD.

NOTA: Ten cuidado de seleccionar la letra correspondiente al dispositivo, ya que si seleccionas otro dispositivo podrías borrar su contenido.

  • Da clic en Write y espera a que termine el proceso. Puede tomar algunos minutos.
  • Después de completar el proceso de escritura, da clic en Exit para cerrar el Win32 Disk Imager. Ahora tu tarjeta microSD debería tener el siguiente contenido:
  1. Boot
  2. Firmware
  3. Win-driver
  4. bzImage
  • Retira tu tarjeta micro SD del lector

Para probar retiramos la SD y la insertamos en la placa Galileo Gen 2. Con esta imagen Linux Galileo tendrá las siguientes características:

  • Sketch: El sketch que carguemos a la placa quedará guardado en la microSD y se ejecutará cada vez que arranquemos la Galileo.
  • SSH: Podemos acceder a la Galileo remotamente a través de la red y conectarnos a la terminal.
  • Python: Podemos crear scripts Python y llamarlos desde el IDE de la Galileo.
  • system(): Desde el IDE de la Galileo podemos acceder a Linux a través de la función system()
  • OpenCV: Open Source Computer Vision permite hacer captura de movimiento o reconocimiento de objetos desde una webcam conectada al USB Host de la placa.
  • ALSA: Advanced Linux Sound Architecture dota de funcionalidades de reproducción y grabación de audio MIDI a la Galileo.
  • V4L2: Video4Linux es un grabador de vídeo. Podemos usarlo con una webcam conectado al puerto USB Host.

Los scripts son archivo de órdenes, archivo de procesamiento por lotes es un programa usualmente simple, que por lo regular se almacena en un archivo de texto plano. Los scripts son casi siempre interpretados.
[nextpage title=»Acceso a la terminal de linux»]
La Terminal de Linux es una interfaz de línea de comandos para controlar el sistema. Los comandos ingresados por este medio, pueden por ejemplo: instalar software, manipular el sistema de archivos o acceder a los mensajes de depuración.
Si se usa Windows es recomendable instalar Putty este es un programa que permite utilizar el protocolo SSH y conexiones seriales en sistemas Windows de manera muy sencilla. SSH es un protocolo ampliamente usado para acceder a otros equipos de forma remota.
Si se tiene el sistema operativo Linux o Mac OS, SSH ya viene instalado como parte del sistema. Existen principalmente 4 maneras de conectar con la Terminal de la tarjeta Intel Galileo Gen 2.

  • Utilizando el header UART.
  • Utilizando una conexión Ethernet
  • Conexión cableada a un router
  • Conexión por medio de Wi-Fi

Comencemos con unas pequeñas indicaciones para acceder a la terminal Linux utilizando el método de conexión Ethernet. Es importante conocer la IP de nuestra placa ya que nos ayudara a hacer funciones más avanzadas.
IMG_2442
NOTA: Antes de insertar la memoria SD desconectamos la placa de la alimentación, cuando haya sido insertada  colocamos el cable Ethernet y finalmente volvemos a conectar la fuente de alimentación.
Realizaremos el método de conexión Ethernet. Éste método solo requiere un cable Ethernet conectado entre la tarjeta Intel Galileo y tu PC. Primero conecta el cable a tu tarjeta Intel Galileo y a tu PC, después carga el siguiente codigo de Arduino a la tarjeta.

void setup() {
Serial.begin(9600);
/*No continua hasta que se envia una a
a travez del monitor serial*/
while(Serial.read()!='a')
{
Serial.println("Hola");
delay(1000);
}
/*Despliega el resultado del comando
ifconfig en el monitor serial*/
system("ifconfig > /dev/ttyGSO");
void loop() {
}

Nótese el uso del comando especial system(cmd), este comando sirve para ejecutar un comando de Terminal en Linux. El comando ifconfig entrega como salida el estado de los dispositivos de red disponibles, incluyendo las direcciones IP. /dev/ttyGS0 representa el puerto serial Arduino en la tarjeta Galileo. Con el símbolo «>» podemos redirigir la salida de un comando a una interfaz o a un archivo, en este caso, estamos redirigiendo el resultado del comando ifconfig al puerto serial para que se muestre en el monitor serial del IDE Arduino.
NOTA: Al conectar la tarjeta para cargar el sketch el IDE no detectara el puerto COM lo que debemos hacer son los siguientes pasos.

  • Nos dirigimos a administrador de dispositivos y veremos que tiene por nombre CDC Serial, esperamos a que cargue un poco.

VOJSLNCOÑECLMK

  • Damos clic derecho seleccionamos actualizar software de controlador>Buscar software de controlador en el equipo>Elegir en una lista de controladores de dispositivo en el equipo.

Buscamos del lado izquierdo Intel Corporation lo seleccionamos y del lado derecho seleccionamos Galileo, finalmente daremos siguiente.
lkvenfvrfvc
Si llegan a salir advertencias de igual modo funcionara.

  • Finalmente reconocerá la placa Galileo con su respectivo puerto COM.

ñlmñrkv
Ahora podemos cargar el código anterior seleccionando el puerto COM asignado a la placa. Abrimos el monitor serial de Arduino y saldrá el mensaje de hola, si introducimos «a» podemos obtener la dirección IP de nuestra placa Galileo.
dkvnmdss
Puedes anotar la dirección ya que la ocuparemos más adelante. Con la dirección IP obtenida podemos acceder a Linux, pero como mencionamos anteriormente en Windows necesitaremos un cliente SHH como Putty.
Descargamos, ejecutamos Putty y lo abrimos. Primero, en tipo de conexión selecciona SSH, escribe la dirección IP que obtuviste en el monitor serial y da clic en Open para abrir la Terminal.
tevcjhsc
Si al conectar te sale un mensaje de advertencia aceptamos y continuamos. Finalmente se te solicitará el usuario, teclea root y después presiona enter.
ejkbcvew
Ahora ya estamos dentro de Linux de la Intel Galileo. A partir de aquí podemos usar los comandos básicos de Linux.
Por ejemplo pwd, este comando permite saber dónde nos ubicamos es decir la ruta. El comando clear permite limpiar la pantalla de todo lo que hemos ejecutado.
También podemos acceder a Python.
Phyton es un lenguaje de programación multiparadigma, ya que soporta orientación a objetos, programación imperativa y, en menor medida, programación funcional. Es un lenguaje interpretado, usa tipado dinámico y es multiplataforma. Para acceder a Python escribimos la palabra en Python.
kjbnc dkjc,m
Probaremos algunas aplicaciones matemáticas simples.
kdlsvnmlwk
Gracias a esto con todas las posibilidades que tiene la placa, tenemos infinidades de herramientas para poder crear cualquier proyecto que nos imaginemos.
NewImage94

Compartir ahora:
Deja una respuesta