martes, 16 de agosto de 2016

INTRODUCCIÓN-Raspberry Pi







Los pines GPIO de la Raspberry Pi son los grandes olvidados, pero que sabiendo como utilizarlos nos abre un mundo de posibilidades. De eso trata este artículo, de abrirte las puertas de este mundo e introducirte en la programación y presentarte las posibilidades de los GPIO. En próximos post también te enseñaremos a conectar Arduino y la Raspberry Pi mediante estos pines para conseguir grandes proyectos uniendo el poder de ambas plataformas.


Índice [Ocultar]
1 Introducción a los GPIO y esquemas
2 Esquemas de los GPIO según el modelo
2.1 Model B (Rev 1.0)
2.2 Model A/B (Rev 2.0)
2.3 Model A+, B+, y 2
3 Introducción a los HATs y Plates
4 Introducción al uso de los GPIO
5 Programación avanzada de los GPIO
5.1 C y wiringPi
5.2 Python
5.3 Scratch y GPIO
5.4 BASIC
Introducción a los GPIO y esquemas

GPIO (General Purpose Input/Output) es, como su propio nombre indica, un sistema de E/S (Entrada/Salida) de propósito general, es decir, una serie de conexiones que se pueden usar como entradas o salidas para usos múltiples. Estos pines están incluidos en todos los modelos de Raspberry Pi, para que puedas realizar proyectos interesantes como lo harías con Arduino.

Los GPIO representan la interfaz entre la Raspberry Pi y el mundo exterior. Y con ellos podrás hacer multitud de proyectos, desde hacer titilar un LED hasta otros mucho más sofisticados. Pero para eso debes saber sus características y como se programan. Lo primero variará en función de la revisión de placa que tengas o del modelo.

Todos los pines son de tipo “unbuffered”, es decir, no disponen de buffers de protección, así que deberás tener cuidado con las magnitudes (voltajes, intensidad,…) cuando conectes componentes a ellos para no dañar la placa. Como podrás apreciar en las imágenes posteriores, no todos los pines tienen la misma función:
Pines de alimentación: puedes apreciar pines de 5v, 3v3 (limitados a 50mA) y tierra (GND o Ground), que aportan alimentación a estos voltajes para tus circuitos. Te pueden servir como una fuente de alimentación, aunque también puedes utilizar otras fuentes (pilas, fuentes de alimentación externas, etc). Recuerda que son unbuffered y debes tener cuidado para no dañar la placa.
DNC (Do Not Connect): son pines que por el momento no tienen función, pero en futuras implementaciones son utilizados para otros fines. Por eso solo los vas a encontrar en modelos más primitivos de la Raspberry Pi. En las actuales placas han sido marcados como GND.
GPIO normales: son conexiones configurables que puedes programar para tus proyectos, tal como te enseñaremos más adelante.
GPIO especiales: dentro de éstos se encuentran algunos pines destinados a una interfaz UART, con conexiones TXD y RXD que sirven para comunicaciones en serie, como por ejemplo, conectar con una placa Arduino. También podemos ver otros como SDA, SCL, MOSI, MISO, SCLK, CE0, CE1, etc…, los cuales explicaremos su funcionamiento más adelante.
Esquemas de los GPIO según el modelo

Todas las placas y revisiones no disponen de esquemas GPIO iguales. Aquí te ofrecemos todos los esquemas de las diferentes placas que existen por el momento. En las siguientes imágenes podemos apreciar los distintos layouts de los modelos existentes por el momento:
Model B (Rev 1.0)

Model A/B (Rev 2.0)


Model A+, B+, y 2



Como puedes comprobar, existen tres esquemas básicos. Los de la revisión 1.0 del modelo B, los incluidos en la revisión 2.0 del modelo A y B, y los modernos A+, B+ y 2 que comparten el mismo esquema de conexiones.
Introducción a los HATs y Plates



Aunque dedicaremos otro post a realizar una mega comparativa de HATs (Hardware Attached on Top) y Plates para la Raspberry Pi, con ejemplos de sus usos, vamos a explicar qué son y qué tienen que ver con los GPIO. Si ya estás familiarizado con Arduino, es fácil captar la idea de lo que son estos componentes, puesto que en el mundillo Duino se conocen como Shields o módulos y Plates.

Los Plates son placas agujereadas para montar circuitos fácilmente. Algo así como una protoboard que puede ser conectado a los GPIO de la Raspberry Pi. Son un buen complemento si deseas montar dispositivos electrónicos de montaje superficial. Como ves, su función es idéntica a su equivalente para Arduino.



En cambio, los HATs son similares a los shields o escudos de Arduino. Es decir, placas de expansión que se pueden conectar a los GPIO para agregar funcionalidades a la placa. Si te fijas en el nombre, coincide con la palabra inglesa “sombrero” y que hace referencia a la forma en que se conectan con la Raspi.

Al ser un complemento nuevo, éstos solo son compatible con los modelos de Raspberry Pi que comparten el mismo esquema de conexiones. Si recuerdas el apartado anterior, éstos son el A+, B+ y la nueva versión 2 de la placa SBC. Pero en el mercado podrás encontrar diferentes fabricantes que suministran este tipo de HATs para Raspberry Pi. Uno de ellos es AdaFruit, que vende tarjetas de expansión denominadas HatADay y que contienen pantallas TFT, GPS, servomecanismos, complementos para robótica, etc…
Introducción al uso de los GPIO


Al igual que Arduino emplea su entorno Arduino IDE para crear sketchs o códigos fuente para programar los proyectos, la Raspberry Pi permite también programar sus GPIO, pero con mayor flexibilidad. Se puede realizardesde tu distribución utilizando multitud de herramientas con diversos lenguajes de programación (Python, Java, C,…), o desde la consola utilizando sencillos scripts y comandos.

Por lo general, la Raspberry Pi utiliza distribuciones Linux. Como buen UNIX, el sistema operativo tratará a todos los elementos, incluido el hardware, como un fichero. Ya sabes que en Windows existen unidades (C:, D:,…) o dispositivos hardware. Pero en un *nix todo son ficheros, como por ejemplo el disco duro (/dev/sda), la unidad de DVD (/dev/dvd), tarjetas SD (/dev/mmcblk0), etc…

Pues bien, los puertos GPIO también serán tratados como un fichero más, aunque no se encuentren en el dierctorio /dev, y por tanto podrás emplear los comandos básicos de la consola para gestionar ficheros. Por ejemplo, si queremos controlar un LED, podríamos entrar en la consola (para nuestros ejemplos hemos empleado Raspbian) y escribir lo siguiente:


1
echo 17 > /sys/class/gpio/export


Con esta línea crearíamos un fichero con la estructura del GPIO correspondiente para que pueda ser manipulado. Luego se debería de configurar como entrada o salida, según lo que quieras. En nuestro caso como salida, puesto que queremos alimentar al LED para encenderlo:


1
echo out > /sys/class/gpio/gpio17/direction


Ahora se podría encender o apagar. Para ello le podemos dar valores a la salida que hemos creado. Si le damos valor 1 se encenderá y con valor 0 se apagará:


1
2
echo 1 > /sys/class/gpio/gpio17/value
echo 0 > /sys/class/gpio/gpio17/value


Una vez termines el experimento, puedes borrar la entrada para realizar otro ejercicio en el mismo pin o en otro diferente:


1
echo 17 > /sys/class/gpio/unexport


¿Simple verdad? Pues ahora puedes utilizar tu imaginación y utilizar otros comandos que normalmente utilizas con ficheros y directorios para gestionar los GPIO. Por ejemplo, puedes listar los GPIO que tienes activos con:


1
2
cd /sys/class/gpio
ls


También puedes crear scripts para Bash (o el intérprete que utilices). Por ejemplo, continuando con el ejemplo del LED, se puede crear un script que podamos ejecutar en cualquier momento sin tener que poner los comandos uno a uno. Para ello, abre un fichero de texto y escribe el siguiente contenido:

1
2
3
4
5
6
7
8
9
#!/bin/bash
source gpio
gpio mode 17 out
while true; do
gpio write 17 1
sleep 1.3
gpio write 17 0
sleep 1.3
done


Luego guarda el texto en un fichero denominado, por ejemplo, LED.sh y cuando lo desees abrir solo tendrás que situarte en el directorio donde lo hayas guardado y teclear lo siguiente esto para su ejecución:


1
./LED.sh


Si lo anterior no funciona, puede que debas darle permisos de ejecución al fichero LED.sh. Puedes realizarlo desde el entorno gráfico o con chmod (chmod u+rwx LED.sh). Y el resultado será un LED que titila cada 1.3 segundos. Recuerda que el límite es tu imaginación.
Programación avanzada de los GPIO



Pues se puede complicar algo más para realizar otros proyectos algo más sofisticados. Sobre todo si utilizamos lenguajes de programación para crear nuestros proyectos. Se pueden utilizar diferentes herramientas y lenguajes de programación. Por ejemplo, el lenguaje de programación C utilizando bibliotecas como WiringPi, pigpio, sysfs, etc…, o compilar nuestros propios códigos fuente con otros lenguajes como C#, Ruby, Java, Perl, BASIC y Python.

Y si no sabes programar, no te preocupes, hasta un niño puede programar los GPIO utilizando lenguajes gráficos como los que aporta Scratch, que se incluye en Raspbian por defecto, pero puedes instalarlo en otras distros sin problema y disfrutar del sistema “drag and drop” con bloques gráficos de Scratch.
C y wiringPi

Una de las mejores maneras de crear programas en lenguaje de programación C es utilizando la biblioteca wiringPI (si tu distro no la tiene instalada, lo primero que debes hacer es descargarla e instalarla, al igual que el compilador gcc u otro que prefieras). Yo utilizaré gcc y la librería wiringPI. Para crear nuestro código fuente debemos enlazar la biblioteca.

Si no los tienes instalados, instala GCC:


1
sudo apt-get install gcc


Y luego haz lo mismo para la biblioteca wiringPI:


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
sudo apt-get install git-core

sudo apt-get update

sudo apt-get upgrade

git clone git://git.drogon.net/wiringPi

cd wiringPi

git pull origin

cd wiringPi

./build


Si por ejemplo queremos seguir con nuestro ejemplo de LED que titila, y lo denominamos LED.c. En un editor de texto que prefieras, como por ejemplo gedit, puedes escribir el código fuente y luego guardarlo con el nombre que hemos elegido. El contenido de nuestro programa en C contendrá las siguientes líneas:


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
/*Código fuente para hacer titilar un LED desde los GPIO*/

#include <stdio.h>
#include <wiringPi.h>

int main (void)
{
printf (“Titilando LED\N”);
if (wiringPiSetup () == -1)
return 1;
pinMode (0, OUTPUT); //0 es el correspondiente del chip al pin 17
for (;;)
{
digitalWrite (0, 1); //Poner en ON o encenderlo
delay (1300); //Retraso de 1.3 segundos
digitalWrite (0, 0); //Poner en Off o apagar
delay (1300); //Retraso para volver a encender...
}
return 0;
}


Para compilarlo, desde el directorio donde se encuentra el código fuente guardado, podemos teclear lo siguiente:


1
gcc -o LED LED.c -lwiringPi


Si te has decidido por la librería pigpio, utiliza “-lpigpio”. Y para ejecutar el programa que hemos compilado, se hará de forma similar al script. Pero necesitaremos privilegios para iniciar la ejecución del binario llamado LED que hemos generado:


1
sudo ./LED

Python

Python es el lenguaje preferido para programar los GPIO. Las bibliotecas anteriormente citadas, también pueden ser empleadas con Python. Raspbian ya incluye un módulo denominado RPI.GPIO para poder crear scripts en Python, pero te recomiendo que utilices e instales pigpio, ya que éstos scripts pueden ser ejecutados tanto en Windows, Mac OS X como en Linux. Solo se necesitan los demonios corriendo en la máquina donde quieras ejecutar el código.

Instálalo así:


1
sudo apt-get install python-dev python-rpi.gpio


El código fuente para realizar el titileo de nuestro LED en Python es el siguiente (haz lo mismo que con el código C, puedes editarlo en un editor de texto):


1
2
3
4
5
6
7
8
9
10
11
12
#!/usr/bin/env python
#LED.py

import time
import pigpio
pi = pigpio.pi()

pi.set_mode (17, pigpio.OUTPUT) #Ponemos el pin 17 como salida

pi.set_servo_pulsewidth (17, 1300) #Iniciamos pulsos cada 1.3 segundos para encender el LED

pi.stop() #Terminamos el programa.


Lo debes guardar con el nombre LED y la extensión “.py” y para ejecutarlo, teclea en el terminal:


1
2
sudo pigpiod
./LED.py

Scratch y GPIO

Para usar Scratch con los GPIO podemos utilizar diferentes métodos, como con el resto de lenguajes de programación. Uno es emplear ScratchGPIO, RpiScratchIO, etc… Pero lo primero, si ya tienes Scratch y así será si estás utilizando Raspbian, es instalar el complemento ScratchGPIO:


1
2
sudo wget http://goo.gl/Pthh62 -O in stall_scratchgpio5.sh
sudo bash install_scratchgpio5.sh


Por ejemplo, si disponemos de ScratchGPIO, podemos crear el siguiente sketch para hacer titilar el LED:


BASIC

Si estás acostumbrado a programar en BASIC o ya eres usuario de placas de desarrollo de Parallax BASIC Stamp (que emplea PBASIC para programar los microcontroladores), te resultará más sencillo programar los pines GPIO en lenguaje BASIC.

Una de las posibilidades es usar RTB (Return to Basic), para instalarlo (en este caso es la versión 2.20):


1
2
3
4
cd /tmp
wget http://unicorn.drogon.net/rtb-2.20-1.deb
sudo dpkg -i rtb-2.20-1.deb
sudo apt-get -f install


Para ejecutarlo, solo tienes que teclear rtb en el terminal. Y con él teclear el siguiente código fuente renovado, aunque con reminiscencias del BASIC clásico y guardarlo como LED.rtb:


1
2
3
4
5
6
7
8
9
10
//Titilar LED

PinMode (17, 1) //Pin 17 como salida
CYCLE
DigitalWrite (17, 1) //Pin ON
WAIT (1.3) //Esperamos 1.3 segundos
DigtialWRite (17, 0) //Pin OFF
WAIT (1.3)
REPEAT
END


Espero que te haya servido de ayuda. Cualquier duda u opinión, deja tus comentarios!

El verano es aquella época del año donde solemos descansar y no hacer nada, pero también donde más tiempo libre tenemos. Tiempo que podemos aprovechar para hacer todas esas cosas que no podemos durante el resto del año como proyectos de verano y aprender cosas nuevas. Y, si tenemos hijos, podemos plantearnos con ellos unos campamentos de verano con la Raspberry Pi y tener unas vacaciones inolvidables para aprender de informática y hacer mil cosas juntos.

En esta entrada vamos a ver unos cuantos proyectos para hacer con la Raspberry Pi, solo o en compañía de otros, y disfrutar de nuestro tiempo libre mientras nos divertimos y aprendemos unas cuantas cosas.
Aprender a programar con Scratch

No debemos olvidarnos que la Raspberry Pi es todo un ordenador, y que no hace muchos años los ordenadores de sobremesa que teníamos eran menos potentes que la placa creada por Eben Upton. Aprender a programar y hacer un juego simple puede ser un excelente proyecto y, aunque parezca complicado a priori, tenemos Scratch como lenguaje de programación visual y creado precisamente para que los más pequeños den sus primeros pasos con la informática.

Si queréis saber más sobre Scratch, nada como recurrir a estos tutoriales para todas las edades, o recurrir a la página de Scratch para ver ejemplos y poder incluso modificarlos en su propia web.

La buena noticia es que en la imagen oficial de Raspbian ya tenemos Scratch instalado, por lo que nos podremos poner a aprender con este lenguaje de programación en cuanto grabemos la imagen en la tarjeta SD y la insertemos en la Raspberry Pi.
Crear nuestro propio ordenador

Hablando de informática, para manejar la Raspberry Pi como un ordenador de sobremesa necesitaremos teclado, ratón y pantalla. Otro proyecto interesante puede ser crear nuestro propio ordenador, y de hecho hay kits para complementar la Raspberry Pi con todo lo necesario. Así, tenemos a Kano, que incluye un teclado con trackpad, los cables, una caja, la tarjeta SD preinstalada y hasta un altavoz para que los más pequeños lo monten todo y tengan su propio ordenador creado por ellos.








Gracias a la mayor potencia de la Raspberry Pi 2 podemos tener una navegación web bastante decente, utilizar programas de ofimática freeware y un montón de cosas más.

Y si lo que queremos es algo un poco más profesional, en algunas entradas enXataka Smart Home ya comenté que gracias al abaratamiento de precios de los Lapdock de Motorola podemos tener un buen teclado, una buena pantalla e incluso la batería para alimentar la Raspberry Pi por un precio bastante bajo. Podéis ver todo el proceso en la entrada dedidada al Lapdock, los primeros pasos, y la configuración final.
Timelapse y la Raspberry Pi

Sigo con el proyecto que llevé a cabo durante mis últimas vacaciones. La Raspberry Pi tiene un par de cámaras muy interesantes, una de infrarrojos y otranormal, con las que podemos hacer vídeos timelapse.

Sí, esos vídeos en los que todo avanza mucho más rápido de lo normal, las nubes se mueven rapidísimas por el cielo y cambiamos nuestra escala de tiempo para ver el mundo de otra forma. El truco está en programar la Raspberry Pi con un script que tome fotografías con una de las cámaras y con la frecuencia que deseemos, y luego utilizar todas esas fotos como si fueran fotogramas y montar un vídeo. Incluso podemos crear el vídeo en la Raspberry Pi. Aquí os dejo el vídeo timelapse de mis últimas vacaciones.








El proyecto es ideal para hacer con niños. Podemos crear una caja estanca para evitar que una tormenta veraniega eche a perder nuestro proyecto (un tupper nos sirve), elegir localizaciones para hacer las fotos, planificar el tiempo y ver cada cuánto tomar fotos para obtener el vídeo de la duración deseada, ver qué tiempo va a hacer, salidas y puestas de sol, etc.

Incluso si no queremos complicarnos la existencia programando la Raspberry Pi, hay aplicaciones para iOS y para Android para el control de la cámara que nos simplifican el proceso. Tan sólo necesitaremos la Raspberry Pi, una tarjeta de memoria, una batería de móvil de buena capacidad, y la cámara de la Raspberry Pi, así como una caja que nos proteja de las inclemencias del tiempo y que sea estable y no se mueva con cambios de viento. Además os garantizo recuerdos únicos del verano para siempre.
Observar la naturaleza con una cámara de vigilancia en tiempo real

¿Estamos en medio del campo y queremos hacer fotos cuando detectemos la presencia de algún animal? ¿O nos queremos ir tranquilos de vacaciones y hacer un sistema de vigilancia casero, que suba imágenes a una Web en caso de detectar movimiento? Ningún problema. Eso es lo que nos proponen desde la Web de Pubnub, un sistema de vigilancia con muy poquitos componentes y sencillo de montar y de programar.








Además, tendremos la oportunidad de conectar el detector PIR de movimiento a los pines GPIO de la Raspberry Pi e incluso utilizar OpenCV para la detección de caras. En Pubnub sólo por diversión han utilizado esto para cambiar las caras a las personas que salían en las fotos. Interesante.
Montarnos una emisora de radio FM

Mi compañero Javier Pastor nos contaba en esta entrada de Xataka cómo crearnos una emisora FM con la Raspberry Pi. Desde luego es un proyecto interesante para hacer con los más pequeños de la casa, y también para usar ese receptor de radio FM que tenemos y librarnos de la canción del verano. Para montar nuestra pequeña emisora FM necesitaremos un cable normal y corriente conectado a uno de los pines GPIO de la Raspberry Pi, una tarjeta SD en la que instalaremos el software PiFM sobre Raspbian, y ya tendremos nuestra emisora, que puede funcionar en frecuencias que van desde 1 MHz a 250 MHz, aunque recomiendan limitarse a la banda FM estándar que va de los 87,5 a los 108,0 MHz para no interferir con otras frecuencias.







Montar y programar nuestro primer robot gracias a la Raspberry Pi

Hay numerosos kit de robótica con mayor o menor número de elementos pero que pueden dar mucho juego a la hora de hacer nuestros primeros pinitos en dicho campo. Con tan sólo buscar en Google "Raspberry Pi Robot Kit" nos aparecen un montón de kits a diverso precio y con distintas posibilidades, como por ejemplo éste de 4Tronix o estos de PiBorg o GoPiGo.







Llevarnos a nuestro sitio de veraneo un montón de películas divertidas en un centro multimedia

Uno de los principales usos de la Raspberry Pi, además de su clara vocación educativa, es utilizarlo como centro multimedia. Y es que la Raspberry Pi, sobre todo la versión 2, tiene potencia suficiente como para reproducir vídeo Full HD a través de su conector HDMI. Tenemos dos opciones principales, KODI y PLEX.

KODI es un reproductor completo, en el sentido de que en el mismo software tenemos la posibilidad de reproducir audio y video, por no hablar de un montón de plug-ins adicionales que complementan la funcionalidad de KODI. Personalmente la distribución que más me gusta es Openelec, tanto por soporte como optimización, pero también tenéis a vuestra disposición XBian y OSMC.

RasPlex en la Raspberry Pi es una distribución lista para grabar en una tarjeta SD que incorpora un cliente PLEX. El cliente se conectará a nuestro ordenador o disco de red en el que se ejecutará el programa servidor de PLEX, ofreciendo la reproducción de contenidos por streaming y codificación sobre la marcha de vídeo.

Incluso podemos agregar un display LCD a nuestro nuevo centro multimedia y meterlo en una caja para darle un toque profesional. Podéis ver la guía que publiqué en Xataka Smart Home al respecto en esta entrada. Para ello utilicé un display con conexión USB, así que si os da un poco de "Yuyu" conectar cables a la Raspberry Pi con este display no hay problema.
Aprender a jugar a Minecraft juntos

Tengo que reconocer que le he dedicado muy poco tiempo a Minecraft. Pero si es uno de los juegos con más seguidores en el mundo, un montón de libros y guías escritos sobre el mismo, y si lo ha adquirido Microsoft por nada menos que 2500 millones de dólares por algo será. Minecraft funciona en Raspbian e incluso viene instalado de serie en el sistema operativo recomendado para la Raspberry Pi, así que lo tendréis realmente fácil para comenzar a disfrutar.








En internet como digo hay numerosas guías e información para disfrutar de este juego. Os dejo con esta guía incluida en las guías y recursos oficiales de la Raspberry Pi.
Videojuegos retro en la Raspberry Pi

Enseñar a los más pequeños los videojuegos a los que jugábamos cuando teníamos su edad y jugar con ellos seguro que alimenta nuestra nostalgia y también da para muchos momentos juntos inolvidables en este verano. Además de otras distribuciones, contamos con LAKKA o con RetroArch, dos excelentes opciones para jugar a juegos retro y que simplifican mucho todo el proceso de instalación y puesta a punto. De hecho, con un mando o dos que tengamos, como por ejemplo de XBOX360 o de PS3, simplemente tendremos que conectarlos por USB, agregar las ROMs de los juegos que queramos jugar y disfrutar como nunca.







Mil ideas para hacer en vacaciones

Las posibilidades de este pequeño ordenador parecen multiplicarse en verano, y más si tenemos a los más pequeños de la casa en cuenta. No debemos olvidar que ese es el principal objetivo de la Raspberry Pi, enseñar informática a los niños y que se diviertan aprendiendo. Con todos estos proyectos triunfaréis y os divertiréis con ellos. Hemos elegido para la entrada aquellos que no tienen demasiada dificultad en cuanto a conexiones y hardware, pero sabed que hay muchísimos más en internet y que gracias a la red de redes es posible hacer muchísimos más.

Me dejo en el tintero otros proyectos, como un asistente de voz con la Raspberry Pi, un reproductor de música con Spotify y controlado desde el móvil, y mi proyecto de verano actual, que es usar la Raspberry Pi para hacer un pedal multiefectos para guitarra eléctrica utilizando Guitarix y Jack.

Por unos cuarenta euros que cuesta la Raspberry Pi, más algunas cosas que puede que tengamos en casa como una tarjeta de memoria y un cargador de móvil, tenemos la base para un montón de horas de diversión y aprendizaj


Configura tu Raspberry Pi desde cero paso a paso


Publicado por Isaac PE el 3 junio 2016 a las 21:43.

9
Compártelo en G+
Compártelo en Facebook
Compártelo en Twitter




La Raspberry Pi es una placa SBC cuyo éxito abrió un nuevo mercado de placas similares. De hecho, en nuestro blog hicimos un artículo analizando muchas de ellas. El triunfo ha sido tal, que se han venido lanzando nuevas versiones de esta placa, desde la 1A y 1B hasta llegar a la versión 3B que es la más actual por el momento, pasando por modelos intermedios como la 2B y la Zero. Igualmente ha florecido una industria alrededor de la Pi para complementar sus funcionalidades de la que hablaremos más adelante y aprenderemos a configurar la Raspberry Pi.

Este éxito se debe en parte a su bajo precio, por el cual puedes tener un ordenador completo para experimentar, pero no es el único motivo. También hay otros como su versatilidad para aprender sobre computación o el interés que suscita en el mundo del DIY y los desarrolladores. Pero ahora se le ha agregado otra gran ventaja y es la moda del IoT (el Internet de las cosas). Con la llegada del IPv6 habrá muchas más direcciones IP para que todo esté conectado y este tipo de placas, junto con las Arduino, resultan muy interesantes para crear proyectos IoT.


Índice [Ocultar]
1 El mundo de Pi
2 Materiales necesarios
3 NOOBS: versiones
4 Montaje y configuración
4.1 Descargar NOOBS
4.2 Preparar la SD desde Windows
4.3 Preparar la SD desde Mac OS X
4.4 Preparar la SD desde GNU/Linux
5 Primer inicio y selección de sistema operativo
El mundo de Pi


Pulsa para ver la versión en HD

Comparativa de #RaspberryPi por @comohacer_eu http://ctt.ec/cLi1b+CLICK TO TWEET


En este apartado, que bien podría ser el título de una película, vamos a hablar un poco de todos esos elementos que se han creado alrededor de la placa Raspberry Pi. Los proyectos de los que hablamos van desde multitud de sistemas operativos y software para ellos, hasta otros proyectos de hardware. Además, el otro gran proyecto, Arduino, también ha tendido la mano para crear grandes proyectos en combinación con la placa Raspberry Pi.

En este blog también hemos hecho una gran recopilación de los mejores sistemas operativos para la Raspberry Pi. Hay multitud de distribuciones Linux disponibles y cada vez se van agregando más a la larga lista. Algunos son genéricos y otros orientados a fines concretos, como Media Centers, videojuegos, etc… Por su éxito, incluso Microsoft se ha animado pensando en el desarrollo de proyectos para el IoT y ha aportado su Windows 10 IoT Corepara la placa Pi.

En cuanto a los gadgets y hardware, hay desde tarjetas SD con NOOBs preinstalado, fuentes de alimentación, diferentes carcasas, etc… Esto lo puedes encontrar también en nuestra tienda. Y los HATs y plates de los que hablábamos son placas electrónicas que se pueden conectar a la Raspberry Pi gracias a sus pines GPIO (véase Todo sobre los GPIO) y extender sus funcionalidades. Las hay centradas a la conectividad, prototipado, motores y robótica, etc…

Por tanto las posibilidades son casi infinitas, el límite es tu imaginación… Pero puedes encontrar desde proyectos para montarte tu propia consola de videojuegos, reproductor de audiolibros, sistemas de grabación de seguridad, Media Centers baratos, crear una nube propia, minería de bitcoins, proyectos de domótica, servidores, hasta simplemente usarla como un pequeño computador portable para uso genérico. Si quieres, puedes ver muchos de estos proyectos explicados paso a paso en nuestro blog desde aquí.
Materiales necesarios



Pues bien, una vez aprendido algo sobre qué es la Raspberry Pi y las posibilidades que ofrece, podemos comenzar con el tutorial de laconfiguración paso a paso para dar nuestros primeros pasos. El material necesario es:
Imagen del sistema operativo elegido. En nuestro caso usaremos NOOBS, que es una imagen desde la que probar varios de los soportados oficialmente de una forma sencilla. Puedes descargarlo desde la web oficialo encontrar tarjetas SD con NOOBS ya instalado.
Un equipo con Mac OS X, Windows o GNU/Linux con el que descargar NOOBS y pasarlo a la SD.
Placa Raspberry Pi, que también podrás encontrar en la tienda junto con kits para que no te falte nada. De lo contrario tendrás que hacerte con elementos auxiliares como una fuente de alimentación adecuada con cable, un cable HDMI para conectarla a una pantalla o TV, tarjeta microSD compatible (>4GB), etc…
Otros elementos que necesitarás son: tarjeta microSD (y adaptador para insertarla en el lector de tarjetas de tu equipo), monitor o TV con HDMI o cable RCA, teclado USB y ratón USB para manejarlo. Si quieres algo más que Raspbian OS que se incluye en la imagen Offline de NOOBS, debes tener también cable Ethernet o una tarjeta WiFi USB para insertar en tu Raspi y tener conexión a Internet, de este modo podrás descargar más sistemas (sólo con las versiones anteriores a la 3, ya que ahora lleva wifi integrado).
NOOBS: versiones



Debes saber que el proyecto NOOBS es un tanto dinámico. Puedes saber un poco más sobre NOOBS en nuestro artículo especial. Como sabrás es una imagen que incluye un sencillo menú gráfico en el que podrás seleccionar el sistema operativo a cargar entre varios de ellos e instalarlo automáticamente, cuando te canses, puedes cambiarlo sin borrar nada, usando la misma tarjeta SD.

Pero el proyecto varía como hemos dicho, si te has fijado en la web de descarga, verás que existen dos tipos de descarga: NOOBS offline integra Raspbian OS ya incluido y el resto de sistemas (Raspbian OS, OSMC, OPENELEC, RISC OS…) se instalan desde la red; y el NOOBS Lite es más ligero ya que no incluye ningún sistema y puedes ir descargándotelos de la red según te vayan haciendo falta. Este cambio en la nueva versión de NOOBS tiene la ventaja de no pesar tanto y no desperdiciar tanto espacio en la tarjeta SD, pero a mi particularmente me gustaban más las versiones más antiguas en las que ya se incluían todos los sistemas y no tenías que andar descargándolos uno a uno.

Si aun dispones de una imagen de NOOBS más antigua, o la has conseguido de la red porque te gusten más los sistemas que venían antes, ya que los sistemas incluidos también van cambiando, debes saber que la configuración varía en su filosofía. Si has seguido nuestro blog, sabrás que desde la versión 1.3.10v (actualmente va por la 1.9.x) que se lanzó en septiembre de 2014, se ha integrado este nuevo sistema que en parte simplifica el proceso, pero por otro lado hace que dependas de la red para instalar otros sistemas operativos (además éstos van variando en las diferentes versiones).
Montaje y configuración



Si has adquirido el kit completo o una carcasa para la Raspberry Pi, lo primero es insertar la placa dentro de la carcasa de la única posición en la que se puede insertar, haciendo coincidir las aperturas para los puertos adecuadamente y luego apretar los 4 pequeños tornillos que se adjuntan. Ahora ya está lista y protegida para poderla manipular de una mejor forma.

Después, puedes comenzar a conectar todos los cables, como los USB del teclado y el ratón que te servirá para manejarte dentro del sistema, conectar el HDMI a tu pantalla o TV y la fuente de alimentación, pero no la conectes a la red eléctrica, ya que eso provoca que la Pi se encienda y aun no hemos insertado la tarjeta SD con el sistema operativo. Entonces esto será lo siguiente.



Preparar la tarjeta con el sistema operativo elegido es sencillo. Como digo, en nuestro caso es NOOBS, pero si has elegido otro el procedimiento es igual, sustituyendo la imagen de NOOBS por la del otro sistema, aunque puede que algunos sistemas operativos puedan diferir un poco en el procedimiento:
Descargar NOOBS

Lo primero es descargar nuestro ZIP desde la web, si has adquirido una de nuestras tarjetas SD con NOOBS preinstalado puede saltarte estos primeros pasos y pasar directamente a insertar la SD en la Raspberry Pi para iniciarla:
Una vez descargado NOOBS te aconsejo que compruebes la suma MD5 o hash SHA-1 con alguna aplicación para determinar que la imagen descargada no es errónea. Como puedes ver en la web, hay dos tipos de descarga, la directa o por BitTorrent, en caso de haber elegido la de BitTorrent, no es necesario comprobar la suma, ya que en los clientes de este protocolo de descarga se realiza automáticamente para comprobar que la descarga ha sido correcta.
Descomprime el ZIP de NOOBS que hayas descargado. El contenido deberás pasarlo a nuestra SD previamente preparada como te indicamos a continuación.
Preparar la SD desde Windows

Una vez hayas descargado el ZIP de NOOBS desde la web oficial, debes proceder de la siguiente manera:
Formatear la SD utilizando la aplicación SD Association’s Formating Toolo directamente con las opciones de formateo de Windows. Para ello, vas aEquipo (Mi PC) con la SD insertada en la ranura de tu PC y le haces clic con el botón derecho en la unidad correspondiente a la tarjeta. Pulsas sobre Formatear y dejas los valores por defecto (debe de ser FAT como formato), si lo deseas puedes escribir un nombre de etiqueta del volumen.
Ahora el contenido descomprimido del ZIP debes copiarlo y pegarlo o arrastrando al interior de la SD. Si utilizas un software de compresión/descompresión, puedes elegir la opción extraer cuando abras el archivo ZIP y seleccionar la SD como destino directamente.
Una vez hayas hecho esto, ya tienes instalado NOOBS, ahora puedes retirar la SD de la ranura del PC con seguridad e insertarla en la Raspberry Pi. Si tienes una Pi con slot microSD, debes retirar también el adaptador.
Preparar la SD desde Mac OS X

Si tu sistema operativo es OS X también puedes optar por la SD Association’s Formating Tool disponible para Mac, o hacerlo desde el sistema:
Inserta la SD en tu Mac.
Para formatear la SD, haz clic en Aplicaciones dentro del disco duro de tu Mac y ve a Utilidades. Hacemos clic en Utilidades de discos y se nos lanza la aplicación. Seleccionas el icono de la SD y pulsa en Borrar. Si quieres, puedes asignarle un nombre. Elige la opción de formato FAT en el menú desplegable Formato y finalmente haz clic en Borrar (que aparece en la esquina inferior derecha). Ahora confirmas que deseas borrar en la ventana emergente.
Esperas a que se complete el proceso y ya la tienes lista paradescomprimir el contenido ZIP y guardarlo en ella. Después puedes retirar la SD e insertarla en la Raspi, recuerda retirar el adaptador de la SD si tu Pi tiene un slot microSD.
Preparar la SD desde GNU/Linux

En cambio, si eres un linuxero, puedes hacerlo por diversos métodos y programas. Una forma es mediante el comando parted desde el terminal, la otra más gráfica es desde el programa GParted:
Iniciamos GParted con nuestra SD insertada. Ponemos la contraseñaroot que nos pedirá.
En el menú superior izquierdo elegimos la SD (en mi caso es/dev/mmcblk0). Aquí te saldrán todas las particiones de tu sistema, elige bien.
Desmonta la SD, puedes hacerlo desde el menú de GParted haciendo clic con el derecho en ella y luego en la opción Desmontar. O también puedes emplear el método tradicional desde el terminal para desmontar un dispositivo.
Ahora en la ventana principal vamos a la partición o particiones de la SD que aparecerán y pulsar Eliminar en ella/s para borrarlas. Si es una SD nueva solo debería aparecer una partición.
Ahora haz clic en el espacio sin asignar que se ha generado y seleccionamos Nueva para crear una nueva partición.
En la ventana emergente seleccionas el sistema de ficheros FAT y deja el resto de opciones por defecto. Puedes escribir el nombre de Etiqueta si lo deseas.
Finalmente confirmamos haciendo clic en el icono verde (tic) de la parte superior. Nos avisará de que se borrarán todos los datos, aceptamos y espera a que se complete.
Ahora solo debes pasar el contenido descomprimido del ZIP de NOOBS y guárdalo en la SD. Retira la SD e insértala en la Raspberry Pi, previamente sacada de su adaptador si el slot de tu versión de Pi es microSD.
Primer inicio y selección de sistema operativo




Antes te dije que no conectases la fuente de alimentación a la red eléctrica porque se iniciaba la Pi automáticamente (recuerda que la Pi no tiene interruptores ON/OFF), pues ahora es el momento de hacerlo ya que has insertado la SD con NOOBS en su ranura y el resto de cables están conectados. Los LEDs comienzan a titilar y en la pantalla verás unos colores primero y lo siguiente será el menú principal de NOOBS cuando arranquemos nuestra Raspberry Pi. La pantalla del Recovery Tools nos mostrará los sistemas operativos disponibles en la versión de NOOBS que te hayas descargado. Igualmente puedes seleccionar el idioma en el menú Language y cambiar a Español.

Si por algún motivo no ocurre esto, puede que en los pasos previos hayas cometido algún error o algo haya salido mal. Lo primero que debes hacer es comprobar las conexiones, sobre todo la de alimentación y el cable HDMI para ver si están correctamente conectados. Si está todo correcto y la Pi funciona, puedes comprobar si NOOBS no está corrupto o ha sido correctamente copiado a la tarjeta SD. ¡Ojo! Otro error muy común es conectar la Raspi a una TV y no variar el input de la TV desde el mando a distancia, por lo que la TV sigue mostrando la señal de la antena y no del HDMI.

Para comenzar a usar uno de los sistemas operativos disponibles (recuerda que en las nuevas versiones de NOOBS solo está disponible Raspbian OS para usarlo offline, el resto debes descargarlos para instalarlos), selecciona el que deseas y pulsa ENTER o en el botón Install que aparece. Para cambiar de SO solo tienes que pulsar la tecla Shift al iniciar la Raspi. Por cierto, como puedes comprobar, aparece un icono a la derecha de cada entrada de sistema operativo en el menú de NOOBS y verás como los sistemas que están en la SD tienen un símbolo de una tarjeta SD y los que tienes que instalar desde la red tienen un símbolo de una conexión Ethernet.

Gracias a un sistema de gestión de particiones, NOOBS es capaz de guardar los usuarios y las configuraciones para poder cambiar de nuevo al sistema operativo previo y poder recuperarlas sin problema. Ahora ya puedes divertirte con NOOBS.

Vamos a suponer que vas a utilizar Raspbian OS, uno de los principales y más recomendables para uso genérico y que además es el único offline que se integra en la NOOBS. Cuando es la primera vez que inicias Raspbian ya no es necesario hacer login como en las antiguas versiones y luego introducir el comando startx para iniciar el sistema gráfico, ahora ya lo hace automáticamente.

Una vez finalizado, si todo ha ido correctamente, ya puedes comenzar a utilizar tu miniPC y a instalar las aplicaciones que necesites. ¡Disfruta!

Puedes dejar tu comentario si tienes dudas o sugerencias… intentaremos responderte lo antes posible. Espero que te haya servido este sencillo tutorial para iniciarte en este mundillo.

No hay comentarios:

Publicar un comentario