Përmbajtje:

Bazat e Animatronics - Servo Motor: 8 hapa
Bazat e Animatronics - Servo Motor: 8 hapa

Video: Bazat e Animatronics - Servo Motor: 8 hapa

Video: Bazat e Animatronics - Servo Motor: 8 hapa
Video: CS50 2014 – 7-я неделя 2024, Korrik
Anonim
Image
Image

Pavarësisht nëse është një shfaqje argëtuese festash në dritaren e një dyqani, apo një shaka e frikshme e Halloween, asgjë nuk tërheq vëmendjen si një kukull e animuar.

Këto animacione të kontrolluara në mënyrë elektronike nganjëherë quhen "animatronikë" dhe kjo e udhëzueshme do t'ju mësojë se si të bëni llojin më themelor, atë të kontrolluar nga një servo motor i vetëm.

Ne do të përdorim mikrokontrolluesin Arduino si tru, dhe do të shohim se si një potenciometër dhe një servo funksionojnë brenda, gjithashtu ju mësojnë se si të ndërtoni tre metoda të ndryshme kontrolli:

1 - Lëvizje e përsëritur vazhdimisht

2 - Lëvizje me telekomandë

3 - Lëvizje e nxitur (duke përdorur një sensor drite)

Hapi 1: Lista e Pjesëve

Lista e Pjesëve
Lista e Pjesëve
Lista e Pjesëve
Lista e Pjesëve

Ju do të keni nevojë për një mikrokontrollues (i treguar në foton e parë është Arduino nga https://adafru.it së bashku me kompletin e tyre të pjesëve të buxhetit për një total prej $ 30) dhe një servo motor (një version i vogël i Kullës është treguar në foton e dytë së bashku me disa pjesë lidhëse, nga i njëjti dyqan me 12 dollarë). Ju gjithashtu do të keni nevojë për një kondensator të vogël ose një burim më të fuqishëm të tensionit nëse jeni duke përdorur servo motorë të shumtë (një karikues muri 9V për Arduino do të funksionojë)

Një mikrokontrollues është një kompjuter i tërë PC në një çip të vetëm. Padyshim që nuk është aq i fuqishëm sa kompjuteri juaj në shtëpi, ai ka RAM shumë të ndritshëm, asnjë disk disk, asnjë tastierë ose maus, por është vërtet i shkëlqyeshëm në kontrollin e gjërave (prandaj emri). Ju do të gjeni një nga këto patate të skuqura brenda shumë artikujve të përditshëm, siç janë makinat larëse dhe kompjuterët e injektimit të karburantit automatik.

Marka e mikrokontrolluesve "Arduino" gjithashtu shton disa qarqe të tjera që e lidhin atë me botën e jashtme dhe e vendosin në një tabelë të përshtatshme.

Vini re se në "kompletin e pjesëve të buxhetit" ka disa tela, rezistorë, lidhës LED dhe një palë çelësa blu, të quajtur potenciometra. Më shumë rreth potenciometrave në hapin tjetër.

Së fundi, do t'ju duhet një servo motor, dhe ai vjen me disa lidhës të vidhosur për ta bashkangjitur atë në kukullën tuaj në lëvizje. Ne do të përdorim lidhësin në formë X në këtë mësim.

Hapi 2: Rishikimi i Potenciometrit

Rishikimi i potenciometrit
Rishikimi i potenciometrit
Rishikimi i potenciometrit
Rishikimi i potenciometrit
Rishikimi i potenciometrit
Rishikimi i potenciometrit
Rishikimi i potenciometrit
Rishikimi i potenciometrit

Një potenciometër është në thelb një çelës më i zbehtë - ose në terminologjinë elektronike - një palë rezistorë të ndryshueshëm. Duke e kthyer çelësin, ju e bëni njërën rezistencë më të madhe, dhe rezistencën tjetër më të vogël.

Shumicën e kohës ne përdorim një potenciometër (nganjëherë i quajtur "tenxhere") për të kontrolluar një tension duke përdorur diagramin e qarkut të treguar më sipër.

Fotografia më e majtë tregon tenxheren aktuale, me telat e sipërm dhe të poshtëm të lidhur me tensionin +5 dhe Ground, dhe tela e mesme që nxjerr tensionin e dëshiruar. Diagrami i mesëm tregon simbolin për një tenxhere, dhe diagrami i fundit tregon qarkun ekuivalent.

Imazhet janë mirësjellje Wikimedia.org

Hapi 3: Rishikimi i Servo Motor

Servo Motor Rishikimi
Servo Motor Rishikimi
Servo Motor Rishikimi
Servo Motor Rishikimi
Servo Motor Rishikimi
Servo Motor Rishikimi

Një servo motor ka katër pjesë kryesore.

1. Një motor që mund të kthehet përpara dhe prapa, zakonisht me shpejtësi të madhe dhe çift rrotullues.

2. Një sistem i zbulimit të pozicionit, i cili mund të tregojë se në cilin kënd është aktualisht servo motori

3. Një sistem ingranazhi që mund të marrë shumë rrotullime të një motori dhe ta bëjë atë në një lëvizje të vogël këndore.

4. Një qark kontrolli që mund të korrigjojë gabimin midis këndit aktual dhe këndit të pikës së caktuar të dëshiruar.

Pjesët 1 dhe 2 janë treguar në imazhin e parë. Vini re se pjesa 2 është një potenciometër.

Pjesa 3 është treguar në imazhin e dytë.

Pjesa 4 është treguar në imazhin e tretë.

Hapi 4: Lëvizja e përsëritur

Lëvizje e përsëritur
Lëvizje e përsëritur
Lëvizje e përsëritur
Lëvizje e përsëritur
Lëvizje e përsëritur
Lëvizje e përsëritur

Këtu do të bëjmë që koka e kukullës sonë "Bender" të kthehet majtas dhe djathtas, mbrapa dhe me radhë, për aq kohë sa fuqia është e lidhur nga kablloja USB. Kjo është e shkëlqyeshme për një shfaqje argëtuese festash që dëshironi të vazhdoni të lëvizni gjatë gjithë ditës.

Arduino vjen me një Mjedis të Zhvillimit të Integruar (IDE) i cili është një mënyrë e zbukuruar për të thënë se vjen me një aplikacion për kompjuterin tuaj që ju lejon të jepni udhëzime (ikona Arduino IDE është një figurë anash 8). Këto udhëzime qëndrojnë të ruajtura në tabelë edhe nëse e shkëputni kompjuterin dhe fillojnë të funksionojnë përsëri kur të rilidhni rrymën në Arduino tuaj. Në këtë rast, ne do të përdorim softuerin e quajtur "Fshij" të cilin mund ta gjeni në shembujt IDE nën kategorinë "Servo".

Tjetra do të lidhni servo me një kondensator të stabilizuar 5 volt (tela Servo e kuqe në Arduino +5, tela Servo ngjyrë kafe në Arduino GND) dhe me sinjalin e kontrollit (tela Servo e verdhë në daljen Arduino të daljes 9). Koka e kukullave është opsionale;-)

DETAJE:

Nëse sa më sipër ishte pak konfuze, udhëzimet e hollësishme janë si më poshtë:

Hapi A - Programimi i Arduino

  • Hapni Arduino IDE (duhet të jetë një ikonë me figurën 8 në desktopin tuaj)
  • Nën "Mjetet" sigurohuni që "Bordi" të jetë vendosur në "Arduino/Genuino Uno".
  • Lidhni harduerin Arduino me kompjuterin duke përdorur kabllon USB
  • Sigurohuni që cilësimi "Port" nën "Tools" është konfiguruar gjithashtu për Arduino.
  • Nën "Skedarët" zgjidhni "Shembullin" e quajtur "Fshij" (mund ta gjeni nën "Servos")
  • Para se të përdorni ose modifikoni këtë skedar, ju lutemi "Ruaj si" një emër skedari tjetër (mund të jetë emri juaj, ose çfarëdo që zgjidhni). Kjo do ta mbajë skedarin të pandryshuar për studentin tjetër që përdor këtë kompjuter.
  • Përdorni butonin Shigjeta (ose nën "Skicë" zgjidhni "Ngarko") për të ngarkuar skicën Sweep në Arduino

Hapi B - Lidhja e Servo Motor me Fshirjen

Në këtë pjesë, ne do të ndërtojmë variacione të qarqeve të përshkruara në https://learn.adafruit.com/adafruit-arduino-lesso… Ne do të lidhim telat Kuq dhe Kafe të Servo në +5 dhe GND të Ardiuno, respektivisht Ne gjithashtu do të vendosim një kondensator të rrafshimit të tensionit në atë tension, dhe më në fund do të lidhim tela të Verdhë të servo -së me kunjin dalës 9 të Arduino.

  • Shkëputeni Arduino nga porta USB kur jeni duke ndërtuar qarkun.
  • Ne do të përdorim 5V dhe Ground nga bordi Arduino, kështu që silleni ato në tabelën tuaj të bukës duke përdorur telat e kuq dhe jeshil, përkatësisht.
  • Meqenëse fuqia mund të jetë pak e lëkundur nga porta USB (jo shumë aktuale, dhe servo motori mund të bëjë që bordi Arduino të rivendoset për shkak të rrymës së ulët) ne do të vendosim një kondensator përgjatë këtij tensioni, duke u siguruar që tela të etiketuar "minus - "Është në anën e Tokës.
  • Tani lidhni Red (+5) dhe Brown (Ground) të lidhur me Servo në tryezën e bukës.
  • Lidhja përfundimtare elektrike është ajo e sinjalit të kontrollit. Programi SWEEP do të përdorë kunjin #9 të Arduino për të dërguar sinjalin e kontrollit, kështu që lidheni këtë me tela të verdhë (kontrolli) të Servo Motor.
  • OPSIONALE - Ju mund të vendosni një kokë Animatronic sipas dëshirës tuaj dhe bazën e tij në krye të motorit servo para se ta testoni. Ju lutemi tregohuni të butë pasi përshtatja nuk është perfekte dhe pjesët plastike prishen.
  • Duhet të jeni në gjendje të aplikoni energji USB në Arduino dhe programi SWEEP duhet të funksionojë, duke bërë që servo motori të spastrojë mbrapa dhe me radhë.

Hapi C - Modifikimi i programit SWEEP

  • Para se të përdorni ose modifikoni këtë skedar, ju lutemi "Ruaj si" një emër skedari tjetër (mund të jetë emri juaj, ose çfarëdo që zgjidhni). Ju ndoshta e keni bërë këtë tashmë në hapin A. Për secilën nga pjesët më poshtë, regjistroni vëzhgimet tuaja si dhe çdo ndryshim që keni bërë në kod.
  • Duke përdorur një kronometër, matni sa kohë duhet për të fshirë gjatë gjithë rrugës dhe mbrapa _
  • Ju do të bëni ndryshime në softuer (nganjëherë i quajtur "kod" ose "skicë")
  • Ndryshoni të dy vlerat "Vonesa" nga 15 në një numër më të madh (zgjidhni një shumëfish të rrumbullakët prej 15 për lehtësinë e llogaritjeve). Çfarë vlere keni përdorur? _. Çfarë mendoni se do të jetë koha e re e SWEEP? _. Matni kohën e re të SWEEP dhe shënoni çdo mospërputhje _.
  • Ndryshoni Vonesat në 15, dhe tani ndryshoni këndet e pozicionit nga 180 në thjesht 90 (të dyja këto vlera). Cila është diapazoni i ri i lëvizjes së servo motorit (90 gradë, ose më shumë ose më pak?) _.
  • Duke e lënë gamën e lëvizjes në 90 gradë, ulni "Vonesën" në një numër më të vogël se 15. Sa i vogël i një numri mund të shkoni para se servo të fillojë të sillet në mënyrë të çrregullt ose të mos përfundojë më të gjithë gamën e lëvizjes? _

Pas përfundimit të këtyre hapave, do të keni të gjitha matjet dhe praktikën që ju nevojitet për të qenë gati për të përdorur servo motorin tuaj për të kontrolluar një sërë lëvizjesh animatronike të përsëritura përpara dhe prapa, kudo nga një kënd i vogël deri në 180 gradë, dhe gjithashtu me një larmi të madhe shpejtësish që kontrolloni.

Hapi 5: Lëvizja e kontrolluar nga distanca

Lëvizje me telekomandë
Lëvizje me telekomandë
Lëvizje me telekomandë
Lëvizje me telekomandë
Lëvizje me telekomandë
Lëvizje me telekomandë

Në vend që të përsërisim të njëjtën lëvizje gjatë gjithë ditës, në këtë hap ne do të kontrollojmë nga distanca pozicionin e kukullës sonë animatronike "C3PO" për të parë majtas dhe djathtas dhe çdo pozicion në mes. Meqenëse një person po bën kontrollin, ne e quajmë këtë kontroll "lak të hapur".

Me kontrollin e lakut të hapur, ju kontrolloni pozicionin e saktë të servo motorit. Ne do të kemi nevojë për një çelës që ju të ktheheni, dhe ne do të përdorim potenciometrin blu për këtë.

  • Do të na duhet një vend tjetër në tabelën e bukës që ka +5 dhe 0 (Ground) volt. Drejtoni këto tela kërcyes për të ndarë rreshtat në tryezën e bukës dhe i bëni ato një rresht larg njëra -tjetrës, për t'u rreshtuar me kunjat e jashtme të potenciometrit që do të shtojmë në një moment.
  • Tani shtoni Potenciometrin. Para se të shtyni kunjat e potenciometrit në dërrasën e bukës, sigurohuni që të treja janë rreshtuar me vrimat e duhura, dhe më pas shtyjini kunjat drejt poshtë që të mos përkulen. Kunja qendrore e potenciometrit do të lidhet me Analog Input zero (A0) në Arduino. Një tel shtesë shtohet për ta bërë këtë.
  • Në mënyrë që të lexojmë tensionin nga potenciometri dhe ta përdorim atë për të kontrolluar servo motorin, ne do të përdorim softuerin "KNOB", i gjetur gjithashtu nën Skedarin -> Shembujt -> Servo. Drejtoni programin, rrotulloni çelësin dhe regjistroni atë që vëzhgoni.

Natyrisht, ju mund të kaloni disa tela shumë të gjatë në mënyrë që çelësi i kontrollit të jetë në një dhomë të ndryshme nga kukulla animatronike, ose mund të jeni vetëm një distancë të shkurtër larg (për shembull, nga xhirimet e kamerës nëse jeni duke bërë një film).

Hapi 6: Lëvizja e shkaktuar (duke përdorur një sensor)

Lëvizja e shkaktuar (duke përdorur një sensor)
Lëvizja e shkaktuar (duke përdorur një sensor)
Lëvizja e shkaktuar (duke përdorur një sensor)
Lëvizja e shkaktuar (duke përdorur një sensor)
Lëvizja e shkaktuar (duke përdorur një sensor)
Lëvizja e shkaktuar (duke përdorur një sensor)

Ndonjëherë ju doni që kukulla të lëvizë papritur - veçanërisht për shaka të frikshme të Halloween ose për të tërhequr edhe më shumë vëmendje. Në këtë hap, ne do të rikonfigurojmë kukullën tonë "Koka e Ishullit të Pashkëve" që të kthehet shpejt dhe të përballet me këdo që kalon dhe hedh një hije në një sensor dritë.

Në rastin e Kontrollit të Sensorit të Servo Motor, ne do të përdorim një sensor drite që do të kontrollojë pozicionin e saktë të servo motorit. Sa më e errët të jetë hija e hedhur mbi sensorin (dhe me sa duket sa më afër që personi shkon te kukulla) aq më shpejt dhe më larg kukulla kthen kokën.

  • Ne do të heqim potenciometrin dhe do ta zëvendësojmë me qarkun ekuivalent të dy rezistencave. Në këtë rast, një nga dy rezistorët (R2) do të jetë një sensor drite.
  • Për të na dhënë pak hapësirë, ne përhapim llambat +5V (majtas) dhe 0V Ground (djathtas) në mënyrë që të mund të shtojmë rezistencën 10K Ohm dhe Sensorin e Dritës, të lidhur në qendër në të njëjtën rresht me kabllon e kërcyesit që çon në Hyrjen Analog zero (A0) në tabelën Arduino.
  • Përdorni hijen e dorës tuaj për të errësuar sensorin e dritës dhe përdorni mënyra të tjera për ta bërë sensorin e dritës të marrë sasinë më të madhe dhe më të vogël të mundshme të dritës. A jeni në gjendje të merrni gamën e plotë të lëvizjes 180 gradë?

Ashtu si në versionin e telekomandës, ju mund ta vendosni rezistencën e fotografisë në një distancë të mirë nga kukulla juaj animatronic dhe mund të ndryshoni vlerat e rezistencës, ose programimin e softuerit për të ndryshuar reagimet e kukullave.

Hapi 7: Tani Provojeni

Tani Provojeni!
Tani Provojeni!
Tani Provojeni!
Tani Provojeni!

Tani keni zotëruar tre llojet themelore të lëvizjes animatronike që mund të krijoni me një servo motor të vetëm.

- Lëvizje e përsëritur

- Lëvizje me telekomandë

- Lëvizja e shkaktuar duke përdorur sensorë

Ju mund ta çoni këtë në nivelin tjetër duke përdorur lloje të ndryshme kukullash, lëvizje, kontrolle dhe natyrisht, artin që vetëm ju mund të krijoni!

Recommended: