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 >> Tecnologia industrial

Construa um Módulo Joystick Arduino: Guia Passo a Passo

Módulo Joystick

Você está lidando atualmente com projetos relacionados a movimento e robótica? Então, há chance de que você já tenha ouvido falar do módulo Joystick Arduino, mas não saiba como fazer um.

Ou talvez queira obter mais informações sobre como funciona um módulo joystick Arduino?

Então, você está no lugar certo.

O objetivo de um Joystick Arduino é comunicar movimento a um Arduino. E ele faz isso em 2-D (2 eixos), tornando-o adequado para aplicações de movimento e robótica.

Neste artigo, você aprenderá tudo sobre o módulo joystick Arduino, como ele funciona e como fazer um circuito joystick Arduino fácil.

Está pronto? Vamos lá!

O que é um Módulo Joystick?

Quase não existe projeto robótico que não exija um joystick. Às vezes é difícil conseguir um controlador que funcione para seus projetos, e pode até ser caro. Mas, um módulo joystick fornece uma maneira mais acessível de alcançar o mesmo resultado.

Além disso, o módulo joystick funciona de forma semelhante aos joysticks encontrados em gamepads analógicos. Seus componentes-chave são dois potenciômetros inclinados em ângulos de 90 graus. Além disso, há uma conexão entre um bastão curto (com molas no centro) e os potenciômetros.

Potenciômetros

O módulo joystick pode emitir cerca de 2,5V dos eixos X e Y quando está em repouso. Agora, quando você move o Joystick, a saída varia de 0V a 5V. No entanto, isso depende da direção.

Além disso, se você usar um microcontrolador com o módulo joystick, o valor real na posição de repouso seria cerca de 512. Assim, quando você move este Joystick, pode ver os valores mudarem de 0 a 1023, mas isso depende de sua posição.

Configuração de Pinos

Aqui está a configuração de pinos para o módulo joystick:

Pino NºNome do PinoDescrição
1GNDTerminal de terra do módulo
2+5VTerminal de alimentação positiva do módulo
3VRxTensão proporcional ao eixo X
4VRyTensão proporcional ao eixo Y
5SWChave do módulo

Características

Aqui estão as principais características do módulo joystick Arduino:

Especificações Técnicas

As especificações do módulo joystick incluem:

Diagrama Esquemático

A imagem abaixo mostra o esquema completo do módulo joystick. Como mencionado anteriormente, o módulo possui dois potenciômetros que controlam os eixos X e Y.

Esquemático para Módulo Joystick

Além disso, ambos os potenciômetros (10k) movem-se independentemente. Em outras palavras, você pode movê-los individualmente e em suas direções. Também há uma conexão interna do pino do interruptor (SW) ao botão de pressão.

Interligando Joystick com Arduino

Módulos joystick são compatíveis com muitos microcontroladores como Raspberry Pi, Arduino e outros. Além disso, é fácil interligar, e primeiro você deve conectar os pinos dos eixos VRx e VRy aos pinos ADC do microcontrolador.

Além disso, se planeja usar um interruptor, deve conectar o botão aos pinos digitais do microcontrolador.

Módulo Joystick para Microcontrolador

Agora, o diagrama a seguir mostrará como interligar um módulo joystick com um Arduino. Com este diagrama, você poderá conectar o módulo ao Arduino. Também obterá uma saída dependendo da direção em que mover o botão do joystick.

Módulo Joystick para Arduino

Uma vez terminada a interligação, descobriremos que cada direção tem uma faixa de saída fixa. A imagem a seguir mostrará a saída para os eixos X e Y dependendo do movimento do módulo joystick nas quatro direções, +X, -X, +Y e –Y. Também haverá alguns valores analógicos quando mover o botão diagonalmente.

Direções de Movimento

Se você quiser saber quando pressiona o botão do Joystick para baixo, também pode conectar o pino SW ao pino digital 8 do Arduino.

Além disso, o Joystick requer energia para funcionar corretamente. Então, conecte o pino VCC ao terminal 5V do Arduino e o GND ao terminal GND do Arduino.

Código Arduino

É bem fácil codificar este programa no Arduino IDE. Para obter os melhores resultados, você medirá o movimento do Joystick de um pino de entrada digital e duas entradas analógicas. Então, o Arduino exibirá o impacto no seu monitor.

A melhor parte:

Você não precisa de uma biblioteca para codificar este programa. Ele simplesmente lê a entrada analógica e exibe os valores que obtém dela. Além disso, também mostra a saída do botão de pressão.

Aqui está o esboço bruto do código:

#define joyX A0
#define joyY A1

void setup() {
  Serial.begin(9600);
}

void loop() {
  // put your main code here, to run repeatedly:
  xValue = analogRead(joyX);
  yValue = analogRead(joyY);

  //print the values with to plot or view
  Serial.print(xValue);
  Serial.print("\t");
  Serial.println(yValue);
}

Imagem mostrando o código Arduino

Mapeamento

Às vezes, não se trata apenas de ler valores analógicos, e pode haver necessidade de mapear seu módulo para um display ou outras interfaces. Para ajudá-lo com isso, mostraremos como mapear os valores do código acima para uma matriz de LED 8x8.

Mapeamento Arduino

O resultado deste processo é mover os pixels no display com o Joystick. Também é fácil alterar o código para mapeá-lo a um display OLED ou gráfico.

#include "LedControl.h"
#define joyX A0
#define joyY A1

int xMap, yMap, xValue, yValue;
LedControl lc = LedControl(12, 11, 10, 1);

void setup() {
  Serial.begin(115200);
  lc.shutdown(0, false);
  /* Set the brightness to a medium values */
  lc.setIntensity(0, 8);
  /* and clear the display */
  lc.clearDisplay(0);
}

void loop() {
  // put your main code here, to run repeatedly:
  xValue = analogRead(joyX);
  yValue = analogRead(joyY);
  xMap = map(xValue, 0, 1023, 0, 7);
  yMap = map(yValue, 0, 1023, 7, 0);
  lc.setLed(0, xMap, yMap, true);
  lc.clearDisplay(0);
}

Imagem do código necessário para mapear o Arduino a um display OLED ou gráfico

Nota: o código acima mostra que você pode usar a função map() para mapear as faixas de acordo com suas preferências.

Então, se você acertar tudo, a saída no seu monitor serial deve parecer com isto:

Aplicações

Aqui estão algumas aplicações do módulo Joystick Arduino:

Drone Robô

Câmera Móvel

Conclusão

Quando você ouve a palavra Joystick, a primeira coisa que pode vir à mente seriam controladores de jogos. No entanto, existem tantas aplicações interessantes do módulo joystick quando se trata de eletrônica DIY.

Controladores de Jogos

Além disso, esses módulos funcionam principalmente para projetos DIY baseados em Arduino e controle de robô. Como discutimos anteriormente, o módulo joystick primeiro libera saída analógica para alimentar a entrada analógica dependendo do movimento horizontal ou vertical do bastão.

Bem, isso conclui este artigo. Se você tiver alguma dúvida ou sugestão, sinta-se à vontade para nos contatar. Estamos sempre felizes em ajudar.

Tecnologia industrial

  1. Crie um Botão de Teclado "Socável" Personalizado com Arduino: Guia Passo a Passo
  2. Conectando Arduino Mega ao Módulo GPS NEO‑6M: Guia Passo a Passo
  3. Volante Joystick Arduino Personalizado para Jogos
  4. Criar Tons Musicais com Arduino: Um Guia Passo a Passo
  5. Porta Automática com Arduino e Sensor Ultrassônico HC-SR04
  6. Construa um Carro Controlado por Bluetooth com Arduino: Guia DIY Completo
  7. Construa um Mini Osciloscópio DIY com Arduino Nano – Tutorial Passo a Passo
  8. Automação Residencial JARVIS v1 com Arduino Nano – Tutorial Passo a Passo
  9. Kit de Projeto Arduino Due: TFT, GPS, RTC, Sensores, Bluetooth e Joystick – Lista Completa de Componentes
  10. Construa um Robô Controlado por Gestos em Casa com Arduino e MPU-6050