Sisukord:
- Samm: disainiprotsess
- 2. samm: Arduino roll
- Samm: vajalikud materjalid
- 4. samm: 3D -prinditud osad
- Samm: servoklambrite ettevalmistamine
- 6. samm: lingitükkide valmistamine
- 7. samm: jalgade kokkupanek
- Samm: kohandatud trükkplaat ja juhtmestik
- 9. samm: keha kokkupanek
- Samm: esmane seadistamine
- 11. samm: natuke kinemaatikast
- 12. samm: Arduino programmeerimine
- 13. samm: lõpptulemused: aeg katsetamiseks
Video: Arduino juhitav kahejalgne robot: 13 sammu (koos piltidega)
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:46
Fusion 360 projektid »
Mind on alati huvitanud robotid, eriti selline, mis püüab jäljendada inimeste tegevust. See huvi ajendas mind proovima kavandada ja arendada kahejalgset robotit, mis võiks jäljendada inimeste kõndimist ja jooksmist. Selles juhendis näitan teile kahejalgse roboti konstruktsiooni ja kokkupanekut.
Selle projekti ehitamisel oli esmane eesmärk muuta süsteem võimalikult tugevaks, nii et erinevate kõndimis- ja jooksmisharjumustega katsetades ei peaks ma pidevalt muretsema riistvara rikke pärast. See võimaldas mul riistvara oma piirini viia. Teisene eesmärk oli muuta kahejalgne suhteliselt odav, kasutades hõlpsasti kättesaadavaid hobiosasid ja 3D-printimist, jättes ruumi edasiseks täiendamiseks ja laiendamiseks. Need kaks eesmärki koos annavad tugeva aluse erinevate katsete tegemiseks, võimaldades arendada kahejalgset konkreetsematele nõuetele.
Jätkake, et luua oma Arduino juhitav Robot Biped ja kui projekt teile meeldis, jätke hääletus "Arduino võistlusel".
Samm: disainiprotsess
Humanoidjalad kujundati Autodeski tasuta kasutamiseks Fusion 360 3D modelleerimistarkvaras. Alustasin servomootorite importimisest disaini ja ehitasin jalad nende ümber. Kavandasin servomootori jaoks kronsteinid, mis pakuvad teist pöördepunkti servomootori võllile diametraalselt vastupidiseks. Kahe võlli olemasolu mootori mõlemas otsas annab konstruktsioonile stabiilsuse ja välistab kõik viltused, mis võivad tekkida, kui jalad on koormatud. Lingid olid konstrueeritud laagrit hoidma, samal ajal kui sulgudes kasutati võlli jaoks polti. Kui lingid olid mutri abil võllidele kinnitatud, tagaks laager servomootori võlli vastasküljele sujuva ja tugeva pöördepunkti.
Teine eesmärk kahejalgse projekteerimisel oli hoida mudel võimalikult kompaktsena, et maksimaalselt ära kasutada servomootorite pakutavat pöördemomenti. Lingide mõõtmed tehti suure liikumisulatuse saavutamiseks, vähendades samal ajal kogupikkust. Nende liiga lühikeseks muutmine tooks klambrid kokku, vähendades liikumisulatust ja liiga pikaks ajamine tekitaks ajamitele tarbetut pöördemomenti. Lõpuks kujundasin roboti kere, millele Arduino ja muud elektroonilised komponendid paigaldatakse.
Märkus. Osad kuuluvad ühte järgmistest sammudest.
2. samm: Arduino roll
Selles projektis kasutati Arduino Unot. Arduino vastutas erinevate testitud kõnnakute liikumisteede arvutamise eest ja käskis täiturmehhanismidel liikuda sujuvate liikumiste loomiseks täpsete nurkade juures täpsete kiirustega. Arduino on mitmekülgsuse tõttu suurepärane valik projektide arendamiseks. See pakub hunnikut IO -kontakte ja pakub ka liideseid, nagu jadaseade, I2C ja SPI, et suhelda teiste mikrokontrollerite ja anduritega. Arduino pakub ka suurepärast platvormi kiireks prototüüpimiseks ja testimiseks ning annab ka arendajatele ruumi täiustamiseks ja laiendamiseks. Selles projektis sisaldavad täiendavad versioonid inertsmõõteseadet liikumiste töötlemiseks, näiteks kukkumise tuvastamine ja dünaamiline liikumine ebatasasel maastikul, ning kauguste mõõtmise andur takistuste vältimiseks.
Selle projekti jaoks kasutati Arduino IDE -d. (Arduino pakub ka veebipõhist IDE-d)
Märkus. Roboti jaoks mõeldud programme saab alla laadida ühel järgmistest sammudest.
Samm: vajalikud materjalid
Siin on nimekiri kõigist komponentidest ja osadest, mis on vajalikud teie enda Arduino jõul töötava kahejalgse roboti valmistamiseks. Kõik osad peaksid olema üldkasutatavad ja kergesti leitavad.
ELEKTROONIKA:
Arduino Uno x 1
Towerpro MG995 servomootor x 6
Perfboard (Arduinoga sarnane suurus)
Isased ja emased päisepoldid (mõlemast umbes 20)
Jumper juhtmed (10 tk)
MPU6050 IMU (valikuline)
Ultraheli andur (valikuline)
RIISTVARA:
Rulalaager (8x19x7mm)
M4 mutrid ja poldid
3D -printeri hõõgniit (kui teil pole 3D -printerit, peaks kohalikus tööruumis olema 3D -printer või saab printida Internetis üsna odavalt)
Kui Arduino ja 3D -printer välja arvata, on selle projekti kogumaksumus 20 dollarit.
4. samm: 3D -prinditud osad
Selle projekti jaoks vajalikud osad tuli kohandada, seetõttu kasutati nende printimiseks 3D -printerit. Väljatrükid tehti 40% täitematerjali, 2 perimeetri, 0,4 mm otsiku ja 0,1 mm kihi kõrgusega teie valitud värvi PLA -ga. Allpool leiate oma versiooni printimiseks vajalike osade täieliku loendi ja STL -id.
Märkus. Siit alates viidatakse osadele loendis olevate nimede abil.
- jala servohoidik x 1
- jala servohoidja peegel x 1
- põlve servohoidik x 1
- põlve servohoidja peegel x 1
- jala servohoidik x 1
- jala servohoidja peegel x 1
- laagri lüli x 2
- servosarve link x 2
- jalglink x 2
- sild x 1
- elektroonika kinnitus x 1
- elektroonika vahekaugus x 8 (valikuline)
- servosarve x 12 (valikuline)
Kokku on vahedetailideta 14 osa. Kogu trükkimisaeg on umbes 20 tundi.
Samm: servoklambrite ettevalmistamine
Kui kõik osad on prinditud, võite alustada servode ja servoklambrite seadistamisega. Lükake esmalt laager põlve servohoidikusse. Sobivus peaks olema tihe, kuid ma soovitaksin laagri sundimise asemel veidi lihvida augu sisepinda, mis võib kahjustada osa. Seejärel laske M4 polt läbi augu ja keerake see mutriga kinni. Seejärel haarake jalast ja haarake sellele kaasasolevate kruvide abil ümmargune servosarv. Kinnitage jalaluu põlve servohoidiku külge kruvidega, mida kasutate ka servomootori kinnitamiseks. Joondage mootor kindlasti nii, et võll oleks samal küljel poldiga, mille varem kinnitasite. Lõpuks kinnitage servo koos ülejäänud mutrite ja poltidega.
Tehke sama puusaliigese servohoidja ja jala servohoidjaga. Sellega peaks teil olema kolm servomootorit ja neile vastavad sulgud.
Märkus: Annan juhised ühe jala ehitamiseks, teine on lihtsalt peegelpildis.
6. samm: lingitükkide valmistamine
Kui sulgud on kokku pandud, alustage linkide tegemist. Laagrilüli tegemiseks lihvige veel kord kergelt laagri avade sisepinda ja lükake laager mõlemalt poolt avasse. Lükake laager kindlasti sisse, kuni üks külg on ühtlane. Servosarve lingi ehitamiseks haarake kaks ümmargust servosarve ja kaasasolevaid kruvisid. Asetage sarved 3D -prindile ja joondage augud, seejärel keerake sarv 3D -prindile, kinnitades kruvi 3D -printimise poolelt. Nende kruvide jaoks soovitan kasutada 3D -prinditud servosarve vahekaugust. Kui lingid on ehitatud, võite alustada jala kokkupanekut.
7. samm: jalgade kokkupanek
Kui lingid ja sulgud on kokku pandud, saate neid kombineerida, et ehitada roboti jalg. Esmalt kasutage servosarve linki, et kinnitada puusaliigese servohoidik ja põlve servoklamber kokku. Märkus. Ärge keerake sarve servo külge veel kinni, sest järgmises etapis on seadistamisetapp ja see tekitab ebamugavusi, kui sarv keeratakse servomootori külge.
Paigaldage laagrilink mutrite abil väljaulatuvatele poltidele vastasküljel. Lõpuks kinnitage jala servohoidik, sisestades väljaulatuva poldi läbi põlve servohoidiku laagri. Ja kinnitage servavõll servasarve külge, mis on ühendatud põlve servohoidjaga teisel küljel. See võib olla keeruline ülesanne ja ma soovitaksin selleks teist käepaari.
Korrake samme teise jala jaoks. Kasutage viitena igale sammule lisatud pilte.
Samm: kohandatud trükkplaat ja juhtmestik
See on valikuline samm. Juhtmete korrastamiseks otsustasin teha kohandatud trükkplaadi, kasutades perfoplaati ja päise tihvte. PCB sisaldab porte servomootori juhtmete otseühendamiseks. Lisaks jätsin ka lisapordid juhuks, kui sooviksin laiendada ja lisada muid andureid, nagu inertsiaalsed mõõtühikud või ultraheli kaugusandurid. See sisaldab ka porti välise toiteallika jaoks, mida on vaja servomootorite toiteks. Arduino USB ja välise toite vahel vahetamiseks kasutatakse hüpikühendust. Paigaldage Arduino ja trükkplaat elektroonikakinnituse mõlemale küljele, kasutades kruvisid ja 3D -prinditud vahekaugusi.
Märkus: Enne Arduino ühendamist arvutiga USB kaudu ühendage kindlasti hüppaja lahti. Kui te seda ei tee, võite Arduino kahjustada.
Kui otsustate PCB -d mitte kasutada ja selle asemel kasutada leivaplaati, on siin servoühendused:
- Vasaku puusa >> tihvt 9
- Parema puusa >> tihvt 8
- Vasak põlve >> tihvt 7
- Parema põlve >> tihvt 6
- Vasak jalg >> tihvt 5
- Parem jalg >> tihvt 4
Kui otsustate PCB -d teha samas järjekorras nagu eespool, kasutades PCB porde paremalt vasakule IMU -port ülespoole. Ja kasutage PCB ühendamiseks Arduinoga tavalisi meessoost naissoost juhtmeid, kasutades ülaltoodud pin -numbreid. Ühendage kindlasti ka maanduspistik ning looge sama maanduspotentsiaal ja Vin -pin, kui otsustate seda ilma USB -toiteallikata kasutada.
9. samm: keha kokkupanek
Kui mõlemad jalad ja elektroonika on kokku pandud, ühendage need roboti kere ehitamiseks kokku. Kasutage sillaosa kahe jala ühendamiseks. Kasutage samu kinnitusavasid puusaliigese servohoidikul ning servomootorit hoidvaid mutreid ja polte. Lõpuks ühendage elektroonika kinnitus sillaga. Joondage silla ja elektroonikakinnituse augud ning kasutage vuugi tegemiseks M4 mutreid ja polte.
Abi saamiseks vaadake lisatud pilte. Sellega olete lõpetanud roboti riistvara ehitamise. Järgmisena hüppame tarkvarasse ja äratame roboti ellu.
Samm: esmane seadistamine
Selle projekti ehitamisel olen märganud, et servomootorid ja sarved ei pea ideaalselt joonduma, et püsida suhteliselt paralleelsed. Seepärast tuleb iga servomootori "keskset asendit" käsitsi reguleerida, et see jalgadega joonduda. Selle saavutamiseks eemaldage servosarved igast servost ja käivitage eskiis initial_setup.ino. Kui mootorid on oma keskasendisse seadnud, kinnitage sarved tagasi nii, et jalad on täiesti sirged ja jalg on maapinnaga paralleelselt. Kui see nii on, on teil õnne. Kui mitte, avage kõrvalolevalt vahelehelt leitud fail Constants.h ja muutke servo nihke väärtusi (read 1-6), kuni jalad on ideaalselt joondatud ja jalg on tasane. Mängige väärtustega ringi ja saate aimu, mis on teie puhul vajalik.
Kui konstandid on määratud, pange need väärtused tähele, kuna neid läheb hiljem vaja.
Abi saamiseks vaadake pilte.
11. samm: natuke kinemaatikast
Selleks, et kahejalgne sooritaks kasulikke toiminguid, nagu jooksmine ja kõndimine, tuleb erinevad kõnnakud programmeerida liikumisteede kujul. Liikumisrajad on rajad, mida mööda kulgeb lõpp -efektor (sel juhul jalad). Selle saavutamiseks on kaks võimalust:
- Üks lähenemisviis oleks toita erinevate mootorite liigendnurki toore jõuga. See lähenemisviis võib olla aeganõudev, tüütu ja täis vigu, kuna otsus on puhtalt visuaalne. Selle asemel on nutikam viis soovitud tulemuste saavutamiseks.
- Teine lähenemisviis keerleb ümber kõikide nurkade asemel lõpp -efektori koordinaatide söötmise. Seda nimetatakse pöördkinemaatikaks. Kasutaja sisestab koordinaadid ja liigendinurgad reguleerivad lõpp -efektori paigutamist määratud koordinaatidele. Seda meetodit võib pidada mustaks kastiks, mis võtab sisenditeks koordinaadi ja väljastab liigendnurgad. Neile, kes on huvitatud selle musta kasti trigonomeetriliste võrrandite väljatöötamisest, saate vaadata ülaltoodud diagrammi. Neile, kes pole huvitatud, on võrrandid juba programmeeritud ja neid saab kasutada pos -funktsiooni abil, mis võtab sisendiks x, z ja väljastab kolm mootoritele vastavat nurka.
Neid funktsioone sisaldava programmi leiate järgmisest sammust.
12. samm: Arduino programmeerimine
Enne Arduino programmeerimist tuleb faili teha mõningaid muudatusi. Mäletate konstante, mida ma palusin teil märkme maha võtta? Muutke samu konstante väärtusteks, mille määrasite failis constants.h.
Märkus. Kui olete kasutanud selles juhendis esitatud kujundusi, pole teil midagi muuta. Juhul, kui mõni teist on oma kujunduse teinud, peate koos nihkega muutma veel mõnda väärtust. Konstant l1 mõõdab puusa- ja põlveliigese vahelist kaugust. Konstant l2 mõõdab põlveliigese ja pahkluu pöörde vahelist kaugust. Nii et kui kujundasite oma mudeli, mõõtke neid pikkusi ja muutke konstandeid. Jalutuskäikude jaoks kasutatakse kahte viimast konstandit. StepClearance konstant mõõdab, kui kõrgele jalg pärast sammu edasi tuleb, ja stepHeight konstant mõõdab kõrgust maapinnast puusani.
Kui kõik konstandid on vastavalt teie vajadustele muudetud, saate põhiprogrammi üles laadida. Põhiprogramm vormistab roboti lihtsalt kõndimisasendisse ja hakkab samme edasi astuma. Funktsioone saab muuta vastavalt teie vajadusele uurida erinevaid kõnnakuid, kiirusi ja sammupikkusi, et näha, mis töötab kõige paremini.
13. samm: lõpptulemused: aeg katsetamiseks
Kahejalgne võib ilma ümberminekuta astuda samme, mille pikkus on 10–2 cm. Ka kiirust saab muuta, hoides kõnnaku tasakaalus. See kahejalgne koos Arduino jõuga annab tugeva platvormi katsetamiseks mitmesuguste muude kõnnakute ja muude eesmärkidega, nagu hüpped või tasakaalustamine palli löömise ajal. Soovitan teil proovida muuta jalgade liikumisteid, et luua oma kõnnakud ja avastada, kuidas erinevad kõnnakud mõjutavad roboti jõudlust. Süsteemi saab funktsionaalsuse suurendamiseks lisada andureid, nagu IMU ja kaugusandur, samas kui jalgadele saab lisada jõuandureid, et katsetada dünaamilist liikumist ebatasastel pindadel.
Loodan, et teile meeldis see juhend ja see on piisavalt inspiratsiooni omaenda loomiseks. Kui teile projekt meeldis, toetage seda, jättes hääletuse "Arduino võistlusel".
Head tegemist!
Esimene auhind Arduino konkursil 2020
Soovitan:
BORIS kahejalgne algajatele ja kaugemale: 11 sammu (piltidega)
BORIS kahejalgne algajatele ja kaugemale: kunagi tahtsite õppida Arduino programmeerimist, kuid tundub, et te lihtsalt ei leia projekti, mille nimel tasub aega või raha kulutada. Kas olete kunagi tahtnud omada oma hõlpsasti programmeeritavat, häkkitavat ja kohandatavat robotit, kuid ei leidnud seda, mis sobiks
WiFi-juhitav robot, kasutades Wemos D1 ESP8266, Arduino IDE ja rakendust Blynk: 11 sammu (koos piltidega)
WiFi-juhitav robot, kasutades Wemos D1 ESP8266, Arduino IDE ja rakendust Blynk: Selles õpetuses näitan teile, kuidas teha nutitelefonist juhitavat WiFi-juhitavat robotpaaki, kasutades rakendust Blynk. Selles projektis kasutati ESP8266 Wemos D1 plaati, kuid saab kasutada ka teisi plaadimudeleid (NodeMCU, Firebeetle jne) ja pr
Lihtne kahejalgne robot: 4 sammu
Lihtne kahejalgne robot: olen seda robotit viimase aasta jooksul arendanud, et kasutada seda robootika õpetamise platvormina. Selle robotiga õpetan, kuidas servosid liigutada otsese liigutusega ja kontrollitud liigutustega, kasutades " FOR " Robot saab tantsida, kõndida ja isegi joosta
WiFi-juhitav FPV Roveri robot (koos Arduino, ESP8266 ja samm-mootoritega): 11 sammu (koos piltidega)
WiFi-juhitav FPV Roveri robot (koos Arduino, ESP8266 ja Stepper Motorsiga): see juhendab, kuidas kavandada kaugjuhtimisega kaherattaline robot-rover WiFi-võrgu kaudu, kasutades ESP8266 WiFi-mooduliga ühendatud Arduino Unot ja kaks samm -mootorit. Robotit saab juhtida tavaliste Interneti -kulmude kaudu
ICBob - Bobist inspireeritud kahejalgne robot: 10 sammu (piltidega)
ICBob - Bobist inspireeritud kahejalgne robot: oleme teismeliste kujutlusklubi Bridgeville Delaware'i avalikust raamatukogust. Teeme lahedaid projekte, õppides samal ajal elektroonikat, arvutikodeerimist, 3D -disaini ja 3D -printimist. See projekt on meie kohandamine BoB the BiPedist, Arduino -põhisest robotist