Ejercicios prácticos con Raspberry Pi - Simon Monk - E-Book

Ejercicios prácticos con Raspberry Pi E-Book

Simon Monk

0,0

Beschreibung

Con millones de nuevos usuarios y varios nuevos modelos, el ecosistema de Raspberry Pi continua expandiendose, junto con muchas nuevas preguntas sobre las capacidades del Pi. La segunda edicion de este popular libro ofrece mas de 240 ejercicios practicos para ejecutar pequenos ordenadores de bajo coste con Linux, programarlos con Python y conectar sensores, motores y otros equipos, como Arduino e Internet de las Cosas. El hacker prolifico y autor Simon Monk tambien ensena principios basicos para ayudarle a utilizar nuevas tecnologias con Raspberry Pi a medida que su ecosistema evoluciona. Este libro practico es ideal para programadores y aficionados familiarizados con el Pi a traves de diversos recursos, incluyendo Getting Started with Raspberry Pi (O'Reilly). Codigos de Python y otros codigos de ejemplo del libro estan disponibles en GitHub. - Configurar su Raspberry Pi y conectarse a una red. - Trabajar con su sistema operativo basado en Linux. - Programar Raspberry Pi con Python. - Dar "ojos" a su Pi con vision artificial. - Controlar hardware mediante el conector GPIO. - Utilizar Raspberry Pi para hacer funcionar diferentes tipos de motores. - Trabajar con interruptores, teclados y otras entradas digitales. - Utilizar sensores para medir la temperatura, la luz y la distancia. - Conectarse a dispositivos IoT de varias maneras. - Crear proyectos dinamicos con Arduino.

Sie lesen das E-Book in den Legimi-Apps auf:

Android
iOS
von Legimi
zertifizierten E-Readern

Seitenzahl: 511

Das E-Book (TTS) können Sie hören im Abo „Legimi Premium” in Legimi-Apps auf:

Android
iOS
Bewertungen
0,0
0
0
0
0
0
Mehr Informationen
Mehr Informationen
Legimi prüft nicht, ob Rezensionen von Nutzern stammen, die den betreffenden Titel tatsächlich gekauft oder gelesen/gehört haben. Wir entfernen aber gefälschte Rezensionen.



Ejercicios prácticos con Raspberry Pi

Ejercicios prácticos con Raspberry Pi

Simon Monk

 

Edición original publicada en inglés por O’Reilly con el título Raspberry Pi Cookbook, ISBN 978-14-919-3910-9 © Simon Monk 2016.

This translation is published and sold by permission of O’Reilly Media, Inc., which owns or controls all rights to publish and sell the same.

Título de la edición en español:

Ejercicios prácticos con Raspberry Pi

Segunda edición en español, 2017

© 2017 MARCOMBO, S.A.

Gran Via de les Corts Catalanes, 594

08007 Barcelona

www.marcombo.com

Traducción: Loly Martos

Revisión técnica: Ferran Fàbregas

Diseño de la cubierta: ENEDENÚ DISEÑO GRÁFICO

«Cualquier forma de reproducción, distribución, comunicación pública o transformación de esta obra solo puede ser realizada con la autorización de sus titulares, salvo excepción prevista por la ley. La presente publicación contiene la opinión del autor y tiene el objetivo de informar de forma precisa y concisa. La elaboración del contenido, aunque se ha trabajado de forma escrupulosa, no puede comportar una responsabilidad específica para el autor ni el editor de los posibles errores o imprecisiones que pudiera contener la presente obra.»

ISBN: 978-84-267-2779-4

Producción del ebook: booqlab.com

Tabla de contenidos

Prefacio

1. Ajustes y configuración

1.1 Introducción

1.2 Seleccionar un modelo de Raspberry Pi

1.3 Proteger Raspberry Pi

1.4 Seleccionar una fuente de alimentación

1.5 Seleccionar la distribución del sistema operativo

1.6 Grabar una tarjeta microSD con NOOBS

1.7 Conectar el sistema

1.8 Conectar un monitor DVI o VGA

1.9 Usar un monitor de vídeo compuesto

1.10 Ajustar el tamaño de la imagen al monitor

1.11 Maximizar el rendimiento

1.12 Cambiar la contraseña

1.13 Ajustar Pi para empezar directamente con un sistema de ventanas

1.14 Apagar su Raspberry Pi

1.15 Instalar el módulo de cámara de Raspberry Pi

1.16 Usar bluetooth

2. Redes

2.1 Introducción

2.2 Conectar a una red por cable

2.3 Encontrar la dirección IP

2.4 Configurar una dirección IP estática

2.5 Ajustar el nombre de Raspberry Pi

2.6 Configurar una conexión inalámbrica

2.7 Conectar un cable de consola

2.8 Controlar Pi de forma remota con SSH

2.9 Controlar Pi de forma remota con VNC

2.10 Controlar Pi de forma remota con RDP

2.11 Uso compartido de archivos en una red Mac

2.12 Compartir la pantalla Pi en un Mac

2.13 Usar Raspberry Pi como almacenamiento conectado a la red (NAS)

2.14 Impresión en red

3. Sistema operativo

3.1 Introducción

3.2 Mover archivos de forma gráfica

3.3 Comenzar una sesión de terminal

3.4 Navegar por el sistema de archivos mediante un terminal

3.5 Copiar un archivo o una carpeta

3.6 Renombrar un archivo o carpeta

3.7 Editar un archivo

3.8 Visualizar el contenido de un archivo

3.9 Crear un archivo sin utilizar un editor

3.10 Crear un directorio

3.11 Eliminar un archivo o un directorio

3.12 Realizar tareas con privilegios de superusuario

3.13 Entender los permisos de archivo

3.14 Cambiar los permisos de archivo

3.15 Cambiar la propiedad del archivo

3.16 Hacer una captura de pantalla

3.17 Instalar un software con apt-get

3.18 Eliminar un software instalado con apt-get

3.19 Instalar paquetes de Python con Pip

3.20 Buscar archivos desde la línea de comandos

3.21 Buscar códigos fuente con Git

3.22 Ejecutar un programa o una secuencia de comandos al iniciar

3.23 Ejecutar un programa o una secuencia de comandos como servicio

3.24 Ejecutar un programa o una secuencia de comandos en intervalos regulares

3.25 Encontrar cosas

3.26 Utilizar el historial de la línea de comandos

3.27 Supervisar la actividad del procesador

3.28 Trabajar con archivos comprimidos

3.29 Mostrar los dispositivos USB conectados

3.30 Redirigir la salida desde la línea de comandos a un archivo

3.31 Concatenar archivos

3.32 Usar pipes (tuberías)

3.33 Ocultar la salida al terminal

3.34 Ejecutar programas en segundo plano

3.35 Crear alias de comandos

3.36 Ajustar la fecha y la hora

3.37 Saber cuánto espacio tiene en la tarjeta SD

4. Software

4.1 Introducción

4.2 Crear un centro multimedia

4.3 Instalar programas de ofimática

4.4 Instalar otros navegadores

4.5 Usar Pi Store

4.6 Crear un servidor webcam

4.7 Ejecutar un emulador de juegos de consola vintage

4.8 Ejecutar Minecraft Pi Edition

4.9 Ejecutar un servidor de Minecraft

4.10 Ejecutar Open Arena

4.11 Transmisor de radio Raspberry Pi

4.12 Ejecutar GIMP

4.13 Radio por Internet

5. Fundamentos de Python

5.1 Introducción

5.2 Decidir entre Python 2 y Python 3

5.3 Editar programas de Python con IDLE

5.4 Usar la consola de Python

5.5 Ejecutar programas de Python desde el terminal

5.6 Variables

5.7 Visualizar la salida

5.8 Leer la entrada del usuario

5.9 Aritmética

5.10 Crear cadenas

5.11 Concatenar (unir) cadenas

5.12 Convertir números en cadenas

5.13 Convertir cadenas en números

5.14 Conocer la longitud de una cadena

5.15 Conocer la posición de una cadena dentro de otra

5.16 Extraer una parte de una cadena

5.17 Sustituir una cadena de caracteres por otra dentro de una cadena

5.18 Convertir una cadena en letras mayúsculas o minúsculas

5.19 Ejecutar comandos de forma condicional

5.20 Comparar valores

5.21 Operadores lógicos

5.22 Repetir instrucciones un número exacto de veces

5.23 Repetir instrucciones hasta que alguna condición cambie

5.24 Interrumpir bucles

5.25 Definir una función en Python

6. Listas y diccionarios de Python

6.1 Introducción

6.2 Crear una lista

6.3 Acceder a elementos de una lista

6.4 Conocer la longitud de una lista

6.5 Añadir elementos a una lista

6.6 Eliminar elementos de una lista

6.7 Crear una lista dividiendo una cadena

6.8 Iterar sobre una lista

6.9 Enumerar una lista

6.10 Clasificar una lista

6.11 Cortar una lista

6.12 Aplicar una función a una lista

6.13 Crear un diccionario

6.14 Acceder a un diccionario

6.15 Eliminar elementos de un diccionario

6.16 Iterar sobre diccionarios

7. Python avanzado

7.1 Introducción

7.2 Dar formato a números

7.3 Dar formato a la fecha y hora

7.4 Devolver más de un valor

7.5 Definir una clase

7.6 Definir un método

7.7 Herencia

7.8 Escritura en un fichero

7.9 Lectura de un fichero

7.10 Pickling

7.11 Manejar excepciones

7.12 Usar módulos

7.13 Números aleatorios

7.14 Hacer peticiones web desde Python

7.15 Argumentos de la línea de comandos en Python

7.16 Ejecutar comandos de Linux desde Python

7.17 Enviar correos electrónicos desde Python

7.18 Escribir un servidor web simple en Python

7.19 Hacer más de una cosa a la vez

7.20 No hacer nada en Python

7.21 Usar Python con Minecraft Pi Edition

8. Visión artificial

8.1 Introducción

8.2 Instalar SimpleCV

8.3 Configurar una webcam USB para la visión artificial

8.4 Usar un módulo de cámara de Raspberry Pi para la visión artificial

8.5 Contar monedas

8.6 Detección facial

8.7 Detección de movimiento

8.8 Reconocimiento óptico de caracteres

9. Fundamentos de hardware

9.1 Introducción

9.2 Conocer el camino al conector GPIO

9.3 Mantener su Raspberry Pi segura cuando utilice el conector GPIO

9.4 Configurar I2C

9.5 Usar herramientas I2C

9.6 Configurar SPI

9.7 Instalar PySerial para acceder al puerto serie desde Python

9.8 Instalar Minicom para probar el puerto serie

9.9 Usar una placa de pruebas con cables puente

9.10 Usar una placa de pruebas con Pi Cobbler

9.11 Usar una Raspberry Squid

9.12 Usar el botón Raspberry Squid

9.13 Convertir señales de 5 V a 3,3 V con dos resistores

9.14 Convertir señales de 5 V a 3,3 V con un módulo convertidor de nivel

9.15 Alimentar Raspberry Pi con pilas

9.16 Alimentar Raspberry Pi con una batería LiPo

9.17 Introducción a Sense HAT

9.18 Introducción a Explorer HAT Pro

9.19 Introducción a la placa RaspiRobot

9.20 Utilizar una placa de prototipado para Pi

9.21 Crear un Hardware At Top (HAT)

9.22 Pi Compute Module

9.23 Pi Zero

10. Control de hardware

10.1 Introducción

10.2 Conectar un led

10.3 Dejar los pines GPIO en un estado seguro

10.4 Controlar el brillo de un led

10.5 Producir un zumbido

10.6 Conmutar un dispositivo CC de alta potencia mediante un transistor

10.7 Conmutar un dispositivo de alta potencia con un relé

10.8 Controlar los dispositivos de CA de alto voltaje

10.9 Crear una interfaz de usuario para activar y desactivar cosas

10.10 Crear una interfaz de usuario para controlar la potencia de PWM en ledes y motores

10.11 Cambiar el color de un led RGB

10.12 Usar muchos ledes (Charlieplexing)

10.13 Usar un medidor analógico como pantalla

10.14 Programar con interrupciones

11. Motores

11.1 Introducción

11.2 Controlar servomotores

11.3 Controlar servomotores de manera precisa

11.4 Controlar varios servomotores

11.5 Controlar la velocidad de un motor CC

11.6 Controlar la dirección de un motor CC

11.7 Utilizar motores paso a paso unipolares

11.8 Utilizar motores paso a paso bipolares

11.9 Utilizar un HAT para accionar un motor paso a paso bipolar

11.10 Utilizar una tarjeta RaspiRobot para impulsar un motor paso a paso bipolar

11.11 Crear un robot Rover sencillo

12. Entradas digitales

12.1 Introducción

12.2 Conectar un pulsador

12.3 Conmutar con un pulsador

12.4 Usar un conmutador de dos posiciones o un interruptor deslizante

12.5 Usar un conmutador con la posición central de apagado o un interruptor deslizante

12.6 Eliminar el rebote al pulsar un botón

12.7 Usar una resistencia pull-up externa

12.8 Usar un codificador rotatorio (cuadratura)

12.9 Usar un teclado

12.10 Detectar movimiento

12.11 Añadir un GPS a Raspberry Pi

12.12 Interceptar pulsaciones de teclas

12.13 Interceptar movimientos de ratón

12.14 Usar un módulo de reloj en tiempo real

13. Sensores

13.1 Introducción

13.2 Usar sensores resistivos

13.3 Medir la luz

13.4 Medir la temperatura con un termistor

13.5 Detectar metano

13.6 Medir el voltaje

13.7 Reducir el voltaje para medir

13.8 Usar sensores resistivos con un ADC

13.9 Medir la temperatura con un ADC

13.10 Medir la temperatura de la CPU de Raspberry Pi

13.11 Medir la temperatura, la humedad y la presión con Sense HAT

13.12 Medir la temperatura con un sensor digital

13.13 Medir la aceleración con un módulo MCP3008

13.14 Usar la Unidad de Medición Inercial (IMU) del Sense HAT

13.15 Encontrar el norte magnético con el Sense HAT

13.16 Detectar un imán con un interruptor de láminas

13.17 Detectar un imán con un Sense HAT

13.18 Medir la distancia

13.19 Sensor táctil capacitivo

13.20 Visualizar los valores de un sensor

13.21 Registrar en una unidad flash USB

14. Visualización

14.1 Introducción

14.2 Usar una pantalla led de cuatro dígitos

14.3 Visualizar mensajes en una matriz de led l2C

14.4 Usar la pantalla de matriz de led del Sense HAT

14.5 Visualizar mensajes en un HAT LCD alfanumérico

14.6 Visualizar mensajes en un módulo LCD alfanumérico

14.7 Utilizar una pantalla gráfica OLED

14.8 Usar tiras de ledes RGB direccionables

15. El Internet de las cosas

15.1 Introducción

15.2 Controlar las salidas GPIO mediante una interfaz web

15.3 Visualizar las lecturas de los sensores en una página web

15.4 Enviar correos electrónicos y otras notificaciones con IFTTT

15.5 Enviar tuits con ThingSpeak

15.6 CheerLights

15.7 Enviar los datos de los sensores a ThingSpeak

15.8 Responder tuits utilizando Dweet y IFTTT

16. Arduino y Raspberry Pi

16.1 Introducción

16.2 Programar un Arduino desde Raspberry Pi

16.3 Comunicarse con el Arduino usando el monitor serial

16.4 Configurar PyFirmata para controlar un Arduino desde Raspberry Pi

16.5 Escritura de salidas digitales en un Arduino desde Raspberry Pi

16.6 Utilizar PyFirmata con TTL en serie

16.7 Lectura de entradas digitales de Arduino usando PyFirmata

16.8 Lectura de entradas analógicas de Arduino usando PyFirmata

16.9 Salidas analógicas (PWM) con PyFirmata

16.10 Controlar un servo con PyFirmata

16.11 Comunicación personalizada con un Arduino sobre TTL en serie

16.12 Comunicación personalizada con un Arduino sobre I2C

16.13 Utilizar Arduinos pequeños con Raspberry Pi

16.14 Comenzar con una tarjeta aLaMode y una Raspberry Pi

16.15 Utilizar un shield de Arduino con aLaMode y Raspberry Pi

A. Componentes y proveedores

B. Asignación de patillaje de Raspberry Pi

Prefacio

Lanzado en 2011, Raspberry Pi ha encontrado un papel como un ordenador basado en Linux de muy bajo coste y como una plataforma para los sistemas informáticos incorporados. Resulta popular para los educadores y para los aficionados por igual.

Desde la primera edición de este libro, se han vendido varios millones de Raspberry Pi y se han producido nuevos modelos. Algunos modelos, como los modelos B+, A+ y el modelo B+ de la Pi 2, mejoran la especificación de este dispositivo, surgiendo así Raspberry Pi 2 con procesador de cuatro núcleos y el modelo Raspberry Pi Compute, que proporciona una placa de extensión que puede ser parte de un sistema más grande.

Esta edición ha sido completamente actualizada para abarcar los nuevos modelos de Raspberry Pi, así como los muchos cambios y mejoras de su sistema operativo Raspbian.

Esta edición contiene un nuevo capítulo sobre visión artificial y otro capítulo para hacer proyectos del Internet de las Cosas con Raspberry Pi.

Este libro está diseñado de tal manera que usted puede leerlo linealmente como lo haría con cualquier libro, o acceder a los capítulos de forma individual. Puede buscar en la tabla de contenido aquello que desee y saltar directamente a ese capítulo. Si el capítulo requiere que usted sepa sobre otras cosas, hará referencia a otros capítulos, igual que un libro de cocina podría referirse a una salsa concreta antes de mostrar cómo cocinar algo más elaborado.

El mundo Raspberry Pi se mueve rápidamente. Con una comunidad grande y activa se están desarrollando constantemente nuevas tarjetas de interfaz y bibliotecas de software. Además de los ejemplos que utilizan tarjetas de interfaz o softwares específicos, el libro también cubre los principios básicos para que pueda tener una mejor comprensión de cómo usar las nuevas tecnologías que aparecen a medida que se desarrolla el ecosistema Raspberry Pi.

Como era de esperar, al libro le acompaña una gran cantidad de código (principalmente los programas de Python). Estos programas son de código abierto y están disponibles en GitHub.

Para la mayoría de los capítulos basados en software, lo único que necesita es una Raspberry Pi. Recomiendo la Raspberry Pi 2 o 3. Cuando se trata de capítulos que involucran la fabricación del propio hardware para interconectarlo con Raspberry Pi, he tratado de usar módulos ya preparados, así como las placas de prueba sin soldadura y cables puente, para evitar tener que soldar.

Para aquellos que desean hacer más duraderos los proyectos basados en placas de prueba, aconsejo el uso de placas de prototipos con el mismo diseño que una placa de prueba de tamaño medio, como las vendidas por Adafruit, para que el diseño pueda soldarse.

Convenciones utilizadas en este libro

En este libro se utilizan las siguientes convenciones tipográficas:

Cursiva

Indica nuevos términos, URL, direcciones de correo electrónico, nombres de archivos y extensiones de archivo.

Ancho constante

Utilizado para listados de programas, así como dentro de párrafos para referirse a elementos del programa tales como nombres de variables o funciones, bases de datos, tipos de datos, variables de entorno, enunciados y palabras clave.

Ancho constante en negrita

Comandos u otros textos que deben ser escritos literalmente por el usuario.

Ancho contante en cursiva

Muestra el texto que debe ser reemplazado por valores proporcionados por el usuario o por valores determinados por el contexto.

Este icono significa un consejo, sugerencia o nota general.

Este icono indica una advertencia o precaución.

Este icono le señala el vídeo relacionado para esta sección.

Uso de ejemplos de código

El material complementario (ejemplos de código, ejercicios, etc.) está disponible para descargar en http://www.raspberrypicookbook.com.

Este libro está aquí para ayudarle a hacer su trabajo. En general, si se ofrece código de ejemplo con este libro, puede utilizarlo en sus programas y documentación. No necesita ponerse en contacto con nosotros para obtener ningún permiso a menos que esté reproduciendo una parte significativa del código. Por ejemplo, escribir un programa que utiliza varios fragmentos de código de este libro no necesita permiso. La venta o distribución de un CD-ROM de ejemplos de los libros de O’Reilly necesita permiso. Responder a una pregunta citando este libro y citando el código de ejemplo no requiere permiso. Incorporar una cantidad significativa de código de ejemplo desde este libro a la documentación de su producto requiere permiso.

Apreciamos, pero no pedimos, la atribución. Una atribución generalmente incluye el título, el autor, la edición y el ISBN. Por ejemplo: “Raspberry Pi Cookbook, Segunda Edición, por Simon Monk (O’Reilly). Copyright 2016 Simon Monk, 978-1-491-93910-9.”

Agradecimientos

Como siempre, doy las gracias a mi esposa Linda por su paciencia y apoyo.

También agradezco al revisor técnico Duncan Amos por su buen ojo, buen humor y sus excelentes propuestas que, sin duda, han contribuido en gran medida a este libro.

Gracias también a todo el equipo de O’Reilly, especialmente a los que conocí en la oficina de Cambridge, que fueron muy acogedores cuando fui. Y, por supuesto, a Nan Reinhardt por su copiosa edición.

CAPÍTULO 1

Ajustes y configuración

1.1 Introducción

Al comprar Raspberry Pi está comprando esencialmente una placa ensamblada de circuitos impresos. No incluye ni una fuente de alimentación ni un sistema operativo.

Este capítulo explicará cómo tener su Raspberry Pi configurada y lista para su uso.

Debido a que Raspberry Pi solo utiliza teclados y ratones USB estándares, la mayor parte de la configuración es bastante sencilla, por lo que se concentrará tan solo en las tareas específicas de Raspberry Pi.

1.2 Seleccionar un modelo de Raspberry Pi

Problema

Hay muchos modelos de Raspberry Pi y no está seguro de cuál utilizar.

Solución

Si quiere una Raspberry Pi para uso general, debe comprar el modelo B de la Raspberry Pi 3 o 2. Con cuatro veces más memoria y un procesador de cuatro núcleos, afrontará la mayoría de las tareas mucho mejor que con Pi Zero o con el modelo A+ y sus procesadores individuales. El modelo B de la Raspberry Pi 3 tiene la gran ventaja de tener wifi incorporado, así no necesitará un adaptador wifi USB adicional.

Si por el contrario ha incorporado una Raspberry Pi a un proyecto para un solo propósito, la mejor opción es utilizar el modelo A+ o Pi Zero y así ahorrará algunos euros.

Observaciones

La Figura 1.1 muestra la Pi Zero, el modelo A+ y el modelo B de la Raspberry Pi 2.

Figura 1.1.La Raspberry Pi Zero (izquierda), el modelo A+ (centro) y el modelo B de la Raspberry Pi 2 (derecha).

Como puede ver en la Figura 1.1, el modelo A+ es más pequeño que la Pi 2 y tiene solamente un puerto USB y ningún conector Ethernet RJ45. La Pi Zero es incluso más pequeña, ahorrando espacio al usar una ranura mini para el HDMI y un micro puerto USB. Si desea conectar un teclado y un ratón a la Pi Zero, necesitará adaptadores, tanto para los puertos USB como HDMI para poder conectar los periféricos estándar.

Las diferencias entre todos los modelos de Raspberry Pi hasta la fecha se resumen en la Tabla 1.1.

Tabla 1.1.Modelos de Raspberry Pi.

Si usted tiene uno de los modelos antiguos interrumpidos de Raspberry Pi, son igualmente útiles. No tienen el rendimiento que tiene la última, el modelo B de la Raspberry Pi 3, pero para muchas situaciones no importa.

En el Capítulo 9.22, se introducirá el módulo Raspberry Pi Compute. Está diseñado específicamente para permitir que Raspberry Pi sea incorporado en un producto.

Para saber más

Para obtener más información sobre los modelos de Raspberry Pi, consulte http://es.wikipedia.org/wiki/Raspberry_Pi.

El coste bajo de la Pi Zero hace que sea ideal para añadirla en los proyectos de electrónica sin tener que preocuparse por el precio. Véase el Capítulo 9.23.

1.3 Proteger Raspberry Pi

Problema

Necesita una carcasa para su Raspberry Pi.

Solución

Raspberry Pi no viene con carcasa a menos que usted la compre como parte de un kit. Esto hace que sea vulnerable, ya que hay conexiones descubiertas en la parte inferior de la placa del circuito que pueden producir fácilmente un corto circuito si se coloca en un objeto de metal.

Comprar algo que proteja su Raspberry Pi es una buena idea, por ejemplo, una carcasa. Si tiene intención de utilizar los pines GPIO de Raspberry Pi, puede ver el PiBow Coupé en la Figura 1.2 con un diseño bonito y práctico.

Observaciones

Existe una gran variedad de estilos para elegir, incluyendo:

• Simple, de dos partes, que encajan en cajas de plástico.

• Carcasas montables VESA (para adjuntar a la parte trasera de un monitor o un televisor).

• Carcasa estilo Lego.

• Diseños de carcasas impresas en 3D.

• Diseños acrílicos a presión cortados con láser.

Figura 1.2.Raspberry Pi 2 en un PiBow Coupé

La que compre es cuestión de gustos personales. Sin embargo, algunas de las cosas que hay que considerar son las siguientes:

• ¿Necesita tener acceso al conector GPIO? Esto es importante si va a conectar aparatos electrónicos externos a su Raspberry Pi.

• ¿Está bien ventilada la carcasa? Es importante si va a sobrecargar su Raspberry Pi (Capítulo 1.11) o si va a reproducir vídeos o a jugar, ya que estos generan más calor.

Encontrará kits de disipador de calor que tienen pequeños disipadores autoadhesivos para unir a los chips de su Raspberry Pi. Estos pueden ser de utilidad si está exigiéndole mucho a su Raspberry Pi, como al reproducir muchos vídeos.

Para saber más

Adafruit tiene una gran variedad de carcasas para Raspberry Pi.

También encontrarás muchos estilos de carcasas en los proveedores de Raspberry Pi en eBay.

1.4 Seleccionar una fuente de alimentación

Problema

Necesita seleccionar una fuente de alimentación para su Raspberry Pi.

Solución

La especificación eléctrica básica para una fuente de alimentación adecuada para Raspberry Pi es la que proporciona 5 V de CC (corriente continua).

La cantidad de corriente que la fuente de alimentación debe ser capaz de proporcionar depende tanto del modelo de Raspberry Pi como de los periféricos conectados. Vale la pena conseguir una fuente de alimentación que pueda hacer frente fácilmente a Raspberry Pi y debe considerar 700 mA como mínimo.

Si usted compra su fuente de alimentación en el mismo lugar donde compre la Raspberry Pi, el vendedor le podrá decir si funcionará.

Si va a utilizar un dongle wifi u otros periféricos USB que utilizan cantidades significativas de energía, debería tener una fuente de alimentación que soporte 1,5 A o incluso 2 A. Tenga cuidado con las fuentes de alimentación de muy bajo coste, ya que pueden no proporcionar 5 V de manera precisa y fiable.

Observaciones

En realidad, la fuente de alimentación y el conector son los mismos que los que se encuentran en muchos cargadores de teléfonos inteligentes. Si terminan en un conector micro USB, son, casi con toda seguridad, de 5 V (pero asegúrese). La única pregunta que debe formular es si pueden suministrar suficiente corriente.

Si no pueden, pueden suceder algunas cosas malas:

• Es posible que se calienten y puede haber riesgo de incendio.

• Pueden fallar.

• En momentos de alta carga (por ejemplo, cuando Pi está utilizando un dongle wifi) el voltaje puede caer y Raspberry Pi se reiniciará solo.

En general, busque una fuente de alimentación que pueda suministrar 700 mA o más. Si se especifica un número de vatios (W) en lugar de mA, divida el número de vatios por 5 para obtener la cifra en A. Por lo tanto, una fuente de alimentación de 5 V (10 W) puede suministrar 2 A (2000 mA).

El uso de una fuente de alimentación con, por ejemplo, una corriente máxima de 2 A no utilizará más electricidad que una fuente de alimentación de 700 mA. Raspberry Pi tomará la mayor cantidad de corriente que necesite.

En la Figura 1.3 se mide la corriente tomada por el modelo B de la Raspberry Pi y se compara con modelo B de la Pi 2.

Figura 1.3.Consumo de corriente durante el inicio de Raspberry Pi.

Las Raspberry Pi más recientes (el A+, B+ o Raspberry Pi 2) son mucho más eficientes en cuanto a energía que los modelos más antiguos. Sin embargo, cuando el procesador está totalmente ocupado y tiene una gran cantidad de periféricos conectados, pueden llegar a ser similares.

En la Figura 1.3 puede ver que la corriente rara vez se pone por encima de 500 mA. Sin embargo, el procesador no está haciendo nada realmente. Si reprodujese un vídeo HD, la corriente aumentaría considerablemente. Cuando se trata de fuentes de alimentación, por lo general, es mejor tener algo en reserva.

Para saber más

Puede comprar un módulo que se desconecte de la alimentación cuando la Raspberry Pi se apague en http://www.pi-supply.com/.

1.5 Seleccionar la distribución del sistema operativo

Problema

Hay un número elevado de distribuciones para Raspberry Pi. No sabe cuál utilizar.

Solución

La respuesta a esta pregunta depende de lo que vaya a hacer con su Raspberry Pi.

Para un uso general como ordenador, o para usarlo en proyectos electrónicos, debe utilizar Raspbian, la distribución estándar y oficial para Raspberry Pi.

Si va a utilizar su Raspberry Pi como centro multimedia, existe una serie de distribuciones específicamente para ese propósito (véase Capítulo 4.2).

En este libro utilizamos la distribución Raspbian casi exclusivamente, aunque la mayoría de los ejemplos funcionarán con cualquier distribución basada en Debian.

Observaciones

Las tarjetas microSD no son caras, por lo que consiga unas cuantas y pruebe algunas distribuciones. Si hace esto, es buena idea mantener sus archivos en una unidad flash USB, de manera que no tenga que estar copiándolos en cada tarjeta microSD.

Tenga en cuenta que, si va a seguir los siguientes pasos para escribir su propia tarjeta SD, necesitará tener un equipo con ranura para tarjetas SD (muchos portátiles la tienen), o puede comprar un lector USB de tarjetas SD de bajo coste.

Para saber más

La lista oficial de distribuciones de Raspberry Pi

1.6 Grabar una tarjeta microSD con NOOBS

Problema

Quiere grabar una tarjeta microSD utilizando NOOBS (New Out of the Box Software).

Solución

NOOBS es, con diferencia, la forma más sencilla de obtener un sistema operativo en su Raspberry Pi.

Descargue el archivo de NOOBS de http://www.raspberrypi.org/downloads, extráigalo y colóquelo en una tarjeta microSD. Para ello necesitará un ordenador con ranura para tarjetas SD o un adaptador USB y un adaptador de SD a micro SD.

Una vez haya descargado el archivo de almacenamiento NOOBS, extráigalo y copie los contenidos de la carpeta en la tarjeta SD. Tenga en cuenta que si el archivo extrae la carpeta llamada NOOBS_v1_3_12 o similar, es el contenido de la carpeta el que debe ser copiado en la raíz de la tarjeta micro SD, no la propia carpeta.

Coloque la tarjeta microSD que contiene los archivos extraídos de su NOOBS en su Raspberry Pi y después encienda Raspberry Pi. Cuando arranque, aparecerá la ventana que se muestra en la Figura 1.4. Desde esta pantalla, seleccione Raspbian y luego haga clic en el botón Instalar.

Si está utilizando NOOBS en una A+, verá una lista más corta de opciones, ya que solo se mostrarán las distribuciones para esa plataforma simplificada.

Figura 1.4.Primera pantalla NOOBS.

Recibirá un mensaje de advertencia diciendo que la tarjeta SD será sobrescrita (que está bien) y luego, como la distribución está instalada en la tarjeta SD, verá el progreso en la pantalla acompañado de información útil acerca de la distribución (Figura 1.5).

Figura 1.5.NOOBS sobrescribiendo la tarjeta SD.

Una vez que la copia de archivos se haya completado, recibirá el mensaje Image applied successfully. Raspberry Pi se reiniciará y, automáticamente, se ejecutará raspi_config para que pueda configurar la nueva instalación.

Una vez que esté en funcionamiento, la primera cosa que debe hacer es conectar su Raspberry Pi a Internet (Capítulo 2.2 y 2.6), abra una línea de comandos mediante LXTerminal (Capítulo 3.3), e introduzca el siguiente comando para actualizar su sistema a la última versión.

$ sudo apt-get update

$ sudo apt-get upgrade

Esto tardará un rato.

Observaciones

Para instalar NOOBS correctamente en una tarjeta microSD, la tarjeta debe estar formateada como FAT32. La mayoría de las tarjetas microSD se suministran ya formateadas en FAT32. Si va a reutilizar una tarjeta antigua y necesita darle formato FAT32, utilice las herramientas de su sistema operativo para formatear los dispositivos extraíbles.

El tipo de tarjeta microSD que tenga también afectará a la velocidad de ejecución de su Raspberry Pi cuando su sistema operativo esté instalado. Busque una tarjeta microSD descrita como “clase 10.”

Para saber más

Puede encontrar más información sobre la instalación de su sistema operativo con NOOBS, así como información sobre las diferentes distribuciones disponibles, en https://www.raspberrypi.org/help/noobs-setup/.

1.7 Conectar el sistema

Problema

Tiene todo lo que necesita para su Raspberry Pi y quiere conectarlo todo junto.

Solución

A menos que incorpore su Raspberry Pi en un proyecto o la utilice como centro multimedia, necesita conectar un teclado, un ratón, un monitor y probablemente un dongle wifi, excepto si tiene una Raspberry Pi 3.

La Figura 1.6 muestra un típico sistema de Raspberry Pi.

Figura 1.6.Típico sistema de Raspberry Pi.

Observaciones

A Raspberry Pi le va perfectamente bien cualquier teclado o ratón, alámbrico o inalámbrico. Excepto los teclados y ratones conectados por Bluetooth, que no funcionan con Raspberry Pi.

Si tiene una Raspberry Pi vieja o el modelo A o A+ y se queda sin conexiones USB, necesitará un hub USB.

Para saber más

La guía oficial de inicio rápido de Raspberry Pi

1.8 Conectar un monitor DVI o VGA

Problema

Su monitor no tiene HDMI, pero desea utilizarlo con su Raspberry Pi.

Solución

Mucha gente ha tenido este problema. Afortunadamente, es posible comprar adaptadores para monitores con entrada a DVI o VGA.

Los adaptadores DVI son los más simples y baratos. Se pueden encontrar por menos de 5 euros si se busca “convertidor macho HDMI para hembra DVI”.

Observaciones

El uso de adaptadores VGA es más complejo, ya que requieren un poco de electrónica para convertir la señal de digital a analógico, así que cuidado con los cables que no los contengan. El convertidor oficial se llama Pi-View y está disponible en los distribuidores oficiales de Raspberry Pi. Pi-View tiene la ventaja de haber sido probado para trabajar con Raspberry Pi. Es posible encontrar alternativas más baratas a través de Internet, pero a veces no funcionan.

Para saber más

eLinux tiene consejos sobre lo que debe buscar en un convertidor.

1.9 Usar un monitor de vídeo compuesto

Problema

El texto en su monitor compuesto de baja resolución es ilegible. Es necesario ajustar la resolución a Raspberry Pi para una pantalla pequeña.

Solución

Raspberry Pi tiene dos tipos de salida de vídeo: HDMI y vídeo compuesto desde el conector de audio, para el que necesita un cable especial. De estos, el HDMI es de mejor calidad. Si usted tiene la intención de utilizar la salida de vídeo compuesto para su pantalla principal, es posible que se lo deba replantear.

Si está utilizando la pantalla de ese modo —por ejemplo, porque necesita una pantalla muy pequeña— entonces es necesario hacer algunos ajustes para adaptar la salida de vídeo a la pantalla. Necesitará hacer algunos cambios en el archivo /boot/config.txt.

Puede editarlo en Raspberry Pi utilizando el siguiente comando en una sesión de terminal:

$ sudo nano /boot/config.txt

Si el texto es demasiado pequeño para leerlo y no tiene monitor HDMI, también puede editar el archivo quitando la tarjeta SD de su Raspberry Pi e insertándola en su ordenador. El archivo estará en el directorio raíz de la tarjeta SD y puede utilizar un editor de texto desde su ordenador para modificarlo.

Es necesario conocer la resolución de la pantalla. Para la mayoría de las pequeñas pantallas será 320 por 240 píxeles. Encuentre las dos líneas en el archivo que digan:

#framebuffer_width=1280

#framebuffer_height=720

Suprima el # del principio de cada línea y cambie los dos números a la anchura y altura de la pantalla. En el siguiente ejemplo, las líneas se han modificado para que sean 320 por 240:

framebuffer_width=320

framebuffer_height=240

Guarde el archivo y reinicie su Raspberry Pi. Debe notar que todo es más fácil de leer. Es probable que también vea un borde grande y grueso alrededor de la pantalla. Para ajustarlo véase el Capítulo 1.10.

Observaciones

Hay muchos monitores de circuito cerrado de bajo coste que pueden ir muy bien con su Raspberry Pi cuando esté haciendo algo como una consola retro (Capítulo 4.7). Sin embargo, estos monitores son a menudo de baja resolución.

Para saber más

Para otro tutorial sobre el uso de monitores compuestos, véase este tutorial Adafruit.

También, véase el Capítulo 1.8 y 1.10 para ajustar la imagen cuando se está utilizando la salida de vídeo HDMI.

1.10 Ajustar el tamaño de la imagen al monitor

Problema

Cuando conecte por primera vez Raspberry Pi a un monitor, es posible que algunos textos no se puedan leer al extenderse fuera de la pantalla, o que la imagen no utilice todo el espacio disponible en la pantalla.

Solución

Si el texto se extiende fuera de la pantalla, use la herramienta raspi-config para desactivar overscan.

Para ello, ejecute raspi-config mediante la apertura de una sesión de terminal y ejecute el comando:

$ sudo raspi-config

A continuación, utilice las flechas para desplazarse hacia abajo a Advanced Options y después Overscan, y desactive overscan (Figura 1.7).

Figura 1.7.Seleccionar la opción Overscan.

Si su problema es que hay un gran borde negro alrededor de la imagen, lo puede reducir (y posiblemente eliminar por completo) al editar el archivo /boot/config.txt utilizando el comando:

$ sudo nano /boot/config.txt

Busque la sección que va sobre overscan. Las cuatro líneas que hay que cambiar se muestran en el medio de la Figura 1.8.

Figura 1.8.Ajuste de overscan.

Para que las líneas tengan efecto, primero tiene que descomentarlas quitando el carácter # del principio de cada línea.

Luego, utilizando ensayo y error, cambie los ajustes hasta que se llene la pantalla y el monitor tanto como sea posible. Tenga en cuenta que los cuatro números deben ser negativos. Pruebe a poner todos a –20 para empezar. Esto aumentará el área de la pantalla que utiliza.

Observaciones

Tener que reiniciar varias veces Raspberry Pi para ver los efectos de los cambios en la resolución es un poco tedioso. Afortunadamente, solo tendrá que hacer este procedimiento una vez. Muchos monitores y televisores funcionan muy bien sin ningún ajuste.

Para saber más

Puede encontrar más información acerca de la herramienta raspi-config en http://elinux.org/RPi_raspi-config.

1.11 Maximizar el rendimiento

Problema

Su Raspberry Pi parece que va lenta, por lo que desea mejorar la velocidad para que funcione más rápido.

Solución

Si usted tiene una Raspberry Pi 2 con un procesador de cuatro núcleos, es muy poco probable que vaya lenta. Sin embargo, las Raspberry Pi de un solo núcleo más antiguas pueden ir bastante lentas.

Puede aumentar la velocidad de su Raspberry Pi para que funcione más rápido. Esto hará que use un poco más de potencia y esté un poco más caliente (véase el siguiente apartado de «Observaciones»).

El método de overlocking descrito se llama dynamic overclocking, ya que controla automáticamente la temperatura de la Raspberry Pi y deja caer la velocidad si se calienta demasiado.

Para hacer overclock en su Pi, ejecute la utilidad de raspi_config a través del siguiente comando en un terminal:

$ sudo raspi-config

Seleccione la opción Overclock en el menú y se presentarán las opciones de la Figura 1.9.

Figura 1.9.Opciones de Overclocking.

Seleccione una opción. Si usted ve que su Raspberry Pi empieza a ser inestable y que se bloquea inesperadamente, puede que tenga que elegir una opción más conservadora o configure el overclocking de nuevo en None.

Observaciones

Las mejoras en el rendimiento de overclocking pueden ser dramáticas. Para medirlas, use la revisión 2 del modelo B de la Raspberry Pi sin carcasa y a una temperatura ambiente de 15 °C.

La siguiente secuencia de comandos de Python es el programa de pruebas. Esto solo repercute en el procesador, y no es realmente representativo de las demás cosas que pasan en un ordenador, como, por ejemplo, escribir en una tarjeta SD, los gráficos, etc. Pero nos da una buena señal sobre el rendimiento de la CPU si desea evaluar el efecto de overclocking en su Raspberry Pi.

importtime

deffactorial(n):

  ifn0:

    return1

  else:

    returnn *factorial(n-1)

before_timetime.clock()

foriinrange(1, 10000):

    factorial(200)

after_timetime.clock()

print(after_time-before_time)

Compruebe los resultados del test en la Tabla 1.2.

Tabla 1.2.Overclocking.

 

Test de velocidad

Corriente

Temperatura (grados C)

700 MHz

15,8 segundos

360 mA

27

1 GHz

10,5 segundos

420 mA

30

Como puede ver, el rendimiento ha aumentado en un 33 % pero con más corriente y a una temperatura ligeramente superior.

Un recinto bien ventilado ayudará a mantener el funcionamiento de la Raspberry Pi a toda velocidad. También ha habido algunos esfuerzos para añadir refrigeración por agua a Raspberry Pi. Francamente, es una tontería.

Para saber más

Puede encontrar más información acerca de la herramienta raspi-config en http://elinux.org/RPi_raspi-config.

1.12 Cambiar la contraseña

Problema

Por defecto, la contraseña de Raspberry Pi será raspberry. Quiere cambiarla.

Solución

Puede utilizar la herramienta raspi-config para cambiar su contraseña. Ejecute raspi_config mediante el siguiente comando en un terminal (véase el Capítulo 3.3):

$ sudo raspi-config

A continuación, seleccione la opción change_pass en el menú y siga las instrucciones que se muestran en la Figura 1.10.

Figura 1.10. Cambiar la contraseña.

Para cambiar la contraseña no es necesario reiniciar Raspberry Pi para que los cambios surtan efecto.

Observaciones

También puede cambiar la contraseña en una sesión de terminal simplemente usando el comando passwd de la siguiente manera:

$ passwd

Changing password for pi.

(current) UNIX password:

Enter new UNIX password:

Retype new UNIX password:

passwd: password updated successfully

Para saber más

Puede encontrar mucha más información sobre la herramienta raspi-config en http://elinux.org/RPi_raspi-config.

1.13 Ajustar Pi para empezar directamente con un sistema de ventanas

Problema

Cada vez que reinicie su Raspberry Pi tiene que iniciar sesión y luego iniciar el escritorio manualmente. Quiere hacer esto automáticamente.

Solución

Puede utilizar la herramienta raspi-config para cambiar el comportamiento de arranque para que Raspberry Pi se registre de manera automática y se inicie el escritorio. Ejecute la utilidad raspi_config con el siguiente comando en un terminal:

$ sudo raspi-config

Ahora, seleccione la opción Enable Boot to Desktop/Scratch y después Desktop Log in as user pi (Figura 1-11).

Cuando usted cambie la opción de arranque, se le pedirá que reinicie Raspberry Pi para que los cambios surtan efecto.

Figura 1.11.Arranque automático en un escritorio.

Observaciones

Evidentemente hay implicaciones de seguridad al permitir que Raspberry Pi inicie sesión en el entorno de ventanas de forma automática. Pero, como Raspberry Pi generalmente se usará como un ordenador personal, en lugar de ser compartido, normalmente la conveniencia pesa más que las desventajas.

Para saber más

Puede encontrar mucha más información sobre la herramienta raspi-config en http://elinux.org/RPi_raspi-config.

1.14 Apagar su Raspberry Pi

Problema

Quiere apagar su Raspberry Pi.

Solución

Haga clic en el menú Raspberry, en la esquina superior izquierda del escritorio. Esto mostrará una serie de opciones (Figura 1.12).

Shutdown

Apaga Raspberry Pi. Tendrá que desconectar la alimentación y volver a enchufarlo para que Raspberry Pi arranque de nuevo.

Reboot

Reinicia Raspberry Pi.

Logout

Finaliza la sesión y muestra un aviso para introducir sus credenciales de acceso para que pueda entrar de nuevo.

Figura 1.12.Apagar su Raspberry Pi.

También puede reiniciar desde la línea de comandos con el comando:

sudo reboot

Puede que tenga que hacer esto después de instalar algún software. Cuando lo reinicie, verá el mensaje que se muestra en la Figura 1.13, que ilustra la naturaleza multiusuario de Linux y advierte a todos los usuarios conectados a Pi.

Figura 1.13.Apagando su Raspberry Pi del terminal.

Observaciones

Es mejor cerrar su Raspberry Pi como se describió anteriormente que simplemente tirar del enchufe, ya que Raspberry Pi puede estar en medio de la escritura de la tarjeta microSD. Esto podría llevar a la corrupción de archivos.

A diferencia de apagar la mayoría de los ordenadores, apagar Raspberry Pi no desconecta la alimentación. Entra en un modo de baja potencia; es un dispositivo de muy baja potencia (pero el hardware de Raspberry Pi no tiene control sobre su fuente de alimentación).

Para saber más

Puede comprar un módulo que se desconecte a la alimentación cuando Raspberry Pi se apague en http://www.pi-supply.com/.

1.15 Instalar el módulo de cámara de Raspberry Pi

Problema

Desea utilizar el módulo de cámara de Raspberry Pi (véase la Figura 1.14).

Solución

El módulo de cámara de Raspberry Pi (Figura 1.14) está unido a Raspberry Pi con un cable de cinta.

Figura 1.14.Módulo de cámara de Raspberry Pi.

Este cable se conecta a un conector especial entre el audio y las tomas HDMI en la Raspberry Pi 2. En el modelo B original de la Raspberry Pi, el conector está justo detrás de la toma Ethernet. Para ajustarlo, tire hacia arriba de las palancas a ambos lados del conector para que se desbloquee y luego presione el cable en la ranura, con los conectores planos del cable lejos de la toma Ethernet. Presione las dos palancas del conector hacia abajo para bloquear el cable (Figura 1.15).

Figura 1.15.Montaje de un módulo de cámara de Raspberry Pi unido a una Raspberry Pi modelo B.

El embalaje del módulo de cámara afirma que es sensible a la electricidad estática. Antes de manipularla, toque algo que esté en el suelo como la tapa metálica de su ordenador.

El módulo de la cámara requiere algo de configuración de software. La forma más fácil de configurarlo es usar raspi_config. Para ejecutar raspi-config introduzca el siguiente comando en una sesión del terminal:

$ sudo raspi-config

Verá la opción Enable Camera (Figura 1.16).

Hay dos comandos disponibles para capturar imágenes fijas y vídeos: raspiStill y raspivid.

Figura 1.16.La herramienta de configuración raspi-config actualizada.

Para capturar una imagen fija utilice el comando raspistill como se muestra aquí:

$ raspistill -o image1.jpg

Aparecerá una pantalla de vista previa durante unos cinco segundos y luego hará la fotografía y la almacenará en el archivo image1.jpg del directorio actual.

Para capturar un vídeo, utilice el comando raspivid:

$ raspivid -o video.h264 -t 10000

El número que aparece en el extremo es la duración de la grabación en milisegundos, en este caso, 10 segundos.

Observaciones

Tanto raspstill como raspivid tienen un gran número de opciones. Si escribe cualquier comando sin ningún parámetro, el texto de ayuda mostrará las opciones que estén disponibles.

El módulo de la cámara tiene capacidad para imágenes de alta resolución y para grabación de vídeo. Estas son algunas de las características de la cámara:

• Sensor de 5 megapíxeles

• Lentes f/2 de foco fijo

• Resolución 1920×1080

• Vídeo 1080p, 30fps

Una alternativa al módulo de la cámara es utilizar una cámara web USB (véase el Capítulo 8.3).

Para saber más

La documentación de RaspiCam incluye raspstill yraspivid.

1.16 Usar bluetooth

Problema

Quiere usar bluetooth con Raspberry Pi.

Solución

Conecte un adaptador bluetooth USB a Raspberry Pi e instale el software Bluetooth de apoyo.

No todos los adaptadores bluetooth son compatibles con Raspberry Pi. La mayoría lo son, pero para estar seguro, compre una marca que trabaje con Raspberry Pi. La Figura 1.17 muestra una Raspberry Pi 2 equipada con un adaptador bluetooth USB (el más cercano a la cámara) y un adaptador wifi USB.

Figura 1.17.Raspberry Pi 2 con adaptadores USB para bluetooth y wifi.

Para instalar el software necesario para admitir bluetooth, introduzca los siguientes comandos:

$ sudo apt-get update

$ sudo apt-get install bluetooth bluez-utils blueman bluez

$ sudo usermod -G bluetooth -a pi

Estos comandos deben funcionar para todos los adaptadores bluetooth compatibles con Raspberry Pi.

Conecte el adaptador bluetooth y reinicie Raspberry Pi (Capítulo 1.14).

Encontrará una nueva entrada en el menú de inicio de Raspbian en la sección Preferencias llamada Administrador de Bluetooth. Abra esta herramienta y haga clic en Buscar para buscar dispositivos bluetooth (Figura 1.18). Asegúrese de que los dispositivos bluetooth estén visibles.

Figura 1.18.Administración de dispositivos bluetooth.

Observaciones

Desde el administrador de bluetooth puede vincularse con otros dispositivos bluetooth, enviarles archivos y configurar la visibilidad de su Raspberry Pi con los demás dispositivos bluetooth.

Para saber más

Para obtener una lista de los adaptadores Bluetooth compatibles con Raspberry Pi, vea http://elinux.org/RPi_USB_Bluetooth_adapters.

CAPÍTULO 2

Redes

2.1 Introducción

Raspberry Pi está diseñada para estar conectada a Internet. Su capacidad para comunicarse a través de Internet es una de sus características principales y abre todo tipo de usos posibles, incluyendo la automatización del hogar, servidores web, monitoreo de red, etc.

La conexión se puede llevar a cabo mediante un cable Ethernet (al menos en el caso del modelo B), o se puede usar un módulo wifi USB para proporcionar una conexión de red.

Tener una conexión a Internet en Raspberry Pi también significa que puede conectarse a ella de forma remota desde otro ordenador. Esto es muy útil en situaciones en las que la propia Raspberry Pi es inaccesible y no tiene teclado, ratón ni monitor conectado a ella.

En este capítulo se le darán pautas para conectar su Raspberry Pi a Internet y para controlarla remotamente a través de una red.

2.2 Conectar a una red por cable

Problema

Desea conectar su Raspberry Pi a Internet mediante una conexión por cable.

Solución

En primer lugar, si usted tiene un modelo A, A+, o Zero, de la Raspberry Pi no tendrá conector RJ45 para Ethernet. En este caso, la mejor opción para el acceso a Internet es el uso de un adaptador USB inalámbrico (véase el Capítulo 2.6).

Si usted tiene el modelo B de la Raspberry Pi, conecte un cable de conexión Ethernet en su enchufe RJ45 y luego conecte el otro extremo a la toma correspondiente en la parte posterior de su router. La Figura 2.1 muestra una tarjeta Raspberry Pi 1 original, donde los ledes de red están junto a la toma de audio. En una Raspberry Pi 2, los ledes se encuentran en el mismo enchufe Ethernet.

Figura 2.1.Conectar Raspberry Pi a un concentrador.

Los ledes de la red de su Raspberry Pi deben comenzar inmediatamente a parpadear cuando Raspberry Pi se conecta a la red.

Observaciones

Raspbian está preconfigurado para conectarse a cualquier red utilizando el protocolo de configuración dinámica de host (DHCP). Se le asignará automáticamente una dirección IP, siempre y cuando el DHCP no esté desactivado en la red.

Si los ledes de red en su Raspberry Pi no se encienden cuando se conecta el router, compruebe que está utilizando la toma Uplink RJ45 en el router o pruebe con otro cable.

Si los ledes parpadean, pero no se conecta a Internet su Raspberry Pi utilizando un navegador, compruebe que el DHCP está activado en la consola de gestión de red. Busque una opción como la que se muestra en la Figura 2.2.

Figura 2.2.Activar el DHCP en el router.

Para saber más

Para conectarse a una red inalámbrica consulte el Capítulo 2.6.

2.3 Encontrar la dirección IP

Problema

Quiere saber la dirección IP de su Raspberry Pi para comunicarse con él, ya sea conectándolo como un servidor web, intercambiando archivos o controlándolo de forma remota con SSH (Capítulo 2.8) o VNC (Capítulo 2.9).

Una dirección IP es un número de cuatro partes que identifica la interfaz de red de un equipo de manera única dentro de una red. Cada parte está separada por un punto.

Solución

Para encontrar la dirección IP de su Raspberry Pi ejecute este comando en una ventana de terminal:

$ hostname -I

192.168.1.16

Esta es la dirección IP de su Raspberry en su red doméstica.

Observaciones

Raspberry Pi puede tener más de una dirección IP (es decir, una para cada conexión de red). Así que, si usted tiene una conexión por cable y una conexión inalámbrica a su Pi, tendrá dos direcciones IP. Normalmente, sin embargo, tendría que conectarlo solo mediante un método u otro, pero no ambos. Para ver todas las conexiones de red, utilice el comando ifconfig:

$ sudo ifconfig

eth0 Link encap:Ethernet HWaddr b8:27:eb:d5:f4:8f

inet addr:192.168.1.16 Bcast:192.168.255.255 Mask:255.255.0.0

UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

RX packets:1114 errors:0 dropped:1 overruns:0 frame:0

TX packets:1173 errors:0 dropped:0 overruns:0

carrier:0 collisions:0 txqueuelen:1000

RX bytes:76957 (75.1 KiB) TX bytes:479753 (468.5 KiB)

lo Link encap:Local Loopback

inet addr:127.0.0.1 Mask:255.0.0.0

UP LOOPBACK RUNNING MTU:16436 Metric:1

RX packets:0 errors:0 dropped:0 overruns:0 frame:0

TX packets:0 errors:0 dropped:0 overruns:0

carrier:0 collisions:0 txqueuelen:0

RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)

wlan0 Link encap:Ethernet HWaddr 00:0f:53:a0:04:57

inet addr:192.168.1.13 Bcast:192.168.255.255 Mask:255.255.0.0

UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

RX packets:38 errors:0 dropped:0 overruns:0 frame:0

TX packets:28 errors:0 dropped:0 overruns:0

carrier:0 collisions:0 txqueuelen:1000

RX bytes:6661 (6.5 KiB) TX bytes:6377 (6.2 KiB)

En cuanto a los resultados de la ejecución de ifconfig, puede ver que Pi está conectado mediante una conexión por cable (eth0) con una dirección IP de 192.168.1.16, y una inalámbrica (wlan0) con una dirección IP de 192.168.1.13. La interfaz de red lo es una interfaz virtual que permite al ordenador comunicarse con ella misma.

Otra manera de encontrar la dirección IP es conectarlo a la consola de administración del router, encontrar la sección LAN y luego consultar la tabla IP. Debe haber un dispositivo de la lista llamado raspberrypi con su dirección IP al lado.

Para saber más

Wikipedia tiene todo lo que desea saber sobre las direcciones IP.

2.4 Configurar una dirección IP estática

Problema

Desea configurar la dirección IP de su Raspberry Pi para que no cambie.

Solución

Para configurar la dirección IP de su Raspberry Pi, tanto si el uso de la red es por cable como inalámbrica, necesita editar el archivo de configuración /etc/network/interfaces.

Si ve el archivo /etc/network/interfaces utilizando el siguiente comando:

$ more /etc/network/interfaces

debe ser algo como esto:

auto lo

iface lo inet loopback

iface eth0 inet dhcp

allow-hotplug wlan0

iface wlan0 inet manual

wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf

iface default inet dhcp

Esto le está diciendo que Raspbian tiene conocimiento de tres interfaces de red en su Raspberry Pi, cada una comienza con la palabra iface.

lo

Loopback. Puede pasar esto por alto.

eth0

Una conexión de red mediante la toma Ethernet.

wlan0

Interfaz de red con un adaptador wifi USB o con hardware wifi incorporado de Raspberry Pi 3.

Su Raspberry Pi tendrá una dirección IP diferente para cada conexión de red. En este ejemplo acaba de hacer la dirección IP de la interfaz Ethernet estática. Si desea hacer lo mismo para la interfaz wifi, en su lugar, edite la entrada en el archivo interfaces.

Para editar el archivo, escriba el siguiente comando:

$ sudo nano /etc/network/interfaces

En primer lugar, decida una dirección IP para usar. Es necesario escoger una que a la vez no sea utilizada por otro equipo en la red dentro del rango permitido de direcciones IP por su router. En este caso, se utilizará 192.168.1.116.

Modifique el contenido del archivo, cambiando la palabra dhcp por static y añadiendo las siguientes líneas:

address 192.168.1.116

netmask 255.255.255.0

gateway 192.168.1.1

Con el archivo cambiado como se muestra aquí, la dirección IP estática 192.168.1.116 ha sido asignada a la interfaz eth0.

auto lo

iface lo inet loopback

iface eth0 inet static

   address 192.168.1.116

   netmask 255.255.255.0

   gateway 192.168.1.1

allow-hotplug wlan0

iface wlan0 inet manual

wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf

iface default inet dhcp

Para la mayoría de las redes, la configuración de la máscara de red debe establecerse en 255.255.255.0 y la puerta de enlace debe ser la dirección IP de su propio router de casa. Esta será la misma que la dirección IP que utiliza para conectarse a la consola de administración de su router.

Después de editar y guardar el archivo, ejecute los siguientes comandos para borrar todas las entradas DHCP que existan y reinicie su Pi para que los cambios surtan efecto.

$ sudo rm /var/lib/dhcp/*

$ sudo reboot

Observaciones

Las direcciones IP internas son algo como 192.168.1.116, donde se cambia solo el último número de cada uno de los diferentes ordenadores. Otro formato común para las direcciones IP internas es 10.0.0.16.

Para saber más

Wikipedia tiene todo lo que desea saber sobre las direcciones IP.

2.5 Ajustar el nombre de Raspberry Pi

Problema

Desea cambiar el nombre de su Raspberry Pi para que no se llame simplemente “raspberrypi.”

Solución

Cambiar el nombre de su Pi es bastante sencillo. Hay solo dos archivos que necesitan cambios.

Primero, edite el archivo /etc/hostname. Puede hacerlo abriendo una ventana de terminal y escribiendo el comando:

$ sudo nano /etc/hostname

Reemplace “raspberrypi” por el nombre que elija. Debe ser una sola palabra, sin ningún tipo de puntuación o caracteres inusuales (incluyendo el carácter _.)

En segundo lugar, abra el archivo /etc/hosts en un editor usando el comando:

$ sudo nano /etc/hosts

Se verá algo así:

127.0.0.1

localhost

::1

localhost ip6-localhost ip6-loopback

fe00::0

ip6-localnet

ff00::0

ip6-mcastprefix

ff02::1

ip6-allnodes

ff02::2

ip6-allrouters

127.0.1.1

raspberrypi

Cambie el texto del final, que utiliza el nombre antiguo (“raspberrypi”), por el nuevo nombre.

Reinicie Pi y verá que el nombre ha cambiado cuando aparezca en la red desde otro ordenador.

Observaciones

Cambiar el nombre de su Pi puede ser muy útil, especialmente si usted tiene más de uno conectado a la red.

Para saber más

Consulte el Capítulo 2.4 para cambiar la dirección IP de su Raspberry Pi.

2.6 Configurar una conexión inalámbrica

Problema

Desea conectar su Raspberry Pi a Internet a través de un adaptador inalámbrico USB.

Solución

Si tiene la versión más reciente de Raspbian, configurar el wifi es muy fácil. Solo tiene que conectar un adaptador wifi USB y luego hacer clic en el icono de red en la parte superior derecha de la pantalla (Figura 2.3). Se le presentará una lista de redes wifi. Seleccione su red y se le pedirá que introduzca la Pre Shared Key (contraseña). Introduzca la contraseña, y, después de un rato, el icono Network cambiará al símbolo estándar de wifi y se conectará.

Figura 2.3. Conectar a una red wifi.

Si usted tiene una distribución más antigua de Raspbian, tendrá que utilizar la opción WiFi Config con un acceso directo en el escritorio. Si no está utilizando una distribución reciente, debe actualizarla de todos modos (véase el Capítulo 1.5).

Si tiene Raspberry Pi 3, ya lleva el hardware WiFi incorporado. Si usted tiene una Raspberry Pi más vieja, conecte un adaptador inalámbrico USB compatible (la mayoría son compatibles) en una de las tomas USB de su Raspberry Pi e inicie la utilidad WiFi Config (Figura 2-4). Encontrará la herramienta de configuración de wifi debajo de la sección Preferencias en el menú de inicio de Raspberry. Haga clic en el botón Scan para buscar los puntos de acceso. Haga doble clic en el punto de acceso (para su router) al que desea unirse y luego introduzca la contraseña en el campo PSK.

Por último, haga clic en Connect para unirse a la red.

Figura 2.4.Detectando las redes.

Observaciones

Los adaptadores WiFi USB pueden utilizar una gran cantidad de energía, por lo que si ve que su Pi se reinicia inesperadamente o no arranca correctamente, puede que tenga que utilizar un suministro de energía más potente. Busquen una alimentación que sea de 1,5 A o más.

Si está utilizando también un teclado y un ratón, es posible que se le acaben las conexiones USB. En ese caso, la respuesta es un concentrador USB. La elección de un concentrador con su propia fuente de alimentación ayudará con el problema de la energía.

Si está utilizando su Raspberry Pi como un centro multimedia (véase el Capítulo 4.2), habrá una página de configuración que le permita conectarlo a la red mediante WiFi.

También puede configurar una conexión inalámbrica utilizando solo la línea de comandos. Para ello, primero debe editar el archivo /etc/network/interfaces con el comando:

$ sudo nano /etc/network/interfaces

A continuación, busque la sección del archivo relativo a la interfaz wlan0 y cámbielo para que sea:

allow-hotplug wlan0

iface wlan0 inet dhcp

wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf

La primera línea especifica que la conexión WiFi debe iniciarse automáticamente cuando se inserte un dongle WiFi USB. La segunda especifica que Raspberry Pi debe asignar la dirección IP usando DHCP. Si desea utilizar una dirección IP estática, sustituya la palabra dhcp por static y añada las líneas que se describen en el Capítulo 2.4 para asignar una dirección IP estática.

La última línea especifica la ubicación del archivo solicitante. Este es el archivo que contiene realmente el SSID (nombre de la red) y el PSK (contraseña) para su red inalámbrica. Así, la próxima vez editará el archivo usando el comando:

$ sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Modifique el archivo ajustando los valores de ssid y pskfoobar para su red inalámbrica.

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev

update_config=1

network={

        ssid="My-Network-Name"

        psk="My-password"

        proto=RSN

        key_mgmt=WPA-PSK

        pairwise=TKIP

        auth_alg=OPEN

}

Para que los cambios realizados surtan efecto, reinicie su Raspberry Pi.

Para saber más

Consulte el Capítulo 2.2 para las conexiones por cable. Si quiere conocer los adaptadores WiFi compatibles con Raspberry, consulte http://elinux.org/RPi_VerifiedPeripherals.

Para más información sobre cómo configurar una red por cable, véase el Capítulo 2.2.

2.7 Conectar un cable de consola

Problema

No hay ninguna conexión de red disponible, pero quiere controlar de forma remota su Raspberry Pi desde otro ordenador.

Solución

Utilice un cable de consola para conectarlo a Raspberry Pi.

Los cables de consola son ideales para una Pi que va a ser utilizada headless, es decir, sin teclado, ratón ni monitor. El cable de consola mostrado en la Figura 2.5 está disponible en Adafruit.

Figura 2.5.Cable de consola.

Conecte el cable de la siguiente manera:

1. Conectar el cable rojo (5 V) al pin de 5 V, el pin del borde izquierdo del encabezado GPIO.

2. Conectar el cable negro (GND) a GND, el siguiente pin de la izquierda.

3. Conectar el cable blanco (RX) al GPIO 14 (TXD), a la izquierda del cable negro.

4. Conectar el cable verde (RX) a 15 (RXD), a la izquierda del cable blanco.

Si se utiliza un cable diferente, los colores de los cables pueden ser diferentes, así que siempre consulte la documentación de los cables o podrá dañar su Raspberry Pi.

Tenga en cuenta que el cable USB también proporciona 5 V en el cable rojo con suficiente potencia para la misma Pi, pero no si tiene muchos dispositivos conectados.

Si usted es usuario de Windows o Mac OS X, tendrá que instalar drivers para el cable USB, que se encuentren disponibles para Windows y para Mac OS X. Los usuarios de Linux, por lo general, no necesitan instalar ningún driver para estos cables.

Para conectarse a Pi desde Mac OS X, necesitará ejecutar el terminal y escribir el comando:

$ sudo cu -l /dev/cu.NoZAP-PL2303-00001004 -s 115200

El nombre del dispositivo será diferente, pero si pulsa Tab y después cu.P, se autocompletará. Después de la conexión pulse Entrar, y debería aparecer el indicador de conexión de Raspberry (Figura 2-6). El nombre de usuario y contraseña por defecto es pi y raspberry, respectivamente.

Figura 2.6.Inicio de sesión con el cable de consola.

Si está intentado conectarse a su Raspberry Pi desde un ordenador Windows, es necesario que descargue el software del terminal llamado Putty.

Cuando ejecute Putty, cambie “Connection type” a Serial y establezca la velocidad en 115200. También deberá establecer la “Serial line” para que esté el puerto COM en uso por el cable. Puede ser COM7, pero si eso no funciona, compruebe el Administrador de dispositivos de Windows.

Al hacer clic en Open y pulsar Entrar, la sesión del terminal debe comenzar con una pantalla de entrada.

Observaciones

El cable de la consola puede ser una forma muy conveniente de usar su Pi si viaja ligero, ya que proporciona energía y es una manera de controlarlo de manera remota.

El cable de consola tiene un chip al final del USB que proporciona una interfaz de USB a serie. Esto a veces (dependiendo de su sistema operativo) requiere la instalación de drivers en el ordenador. El cable que se utiliza aquí es uno suministrado por Adafruit (código de producto: 954). Debe ser capaz de utilizar cualquier convertidor USB a serie mientras tenga los drivers necesarios para su ordenador.