Sadržaj:

Osnove animatronike - servo motor: 8 koraka
Osnove animatronike - servo motor: 8 koraka

Video: Osnove animatronike - servo motor: 8 koraka

Video: Osnove animatronike - servo motor: 8 koraka
Video: Raspberry Pi Servo Motor Control 2024, Studeni
Anonim
Image
Image

Bilo da se radi o veselom blagdanskom izlogu u izlogu robne kuće ili zastrašujućoj zezanciji za Noć vještica, ništa ne privlači pažnju poput animirane lutke.

Ove elektronički kontrolirane animacije ponekad se nazivaju i "animatronika", a ove upute naučit će vas kako napraviti najosnovniju vrstu, onu koju kontrolira jedan servo motor.

Mi ćemo koristiti Arduino mikrokontroler kao mozak, pa ćemo vidjeti kako potenciometar i servo rade unutra, također će vas naučiti kako izgraditi tri različite metode upravljanja:

1 - Kontinuirano ponavljanje pokreta

2 - Daljinski upravljano kretanje

3 - Pokrenuto pokretanje (pomoću svjetlosnog senzora)

Korak 1: Popis dijelova

Popis dijelova
Popis dijelova
Popis dijelova
Popis dijelova

Trebat će vam mikrokontroler (na prvoj slici prikazan je Arduino s https://adafru.it zajedno s kompletom proračunskih dijelova za ukupno 30 USD) i servo motor (mala verzija Tower prikazana je na drugoj slici zajedno s nekim dijelovima konektora, iz iste trgovine po 12 USD). Trebat će vam i mali kondenzator ili snažniji izvor napona ako koristite više servo motora (9V zidni punjač za Arduino će raditi)

Mikrokontroler je cijelo PC računalo na jednom čipu. Očigledno nije tako moćan kao vaše kućno računalo, ima vrlo malo RAM -a, nema pogona diska, nema tipkovnice ili miša, ali zaista je sjajan u kontroliranju stvari (otuda i naziv). Jedan od ovih čipova naći ćete u mnogim svakodnevnim predmetima, poput strojeva za pranje rublja i računala s automatskim ubrizgavanjem goriva.

Mikrokontroleri marke "Arduino" također dodaju neka druga kola koja ga povezuju s vanjskim svijetom i stavljaju na prikladnu ploču.

Primijetite da u "kompletu proračunskih dijelova" postoji nekoliko žica, otpornika, LED svjetiljki i plavi par gumba, koji se nazivaju potenciometri. Više o potenciometrima u sljedećem koraku.

Konačno, trebat će vam servo motor, a dolazi s nekim vijčanim priključcima za pričvršćivanje na pokretnu lutku. U ovoj lekciji koristit ćemo konektor u obliku slova X.

Korak 2: Pregled potenciometra

Pregled potenciometra
Pregled potenciometra
Pregled potenciometra
Pregled potenciometra
Pregled potenciometra
Pregled potenciometra
Pregled potenciometra
Pregled potenciometra

Potenciometar je u biti gumb za prigušivanje - ili u terminologiji elektronike - par promjenjivih otpornika. Okretanjem gumba, jedan otpornik ćete povećati, a drugi će biti manji.

Većinu vremena koristimo potenciometar (ponekad se naziva i "lonac") za kontrolu napona pomoću dijagrama kruga prikazanog gore.

Krajnja lijeva slika prikazuje stvarni lonac, s gornjom i donjom žicom spojenom na napon +5 i uzemljenje, a srednja žica daje željeni napon. Srednji dijagram prikazuje simbol za lonac, a posljednji dijagram prikazuje ekvivalentno kolo.

Slike su ljubaznošću Wikimedia.org

Korak 3: Pregled servo motora

Pregled servo motora
Pregled servo motora
Pregled servo motora
Pregled servo motora
Pregled servo motora
Pregled servo motora

Servo motor ima četiri glavna dijela.

1. Motor koji se može okretati naprijed i natrag, obično velikom brzinom i okretnim momentom.

2. Sustav za otkrivanje položaja koji može reći pod kojim je kutom servo motor trenutno

3. Sustav zupčanika koji može uzeti mnogo okretaja motora i pretvoriti ga u mali kutni pokret.

4. Upravljački krug koji može ispraviti pogrešku između stvarnog kuta i željenog kuta zadane točke.

Dijelovi 1 i 2 prikazani su na prvoj slici. Uočite da je dio 2 potenciometar.

Treći dio prikazan je na drugoj slici.

Dio 4 prikazan je na trećoj slici.

Korak 4: Ponavljajuće se kretanje

Ponavljajuće se kretanje
Ponavljajuće se kretanje
Ponavljajuće se kretanje
Ponavljajuće se kretanje
Ponavljajuće se kretanje
Ponavljajuće se kretanje

Ovdje ćemo glavu našeg lutkarskog "Bendera" okrenuti lijevo -desno, naprijed -natrag, sve dok je napajanje spojeno putem USB kabela. Ovo je izvrsno za zabavan blagdanski prikaz kojim se želite kretati cijeli dan.

Arduino dolazi s integriranim razvojnim okruženjem (IDE) što je lijep način reći da dolazi s aplikacijom za vaše računalo koja vam omogućuje davanje uputa (ikona Arduino IDE bočno je slika 8). Te upute ostaju pohranjene na ploči čak i ako odspojite računalo, a one se ponovno pokreću kada ponovno priključite napajanje na svoj Arduino. U ovom slučaju koristit ćemo softver pod nazivom "Sweep" koji možete pronaći u primjerima IDE -a u kategoriji "Servo".

Zatim ćete spojiti servo na kondenzatorski stabilizirani napon od 5 volti (crvena servo žica na Arduino +5, smeđa servo žica na Arduino GND) i na upravljački signal (žuta servo žica na Arduino izlaz 9). Glava lutke nije obavezna;-)

DETALJI:

Ako je gore navedeno bilo malo zbunjujuće, detaljne upute su sljedeće:

Korak A - Programiranje Arduina

  • Otvorite Arduino IDE (trebala bi biti ikona 8 na radnoj površini)
  • U odjeljku "Alati" provjerite je li "Ploča" postavljena na "Arduino/Genuino Uno".
  • Spojite Arduino hardver na računalo pomoću USB kabela
  • Provjerite je li postavka "Port" pod "Alati" također konfigurirana za Arduino.
  • U odjeljku "Datoteke" odaberite "Primjer" pod nazivom "Sweep" (možete ga pronaći pod "Servos")
  • Prije nego što upotrijebite ili uredite ovu datoteku, molimo "Spremi kao" drugi naziv datoteke (može biti vaše ime ili što god želite). Tako će datoteka ostati nepromijenjena za sljedećeg učenika koji koristi ovo računalo.
  • Pomoću gumba sa strelicom (ili pod "Sketch" odaberite "Upload") za učitavanje skice Sweep na Arduino

Korak B - Spajanje servo motora na Sweep

U ovom ćemo dijelu izgraditi varijacije krugova opisanih na https://learn.adafruit.com/adafruit-arduino-lesso… Povezat ćemo crvenu i smeđu žicu servo servera na +5 i GND Ardiuna, odnosno. Preko tog napona stavit ćemo i kondenzator za izravnavanje napona, a na kraju ćemo spojiti žutu žicu serva na izlazni pin 9 Arduina.

  • Isključite Arduino iz USB priključka prilikom izgradnje strujnog kruga.
  • Koristit ćemo 5V i uzemljenje s Arduino ploče, pa ih dovedite na svoju ploču koristeći crvenu i zelenu žicu.
  • Budući da napajanje može biti malo klimavo s USB priključka (nema mnogo struje, a servo motor može uzrokovati resetiranje Arduino ploče zbog niske struje), stavit ćemo kondenzator preko ovog napona, pazeći da žica ima oznaku "minus - “Nalazi se na prizemlju.
  • Sada spojite crvenu (+5) i smeđu (uzemljenu) žicu servo servera na matičnu ploču.
  • Konačna električna veza je ona upravljačkog signala. Program SWEEP će koristiti pin #9 Arduina za slanje upravljačkog signala, pa ga spojite na žutu (kontrolnu) žicu servo motora.
  • NEOBVEZNO - Prije testiranja možete postaviti Animatronic glavu po svom izboru i njenu bazu na vrh servo motora. Budite nježni jer pristajanje nije savršeno i plastični dijelovi se lome.
  • Trebali biste moći priključiti USB napajanje na Arduino, a program SWEEP bi se trebao pokrenuti, uzrokujući pomeranje servo motora naprijed -natrag.

Korak C - Izmjena programa SWEEP

  • Prije nego što upotrijebite ili uredite ovu datoteku, molimo "Spremi kao" drugi naziv datoteke (može biti vaše ime ili što god želite). Vjerojatno ste to učinili već u koraku A. Za svaki od dolje navedenih dijelova zabilježite svoja zapažanja, kao i sve promjene koje ste unijeli u kôd.
  • Pomoću štoperice izmjerite koliko je vremena potrebno da pređete do kraja i nazad _
  • Unosit ćete promjene u softver (ponekad se naziva i "kod" ili "skica")
  • Promijenite obje vrijednosti "Odgode" s 15 na drugi veći broj (za lakše izračunavanje odaberite zaokruženi broj 15). Koju ste vrijednost koristili? _. Što mislite koje će biti novo vrijeme SWEEP -a? _. Izmjerite novo vrijeme SWEEP -a i zabilježite sve razlike _.
  • Promijenite kašnjenja na 15, a sada promijenite uglove položaja sa 180 na jednostavno 90 (obje vrijednosti). Koji je novi raspon kretanja servo motora (90 stupnjeva ili više ili manje?) _.
  • Ostavljajući raspon kretanja na 90 stupnjeva, smanjite "Odgodu" na broj manji od 15. Na koliko mali broj možete otići prije nego što se servo počne ponašati nestalno ili više ne dovršava cijeli raspon pokreta? _

Nakon što dovršite ove korake, imat ćete sva mjerenja i praksu koja vam je potrebna da biste bili spremni za korištenje vašeg servo motora za kontrolu raznih ponavljajućih animatronskih pokreta naprijed -natrag, bilo gdje od malog kuta sve do 180 stupnjeva, a također pri raznim brzinama koje kontrolirate.

Korak 5: Daljinski upravljano kretanje

Pokret s daljinskim upravljanjem
Pokret s daljinskim upravljanjem
Pokret s daljinskim upravljanjem
Pokret s daljinskim upravljanjem
Pokret s daljinskim upravljanjem
Pokret s daljinskim upravljanjem

Umjesto ponavljanja istog pokreta iznova i iznova tijekom cijelog dana, u ovom koraku ćemo daljinski upravljati položajem naše animatronske lutke "C3PO" da gleda lijevo i desno i bilo koji položaj između. Budući da čovjek kontrolira, to zovemo kontrolom "otvorene petlje".

S kontrolom otvorene petlje kontrolirate točan položaj servo motora. Za okretanje će nam trebati gumb, a za to ćemo upotrijebiti plavi potenciometar.

  • Trebat će nam još jedno mjesto na ploči s naponima od +5 i 0 (uzemljenje). Povucite ove kratkospojnike kako biste odvojili redove na ploči i učinili ih jednim redom odvojenima, kako bi se poravnali s vanjskim pinovima potenciometra koje ćemo dodati za trenutak.
  • Sada dodajte potenciometar. Prije nego gurnete igle potenciometra u ploču za provjeru, provjerite jesu li sve tri poredane s ispravnim rupama, a zatim gurnite iglice ravno prema dolje kako se ne bi savijale. Središnji pin potenciometra bit će spojen na nulu analognog ulaza (A0) na Arduinu. Za to se dodaje dodatna žica.
  • Kako bismo očitali napon s potenciometra i upotrijebili ga za upravljanje servo motorom, upotrijebit ćemo softver "KNOB", koji se također nalazi pod Datoteka -> Primjeri -> Servo. Pokrenite program, okrenite gumb i zabilježite ono što promatrate.

Naravno, mogli biste provesti neke vrlo dugačke žice tako da se upravljačko dugme nalazi u drugoj prostoriji od animatronske lutke, ili biste mogli biti samo na maloj udaljenosti (na primjer, iz snimljene kamere ako snimate film).

Korak 6: Pokretanje pokreta (pomoću senzora)

Triggered Motion (pomoću senzora)
Triggered Motion (pomoću senzora)
Triggered Motion (pomoću senzora)
Triggered Motion (pomoću senzora)
Triggered Motion (pomoću senzora)
Triggered Motion (pomoću senzora)

Ponekad želite da se vaša lutka odjednom pomakne - posebno zbog zastrašujućih zezancija za Noć vještica ili da privučete još veću pozornost. U ovom koraku rekonfigurirat ćemo našu lutku "Uskršnja otočna glava" da se brzo okrene i suoči s onim tko prođe i baci sjenu na svjetlosni senzor.

U slučaju upravljanja senzorom servo motora, koristit ćemo svjetlosni senzor koji će kontrolirati točan položaj servo motora. Što je tamnija sjena bačena na senzor (i vjerojatno što se osoba približi lutki), marioneta brže i dalje okreće glavu.

  • Uklonit ćemo potenciometar i zamijeniti ga ekvivalentnim krugom od dva otpornika. U tom će slučaju jedan od dva otpornika (R2) biti svjetlosni senzor.
  • Da bismo nam dali prostora, raširili smo +5V (lijevo) i 0V uzemljenje (desno) lampere kako bismo mogli dodati otpornik od 10K Ohma i svjetlosni senzor, spojeni u sredini u istom redu s kratkospojnikom koji vodi do analognog ulaza nula (A0) na Arduino ploči.
  • Sjenilom ruke zaklonite svjetlosni senzor i na druge načine učinite da svjetlosni senzor dobije najveću i najmanju moguću količinu svjetla. Možete li dobiti puni raspon pokreta od 180 stupnjeva?

Baš kao u verziji s daljinskim upravljačem, foto otpornik možete postaviti na dobru udaljenost od svoje animatronske lutke, a možete promijeniti i vrijednosti otpornika ili softversko programiranje za promjenu reakcija lutaka.

Korak 7: Sada isprobajte

Sada isprobajte!
Sada isprobajte!
Sada isprobajte!
Sada isprobajte!

Sada ste svladali tri osnovne vrste animatronskih pokreta koje možete stvoriti s jednim servo motorom.

- Ponavljajuće se kretanje

- Daljinski upravljano kretanje

- Pokretanje pokreta pomoću senzora

To možete podići na višu razinu korištenjem različitih vrsta lutaka, pokreta, kontrola i, naravno, umjetnosti koju samo vi možete stvoriti!

Preporučeni: