Faça seu próprio Joystick com Arduino. 2023

Faça seu próprio Joystick com Arduino para jogar no PC 4

Já imaginou você criar seu próprio joystick para jogar seu jogo favorito no PC? Se quiser saber como fazer, continue lendo esse post e você verá que com apenas 3 componentes você já consegue criar um joystick para jogos de simulação, podendo ser utilizado em jogos como o Flight Simulator.

Material necessário

Desenvolvimento

Para iniciar o desenvolvimento do projeto, precisaremos realizar o download da biblioteca “Joystick.h”, que pode ser obtida através deste link. Após realizar o download, vamos importar a biblioteca para nosso ambiente de desenvolvimento na IDE do Arduino. Siga os passos abaixo para realizar essa atividade:

PASSO 1: Abrir a IDE do Arduino. (Caso não a tenha instalada, faça o download do instalador através desse link.

PASSO 2: Após a inicialização da IDE, vá em “Sketch” > “Incluir Biblioteca” > “Adicionar biblioteca .ZIP” como mostrado na figura abaixo.

PASSO 3: Selecione o arquivo “ArduinoJoystickLibrary-master” em sua pasta de Downloads e clique em “Abrir”.

Agora o próximo passo é realizar o desenvolvimento do código, que pode ser encontrado na próxima seção!

Código

Montagem do circuito

A montagem do circuito é simples: apenas 4 fios já são suficientes para a ligação do joystick que irá simular os comandos analógicos para os eixos X e Y (movimento horizontal e vertical). Como pode ser visto na imagem abaixo, as conexões VCC e GND do Arduino deverão ser conectadas aos pinos VCC e GND do Joystick respectivamente. Já os pinos A0 e A1 do Arduino serão conectados às conexões VRX e VRY (pode ser que o nome da conexão esteja diferente de acordo com o fabricante do Joystick).

Com isso podemos concluir que o pino A0 do Arduino servirá como entrada analógica para receber as informações do posicionamento horizontal e o pino A1 do posicionamento vertical.

Teste do Joystick

Após o desenvolvimento do código, você poderá realizar o upload para a placa seguindo os passos abaixo:

PASSO 1: Conecte o Arduino MICRO em seu computador através do cabo USB.

PASSO 2: Vá em “Ferramentas” > “Placa” > “Arduino AVR Boards” e selecione a opção “Arduino MICRO”.

PASSO 3: Vá em “Ferramentas” > “Porta” e selecione a opção que estiver com o nome “Arduino MICRO”.

 

PASSO 4: Carregue o código na placa através do botão destacado em branco na figura abaixo:

PASSO 5: Após carregar o código, vá no botão pesquisar no seu sistema operacional e procure por “Joystick”. Selecione a opção que representa o aplicativo para configuração de controladores de jogos USB.

*Obs.: Este procedimento está sendo realizado no Windows, para outros sistemas operacionais o procedimento pode ser diferente.

PASSO 6: O aplicativo deverá mostrar a opção “Arduino Micro”. Selecione esta e clique em “Propriedades”

PASSO 7: Ao movimentar o Joystick você verá que o ponteiro dos Eixos irá se mover, mostrando que o seu computador está interpretando o Joystick como um controlador de jogo.

Pronto, agora você poderá deixar sua criatividade à solta para montar seu próprio Joystick. Você poderá criar volantes para jogos de corridas, manches para simuladores de voo e até mesmo tentar utilizar sensores para capturar movimentos. Utilizando o manual de referência (em inglês) da biblioteca você poderá ver todas as possibilidades de uso da ferramenta.

Faça seu comentário

Acesse sua conta e participe

4 Comentários

  1. Olá, quais as alterações necessárias para usar no lugar do joystick um mouse? Em alguns games é melhor , como o comando e conquer da Nintendo 64…

  2. Proposta interessante, no caso eu consigo colocar mais comando no arduino como um potenciometro para aumentar velocidade essas coisas?, incrementar novas funções?.

    1. Olá Allan! Sim, exatamente! Você pode utilizar os pinos digitais como entradas para simular botões e conectando potenciômetros nas entradas analógicas você consegue enviar sinais para simular volantes, pedais e manches (para aviação). Tudo depende da sua criatividade!

      1. Prezados Senhores.
        Preciso de um programa montado para habilitar na placa arduino 32u4 5v 16 mhz as funcoes de 3 eixos e 8 botoes.
        obrigado