Primeiro passo: o projeto
O que é?
Um alarme sem fio para avisar quando alguém abrir ou deixar uma porta aberta.
Como fazer
- Você precisará de dois micro:bits com códigos diferentes em cada um. Um micro:bit atua como transmissor de rádio e o outro como receptor de rádio.
 - Prenda o transmissor micro:bit e a bateria no canto de uma moldura de porta e prenda um ímã próximo a ele no canto de uma porta.
 - Coloque o receptor micro:bit em qualquer lugar próximo.
 - Se o alarme não funcionar como esperado, talvez seja necessário alterar o número da força magnética no código do transmissor. Pressionar o botão A mostra a leitura atual da força magnética. Use isso para decidir o número limite, fazendo leituras com a porta aberta e fechada.
 
Como funciona:
- O programa transmissor usa o micro:bit bússola (magnetômetro) sensor de entrada e um loop para medir a força do campo magnético a cada dois segundos.
 - Ele usa seleção portanto, quando a intensidade do campo magnético cai abaixo de um determinado nível (o limiar), ele envia um sinal de rádio 'aberto'. Se a leitura do magnetismo estiver acima do limite, ele enviará o sinal “fechado”.
 - Quando o receptor micro:bit recebe o sinal “aberto”, uma cruz aparece em seu visor de LED e um alarme sonoro é emitido. Quando recebe o sinal “fechado”, um tique aparece em seu visor de LED e nenhum som é reproduzido.
 
Itens necessários:
- dois micro:bits e pelo menos um conjunto de baterias
 - Um imã;
 - Algumas fitas dupla-face ou algo similar para fixar um ímã em uma porta e um micro:bit no batente da porta;
 - se você tem um micro:bit V1 e quer ouvir um alarme audível, fones de ouvido opcionais, campainha ou alto-falante e clipe de crocodilo leva a anexá-los
 
Segundo passo: é hora de programar
Sensor / transmissor:
1from microbit import *
2import radio
3radio.config(group=17)
4radio.on()
5
6while True:
7    if button_a.was_pressed():
8        display.scroll(compass.get_field_strength())
9    if compass.get_field_strength() < 100000:
10        display.show(Image.DIAMOND_SMALL)
11        radio.send('open')
12    else:
13        display.clear()
14        radio.send('closed')
15    sleep(2000)
16Alarme / receptor:
Terceiro passo: vamos deixar o código ainda melhor
- Use vários micro:bits para rastrear o status de portas diferentes: envie mensagens de rádio diferentes, como "porta dos fundos aberta";
 - Use uma variável para medir quanto tempo as portas ficam abertas. Será que isso poderia ajudá-lo a economizar a energia utilizada no aquecimento?
 
This content is published under a Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) licence.


