Innehållsförteckning:

Micro Servo Lab: 9 steg
Micro Servo Lab: 9 steg

Video: Micro Servo Lab: 9 steg

Video: Micro Servo Lab: 9 steg
Video: sg90 9g micro servo testing without servo motor driver... 2024, November
Anonim
Micro Servo Lab
Micro Servo Lab

I detta labb kommer vi att arbeta med att kontrollera en mikroservos position med en potentiometer. Baserat på positionen för mikroservos "armar" tänder vi motsvarande rader med lysdioder. För detta labb behöver du:

  • 1 mikroservo (den som tillhandahålls är en 9 gram mikroservo)
  • 1 potentiometer
  • 10 lysdioder (med två olika färger)
  • 10 220 Ohm motstånd

Steg 1: Anslut en Micro Servo

Anslut en Micro Servo
Anslut en Micro Servo

Mikroservot har tre ledningar för ström, jord och en signalpuls. Mikroservon accepterar en PWM -puls för att avgöra vilken position den ska vara i (0 - 180 grader). Tekniskt kan du använda vilken som helst av PWM -stiften på Arduino Uno, men vi börjar vanligtvis med Pin 9 eller 10*.

Uppstart:

  1. Anslut brödbrädan till kraftskenan (+5V) och markskenan (GND)
  2. Anslut servon till kraftskenan, jordskenan och stift 9.

** Detta beror på att Servobiblioteket använder Timer2 på Arduino som blockerar oss från att använda PWM -signaler, analogWrite (), på dessa två stift för andra ändamål än för att styra en servo. Även om vi fortfarande kan använda dessa stift för digital i/o, kommer vi i allmänhet att använda dessa uteslutande för servokontroll **

Steg 2: Testa Micro Servo

Koden här är exempelkoden från Servobiblioteket. Det kommer helt enkelt att servo svepa fram och tillbaka från 0 till 180 grader

/* Sopa

av BARRAGAN Denna exempelkod är i det offentliga rummet. ändrad 8 nov 2013 av Scott Fitzgerald https://www.arduino.cc/en/Tutorial/Sweep */#include "Servo.h" Servo myservo; // skapa servoobjekt för att styra en servo // tolv servobjekt kan skapas på de flesta kort int pos = 0; // variabel för att lagra servopositionen void setup () {myservo.attach (9); // fäster servon på stift 9 till servoobjektet} void loop () {för (pos = 0; pos = 0; pos -= 1) {// går från 180 grader till 0 grader myservo.write (pos); // berätta för servon att gå till position i variabeln 'pos' fördröjning (15); // väntar 15 ms på att servon når positionen}}

Steg 3: Anslut en potentiometer

Anslut en potentiometer
Anslut en potentiometer

Vi kommer nu att arbeta med att manuellt styra servos position med en potentiometer. Anslut potentiometern enligt följande:

  • Vänster sida - markskena
  • Höger sida - Power rail
  • Övre/mellersta anslutning - Pin A0 (analog 0 -stift)

Steg 4: Potentiometer startkod

Nedan finns en startkod för att styra servon med en potentiometer. Avsluta koden så att när du flyttar potentiometern kommer servon att röra sig unisont.

/* Sweep by BARRAGAN Denna exempelkod är i allmän egendom. ändrad 8 nov 2013 av Scott Fitzgerald https://www.arduino.cc/en/Tutorial/Sweep */#include "Servo.h" Servo myservo; // skapa servoobjekt för att styra en servo // tolv servobjekt kan skapas på de flesta kort int pos = 0; // variabel för att lagra servoposition int potPin = 0; // Välj stift för anslutning av potentiometern int potVal = 0; // Aktuellt potentiometervärde void setup () {myservo.attach (9); // fäster servon på stift 9 till servoobjektet pinMode (potPin, INPUT); } void loop () {potVal = analogRead (potPin); myservo.write (pos); // berätta för servon att gå till position i variabeln 'pos' fördröjning (15); // väntar 15 ms på att servon når positionen}

Steg 5: Anslut First LED

Anslut First LED
Anslut First LED

När vi har servot kontrollerat via potentiometern lägger vi till lite feedback via några lysdioder. Vi kommer att skapa två rader med lysdioder. Den ena kommer att representera servos "vänstra" arm och den andra kommer att representera servos "höger" arm. När servon byter position kommer den ena armen att stiga och den andra falla. Lysdioderna tänds för att visa:

  • full - armen lyfts
  • halvarmarna är lika.
  • av - armen sänks

Diagrammet visar raderna med lysdioder i motsatta ändar av brödbrädan. Detta gjordes för att underlätta synligheten, dina lysdioder bör ställas upp/även med varandra.

Anslut första LED:

  • Anslut lysdiodens korta ledning till markskenan
  • Anslut lysdiodens längre ledning till ett 220 Ohm motstånd. Anslut motståndet till stift 13 på Arduino.

Steg 6: Anslut återstående rad lysdioder

Anslut återstående rad lysdioder
Anslut återstående rad lysdioder

Efter att den första lysdioden har lagts till ansluter du de återstående lysdioderna:

  • Kortare bly - anslut till markskenan
  • Längre ledning - anslut ett 220 Ohm -motstånd till lysdioderna och följande Arduino -stift: 12, 11, 10, 9, 8

Steg 7: Lägg till första lysdioden, andra raden

Lägg till första LED, andra raden
Lägg till första LED, andra raden

Den andra raden med lysdioder kommer att läggas till på samma sätt som den första:

  • Anslut lysdiodens korta ledning till markskenan
  • Anslut lysdiodens längre ledning till ett 220 Ohm motstånd. Anslut motståndet till stift 7 på Arduino.

Steg 8: Anslut slutliga lysdioder

Anslut slutliga lysdioder
Anslut slutliga lysdioder

Anslut de återstående lysdioderna:

Kortare ledning - anslut till jordskenan Längre ledning - anslut ett 220 Ohm -motstånd till lysdioderna och följande Arduino -stift: 6, 5, 4, 3

Steg 9: Kontroll -LED -display

Ditt sista steg är att uppdatera din kod för att styra dina lysdioder. Det kommer att behöva hantera följande:

  • Den översta raden matchar servoens "högra arm". När armen sveper upp/ner måste lysdioderna slås på/av.
  • Den nedre raden matchar servoens "vänstra arm". När armen sveper upp/ner måste lysdioderna slås på/av.

Rekommenderad: