Skip to content

Atividade

Sound insulation meter

Intermédio | MakeCode, Python | Microfone, Rádio | A trabalhar cientificamente, Comunicação, Medições, Seleção, Variáveis

Passo 1: Faz tu mesmo

O que é isto?

Usa dois BBC micro:bit para medir os níveis de som numa investigação de Ciências sobre as propriedades de isolamento sonoro de diferentes materiais.

Introdução

Guia do código

Neste projeto, vais usar tecnologia para transformar os micro:bit em ferramentas que te ajudam a fazer uma experiência de Ciências.

It uses two micro:bits and a sound source to test the sound insulating properties of different materials. So you can read the sound level measurements even when the sensor is covered, it transmits sound measurements by radio to a receiver micro:bit placed nearby.

Podes transferir os diferentes códigos (abaixo) para os micro:bit transmissor e recetor, ou podes programar tu mesmo e aprender como funciona no vídeo de programação acima.

O micro:bit transmissor, que tem de ser um micro:bit V2, é o sensor de som que vais envolver em diferentes materiais. It uses its microphone to measure sound levels and then sends them by radio.

Diagram showing the location of the microphone inlet to the right of the touch logo on the micro:bit V2

Make sure that materials you want to test are not touching or moving against this, as this may affect your sound level readings. You may find it helpful to place the sensor micro:bit inside a cardboard box lined with different materials, for example.

Sound source

Place a sound source a fixed distance from the sensor. This can be anything, such as a musical instrument that makes a sound at consistent volume, or a mobile phone ring tone. Também disponibilizámos um ficheiro de áudio abaixo que podes reproduzir num telemóvel ou computador.

Ter a fonte de som a produzir sons com o mesmo volume e à mesma distância do sensor garante que é um teste justo.

Receptor

The receiver micro:bit is where you view the sound level readings. Podes colocá-lo em qualquer lugar a poucos metros do transmissor.

Iniciar a experiência

  • Wrap the transmitter / sensor in the material you want to test.
  • Carrega no botão de reset na parte de trás do micro:bit recetor quando começares cada teste para repor o nível de som em 0. Keep very quiet!
  • Faz o som com a tua fonte de som.
  • Press button A on the receiver to view the sound level on the LED display. Isto é mostrado numa escala de 0 (o mais baixo/silencioso) a 255 (o mais alto). It shows the maximum sound level measured since you pressed the reset button.
  • Anota o número na nossa folha de registo de dados ou numa folha de papel.
  • Repete a experiência, envolvendo o transmissor / sensor em diferentes materiais.
  • Depois, podes analisar os teus dados para tirar conclusões sobre quais os materiais que isolam melhor o som.

Do que é que precisas

  • Dois micro:bits. (O transmissor tem de ser um micro:bit V2, mas o recetor pode ser um micro:bit V1 ou V2.)
  • At least one battery pack (recommended for the transmitter)
  • Uma fonte de som constante
  • Different materials to test, for example foam, bubble wrap, cardboard, and paper. Também pode ser útil uma pequena caixa de cartão.
  • Sticky tape or rubber bands to keep the materials in place
  • A ruler or tape measure to measure a fixed distance between the sound source and transmitter
  • Folha de registo de dados ou papel e lápis

Supporting resources

A folha de registo de dados pode ser usada para anotar as tuas medições, e o ficheiro de som pode ser reproduzido a partir de um telemóvel ou computador para ser usado como fonte de som.

Data recording sheet

Passo 2: Cria o teu código

1from microbit import *
2import radio
3
4
5radio.config(group=1)
6radio.on()
7
8while True:
9    # turn the sound level into a string so we can send it over radio
10    radio.send(str(microphone.sound_level()))
11    sleep(200)
12    

Receptor

1from microbit import *
2import radio
3
4
5radio.config(group=1)
6radio.on()
7max = 0
8
9while True:
10    if button_a.was_pressed():
11        display.scroll(max)
12    sound_level = radio.receive()
13    if sound_level:
14        if int(sound_level) > max:
15            max = int(sound_level)
16            

Multiple experiments in the same room

Se precisares de realizar várias experiências na mesma sala, cada par de micro:bits terá de ter o seu próprio número de grupo de rádio único. Modify the code to change radio group number. Podes usar qualquer número de grupo de rádio entre 0 e 255, garantindo que os números de cada par de micro:bits são iguais.