Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Herstellungsprozess

Steuerung der zweiachsigen FPV-Kamerahalterung mit dem Joystick-Modul

Komponenten und Verbrauchsmaterialien

Arduino UNO
× 1
SG90 Micro-Servomotor
× 2

Über dieses Projekt

Hallo zusammen,

Heute sehen wir das vollständige Tutorial zur Steuerung der 2-Achsen-FPV-Kamerahalterung mit Joystick-Modul. Die Kamerahalterung wird in einem kleinen Paket mit einigen Acrylhalterungen und -stücken, einigen Schrauben und zwei Servomotoren geliefert.

Voraussetzung:Also bitte bevor Sie fortfahren, wenn Sie weder mit dem Joystick noch mit den Servomotoren vertraut sind, hier zwei Tutorials für Sie:

  • Wie man das Joystick-Modul einfach mit dem Arduino-Board verbindet
  • Verwenden Sie Servomotoren mit Arduino

Hier verwenden wir also zwei Methoden, um die Servos zu steuern:Die erste, bei der die Servos der Position des Joysticks folgen und sich bewegen, während wir unseren Stick bewegen, bei der zweiten beginnen die Servos, sich in die Richtung zu bewegen, in die der Joystick zeigt, und sie bleiben dort, bis wir den Stick wieder bewegen oder die Richtung ändern.

Dies ist eine Demo von dem, was wir am Ende haben werden:

Im Tutorial-Video bin ich Schritt für Schritt beim Verkabeln oder Kalibrieren auch Schritt für Schritt beim Codieren vorgegangen, aber hier gebe ich Ihnen die gesamte Verkabelung, die kein Problem darstellt, da kein Modul oder Servo die anderen beeinflusst.

Um nicht von der Joystick-Achse verwirrt zu werden, hat mein Joystick (X-Achse oben dann Y-Achse) hier im Bild sind sie invertiert und anders benannt, aber ich lasse die Verkabelung so, wie ich sie verwendet habe, Sie können sie nach Belieben ändern (Servopins, Joystick) Eingaben, Richtungen …)

Um Sie nicht zu verwirren, weil ich im Video tatsächlich viele Codes verwendet habe, aber sie sind sehr einfach (Servopositionierung, Analogwert vom Joystick lesen…). Ich habe dies getan, bevor Sie meine anderen Tutorials überprüfen können, also hier Ich habe nur die beiden Codes für die beiden endgültigen Versionen hochgeladen, wie im Video zu sehen ist.

Wenn Sie etwas dazu benötigen, können Sie mich kontaktieren.

Code

  • Code 1 wie im Video
  • Code 2 wie im Video
Code 1 wie im VideoArduino
//Dieser Code ist für die Verwendung mit zweiachsigen FPV-Kamerahalterungen, die zwei Servos verwenden und ein Joystick-Modul hinzufügen // Wir steuern die Position der Halterung durch Bewegen des Analogsticks, die Halterung folgt den Joystickbewegungen // Siehe surtrtech.com für weitere Informationen#include  //Servos-Bibliothek und -DeklarationServo myservo1;Servo myservo2;int YAxis =1; // Deklarieren, wo die X-Achse und die Y-Achse der Joystick-Pins verdrahtet sind XAxis =0; // Natürlich analoge Eingängevoid setup () { Serial.begin (9600); // Einstellen der Bauderate des seriellen Monitors und Starten von pinMode (XAxis, INPUT); // Deklaration der Pin-Modi und Servo-Pins myservo1.attach (8); pinMode (YAchse, EINGANG); myservo2.attach(9);}void loop() { int X=analogRead(XAxis); // Lesen vom X-Achsen-Potentiometer X =X * 0,1756; // Um ​​den Bereich des Potentiometers von 0-1023 auf 0-180 Grenzen des Servos umzuwandeln, können Sie sie ändern, wenn Sie ein 360-Grad-Servo haben X =180-X; // Dies wird verwendet, damit sich das Servo ansonsten in die genaue Position dreht es wird invertiert myservo1.write(X); // Nach der Anpassung injizieren wir diesen Wert in den ersten Servo int Y =analogRead (YAxis); // Lesen vom Y-Achsen-Potentiometer Y =Y * 0,1466; //Hier haben wir eine Konvertierung durchgeführt, die den Servogrenzen entspricht, also gingen wir von 0-1023 auf 0-150 myservo2.write(Y); //Und wir injizieren in unser Servo}
Code 2 wie im VideoArduino
//Dieser Code ist für die Verwendung mit zweiachsigen FPV-Kamerahalterungen, die zwei Servos verwenden und ein Joystick-Modul hinzufügen // Wir steuern die Position der Halterung durch Bewegen des Analogsticks, die Halterung bewegt sich in die Richtung, in der sich der Stick befindet Zeigen//bis zu den Grenzen und bleiben Sie dort//Weitere Informationen finden Sie auf surtrtech.com#include  //Servos-Bibliothek und -DeklarationServo myservo1;Servo myservo2;int a,b,X,Y; //Variablen benötigt laterint YAxis =1; // Deklarieren, wo die X-Achse und die Y-Achse der Joystick-Pins verdrahtet sind XAxis =0; // Natürlich analoge Eingängevoid setup () { Serial.begin (9600); // Einstellen der Bauderate des seriellen Monitors und Starten von pinMode (XAxis, INPUT); // Deklaration der Pin-Modi und Servo-Pins myservo1.attach (8); pinMode (YAchse, EINGANG); myservo2.attach(9);}void loop() { a=myservo1.read(); // Das Lesen der vorherigen Servopositionen ist ein wichtiger Schritt, damit wir wissen, wo sie als nächstes positioniert werden sollen b =myservo2.read (); X =analogRead (XAxis); // Lesen der Joystick-Werte Y =analogRead (YAxis); if(X>550){//Hier haben wir keine Kalibrierung durchgeführt, also hat der Joystick drei Positionen (Links|Ruhe|Rechts) a=a-1; // es hängt von dem Wert ab, den wir lesen, wir können wissen, in welche Richtung der Stick zeigt, und ich habe die Ruheposition groß gelassen, tatsächlich ist es nur 1 Wert myservo1.write (a); // wir injizieren den neuen Wert delay (50); //Sie können die Verzögerung groß oder kurz machen oder auf a=a-x reagieren, um große oder kurze Schritte zu machen} if(X<450){ a=a+1; // Hier haben wir die entgegengesetzte Operation durchgeführt, um in die entgegengesetzte Richtung zu gehen myservo1.write (a); Verzögerung (50); } if(Y>600){//Hier haben wir keine Kalibrierung durchgeführt, also hat der Joystick drei Positionen (Up|Resting|Down) dito b=b+1; myservo2.write(b); Verzögerung (50); } Wenn (Y <450) {b =b-1; myservo2.write(b); Verzögerung (50); }

Schaltpläne

Es gibt ein oberes Servo und ein unteres Servo, verwechseln Sie sie nicht

Herstellungsprozess

  1. Zutrittskontrolle mit QR, RFID und Temperaturüberprüfung
  2. Himbeere mit Kamera im Vogelhaus
  3. Discord-Überwachungskamera mit ESP32
  4. Desinfektionsroboter mit UV-Licht
  5. Münzprüfer mit Arduino steuern
  6. Batteriebetriebene TV-Fernbedienung mit 3D-bedrucktem Gehäuse
  7. Hindernisse vermeiden Roboter mit Servomotor
  8. Arduino mit Bluetooth zur Steuerung einer LED!
  9. Drehmaschine mit CNC
  10. Schrägbett-Drehmaschine verfügt über eine Steuerung mit Verifizierungsgrafiken