Tartalomjegyzék:

Jasper, az Arduino Hexapod: 8 lépés (képekkel)
Jasper, az Arduino Hexapod: 8 lépés (képekkel)

Videó: Jasper, az Arduino Hexapod: 8 lépés (képekkel)

Videó: Jasper, az Arduino Hexapod: 8 lépés (képekkel)
Videó: Jasper Arduino Hexapod Robot 2024, November
Anonim
Jasper, az Arduino Hexapod
Jasper, az Arduino Hexapod
Jasper, az Arduino Hexapod
Jasper, az Arduino Hexapod
Jasper, az Arduino Hexapod
Jasper, az Arduino Hexapod
Jasper, az Arduino Hexapod
Jasper, az Arduino Hexapod

A projekt időpontja: 2018. november

ÁTTEKINTÉS (JASPER)

Hat láb, három szervó lábonként, 18 szervo mozgásrendszer, amelyet egy Arduino Mega vezérel. Szervók csatlakoztatva Arduino Mega érzékelő pajzs V2. Kommunikáció a Hexapoddal Bluetooth BT12 modulon keresztül, az egyedi Android -alkalmazással beszélve. A rendszer 2 x 18650, 3400mAh és 2 x 2400mA akkumulátorral működik, mindegyik tépőzárral rögzítve a hexapod teste alatt. A szervo és a vezérlő rendszerekhez egy tápkapcsoló, valamint egy zöld led bekapcsolás jelzőlámpa található a hexapod fején. A parancsok megismétlődnek egy 16x2 méretű LCD kijelzőn. A videojel, a fénygyűrű és az ultrahangos akadálykerülés a fejben található.

MEGJEGYZÉS: Az ésszerűség kedvéért erősen ajánlom a jó minőségű szervók használatát, az MG995 szervókkal kezdtem, közülük 20 -at, amelyek közül 11 vagy kiégett, elvesztette a központosítást, vagy egyszerűen leállt.

www.youtube.com/embed/ejzGMVskKec

1. lépés: BERENDEZÉS

FELSZERELÉS
FELSZERELÉS
FELSZERELÉS
FELSZERELÉS
FELSZERELÉS
FELSZERELÉS
FELSZERELÉS
FELSZERELÉS

1. 20 x DS3218 szervó

2. 1x Hexapod alapkészlet

3. 1x Arduino Mega R3

4. 1x Arduino Mega szenzorpajzs v2

5. 1 x 2 rekeszes 18650 elemtartó

6. 2 x kétpólusú tápkapcsoló

7. Zöld led fény és 220kohm ellenállás

8. 2 x 6v 2800mAh akkumulátor csomag tépőzárral

9. 2 x 18650 x 3400mAh akkumulátor

10. 1x HC-SR04 szonár modul

11. 1x BT12 Bluetooth modul

12. 1 x Arduino V3 NodeMcu Lua WIFI ESP8266 12E IOT fejlesztőpanel

13. 1 x Arducam mini modul kamerapajzs OV2640 2 megapixeles objektívvel

14. 1 x Pixie Neon 16 LCD fénygyűrű

15. 1 x 16x2 soros LCD kijelző mellékelt IIC adapterrel.

16. 1 x 5V -os hálózati csatlakozó Arduino Mega készülékhez

17. 1 x 5V mikro USB csatlakozó a NodeMcu modulhoz.

18. 1 x DC -DC Buck átalakító modul

19. 1 x 70mm x 120mm x 39mm négyzet alakú fekete műanyag doboz (test)

20. 1 x 70mm x 50mm x 70mm fekete műanyag doboz (fej)

21. 4 x 40 mm -es M3 sárgaréz állvány és 4 gumi tartó

22. Különféle dugaszolható kábelek, forrasztók, m3 csavarok és csavarok, valamint forró ragasztó

A lábak mozgása egyedi logika segítségével. A kamera mozgása két független szervón keresztül, feladva, lefelé, balra, jobbra és középre. A kamera WIFI kapcsolattal vezérelt, az Android alkalmazás WebView nézetében jelenik meg.

2. lépés: SERVOS

SERVOS
SERVOS
SERVOS
SERVOS
SERVOS
SERVOS

Mindegyik maximum 180 fokos

minimum 0 fokos mozgás.

Minden szervót három számkombinációval azonosítanak, LegCFT; ahol C a test (COXA), F a comb (FEMUR), és T a könyök (TIBIA), így a 410 a negyedik lábra és a sípcsont szervóra vonatkozna, hasonlóan a 411 a negyedik lábra és a sípcsont szervóra. A számozási sorrend 100-tól 611-ig terjed.

Láb 1: 100, 110, 111 Elöl

2. szakasz: 200, 210, 211 leg2-láb1

3. láb: 300, 310, 311 leg4-leg3

4. láb: 400, 410, 411 leg6-leg5

Láb 5: 500, 510, 511 Vissza

6. láb: 600, 610, 611

Az összes Coax Servo alapértelmezett helyzete 90 fok.

A combcsont szervók alapértelmezett helyzete 90 fok, a nyugalmi helyzet 45 fok.

A Tibia Servos alapértelmezett helyzete minden lábnál 90 fok, az 1., 3. és 5. lábnál 175 fokot kell használni, míg a 2., 4. és 6. lábat 5 fokban.

Nyak 1: 700 75 és 105 fok között korlátozva, felfelé és lefelé történő mozgáshoz

Nyak 2: 800 Balra és jobbra mozgatva, 45-135 fokig korlátozva

A szervomozgás három „írásra” korlátozódik, mielőtt 10 milliszekundumos késleltetés szerepel, mielőtt további „írási” parancsokat adnak ki. Ez segít csökkenteni az akkumulátorok terhelését.

3. lépés: PARANCSOK

PARANCSOK
PARANCSOK
PARANCSOK
PARANCSOK
PARANCSOK
PARANCSOK

A = Stop - Álljon alaphelyzetbe.

B = előre - séta_ előre

C = hátramenet - visszafelé

D = jobbra - forduljon jobbra

E = balra - turn_left

F = bal oldali mozgás - rák_bal

G = jobb oldali mozgás - rák_jobb

H = Hátsó ülés (maximum 1 és 2 láb, maximum 3 és 4 láb semleges helyzetben, 5 és 6 láb minimális helyzetben)

I = Front_crouch (1. és 2. láb minimális helyzetben, 3. és 4. láb semleges helyzetben, 5. és 6. láb maximális helyzetben)

J = a kamera elvágva - középen (1. nyak és 2. nyak középső helyzetben, alaphelyzet)

K = kamera bal - pan_left (1. nyak, középső pozíció, 2. nyak szervo minimális pozíció)

L = kamera jobbra - pan_right (nyak 1, középhelyzet, nyak 2 szervo maximális helyzet)

M = kamera felfelé - pan_up (nyak 1 maximális pozíció, nyak 2 szervo középhelyzet)

N = kamera le - pan_down (1. nyak minimális pozíció, 2. nyak szervo középhelyzet)

O = Nyugalmi (Hexapod) a tartókra ül.

P = felállás - a Hexapod feláll az alapértelmezett pozícióba.

Q = Világítás kikapcsolva

R = Zöld fény a Pixie Neon fénygyűrűjén.

S = Piros fény a Pixie Neon fénygyűrűjén.

T = Kék fény a Pixie Neon fénygyűrűjén.

U = Fehér fény a Pixie Neon fénygyűrűjén.

V = Hullámzó első lábak.

W = Hangkürt.

X = Söpörje a fejet balról jobbra.

Y = Play Tune.

4. lépés: MOZGÁS

MOZGALOM
MOZGALOM
MOZGALOM
MOZGALOM
MOZGALOM
MOZGALOM

A Coax szervo pozíció hosszirányú a test tengelyéhez képest, így egyenesen előre 0 fok, közvetlenül mögötte pedig 180 fok. Ez a Coax és minden más szervó azonban 45-135 fokosra korlátozódik.

Az előre, hátra, balra és jobbra történő lábmozgást a láb felemelésével kell elkezdeni a combcsont és a sípcsont szervo segítségével, majd a test szervo mozdulata, végül ugyanazon láb ismét leengedése a combcsont és a sípcsont szervok segítségével.

Előre és hátra

Az előre vagy hátra lábak mozgatásához párban kell dolgozni, 1. és 2., 3. és 4., 5. és 6. Egy egyszerű előremozdulás az 1. és 2. lábakból áll, amelyek a jelenlegi helyzetükből a lehető legmesszebb haladnak, majd a 3. és 4. láb, és végül 5 és 6 láb megismétli ugyanazt a műveletet. Ezután mind a hat koax szervó ebből a kiterjesztett előre helyzetből visszaáll az eredeti kiindulási helyzetébe. Ennek a folyamatnak a fordítottját használják a hátrafelé történő mozgáshoz. Az előrehaladási folyamat részeként a HC_SR04 ultrahangos egység ellenőrizni fogja az előttünk álló akadályokat, és ha talál ilyet, fordítsa a Hexapodot véletlenszerűen balra vagy jobbra.

Bal és jobb

A bal vagy jobb lábpárok mozgatásához együtt, de ellentétes irányban kell működniük. Így például a jobb láb elfordításához az 1 -es pozíció az aktuális helyzetből visszaáll a 135 fokos helyzetbe, míg a második láb előre mozdul a 45 fokos helyzetbe. Ez megismétlődik a 3. és 4., valamint az 5. és a 6. lábpár esetében. Ekkor a Coax szervók visszahelyezik eredeti helyzetüket az új helyzetbe, miközben a testet a mozgás irányába forgatják, azaz jobb. Ez a folyamat addig folytatódik, amíg a szükséges balra forgatás be nem fejeződik. Ennek a folyamatnak a fordítottját használják a balra forduláshoz, így az 1. láb elmozdul jelenlegi helyzetéből előre a 45 fokos helyzetbe, míg a 2. láb visszafelé 135 fokos helyzetbe.

Állj fel és pihenj

Mindkét eljárás nem használja egyik lábának sem a Coax szervóját, így a Tibia szervo felállásához minden láb esetében elmozdul a jelenlegi helyzetéből a maximális 45 fokra, míg pihenés közben ugyanezek a combcsont szervók a legalacsonyabbra mozognak helyzet, 175 vagy 5 fok. Ugyanez a mozdulat vonatkozik a sípcsont szervókra is, amelyek maximum 45 fokos helyzetükben mozognak álló helyzetben, és minimumukban, pl. 175 vagy 5 fok pihenésre.

Guggolj előre és görnyedj hátra

A folyamatok itt is egymás tükörképei. Az előrehajláshoz az 1. és 2. láb a legalacsonyabb, míg az 5. és 6. láb a legmagasabb helyzetben van. Mindkét esetben a 4. és az 5. láb semleges helyzetet vesz fel, amely összhangban van az 1. és 2., valamint az 5. és 6. lábkészlettel. A hátradőlő lábakhoz az 1. és 2. lábak a legmagasabb helyzetben vannak, míg az 5. és 6. lábak a legalacsonyabb helyzetben vannak.

5. lépés: FEJKAMERA/SONAR

FEJKAMERA/SONAR
FEJKAMERA/SONAR
FEJKAMERA/SONAR
FEJKAMERA/SONAR
FEJKAMERA/SONAR
FEJKAMERA/SONAR

A fej egy négyzet alakú, 38 x 38 x 38 mm -es műanyag dobozból áll, levehető fedéllel. A doboz/fej korlátozott függőleges és vízszintes mozgást végez. A mozgás két szervó használatával érhető el, az egyik a robot testéhez, a másik az első szervótesthez és a kar a fejhez rögzítve. A két 18650 elem által táplált 7.4V táplálja az Arduino V3 NodeMcu Lua WIFI ESP8266 12E IOT fejlesztőlapját, a DEVKIT -et, amely egy Arducam Mini Module Camera Shield -hez van csatlakoztatva, OV2640 2 megapixeles objektívvel. Ez az elrendezés lehetővé teszi a robot számára az akadályok észlelését és az élő videó közvetítését a fedélzeti Wi-Fi-n keresztül. A HC-SR04-et használó szonár és a lehetséges fénykezelési információk visszatérnek az Arduino Mega-ba.

Köszönetet mondok Dmainmunnak az Arducam Instructables cikkéért, amely nagy segítséget jelentett abban, hogy kezdetben megértettem, hogyan lehet az Arducamot használni a videó streameléséhez.

Akkumulátor

Úgy döntöttek, hogy két akkumulátort használnak, az egyiket a fej elemeihez és az Arduino Mega táblához, a második csomagot pedig az összes szervó áramellátásához. Az első csomag 2 x 18650 3400 mAh akkumulátorból állt, amelyek 7,4 V feszültséget biztosítanak. A második csomag 2 x 6 V 2800 mAh -s akkumulátorból állt, amelyek párhuzamosan voltak csatlakoztatva, így 6,4 V -os tápellátást, de 5600 mAh -os megnövelt kapacitást biztosítottak a Hexapod alsó részéhez tépőzáras csíkok segítségével.

6. lépés: Lábmozgás

LÁBMOZGATÁS
LÁBMOZGATÁS
LÁBMOZGATÁS
LÁBMOZGATÁS
LÁBMOZGATÁS
LÁBMOZGATÁS

A fegyverek párban vagy külön -külön is működhetnek. Mindegyik kar egy Coax nevű testcsuklóból áll, 45-135 fokos mozgással, combcsontból, Femur-ból, 45-135 fokos mozgásból, végül pedig egy sípcsontnak nevezett könyökcsuklóból, vagy vég-effektorból, 45-135 fokos mozgással.. Egyedi szoftvert írtak a lábak mozgásának biztosítására.

A lábmozgás típusai:

A Coax esetében 45 fok a fejtől hátrafelé néz, 90 fok semleges helyzetben, és 135 fok előre néz.

A combcsont esetében a 45 fok a legmagasabb helyzet a talajtól, a 90 fok a semleges helyzet, és a 135 fok a legalacsonyabb helyzet a talajtól.

A sípcsont esetében a 45 fok a testtől a legtávolabbi helyzet, a 90 fok a semleges helyzet, a 135 fok pedig a testhez legközelebb eső helyzet.

Tegyük fel, hogy minden szervó semleges helyzetben van, 90 fok.

Előre: 1. és 2. láb, combcsont 135 fokra, Coax 45 fokra, sípcsont 45 fokra a testtől legtávolabbra, combcsont 45 fokra. Ez megismétlődik a 3. és 4. lábpár, valamint az 5. és a 6. lábpár esetében. Mind a 6 Coax szervó 45 fokról hátrafelé halad 90 fokra, semleges helyzetben, mind a 6 combcsont szervo 45 fokról 90 fokra, semleges helyzetben mozog. Végül minden sípcsont szervó 45 fokról 90 fokra emelkedik, semleges helyzetben.

Fordított: Kezdve az 5. és 6. lábbal, majd a 3. és 4. lábbal, végül az 1. és 2. lábbal, különben a mozgás ugyanaz a Coax, a combcsont és a sípcsont esetében.

Bal: Az 1., 3. és 5. lábak ellenkező irányban mozognak, míg a 2., 4. és 6. lábak előre. Az előre- és hátramenet egyaránt megfelel a szokásos előre- és hátramenetnek. A fordulat befejezéséhez mind a hat koax szervó mozogjon 45 fokkal, ami elfordítja a testet.

Jobbra: A 2., 4. és 6. lábak ellenkező irányba mozognak, míg az 1., 3. és 5. lábak előre. Az előre- és hátramenet egyaránt megfelel a szokásos előre- és hátramenetnek. A koaxiális mozgás hasonló a fentiekhez, de fordított irányban.

Pihenés: Minden koaxiális és combcsont szervó semleges helyzetben, minden csípő szervó a legalacsonyabb helyzetben 45 fok, hatékonyan görnyed mind az első, mind a középső és a hátsó láb.

Hátul görnyedt, álljon elöl: az 1. és 2. láb a legmagasabb helyzetben, a 3. és 4. láb a semleges helyzetben, az 5. és a 6. láb a legalsó helyzetben.

Álljon hátul, görnyedt elöl: Lábak 1 és a legalacsonyabb helyzetben, 3 és 4 lábak semleges helyzetben, és 5 és 6 lábak a legmagasabb helyzetben.

Rák balra: Az 1. és 5. láb felemeli és kifelé nyúlik balra, ugyanakkor a 2. és 6. láb felemelkedik és összehúzódik a test alatt. Mind a négy lábával a földön minden sípcsont visszatér semleges helyzetébe. Végül a 3. és 4. láb megismétli ugyanazt a folyamatot.

Rák jobbra: A 2. és 6. láb felemeli és kifelé nyúlik jobbra, ugyanakkor az 1. és az 5. láb felemeli és összehúzódik a test alatt. Mind a négy lábával a földön minden sípcsont visszatér semleges helyzetébe. Végül a 3. és 4. láb megismétli ugyanazt a folyamatot.

Bal fejmozgás: nyak 1 szervo 45 fok. Mindkét szervó visszatér 90 -es semleges helyzetbe.

Jobb fejmozgás: nyak 1 szervo 135 fok

Felfelé irányuló fejmozgás: nyak 2 szervo 45 fok

Lefelé fejmozgás: nyak 2 szervo 135 fok

Pan fejmozgás: a 2 nyak 45 és 135 fok között mozog

SERVOS

Az első tesztelés után az MG995 és MG996 szervókat kicserélték. Mind a 20 szervót kicserélték a DS32228 20 kg -os szervóra, amely sokkal jobb központosítást és megnövelt terhelhetőséget biztosított.

Fontos, hogy minden szervót alaposan teszteljünk egy megfelelő tesztprogram segítségével. Az egyszerű „sweep” példaprogramot úgy módosítottam, hogy kifejezetten tesztelje a 0, 90 és 180 pozíciókat, ezt a tesztrutinot legalább 5 percig futtatták minden szervónál, majd egy nappal később megismételték.

MEGJEGYZÉS: Az USB -kábellel táplált szabványos Arduino Uno kártya használata nem biztos, hogy elegendő feszültséget biztosít bizonyos szervók futtatásához. Azt tapasztaltam, hogy az Unótól kapott 4,85 V -os szervó szabálytalan viselkedést okozott a DS3218 szervóknál, ezt a feszültséget 5,05 V -ra növelve orvosolta ezt a problémát. Szóval úgy döntöttem, hogy 6V -on futtatom a szervókat. Végül azt tapasztaltam, hogy 6,4 V feszültségre van szükség, mivel a 6 V a szervók szabálytalan viselkedését okozta.

7. lépés: ÉPÍTÉS

ÉPÍTKEZÉS
ÉPÍTKEZÉS
ÉPÍTKEZÉS
ÉPÍTKEZÉS
ÉPÍTKEZÉS
ÉPÍTKEZÉS

LÁBAK

A Hexapod készlet alkatrészeinek lefektetésével kezdődött. Minden szervo kör alakú kürt megkövetelte a combcsont mindkét végén található mattító lyuk és az összes Coax furat kiterjesztését. Mindegyik szervókürtöt négy csavarral és egy ötödik csavarral rögzítették a megfelelő Coax és combcsonthoz a szervofej közepén. Minden szervótest négy csavarral és anyával van rögzítve. A Coax szervo tartó mind a hat lábhoz csapágyat rögzített a rögzítés aljára egyetlen csavar és anya segítségével. Mindegyik koax szervo rögzítést négy csavar és anya segítségével rögzítették a combcsont szervo tartójához, ezzel a rögzítéssel 90 fokban elforgatva. A combcsont szervo feje a combcsont egyik végéhez volt rögzítve, a combcsont másik vége pedig a sípcsont szervo fejéhez. A hat Tibia szervót négy csavarral és anyával rögzítették a hat láb tetejére. Mindegyik lábvég -effektort puha gumicsizma borította, hogy extra tapadást biztosítson. Kiderült, hogy a mellékelt szervo kürt túl nagy ahhoz, hogy rögzítse a Coax, combcsont és sípcsont csatlakozásokba, így minden középső lyuk 9 mm -re lett megnagyobbítva. Köszönöm a „Toglefritz” -nek, hogy Capers II -t a Hexapod készlet konstrukciós elemeivel kapcsolatban tanította. Mindazonáltal eltértem az építkezéstől az egyik területen, nevezetesen a szervókürtök rögzítésében a combcsont mindkét végén. Úgy döntöttem, hogy megnagyobbítom a combcsont középső furatát, hogy a szervókürt közepe áthaladjon rajta, ezáltal a szervókürt extra erőt adva, mivel közelebb volt a szervóhoz, és ez a két csukló megtapasztalta a maximális nyomatékot. Mindegyik szervókürtöt két M2.2 önmetsző csavarral rögzítették a combcsonthoz, e csavarok végeit eltávolítva és laposan reszelve. Valamennyi M3 csavart szorosan rögzítették.

TEST

A test két, hat lyukú lemezből áll, mindegyik lyuk a Coax szervo kürt rögzítésére szolgál. Két 6V -os 2800 mAh -es akkumulátort rögzítettek az alsó lemez alsó részére tépőzárral. Négy M3 állványt rögzítettek, amelyek túlnyúltak az elemtartó alján, és mindegyik puha gumicsizmával csúszott az aljára, ez stabil alapot biztosít, amelyre a Hexapod támaszkodhat. Az alsó lemez felső részén az Arduino Mega és az érzékelőpajzs van rögzítve négy 5 mm -es állvány segítségével. Az alsó lemez tetejére 4 x 6 cm magas M3 állvány került, amelyek körülvették az Arduino Megat, és támaszt nyújtottak a felső lemezhez. A felső lemezhez 120 mm x 70 mm x 30 mm -es doboz volt csatlakoztatva, ez lesz az első nyak szervó és LCD képernyő. A második 2 rekeszes, 2 x 18650 elemtartót a felső lemez alsó oldalához erősítették az Arduino Mega tábla hátuljához, a Hexapod eleje felé.

A felső lemez hat szervo kürtöt tartalmaz, mindegyiket négy M2.2 csavarral rögzítve. A lemez tetejére egy 70 mm x 120 mm x 30 mm -es doboz van felszerelve, amelybe egy 2 rekeszes 18650 elemtartó, két pólusú kapcsoló, zöld LED és egy IC2 16 x 2 LCD kijelző van felszerelve. Ezenkívül az első nyakú szervó is telepítve van, a tápellátás és a második nyakú szervo adatkábel egy lyukon áthaladva táplálja a második szervót és az Arduino V3 NodeMcu modult. Egy további adatkábel halad át a felső dobozon, és táplálja a HC-SR04 ultrahangos modult, amely ismét a fejben található. A második adat- és tápkábel szintén a fejhez vezet, hogy táplálja a pixie led gyűrűt.

A két szervo adatkábel és a HC-SR04 adatkábel a felső lemezen keresztül vezetődik, míg a Bluetooth modul a lemez alsó oldalához van rögzítve egy neon formadarab és forró ragasztó segítségével. A fennmaradó 18 szervo adatkábel kábelkezelésének a helyén kell lennie, mielőtt bármilyen kísérletet végezne arra, hogy a felső lemezt az alsó lemezhez rögzítse 4 x M3 csavarral, amelyek illeszkednek az alsó lemezhez rögzített 4 x M3 állványokhoz. A felső alsó lemez rögzítési folyamatának részeként mind a hat Coax szervót a megfelelő helyzetben kell elhelyezni úgy, hogy a csapágyazás az alsó lemez furatába kerül, a szervofej pedig a felső lemez kürtjébe. Felszerelés után a hat koax szervó tetejét 6 M3 csavar rögzíti. A hat Coax szervó szervo szarvának helyzete miatt a 4 x M3 állványokat 2 mm -rel csökkenteni kellett, hogy a Coax szervo csapágyak megfelelően illeszkedjenek az alsó lemezbe.

FEJ

A fej két szervóból áll, amelyek egymáshoz képest 90 fokos szögben helyezkednek el, az egyik a felső lemezhez rögzített dobozban, a másik pedig a szervo kürtön keresztül az elsőhöz rögzítve, U-alakú sárgaréz lemez segítségével. A második szervókürt egy L alakú sárgaréz konzolhoz van rögzítve, amely maga egy 70 mm x 70 mm x 50 mm -es dobozhoz van rögzítve két csavarral és anyával. A doboz alkotja a fejet, amelynek belsejében az Ardcam kamera, a HC-SR04 ultrahangos modul és az Arduino V3 NodeMcu modul, valamint a bekapcsoló LED található. Mind az ultrahangos modul továbbítja és fogadja az érzékelőfejeket a doboz elején, ahogy a kamera lencséje is. A doboz külső oldalán egy 16 LCD Nero pixie gyűrű veszi körül. A NodeMcu tápellátás LED -je a fej hátsó lemezén található lyukon, a tápkábelen, az ultrahangos modul adatkábelén keresztül, a pixie Neon adatátviteli kábelek pedig a hátlap és a fejlemez közötti lyukon keresztül jutnak be.

ELEKTRONIKA

A következő Fritzing diagramok a test és a fej elektronikáját mutatják be. A VCC és a GRD vonalak nem jelennek meg a 20 szervónál, hogy javítsák a diagramot. A Bluetooth modul az Android alkalmazáson keresztül vezérli a Hexapod mozgását, beleértve a nyak szervóit is. A WIFI alapú Arduino NodeMcu modul vezérli az Arducam kamera modult. Minden szervó az Arduino érzékelőpajzshoz van csatlakoztatva egyetlen blokkon keresztül, amely VCC, GRD és jelvezetékeket tartalmaz. A szabványos 20 cm-es DuPont áthidaló kábeleket használják a Bluetooth BT12, HC-SR04 és IC2 LCD csatlakoztatására.

LEGKALIBRÁLÁS

Ez az egyik legnehezebb előkészítési terület a Hexapod mozgásával kapcsolatos munka előtt. Az első ötlet az, hogy állítsa az összes lábát a következőkre: a koaxiális szervókat 90 fokra, a combcsont szervóit 90 fokra, a sípcsont szervókat pedig 90 -re állítva, a fizikai lábpozíciót 105 fokra állítva a 2., 4. és 6., valamint 75 fokra az 1., 3. és 5. lábakhoz. A Hexapodot vízszintes felületre helyezték, amely az akkumulátorház alatti négy támaszon nyugszik. Olyan lábak, amelyek egyenlő távolságra vannak elhelyezve a lábak között, és egyenlő távolságra a testtől. Mindezek a pozíciók a sík felületen vannak jelölve. A lábak építése során minden szervó középső pontját megtalálták, ez legyen a szervók 90 fokos helyzete. Ezt a 90 fokos alapértelmezett pozíciót minden szervó használja.

A 2 -es és 5 -ös koaxiális szervák párhuzamosak egymással, ez vonatkozik az 1 -es és a 6 -os, valamint a 3 -as és 4 -es szervóra. Az építési fázisban minden combcsont- és koaxszervó 90 fokban egymáshoz van rögzítve. Minden combcsont szervóhoz a combcsont 90 fokos szögben van rögzítve. Minden sípcsont szervó a sípcsonthoz van rögzítve 90 fokban. A 2., 4. és 6. sípcsont szerv 105 fokban, míg az 1., 3. és 5. lábszárcsont 75 fokban a combcsonthoz van rögzítve.

Fontos megjegyezni, hogy tesztelés közben minden szervó hőmérsékletét ellenőrizni kell, a forró szervó azt jelenti, hogy a szervó túl keményen dolgozik, és meghibásodhat, a legtöbb szervó meleg lesz.

A kezdeti kalibrálás az, hogy a Hexapodot a bekapcsolás után nyugalmi helyzetéből álló helyzetbe kell állítani, amely egyenletes, stabil, vízszintes, és a legfontosabb, hogy egyik szervó sem melegszik túl. Az egyenletes pozíció fenntartása érdekében minden szervóhoz írni kell 20 milliszekundum alatti, 10 ezredmásodperces késleltetéssel. Minden szervó csak 0 és 180 fok között mozog, és 180 fokról vissza 0 -ra, tehát minden combcsont szervó 0 és 180 fok függőleges és 90 fok vízszintes.

Az egyes szervók csatlakoztatása előtt egy inicializáló írást küldtek minden korábban definiált szervónak, megadva annak aktuális nyugalmi szögét, azaz a szervó jelenlegi helyzete nyugalomban. Ez 90 fok volt minden koax szervónál, 55 fok a combcsont és a csípő szervoknál 1, 3 és 5, és 125 fok a combcsont és a csípő szervóknál 2, 4 és 6.

Fontos megjegyezni, hogy az elemeket mindig teljesen fel kell tölteni a kalibrálási munkamenet elején.

A Hexapod mindig nyugalmi helyzetből indul, az egész testet a négy láb támogatja. Ebből a helyzetből az összes combcsont- és sípcsont szervó a kiindulási helyzetből álló helyzetbe kerül, és ekkor minden szervó 90 fokos. Az álló helyzet befejezéséhez az „állj” parancsot adjuk ki, ez a parancs megköveteli, hogy minden láb felemelkedjen és ismét leereszkedjen két három lábmozdulattal, az 1., 5. és 4., valamint a 2., 6. és 3. lábakkal.

8. lépés: SZOFTVER

A szoftver három részből áll, az első az Arduino kód, amely az Arduino Mega -n fut, a második rész a fejben lévő NodeMcu modulon futó Arduino kód. A kommunikáció a Bluetooth BT12 egységen keresztül történik, amely parancsokat fogad az Android táblagéptől, nevezetesen a Samsung Tab 2 -től, amely Android Studio beépített egyéni alkalmazást futtat. Ez az alkalmazás küld parancsokat a Hexapodnak. Ugyanez az alkalmazás élő videót is kap a NodeMcu modulból a beépített WIFI -n keresztül.

ANDROID KÓD

Az Android Studio segítségével kifejlesztett egyedi Android -kód biztosítja azt a platformot, amelyen a két képernyős alkalmazás fut. Az alkalmazásnak két képernyője van, a főképernyőn a felhasználó parancsokat adhat ki a Hexapodnak, és megtekintheti a hexapod fejből érkező videócsatornát. A második képernyő, amely a WIFI gombbal érhető el, lehetővé teszi a felhasználó számára, hogy először csatlakozzon a hexapod Bluetooth -hoz, másodszor a WIFI hot spothoz, amelyet a NodeMCU Arduino kártya generál a hexapod fejben. Az alkalmazás egybetűs parancsokat küld 9600 Baud soros kapcsolaton keresztül a táblagépről a beépített Bluetooth -on keresztül a hexapodhoz csatlakoztatott BT12 Bluetooth -ra.

ARDUINO KÓD

A kódfejlesztés egy tesztprogram kifejlesztésével kezdődött, amelyet a Hexapod, a fej és a test alapvető funkcióinak tesztelésére terveztek. Mivel a fej és működése teljesen elkülönül a testtől, szoftverfejlesztését a test funkciókódjával párhuzamosan tesztelték. A fej működési kódja nagyrészt egy korábbi fejlesztésen alapult, a szervomozgás bevonásával. A kód tartalmazta a 16x2 LCD kijelző, a HC-SR04 ultrahangos modul és a 16 LED-es fénygyűrű működését. További kódfejlesztésre volt szükség ahhoz, hogy a WIFI hozzáférést biztosítson az élő videócsatornához fejről.

A karosszéria funkciókódját kezdetben úgy fejlesztették ki, hogy biztosítsa a szervo kezdeti rögzítését és nyugalmi állapotában. Ebből a helyzetből a Hexapodot úgy programozták, hogy egyszerűen álljon. A fejlesztés ezután a Hexapod további mozdulataival folytatódott, és a fej- és testkódrészek kombinálása az Android -alkalmazással folytatott soros kommunikációval.

A teszt szervókód lehetővé tette a láb- és testmozgások fejlesztését, nevezetesen:

1. InitLeg - Lehetővé teszi a pihenő láb helyzetét, álló láb helyzetét, a rák kezdeti lábhelyzetét akár bal, akár jobb járáshoz, kezdeti lábhelyzetet előre vagy hátra járáshoz.

2. Hullám - Lehetővé teszi az első lábak négyszeri hullámzását, mielőtt visszatérnek álló helyzetbe.

3. TurnLeg- Lehetővé teszi a Hexapod balra vagy jobbra fordulását.

4. MoveLeg- Lehetővé teszi a Hexapod előre- vagy hátralépését.

5. CrouchLeg- Lehetővé teszi a Hexapod számára, hogy előrehajoljon az első lábaira, vagy hátra a hátsó lábaira.

A lábmozgás a páros lábakon alapul, így az 1. és 2., 3. és 4., 5. és 6. láb párként működik. A mozgás két alapvető cselekvésből áll, egy előrenyúlásból és húzásból, valamint egy hátramenetből. Ahhoz, hogy hátrafelé járjunk, ezt a két mozdulatot megfordítjuk, így például előre haladva az 1. és 2. láb húz, míg az 5. és 6. láb tol, a 3. és 4. láb stabilitást biztosít. A rákos járás egyszerűen ugyanazok a műveletek, de a testhez képest 90 fokban állítva, ebben az esetben a 3. és 4. lábak ugyanúgy mozognak, mint a többi láb. Míg a járó lábpárok váltakozva mozognak, míg a rák járó lábai 1 és 5 párként működnek, míg a 3 láb alternatív lépésekben az 1 és 5 lábakhoz.

Mozgás A főbb mozgásfunkciók mindegyikének funkcionális leírása következik, amelyek mindegyike meghatározott sorrendben összefogott és végrehajtott mozgáselemekből áll.

Pihenés: Álló helyzetből kiindulva minden combcsont szerv felfelé mozdul, hogy leengedje a testet a négy tartóra. Ugyanakkor az összes Tibia szervó befelé mozog.

ÁLLÁS: Nyugalmi helyzetből kiindulva minden sípcsont szerv kifelé mozog, ha ez befejeződött, minden combcsont szervo 90 fokos helyzetbe kerül, végül minden csípő szervó 90 fokos helyzetbe kerül egyszerre.

BALRA FORDULÁS: Az 1., 3. és 5. láb 45 fokkal hátrébb mozdul el a fejtől, ugyanakkor a 2., 4. és 6. láb a fej felé halad előre. Miután befejezte az összes koax szervót, a jelenlegi helyzetükből visszatérve a szokásos 90 fokos helyzetbe, ez a mozgás az óramutató járásával ellentétes irányban lenne a test felé.

FORDULÓ JOBB: Az 1., 3. és 5. láb 45 fokkal halad előre a fej felé, ugyanakkor a 2., 4. és 6. lábak a fejtől hátrafelé mozognak. Miután befejezte az összes koax szervót, a jelenlegi helyzetükből visszaállnak a standard 90 fokos helyzetbe, ez a mozgás az óramutató járásával megegyező irányban történik a test felé.

ELŐRUGÁS ELŐRE: Az 1. és 2. láb alsó része a combcsont és a sípcsont szervizével, míg az 5. és a 6. láb a combcsont és a sípcsont szervizével emelkedik, a 3. és 4. láb a szokásos helyzetben marad.

HAJTÁS VISSZA: Az 1. és 2. láb felemelkedik a combcsont és a csípőcsont szervizével, míg az 5. és a 6. láb a combcsont és a sípcsont szervizével, a 3. és 4. láb a szokásos helyzetben marad.

Hullámzás: Ez a rutin csak az 1. és 2. lábat használja. A Coax szervók 50 fokos ívben mozognak, míg a combcsont és a sípcsont is 50 fokos ívben mozog. A 3. és 4. láb 20 fokkal halad előre a fej felé, ez stabilabb platformot biztosít.

ELŐRE JÁRÁS: Az 1. és 6., 2. és 5., valamint a 3. és 4. lábnak együtt kell működnie. Tehát amíg az 1. láb húzza a testet, a 6. lábnak nyomnia kell a testet, amint ez a művelet befejeződött, a 2. és az 5. lábnak ugyanazt kell végrehajtania, míg a cselekvési ciklusok mindegyikének a 3. és 4. lábnak kell végrehajtania rutin haladni előre.

A kezdeti teszt lábmodul funkciók lehetővé tették a három lábmozgás mindegyikének kialakítását. Három lábmozgásra van szükség, mivel az ellentétes lábak egyszerűen végrehajtják a fordított mozgásokat. Egy új kombinált 1., 3. és 6. lábmodult fejlesztettek ki, teszteltek és lemásoltak egy második fordított 2., 4. és 5. lábú modulhoz. A hexapod lábmozgások tesztelését úgy végezték el, hogy a hexapodát egy felemelt blokkra helyezték, így lehetővé tették a lábak teljes mozgását anélkül, hogy megérintenék a talajt. A méréseket a lábak mozgása közben végezték, és azt találták, hogy minden láb vízszintesen mozog 80 mm távolságban, miközben mozgás közben a legalacsonyabb pontján 10 mm -re maradt a talajtól. Ez azt jelenti, hogy a Hexapod egyszerűen mozogni fog egyik oldalról a másikra mozgás közben, és minden lábnak egyenlő húzóereje lesz mozgás közben.

Fordított séta:

RÁK JÁRÁS BALRA: A kezdeti mozgás az 1., 2., 5. és 6. lábakkal kezdődik, amelyek mindegyike 45 fokkal elfordul a menetirány felé. Ez minden lábat a menetiránynak megfelelően helyez el, a 3. és 4. lábak már a megfelelő irányban vannak. Mindkét láb combcsontja és sípcsontja az alapértelmezett 90 fokos helyzetben indul. Ez a járás két, három lábból álló sorozatból áll, amelyek váltakozó lépéseken dolgoznak, az 1., 5. és 4. lábakon, valamint a 3., 2. és 6. lábakon. A 4. lábnál ez a mozgás megfordul, így a 3. láb húz, míg a 2. és 6. láb toló, a Coax szervók egyike sem végez semmilyen munkát e mozgás során. Mindegyik három lábból álló készlet felemeli a helyhez kötött másik lábkészletet, amikor az első készlet mozog.

RÁK JÁRÁS JOBB:

MEGJEGYZÉS: A fej balra vagy jobbra fordul a rákos járás irányába. Ez lehetővé teszi a HC-SR04 ultrahangos érzékelés használatát gyaloglás közben.

LÁBBEÁLLÍTÁS: Ahhoz, hogy a Hexapod vízszintesen álljon, minden lábnak azonos magasságban kell állnia. A Hexapodot blokkokra helyezve, majd az állvány és pihenőprogramok segítségével meg lehetett mérni az egyes véghatások talajtól való távolságát. Gumicsizmákat adtam minden egyes effektorhoz, hogy először tapadást biztosítson, de lehetővé tegye a lábhossz kis mértékű beállítását is, úgy, hogy az összes láb között 5 mm vagy kevesebb legyen. Mindegyik szervó 90 fokra állítása egyszerű volt, azonban az egyes szervókürtök rögzítése a combcsont mindkét végéhez problémákat okozhat, és okozott is problémákat, mivel a szarvak belső gerincének forgási szögeiben tapasztalható nagyon kicsi különbségek miatt a lábak magassága 20 mm -rel változik. A csavarok cseréje a szervo kürtök különböző rögzítő lyukaira javította ezt a 20 mm -es magasságkülönbséget. Elhatároztam, hogy ezt a problémát ezzel a módszerrel oldom meg, ahelyett, hogy ezeket a magasságkülönbségeket szoftverrel kellene kompenzálnom.

Ajánlott: