Índice:
2025 Autor: John Day | [email protected]. Última modificação: 2025-01-13 06:58
Este projeto está na minha gaveta há algum tempo e eu como a Maker Fair está chegando, foi um bom momento para fazê-lo.
Há muito tempo, existia um jogo chamado "Micro Machines" para Sega Mega Drive (Genesis) que eu passava horas jogando. Basicamente, este era um jogo de corrida com carros pequenos em que a pista de corrida fazia parte dos objetos da vida diária. Descobri que há uma nova versão deste antigo clássico.
Na versão original, o jogo tinha uma visão superior da pista e dos carros, mas eu queria ter a visão em primeira pessoa em uma tela frontal. A câmera se moveria de acordo com o movimento da cabeça do jogador.
O controlador deve ser um volante de corrida.
Infelizmente, isso não foi possível, e no final foi o que consegui.
Devido a vários fatores eu não implementei o head display e a câmera servo controlada, mas o carro é controlado pelo volante, eu tenho uma câmera wireless e tudo funciona. O problema é o alcance. Eu só posso controlar e ver a imagem da câmera se todas as unidades transmissoras e receptoras estiverem na linha de visão.
Em qualquer caso, há um aspecto muito interessante deste projeto que vale a pena compartilhar.
Etapa 1: Componentes
Carro RC
Acabei de selecionar o mais barato que encontrei na escala de 1:20.
Câmera sem fio
Tive várias opções de onde, mas provavelmente quando para o pior. Se você está planejando fazer algo assim, NÃO use esse tipo de câmera.
MicrocontroladorDFRobot Dreamer Nano V4.1, a pinagem de 2,54mm é essencial para este projeto. Verifique a página wiki do DFRobot para obter mais informações sobre este microcontrolador
Roda de corrida computador
Hoje é muito fácil encontrar controladores de corrida antigos quase de graça. Este eu consegui de graça no mercado local da Internet.
Ele vem com a antiga porta de jogo de 15 pinos, que era conectada na placa de som do computador.
Controle de motor
A escolha foi o L298N com capacidade de 2A e com no máximo 46V na entrada serve perfeitamente para esse projeto.
Transceptor RF
Para a comunicação sem fio entre o volante e o carro, optei pelo transceptor RF nRF24L01 +.
Eu tinha alguns onde, e eles são fáceis de usar.
Bateria
Uma bateria LiPo de 7,4 V 800 mA fornece energia para o carro RC, microcontrolador, transceptor RF e câmera sem fio
Diversos
4x - Resistor de 10K
4x - Resistor 100K
Perfboard (comum em meus projetos), plugue de bateria de 9V e alguns fios
Etapa 2: conectar os componentes
Transmissor Computar Racing Wheel
O pino da porta do jogo pode ser encontrado onde
en.wikipedia.org/wiki/Game_por
Eu também encontrei um site muito bom com um esquema para uma conexão com o arduino
www.built-to-spec.com/blog/2009/09/10/using-a-pc-joystick-with-the-arduino/
O circuito é construído na pré-placa de acordo com o esquema que adicionei.
Para a conexão NRF24L01 + estou usando o adaptador de base que traz um regulador de tensão de 3,3V mais capacitores adicionais para aumentar a estabilização da linha.
Se você quiser apenas usar o NRF24L01 +, a linha de força precisa vir de + 3,3 V do Arduino.
Receptor de carro RC
Para o carro, eu também uso o adaptador de base NRF24L01 +, mais uma vez, este é um opcional.
O L298n se conecta aos pinos D2 a D7.
A energia da câmera sem fio também vem da bateria
Depois de alguns testes, usei a regra de ouro para o dissipador de calor e decidi usar um ventilador.
Etapa 3: Código
Para que o código seja executado, você precisará instalar a biblioteca RF24.
Você pode fazer o download onde
github.com/nRF24/RF24.
Os pinos D9 e D10 também são usados para esta biblioteca, então não se esqueça de alterá-los se quiser usar outros
Rádio RF24 (9, 10); // Configure o rádio nRF24L01 + no barramento SPI mais os pinos 9 e 10
Em seguida, declare os pinos para o controlador no código Car_TX.
// Declara os pinos para o volante de corrida int wheel_direction = A0;
const int button_1A = 2;
const int Button_2A = 4;
const int button_1B = 3;
const int button_2B = 5;
E os pinos para a unidade do controlador do motor
// Definir pinos para acionamento do motor // Velocidade do motor
int enable_A = 3;
int in1Pin = 2;
int in2Pin = 4;
// Direção do motor
int enable_B = 5;
int in3Pin = 6;
int in4Pin = 7;
Etapa 4: feed ativo
O conjunto de câmera sem fio consiste em uma câmera sem fio e um receptor capaz de emitir um sinal de vídeo composto.
O receptor é então conectado a um conversor que permite a conexão a monitores VGA.
Etapa 5: teste funcional
Etapa 6: Conclusão
Depois de terminar tudo e montar, o resultado não foi o esperado. O alcance de tudo era de cerca de 2m no interior !!! Provavelmente porque isto foi feito com um orçamento de cerca de 50 € !!!
Este precisa de um repensar completo nos componentes selecionados. Provavelmente usarei no futuro as mesmas câmeras e transmissores usados nos drones com FPV. Hoje já é possível conseguir alguns equipamentos com frenagem à margem.
Nem tudo está ruim, durante os testes foi muito divertido dirigir o carro com o controlador de corrida. Provavelmente irei construir uma nova versão usando um carro RC pequeno, mas com controle de volante.
Sinta-se à vontade para comentar ou enviar uma mensagem se encontrar algum erro ou se tiver alguma sugestão / melhoria ou dúvida.
Curta, assine e ganhe.
Não se esqueça de deixar seu voto nos concursos que estou realizando.