Carro de RC + Arduino + PC + Xbox = O.o (Parte 1)

Fala pessoal,

estou devendo continuar os estudos com o kinect + a tv, mas parei um pouco para executar uma ideia antiga, mas que me lembrei quando estava escrevendo o “sobre o autor” e que agora me considero capaz de fazer (tanto na parte técnica quanto na financeira… hehe)

Estou falando do projeto de controlar um carrinho de controle remoto (RC) através do PC. Existem varios projetos desses na internet, mas resolvi fazer o meu e do meu jeito! 😉

Controlando o carrinho do controle do xbox. Logo sera com o volante da Logitech. auhauuha

Aqui está o video da primeira parte do desenvolvimento:

Os proximos passos:

  • Colocar a microcamera.
  • Colocar a transmissão de mensagens via Radio

Diário do Desenvolvedor:

Basicamente, peguei um carrinho da estrela do meu irmao e abri. Tirei todas as entranhas dele e mantive o motor principal e o mecanismo de direção.

Circuito original do carrinho

Novas entranhas do carrinho

Estudei o mecanismo de direção para mante-lo. Ele é bem rudimentar, mas tem uma solução interessante para detectar os estados. Podemos dizer que é um servo rustico. Nas engrenagens existem umas mascaras de metais que fazem ligações e indicam os seguinte estados: se esta virado para direita ou esquerda e se esta com 50% ou 100% de esterço.

Caixa de direção original do carrinho. Um servo rudimentar. Repare nos contatos ligados a engrenagem principal para informar os estados do circuito.

Quando estava matutando sobre como programar no arduino um algoritmo para virar gradualmente tendo somente esses estados, meu chefe deu a ideia de usar um servo. Grande ideia. Quebrei a cabeça para adaptar o servo na estrutura do carrinho, mas deu certo. Me economizou uma ponte H.

Motor servo adaptado para controlar a direção do carro. Agora, ao inves do 50% e 100% de esterço da caixa original, temos toda a graduação de ângulos. 😉

Ponte H essa que não tive escolha de implementar para o controle do motor principal. Ponte H nada mais é do que um circuito que abre e fechar portões (gates) para inverter o sinal do motor. Ou seja, abrindo o portao 1 e 3, você joga a tensão no ponto A e o neutro no ponto B. Se você abrir o portão 2 e 4, você joga o neutro no ponto A, a tensão no B, e muda o sentido do motor comparado ao exemplo anterior.

Ponte H – Imagem tirada da wikipedia

Além disso, precisava controlar a velocidade do motor principal. Para isso, usei o esquema de PWM (Pulse Width Modulation) que configura, em uma determinada frenquencia, a largura de banda dos 0s e 1s. Logo, de você configura o PWM em 50%, dentro do intervalo determinado pela frequencia, em metade do tempo o sinal vai ficar em 5V (VCC) e metade do tempo vai ficar em Neutro (GND). Logo, com PWM configurado a 50% e ligado na ponte H que libera energia para o motor, você garante que o motor trabalhe proximo de 50% da sua velocidade, ligando e desligando ele N vezes por segundo.

PWM. Imagem tirada do site do arduino

Isso gera pulso eletromagentico e pode gerar energia no sentido contrario ao de movimento no motor. Adicionei uns Diodos para proteger a ponte H. Não sei se é eficaz, não sei se usar o PWM ao inves de regular a tensão zoa o motor. Enfim, sou um cientista da computação, não um engenheiro mecatronico :-P.

Por fim, codifiquei o arduino e o PC para se comunicarem, por enquanto via usb. Usei o JInput para pegar o input do controle de xbox e mandar as mensagens para o Arduino.

UPDATE:

Estou postando um vídeo da sequencia do  trabalho  (quando coloquei a ponte H comprada no ebay para funcionar) que só tinha postado no youtube.

 

Anúncios

4 Comentários

Arquivado em Arduino, Desenvolvimento, Eletrônica, Gadget, Geek, Java

4 Respostas para “Carro de RC + Arduino + PC + Xbox = O.o (Parte 1)

  1. esta espetacular…

    podes dizer onde tiras te alguns exemplos??
    gostaria de fazer o mesmo 🙂

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s