fotostory
Cílem tohoto projektu je vytvoření jednoduchého ovládacího systému, který umožňuje naklápění dvou servomotorů pomocí analogového joysticku. Platforma řízená servomotory může simulovat pohyb například v ose X a Y — tedy naklánění doleva/doprava a dopředu/dozadu. Tento systém může sloužit jako základ pro různé aplikace:

- Manuální ovládání kamery nebo senzoru (např. na pohyblivé konstrukci nebo robotovi)
- Interaktivní ovládací panel pro školní projekty nebo herní ovladač

Schéma zapojení:

Joystick:
VCC 5V na Arduinu
GND GND na Arduinu
VRx (Osa X) Analogový pin A0
VRy (Osa Y) Analogový pin A1
Servomotory:
Servo X (například osa doleva/doprava)
Signální kabel Digitální pin 9
VCC 5V na Arduinu
GND GND na Arduinu
Servo Y (například osa dopředu/dozadu)
Signální kabel Digitální pin 10
VCC 5V na Arduinu
GND GND na Arduinu

assembly

Kód pro arduino:

#include <Arduino.h>
#include <Servo.h>

Servo servoX;  // Servo motor for the X axis (e.g. left/right)
Servo servoY;  // Servo motor for the Y axis (e.g. forward/backward)

int joyPinX = A0;  // Analog pin for the joystick's X axis
int joyPinY = A1;  // Analog pin for the joystick's Y axis

void setup() {
  servoX.attach(9);   // Attach servo X to pin 9
  servoY.attach(10);  // Attach servo Y to pin 10
}

void loop() {
  // Read joystick values
  int valX = analogRead(joyPinX);
  int valY = analogRead(joyPinY);

  // Convert joystick values to servo angle range (0–180°)
  int angleX = map(valX, 0, 1023, 0, 180);
  int angleY = map(valY, 0, 1023, 0, 180);

  // Set the servo positions according to calculated angles
  servoX.write(angleX);
  servoY.write(angleY);

  delay(15);  // Short delay for smoother movement
}

final project

FB tw

Další podobné články