Índice:
- Suprimentos
- Etapa 1: O Fluxo Geral
- Etapa 2: Configurando o Ambiente
- Etapa 3: Definir os cenários Integromat para discagem rápida
- Etapa 4: O Painel Blynk
- Etapa 5: Painel Adafruit IO
- Etapa 6: Hardware (a parte divertida!)
- Etapa 7: O Código
- Etapa 8: Configurando o sistema em seu carro
- Etapa 9: Aproveite o passeio
2025 Autor: John Day | [email protected]. Última modificação: 2025-01-13 06:58
Introdução
Olá a todos!
Somos dois alunos de ciência da computação do IDC e, como alunos, nos contentamos com veículos medíocres (pelo menos até conseguirmos um emprego). A essa altura, temos a paixão de atualizar nossos destroços para, pelo menos, nos sentirmos bem com o que temos.
Felizmente, participamos de um curso de IoT conduzido por Zvika Markfeld do ForRealTeam e ganhamos as ferramentas necessárias para "manipular nossos destroços".
Iremos guiá-lo através da construção do nosso "kit de cafetão", se você também tiver um naufrágio e quiser torná-lo um cafetão.
Você é mais que bem-vindo para alterar, ajustar e adicionar novos elementos e recursos de seu desejo (e compartilhar, é claro).
Este projeto é dedicado a todos os visualizadores de "Pimp My Ride" e Zvika, nosso incrível instrutor! Obrigado!
Nosso Kit
Construímos nosso kit para as necessidades de que precisávamos para nosso naufrágio:
- Discagem rápida por meio de um controle remoto infravermelho conectado ao volante. Isso permite que o motorista se concentre na estrada e não lide com o telefone enquanto dirige.
- Local de estacionamento por meio de um interruptor reed conectado ao equipamento. Ao mudar para o estacionamento, você receberá um e-mail com as coordenadas de onde seu carro está.
- Nota para mim mesmo, também por meio do interruptor reed. Você pode escrever um bilhete para si mesmo ao entrar no carro e recebê-lo por e-mail assim que estacionar, para não se esquecer de tudo o que possa precisar.
- Iluminação interior glamorosa através de uma matriz de led. Isso vem para nos ajudar quando a iluminação interna está quebrada ou para atualizá-la. Você abre as luzes da matriz através do controle remoto infravermelho e muda suas cores por um sensor piezoelétrico. O sensor piezoelétrico recebe seu sinal por meio de vibrações. Isso permite que você bata no painel e desfrute de um show de luzes deslumbrante - como um arco-íris no escuro!
- Adafruit IO Dashboard exibindo uma indicação se o carro está estacionado no momento e seu último local de estacionamento em um mapa.
Suprimentos
- 1 x placa ESP8266 (usamos Wemos D1 mini)
- 1 x cabo micro USB
- 1 x IR remoto
- 1 x receptor IR
- 2 lâmpadas led (de cores diferentes, se possível)
- 1 x interruptor Reed
- 1 x sensor piezoelétrico
- 1 x Adafruit NeoPixel (8x8)
- 1 x Micro Servo (usamos SG90)
- 1 caneta Stylus ou qualquer outro objeto que responda ao toque com o seu smartphone
- 10 x Cabos Jumper (essa é a quantidade mínima, você provavelmente precisará de mais - bem como cabos de extensão. A quantidade exata depende do tamanho do seu carro e da maneira como você deseja configurar o kit dentro dele)
- 1 x acidente sem esperança de um carro
Etapa 1: O Fluxo Geral
O kit foi projetado para ficar no seu carro. O ESP8266 é conectado ao carregador do carro para obter energia (você também pode usar um banco de energia, se desejar).
Ele também é conectado ao Hot-Spot do seu dispositivo móvel para obter uma conexão de internet via wi-fi.
Nosso kit é projetado para usuários de Android - usuários de iPhone também podem usá-lo, no entanto, a discagem rápida não seria possível com um iPhone.
Etapa 2: Configurando o Ambiente
IDE Arduino
Instale o Arduino IDE.
Instale "drivers" relevantes (sem trocadilho) para as placas ESP8266 em seu IDE Arduino.
Integromat:
Inscreva-se no Integromat.
Baixe o aplicativo Integromat no Google Play.
Blynk:
Baixe o aplicativo Blynk no Google Play.
Inscreva-se no Blynk por meio do aplicativo.
Adafruit IO:
Inscreva-se no Adafruit IO.
Etapa 3: Definir os cenários Integromat para discagem rápida
Em primeiro lugar, em seu aplicativo Integromat, vá para Configurações → Chamadas e permita as ações:
- Preparar chamada telefônica
- Faça Chamada (ligue para qualquer número), como visto na imagem.
Em seguida, vá para o site da Integromat e siga estas etapas fáceis:
- Vá em "Cenários" no menu à esquerda e clique em "Criar novo cenário" no canto superior direito da tela (veja a imagem).
- Escolha os serviços "Webhooks" e "Android" e clique em "Continuar".
- Você será transferido para a tela de criação. Clique no módulo vazio e escolha o serviço Webhooks.
- Escolha o gatilho "Webhook personalizado" e clique em "Adicionar". Dê ao seu Webhook um nome indicativo, como, digamos, "speed_dial_1" (restrições de IP não são necessárias).
- Clique em "Salvar" e um URL aparecerá em azul logo abaixo do nome do seu novo Webhook (veja a imagem). Copie e cole em algum lugar que você se lembre e clique em "OK".
- Clique em "Adicionar outro módulo" (o pequeno semicírculo no lado direito do seu módulo Webhooks).
- Escolha o serviço Android e a ação "Fazer uma chamada".
- No campo "Dispositivo", adicione o seu dispositivo (deve aparecer no menu suspenso, desde que você tenha baixado com sucesso o aplicativo Integromat móvel para o seu dispositivo e conectado à sua conta) e insira um número de telefone de sua escolha em o campo "Número de telefone". Por fim, clique em "OK".
- Repita as etapas 1 a 8 mais uma vez. Lembre-se de dar ao seu novo Webhook um nome diferente (como "speed_dial_2") e inserir um número de telefone diferente (a menos que você queira ligar para a mesma pessoa com 2 botões diferentes … Todos nós temos alguém que amamos tanto!)
Etapa 4: O Painel Blynk
Acesse o aplicativo Blynk.
Crie um novo projeto.
Uma chave de autenticação será enviada ao seu endereço de e-mail - guarde essa chave, é importante!
Agora, siga estas etapas fáceis:
-
Clique no botão pequeno (+) e adicione os seguintes widgets ao seu painel:
- 2 x Webhooks.
- 1 x widget de e-mail.
- 1 x GPS Stream.
- 1 x terminal.
-
Defina o seguinte:
- O fluxo de GPS para o pino virtual V0.
- Os Webhooks para os pinos virtuais V1 e V2, respectivamente.
- O widget de e-mail para o pino virtual V10.
- O terminal para o pino virtual V11.
-
Agora:
- Toque em cada widget Webhook e, no campo URL, insira os URLs do Webhook que você obteve do Integromat (veja a imagem).
- Certifique-se de que o endereço de e-mail no widget de e-mail seja o seu endereço de e-mail correto (é definido por padrão como o endereço que você usou para se inscrever no Blynk) e altere o campo "Tipo de conteúdo" para "texto / simples".
Notas:
- Você começa com 2.000 unidades de energia e cada widget Blynk custa uma certa quantidade de energia. Você pode comprar mais energia e adicionar widgets Webhook adicionais para permitir discagens rápidas adicionais!
- Ignoramos V3-V9 na etapa 2 caso você queira adicionar mais Webhooks.
- Outros ajustes no seu painel, como ajustar a cor do seu Terminal (como fizemos, como você pode ver na imagem), são com você!
- Para obter informações adicionais sobre Blynk, sua seleção diversificada de widgets e alguma documentação muito abrangente e exemplos de uso, verifique este link.
Etapa 5: Painel Adafruit IO
No painel do Adafruit IO, podemos ver 2 detalhes importantes:
- Esteja o carro estacionado ou não
- Local de estacionamento mais recente
É assim que configuramos:
- No site da Adafruit IO, vá até a guia "Feeds" e crie 2 novos feeds: "local" e "estacionado".
- Vá para a guia "Painéis", abra o menu suspenso "Ações" e crie um novo painel. Nomeie-o como quiser e adicione uma descrição, se quiser. Clique em "Criar" e pressione o novo link que foi criado.
- No painel que você acabou de criar, você verá 7 pequenos botões quadrados (veja a imagem). Pressione o botão da tecla amarela e uma janela pop-up será aberta. Copie a string que você vê no campo "Chave ativa" e cole-a em algum lugar de sua memória.
- Agora clique no botão azul "+" e adicione um bloco "Indicador". Escolha o feed "estacionado" e prossiga para a próxima etapa. Digite algum título indicativo, altere as cores de ativação e desativação se desejar e, no menu suspenso "Condições", escolha "=" e defina o valor abaixo dele para "1". Por fim, clique em "Criar Bloco".
- Clique no botão azul "+" novamente e adicione um bloco "Mapa". Escolha o feed de "localização" e prossiga para a próxima etapa. Digite algum título indicativo, escolha quantas horas de história quiser e o tipo de mapa que quiser (na imagem acima usamos "Imagens de satélite", mas todos os tipos funcionam da mesma forma). Por fim, clique em "Criar Bloco".
- Clique no botão de engrenagem verde. Redimensione e reposicione os blocos Indicador e Mapa da maneira que desejar e clique em "Salvar" (o botão "Salvar" aparecerá ao lado dos 7 botões originais).
Você pode deixar seus detalhes de Adafruit IO com alguém de sua confiança, ou até mesmo criar o painel através da conta de um amigo, e eles poderão usar o painel e ver quando seu carro está estacionado e onde.
Etapa 6: Hardware (a parte divertida!)
Iremos conectar o hardware da seguinte maneira:
-
Receptor infravermelho:
- Conecte o VCC a (+) na placa de ensaio.
- Conecte o GND a (-) na placa de ensaio.
- Conecte o pino de sinal ao D2 na placa ESP8266.
-
Servo motor:
- Conecte o VCC (fio vermelho do Servo) a (+) na placa de ensaio.
- Conecte o GND (fio marrom do Servo) a (-) na placa de ensaio.
- Conecte o pino de sinal (fio laranja do Servo) ao D3 em sua placa ESP8266.
-
Interruptor Reed:
- Conecte um dos pinos do Reed-Switch a (-) na placa de ensaio.
- Conecte o outro pino a D4 em sua placa ESP8266.
-
Lâmpadas de LED:
- Conecte a perna curta da 1ª lâmpada LED (usamos uma verde) para (-) na placa de ensaio e a perna longa para D5 em sua placa ESP8266. Esse LED serve como um indicador de que um sinal de infravermelho foi recebido com sucesso pelo sensor infravermelho.
- Conecte a perna curta da 2ª lâmpada LED (usamos uma branca) para (-) na placa de ensaio e a perna longa para D6 em sua placa ESP8266. Esse LED serve como luz de estacionamento - acenderá enquanto você estiver no modo de estacionamento (controlado pelo interruptor reed).
-
Matriz LED:
- Conecte VCC (ou + 5V) a (+) na placa de ensaio.
- Conecte o GND a (-) na placa de ensaio.
- Conecte DIN a D7 em sua placa ESP8266.
-
Sensor piezoelétrico:
- Conecte um dos pinos do sensor a (-) na placa de ensaio.
- Conecte o outro pino a A0 em sua placa ESP8266 (que é o pino de entrada analógica!)
Dicas e recomendações:
- Use quantos cabos de jumper e cabos de extensão forem necessários. Recomendamos usar bastante para permitir o máximo de flexibilidade possível ao configurar o sistema em seu carro.
- No entanto, tenha cuidado para não ficar todo enrolado no processo!
- É um pouco de hardware, então você pode usar as imagens acima como referência.
- Por fim, recomendamos envolver a placa de ensaio e o ESP8266 em algo que torne mais fácil carregá-lo até o carro e também protegê-lo em viagens acidentadas. Como você pode ver, nós construímos pessoalmente uma caixa de LEGO que a segurou com bastante firmeza, mas muitas outras soluções também poderiam funcionar!
- Certifique-se de que qualquer caixa que você usar tenha aberturas para a passagem de todos os cabos e fios necessários (existem alguns deles).
- Além disso, certifique-se de que as 2 pequenas lâmpadas LED estejam aparecendo para que você possa vê-las (você deve usar cabos de extensão para isso).
Etapa 7: O Código
Você pode baixar o esboço completo abaixo. Fizemos questão de documentar o máximo que pudemos e achamos que é muito fácil de entender; no entanto, se você tiver problemas para entendê-lo, pergunte-nos nos comentários abaixo!
Algumas coisas a serem observadas antes de executar o esboço:
- Vá para Ferramentas → Placa e verifique se você está executando o tipo certo de placa. Se você não vir nenhuma placa ESP8266 no menu suspenso, vá para o Gerenciador de placas e instale a ESP8266 a partir daí. Quando terminar de instalar, vá para Ferramentas → Placa novamente e escolha o seu tipo de placa.
- Certifique-se de inserir o nome e a senha de sua rede WiFi (você usará o Hot-Spot móvel do seu smartphone), bem como seu token de autorização Blynk e o nome de usuário Adafruit IO e digite seus locais apropriados.
- Execute o esboço uma vez, abra o monitor serial (Ferramentas → Monitor serial) e clique nos botões "1", "2" e "OK" em seu controle remoto infravermelho. Verifique os números que você está vendo no monitor serial e certifique-se de que sejam idênticos aos definidos no esboço para seus respectivos botões. Se eles forem diferentes (e poderiam ser), basta alterá-los.
- Nós programamos nosso servo motor para tocar no smartphone a cada 6 segundos. Se você se sentir mais confortável com algum outro intervalo, sinta-se à vontade para fazer as alterações necessárias.
- Você também pode alterar o limite de força que definimos para o sensor piezoelétrico.
Etapa 8: Configurando o sistema em seu carro
Agora que já temos tudo pronto e pronto, só precisamos colocar o sistema no carro (meu Deus !!!).
Recomendamos trazer um monte de cabos de jumper extras e cabos de extensão com você para que você possa fazer alguns ajustes se quiser ao configurar tudo:
- Conecte o controle remoto IR ao volante. Você pode usar elásticos se quiser, mas recomendamos o uso de fita adesiva para torná-la mais resistente e menos sujeita a cair. Agora, conecte o receptor IR em algum lugar do painel onde ele possa receber facilmente um sinal do controle remoto.
- Defina a matriz de LED. Lembre-se, segurança em primeiro lugar - coloque-o em algum lugar que não seja direcionado diretamente aos seus olhos, de forma que não fique cego quando você estiver dirigindo! Nós, por exemplo, o amarramos à ventilação CA com um elástico.
- Prenda a parte independente (sem fio) da chave de palheta à sua alavanca de câmbio e prenda a parte com fio bem na frente da alavanca de câmbio - de forma que a chave seja fechada quando você mudar para estacionar.
- Fixe o sensor piezoelétrico em qualquer lugar que você quiser - a localização é com você. Você pode colocá-lo no painel perto de sua mão para que possa bater junto com a batida de sua música quando estiver na luz vermelha (como fizemos), você pode colocá-lo perto do chão para que sua matriz mude de cor sempre que você acertar um lombada de velocidade, ou em qualquer outro lugar que você quiser!
- Defina o servo. Você tem que ter certeza de colocá-lo com cuidado em algum lugar onde possa tocar em seu smartphone (exigimos muitas tentativas e erros aqui), e com firmeza suficiente para que ele não caia.
Lembre-se de certificar-se de que nenhum cabo de jumper ou extensão se enrosque em sua alavanca de câmbio, ou qualquer outra coisa que possa entrar em seu caminho enquanto dirige !!!
Recomendamos o uso de elásticos e fita adesiva para juntar todos os fios e cabos em tranças e prendê-los em um local seguro.
Etapa 9: Aproveite o passeio
É isso, está tudo pronto
Tome nota das seguintes coisas antes de sair de carro:
- Certifique-se de que o Blynk esteja rodando em segundo plano antes de partir. O sistema não funcionará de outra forma! É melhor ativar o Blynk antes de ligar o veículo. Para ter certeza de que o Blynk está funcionando, aperte o botão pequeno (▶) no canto superior esquerdo do seu painel (como visto na imagem da etapa 4).
- Depois de ligar o carro, envie a si mesmo qualquer lembrete de que precise por meio do terminal Blynk: você pode usá-lo para enviar uma lista de compras para o supermercado, lembre-se de tirar algum pacote do porta-malas ou qualquer outra coisa que você não queira quero esquecer. Você pode enviar vários lembretes se quiser - todos eles serão incluídos no e-mail.
- Certifique-se de que o aplicativo Integromat esteja sendo executado em primeiro plano; a discagem rápida não funcionará de outra forma. O servo o ajudará a garantir que seu smartphone não bloqueie!
- Ao estacionar o carro, você receberá o e-mail com suas coordenadas e, se tiver enviado um lembrete a si mesmo, estará no e-mail também! Se você não o vir em sua caixa de entrada, marque a caixa de spam e você o encontrará. Observe que suas coordenadas de latitude e longitude têm uma precisão de 6 casas decimais - isso é realmente preciso! Você pode inserir essas coordenadas no Google Maps (link fornecido no e-mail) e ver exatamente onde estacionou.
Isso é tudo, pessoal! Obrigado por ler, esperamos que tenha gostado deste Instructable e que goste de construir e usar o seu próprio kit "Pimp My Wreck" (e, por favor, compartilhe ✌)!