Scratch es una herramienta de programación para crear juegos, historias y animaciones integradas sin utilizar ningún código escrito, pero utilizando una sintaxis visualmente organizada en bloques con una interfaz de arrastrar y soltar. Puede utilizar estos bloques según sea necesario. El control del hardware de Scratch no se limita a entradas externas, como el teclado y el mouse. Este artículo explica cómo configurar Scratch para ampliar su potencia para acceder al GPIO (entrada y salida de propósito general) de Raspberry Pi.
En este tutorial, se inicia una placa Raspberrypi con el sistema operativo Ubuntu y se conecta al puerto Ethernet de una PC con Windows7. La placa está conectada a internet como se explica en el artículo Conexión de la Raspberry pi a internet. La dirección IP de la placa Raspberrypi se obtuvo para el inicio de sesión remoto en la TUI usando PUTTY y se accede de forma remota usando VNC.
Abra la terminal y escriba el siguiente comando:
wget -O isgh7.sh
El archivo se descargará y guardará en la tarjeta SD.
Figura 2: Comando de descarga desde cero para Raspberry Pi
O descargue el archivo directamente a otra computadora y cópielo en la carpeta compartida de Raspberry Pi.
Ejecute el archivo para instalar Scratch GPIO usando el siguiente comando:
bash isgh7.sh
Si no ha iniciado sesión como usuario root, agregue sudo antes del comando como:
sudo bash isgh7.sh
y presione Entrar
Esto instalará todo el software adicional necesario y algunos ejemplos.
Fig. 3: Instalación de Scratch y otro software
Esta instalación creará dos íconos en el escritorio: ScratchGPIO7 se usa para principiantes con circuitos simples y ScratchGPIO 7Plus es usado por expertos con muchas placas complementarias.
Como funciona:
Scratch también puede gritar "transmitir" a cualquier cosa llamada escuchar y también escuchar "recibir" cualquier otra cosa que esté gritando.
El programa Python llamado "scratch_gpio_handler.py" se ejecutará en segundo plano y está configurado para escuchar cualquiera de estos mensajes de transmisión y convertirlos en acciones GPIO.
El scratch_gpio_handler.py actual tiene los pines GPIO fijados a las siguientes entradas y salidas. Los números de pin proporcionados son los pines contados en el propio encabezado GPIO P1.
Comandos de transmisión:
Salidas (21,18,16,15,13,12,11)
Dominio |
comando alternativo |
Resultado |
pinXon |
pinXhigh |
Conecte el pin X |
pinXoff |
pinXlow |
Desconectar el pin X |
Todo encima |
todo alto |
Conecte todos los pines |
apagar |
permitir |
Desconecte todos los pines |
patrón de alfiler1010111 |
|
Activa o desactiva cada pin dependiendo de 1 o 0 (21,18,16,15,13,12,11) |
Hacer que el LED parpadee:
Fig. 4: Hacer que el LED parpadee usando Scratch
La bandera verde en la ventana de reproducción es para iniciar el código, aquí usamos el bloque de bucle eterno para hacer que el LED parpadee para siempre.
Entradas de detección:
Entradas (26,24,22,19,10,7)
Fig. 5: Detectando entradas en Scratch para acceder al GPIO
En cero, hay disponible un bloque de detección separado donde el valor del sensor consiste en un control deslizante que incluye los pines de entrada que se pueden usar en consecuencia. Podemos usar este bloque de variables para comparar con valores binarios usando bloques de control.
Control de LED mediante botones:
El control de cuatro LED mediante cuatro interruptores está codificado visualmente aquí y el funcionamiento se demuestra en el vídeo.
Fig. 7: Control del LED mediante botones
Diagramas de circuito
Diagrama-de-circuito-Configurar-Scratch-GPIO |
Vídeo del proyecto