Kazalo:

Hexapod: 14 korakov (s slikami)
Hexapod: 14 korakov (s slikami)

Video: Hexapod: 14 korakov (s slikami)

Video: Hexapod: 14 korakov (s slikami)
Video: Suite from The Love for Three Oranges, Op. 33bis: III. March 2024, Julij
Anonim
Hexapod
Hexapod
Hexapod
Hexapod
Hexapod
Hexapod

Že nekaj let me zanima igranje in ustvarjanje robotov, zelo me je navdihnila Zenta, tukaj boste našli njegov Youtube kanal https://www.youtube.com/channel/UCmCZ-oLEnCgmBs_T in njegovo spletno stran https://zentasrobots.com.

Na spletu lahko najdete veliko kompletov različnih prodajalcev, vendar so zelo dragi, do 1.500 $+ za šesteronožnik s 4 DoF, kitajski kompleti pa niso dobre kakovosti. Odločil sem se torej ustvarjati v šesteronožcu na svoj način. Navdihnjen z Zentinim heksapodom Phoenix, ga boste našli na njegovem kanalu Youtube (in komplet, ki ga najdete https://www.lynxmotion.com/c-117-phoenix.aspx, sem začel ustvarjati svojega iz nič.

Za ustvarjanje, če za mene nastavite naslednje cilje/zahteve:

1.) Lepo se imejte in se naučite novih stvari.

2.) Oblikovanje na podlagi stroškov (prekleto, moje podjetje me je popolnoma razvajalo)

3.) Deli iz lesa (ker je za večino ljudi in tudi mene lažje rezanje lesa)

4.) Uporaba brezplačnih razpoložljivih orodij (programske opreme)

Torej, kaj sem do sedaj uporabljal?

a) SketchUp za mehansko zasnovo.

b) Bukov les 4 mm in 6 mm (1/4 ).

c) Arduino Uno, Mega, IDE.

d) Digitalni standardni servomotorji (na Amazonu po ugodni ceni).

e) Dosuki in tračna žaga, vrtalni stroj, brusni papir in pilica.

1. korak: Konstrukcija nog in servo nosilcev

Konstrukcija nog in servo nosilcev
Konstrukcija nog in servo nosilcev
Konstrukcija nog in servo nosilcev
Konstrukcija nog in servo nosilcev
Konstrukcija nog in servo nosilcev
Konstrukcija nog in servo nosilcev

Najprej sem na internetu raziskal, kako ugotoviti, kako narediti robota, vendar nisem bil zelo uspešen pri iskanju dobrih informacij o tem, kako narediti mehansko oblikovanje. Tako sem se zelo mučil in končno sem se odločil uporabiti SketchUp.

Po nekaj urah učenja s SketchUpom sem končal s prvo zasnovo nog. Stegnenica je optimizirana glede na velikost servo rogov, ki jih uporabljam. Kot sem ugotovil, se zdi, da je original približno 1 v premeru, vendar imajo moji servo rogovi 21 mm.

Izpis s pravo lestvico ni deloval pravilno s programom SketchUp v mojem računalniku, zato sem ga shranil kot PDF, naredil izpis s 100%, naredil nekaj meritev in na koncu spet natisnil s pravim faktorjem skaliranja.

Prvič sem ustvarjal samo umetnost za dve nogi. Za to sem zložil dve deski, nanjo nalepil (za stenski papir) izpis in dele izrezal z vzorčno obrtno tračno žago.

Uporabljeni material: bukov les 6 mm (1/2 )

Nato sem naredil nekaj poskusov, ki jih nisem dokumentiral in naredil nekaj optimizacij. Kot lahko vidite, je golenica nekoliko večja, kot tudi stegnenica.

Za namestitev servo rogov skozi stegnenico je treba odrezati 2 mm materiala. To je mogoče storiti na različne načine. Z usmerjevalnikom ali s svedrom Forstner. Forstner je imel premer le 200 mm, zato sem moral nekaj ročno narediti z dletom povojno.

2. korak: optimizacija stegnenice in golenice

Optimizacija stegnenice in golenice
Optimizacija stegnenice in golenice
Optimizacija stegnenice in golenice
Optimizacija stegnenice in golenice
Optimizacija stegnenice in golenice
Optimizacija stegnenice in golenice
Optimizacija stegnenice in golenice
Optimizacija stegnenice in golenice

Malo sem spremenil dizajn.

1.) Tibia zdaj veliko bolje prilega servo, ki ga uporabljam.

2.) Stegnenica je zdaj nekoliko manjša (približno 3 od osi do osi) in ustreza servorogom (premer 21 mm).

Uporabljal sem 6 plošč iz 6 mm lesenega lesa in jih zlepil z dvostranskim trakom. Če to ni dovolj močno, lahko izvrtate luknjo skozi vse plošče in jih pritrdite z vijakom. nato se deli takoj izrežejo s tračno žago. Če ste dovolj trdi, lahko uporabite tudi sestavljanko:-)

3. korak: Oblikovanje servo nosilca

Oblikovanje servo nosilca
Oblikovanje servo nosilca
Oblikovanje servo nosilca
Oblikovanje servo nosilca
Oblikovanje servo nosilca
Oblikovanje servo nosilca
Oblikovanje servo nosilca
Oblikovanje servo nosilca

Zdaj je čas za oblikovanje servo nosilca. To je močno zasnovano glede na rabljeni servo, ki sem ga uporabljal. Vsi deli so narejeni iz bukovega lesa 6 mm, glej naslednji korak.

4. korak: Rezanje in sestavljanje servo nosilcev

Rezanje in sestavljanje servo nosilcev
Rezanje in sestavljanje servo nosilcev
Rezanje in sestavljanje servo nosilcev
Rezanje in sestavljanje servo nosilcev

Spet sem na tračni žagi izrezal šest delov hkrati. Metoda je enaka kot prej.

1.) Z dvostranskim trakom zlepimo plošče skupaj.

2.) Vijaki za večjo stabilnost pri rezanju (tukaj ni prikazano).

Nato sem uporabil nekaj vzorčnega lepila za lepljenje skupaj in dva vijaka SPAX (na fotografiji še ni uporabljen).

V primerjavi s prvotnim šesteronožcem še ne uporabljam krogličnih ležajev, namesto tega uporabljam samo 3 mm vijake, podložke in samorezne matice, da sestavim noge s karoserijo/šasijo.

5. korak: Sestavljanje nog in preizkus

Image
Image
Sestavljanje nog in preizkus
Sestavljanje nog in preizkus
Sestavljanje nog in preizkus
Sestavljanje nog in preizkus

Na prvih dveh slikah vidite prvo različico noge. Nato vidite primerjavo starih in novih delov ter primerjavo novih delov (različica druga) z izvirnikom (fotografija v ozadju).

Končno boste opravili prvi test gibanja.

Korak 6: Sestavljanje in sestavljanje telesa

Sestavljanje in sestavljanje telesa
Sestavljanje in sestavljanje telesa
Sestavljanje in sestavljanje telesa
Sestavljanje in sestavljanje telesa
Sestavljanje in sestavljanje telesa
Sestavljanje in sestavljanje telesa

Telo, ki sem ga poskušal rekonstruirati po fotografijah. Za referenco sem uporabil servo rog, za katerega sem predpostavil, da ima premer 1 ". Torej, sprednja stran postane širina 4,5" in srednja 6,5 ". Za dolžino sem predpostavil 7". Kasneje sem kupil originalni body body in ga primerjal. Zelo sem se približal izvirniku. Nazadnje sem naredil še tretjo različico, ki je kopija izvirnika v razmerju 1: 1.

Prvi komplet, ki sem ga naredil iz 6 mm lesenega lesa, tukaj vidite drugo različico iz 4 mm lesenega lesa, za katerega sem ugotovil, da je dovolj močan in trd. Za razliko od prvotnega kompleta sem servo rog montiral na vrh, oz. skozi material (to lahko vidite tudi s stegnenico). Razlog je v tem, da nisem razpoložen za nakup dragih aluminijastih rogov, namesto tega želim uporabiti že dostavljene plastične rogove. Drug razlog je, da se približujem servomotorju, zato so sile strganja manjše. Tako je povezava stabilnejša.

Mimogrede, včasih je dobro imeti Ganesha na krovu. Hvala prijateljici Tejas:-)

7. korak: Prvi preskusi elektronike

Image
Image
Golenica in Coxa EV3
Golenica in Coxa EV3

Vse umetnosti so zdaj združene. V redu, vem, da ni videti zelo lepo, v resnici pa veliko eksperimentiram. V videoposnetku lahko vidite nekaj preprostih vnaprej določenih sekvenc, pravzaprav ni izvedene obratne kinematike. Vnaprej določena hoja ne deluje pravilno, ker je zasnovana za 2 DoF.

V tem primeru uporabljam servo krmilnik SSC-32U podjetja Lynxmotion, našli ga boste tukaj:

Pred dnevi sem uporabljal tudi drug krmilnik PWM (16-kanalni krmilnik PWM Adafruit, https://www.adafruit.com/product/815), vendar ima SCC pravzaprav nekaj lepih funkcij, na primer upočasnitev servomotorjev.

Torej, to je že to. Nato moram ugotoviti, kako deluje obratna kinematika (IK), morda bom programiral preprosto hojo, kot je vnaprej določena v krmilniku SSC. Primer, pripravljen za uporabo, sem že našel tukaj https://github.com/KurtE/Arduino_Phoenix_Parts, vendar ga še nisem zagnal. Ne vem zakaj, ampak delam naprej.

Torej, tukaj je kratek seznam ToDo.

1.) Programirajte preprosto vgradnjo v SSC.

2.) Programirajte razred/ovoj krmilnika PS3 za Arduino Phoenix.

3.) Pridobite kodo pri izvajanju KurtE ali napišite svojo kodo.

Servomotorje, ki jih uporabljam, sem našel na Amazonu https://www.amazon.de/dp/B01N68G6UH/ref=pe_3044161_189395811_TE_dp_1. Cena je precej dobra, kakovost pa bi lahko bila veliko boljša.

8. korak: Prvi preprost preizkus hoje

Kot sem omenil v zadnjem koraku, sem poskušal programirati lastno zaporedje hoje. To je zelo preprosto, kot mehanska igrača, in ni prilagojeno telesu, ki ga tukaj uporabljam. Preprosto ravno telo bi bilo veliko bolje.

Zato vam želim veliko zabave. Zdaj se moram naučiti IK;-)

Opombe: Ko pozorno opazujete noge, boste videli, da se nekateri servomotorji obnašajo čudno. Mislim, da se ne premikajo vedno gladko, morda jih moram zamenjati z drugimi servomotorji.

9. korak: Prenos krmilnika PS3

Danes zjutraj sem delal na pisanju ovoja za kodo Phoenix. Za to sem potreboval nekaj ur, približno 2-3. koda ni dokončno odpravljena in v konzolo sem dodal nekaj dodatnih napak. Zaenkrat deluje:-)

Mimogrede, ko sem uporabljal kodo Phoenix, izgleda, da so vsi servomotorji obrnjeni (v nasprotni smeri).

Če se želite preizkusiti sami, potrebujete kodo iz KurtE kot osnovo https://github.com/KurtE/Arduino_Phoenix_Parts. Sledite navodilom za namestitev kode. Kopirajte mapo Phoenix_Input_PS v mapo knjižnice Arduino (običajno podmapo mape s skicami) in mapo Phoenix_PS3_SSC32 v mapo s skicami.

Informacije: Če nimate izkušenj z Arduinom in orodji ter imate težave, se obrnite na skupnost Arduino (www.arduino.cc). Če imate težave s kodo Phoenix podjetja KurtE, se obrnite nanj. Hvala.

Opozorilo: Razumevanje kode po mojem mnenju ni nič za začetnike, zato morate biti dobro seznanjeni s C/C ++, programiranjem in algoritmom. Koda ima tudi veliko pogojno prevedene kode, ki jo nadzira #defines, zato je zelo težko brati in razumeti.

Seznam strojne opreme:

  • Arduino Mega 2560
  • Gostiteljski ščit USB (za Arduino)
  • PS3 krmilnik
  • Servo krmilnik LynxMotion SSC-32U
  • Baterija 6 V (prosimo, preberite zahteve za vse HW, sicer lahko poškodujete)
  • Arduino IDE
  • Nekateri kabli USB, stikala in drugi manjši deli po potrebi.

Če vam je všeč krmilnik PS2, boste v internetu našli veliko informacij o tem, kako se povezati z Arduinom.

Zato bodite potrpežljivi. Ta korak bom posodobil, ko programska oprema deluje pravilno.

10. korak: Prvi IK test

Image
Image

Našel sem drugo vrata kode Phoenix, ki deluje veliko bolje (https://github.com/davidhend/Hexapod), morda imam težave s konfiguracijo druge kode. Zdi se, da je koda malce napačna in hoje niso videti ravno gladke, vendar je to zame velik korak naprej.

Upoštevajte, da je koda dejansko eksperimentalna. Veliko moram počistiti in popraviti, v naslednjih dneh pa bom objavil posodobitev. Vrata PS3 temeljijo na že objavljenih vratih PS3, datoteke PS2 in XBee pa sem zavrgel.

11. korak: Drugi IK test

Rešitev je bila tako enostavna. Moral sem popraviti nekatere konfiguracijske vrednosti in obrniti vse servo kote. Zdaj deluje:-)

12. korak: Tibia in Coxa EV3

Golenica in Coxa EV3
Golenica in Coxa EV3
Golenica in Coxa EV3
Golenica in Coxa EV3

Nisem se mogel upreti, zato sem naredil nove golenice in coxa (servo nosilce). To je zdaj tretja različica, ki sem jo naredil. Nove so bolj okrogle oblike in imajo bolj organski/bionični videz.

Dejansko stanje je torej. Heksapod deluje, vendar imate še vedno nekaj težav z nekaj stvarmi.

1.) Nisem ugotovil, zakaj ima BT zamudo 2..3 sekunde.

2.) Kakovost servo je slaba.

Stvari za narediti:

* Ožičenje servomotorjev je treba izboljšati.

* Potrebujete dobro držalo za baterije.

* Morate najti način za namestitev elektronike.

* Ponovno umerite servomotorje.

* Dodajanje senzorjev in monitorja napetosti za baterijo.

Korak: Gladko oblikovana stegnenica

Gladko oblikovana stegnenica
Gladko oblikovana stegnenica
Gladko oblikovana stegnenica
Gladko oblikovana stegnenica
Gladko oblikovana stegnenica
Gladko oblikovana stegnenica
Gladko oblikovana stegnenica
Gladko oblikovana stegnenica

Pred nekaj dnevi sem že naredil novo stegnenico, ker s prejšnjo nisem bil popolnoma zadovoljen. Na prvi sliki boste videli razlike. Stari so imeli na koncih premer 21 mm, novi imajo premer 1 palca. S svojim rezkalnim strojem sem s preprostim orodjem za pomoč naredil luknje v stegnenici, kot lahko vidite na naslednjih treh slikah.

Preden potopite v stegnenico, je smiselno izvrtati vse luknje, sicer lahko postane težko. Servo rog se zelo dobro prilega, naslednji korak, ki tukaj ni prikazan, daje robom okroglo obliko. Za to sem uporabil usmerjevalnik s polmerom 3 mm.

Na zadnji sliki boste videli primerjavo stare in nove. Ne vem, kaj mislite, ampak nova mi je bolj všeč.

Korak 14: Zadnji koraki

Image
Image
Zadnji koraki
Zadnji koraki
Zadnji koraki
Zadnji koraki
Zadnji koraki
Zadnji koraki

Zdaj bom končal to vadnico, drugače bo postala neskončna zgodba:-).

V videoposnetku boste videli kodo Phoenix KurtE z nekaterimi mojimi spremembami. Robot se ne premika popolnoma, žal mi je, a poceni servomotorji so slabe kakovosti. Naročil sem še nekaj drugih servomotorjev, dve sem pravkar preizkusil z dobrimi rezultati in še čakam na dostavo. Žal vam ne morem pokazati, kako robot deluje z novimi servomotorji.

Pogled od zadaj: Tokovni senzor 20 amperov, levo od lonca 10 k. Ko robot hodi, bo zlahka porabil 5 amperov. Desno od lonca 10 k boste videli slikovno piko OLED 128x64, ki prikazuje nekaj informacij o stanju.

Pogled od spredaj: Preprost ultrazvočni senzor HC-SR04, ki še ni integriran v SW.

Pogled z desne strani: pospeševalnik in žiroskop MPU6050 (6-osni).

Pogled z leve strani: Piezo zvočnik.

Mehanska zasnova je zdaj bolj ali manj narejena, razen servomotorjev. Naslednje naloge bodo torej vključevanje nekaterih senzorjev v SW. Za to sem ustvaril račun GitHub s programsko opremo, ki jo uporabljam, ki temelji na posnetku KurtEjevega Phoenix SW.

OLED:

Moj GitHub:

Priporočena: