Skip to content

Atividade

Vaga-lumes

Avançado | MakeCode, Python | Rádio, Tela de LED | Comunicação, Randomização, Seleção

Passo 1: Projeto

Transforme um conjunto de micro:bits em um esplêndido enxame de vaga-lumes via comunicação por rádio

Conjunto de micro:bits acionando um ao outro por rádio para que brilhem brevemente

O que você aprenderá:

  • Como usar a comunicação por rádio entre micro:bits para desencadear eventos;
  • Como controlar o brilho do visor LED do micro:bit para torná-lo mais (ou menos) luminoso;
  • Como usar probabilidade e números aleatórios para imitar comportamentos reais.

Descrição do projeto:

Vaga-lumes são insetos que usam bioluminescência (luminosidade produzida pelos seus corpos) para se comunicar uns com os outros.

Este projeto imita o comportamento de vaga-lumes reais, usando o recurso de comunicação por rádio do micro:bit. A versão Python foi criada por Nicholas H. Tollervey, na qual a versão do MakeCode é baseada.

Instale o programa em pelo menos três micro:bits, que devem no mesmo local (cômodo). Pressione o botão A em qualquer micro:bit e você poderá ver um "enxame" de micro:bits piscando, uma vez que recebem uma mensagem de rádio. Isso funciona melhor em uma sala escura usando vários micro:bits.

Uma vez que um micro:bit receba a mensagem de rádio, há a probabilidade, de um em cada dez, dele transmitir sua própria mensagem de rádio e iniciar uma nova onda de luzes brilhantes nos outros micro:bits.

Quando as luzes finalmente pararem, pressione o botão A em qualquer micro:bit para reiniciar o "enxameamento" da comunicação.

Como funciona:

  • O programa usa comunicação via rádio para enviar a mensagem "flash" (brilhar) quando você pressiona o botão A em um dos micro:bits.
  • Quando cada micro:bit recebe a mensagem, eles esperam uma quantidade de tempo aleatório entre 50 e 350 milissegundos. Em seguida, o visor LED brilha e vai escurecendo gradualmente para imitar o brilho de um vaga-lume.
  • Logo depois, um número aleatório entre 0 e 9 é gerado. Se o número é 0, o micro:bit envia sua própria mensagem de rádio "flash", desencadeando o brilho em outros micro:bits vaga-lumes. Então há uma chance em cada dez de acender mais luzes em outros micro:bits.
  • Você pode usar uma combinação de micro:bits antigos e novos, mas todos devem estar equipados com as versões do MakeCode ou do Python. (A comunicação por rádio funciona de forma ligeiramente diferente em cada linguagem de programação. Programas MakeCode não podem se comunicar via rádio com programas Python e vice-versa.)

Do que você precisa:

  • Pelo menos 3 micro:bits: quanto mais melhor;
  • Conjunto de baterias (opcional).

Passo 2: É hora de programar

Passo 3: Vamos torná-lo ainda melhor

  • Altere a imagem exibida quando a tela piscar;
  • Modifique o código para aumentar ou diminuir as chances de ativar o modo vaga-lume em outros micro:bits. O intervalo de números aleatórios pode corresponder ao número de micro:bits que você tem: aumente a probabilidade se você não estiver usando muitos micro:bits;
  • Crie grupos menores de vaga-lumes usando grupos de rádio diferentes. Dessa maneira, apenas os micro:bits com o mesmo número de grupo poderão se comunicar uns com os outros.
  • Tente mudar a intensidade do sinal de rádio.
    Use o bloco "radio set transmit power" no MakeCode.
    No Python, use o radio.config(power=7)
    Escolha um número entre 0 (sinal de rádio mais fraco) e 7 (sinal mais forte).
    Qual é o efeito ao mudar a intensidade do sinal de rádio?