Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Raspberry Pi
SISTEMAS DIGITALES
2020
objetivos
Conocer un miniordenador basado en hardware y software libre y
dar un alcance sobre los posibles proyectos a desarrollar.
Instalación del Sistema Operativo.
Acceso remoto al Raspberry Pi desde una PC.
Principales comandos en entorno Linux, actualización de repositorios,
software, otros.
¿Que es un Raspsberry PI ?
Computadora del tamaño de una tarjeta de crédito.
Se conecta a un monitor de computadora o TV.
Utiliza teclado y mouse estándar.
Puede navegar por Internet y reproducir videos HD.
¡Interactuar con el mundo exterior!
¿Que es un Raspsberry PI ?
• Desarrollado en el Reino Unido por la Raspberry Pi Foundation para
promover la enseñanza de la informática básica en escuelas y países
en desarrollo.
• Nació con un propósito: incentivar la enseñanza de informática en el
entorno docente y creación de prototipos.
• Una Raspberry Pi es una placa de desarrollo basada en Linux.
• Permite gestionar una gran cantidad de datos.
Raspberry Pi
• Existen varios modelos de placas y su popularidad ha generado que
salgan al mercado diversidad de accesorios que suma funcionalidades
a la placa base, al igual que Arduino.
• Se ha convertido en un hardware muy popular debido a su bajo coste
y gran potencia ampliamente utilizado en proyectos de robótica, IoT e
Industria 4.0.
Open Source
• Freedom to Use: Libertad de uso, implica que todo el mundo puede
usar el producto y todo el contenido estará accesible al usuario.
GPIO son las siglas de General Purpose Input/Output, es decir, Entrada/Salida de propósito general.
Son pines que se pueden configurar para realizar distintas funciones, de ahí que sean de propósito
general y no para un uso específico.
Distribución de GPIO de los diferentes
modelos de Raspberry Pi de 40 pines
Será el usuario quien pueda configurar estos pines GPIO para que hagan lo que se necesite desde
consola o por un programa en Python.
BeagleBone
Asus TinkerBoard
Odroid Banana Pi
Sistema Operativo
La Raspberry Pi cuenta con un completo
sistema operativo, con entorno gráfico y
herramientas de programación de diverso
tipo.
GNU/Linux es el nombre correcto del sistema
operativo que lleva la Raspberry Pi. Raspbian
y Debian no son más que distribuciones de
este sistema operativo.
GNU quiere decir GNU's Not Unix, es decir,
GNU no es Unix.
Software Libre
En 1983 Richard M. Stallman, que trabajaba como investigador en el AI
Lab del MIT, decidió empezar el proyecto GNU con el objetivo de hacer
innecesario el uso de cualquier otro software no libre. En 1985 crea la
Free Software Foundation con el objetivo de difundir el movimiento del
software libre y de ayudar al desarrollo del sistema GNU.
El software libre puede ser
utilizado, estudiado,
modificado, copiado y
redistribuido sin
restricciones. Habitualmente
el software libre suele ser
además gratuito, pero no
necesariamente.
Richard Mathew Stallman
Sistema Operativo Raspberry Pi
http://www.putty.org/
Establecer una comunicación entre nuestro
ordenador y nuestra Raspberry Pi por conexión
SSH
Establecer una comunicación entre nuestro
ordenador y nuestra Raspberry Pi por conexión
SSH
• Terminada la descarga del programa PUTTY, estableceremos la
comunicación entre nuestro ordenador y nuestra Raspberry Pi a nivel
IP, se realizará utilizando configuraciones de IP estáticas.
Es importante recordar que ambas IP, del ordenador y la Raspberry Pi, deben estar en el mismo segmento
Configuración IP de nuestro Ordenador
Configuración IP de nuestra Raspberry Pi
Para realizar la configuración IP de nuestra Raspberry Pi debemos
introducir nuestra tarjeta micro SD (con el sistema operativo instalado
previamente) a nuestro ordenador y buscaremos en ella el archivo
“cmdline”.
Configuración IP de nuestra Raspberry Pi
Al final del texto de este archivo escribiremos la configuración para la IP estática de nuestra Raspberry, esta
configuración la escribiremos respetando el siguiente formato ya que debemos incluir toda la información
requerida.
ip=<IP cliente> <IP servidor> <gateway> <mask> <nombre de cliente> <dispositivo> <config automática>
Toda esta información será escrita y separada por dos puntos, este será
el texto que debemos introducir en el archivo cmdline, habrá dos
puntos juntos y esto es así porque no tendremos servidor.
ip=192.168.0.7::192.168.0.255:255.255.255.0:rpi:wlan0:off
Configuración IP de nuestra Raspberry Pi
Debemos tener cuidado con el ultimo carácter oculto que es un salto de línea y este se encuentra al final del
texto, debemos borrarlo porque si no la configuración no será exitosa y no podremos establecer la conexión SSH.
Una vez terminada la configuración IP de nuestra Raspberry Pi guardaremos los cambios realizados.
….
Comprobando comunicación
• En este punto debemos también tener respuesta a pruebas de ping
de nuestra Raspberry con IP (192.168.0.7). Ingresamos el comando
ping 192.168.0.7
Comunicación SSH
Una vez realizada la comprobación
ejecutaremos el programa PUTTY, en la
opción que dice “Host Name (or IP
address)” colocamos la dirección IP de
nuestra Raspberry PI (192.168.0.7), en
la opción que dice “Connection type”
seleccionamos SSH y para finalizar
hacemos clic en “Open”. Nos aparecerá
una ventana de alerta y le daremos a
“Yes” (en la próximas veces no
aparecerá mas).
Comunicación SSH
Esto nos permitirá tener acceso a la terminal de comando de nuestra
Raspberry Pi.
Usuario = pi
Contraseña = raspberry
Es importante recordar que ambas IP, del ordenador y la Raspberry Pi, deben estar en el mismo segmento
Descargar VNC en nuestro Ordenador
Se recomienda ejecutar “VNC Viewer for Google Chrome” que es una
aplicación de Chrome la cual le permitirá acceder al escritorio de su
Raspberry Pi, se utilizará esta aplicación debido a que posee una mejor
respuesta y calidad de imagen.
https://chrome.google.com/webstore/detail/vnc%C2%AE-viewer-for-
google-ch/iabmpiboiopbgfabjmgeedhcmjenhbla
Descargar VNC en nuestro Ordenador
Descargar VNC en nuestro Ordenador
Usuario = pi
Contraseña = raspberry
Si vemos que es una versión muy antigua, actualizaremos nuestro kernel ya que trae mejoras como
gestión de energía y soporte actualizado para los puertos GPIO entre otras cosas. Para actualizar
nuestro kernel ejecutaremos el siguiente comando:
Veremos como se descarga el kernel de los repositorios github y se instala. Una vez termine la
actualización, nos pedirá que reiniciemos para que los cambios surjan efecto.
Comandos Básicos de Linux
ls - Abreviación para listing (listado), ls proporciona un lista de los contenidos
del directorio actual.
cd-Las siglas para change directory (cambio de directorio), cd le permite navegar
a través del sistema de archivos.
mv- El comando move (mover) tiene dos propósitos en Linux: permitir que un
archivo sea trasladado de un directorio a otro, y también permitir que los
archivos sean renombrados. El comando es invocado en la siguiente forma: mv
viejoarchivo nuevoarchivo.
rm - Abreviación para remove (remover), rm elimina archivos. Cualquier archivo
(o lista de archivos) escrito después del nombre del comando será eliminado.
rmdir - El comando rmdir es permite borrar directorios una vez que éstos han
quedado vacíos de archivos con comando rm.
mkdir-Es el opuesto a rmdir. El comando mkdir crea nuevos directorios. Por
ejemplo, escribir mkdir Micarpeta en la terminal.
Directorios visibles
• boot-Este directorio contiene el núcleo Linux y otros paquetes necesarios
para iniciar la RasPi.
• bin-Los archivos binarios relacionados con el sistema operativo. Por
ejemplo, los archivos requeridos para ejecutar la GUI son almacenados
aquí.
• dev-Este es un directorio virtual, que no existe en realidad sobre la tarjeta
SD. Todos los dispositivos conectados al sistema (incluyendo los
dispositivos de almacenamiento, la tarjeta de sonido y el puerto HDMI)
pueden accederse desde aquí.
• etc-Este directorio almacena diversos archivos de configuración,
incluyendo la lista de los usuarios y sus contraseñas cifradas.
• home-Cada usuario tiene un subdirectorio bajo este directorio para
almacenar todos sus archivos personales.
Directorios visibles
• lib-Este directorio es un espacio de almacenamiento para las bibliotecas o
librerías, que son trozos de código compartido requeridos por numerosas
aplicaciones.
• media-Este es un directorio especial para los dispositivos de
almacenamiento extraíbles, como las memorias USB o las unidades de CD
externas.
• mnt-Esta carpeta es utilizada para montar manualmente los dispositivos de
almacenamiento, tales como los discos duros externos.
• opt-Este directorio almacena el software opcional que no forma parte del
sistema operativo en sí. Si instala un nuevo software en la RasPi.
• proc-Este es otro directorio virtual, que contiene información sobre los
programas en ejecución que en Linux son conocidos como procesos.
Directorios visibles
• sbin-Este directorio almacena archivos binarios especiales,
principalmente utilizado por la cuenta root (superusuario) para
mantenimiento del sistema.
• sys-En este directorio es donde se almacenan los archivos especiales
del sistema operativo.
• tmp-Los archivos temporales se almacenan aquí automáticamente.
• usr-Este directorio proporciona almacenamiento para los programas
accesibles por el usuario.
• var-Este es un directorio virtual que utilizan los programas para
almacenar valores que cambian o variables.
Desarrollos de UDEP
Desarrollos de UDEP
Desarrollos de UDEP
Distribución de GPIO de los
diferentes modelos de
Raspberry Pi de 40 pines
En el terminal escribimos:
Usando GPIO – Salida Digital
En el terminal escribimos:
Accediendo a la cámara
Activar cámara de Raspberry Pi
• $ sudo raspi-config
• Interpretado: significa que Python “interpreta” el código del programador, es decir, lo traduce y lo
ejecuta a la vez.
• Multiparadigma: porque es un lenguaje de programación que admite el uso de varios paradigmas
de programación (modelos de desarrollo), por lo que no exige a los programadores un estilo único
de programación. Programación orientada a objetos (combina datos y acciones asociadas
“métodos” en estructuras lógicas “objetos”), programación imperativa (secuencia claramente
definida de instrucciones). y programación funcional (programación declarativa basado en el uso
de funciones, sus expresiones pueden ser asignadas a variables).
• Multiplataforma: el lenguaje Python puede ejecutarse en diferentes sistemas operativos como
Unix, Linux, macOS y Windows.
Programar en Python
Para empezar a programar en el lenguaje de programación Python, es
necesario instalar un segundo programa en nuestro equipo. Nos
referimos a un editor de código fuente, también conocido como IDE
(Integrated Development Environment). Se trata de una herramienta
diseñada para editar el código fuente de diversos lenguajes de
programación como Python. No existe programador en el mundo que
no use uno.
¿Sabías que varias empresas que dependen
de los desarrolladores de Python?
Las empresas están trabajando en las habilidades de Python y la
experiencia de los programadores para lograr mucho más.
Algunos puestos:
• Científico de datos
• Ingeniero de DevOps
• Desarrollador Python
• Ingeniero de programación superior
• Desarrollador de software
• Ingeniero de software
Veremos el uso de
Usando nuestra cámara de Raspberry Pi
Usando nuestra cámara de Raspberry Pi
Vista previa Esta opción nos permite visualizar en tiempo real la imagen de la cámara,
además de poder ajustar los parámetros como brillo.
Crearemos un ejemplo que nos permita ver la vista previa y guarde la foto.
Lo guardamos y lo ejecutamos como cualquier otro programa de python mediante consola.
Usando nuestra cámara de Raspberry Pi
Resolución Esensor de la cámara tiene una resolución de 2592x1944 píxeles (aproximadamente 5
mega píxeles)