Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Manufacturing Technology >> Processo de manufatura

Tanques a laser Leap Motion!

Componentes e suprimentos

LED infravermelho
× 1
Receptor infravermelho
× 1
Arduino UNO
× 1
Raspberry Pi 2 Modelo B
× 1
Módulo RF24
× 1
LED-RGB-Cátodo comum
× 1
Driver de motor de circuito integrado L293D
× 1
Breadboard (genérico)
× 1
Fios de jumpers (genérico)
× 1
Suporte de bateria
× 1
Baterias AA
Baterias NiMH recarregáveis ​​
× 1
Lego Bricks
× 1
Ball Caster Metal - 3/8 "
× 1
Leap Motion Controller
× 1

Sobre este projeto


O objetivo deste projeto era criar um conjunto de tanques robóticos para a batalha onde os operadores tivessem uma sensação mais realista de controlar os veículos usando o controlador Leap Motion. Eu queria criar os tanques do robô de maneira econômica, para que as pessoas pudessem replicar o projeto o mais facilmente possível.

O corpo do tanque é feito de placas e tijolos de Lego genéricos. A fonte de alimentação é um bloco simples de 4 baterias recarregáveis ​​AA. O controlador do tanque é um Arduino Uno R3. "Propulsão" são dois motores DC simples com rodas na parte traseira e um único rodízio na frente usando um único circuito integrado L293D. O "armamento" é uma única luz LED IR e a "armadura" é um conjunto de sensores IR que detectam acertos dos LED IR dos tanques oponentes. O "heads up display" é um único LED multicolorido que informa sobre qualquer ação que ocorra no tanque, incluindo o status da armadura. Finalmente, o "controle" do tanque é feito sem fio por meio de um Raspberry Pi 2 executando NodeJS conectado por meio de um módulo sem fio RF24 com o qual cada tanque também está equipado.

Usando as mãos do operador, o Leap Motion controla o tanque usando o SDK Javascript do Leap Motion. Usando o SDK para detectar o movimento da mão, o javascript se comunica com o servidor NodeJS no Raspberry PI 2, que por sua vez se comunica com o tanque por meio do módulo RF24. Ambas as mãos para frente, o tanque se move para frente. Ambas as mãos para trás, o tanque se move para trás. Mão esquerda para a frente, mão direita para trás, o tanque gira para a direita. Mão direita para a frente, mão esquerda para trás, o tanque vira para a esquerda. Ambas as mãos na posição "nuetral" irão parar o tanque. Uma mão para a frente (esquerda ou direita) enquanto deixa a outra mão "dispara" a arma do tanque.

Aqui está uma rápida demonstração da arma, armadura e display heads up do Tanks.







Usando a armadura avançada omnidirecional e as caixas de papelão como abrigo, Laser Tanks se torna um jogo de caça e evasão.







Etapas de configuração do projeto:

1) Monte os tanques e faça a fiação usando os esquemas abaixo. Baixe as bibliotecas Arduin necessárias (consulte o README no repositório github), compile e faça upload do esboço do Arduino para tank1 para um tanque e tank2 para o outro tanque.

2) Conecte o transceptor RF24 ao Raspberry Pi. Instale o Raspbian OS e o nó JS no Pi.

3) Baixe, configure e construa (veja README no repositório github) a biblioteca RF24 no Pi.

4) Baixe o software do servidor NodeJS do site do github, configure e inicie o servidor de aplicativos / servidor da Web (consulte README no githubrepository).

5) Instale o Leap Motion e os drivers em seu computador. Abra um navegador e carregue a URL para o servidor Raspberry Pi Rest / Web para carregar a página web (veja README no repositório github) para controlar o tanque um ou tanque dois.

6) Clique no botão calibrar e mantenha suas mãos sobre o movimento de salto para que ele detecte duas mãos e saiba sua posição neutra. Assim que a calibração estiver concluída, você pode controlar o tanque com as mãos.

Nota rápida sobre o chassi do tanque:

O corpo dos tanques é montado a partir de legos simples que foram "gorila colados" às partes (motores, tábuas de pão, etc.) do tanque para ajudar a mantê-lo unido. Aqui está uma apresentação de slides para mostrar como isso foi feito.

Uma nota rápida sobre LEDs infravermelhos:

Os controles remotos infravermelhos são muito funcionais quando você quer se sentar no sofá, no chão ou na cadeira e poder mudar o canal de sua TV de qualquer lugar. Os LEDs infravermelhos são construídos para que o feixe de luz vá em todas as direções possíveis para melhorar a cobertura. Mas, se você quiser controlar o feixe do LED para ser menor para dificultar o acerto do sensor remoto (como em um jogo de batalha de tanques) é um pouco mais difícil. Em minhas leituras, descobri que, usando uma lente de aumento muito simples no final de um tubo, você pode focalizar o feixe infravermelho. Aqui está um diagrama que mostra o que estou falando:

Acabei comprando uma lupa de bolso muito barata em uma drogaria, tirando a lente dela e construindo um tubo ao redor dela e tendo o LED infravermelho na outra extremidade do tubo, e isso funcionou perfeitamente para estreitar o feixe do LED IR para ser mais preciso.





Uma nota rápida sobre 360 ​​graus de sensores infravermelhos

Um sensor infravermelho é capaz de detectar sinais de um LED infravermelho quando esse LED está diretamente na frente dele ou a cerca de 90 graus de foco. Se um LED infravermelho estiver atrás do sensor, ele não será capaz de detectar o sinal enviado.

Para atingir 360 graus completos de ângulo de detecção, você precisava modificar a biblioteca de infravermelho para detectar sinais em 4 pinos diferentes de 4 sensores diferentes ou criar uma solução de hardware que permitisse que 4 sensores fossem encadeados para relatar em um único alfinete. Encontrei alguns artigos online que mostram como você pode conseguir isso com um circuito integrado E simples para conectar 4 sensores a um único pino de entrada. Quando qualquer um dos sensores infravermelhos detectou um sinal infravermelho, ele relatou naquele pino. Isso permitiu obter 360 graus de detecção, sem a necessidade de modificar a biblioteca de infravermelho ou usar até 4 pinos de entrada.



Código

Github de tanques de laser
Todos os arquivos de código personalizado para o projeto Leap Motion Laser Tankshttps://github.com/corky/LaserTanks

Esquemas

Usando um LED infravermelho, o tanque dispara "códigos" que os outros tanques identificam como acertos. Usando um único sensor infravermelho, o tanque é capaz de detectar quando os sinais infravermelhos vêm de tanques opostos e registrá-los como exitos Usando 4 sensores infravermelhos, encadeados em série com um circuito integrado de porta AND simples (74HCT21), um tanque é capaz para identificar sinais infravermelhos do LED do tanque oposto como impactos de 360 ​​graus ao seu redor. Usando um LED RGB, o tanque identifica seu status atual (quantos golpes ele levou) mudando a cor do LED. Além disso, o tanque muda a cor do LED para Verde a cada tiro que dispara. Usando um circuito integrado L293D e alguns motores CC simples, o tanque é capaz de se mover para frente, para trás e girar esquerda ou direita. Usando um transciever RF24 simples e barato, o tanque é capaz de se comunicar e receber comandos do operador. Usando um Raspberry Pi2, um transceptor RF24 simples e barato, e Node JS, o operador é capaz de se comunicar com cada tanque por meio de chamadas REST API.

Processo de manufatura

  1. Guia para marcação a laser em alumínio
  2. Guia para marcação a laser
  3. O que é marcação a laser a fibra?
  4. Ponteiro Laser
  5. Laser semicondutor
  6. Laser de estado sólido
  7. Sistema de sensor de movimento infravermelho faça você mesmo para Raspberry Pi
  8. Sensor de movimento usando Raspberry Pi
  9. MOSMusic
  10. Três componentes principais da máquina de marcação a laser