Sadržaj:

Upravljanje 3 servo motora s 3 potenciometra i Arduinom: 11 koraka (sa slikama)
Upravljanje 3 servo motora s 3 potenciometra i Arduinom: 11 koraka (sa slikama)

Video: Upravljanje 3 servo motora s 3 potenciometra i Arduinom: 11 koraka (sa slikama)

Video: Upravljanje 3 servo motora s 3 potenciometra i Arduinom: 11 koraka (sa slikama)
Video: Control Position and Speed of Stepper motor with L298N module using Arduino 2024, Studeni
Anonim
Upravljanje 3 servo motora s 3 potenciometra i Arduinom
Upravljanje 3 servo motora s 3 potenciometra i Arduinom

Bok tamo. Ovo je moje prvo uputstvo, pa se nadam da ćete biti strpljivi sa mnom ako pogriješim pri postavljanju. Napisano je za početnike, pa napredniji među vama mogu preskočiti mnogo toga i jednostavno pristupiti ožičenju.

Cilj koji sam si postavio bio je moći kontrolirati robota prikazanog na ovoj web stranici:

bocabearingsworkshop.blogspot.co.id/2015/08…

Morao sam moći kontrolirati 3 različita servo motora mijenjanjem položaja 3 potenciometra. Mnogo je ljudi koji rade ovakve stvari, ali nisam mogao pronaći točnu mjeru za sve što mi je potrebno, pa sam odlučio objaviti ovo uputstvo kako bih sve ono što sam naučio spojio na jedno mjesto kako bi bilo tko drugi želio učiniti ovako nešto moglo bi ga brzo pokrenuti. Ovo uputstvo je zaista sažetak izvrsnog rada i truda drugih ljudi.

Prije nego što nabrojim pojedine korake koji su uključeni u ovo, želim kratko objasniti kako sve funkcionira.

Potenciometri šalju analogni signal na Arduino. Skica na Arduinu (više o tome kasnije) zatim pretvara analogni ulaz s potenciometra u digitalni izlaz i šalje taj izlaz servo motoru koji se tada pomiče lijevo ili desno za odgovarajući iznos.

Potenciometri se napajaju iz Arduinove 5v linije, dok servo napajaju bateriju.

Važna napomena: VRLO je važno uzemljiti Arduino u bateriju/servo pogone kako se ne bi događale neugodne stvari, ali o tome ću detaljnije govoriti dok idemo dalje.

Korak 1: Priprema komponenti

Priprema vaših komponenti
Priprema vaših komponenti
Priprema vaših komponenti
Priprema vaših komponenti
Priprema vaših komponenti
Priprema vaših komponenti

Potrebna su vam tri 10k potenciometra s nogama koji se mogu uklopiti u ploču za izradu kruga.

Našao sam ih ovdje:

www.adafruit.com/products/562

Slijede servo motori. Koristio sam one najmanje jer bi teret koji bi premjestili bio vrlo mali i jeftini.

www.adafruit.com/products/169

Zatim vam je potrebna baterija od 4 AA:

www.adafruit.com/products/830

Matična ploča za povezivanje svega:

www.adafruit.com/products/239

Arduino Uno R3 (barem sam ja ovo koristio):

www.adafruit.com/products/50

USB kabel za povezivanje Arduina s računalom i napajanje:

www.adafruit.com/products/62

Arduino IDE softver za učitavanje programa koji će upravljati servo pogonima:

www.arduino.cc/en/Main/Software

Neki muški/muški kratkospojni kablovi i neka kratkospojna žica za povezivanje

www.adafruit.com/products/1956

Igle zaglavlja za odvajanje koje će se koristiti za spajanje vaših motora na matičnu ploču. Ove mi se sviđaju jer ne morate namještati plastični razdjelnik kako bi se uklopile u ploču.

www.adafruit.com/products/400

Korak 2: Pripremite svoj Breadboard

Pripremite svoj Breadboard
Pripremite svoj Breadboard

Mnogo ploča za kruh podijeljeno je u 2 dijela duž vodilica na vrhu i na dnu (zbog čega sam se malo češao po glavi kad sam ih počeo koristiti.) Pomoću 4 mala komada žice možete premostiti razmak do pobrinite se da vaša snaga ide skroz preko ploče. Konačno sam kupio jedan koji je bio spojen skroz, ali u slučaju da imate ovaj problem, ovako ćete ga riješiti.

Korak 3: Ožičenje jednog potenciometra 1

Ožičenje jednog potenciometra 1
Ožičenje jednog potenciometra 1

Ovaj dijagram prikazuje čemu služe 3 pina na potenciometru.

Korak 4: Ožičenjem potenciometra 2

Ožičenje potenciometra 2
Ožičenje potenciometra 2

Uzmite 3 muška muška kabela i gurnite ih u ploču kao što je prikazano na dijagramu

Korak 5: Ožičenjem potenciometra 3

Ožičenje potenciometra 3
Ožičenje potenciometra 3

Sada gurnite pinove potenciometra u ploču kao što je prikazano na dijagramu

Korak 6: Ožičenje potenciometra 4

Ožičenje potenciometra 4
Ožičenje potenciometra 4

Sada ponovite ovaj postupak još 2 puta i sada ćemo biti spremni za spajanje signalnih kabela na Ardiuno

Korak 7: Ožičenje završnog koraka potenciometra

Ožičenje Potenciometra Završni korak
Ožičenje Potenciometra Završni korak

Sada uzimamo žute signalne kabele i priključujemo ih na Arduino ploču. Pažljivo pogledajte Arduino i vidjet ćete dio ploče pod nazivom Analog In. Priključivat ćemo naše kabele u A0, A1 i A2 kao što je prikazano na dijagramu.

Za sada smo završili s loncima, sada za postavljanje motora.

Korak 8: Ožičenje motora 1

Ožičenje motora 1
Ožičenje motora 1
Ožičenje motora 1
Ožičenje motora 1
Ožičenje motora 1
Ožičenje motora 1

Kao i kod potenciometara, učinit ćemo istu stvar tri puta pa ću vam detaljno objasniti kako ga postaviti, a sve što trebate učiniti je ponoviti postupak.

Boje kabela na motorima su lukave jer se razlikuju od motora do motora. U mom dijagramu

crna je mljevena (-)

Crvena je snaga (+)

Žuta je signal (i)

Uzmite par kliješta s dugim nosom i odlomite traku od 3 klina zaglavlja i umetnite ih u ženski priključak na servo motoru. Spojite servo na matičnu ploču kao što je prikazano na dijagramu. Nakon što to učinite, morat ćemo spojiti motore na donje vodilice pa uzmite dva muška kabela i umetnite ih u ploču kao što je prikazano.

Ponovite ovaj postupak još dva puta i tada ćemo biti spremni za spajanje motora na arduino

Korak 9: Ožičenje motora 2

Ožičenje motora 2
Ožičenje motora 2

Sada smo spojili motore na ploču za kruh. Vrijeme je za priključivanje signalnog kabela na Arduino, za to će vam trebati 3 muška kabela muškog spoja.

Uključite ih u matičnu ploču, a zatim u Arduino na sljedećim mjestima:

~9

~10

~11

Ovo su s desne strane Arduina kako je orijentirano na mom dijagramu. Ovdje se digitalni signal s Arduina šalje na servo da mu kaže kako se okrenuti.

Nakon što to učinimo, spremni smo priključiti napajanje i pokrenuti ga

Korak 10: Dodavanje snage

Dodavanje snage
Dodavanje snage
Dodavanje snage
Dodavanje snage
Dodavanje snage
Dodavanje snage

U ovom trenutku želimo spojiti Arduino 5v napajanje i masu na gornju tračnicu koja će dati snagu potenciometrima, a zatim ćemo spojiti našu bateriju na donje tračnice za napajanje servo pogona.

Ako to ipak učinimo, to će značiti da Arduino uzemljivač i servo uzemljenje neće biti međusobno povezani, što bi potencijalno moglo dovesti do velikih problema. Isključite Arduino iz USB kabela, provjerite da baterija nije spojena na ploču za kruh i spojite dva muška kabela muškog spoja kako je prikazano na dijagramu, jedan na 5v u Arduinu, drugi na uzemljenje u Arduinu.

Zatim uzmite muški muški kabel za spajanje i spojite uzemljenje s gornje tračnice na tlo na donjoj tračnici kao što je prikazano na desnoj strani oglasne ploče. Ovo sada povezuje Arduino uzemljenje s uzemljenjem baterije koje ćemo sljedeće pričvrstiti.

Na kraju dodajte bateriju na ploču i dovršili smo fizičko postavljanje te ćemo preći na programiranje Arduina.

Korak 11: Programiranje Ardiuna

Programiranje Ardiuna
Programiranje Ardiuna

Za sve koji nisu upoznati s učitavanjem skica na Arduino, predlažem da odvojite vrijeme da prođete kroz upute prije nego nastavite.

www.arduino.cc/en/Tutorial/HomePage

Za pregled veza u mojim postavkama

Potenciometri su priključeni na A0, A1 i A2

Servo upravljači su priključeni na ~ 9, ~ 10 i ~ 11

Ovi će nam brojevi biti potrebni kada budemo pisali kôd kako bismo Arduino radili s našim postavkama. Ispod je kôd koji sam koristio za rad Arduina. To nije moj kôd, izvadio sam dijelove koji mi nisu trebali iz tuđeg koda, nažalost ne mogu se sjetiti gdje sam ga pronašao pa ne mogu odati priznanje osobi koja ga je napisala. Ako ga prepoznate, javite mi i ovdje ću staviti vezu na projekt osobe.

#uključi

Servo myservo3;

Servo myservo5;

Servo myservo6;

n

int potpin = 0; int potpin2 = 1;

int potpin3 = 2;

int val = 0; int val2 = 0;

int val3 = 0;

void setup () {

myservo3.attach (9); myservo5.attach (10);

myservo6.attach (11);

}

void loop () {{100} {101}

val = analogRead (potpin); val = karta (val, 3, 1023, 0, 176);

myservo3.write (val);

kašnjenje (25);

val2 = analogRead (potpin2); val2 = karta (val2, 3, 1023, 0, 176);

myservo5.write (val2);

kašnjenje (25);

val3 = analogRead (potpin3); val3 = karta (val3, 3, 1023, 0, 175);

myservo6.write (val3);

kašnjenje (25);

}

Zalijepite ovo u praznu skicu, spremite ga i prenesite na svoj Arduino i sada biste mogli kontrolirati svoje servosisteme sa svojim potenciometrima i moći biste nastaviti sa svojim projektom!

Preporučeni: