domingo, 3 de junio de 2018

Mi primer proyecto: LED intermitente

Como primer paso se va a programar y construir un LED intermitente que parpadea continuamente con una frecuencia de 1 segundo. Para ello abrimos el entorno de programación Scratch de nuestra Raspberry Pi e importamos la extensión para utilizar los pines GPIO.

A continuación, añadimos el bucle con las instrucciones de encender y apagar el pin GPIO deseado. En esta práctica vamos a utilizar el pin GPIO número 4 (situado en la posición número 7 de la placa).




Intermitente con Scratch y GPIO
Intermitente con Scratch y GPIO


Antes de empezar con la conexión del circuito, es conveniente recordar que una mala conexión de los componentes en nuestra placa puede deteriorar los pines GPIO o romper la Raspberry Pi. Tener mucho cuidado y revisar las conexiones varias veces antes de conectar.


Materiales necesarios
En esta práctica vamos a utilizar los siguientes materiales:
  • 1 protoboard
  • 2 latiguillos
  • 1 resistencia 100 Ω
  • 1 diodo led (5mm)


Algunos cálculos para verificar el proyecto
En nuestro caso tenemos un LED de color rojo, que según la ficha técnica el fabricante nos asegura que funciona a una tensión o voltaje de 2,1V y admite una corriente máxima de 20 mA. También sabemos que los pines GPIO ofrecen una tensión de 3,3V y una intensidad de entre 3mA (suficiente para encender el led). De estos datos tenemos que:
La tensión en el LED será de 3,3V - 2,1V = 1,2V.
La corriente en el LED será de 20 mA (la misma que en el circuito ya que no varía).
La Resistencia que hay que aplicarle según la Ley de Ohm será de: R = V / I = 1,2V / 20mA = 60Ω, redondeando a 100Ω.  La Ley de Ohm establece que la caída de tensión de un elemento del circuito es igual a la intensidad de corriente que circula por él, multiplicado por la resistencia que ejerce cada componente al paso de esta corriente.


Esquema eléctrico
Por último, fijándonos en la tabla de los pines GPIO de nuestra Raspberry Pi, conectamos al cátodo de nuestro led el pin de masa (GND) y al ánodo del led el pin que hemos activado en la programación con Scratch, el pin GPIO 4 (pin número 7 de nuestra placa).


 
Esquema eléctrico de Raspberry Pi 2 B para el intermitente


Advertencias
Fíjate muy bien donde conectas el cable y mucho cuidado con equivocarte o podrás quemar la Raspberry Pi.
Vuelve a revisar la conexión antes de conectar los cables a la protoboard.
No conectes nada a 5V si no estás seguro. La raspberry Pi funciona a 3.3V y pasándole 5V supone quemar la placa.

Fuente:
https://www.programoergosum.com/cursos-online/raspberry-pi/242-control-de-gpio-con-scratch-en-raspberry-pi/intermitente

domingo, 15 de abril de 2018

sábado, 24 de marzo de 2018

Utilizando Scratch en Raspberry Pi

La versión de Scratch que dispone Raspbian es la 2.0, evidentemente podríamos utilizar Scratch 2.0 online de la misma manera que con cualquier sistema que no sea Raspberry a través del navegador, pero perderíamos la posibilidad de utilizar el GPIO (General Purpose Input/Output, puerto de entrada y salida de propósitos generales) para computación física conectando sensores y actuadores. La ventaja que tenemos con Raspberry Pi es que disponemos de esa conexión de puertos de entrada/salida a través de pines individuales.
La versión online de Scratch 2.0 no contempla esos pines de Raspberry puesto que puede ser utilizado desde cualquier ordenador Window, Linux o Mac/Apple, y ellos disponen de esa posibilidad.
Una vez introducida la microSD con Raspbian instalado tan sólo hay que darle alimentación a Raspberry Pi para que arranque. Una vez veamos el escritorio de Pixel, entorno gráfico de Raspbian, deberemos acceder al menú de la esquina superior izquierda con el logo de Raspberry Pi.
Una de las opciones es “Programming“, pulsar y seleccionar Scratch 2.
scratch en raspberry raspbian

En ese momento se abrirá Scratch en Raspberry en su versión 2.0. Si tienes curiosidad la otra selección que pone Scratch es la 1.4 y no dispone de la extensión para utilizar el GPIO de Raspberry Pi.
Una buena idea al iniciar Scratch es seleccionar el idioma pulsando en el icono de la esfera.
scratch en raspberry idioma

Ahora debemos añadir a Scratch la extensión que nos va a permitir utilizar los pines de entrada/salida. Seleccionar “More Blocks” en el menú de bloques y luego “Añadir una Extensión”.
scratch en raspberry extension

Seleccionamos la extensión “PI GPIO” y pulsamos abajo a la derecha “OK”.
Ahora si tienes instalado Scratch en Raspberry Pi con la función para utilizar los pines de entrada y salida para computación física.
Mediante el bloque “set gpio X to” vamos a poder poner un pin de salida del GPIO de Raspberry Pi en estado alto o bajo, es decir a 1 o 0.
Mediante el bloque “gpio X is high” vamos a poder leer si un pin de entrada del GPIO de Raspberry Pi está activado o desactivado, es decir si tengo un 1 o un 0 en esa entrada.
Puede parecer poco, pero mediante estos dos bloques vamos a poder interactuar con el medio físico, tomando lectura de lo que ocurre externamente a la Raspberry a través de sensores y pulsadores y tomando acción en el exterior por medio de actuadores como pueden ser desde simples luces a relés que me permitan accionar casi cualquier cosa.

Fuente:
https://juegosrobotica.es/scratch-en-raspberry/

lunes, 19 de marzo de 2018

Pinout del GPIO de Raspberry

GPIO (General Purpose Input/Output) es un sistema de E/S (Entrada/Salida) de propósito general, es decir, una serie de conexiones que se pueden usar como entradas o salidas en el Raspberry para usos múltiples. Los GPIO representan la interfaz entre la Raspberry y el mundo exterior. Y con ellos se puede hacer multitud de proyectos, desde hacer titilar un LED hasta otros mucho más sofisticados.
Todos los pines son de tipo “unbuffered”, es decir, no disponen de buffers de protección, así que deberás tener cuidado con las magnitudes (tensiones y corrientes) cuando conectes componentes para no dañar la placa. Como podrás apreciar en las imágenes posteriores, no todos los pines tienen la misma función:
  • Pines de alimentación: puedes apreciar pines de 5V, 3,3V (limitados a 50 mA) y tierra (GND o Ground), que aportan alimentación a estas tensiones para los circuitos. Te pueden servir como una fuente de alimentación, aunque también puedes utilizar otras fuentes (pilas, fuentes de alimentación externas, etc). Recuerda que son unbuffered y debes tener cuidado para no dañar la placa.
  • GPIO normales: son conexiones configurables que puedes programar para tus proyectos.
  • GPIO especiales: dentro de éstos se encuentran algunos pines destinados a una interfaz UART, con conexiones TXD y RXD que sirven para comunicaciones en serie, como por ejemplo, conectar con una placa Arduino. También podemos ver otros como SDA, SCL, MOSI, MISO, SCLK, CE0, CE1, etc.
Esta es la distribución de los pines de la interfaz de Raspberry Pi3 incluyendo pines con tensión y de masa.

Definiciones:
Power – Estos suministran tensión (5V o 3,3V a 50 mA) directamente de la Raspberry Pi 3.
Ground – Pins utilizados para conectar a tierra los dispositivos. Puede utilizar cualquiera de ellos, ya que estén todos conectados a la misma línea.
UART (Universal Asynchronous Receiver/Transmitter) – pins en serie que se utilizan para comunicarse con otros dispositivos.
I2C o I2C (Inter-Integrated Circuit) – Pines que permiten conectarse y comunicarse con los módulos de hardware compatibles con el protocolo I2C.
SPI (Serial Peripheral Interface Bus) – Pines que permiten conectarse y comunicarse con los módulos de hardware compatibles con el protocolo SPI.
GPIO (General Purpose Input/Output) – Pines estándar que se pueden utilizar como Interruptores de los dispositivos de encendido y apagado.

 

Scratch y GPIO

Es muy importante tener en cuenta que para Scratch en Raspberry se debe utilizar el número de la entrada/salida, no de la posición que ocupa. Es decir, aunque la entrada/salida 5 (GPIO5) se encuentre en el pin 29, en los bloques de Scratch indicaremos el 5 para referirnos a esta entrada/salida.


Fuentes:
http://electronicayciencia.blogspot.com.ar/2016/11/conexion-gpio-de-raspberry-pi-3.html 
https://comohacer.eu/gpio-raspberry-pi/ 
http://vuxmi.com/raspberry-pi-3-gpio-pin-layout/amp/

miércoles, 7 de marzo de 2018

Actualización del sistema

Una vez instalado Raspabian en Raspberry Pi3 vamos a habilitar el sistema de wifi ingresamos al menú inicial y desplegamos "Preferencias" y hacemos clic en "Configuración de Raspberry Pi" vamos a la pestaña "Interfaces" y activamos SSH, así el dispositivo se habilitará la señal wifi, elegimos la red y colocamos la clave de la red.

Luego hacemos clic en LX Terminal y escribimos

sudo rpi-update
sudo reboot

Entonces, despues de reiniciar:
sudo apt-get update
sudo apt-get upgrade
sudo reboot

El comando sudo (super user do), ejecuta un comando como otro usuario, pero respetando una serie de restricciones sobre qué usuarios pueden ejecutar qué comandos en nombre de qué otros usuarios (usualmente especificadas en el archivo /etc/sudoers).  La ventaja de sudo respecto de su es que sólo ejecuta el comando solicitado simulando ser el otro usuario, sin cambiar verdaderamente el usuario actual.

Fuentes:
https://www.raspberrypi.org/documentation/raspbian/updating.md
https://blog.desdelinux.net/cual-es-la-diferencia-entre-sudo-y-su/
https://es.wikipedia.org/wiki/Sudo

lunes, 26 de febrero de 2018

Instalación de Raspbian en microSD

Mediante esta guía de instalación y uso de Scratch en Raspberry Pi3 iniciaremos la experiencia en computación con Raspberry.
Como todo sistema computacional para comenzar a trabajar se necesita disponer de un sistema operativo, por lo que vamos a explicar el proceso de instalación del sistema operativo Raspbian en una Raspberry Pi 3.

Instalación de Raspbian en Raspberry Pi3

  • Descargar la imagen del sistema operativo desde la página de Raspberry el sistema operativo Raspbian. Para utilizar Scratch en Raspberry Pi para computación física hay que descargar la versión completa “Raspbian stretch with desktop” que tiene incluido las dos versiones de Scratch.

     raspbian scratch raspberry
    Descargaremos un archivo ZIP que contiene la imagen en formato .img  para montar en una tarjeta microSD.
  • Para montar la imagen puedes descomprimir el ZIP y utilizar cualquier herramienta para escribir en la tarjeta microSD a partir de un archivo imagen (.img) como el Win32DiskImager. Sólo hay que darle el camino donde está ubicado el archivo imagen, identificar la unidad donde está ubicada el dispositivo (microSD) donde se instalará el sistema operativo y oprimir el botón "Write".
    También puedes usar directamente el Etcher que te va a permitir directamente instalar desde el archivo ZIP para grabar Raspbian en la tarjeta.


    Fuentes:
    https://juegosrobotica.es/scratch-en-raspberry/

sábado, 24 de febrero de 2018

El Raspberry Pi3

Estos dispositivos se llaman Low Cost Single Board Computers, es una computadorar completa, de bajo consumo, con características modestas que está contenido en una placa un poco mayor que una tarjeta de crédito. Hay de varias marcas, distintos precios y diseños. El más común es de la marca Raspberry. Fue también el primero en tener una acogida masiva. Hay otras marcas como ODroid o Banana Pi, Orange Pi, etc. cada uno con sus características y sus precios.


Placa y conexionado de Raspberry Pi3. stackexchange.


La versión 3 salió en febrero de 2016 y cuenta con WiFi incorporada, Ethernet, varios puertos USB, HDMI y conectores para cámara, display, etc. Está basada en el BCM2837, evolución del BCM2835, un SoC (System on Chip) de Broadcom bien conocido. Un System on Chip no es más que un procesador, GPU y demás funciones integradas en un sólo componente. Se parece mucho a la electrónica de un smartphone. Este modelo es un ARM de 64bits a 1.2GHz, quad core y con 1Gb de RAM.

De la arquitectura no se puede contar mucho, ya que Raspberry no es Open Hardware. Hay disponibles versiones reducidas del esquema eléctrico, pero por hasta la fecha no hay intención de liberar el esquema completo. Por tanto muchos de los resultados se basan en la experimentación.

El chip que controla los puertos USB y la conexión Ethernet es el mismo, un LAN9514 de Microchip, produciendo un cuello de botella. Hay que tener esto en cuenta si se planea usarlo como NAS. Dado el precio del integrado y el uso general al que se destina el producto parece una decisión de diseño más que razonable.

Lo importante es que todas las versiones cuentan con una conexión GPIO (General Purpose Input Output) triestado. Es decir salida nivel alto, bajo y alta impedancia -input-, como las de un microcontrolador. Al fin y al cabo son los mismos pines del BCM. Eso sí, funcionan a 3.3v y no a 5v y carecen de cualquier tipo de protección. No suele haber problema en conectarlas a 5v con una resistencia, pero es algo que el datasheet prohíbe expresamente.


Accesorios

Lo primero que se compraría sería una caja apropiada para el uso que estéis pensando. Lo más práctico para experimentar es la Pibow Coupé. Las cajas con este formato permiten acceder fácilmente a todos los conectores con un detalle muy útil: tiene serigrafiada la numeración de los pines. Lo único que no es bueno es que los pines GPIO sobresalen ligeramente de la caja y podrían engancharse con algo.
Caja de acrílico tipo Pibow Coupe, color "flotilla".
El adaptador, para un uso ocasional sirve perfectamente con un cargador de móvil de 5v. Eso sí, en cuanto se quiera conectar un disco duro externo, por ejemplo, se va a venir abajo. Recomiendan un cargador de 3 amperios, que también os puede servir para cargar un móvil que soporte carga rápida.

¿Disipador? No es malo pero tampoco lo necesita. Si queréis ponerlo tened en cuenta que las cajas como la de arriba sólo están preparadas para poner disipador en el chip principal.

El sistema operativo va en una tarjeta Micro SD, el tamaño no importa siempre que quepa el sistema operativo y el software que queráis instalar, el mínimo con entorno gráfico diría que una de 16Gb.

Otros accesorios  muy útiles son un latiguillo de cable de red Ethernet para conectarla al router o al PC y un conector USB-Serie sobre todo para los que uséis portátil. Veremos por qué más adelante.

También os vendrá bien un juego de cables con conectores Dupont para experimentar:

Cable arco-iris con conectores Dupont macho-hembra.



Fuente:
http://electronicayciencia.blogspot.com.ar/2016/11/conexion-gpio-de-raspberry-pi-3.html