Вы находитесь на странице: 1из 39

Una publicacin de RICVEAL.

COM

Raspberry Pi y
el Internet de
las Cosas
Una Gua Para Principaintes

Raspberry y el Internet de
las Cosas para
Principiantes
Licencia

Usted es libre de:


Copiar, distribuir y comunicar pblicamente la obra Hacer
obras derivadas Bajo las condiciones siguientes:
Reconocimiento. Debe reconocer los crditos de la
obra especicando como autor de la obra original a
Ricardo Vega Alonso.
2

Deber enlazar o citar como fuente original


http://ricveal.com (pero no de una manera que sugiera que tiene su apoyo o apoyan el uso que hace de su
obra).
Compartir bajo la misma licencia. Si transforma o
modica esta obra para crear una obra derivada, slo
puede distribuir la obra resultante bajo la misma licencia, una de similar o una de compatible.
Al reutilizar o distribuir la obra, tiene que dejar bien
claro los trminos de la licencia de esta obra.
Alguna de estas condiciones puede no aplicarse si se
obtiene el permiso del titular de los derechos de autor
Nada en esta licencia menoscaba o restringe los derechos morales del autor.

Versin
Esta es la versin de Diciembre de 2014.
Puedes consultar http://ricveal.com para ver si hay versiones
actualizadas.

Sobre el Autor
Soy Ricardo Vega, en Internet @ricveal. Soy Ingeniero en Electrnica Industrial y Automtica por la Universidad de Len.
Llevo aos involucrado en diferentes proyectos relacionados
con Software y Hardware Libre como puede ser la plataforma
Arduino y/o Impresin 3D.
Participo activamente en algunos proyectos colaborativos y
siempre que puedo me gusta perderme por foros y aportar mi
granito de arena puesto que Internet es de todos y para todos.
He llevado a cabo mi proyecto nal de carrera centrndome
en la domtica/inmtica. Para ello me he apoyado en tecnologas plenamente asentadas como el protocolo KNX e introduciendo innovaciones mediante la implementacin de una serie
de servicios a travs de Linux y una Raspberry Pi.
He trabajado en el Instituto de Automtica y Fabricacin de
la Universidad de Len desarrollando un sistema de supervision
4

y control industrial multiplataforma basado en Python que se ha


montado sobre una Raspberry Pi.

Creo que tanto domtica como inmtica deben ser tecnologas ligadas a eciencia energtica. Igualmente, considero la
gestin energtica como uno de los grandes retos a los que
nos enfrentamos la sociedad en su conjunto, los ingenieros en
particular. En este sentido, aado a mis intereses temas relacionados con energas renovables.
Soy un apasionado del Internet de las Cosas.
De este modo, teniendo en cuenta todas las tecnologas de
las que he hablado, creo, deseo y trabajo para que evolucionemos el trmino y signicado de sostenibilidad.
Adems de todo esto, mantengo un blog (http://ricveal.com)
donde intento exponer con sencillez el da a da de la tecnologa
de cara al usuario porque creo que la tecnologa tiene la increble capacidad de transformar y mejorar la vida de las personas
independientemente de sus conocimientos tcnicos.

Creo que es difcil estar al da en un mundo donde la informacin es tan masiva y cambiante pero no por ello pierde importancia por lo que he dedicado mucho tiempo a mejorar mi
productividad personal y estrategias de adquisicin de informacin, creando mi propio y privado departamento de inteligencia
desde el cual mando pldoras de informacin a travs de mis redes sociales.
No dejes de visitar mi blog, donde pretendo devolver a Internet un poco del conocimiento que Internet me ha dado a la par
que me da a conocer profesionalmente. Siempre podris aportarme ideas y sugerencias.
Un saludo!

ndice general
ndice general

1. Lista de Materiales

2. Conguracin Cero

11

2.1. La tarjeta SD - Un almacenamiento para la Raspberry Pi . . . . . . . . . . . . . . . . . . . . . . . . . .

12

2.2. Preparacin de la Raspberry Pi . . . . . . . . . . . .

13

2.3. Conguracin de la tarjeta SD

. . . . . . . . . . . .

13

2.4. Formateo de nuestra tarjeta . . . . . . . . . . . . .

14

2.4.1. Instrucciones de formato para Windows 7 .

16

2.4.2. Instrucciones de formato para Mac OS X . .

17

ndice general
2.4.3. Instrucciones de formato para Linux . . . .
3. Instalacin y primera puesta en marcha

18
21

3.1. BerryBoot . . . . . . . . . . . . . . . . . . . . . . . .

21

3.1.1. Descarga el zip BerryBoot . . . . . . . . . . .

22

3.1.2. Conexin de la Raspberry Pi . . . . . . . . .

23

3.1.3. La descarga del sistema operativo . . . . . .

24

3.2. Raspi-cong. Una ayuda para la primera conguracin . . . . . . . . . . . . . . . . . . . . . . . . . . . .

28

3.3. Instalacin completa . . . . . . . . . . . . . . . . . .

31

4. RPi y Arduino

32

4.1. Instalando pySerial . . . . . . . . . . . . . . . . . . .

33

4.2. Arduino -> Raspberry va USB . . . . . . . . . . . . .

34

4.3. Raspberry Pi -> Arduino . . . . . . . . . . . . . . . .

37

Captulo 1

Lista de Materiales
A lo largo de esta gua vamos a congurar una Raspberry Pi
para que est totalmente operativa y, junto con la interconexin
que llevaremos a cabo con Arduino, podremos convertirla en el
cerebro de nuestra instalacin domtica. Vamos a emplear:
Raspberry Pi
Cable HDMI
Adaptador de Corriente
Tarjeta de Memoria SD
Arduino UNO
Cable USB macho - macho (El Arduino incluye uno)
9

Si no tienes alguno de estos productos, te invito a pasarte


por:

http://ricveal.com/compras-navidenas-domotica
donde podrs ver todos los enlaces necesarios para hacerte
con cada producto.

10

Captulo 2

Conguracin Cero
En esta primera parte vamos a congurar nuestra Raspberry
Pi. Necesitaremos comenzar instalando un sistema operativo en
una tarjeta SD. Una vez realizado esto, podemos empezar a instalar software extra para escribir a posteriori cdigo que nos permita controlar nuestros dispositivos a travs del los pines GPIO.
Vamos a necesitar completar una serie de pasos:
1. Conseguir una tarjeta SD
2. Formatearla
3. Elegir una versin de Linux
4. Instalar el sistema operativo
5. Congurar el sistema operativo
11

2.1. La tarjeta SD - Un almacenamiento para la Raspberry


Pi

Una vez estos pasos este completos, estaremos preparados


para comenzar nuestros proyectos de control y automatizacin
casera.

2.1.

La tarjeta SD - Un almacenamiento para


la Raspberry Pi

Una tarjeta SD es una forma de almacenamiento portable de


alto rendimiento disponible para dispositivos electrnicos como
cmaras o PCs.

12

2.2. Preparacin de la Raspberry Pi


La Raspberry Pi viene equipado con una ranura para tarjetas
SD que nos permite insertarlas y utilizarlas como mecanismo
de almacenamiento principal de nuestro dispositivo, al igual
que un disco duro en un PC.

2.2.

Preparacin de la Raspberry Pi

Aunque se pueden utilizar otros mecanismos de almacenamiento, como una unidad USB o un disco duro USB externo, la
tarjeta SD es pequea y por lo tanto se presta mejor a los dispositivos integrados como los que se encuentran en proyectos de
automatizacin del hogar.
Hay una gran variedad de marcas de tarjetas SD en el mercado con diferentes tamaos. El Raspberry Pi es compatible con
tarjetas SD de gran tamao, como aquellas con 64 GB de espacio
de almacenamiento. Sin embargo, una tarjeta SD con un mnimo
de almacenamiento de 8 GB debera ser suciente.

2.3.

Conguracin de la tarjeta SD

Antes de que podamos instalar nuestro sistema operativo,


tenemos que congurar la tarjeta SD. Esto implica dar formato
al sistema de cheros FAT primero.

13

2.4. Formateo de nuestra tarjeta


Despus de formatear la tarjeta SD vamos a instalar un programa llamado BerryBoot. Esto nos permite instalar el sistema
operativo que la Raspberry Pi utilizar en la tarjeta SD de forma
sencilla.
Debes coger tu tarjeta e insertarla en la ranura SD de tu ordenador porttil o PC para comenzar el formateo.

2.4.

Formateo de nuestra tarjeta

Como se explica en el apartado anterior, con el n de instalar


BerryBoot, primero tenemos que formatear la tarjeta SD en formato FAT. Esta es una tarea bastante sencilla y se puede realizar
en un PC o Mac.

14

2.4. Formateo de nuestra tarjeta

Al comprar una tarjeta SD, seguramente ya est formateada


en FAT debido a que este formato es muy popular entre dispositivos como cmaras digitales. Muchos fabricantes envan la tarjeta ya para que est lista segn sale de la caja por lo que no se
requiere formatearla.
Sin embargo, aqu te proporciono las instrucciones para Windows 7, Mac OS X y Linux para que puedas volver a formatear la
tarjeta si as lo deseas.

15

2.4. Formateo de nuestra tarjeta

2.4.1.

Instrucciones de formato para Windows 7

Las instrucciones que siguientes te guiarn a travs del proceso de formateo de la tarjeta SD con el sistema operativo Windows 7. Una vez hayamos terminado, estars listo para instalar
BerryBoot en tu tarjeta SD.
1. Haz clic en el botn Inicio de la barra de tareas de Windows.
2. En el men Inicio, haz clic en Equipo.
3. Ahora te aparecer una ventana con un panel a la izquierda
listando artculos como Favoritos, Bibliotecas, Ordenador
y Red. El panel de la derecha mostrar los dispositivos de
almacenamiento del PC.
4. En la lista de dispositivos en el panel derecho, haz clic en la
tarjeta SD.
5. En el men emergente, haz clic izquierdo en Formato.
6. Ahora vers una ventana emergente para dar formato al
disco extrable.
7. Desde el sistema de archivos desplegable, selecciona FAT32
(por defecto) si no est ya seleccionado.
8. Puedes dejar los otros mens desplegables de ajustes tal
como estn.
9. En el campo de entrada de texto de la etiqueta de volumen,
escriba un nombre para la tarjeta SD como RASPBERRYPI.
16

2.4. Formateo de nuestra tarjeta


10. Marca la casilla de Formato rpido.
11. Ahora ests listo para formatear la tarjeta.
12. Haz clic en el botn Inicio.
Windows te formatear la tarjeta SD usando los ajustes anteriores.
Una vez formateada con xito, se te presentar una ventana
emergente que te informar de que el proceso ha sido completado.
Selecciona Aceptar para cerrar la ventana emergente. Ahora
ests listo para instalar BerryBoot en su tarjeta SD.

2.4.2.

Instrucciones de formato para Mac OS X

Los pasos siguientes te guiarn a travs del formateo de una


tarjeta SD en un equipo Mac OS X. Una vez completa, la tarjeta
SD estar listo para copiar en ella la aplicacin BerryBoot.
1. Abre la carpeta Aplicaciones.
2. Selecciona el icono de la carpeta Utilidades.
3. En la carpeta abierta, ahora selecciona la Utilidad de Discos.

17

2.4. Formateo de nuestra tarjeta


4. La ventana de la Utilidad de discos se abrir. En el lado de
la izquierda, podrs ver una lista de los discos, volmenes
y las imgenes de disco.
5. Selecciona la tarjeta SD en el men de la izquierda.
6. Una vez seleccionada, se te presentar la informacin sobre el disco en el panel de la derecha.
7. Desde este panel, selecciona la cha Borrar.
8. Ahora se te presentar un conjunto de opciones para formatear la tarjeta SD.
9. En el men desplegable Formato, seleccione MS-DOS (FAT).
10. Pon de nombre a tu tarjeta SD algo tal como RASPBERRYPI.
11. Ahora estamos listos para formatear la tarjeta.
12. Haz clic en el botn Borrar.
Mac OS X formatear la tarjeta SD con las especicaciones
que hemos introducido. Ahora podemos pasar al siguiente paso
de la instalacin BerryBoot.

2.4.3.

Instrucciones de formato para Linux

Para formatear una tarjeta SD en Linux, vamos a utilizar el


programa mkdosfs a travs de la ventana de terminal.
18

2.4. Formateo de nuestra tarjeta


Hay una serie de herramientas disponibles para el formateo
y particionado en Linux. El programa mkdosfs da formato a un
dispositivo para que utilice un sistema de archivos MS-DOS, por
ejemplo FAT16 o FAT32.
1. Carga la ventana de terminal.
2. Escribe el comando df -h en ella.
3. Busca el nombre del sistema de archivos de la tarjeta SD y
antalo.
4. Tambin tenen cuenta dnde el directorio est montado.
5. Si no ests en el sistema como root, cambio de usuario a
root utilizando: sudo su
6. Con el n de formatear la tarjeta SD, necesitars desmontarla. Para esto, tendrs que utilizar el comando unmount
y pasarle el nombre del sistema de cheros que has anotado, por ejemplo: unmount / dev / mmcblk0p2.
7. Ahora podemos utilizar el comando mkdosfs para formatear la tarjeta SD.
8. Escribe el siguiente comando: mkdosfs / dev / mmcblk0p2
-F32
9. Tu tarjeta SD ahora ser formateada en FAT32.
10. Ahora vuelve a montar la tarjeta SD utilizando el nombre de
sistema de archivos y montndola en el nombre que grab
19

2.4. Formateo de nuestra tarjeta


anteriormente: mount / dev / mmcblk0p2 / media / tarjeta
SD
Tu tarjeta SD estar ahora formateada y lista para copiar BerryBoot en la misma.

20

Captulo 3

Instalacin y primera
puesta en marcha
3.1.

BerryBoot

Hay varias formas de instalar el sistema operativo en la tarjeta SD, pero una de las ms fciles es BerryBoot.
BerryBoot es un gestor de arranque compatible con Mac, Windows y Linux. Funciona al ser descomprimido en una tarjeta SD
formateada y luego, cuando el Raspberry Pi est encendida, se
pone en marcha.

21

3.1. BerryBoot

Una vez cargado, te permite elegir el sistema operativo que


quieres instalar y te gua a travs del proceso. La aplicacin BerryBoot tambin ayuda a instalar varios sistemas operativos en una
sola tarjeta SD.

3.1.1.

Descarga el zip BerryBoot

Nuestra primera tarea ser descargar el archivo zip BerryBoot. Esto se puede encontrar en:
http://www.berryterminal.com/doku.php/berryboot.
Encuentra el enlace de descarga en la pgina y descargar el
archivo zip. El archivo es de alrededor de 21,3 MB.
22

3.1. BerryBoot
Ahora tienes que extraer el contenido del archivo zip BerryBoot que acabas de descargar y moverlo a tu tarjeta SD. El contenido del archivo comprimido son los archivos que se utilizarn
cuando el Raspberry Pi arranque por primera vez.
Cuando el proceso anterior se haya completado, estamos listos para conectar la Raspberry Pi y los perifricos para poder
instalar el sistema operativo.

3.1.2.

Conexin de la Raspberry Pi

Ahora vamos a congurar el hardware de nuestra Raspberry


Pi. Tienes que completar los siguientes pasos antes de intentar
encender el Raspberry Pi:
1. Extrae la tarjeta SD de tu PC / Mac y colcalo en el puerto
de la tarjeta SD de tu Raspberry Pi.
2. Conecta la Raspberry Pi a tu monitor con el cable HDMI.
3. Conecta el teclado y el ratn a la Raspberry Pi a travs de
los puertos USB.
4. Conecta el router al puerto Ethernet de tu Raspberry Pi a
travs de un cable Ethernet.
Una vez completados estos pasos ya puedes encender la Raspberry Pi conectndola a la alimentacin.
23

3.1. BerryBoot
En el monitor, ahora deberas ver la pantalla de bienvenida
BerryBoot. Esto nos dice que hemos copiado con xito los archivos en la tarjeta SD y ahora podemos congurar nuestra seleccin de sistema operativo.

3.1.3.

La descarga del sistema operativo

Ahora tenemos que elegir entre la variedad de sistemas operativos que estn disponibles para instalar en la Raspberry Pi.
Para nuestro proyecto de automatizacin del hogar, vamos a utilizar un sistema operativo llamado Raspbian. Hay varias razones
para elegir este sobre otro sistema operativo.
Raspbian se basa en el sistema operativo Debian Wheezy
Linux y ha sido optimizado para su uso con Raspberry Pi. Mike Thompson y Peter Green de Raspbian. org lo desarrollaron
y aunque no es un producto ocial de la fundacin Raspberry
Pi, es el sistema operativo que la fundacin recomienda para los
principiantes en su pgina web.
Si no ests familiarizado con Linux, es un grupo de sistemas
operativos de cdigo abierto que utiliza el kernel de Linux y proporciona una alternativa a sistemas como Windows.
Adems, el sistema operativo Raspbian, presenta las siguientes caractersticas:

24

3.1. BerryBoot
Raspbian tiene un entorno de escritorio similar a Windows y Mac llamados LXDE, por lo que proporciona una
transicin fcil para quienes no estn familiarizados con la
lnea de comandos de Linux.
Viene preinstalado con el software que ser til para escribir cdigo para el Raspberry Pi y Arduino como Python.
Tambin incluye otro software que puedes estar interesado en explorar. Un ejemplo es el Scratch, una herramienta
para la introduccin de la programacin para los nios.
El sistema operativo ha sido adaptado para funcionar en
la Raspberry Pi. La compilacin de cdigo est optimizado
para los clculos en el chip de punto otante (hard-oat) en
lugar de un mtodo basado en software ms lento.
Existe un amplio apoyo de la comunidad para el sistema
operativo, lo que signica que a medida que avanza con
proyectos ms all de esta gua, habr un montn de recursos y ayuda a tu disposicin.
Una vez que el Raspberry Pi est encendido, vers la pantalla
de bienvenida BerryBoot. Sigue los pasos para instalar Raspbian.
Desde la ventana emergente de bienvenida, selecciona los
siguientes ajustes:
1. Si tienes fronteras verdes en la parte superior e inferior
de tu monitor, selecciona el botn titulado "S (desactivar
overscan)".
25

3.1. BerryBoot
2. En la opcin de conexin de red, selecciona el botn onexin de cable".
3. A partir de la conguracin regional, selecciona las opciones adecuadas para tu zona horaria y los campos de diseo
del teclado.
4. Una vez terminado, selecciona el botn OK.
5. Cuando hayas hecho clic en Aceptar, se te llevar a la pantalla de seleccin de discos. Aqu podrs elegir en qu dispositivo de almacenamiento deseas instalar tu sistema operativo.
Si tienes otros dispositivos de almacenamiento ms all de su
tarjeta SD conectada a la Raspberry Pi, que tambin se te dar la
opcin de usar estos. Sin embargo vamos a utilizar la tarjeta SD.
1. Selecciona la tarjeta SD de la lista y luego cambie el sistema
de archivos a ext4. Al igual que FAT, ext4 es un sistema de
archivos y en este caso est dirigido a Linux.
2. Ahora selecciona el botn Formato.
3. Una vez formateada, se nos presenta la opcin Instalar el
sistema desde donde podemos elegir Raspbian.
4. Haz clic en la opcin Debian Wheezy Raspbian.

26

3.1. BerryBoot

Esta descarga es de alrededor de 430 MB y en funcin de la


velocidad de tu conexin a Internet, tardar ms o menos.
Una vez completado, se te presentar el editor de mens de
BerryBoot. Se trata de una pantalla con un men y una lista de
los sistemas operativos instalados actualmente en tu tarjeta SD.
Hay una serie de opciones en la parte superior de la pantalla
del editor de men BerryBoot:
Aadir OS
Editar
Clonar
Exportacin
27

3.2. Raspi-cong. Una ayuda para la primera


conguracin
Eliminar
Usar por omisin
Salir
El proceso es muy fcil e intuitivo.
1. Selecciona el sistema operativo que has instalado y haz clic
en Establecer como predeterminado. Esto signica que
el sistema operativo Raspbian instalado se lanza como la
opcin por defecto cuando la Raspberry Pi se inicia.
2. A continuacin, selecciona Salir.

3.2.

Raspi-cong. Una ayuda para la primera


conguracin

Ahora vers en la pantalla a Raspi-cong.


Raspi-cong es un software que a travs de un men permite asignar algunos valores de conguracin de tu Raspberry Pi.
Puede navegar por la pantalla con las teclas de echas y use la
tecla Intro para seleccionar una opcin.

28

3.2. Raspi-cong. Una ayuda para la primera


conguracin

El men en esta pantalla consiste en lo siguiente:


Informacin: Informacin sobre esta herramienta
Overscan: Cambiar overscan
congure_keyboard: Establecer la distribucin del teclado
change_pass: Cambio de contrasea para el usuario pi
change_locale: Establecer la conguracin regional
change_timezone: Establecer zona horaria
memory_split: Cambiar distribucin de la memoria
overclock: Congurar overclocking
29

3.2. Raspi-cong. Una ayuda para la primera


conguracin
ssh: Activar o desactivar el servidor SSH
boot_behaviour: Iniciar escritorio en el arranque
Actualizacin: Intenta actualizar Raspi-cong
<Seleccionar>: Selecciona una opcin
<Finalizar>: Terminar con el men
Desde este men, vamos a cambiar la contrasea y habilitar
SSH.
1. En primer lugar tienes que buscar y seleccionar la opcin
del men change_pass, e introducir la nueva contrasea.
La contrasea predeterminada para el Raspberry Pi es raspberry. Te recomiendo que cambies la contrasea a una de
cierta fortaleza.
Despus de esto, tenemos que congurar SSH para que
nos permite conectarnos a la Raspberry Pi de forma remota a travs de la lnea de comandos en una mquina
diferente.
2. Selecciona la opcin ssh y habilita el servidor ssh.
3. Ahora hemos terminado de congurar los ajustes que necesitamos en la pantalla Raspi-cong y puedes salir, para
lo que debes ir a la opcin <Finalizar>y pulsar la tecla Intro
para completar la conguracin.

30

3.3. Instalacin completa

3.3.

Instalacin completa

Una prueba nal opcional que puedes realizar es conectarte


a tu Raspberry Pi a travs de SSH.
Hay varias maneras de obtener la direccin IP asignada a la
Raspberry Pi, uno de los cuales es comprobar la tabla DHCP del
router de tu casa. Sin embargo, un mtodo ms fcil es comprobarla en la propia Raspberry Pi.
Para ello el siguiente comando en la terminal:
1

ip addr espectaculo eth0

31

Captulo 4

RPi y Arduino
En esta segunda parte, vamos a congurar una placa de Arduino y la Raspberry Pi para que funcionen juntos. Vamos a instalar todas las libreras necesarias para que el software funcione
correctamente. Una vez seguidos estos pasos, vamos a ponernos manos a la obra con el IDE de Arduino.
Existen varias formas de conectar una Raspberry Pi y una placa de Arduino como pueden ser I2C, GPIO o comunicacin serie.
Nosotros vamos a utilizar la forma que creo es ms sencilla y es
aquella que comunica ambos dispositivos mediante una comunicacin serie a travs de un cable USB. A parte de la sencillez,
este mtodo nos facilita mucho la conexin ya que no necesite
ningn desembolso de dinero extra puesto que podemos utilizar
el mismo cable USB que viene con nuestra placa de Arduino.

32

4.1. Instalando pySerial

Para demostrar como funciona he preparado dos mini-proyectos:


uno para enviar datos de la Raspberry a Arduino y otro en sentido opuesto.

4.1.

Instalando pySerial

pySerial es una librera para la Raspberry Pi que nos permite leer y escribir a travs del puerto serie mediante lenguaje de
programacin Python.

33

4.2. Arduino -> Raspberry va USB


Para ello, los pasos que debemos seguir son muy sencillos
ya que simplemente debemos ejecutar en la consola de nuestra
RPi los siguientes comandos:
1
2

sudo apt - get update


sudo apt - get install python - serial

4.2.

Arduino -> Raspberry va USB

Vamos a saludar a nuestra Rasbperry desde Arduino cada 2


segundos. Este es el cdigo que debers introducir en tu IDE de
Arduino:
1
2
3

void setup () {
Serial . begin (9600) ;
}

4
5
6
7
8

void loop () {
Serial . println (" Hello Pi ) ;
delay (2000) ;
}

Ejecuta Python2 en tu Raspberry Pi. Entrars en un menu


nuevo donde debers incluir los siguientes comandos:
1
2

import serial
ser = serial . Serial ( / dev / ttyACM0 , 9600)

34

4.2. Arduino -> Raspberry va USB

El primer argumento es el nombre de la interfaz USB que estamos usando. Tal vez el nombre de tu puerto no sea el mismo
que el mo. Para averiguar el nombre del puerto tan slo debemos teclear en la terminal de la Raspberry Pi (fuera del editor
de Python) y teniendo desenchufada nuestra placa Arduino la
siguiente sentencia:
1

ls / dev / tty *

A continuacin, conecta tu Arduino y ejecuta de nuevo el comando. Si aparece un nombre de un puerto, entonces, ese es tu
puerto.
El segundo argumento (9600) es el baud rate y debe coincidir
con el que tengas establecido en tu programa de Arduino.
Una vez aclarado esto, volvamos a donde nos quedamos. Habamos introducido el comando:
1

python

en nuestra terminal y habamos entrado en una pantalla con


tres signos.
Debamos introducir ahora los comandos:

35

4.2. Arduino -> Raspberry va USB

1
2

import serial
ser = serial . Serial ( / dev / ttyACM0 , 9600)

adaptando los parmetros del segundo comando a los de


nuestro equipo.
Si una vez hecho esto no obtenemos ningn error, es que todo lo hemos hecho bien y podemos continuar. Es el momento
de introducir el bucle que permanecer escuchando los mensajes que nos enva nuestro Arduino. Para ello introducimos el
siguiente comando:
1
2

while 1 :
ser . readline ()

Es importante que sepas que vas a tener que pulsar dos veces el <enter> trs la segunda linea. Deberas empezar a recibir
mensajes Hello Pi cada 2 segundos. Para parar el programa tan
solo tienes que pulsar la combinacin
1

Ctrl + C

y detendrs el programa de Python.

36

4.3. Raspberry Pi -> Arduino

4.3.

Raspberry Pi -> Arduino

En este ejemplo, nuestra Raspberry Pi va a estar enviando un


nmero y la placa de Arduino va a encender un led situado en
el Pin 12 tantas veces como el nmero enviado por la Raspberry
Pi.
El cdigo a introducir es el siguiente:
1
2
3
4
5

const int ledPin = 12;


void setup () {
pinMode ( ledPin , OUTPUT ) ;
Serial . begin (9600) ;
}

6
7
8
9
10
11
12

void loop () {
if ( Serial . available () ) {
light ( Serial . read () - 0 ) ;
}
delay (500) ;
}

13
14
15
16
17
18
19
20
21

void light ( int n ) {


for ( int i =0; i < n ; i ++) {
digitalWrite ( ledPin , HIGH ) ;
delay (100=;
digitalWrite ( ledPin , LOW ) ;
delay (100) ;
}
}

37

4.3. Raspberry Pi -> Arduino


En el lado de la Raspberry Pi, vas a necesitar escribir:
1

ser . write ( 3 )

Ahora puedes ver como el Led de nuestro Arduino se enciende 3 veces.


Hemos llegado al nal, ahora es tu turno y debes ser creativo
para encontrar cuantas cosas diferentes cosas puedes hacer. Se
me ocurren algunos ejemplos que espero te sirvan de gua:
Controlar un LCD a travs de la Raspberry Pi
Controlar un motor a travs de la Raspberry Pi

38

Si piensas que internet ha cambiado


tu vida, pinsalo de nuevo. El Internet de las Cosas volver a hacerlo de
nuevo!
Brendan OBrien, Aria Systems

Вам также может понравиться