Scratch é uma ferramenta de programação para criar jogos, histórias e animações incorporadas sem usar nenhuma codificação escrita, mas usando uma sintaxe visualmente organizada que está em blocos com uma interface de arrastar e soltar. Pode-se usar esses blocos de acordo com a necessidade, o controle do hardware do Scratch não se limita apenas às entradas externas, como teclado e mouse. Este artigo explica como configurar o Scratch para estender seu poder de acesso ao GPIO (Entrada e Saída de Propósito Geral) do Raspberry Pi.
Neste tutorial, uma placa Raspberrypi é inicializada com o sistema operacional Ubuntu e conectada à porta Ethernet de um PC com Windows7. A placa está conectada à internet conforme explicado no artigo Conectando o Raspberry pi à internet. O endereço IP da placa Raspberrypi foi obtido para login remoto na TUI usando o PUTTY e é acessado remotamente usando VNC.
Abra o terminal e digite o seguinte comando:
wget -O isgh7.sh
O arquivo será baixado e salvo no cartão SD.
Figura 2: Comando de download do Scratch para Raspberry Pi
Ou baixe o arquivo diretamente para outro computador e copie-o para a pasta compartilhada do Raspberry Pi.
Execute o arquivo para instalar o Scratch GPIO usando o seguinte comando:
bash isgh7.sh
Se não estiver logado como usuário root, adicione o sudo antes do comando como:
sudo bash isgh7.sh
e pressione Enter
Isso instalará todo o software extra necessário e alguns exemplos.
Fig. 3: Instalando Scratch e outros softwares
Esta instalação criará dois ícones na área de trabalho – ScratchGPIO7 é usado para iniciantes em circuitos simples e ScratchGPIO 7Plus é usado por especialistas com muitas placas complementares.
Como funciona:
Scratch também pode gritar chamado “transmitir” para qualquer coisa chamada de escuta e também ouvir chamado de “receber” qualquer outra coisa que esteja gritando também.
O programa python chamado “scratch_gpio_handler.py” será executado em segundo plano e está configurado para ouvir qualquer uma dessas mensagens de transmissão e transformá-las em ações GPIO.
O scratch_gpio_handler.py atual tem os pinos GPIO fixados nas seguintes entradas e saídas. Os números dos pinos fornecidos são os pinos contados no próprio cabeçalho P1 GPIO.
Comandos de transmissão:
Saídas (21,18,16,15,13,12,11)
Comando |
Comando Alt |
Resultado |
pinXon |
pinXhigh |
Liga o pino X |
pinXoff |
pinXlow |
Desliga o pino X |
tudo em cima |
tudo alto |
Liga todos os pinos |
desligar |
permitir |
Desliga todos os pinos |
pinpattern1010111 |
|
Liga ou desliga cada pino dependendo de 1 ou 0 (21,18,16,15,13,12,11) |
Fazendo o led piscar:
Fig. 4: Fazendo o Led piscar usando Scratch
A bandeira verde na janela de reprodução é para iniciar o código, aqui usamos o bloco de loop eterno para fazer o led piscar para sempre.
Entradas de detecção:
Entradas (26,24,22,19,10,7)
Fig. 5: Detectando entradas no Scratch para acessar o GPIO
No zero, um bloco de detecção separado está disponível onde o valor do sensor consiste em um controle deslizante que inclui os pinos de entrada que podem ser usados adequadamente. Podemos usar este bloco variável para comparar com valores binários usando blocos de controle.
Controle de LED usando botões:
O controle de quatro leds usando quatro interruptores é codificado visualmente aqui e o funcionamento é demonstrado no vídeo.
Fig. 7: Controlando o LED usando botões
Diagramas de circuito
Circuito-Diagrama-Configure-Scratch-GPIO |
Vídeo do projeto