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, Novembar
Anonim
Upravljanje 3 servo motora s 3 potenciometra i Arduinom
Upravljanje 3 servo motora s 3 potenciometra i Arduinom

Zdravo. 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 sebi postavio bio je da mogu kontrolirati robota prikazanog na ovoj web stranici:

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

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

Prije nego što navedem pojedinačne 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ću količinu.

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

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

Korak 1: Pripremite svoje komponente

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 matičnu ploču.

Našao sam ih ovde:

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 4 AA baterija:

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 na računalo i napajanje:

www.adafruit.com/products/62

Arduino IDE softver za učitavanje programa koji će kontrolirati servo pogone:

www.arduino.cc/en/Main/Software

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

www.adafruit.com/products/1956

Igla zaglavlja koja se koriste 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 uklopili u ploču.

www.adafruit.com/products/400

Korak 2: Pripremite tlocrtnu ploču

Pripremite svoju pločicu
Pripremite svoju pločicu

Mnogo ploča za kruh podijeljeno je u 2 dijela duž šina za napajanje 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 do kraja. 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: Povezivanje potenciometra 3

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

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

Korak 6: Povezivanje 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 sa loncima, a sada da postavimo motore.

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, mi ćemo učiniti 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

crno je mljeveno (-)

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 konektor 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 šine za napajanje, pa uzmite dva muška kabela i umetnite ih u matičnu 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 da signalni kabel spojite na Arduino, za to će vam trebati 3 muška kabela za muške spojeve.

Uključite ih u matičnu ploču, a zatim u Arduino na ovim lokacijama:

~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 šinu koja će dati snagu potenciometrima, a zatim ćemo spojiti našu bateriju na donje šine za napajanje servo pogona.

Ako to ipak učinimo, to će značiti da Arduino uzemljivač i ravnina uzemljenja servo 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 kratkospojnik i spojite uzemljenje s gornje tračnice na tlo na donjoj šini, kao što je prikazano na desnoj strani matične 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 Ardiuno -a
Programiranje Ardiuno -a

Za sve one 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

Da pregledam veze u mojim postavkama

Potenciometri su priključeni na A0, A1 i A2

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

Ovi će nam brojevi biti potrebni prilikom pisanja koda kako bismo Arduino radili s našim postavkama. Ispod je kôd koji sam koristio za rad Arduina. To nije moj kod, 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, obavijestite me i ovdje ću staviti vezu do projekta osobe.

#include

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 = mapa (val, 3, 1023, 0, 176);

myservo3.write (val);

kašnjenje (25);

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

myservo5.write (val2);

kašnjenje (25);

val3 = analogRead (potpin3); val3 = mapa (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 trebali moći kontrolirati svoje servosisteme sa svojim potenciometrima i moći ćete nastaviti sa svojim projektom!

Preporučuje se: