Índice:

Abridor de porta de garagem para iPhone e Arduino: 8 etapas
Abridor de porta de garagem para iPhone e Arduino: 8 etapas

Vídeo: Abridor de porta de garagem para iPhone e Arduino: 8 etapas

Vídeo: Abridor de porta de garagem para iPhone e Arduino: 8 etapas
Vídeo: Como ABRIR o Portão pelo Celular ou por voz de onde estiver. #CasaInteligente #AutomaçãoResidencial 2024, Novembro
Anonim
Abridor de porta de garagem IPhone e Arduino
Abridor de porta de garagem IPhone e Arduino

Costumo seguir muitos instructables tecnológicos e sempre fico surpreso com as coisas que as pessoas inventam. Um tempo atrás, encontrei um instrutível em um abridor de porta de garagem wi-fi que achei muito legal e adicionei-o à minha lista interminável de projetos divertidos. Avançando para o presente, eu ainda não tinha chegado ao projeto. Mas eu tive um bebê (bem, minha esposa teve, eu não). Meus sogros foram gentis o suficiente para oferecer cuidados de 5 dias em minha casa (sim, eu sou mimada), mas eles me imploraram para dar a eles um clicker da porta da garagem para manter em seus carros, em vez de ter que usar o teclado temperamental fora da garagem. Então, duas opções estão diante de mim. Use os cinco minutos para reprogramar o clicker para minha garagem. Ou leve algumas semanas para finalmente trabalhar no projeto do abridor de porta da garagem. E assim, bingo-bango, nasceu o meu instrutível.

Voltei para a postagem original e gostei de muitos recursos de hardware que o autor usou, mas o software não é exatamente o que eu queria. Portanto, a solução que eu desejava precisava ter as seguintes características:

  • Não exigia uma senha
  • Só deve funcionar quando conectado à LAN da minha casa
  • Aplicativo personalizado no meu iPhone para controlá-lo
  • Use um Arduino com um escudo ethernet ou wi-fi
  • Torne-o à prova de leis

Etapa 1: O que você precisa

O que você precisa
O que você precisa
O que você precisa
O que você precisa
O que você precisa
O que você precisa

"carregando =" preguiçoso "meu código foi escrito e carregado tanto para o Arduino quanto para o iPhone, era hora de depurar. Como eu ainda não tinha tudo conectado à minha garagem, queria imitar seu comportamento de alguma forma. Coloque os LEDs.

Peguei dois LEDs vermelhos e dois verdes conectados como mostrado em uma foto anterior. Um conjunto de verde e vermelho representaria a porta esquerda e o conjunto restante para a porta direita. Se qualquer uma das portas estivesse fechada, a luz verde piscaria sem parar. Caso contrário, se alguma porta estivesse aberta, a luz vermelha piscaria. Eu escolhi o estado inicial das portas a serem fechadas (luzes verdes piscando) porque quando eu conectar o Arduino pela primeira vez ao abridor, vou garantir que as portas estejam fechadas.

Para ver como funciona, você pode assistir ao vídeo curto (resolução ruim - desculpe!) Dele em ação. Voila! Funciona até agora!

Etapa 7: Conectando-o

Como minha impressora 3D está em manutenção, ainda não tive a chance de imprimir um caso. O instrutível anterior no qual baseei este possui arquivos.stl disponíveis para download. (Observação: se você planeja usar os arquivos.stl, as unidades estão em cm, após corresponder com o autor. Tive de dimensionar meus arquivos.stl por um fator de 10, pois minha impressora funciona em unidades de mm). Terei que modificar o projeto, pois tenho duas portas e, portanto, preciso de dois relés. Mas, como estou ansioso para conectar tudo, comecei a montar os componentes eletrônicos em um pedaço de madeira que tinha por aí. Portanto, não estarei apresentando o produto acabado absoluto neste instrutível.

Depois que a parte eletrônica foi montada no pedaço de madeira que eu tinha, foi simples encontrar um lar temporário para ele na parede. Nas fotos, você pode ver um pouco de confusão de fios indo do roteador para o Arduino, do Arduino para o relé e, finalmente, do relé para os botões da porta da garagem. Quando eu tirei o botão real e desparafusei a caixa da parede, havia apenas dois terminais de fio. Então, assim como o instrutível que usei para basear o meu, você pode conectar os fios do relé em qualquer ordem aos terminais do botão da porta.

Depois disso, toda a configuração funcionou magicamente à primeira vez! Desculpe por não postar um vídeo. Tive que retirá-lo temporariamente antes de capturar um vídeo dele funcionando, mas juro que conseguiu!

Etapa 8: Considerações Finais

Depois de brincar um pouco com isso, percebi alguns problemas que mencionarei a seguir. Eles são importantes, portanto, considere-os antes de decidir duplicar este projeto.

  • Havia alguma latência inconsistente entre apertar o botão do iPhone e fazer com que as portas da garagem respondessem. Pode ser um bug de software ou implementação, mas ainda estou explorando.
  • Um grande problema: depois de carregar o aplicativo no aplicativo do iPhone, percebi que depois de alguns dias, quando tentava abrir o aplicativo, ele simplesmente voltava para a tela inicial. Este foi um comportamento consistente. Depois de vasculhar meu cérebro um pouco, finalmente desisti e postei a pergunta no stackoverflow. A resposta de um colega parecia estar correta: O império do mal em que a Apple se tornou decidiu que, se você não é um desenvolvedor, o certificado de confiança que você obtém do Xcode para seu aplicativo recém-desenvolvido é válido por apenas 1 semana. Depois disso, ele não funcionará no seu iPhone a menos que você o reinstale (e a contagem regressiva de 1 semana seja redefinida) ou você pague uma taxa de US $ 99 por um certificado mais longo. Achei isso completamente desanimador. Quase como se tivesse perdido meu tempo. Mas se você for um desenvolvedor, isso não será um problema para você.
  • Um pensamento que me ocorreu foi se alguém pressiona manualmente o botão da porta da garagem, esse evento não é capturado no código do Arduino. Portanto, no que diz respeito ao Arduino, o estado da porta permanece inalterado antes de o botão ser pressionado. Além disso, se alguém estava parado embaixo da porta quando outra pessoa estava usando o aplicativo para fechá-la. Os sensores da porta forçarão a porta a subir novamente e este evento, também, não é capturado no código do Arduino. Desnecessário dizer que este é outro ponto a ser descoberto.

Então, obrigado por me tolerar e mais uma vez peço desculpas por alguns dos erros de comportamento. Por favor, deixe-me saber se você tiver dúvidas!

Recomendado: