Skip to content

Atividade

Pirilampos

Avançado | MakeCode, Python | Ecrã LED, Rádio | Aleatoriedade, Comunicação, Seleção

Passo 1: Faz tu mesmo

Transforme um conjunto de micro:bits em um enxame mágico de pirilampos usando comunicação de rádio

um conjunto de micro:bits ativando um ao outro por rádio para brilhar rapidamente

O que é que vais aprender

  • como usar a comunicação de rádio entre micro:bits para acionar eventos
  • que o visor LED do micro:bit pode se tornar mais brilhante e escuro
  • como usar números aleatórios e chance de imitar o comportamento do mundo real

O que é isto?

Os pirilampos são insetos que usam bioluminescência (leve feita em seus corpos) para se comunicar entre si.

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

Carregue o programa em pelo menos três micro:bits na mesma sala. Pressione o botão A em qualquer micro:bit e você deve ver um enxame de micro:bits iluminando a medida que eles recebem uma mensagem de rádio. Ele funciona melhor em uma sala escura com muitos micro:bits.

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

Quando eventualmente as luzes acabarem de piscar, pressione o botão A em qualquer micro:bit para reiniciar o enxame da comunicação.

Como é que funciona

  • O programa usa comunicação de rádio para enviar uma mensagem 'flash' quando você pressiona o botão A em um dos micro:bits.
  • Quando cada micro:bit recebe a mensagem, ela espera uma quantidade aleatória de tempo entre 50 e 350 milissegundos. Então faz o LED brilhar e então escurece gradualmente para imitar o brilho de um pirilampo.
  • Em seguida, gera um número aleatório entre 0 e 9. Se o número é 0, então envia sua própria mensagem de rádio 'flash', ativando mais micro:bit pirilampos para brilhar. Então tem uma chance em cada dez de ativar mais brilhos em outros micro:bits.
  • Você pode usar uma mistura de micro:bits antigos e novos, mas todos devem ter versões do MakeCode ou do Python nelas. (Comunicação por rádio funciona de forma ligeiramente diferente em cada linguagem de programação. Programas MakeCode não podem se comunicar pelo rádio com os programas Python e vice-versa.)

Do que é que precisas

  • pelo menos 3 micro:bits, quanto mais melhor
  • suporte de pilhas do micro:bit (opcional)

Passo 2: Cria o teu código

Passo 3: Melhora-o

  • Alterar a imagem exibida quando a tela piscar
  • Modifique o código para torná-lo mais ou menos provável de acionar outro evento flash em outros micro:bits. O intervalo de números aleatórios pode corresponder ao número de micro:bits que você tem: aumentar a probabilidade de você ter menos micro:bits
  • Fazer grupos menores de pirilampos usando diferentes grupos de rádio. Apenas os micro:bits com o mesmo número de grupo poderão se comunicar um com o outro.
  • Tente mudar a potencia do sinal de rádio.
    Use o bloco 'opção de potencia de transmissão de radio' no MakeCode.
    Em Python use radio.config(power=7)
    Escolha um número entre 0 (sinal de rádio mais fraco) e 7 (mais forte).
    Qual é o efeito de mudar a potencia de rádio?