1. Dual-Axis XY
집에 가지고 있는 Stepping motor 를 원격으로 조정하고 싶을 때, 조이스틱으로 하면 편할것 같아,
우선 arduino 와 조이스틱 구성의 기본 동작을 익혀봤습니다.
위의 목적 외에도 새로운 모듈을 시험해 보는 것은 언제나 즐거운 일 입니다.
2. 구매
AliExpress 를 뒤지면 여러가지 나오는데, 저는 아래 제품을 구매 했습니다.
* For Arduino Dual-axis XY Joystick Module Higher Quality PS2 Joystick Control Lever Sensor KY-023 Rated 4.9 /5
- https://www.aliexpress.com/item/32683242155.html
옵션으로 고정 틀이 들어간 세트도 같이 팔지만,
언제나 그렇 듯, 최소한의 비용 투자가 회사원의 취미로 유지되는 조건이므로 모듈만 구매합니다.
혹시 여유가 있으시다면, 아크릴 고정 틀 세트로 구매하시는 것을 추천드립니다.
어디 놓고 테스트 하거나 구동시킬라면 손으로 잡고 해야 하는데 꽤 불편합니다.
3. 도착
잊을만 할 때 도착했습니다.
엄지 손가락으로 조정하는 고무 모자를 벗겨 보면, XY 축 센서와 SW 센서가 붙어 있습니다.
더 이상 설명이 필요없는 간단한 구성 입니다.
4. Layout
XY 센서는 analog 이고, switch 는 digital 신호로 컨트롤 됩니다.
Arduino nano 와의 연결은 다음과 같습니다.
Joystick | Arduino Nano -------------------------- GND | GND 5V | 5V VRX | A0 VRY | A1 SW | D2 --------------------------
배선도는 다음과 같구요.
실제 연결은 다음과 같습니다.
선이 5가닥이 필요하다 보니, 회로 구성 시 자칫 복잡해 질 수 있는 여건이네요.
5. Sketch
소스는 다음과 같습니다. 소스 참고는 아래 사이트 입니다.
* How to connect and use Analog Joystick with Arduino
- https://www.brainy-bits.com/arduino-joystick-tutorial/
Switch 눌림과 XY 축 값을 5V 기준으로 leveling 하여 수치로 표시해 줍니다.
// Arduino pin numbers const int SW_pin = 2; // digital pin connected to switch output const int X_pin = 0; // analog pin connected to X output const int Y_pin = 1; // analog pin connected to Y output void setup() { pinMode(SW_pin, INPUT); digitalWrite(SW_pin, HIGH); Serial.begin(115200); } void loop() { Serial.print("Switch: "); Serial.println(digitalRead(SW_pin)); Serial.print("X-axis: "); Serial.println(analogRead(X_pin)); Serial.print("Y-axis: "); Serial.println(analogRead(Y_pin)); Serial.print("\n"); delay(500); }
스위치가 눌려있는 시간에는 Switch 값이 "0" 으로 변합니다.
요리조리 움직이다 보면 최대값이 나오는 구간이 있습니다. 5V 입력이다 보니 최대값이 1023 으로 표시됩니다.
입력 Vcc 를 3.3V 로 변경하면, 5V 대비 3.3V 로 레벨링 하여 나옵니다. 이 때는 대략 675 정도가 최대값이 되겠네요.
동영상 띄워 봅니다.
FIN
음? 벌써 끝?
네, 이 포스트는 gimbal 에 달려 있는 stepping 모터를 컨트롤 하기 위한 준비 단계라,
XY joystick 모듈과 arduino 와의 연결 확인만 되면 됩니다.
실제 gimbal 과 연결하여 stepping 모터를 컨트롤 하는 것은 다음 포트스에서 해보겠습니다.
'Hardware' 카테고리의 다른 글
Hardware | SMD 부품 납땜용 오븐 취득기 (0) | 2019.10.02 |
---|---|
Hardware | ebook 크레마 사운드업 액정 수리기 (27) | 2019.10.01 |
Hardware | LED 전등 교환기 (0) | 2019.08.28 |
Hardware | 555 chip 알아보기 - 1 (0) | 2019.08.26 |
Hardware | ESP-01 or ESP8266 사용기 - 5 (2) | 2019.08.14 |