Índice:

InfoBell: 3 etapas
InfoBell: 3 etapas

Vídeo: InfoBell: 3 etapas

Vídeo: InfoBell: 3 etapas
Vídeo: பாப்பா பாட்டு | Tamil Rhymes for Children | Infobells 2024, Novembro
Anonim
Image
Image
InfoBell
InfoBell
InfoBell
InfoBell

Passo muito tempo na minha pequena oficina no final do meu jardim.

Tenho uma campainha sem fio com um repetidor na minha oficina. Estou progredindo um pouco, então posso levar cerca de 30 segundos para chegar à porta da frente se alguém tocar a campainha. Quando chego lá, o entregador já está batendo na porta do vizinho para deixar um pacote e conseguir uma assinatura.

Meu InfoBell diz aos chamadores que estarei com eles em 30 segundos (configurável pelo usuário) ou os avisa se eu estiver de outra forma engajado / fora!

Eu queria que a campainha funcionasse a bateria e fosse totalmente independente. As mensagens exibidas deveriam ser configuráveis pelo usuário e extremamente fácil de mudar da mensagem IN para OUT.

Eu uso o bluetooth com um aplicativo de telefone Android do MIT App inventor para programar as mensagens.

Os botões para inicializar as comunicações Bluetooth e definir as mensagens IN / OUT estão localizados na parte inferior do dispositivo. A função necessária é selecionada pressionando o botão relevante e pressionando o botão da campainha da porta principal.

Esses botões só ficam ativos quando a porta está aberta! Se a porta está aberta ou fechada é determinado pelo uso de uma bússola digital (QMC5883) e alguma trigonometria. Devo confessar que tive que usar o Google para obter ajuda aqui, pois já faz um tempo (cerca de 46 anos) desde que sentei em uma sala de aula!

Eu poderia ter codificado as leituras do QMC5883, mas imaginei que, se alguém decidisse fazer este projeto, as chances de sua porta estar na mesma direção que a minha eram razoavelmente pequenas!

O único botão que está ativo se a porta estiver fechada é o que define a informação 'porta fechada'.

Etapa 1: Problemas a serem superados

Problemas para Superar
Problemas para Superar
Problemas para Superar
Problemas para Superar
Problemas para Superar
Problemas para Superar

Tive três dificuldades.

O primeiro foi sincronizar o toque da campainha real e o botão para inicializar o arduino e a tela.

Tentei muitos métodos de 2 interruptores e micro interruptores, mas eles não eram confiáveis, então, eventualmente, optei por um relé DP.

O próximo problema foi com a campainha sem fio em si. Funcionou bem sem verso na caixa impressa em 3D, mas não quis cooperar quando foi instalado na porta da frente! Minha solução foi ter uma seção da capa traseira com cerca de 1 mm de espessura - isso resolveu o problema!

O problema final a ser superado era espremer todos os componentes em uma caixa de tamanho razoável!

Etapa 2: os componentes, a construção e como funciona

Os componentes, a construção e como funciona
Os componentes, a construção e como funciona
Os componentes, a construção e como funciona
Os componentes, a construção e como funciona
Os componentes, a construção e como funciona
Os componentes, a construção e como funciona

Para um dispositivo tão simples, usei o seguinte !!

Caixa e botão impressos em 3D

1 x SSD1306 display OLED

1 x QMC5883

1 x escudo bluetooth

1 x relé de pólo duplo

1 x relé de travamento automático

5 x interruptor tátil de montagem PCB

2 pilhas 3v

1 x campainha original

1 x diodo

1 x transistor pnp

Eu tive que fazer um "ninho de pássaros" na fiação para garantir que houvesse espaço suficiente para espremer todos os componentes na caixa - não é o projeto mais legal que eu já fiz!

Usei 2 baterias de 3v com diodo para diminuir um pouco o fornecimento.

A campainha original vinha com bateria de 12v.

Quando o botão da campainha da porta é pressionado, os contatos do relé fecham e operam a campainha original, configurando simultaneamente o relé de travamento automático que fornece 5v para o Arduino, escudo Bluetooth e QMC5883.

Quando o Arduino faz seu trabalho, o pino 12 é pulsado baixo, o que reinicializa o relé de travamento (por meio de um transistor) removendo a alimentação.

Quando o dispositivo é conectado pela primeira vez à porta FECHADA, o botão conectado ao pino 4 do Arduino é pressionado enquanto o botão da campainha é pressionado. Isso fornece energia para o Arduino e lê a orientação do QMC5883 e armazena o valor no eeprom. Consulte a página do software e o esboço do Arduino para saber como isso funciona.

Os outros 3 botões agora só funcionarão quando a porta não estiver nesta posição, ou seja, fechada.

Para definir as mensagens e a contagem regressiva, o botão conectado ao pino 7 é pressionado enquanto a campainha principal é pressionada E a porta está aberta, isso inicia a rotina do bluetooth. As configurações são inseridas por meio do aplicativo Mit App Inventer. O aplicativo salva os detalhes automaticamente e os armazena no eeprom do Arduino.

Para definir a mensagem IN / OUT, os botões conectados aos pinos 5 ou 6 do Arduino são pressionados enquanto o botão da campainha da porta principal é pressionado E a porta está aberta.

Dependendo de qual botão é pressionado, o endereço eeprom 0 é definido ou redefinido. Há um limite para a quantidade de leituras / gravações que o eeprom do Arduino irá tolerar. De acordo com a maioria das referências, o limite é de cerca de 100.000, o que significa que se o eeprom for escrito 4 vezes por dia, deve levar cerca de 55 anos ou mais antes que os problemas possam surgir.

Etapa 3: o software

O software para o esboço do Ardiuno está muito bem documentado pelos meus padrões!

Para garantir que haja dados razoáveis no eeprom, descomente o seguinte e compile.

Após a compilação, reaplique os marcadores de comentário e compile novamente.

EEPROM.begin (); / *

outone = "0";

outtwo = "1";

outthree = "2";

outfour = "3)";

inone = "0";

intwo = "1";

intrês = 10;

*/

Quando o projeto finalizado estiver montado na porta, com a porta fechada, pressione e segure o botão conectado ao pino 4 do Arduino e pressione a campainha. Uma mensagem confirmará sua ação.

Isso armazena os valores lidos da bússola digital na eeprom do Arduino.

A função 'diffy' determina se a porta está aberta ou fechada.

void diffy (int froma, int toa)

{

int diff;

diff = froma - toa;

diff = (diff + 180)% 360;

if (diff <= 0)

{

diff + = 180;

}

outro

{

diff - = 180;

}

Em seguida, carregue o bluetooth. APK em um telefone celular. Com a porta ABERTA, pressione e segure o botão conectado ao pino 7 do Arduino e pressione a campainha. A unidade será ligada no modo bluetooth. Emparelhe o módulo BT com o seu telefone, preencha as informações necessárias e envie para a campainha.

A campainha permanecerá ligada até receber algumas informações do telefone.

Quando as informações forem enviadas para a campainha, o aplicativo irá reter as informações. Portanto, se você quiser fazer alguma alteração, não precisa digitar novamente todo o texto.

O APK pode ser encontrado no seguinte endereço.

ai2.appinventor.mit.edu/#5902371463495680

Por razões de segurança, seu telefone deve solicitar que você verifique se deseja instalar este aplicativo. No meu telefone, há uma configuração chamada 'Instalar aplicativos desconhecidos'.

Recomendado: