Índice:

Carro RC IoT com controle remoto ou gateway de lâmpada inteligente: 8 etapas (com imagens)
Carro RC IoT com controle remoto ou gateway de lâmpada inteligente: 8 etapas (com imagens)

Vídeo: Carro RC IoT com controle remoto ou gateway de lâmpada inteligente: 8 etapas (com imagens)

Vídeo: Carro RC IoT com controle remoto ou gateway de lâmpada inteligente: 8 etapas (com imagens)
Vídeo: Policia brasileira x polícia Russa quem ganha #shorts 2024, Dezembro
Anonim
Image
Image
Carro IoT RC com controle remoto ou gateway de lâmpada inteligente
Carro IoT RC com controle remoto ou gateway de lâmpada inteligente
Carro IoT RC com controle remoto ou gateway de lâmpada inteligente
Carro IoT RC com controle remoto ou gateway de lâmpada inteligente

Para um projeto não relacionado, eu estava escrevendo um código do Arduino para falar com as lâmpadas inteligentes MiLight e controles remotos de lâmpadas que tenho em minha casa.

Depois de conseguir interceptar comandos dos controles remotos sem fio, decidi fazer um pequeno carro RC para testar o código. Acontece que os controles remotos de 2,4 GHz usados nessas lâmpadas têm um anel de toque 360 para selecionar tons e funciona surpreendentemente bem para dirigir um carro RC!

Além disso, usando o gateway MiLight ou o hub ESP8266 MiLight, você pode controlar o carro de um smartphone ou qualquer dispositivo conectado à Internet!

Etapa 1: A Origem deste Projeto

Este projeto é baseado em uma linha de lâmpadas inteligentes sem fio que chegou ao mercado há alguns anos. Eles foram inicialmente vendidos como LimitlessLED, mas desde então estão disponíveis com nomes alternativos, como EasyBulb ou MiLight.

Embora essas lâmpadas sejam frequentemente vendidas como sendo compatíveis com WiFi, elas não têm recursos de WiFi e, em vez disso, dependem de um gateway que recebe comandos enviados via WiFi e os traduz em um protocolo sem fio proprietário de 2,4 GHz. Se você obtiver um gateway, as lâmpadas podem ser controladas a partir de um aplicativo de smartphone, mas se não tiver, ainda poderá controlar essas lâmpadas usando controles remotos sem fio independentes.

Essas lâmpadas e os controles remotos são proprietários, mas tem havido esforços para fazer engenharia reversa dos protocolos e construir alternativas de código aberto para o gateway WiFi. Isso permite algumas possibilidades interessantes, como usar os controles remotos para seus próprios projetos Arduino, conforme demonstrado neste Instructable.

Etapa 2: obtendo o controle remoto correto

Obtendo o controle remoto certo
Obtendo o controle remoto certo

As lâmpadas e controles remotos MiLight nunca foram feitos para serem abertos e, portanto, não há documentação oficial sobre os protocolos. Houve várias gerações diferentes de lâmpadas e elas definitivamente não são intercambiáveis.

Este projeto faz uso do controle remoto para um dos quatro tipos de lâmpadas disponíveis e saber distinguir visualmente os tipos ajudará na compra do controle remoto certo. Os quatro tipos são:

  • RGB: essas lâmpadas têm matiz e brilho controláveis; o controle remoto tem uma roda de cores e três botões de alternância brancos.
  • RGBW: Essas lâmpadas permitem escolher entre um matiz e um único tom de branco; o controle remoto tem uma roda de cores, um controle deslizante de brilho, três botões de efeitos amarelos e quatro botões de alternância de grupos amarelos.
  • CCT: Essas lâmpadas são apenas de luz branca, mas permitem que você as varie de um branco quente para um branco frio; o controle remoto tem um anel de controle preto e botões brancos.
  • RGB + CCT: As lâmpadas podem mostrar cores e variar de branco quente a branco frio; o controle remoto é o mais desordenado dos quatro e pode ser distinguido por um controle deslizante de temperatura de cor, alguns botões estranhos em forma de crescente e uma barra de luz azul em torno das bordas.

Este projeto foi feito com o controle remoto RGBW e só funcionará com esse tipo de controle. Se você quiser tentar fazer este projeto sozinho, certifique-se de obter o controle remoto correto, pois eles definitivamente não são intercambiáveis *

AVISO LEGAL: * Além disso, não posso garantir absolutamente que este projeto funcionará para você. É possível que o pessoal da MiLight tenha alterado o protocolo usado no controle remoto RGBW desde que comprei o meu há vários anos. Como isso causaria incompatibilidades entre seus produtos, suspeito que seja improvável, mas o risco existe.

Etapa 3: usando com um gateway WiFi e smartphone

Usando com um gateway WiFi e smartphone
Usando com um gateway WiFi e smartphone
Usando com um gateway WiFi e smartphone
Usando com um gateway WiFi e smartphone

Se você tem um gateway MiLight WiFi, oficial ou o DIY ESP8266 MiLight Hub, você também pode controlar o carro usando o aplicativo para smartphone MiLight em um telefone ou tablet.

Embora o protocolo de rádio usado pelas lâmpadas MiLight não seja compatível com WiFi, o hub funciona como uma ponte entre uma rede WiFi e a rede MiLight. O buggy RC se comporta como uma lâmpada, então adicionar a ponte abre a interessante possibilidade de controlar o buggy RC a partir de um smartphone ou PC via pacotes UDP.

Etapa 4: Outros componentes

Outros Componentes
Outros Componentes

Três dos componentes vieram do SparkFun Inventor's Kit v4.0, incluindo:

  • Motorredutor Hobby - 140 RPM (par)
  • Roda - 65 mm (pneu de borracha, par)
  • Sensor de distância ultrassônico - HC-SR04

O sensor de distância não é usado no meu código, mas eu o coloquei no meu bugre porque parece legal como faróis falsos, além disso, imaginei que poderia usá-lo mais tarde para adicionar alguns recursos de prevenção de colisão.

Os outros componentes são:

  • Rodízio de bola de metal omnidirecional
  • Um Arduino Nano
  • Arduino Nano escudo de rádio RFM69 / 95 ou NRF24L01 +
  • Um driver de motor L9110 do eBay
  • Cabos de ligação macho para fêmea

Você também precisará de um suporte para 4 pilhas AA e pilhas. Minhas fotos mostram um suporte de bateria impresso em 3D, mas você precisará comprar os terminais de mola separadamente e provavelmente não vale a pena o esforço!

Você também precisará de uma impressora 3D para imprimir o chassi (ou você pode moldá-lo em madeira, não é muito complicado).

Uma palavra de cautela:

Usei um clone barato do Arduino Nano e descobri que ele ficava muito quente durante o funcionamento do carro por um período significativo de tempo. Suspeito que isso seja porque o regulador de 5 V no clone barato está subestimado e não pode fornecer a corrente necessária para o rádio sem fio. Eu medi que o Arduino e o rádio consomem apenas 30mA, o que está bem dentro das especificações do regulador de tensão em um Arduino Nano genuíno. Portanto, se você evitar os clones, suspeito que não terá problemas (avise-me nos comentários se descobrir o contrário!).

Etapa 5: Testar o Arduino e o remoto

Testando o Arduino e o remoto
Testando o Arduino e o remoto
Testando o Arduino e o remoto
Testando o Arduino e o remoto

Antes de montar o buggy RC, é uma boa ideia verificar se o controle remoto pode se comunicar com o Arduino por meio do módulo de rádio.

Comece empilhando o Arduino Nano sobre o escudo de RF. Se o conector USB estiver voltado para a esquerda na parte superior, o PCB sem fio deve estar voltado para a direita na parte inferior.

Agora, conecte o Arduino Nano em seu computador usando um cabo USB e carregue o esboço que incluí no arquivo zip. Abra o monitor serial e aperte um botão no controle remoto. A luz deve acender no controle remoto (se não, verifique as baterias).

Se tudo correr bem, você deverá ver algumas mensagens na janela do terminal cada vez que pressionar um botão. Passe o dedo ao redor da roda de toque de cores e observe os valores de mudança de "Hue". É isso que vai dirigir o veículo!

Certifique-se de que esta etapa funcione, já que não adianta continuar se não funcionar!

Etapa 6: impressão e montagem do chassi

Impressão e montagem do chassi
Impressão e montagem do chassi

Incluí os arquivos STL para as peças impressas em 3D. Para os arquivos CAD, você pode olhar aqui. Existem três partes, um suporte do motor esquerdo e direito e o chassi.

Os suportes esquerdo e direito do motor podem ser fixados aos motores com parafusos para madeira. Em seguida, os suportes do motor são presos ao chassi usando porcas e parafusos M3 (ou cola, se preferir). O rodízio se conecta à frente do chassi usando quatro parafusos e porcas.

Etapa 7: Adicionando os eletrônicos

Adicionando a Eletrônica
Adicionando a Eletrônica
Adicionando a Eletrônica
Adicionando a Eletrônica

Aparafuse a chave de passo no chassi e prenda os fios dos motores aos terminais de parafuso da chave. Usei a seguinte fiação:

  • Motor esquerdo vermelho: OB2
  • Motor esquerdo preto: OA2
  • Motor direito vermelho: OB1
  • Preto do motor direito: OA1

Execute a alimentação do lado positivo das baterias para o Vcc na PCB do driver de passo e Vin no Arduino. Passe o lado negativo das baterias para o GND no GND no Arduino. Você precisará soldar um cabo em Y para fazer isso.

Finalmente, conclua a eletrônica usando fios de jumper para conectar os seguintes pinos no Arduino ao driver do motor de passo:

  • Arduino pino 5 -> Stepper Driver IB1
  • Arduino pino 6 -> Stepper Driver IB2
  • Arduino pin A1 -> Stepper Driver IA1
  • Arduino pino A2 -> Stepper Driver IA2

Etapa 8: Testando o Robô

Agora, aperte os botões e veja se o robô se move! Se os motores parecerem invertidos, você pode ajustar a fiação no robô ou simplesmente editar as seguintes linhas no esboço do Arduino:

L9110 à esquerda (IB2, IA2); L9110 à direita (IA1, IB1);

Se os motores esquerdo e direito precisarem ser trocados, troque os números entre parênteses, como:

L9110 à esquerda (IB1, IA1); L9110 à direita (IA2, IB2);

Para inverter apenas a direção do motor esquerdo, troque as letras entre parênteses para o motor esquerdo, da seguinte forma:

L9110 à esquerda (IA2, IB2);

Para inverter a direção do motor direito, troque as letras entre parênteses para o motor direito, da seguinte forma:

L9110 à direita (IB1, IA1);

Isso é tudo! Boa sorte e divirta-se!

Recomendado: