Tutoriais

Programando o Arduino com o S4A (Scratch for Arduino)

Eletrogate 27 de janeiro de 2022

Introdução

No post de hoje, iremos te mostrar uma maneira fácil e divertida de programar o Arduino: utilizando linguagem de programação em blocos. Antes de iniciarmos, você sabe o que é a plataforma Arduino? E do Scratch, você já ouviu falar?

Arduino

Arduíno é uma placa de prototipagem eletrônica de código aberto, desenvolvida na cidade de Ivrea, na Itália no ano de 2005. A plataforma Arduino inclui hardware e software livre, cujo objetivo é oferecer uma plataforma de baixo custo para a criação de projetos interativos de diversas ordens. Existem diversos modelos de placas Arduino. A mais popular é o Arduino Uno, e será ela que iremos usar em nossas experiências de hoje. Além dela, porém, temos outras placas bastante utilizadas, como o Arduino Mega, Arduino Nano e o Arduino Pro Mini. Quer saber mais sobre essa fantástica plataforma? Você pode acessar a nossa postagem sobre o Arduino.

Modelos de placas Arduino.

Scratch

Scratch é uma linguagem de programação visual baseada em blocos desenvolvida pelo grupo Lifelong Kindergarten, no Media Lab da universidade americana MIT (Massachusetts Institute of Technology), com o intuito de ensinar lógica de programação para crianças e adolescentes de 8 a 16 anos de idade.

Scratch.

O Scratch é totalmente gratuito e pode ser utilizada por todos, basta possui um computador, tablet ou smartphone com acesso à Internet para começar a programar e criar. Para acessar, basta clicar no link: https://scratch.mit.edu/ .

S4A

Já o S4A (Scratch For Arduino) é uma modificação da linguagem Scratch que permite programação simples da plataforma Arduino. É uma linguagem muito semelhante à linguagem Scratch, o que faz com que crianças gostem de programar o Arduino. A adaptação para esta linguagem torna-se, assim, mais fácil, havendo só a necessidade de introduzir alguns conceitos básicos de eletrônica. Ela provê novos blocos para gerenciar sensores e atuadores conectados à plataforma Arduino. O foco principal deste projeto é atrair pessoas para o mundo da programação. Outro objetivo é fornecer uma interface de alto nível para programadores de Arduino, com funcionalidades como interagir com um conjunto de placas através de eventos de usuários.

S4A.

Toda a programação é realizada com base em blocos, que integram funcionalidades básicas como leituras e escritas digitais e analógicas, eventos, etc.

Blocos do S4A.

O S4A funciona nas placas Arduino Diecimila, Duemilanove e Uno. A comunicação do S4A com o Arduino pode ser feita via interface USB ou wireless, através de um modulo de rádio Frequência.


Preparando o Ambiente

Agora que já conhecemos a plataforma Arduino e o ambiente de programação S4A, é hora de preparar o ambiente para programar o nosso Arduino UNO utilizando blocos. Para isto, se faz necessário ter a Ide do Arduino. Você poderá fazer o download na página oficial. Já o S4A, poderá ser baixado também na página oficial. A instalação é bem simples, basta seguir os seguintes passos:

  1. Acesse o site e escolha a opção download e o seu sistema operacional. Então, faça o download do software S4A.

    Download do S4A.

  2. Descompacte o arquivo.

    Descompactando o arquivo.

  3. Inicie a instalação aceitando a permissão e selecione o idioma para iniciar a instalação.

    Seleção do idioma.

  4. Agora, clique em next.

    Próximo.

  5. Aceite os termos e clique em next.

    Aceitando o termos.

  6. Selecione o diretório e clique em next.

    Seleção do diretório.

  7. Clique em next.

    Próximo.

  8. Marque a opção de criar o ícone na área de trabalho.

    Criando o ícone na area de trabalho.

  9. Clique em install.

    Instalação.

  10. Pronto, agora é só clicar em finish.

    Finalização.

A imagem a seguir é do ambiente de programação S4A. Perceba que existe uma mensagem de “Searching board” e, como a placa não está conectada, o software fica scaneando, ou seja procurando a placa. Então, é hora de configurar a placa para utilizamos.

Procurando placa.

Para a configuração da placa, é necessário fazer o download o firmware. Para isto, acesse a pagina do S4A e desça até a opção “instalando o firmware no seu Arduino”. Na opção “baixe nosso firmware”, clique “aqui“.

Firmware.

Ao fazer o download, abra o arquivo. Será mostrado uma mensagem para criar uma pasta para o arquivo. Clique em ok.

Criando pasta.

A imagem a seguir mostra o arquivo do firmware aberto na Ide do Arduino, lembre que você já deve ter a IDE instalada no seu computador.

Firmware.

Com a placa conectada, selecione o modelo da placa e, em seguida, a porta de comunicação. Pronto! Faça o upload e, em seguida, feche o programa e, na sequencia, abra o software S4A.

Selecionando a placa Arduino UNO.

Selecionando a porta COM.

Com o S4A aberto, a mensagem de “Searching board” deverá ter sumido. Isto quer dizer que sua placa está habilitada e pronta para ser programada no S4A.

Comunicação com a placa.


Materiais Necessários para o Projeto Programando o Arduino com o S4A (Scratch for Arduino)

Agora é hora da mão na massa. Para as nossas experiências com o S4A e a plataforma Arduino, iremos utilizar os seguintes componentes:

Todos os componentes, você encontra no site da nossa loja, Eletrogate.


Programando

Experiência 1

Nossa primeira experiência é o famoso “Hello World”, em nosso caso, o pisca led. Lembre-se que é necessário que a placa Arduino UNO esteja com o firmware carregado e a Ide do Arduino fechada.  Vamos para montagem do nosso circuito.  Lembre sempre de verificar se os terminais do led estão conectados de forma correta: o terminal maior é o positivo e o terminal menor, o negativo. O resistor utilizado nesta experiência é de 330Ω.

Experiência 1.

Agora que o circuito está montado, é hora da programação. Os blocos são separados por abas, são elas: Movimento, Controle, Aparência, Sensores, Som, Operadores, Caneta e Variáveis.

Abas dos blocos de programação.

Iremos iniciar na aba controle, na qual iremos pegar os blocos:

  • Quando bandeira verde clicado.

Este bloco inicia o código sempre que o usuário clicar na bandeirinha verde.

Bloco bandeirinha verde.

  • Bloco sempre.

Este bloco é o nosso laço infinito, tudo que estiver dentro dele irá se repetir até você clicar no botão de stop (circulo vermelho).

Bloco sempre.

  • Bloco espere 1 segundo.

Este é o nosso delay, ou seja, o tempo que o programa na executa nada. Você poderá alterar o tempo, basta selecionar o espaço do numero.

Bloco espere segundos.

Na aba movimento, encontramos os blocos de acionamento das portas digitais e movimentação dos personagens.

Aba movimento.

Iremos buscar nesta aba os blocos:

  • Digital 13 on e digital 13 off.

Como os nomes sugerem, eles servem para ligar e desligar os pinos da placa Arduino. Lembrando que você poderá mudar o numero do pino, bastando clicar na seta do lado do numero 13.

Bloco digital 13 ON e OFF.

  • Diga olá.

Para mudar o que está escrito, basta clicar e digitar. No caso, iremos escrever as frases LED ON e LED OFF.

Blocos diga olá.

Agora que já temos todos os nossos blocos, basta você encaixar de acordo com o que você quer.

Blocos de programação.

É bem parecido com os blocos do LEGO: para encaixar, basta arrastar e encaixar. A imagem a seguir traz a programação da nossa experiência 1.

Programação pisca led.

Ao clicar na bandeirinha verde, seu led deverá piscar em intervalos 1 segundo. O vídeo a seguir mostra a programação e o funcionamento da experiência 1.

 

Experiência 2

Agora, é hora da nossa experiência 2, que será um semáforo simples com três leds (verde, amarelo e vermelho). Os resistores são de 330Ω, cada. A imagem a seguir demonstra a montagem do circuito. Observe que o terminal negativo (menor) do led está ligado em série com o resistor.

Experiência 2.

Agora que já conhecemos as abas onde temos os blocos de programação, basta você observar a figura a seguir que mostra os blocos que serão utilizados na programação da experiência 2.

Blocos da experiência 2.

Agora, é só encaixar na mesma sequencia da figura abaixo. Lembre de alterar os tempos.

Programação do semáforo simples.

Ao clicar na bandeirinha verde, nosso semáforo irá funcionar. No vídeo a seguir, você poderá ver todo o processo da programação, bem como o funcionamento do nosso semáforo.

 

Experiência 3

Na experiência 3, iremos interagir o Arduino com o S4A através de um push button. Sempre que acionarmos o botão, o personagem morcego irá se movimentar e bater as asas. Primeiro, veremos a montagem do circuito. Nela, iremos utilizar um resistor de 1kΩ.

Experiência 3.

Pronto! O circuito está montado. Agora, é hora de programar. Iremos começar selecionando os personagens. Em nosso caso, iremos escolher dois morcegos.  Primeiro, selecione o personagem que está no palco, no caso, o Arduino. Na sequencia, selecione a opção “trajes”, conforme a figura a seguir.

Selecionando o personagem.

Agora, clique na opção “importar”.

Importando personagem.

Para importar os personagens, você deve selecionar a opção “trajes”. Depois, clicar na pasta “animals”. Nesta pagina, você irá encontrar vários personagens, inclusive o morcego.

Escolhendo o traje.

Morcego bat1-a.

Ao escolher este personagem, o mesmo deverá aparecer no palco.

Morcego no palco.

Repita os passos, selecione o personagem bat1-b e, depois, clique na opção comandos, conforme a imagem.

Morcego bat1-b.

Vamos escolher um fundo de tela para o nosso palco. Clique na opção “palco” e, depois, na opção “fundos de tela”.

Escolhendo um fundo de tela.

Escolha a pasta “nature”.

Pasta nature.

Agora, escolha a opção “woods” e clique em “ok”.

Woods.

O fundo da tela do palco deverá ficar conforme a image. Não esqueça de clicar novamente no personagem, pois iremos programa-lo.

Fundo de tela do palco.

Vamos para o código. Na figura abaixo, você encontra os blocos necessários para a nossa programação.

Blocos para experiência 3.

Nesta programação, temos alguns novos blocos:

  • se senão.

O bloco “se senão” está localizado na aba controle e verifica se a condição que está dentro do losango é verdadeira ou falsa. Caso seja verdadeira, o que está dento do “se” é executado e, caso contrario, o que é executado é o que esta dentro do “senão”.

Bloco se senão.

  • sensor Digital 2 pressed?.

O bloco “sensor Digital 2 pressed?” está na aba movimento e é utilizado para verificar o estado de uma entrada digital. Em nosso caso, iremos verificar se o push button foi ou não pressionado, ou seja, se é 0 (zero) ou 1 (um). Ele será encaixado no losango do bloco “se senão”.

Bloco sensor pressionado.

  • mude para o traje bat1-a.

O bloco “mude para o traje bat1-a” está localizado na aba aparência e será responsável por selecionar um dos dois personagens que importamos. No caso, o morcego a.

seleciona o traja bat1-a.

  • mude para o traje bat1-b.

O bloco “mude para o traje bat1-b” está localizado na aba aparência e será responsável por selecionar um dos dois personagens que importamos. No caso, o morcego b.

Seleciona o traje bat1-b.

  • mova 10 passos.

O bloco “mova 10 passos” está localizado na aba movimento e é responsável pela movimentação do personagem. Você pode alterar a quantidade passos que quiser.

Bloco mova 10 passos.

  • Bloco se tocar na borda volte.

Este bloco também está na aba movimento e é utilizado para que o personagem não saia do ângulo de visão do palco. Sempre que ele tocar em uma da bordas do palco, irá se movimentar no sentido oposto.

Bloco se tocar na borda.

Agora, é só encaixar os blocos conforme a imagem da programação abaixo.

Programação do push button.

Sempre que o push button for pressionado, o morcego irá movimenta-se. No vídeo a seguir, você poderá ver todo o processo da programação, bem como o funcionamento da nossa experiência 3.


Conclusão

Todos sabemos o poder da plataforma Arduino. Ela traz facilidade e agilidade no desenvolvimento de projetos. Porém, para crianças ou adolescentes, as vezes é um pouco assustador programar. Neste ponto, entra o software S4A, que é excelente para auxiliar no desenvolvimento da lógica de programação tanto para crianças quanto para jovens e até adultos de qualquer idade. Desta forma, os mesmos aprendem a programar de forma mais lúdica, brincando, imaginando e desenhando seus próprios jogos. Assim, desenvolvem a lógica de raciocínio para estruturas condicionais como o if-else (se senão), entre outras. Também é possível conhecer sensores, atuadores entre outros componentes eletrônicos, fazendo jogos que interagem com a placa Arduino através das leituras de botões, LDR entre outros. Espero que este conteúdo tenha sido de grande ajuda e que você tenha conseguido programar o seu Arduino utilizando os blocos do S4A. Deixe o seu comentário, sugestão e nos marque @eletrogate nas redes sociais com os resultados das experiências.

Conheça a Metodologia Eletrogate e ofereça aulas de robótica em sua escola!


Sobre o Autor


Alexsandro Ferreira
Instagram

Mestrando em Ciências da Computação pela Universidade Federal de Pernambuco, especialista e graduado em tecnologia em automação industrial, técnico em eletroeletrônica, professor de robótica desde de 2015, tutor das equipes de robótica Monster High, Athena e ELETRIDS. Amante da eletrônica e robótica.


Eletrogate

27 de janeiro de 2022

A Eletrogate é uma loja virtual de componentes eletrônicos do Brasil e possui diversos produtos relacionados à Arduino, Automação, Robótica e Eletrônica em geral.

Conheça a Metodologia Eletrogate e Lecione um Curso de Robótica nas Escolas da sua Região!

Eletrogate Robô

Cadastre-se e fique por
dentro de novidades!