Turinys:
- 1 žingsnis: Paruoškite rėmą
- 2 žingsnis: Surinkite roboto rėmą
- 3 žingsnis: Elektroninės dalys („Wemos D1 Mini“)
- 4 žingsnis: Elektroninės dalys („Arduino Nano“)
- 5 žingsnis: Elektroninės dalys („Tower Pro 9g Micro Servo“)
- 6 žingsnis: Elektroninės dalys (16 kanalų 12 bitų PWM/servo tvarkyklė - I2C sąsaja - PCA9685, skirta „Arduino“)
- 7 žingsnis: PWM prijungimas prie servo kaiščio
- 8 žingsnis: elektroninės dalys (UBEC)
- 9 žingsnis: Elektroninės dalys (DC-DC Mini Stepdown)
- 10 veiksmas: kita elektroninė dalis
- 11 žingsnis: Maitinimo šaltinis
- 12 žingsnis: vielos schema
- 13 žingsnis: kodavimas ir pradinė padėtis
- 14 žingsnis: Roboto valdymas
- 15 veiksmas: kam kyla problemų atidarant tinklalapį arba prisijungiant prie AP
Video: ESP8266 WIFI AP valdomas keturkojis robotas: 15 žingsnių (su nuotraukomis)
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:47
Ši pamoka skirta 12 DOF arba keturių kojų (keturkojų) robotui sukurti naudojant SG90 servo sistemą su servo tvarkykle ir gali būti valdoma naudojant WIFI žiniatinklio serverį per išmaniojo telefono naršyklę
Bendra šio projekto kaina yra apie 55 USD (elektroninei daliai ir plastikiniam roboto rėmui)
1 žingsnis: Paruoškite rėmą
Visą 3D objektą galima nemokamai atsisiųsti @ www.myminifactory.com arba www.thingiverse.com
Atspausdinkite ją naudodami tam tikros dalies, pvz., Pėdos, klubų ir šlaunų, materialinę paramą
Spausdintų dalių sąrašas:
1x bazinis korpusas
1x dangtelis
1x baterijos laikiklis
4x klubai (A ir B tipai)
4x pėdkelnės (A ir B tipai)
4x pėda (A ir B tipai)
4x skydas
12x įvorė + 12x 2 mm varžtas
2 žingsnis: Surinkite roboto rėmą
sekite žingsnis po žingsnio vaizdo įrašą, kad surinktumėte rėmą, varžtas skirtas 2 mm dydžio angai
3 žingsnis: Elektroninės dalys („Wemos D1 Mini“)
Rinkoje yra daug „NodeMCU“variantų ir iš esmės turi tas pačias funkcijas, šiam projektui aš renkuosi „Wemos D1 Mini“.
Ši dalis bus mūsų keturkojo kaip prieigos taško žiniatinklio serveris.
Jums tereikia prisijungti prie keturkojo AP ir valdyti visą savo roboto judėjimą, o galbūt būsimame projekte jis parodys visus jums reikalingus jutiklių prietaisų skydelį …
Ši „D1 mini“yra mini WIFI plokštė, pagrįsta ESP-8266EX. ir jis turi 11 skaitmeninių įvesties/išvesties kaiščių, visi kaiščiai turi pertraukimo/pwm/I2C/vieno laido palaikymą (išskyrus D0) 1 analoginį įėjimą (maksimali įvestis 3,3 V) ir „Micro USB“jungtį
Kaip pradėti:
- Įdiekite „Arduino 1.6.7“iš „Arduino“svetainės.
- Pradėkite „Arduino“ir atidarykite nuostatų langą.
- į papildomų lentų valdytojo URL lauką. Galite pridėti kelis URL, atskirdami juos kableliais.
- Atidarykite Įrankiai → Lenta: xxx → Lentų tvarkytuvė ir įdiekite esp8266 by ESP8266 Community (ir nepamirškite įdiegę ESP8266 plokštę pasirinkti iš Tools> Board).
Norėdami gauti daugiau informacijos, galite peržiūrėti aukščiau pateiktą vaizdo įrašą
Spustelėkite čia, jei norite ieškoti „Aliexpress“
Šiam projektui viskas, ko jums reikia, yra prijungti šį kaištį:
- „NodeMCU RX“kaištis prijungiamas prie „Arduino Nano TX“kaiščio
- „NodeMCU TX“kaištis prijungiamas prie „Arduino Nano RX“kaiščio
- „NodeMCU G“kaištis prijungiamas prie „DC-DC mini 5v Stepdown“(-) išvesties kaiščio
- „NodeMCU5V“kaištis prijungiamas prie „DC-DC mini 5v Stepdown“(+) išvesties kaiščio
PS: Norėdami užprogramuoti šią plokštę, turite atjungti visą kaištį, prijungtą prie arduino ir DC-DC, priešingu atveju gausite klaidą …
4 žingsnis: Elektroninės dalys („Arduino Nano“)
Tas pats ir su „NodeMCU“, „arduino“plokštėje galite naudoti bet kokią jums tinkamą plokštę, pvz., „Arduino Pro Mini“, „Arduino Nano“ar kt.
Tačiau šiam projektui aš pasirenku „Arduino Nano“, nes man nereikia daug naudoto kaiščio, jis yra mažas ir nereikia FTDI, kad jį užprogramuotumėte.
spustelėkite čia, jei norite ieškoti „Aliexpress“
Šiam projektui aš tiesiog naudoju:
- „Arduino nano RX“kaištis prijungiamas prie „NodeMCU TX“kaiščio
- „Arduino nano TX“kaištis prijungiamas prie „NodeMCU RX“kaiščio
- „Ardiono nano A4“kaištis prijungiamas prie PCA9685 SDA kaiščio
- „Arduino nano A5“kaištis prijungiamas prie PCA9685 SCL kaiščio
- „Arduino nano GND“kaištis prijungiamas prie „DC-DC mini 5v Stepdown“(-) išvesties kaiščio
- „Arduino nano 5V“kaištis prijungiamas prie DC-DC mini 5v „Stepdown“(+) išvesties kaiščio
daugiau informacijos rasite aukščiau esančioje schemoje
PS: Norėdami užprogramuoti šią plokštę, turite atjungti visus kaiščius, pritvirtintus prie „NodeMCU“ir DC-DC, priešingu atveju gausite klaidą …
5 žingsnis: Elektroninės dalys („Tower Pro 9g Micro Servo“)
Tai yra populiariausias mini servo. Sveria tik 9 gramus ir suteikia 1,5 kg/cm sukimo momentą. Gana stiprus, atsižvelgiant į jo dydį. Tinka sijos tipo robotams.
PS: Ši servo sistema gali pasukti tik 180 laipsnių kampą
Pagrindiniai bruožai:
• Permatomas korpusas
• Lengvas
• Mažiau triukšmo Specifikacijos:
• Matmenys: 22,6 x 21,8 x 11,4 mm
• Jungties laido ilgis: 150 mm
• Veikimo greitis (4,8 V be apkrovos): 0,12 sek. / 60 laipsnių
• Sukimo momentas (4,8 V): 1,98 kg/cm
• Temperatūros diapazonas: nuo 30 iki 60 ° C (nuo -22 iki 140 ℉)
• Negyvos juostos plotis: 4 naudojimoc
• Darbinė įtampa: 3,5 - 8,4 voltai
Spustelėkite čia, jei norite ieškoti SG90 servo „Aliexpress“
6 žingsnis: Elektroninės dalys (16 kanalų 12 bitų PWM/servo tvarkyklė - I2C sąsaja - PCA9685, skirta „Arduino“)
Norite pasivaikščioti robotu? tačiau naudojant tik mikrovaldiklį yra ribotas PWM išėjimų skaičius, ir jūs jaučiatės pritrūkę! Ne su Adafruit 16 kanalų 12 bitų PWM/servo tvarkyklės-I2C sąsaja. Naudodami šį pwm ir servo tvarkyklės pertrauką, galite valdyti 16 laisvai veikiančių PWM išėjimų tik dviem kaiščiais! Reikia paleisti daugiau nei 16 PWM išėjimų? Jokiu problemu. Sujunkite grandinę iki 62 šių gražuolių, kad pasiektumėte išskirtinį 992 PWM išvestį.
Šioje plokštėje/mikroschemoje naudojamas I2C 7 bitų adresas tarp 0x60-0x80, pasirenkamas su trumpikliais. Gnybtų blokas, skirtas įvesti maitinimą (arba galite naudoti 0,1 colio įbrėžimus šone) Apsauga nuo gnybtų bloko įvesties poliškumo kištukinės jungtys 4 grupėse, kad galėtumėte vienu metu prijungti 16 servo („Servo“kištukai yra šiek tiek platesni nei 0,1 colio, kad galėtumėte sukrauti 4 greta vienas kito ant 0,1 colio antraštės, tinkančios grandinei) Vieta dideliam diegimui kondensatorius ant V+ linijos (jei jums to reikia) 220 omų serijos rezistoriai visose išvesties linijose, kad jas apsaugotų, o kad važiavimo šviesos diodai taptų nereikšmingi Lydmetalio džemperiai 6 adresams pasirinkite kaiščius i2c valdomas PWM tvarkyklė su įmontuotu laikrodžiu. Skirtingai nuo TLC5940 šeimos, jums nereikia nuolat siųsti signalo, jungiančio jūsų mikrovaldiklį, jis veikia visiškai laisvai! Jis suderinamas su 5 V įtampa, o tai reiškia, kad galite valdyti jį iš 3,3 V mikrovaldiklio ir vis tiek saugiai valdyti iki 6 V išvesties (tai tinka, kai norite valdyti baltą arba mėlyną L ED su 3,4 ir daugiau priekinės įtampos) 6 adresų pasirinkimo kaiščiai, kad galėtumėte prijungti iki 62 iš jų į vieną i2c magistralę, iš viso 992 išėjimus - tai daug servo ar šviesos diodų Reguliuojamas dažnis PWM iki maždaug 1,6 KHz 12 bitų kiekvienos išvesties skiriamoji geba-servo sistemoms tai reiškia apie 4us skiriamąją gebą esant 60 Hz atnaujinimo dažniui.
spustelėkite čia, jei norite ieškoti „Aliexpress“
Šiame projekte mums reikia tik 12 CH visoms kojoms (3CH kiekvienai kojai), prijunkite šį PCA9685 kaištį prie „Arduino Nano“:
- PCA9685 VCC į DC-DC mini 5v Stepdown (+) išvesties kaištį
- PCA9685 GND į DC-DC mini 5v Stepdown (-) išvesties kaištį
- PCA9685 Servo (PWM) galia V+ į UBEC (+) išvesties kaištis
- PCA9685 Servo (PWM) maitinimas GND į UBEC (-) išvesties kaištis
- PCA9685 SDA su arduino nano A4 kaiščiu
- PCA9685 SCL kaištis prie arduino nano A5 kaiščio
- PCA9685 CH0 prie priekinio dešiniojo šono, suderinkite kabelio spalvą su PCA9685 lizdo spalva (geltona, raudona, ruda/juoda)
- PCA9685 CH1 prie priekinės dešinės kojos, prijunkite kabelio spalvą prie PCA9685 lizdo spalvos (geltona, raudona, ruda/juoda)
- PCA9685 CH2 prie priekinio dešiniojo klubo, prijunkite kabelio spalvą prie PCA9685 lizdo spalvos (geltona, raudona, ruda/juoda)
- PCA9685 CH4 prie galinės dešinės pusės, prijunkite kabelio spalvą prie PCA9685 lizdo spalvos (geltona, raudona, ruda/juoda)
- PCA9685 CH5 prie galinės dešinės kojos, prijunkite kabelio spalvą prie PCA9685 lizdo spalvos (geltona, raudona, ruda/juoda)
- PCA9685 CH6 prie galinio dešinio klubo, prijunkite kabelio spalvą prie PCA9685 lizdo spalvos (geltona, raudona, ruda/juoda)
- PCA9685 CH8 prie priekinio kairiojo šono, suderinkite kabelio spalvą su PCA9685 lizdo spalva (geltona, raudona, ruda/juoda)
- PCA9685 CH9 prie priekinės kairės kojos, prijunkite kabelio spalvą prie PCA9685 lizdo spalvos (geltona, raudona, ruda/juoda)
- PCA9685 CH10 prie priekinio kairiojo klubo, prijunkite kabelio spalvą prie PCA9685 lizdo spalvos (geltona, raudona, ruda/juoda)
- PCA9685 CH12 prie galinės kairės pusės, prijunkite kabelio spalvą prie PCA9685 lizdo spalvos (geltona, raudona, ruda/juoda)
- PCA9685 CH13 prie galinės kairės kojos, prijunkite kabelio spalvą prie PCA9685 lizdo spalvos (geltona, raudona, ruda/juoda)
- PCA9685 CH14 prie galinio kairiojo klubo, prijunkite kabelio spalvą prie PCA9685 lizdo spalvos (geltona, raudona, ruda/juoda)
PS: Kai kuriuose PCA9685 nėra spalvų kodo lizdo, todėl įsitikinkite, kad geltonas kabelis iš SG90 servo eina į PWM duomenų kaištį, raudonas kabelis - prie V+ kaiščio, o juodas/rudas - į GND kaištį
7 žingsnis: PWM prijungimas prie servo kaiščio
Spustelėkite ir padidinkite paveikslėlį aukščiau, kad pamatytumėte kaiščio atvaizdavimą tarp PCA9685 ir servo
PS: Šiam projektui naudojate tik 12 kanalų iš 16 kanalų, todėl jums dar liko 4 kanalų plėtrai, pvz., Radaro servo įdėjimui arba ant jo uždėti kokį nors nerf blaster ginklą … Tiesiog įdėkite papildomą kodą į arduino ir NodeMCU
8 žingsnis: elektroninės dalys (UBEC)
3A-UBEC yra perjungimo režimo nuolatinės srovės reguliatorius, tiekiamas su 2-6 elementų ličio baterijų paketu (arba 5-18 elementų NiMh /NiCd baterija) ir išleidžia pastovią saugią įtampą jūsų imtuvui, giroskopui ir servo sistemoms. Tai labai tinka RC sraigtasparniui. Palyginti su linijinio režimo UBEC, bendras jungiklio režimo UBEC efektyvumas yra didesnis.
Šiame projekte mes jį naudojame visų servo maitinimui, jis turi filtravimą, todėl sumažins triukšmą, galintį sukelti variklio gedimą, ir turi didelį stiprumą, kurio pakanka pakelti roboto apkrovą.
spustelėkite čia, jei norite ieškoti „Aliexpress“
Smeigtuko jungtis:
- UBEC (+) RED išvesties kaištis į PCA9685 servo (PWM) maitinimą V+
- UBEC (-) BLACK Išvesties kaištis į PCA9685 servo (PWM) maitinimą GND
- UBEC (+) RAUDONA įvestis į akumuliatoriaus (+) kaištį
- UBEC (-) JUODAS įėjimas į jungiklio kaištį
9 žingsnis: Elektroninės dalys (DC-DC Mini Stepdown)
Jis beveik turi tą pačią funkciją kaip ir UBEC, tačiau šis yra tik paprastas DC-DC mažinimo modulis. Jame yra stiprumo matuoklis, kuriuo galime reguliuoti V (+) išėjimą nuo 1 V iki 17 V, ir jis neturi filtravimo.
spustelėkite čia, jei norite ieškoti „Aliexpress“
PS: todėl nepamirškite, prieš naudodami jį, sureguliuokite V (+) išėjimą į 5 V, naudodami nuolatinės srovės voltų matuoklį
Smeigtuko jungtis:
- Mini pakrovimas (+) IN prie (+) akumuliatoriaus
- Mini pakilimas (-) IN prie jungiklio kaiščio
- Mini išjungimas (+) OUT lygiagrečiai su „NodeMCU“(5V), „Arduino nano“(5V) ir PCA9685 (VCC) kaiščiu
- Mini žingsnio (-) OUT lygiagrečiai su „NodeMCU“(G), „Arduino nano“(GND) ir PCA9685 (GND) kaiščiu
10 veiksmas: kita elektroninė dalis
Jums reikia maždaug (20 kabelių ar mažiau) jungiamojo laido iš moters į moterį („Aliexpress Jumper“laido paieška)
Savaiminio užrakto stumiamasis jungiklis arba galite naudoti kito tipo jungiklius („Aliexpress“savaiminio fiksavimo jungiklių paieška)
ir pora JST jungčių iš akumuliatoriaus į jungiklį ir UBEC/DC-DC išjungimas („Aliexpress JST Connector“paieška)
11 žingsnis: Maitinimo šaltinis
Yra daug energijos šaltinių, kuriuos galite naudoti, man labiau patinka įkraunama lipo 3S baterija. Jis turi 11, 1 voltų srovę ir 500 mAh ar didesnę talpą (ne per daug, todėl ji gali būti lengvesnė).
Tačiau naudojant 3S lipo reikia įkroviklio ir tai nėra pigu, todėl… galite naudoti kitą maitinimo šaltinį, pvz., AAA bateriją, ir serijinę 6 AAA bateriją, kad ji galėtų gaminti maždaug 9 V maitinimo šaltinį, ir manau, kad šiam robotui pakanka energijos.
Spustelėkite čia ir ieškokite „Lipo 3S“baterijos „Aliexpress“
Spustelėkite čia, jei norite ieškoti „Lipo Charger“
Spustelėkite čia ir ieškokite 6xAAA baterijų laikiklio „Aliexpress“
12 žingsnis: vielos schema
Spustelėkite ir padidinkite paveikslėlį aukščiau, kad pamatytumėte visą šio projekto laidų schemą
PS: kai kur reikia lituoti ir uždėti guminę galvutę, kad užsandarintumėte jungtį tarp maitinimo jungiklio, UBEC ir DC-DC.
13 žingsnis: kodavimas ir pradinė padėtis
Prijunkite „arduino nano“naudodami mini USB prie USB prievado kabelio (tačiau nepamirškite atjungti viso kištuko prie „wemos D1 mini“ir DC-DC išjungimo) ir atidarykite „spider_driver_open_v3_ESP8266_Rev280918.ino“ir prijunkite jį prie „Arduino nano“, bet ne Nepamirškite pasirinkti „Arduino nano“arduino plokštės ir pasirinkti tinkamą prievadą.
Toliau prijunkite „Wemos D1 mini“prie kompiuterio, naudodami „micro USB“prie USB (taip pat nepamirškite atjungti visų kaiščių prie „DC-DC stepdown“ir „Arduino nano“). Atidarykite „QuadrupetV2_310319_fix_connection_issue.ino“ir pamirkykite jį prie lentos, bet prieš tai parduodami tinkamą plokštę ir pasirinkite tinkamą prievadą (išsamiau prašome grįžti prie 3 veiksmo)
Baigę galite prijungti visą kaištį tarp „arduino nano“, „wemos D1 mini“ir DC-DC išjungimo ir įjungti robotą, kad sureguliuotumėte teisingą pradinę pozą.
Pradinė padėtis (žr. Paveikslėlį aukščiau) sureguliuokite visas kojas kuo arčiau aukščiau esančio paveikslo.
Įjungę robotą, jei kojos padėtis nesutampa su aukščiau esančia nuotrauka, nei jums reikia:
- atsukite servo ragą ir atjunkite servo ragą nuo servo.
- pasukite koją iki pakankamai arti pradinės pozos
- vėl pritvirtinkite servo ragą ir vėl jį įdėkite
- daryk tai visoms praleistoms rungtynėms
PS:
- „QuadrupetV2_310419_fix_connection_issue.ino“jau išsprendė tam tikrą problemą, pvz., Sunku prisijungti („Wi-Fi“) ir tinklalapio atvaizdavimas nepavyksta, tiems, kurie mirksi senesnę programą iki 2019 m.
-
reikia įdiegti papildomą biblioteką (nukopijuokite ją į bibliotekos aplanką)
- github.com/wimleers/flexitimer2
- github.com/adafruit/Adafruit-PWM-Servo-Dri…
- github.com/kroimon/Arduino-SerialCommand
14 žingsnis: Roboto valdymas
Kadangi šis robotas tapo WIFI prieigos tašku, jums tereikia:
- Įjungiamas robotas
- Išmaniajame telefone atidarykite „Wi -Fi“nustatymą
- Prisijunkite prie „SpiderRobo“prieigos taško slaptažodžiu „12345678“
- Išmaniajame telefone atidarykite žiniatinklio naršyklę ir įveskite
Dabar jūsų robotas yra pasirengęs vykdyti jūsų komandą …
15 veiksmas: kam kyla problemų atidarant tinklalapį arba prisijungiant prie AP
PATIKRINU ŠIĄ PROBLEMĄ, PRAŠOME ATSISIŲSTI IŠ VĖL 13 ŽINGSNIO (pataisyti @ 2019-04-31)
kai kuriuose „Wemos D1“mini klonuose yra blogas arba sugadintas ESP, ir tai sukelia:- sunku prisijungti prie AP
- Nepavyko atidaryti puslapio
- Įkrovimas nebaigtas
Norėdami gauti daugiau informacijos, žiūrėkite mano vaizdo įrašą aukščiau…
Rekomenduojamas:
3D spausdintas „Arduino“varomas keturkojis robotas: 13 žingsnių (su nuotraukomis)
3D spausdintas „Arduino“varomas keturkojis robotas: iš ankstesnių instrukcijų tikriausiai matote, kad mane labai domina robotiniai projektai. Po ankstesnio „Instructable“, kuriame sukūriau dvikojį robotą, nusprendžiau pabandyti sukurti keturkojį robotą, galintį imituoti tokius gyvūnus kaip šuo
„GorillaBot“3D spausdintas „Arduino“autonominis sprinto keturkojis robotas: 9 žingsniai (su nuotraukomis)
„GorillaBot“3D spausdintas „Arduino“autonominis sprinto keturkojis robotas: Kasmet Tulūzoje (Prancūzija) vyksta Tulūzos robotų lenktynės #TRR2021 Lenktynes sudaro 10 metrų autonominis dvikojų ir keturkojų robotų sprintas. Dabartinis keturkojų rekordas yra 42 sekundės 10 metrų sprinto. Taigi su m
Keturkojis voras robotas - GC_MK1: 8 žingsniai (su nuotraukomis)
Keturkojis voratinklio robotas - GC_MK1: voras robotas, dar žinomas kaip GC_MK1, juda pirmyn ir atgal ir taip pat gali šokti, priklausomai nuo kodo, įkelto į „Arduino“. Robotas naudoja 12 mikro servo variklių (SG90); 3 kiekvienai kojai. Valdiklis, naudojamas servo varikliams valdyti, yra „Arduino Nan“
[Pasidaryk pats] robotas voras (keturkojis, keturkojis): 14 žingsnių (su paveikslėliais)
[Pasidaryk pats] voras robotas (keturkojis, keturkojis): jei man reikia papildomos paramos, geriau padovanok man tinkamą dovaną: http: //paypal.me/RegisHsu2019-10-10 atnaujinimas: naujas kompiliatorius sukels slankiojo skaičiaus apskaičiavimo problemą. Aš jau pakeičiau kodą. 2017-03-26
Paprastas keturkojis robotas: 3 žingsniai (su nuotraukomis)
Paprastas keturkojis robotas: šis nurodymas buvo sukurtas vykdant Pietų Floridos universiteto (www.makecourse.com) „Makecourse“projekto reikalavimus. Per pastaruosius pusantrų metų dirbau kurdamas naują keturkojį robotą MECH klubas