Satura rādītājs:

EyeRobot - robotizētā baltā spieķis: 10 soļi (ar attēliem)
EyeRobot - robotizētā baltā spieķis: 10 soļi (ar attēliem)

Video: EyeRobot - robotizētā baltā spieķis: 10 soļi (ar attēliem)

Video: EyeRobot - robotizētā baltā spieķis: 10 soļi (ar attēliem)
Video: Дневник хранящий жуткие тайны. Переход. Джеральд Даррелл. Мистика. Ужасы 2024, Jūlijs
Anonim
EyeRobot - robotu baltā spieķis
EyeRobot - robotu baltā spieķis

Anotācija: Izmantojot iRobot Roomba Create, esmu izveidojis ierīces prototipu, ko sauc par eyeRobot. Tas vadīs neredzīgos un vājredzīgos lietotājus cauri pārblīvētai un apdzīvotai videi, izmantojot Roomba kā pamatu, lai apvienotu tradicionālās baltās spieķa vienkāršību ar redzoša suņa instinktiem. Lietotājs norāda savu vēlamo kustību, intuitīvi spiežot un pagriežot rokturi. Robots uztver šo informāciju un atrod brīvu ceļu pa gaiteni vai pāri telpai, izmantojot hidrolokatoru, lai novirzītu lietotāju piemērotā virzienā ap statiskiem un dinamiskiem šķēršļiem. Pēc tam lietotājs seko aiz robota, jo tas vada lietotāju vēlamajā virzienā ar ievērojamu spēku, kas jūtams caur rokturi. Šī robotizētā iespēja prasa nelielu apmācību: spiediet, lai iet, velciet, lai apturētu, pagriezieties, lai pagrieztu. Tālredzības tālredzība ir līdzīga redzamam acu sunim, un tā ir ievērojama priekšrocība salīdzinājumā ar pastāvīgajiem izmēģinājumiem un kļūdām, kas iezīmē baltā spieķa izmantošanu. Tomēr eyeRobot joprojām piedāvā daudz lētāku alternatīvu nekā suņi -pavadoņi, kas maksā vairāk nekā 12 000 USD un ir noderīgi tikai 5 gadus, savukārt prototips tika uzbūvēts par cenu, kas nepārsniedz 400 USD. Tā ir arī salīdzinoši vienkārša mašīna, kurai nepieciešami daži lēti sensori, dažādi potenciometri, kāda aparatūra un, protams, Roomba Create.

1. darbība: video demonstrācija

Video demonstrācija
Video demonstrācija

Augstas kvalitātes versija

2. darbība: darbības pārskats

Darbības pārskats
Darbības pārskats

Lietotāja kontrole: eyeRobot darbība ir veidota pēc iespējas intuitīvāka, lai ievērojami samazinātu vai novērstu apmācību. Lai sāktu kustību, lietotājam vienkārši jāsāk iet uz priekšu, lineārais sensors nūjas pamatnē uztvers šo kustību un sāks virzīt robotu uz priekšu. Izmantojot šo lineāro sensoru, robots var pielāgot savu ātrumu vēlamajam lietotāja ātrumam. eyeRobot kustēsies tik ātri, cik lietotājs vēlas. Lai norādītu, ka vēlams pagriezties, lietotājam vienkārši jāpagriež rokturis, un, ja ir iespējams pagriezties, robots attiecīgi reaģēs.

Navigācija ar robotu: Ceļojot atklātā telpā, eyeRobot mēģinās iet taisnu ceļu, atklājot visus šķēršļus, kas var traucēt lietotājam, un novirza lietotāju ap šo objektu un atpakaļ uz sākotnējo ceļu. Praksē lietotājs var dabiski sekot aiz robota ar nelielu apzinātu domu. Lai pārvietotos pa gaiteni, lietotājam jācenšas iegrūst robotu vienā no sienām abās pusēs, iegūstot sienu, robots sāks tam sekot, vadot lietotājs gaitenī. Sasniedzot krustojumu, lietotājs jutīs, ka robots sāk griezties, un, pagriežot rokturi, var izvēlēties, vai nolaist jauno atzaru vai turpināt taisnu ceļu. Tādā veidā robots ir ļoti līdzīgs baltajam spieķim, lietotājs var sajust vidi ar robotu un izmantot šo informāciju globālajai navigācijai.

3. darbība: diapazona sensori

Diapazona sensori
Diapazona sensori

Ultraskaņa: EyeRobot ir aprīkots ar 4 ultraskaņas attāluma meklētājiem (MaxSonar EZ1). Ultraskaņas sensori ir novietoti lokā robota priekšpusē, lai sniegtu informāciju par objektiem robota priekšā un sānos. Viņi informē robotu par objekta diapazonu un palīdz tam atrast atklātu maršrutu ap šo objektu un atgriezties sākotnējā ceļā.

IR attāluma meklētāji: EyeRobot ir arī divi IR sensori (GP2Y0A02YK). IR attāluma meklētāji ir novietoti tā, lai tie būtu vērsti 90 grādos pa labi un pa kreisi, lai palīdzētu robotam sekot sienai. Viņi var arī brīdināt robotu par objektiem, kas ir pārāk tuvu tā sāniem, kuros lietotājs var ieiet.

4. solis: niedru stāvokļa sensori

Niedru stāvokļa sensori
Niedru stāvokļa sensori

Lineārais sensors: lai eyeRobot atbilstu tā ātrumam ar lietotāja ātrumu, eyeRobot uztver, vai lietotājs spiež vai aizkavē kustību uz priekšu. To panāk, bīdot spieķa pamatni pa sliežu ceļu, jo potenciometrs uztver spieķa stāvokli. EyeRobot izmanto šo ievadi, lai regulētu robota ātrumu. Robotu, kas pielāgojas lietotāja ātrumam, izmantojot lineāro sensoru, patiesībā iedvesmoja ģimenes zāles pļāvējs. Nūjas pamatne ir savienota ar virzošo bloku, kas pārvietojas pa sliedi. Vadības blokam ir pievienots slaidu potenciometrs, kas nolasa virzošā bloka stāvokli un ziņo par to procesoram. Lai ļautu nūjai griezties attiecībā pret robotu, caur koka bloku iet uz augšu stienis, veidojot rotējošu gultni. Pēc tam šis gultnis ir piestiprināts pie eņģes, lai ļautu nūjai pielāgoties lietotāja augumam.

Pagrieziena sensors: Pagrieziena sensors ļauj lietotājam pagriezt rokturi, lai pagrieztu robotu. Vienas koka vārpstas galā ir piestiprināts potenciometrs, un poga ir ievietota un pielīmēta roktura augšējā daļā. Vadi iet pa dībeli un ievada informāciju par deformāciju procesorā.

5. solis: procesors

Procesors
Procesors

Procesors: robotu kontrolē Zbasic ZX-24a, kas atrodas uz Robodyssey Advanced mātesplates II. Procesors tika izvēlēts tā ātruma, lietošanas ērtuma, pieņemamu izmaksu un 8 analogo ieeju dēļ. Tas ir savienots ar lielu prototipa maizes dēli, lai varētu ātri un viegli veikt izmaiņas. Visa robota jauda nāk no mātesplates barošanas avota. Zbasic sazinās ar roomba caur kravas nodalījuma ostu un pilnībā kontrolē Roomba sensorus un motorus.

6. darbība: koda pārskats

Koda pārskats
Koda pārskats

Izvairīšanās no šķēršļiem: Lai izvairītos no šķēršļiem, eyeRobot izmanto metodi, kurā robota tuvumā esošie objekti iedarbina virtuālu spēku uz robotu, attālinot to no objekta. Citiem vārdiem sakot, objekti atgrūž robotu no sevis. Manā īstenošanā objekta radītais virtuālais spēks ir apgriezti proporcionāls attālumam kvadrātā, tāpēc spiediena spēks palielinās, objektam tuvojoties un izveido nelineāru reakcijas līkni: PushForce = ResponseMagnitudeConstant/Distance2Spiedieni, kas nāk no katra sensora, tiek saskaitīti kopā; sensori kreisajā pusē spiež pa labi un otrādi, lai iegūtu vektoru robota ceļojumam. Pēc tam tiek mainīti riteņu ātrumi, lai robots pagrieztos pret šo vektoru. Lai nodrošinātu, ka robota priekšā mirušie objekti nereaģē uz “nē” (jo spēki abās pusēs līdzsvarojas), objekti, kas atrodas uz mirušās frontes, nospiež robotu uz atvērtāku pusi. Kad robots ir pagājis garām objektam, tas izmanto Roomba kodētājus, lai koriģētu izmaiņas un atgrieztos sākotnējā vektorā.

Sienas sekošana: Sienu ievērošanas princips ir saglabāt vēlamo attālumu un paralēlu leņķi pret sienu. Problēmas rodas, pagriežot robotu attiecībā pret sienu, jo viens sensors dod bezjēdzīgus diapazona rādījumus. Diapazona rādījumus ietekmē robotu leņķis pret sienu, kā arī faktiskais attālums līdz sienai. Lai noteiktu leņķi un tādējādi novērstu šo mainīgo, robotam jābūt diviem atskaites punktiem, kurus var salīdzināt, lai iegūtu robotu leņķi. Tā kā eyeRobot ir tikai viena puse vērsta pret IR tālmēru, lai sasniegtu šos divus punktus, robotam pārvietojoties jāsalīdzina attālums no attāluma meklētāja laika gaitā. Pēc tam robots pārvietojas gar sienu un nosaka tā leņķi no starpības starp abiem rādījumiem. Pēc tam tā izmanto šo informāciju, lai labotu nepareizu pozicionēšanu. Robots ieslēdzas sekošanas režīmā, kad tam noteiktu laiku ir siena, un iziet no tā ikreiz, kad ceļā ir šķērslis, kas to izstumj no kursa, vai ja lietotājs izmanto pagriežamo rokturi, robots prom no sienas.

7. solis: detaļu saraksts

Detaļu saraksts
Detaļu saraksts

Nepieciešamās detaļas: 1x) Roomba create1x) Liela akrila loksne2x) Sharp GP2Y0A02YK IR attāluma meklētājs Eņģes, dībeļi, skrūves, uzgriežņi, kronšteini un stieples

8. solis: motivācija un uzlabošana

Motivācija un uzlabošana
Motivācija un uzlabošana

Motivācija: Šis robots tika izstrādāts, lai aizpildītu acīmredzamo plaisu starp spējīgo, bet dārgo suni -pavadoni un lēto, bet ierobežoto balto spieķi. Izstrādājot tirgojamu un spējīgāku robotu balto spieķi, Roomba Create bija ideāls līdzeklis ātra prototipa izstrādei, lai noskaidrotu, vai šī koncepcija darbojas. Turklāt balvas sniegtu ekonomisku atbalstu ievērojamiem izdevīgākiem robotiem.

Uzlabojums: summa, ko es iemācījos, veidojot šo robotu, bija ievērojama, un šeit es mēģināšu izklāstīt to, ko esmu iemācījies, mēģinot izveidot otrās paaudzes robotu: 1) izvairīšanās no šķēršļiem - esmu daudz iemācījies par reālā laika šķēršļiem izvairīšanās. Šī robota veidošanas procesā esmu izgājis divus pilnīgi atšķirīgus šķēršļu novēršanas kodus, sākot ar sākotnējo priekšmeta spēka ideju, pēc tam pārejot pie principa atrast un meklēt visatvērtāko vektoru, un pēc tam atgriežoties pie objekta spēka idejas. galvenā apziņa, ka objekta atbildei jābūt nelineārai. Nākotnē es labošu savu kļūdu, ka pirms sava projekta uzsākšanas neveicu tiešsaistē pētījumus par iepriekš izmantotajām metodēm, jo tagad mācos, ka ātra Google meklēšana būtu sniegusi daudz lielisku rakstu par šo tēmu. 2) Nūjas dizains sensori - Sākot šo projektu, es domāju, ka mana vienīgā iespēja lineāram sensoram ir izmantot slīdošo podu un kādu lineāru gultni. Tagad es saprotu, ka daudz vienkāršāka iespēja būtu bijusi vienkārši piestiprināt stieņa augšdaļu pie kursorsviras tā, ka, stumjot nūju uz priekšu, virzītos arī kursorsviru uz priekšu. Turklāt vienkāršs universālais savienojums ļautu nūjas pagriezienu pārvērst daudzu mūsdienu kursorsviru pagrieziena asī. Šī ieviešana būtu bijusi daudz vienkāršāka nekā tā, kuru es pašlaik izmantoju. 3) Brīvi pagriežami riteņi - lai gan ar Roomba tas nebūtu bijis iespējams, tagad šķiet acīmredzami, ka robots ar brīvi pagriežamiem riteņiem būtu ideāls šim uzdevumam. Robotam, kas rullē pasīvi, nebūtu nepieciešami motori un mazāks akumulators, un tādējādi tas būtu vieglāks. Turklāt šai sistēmai nav nepieciešams lineārs sensors, lai noteiktu lietotāju spiedienu, robots vienkārši ripotu ar lietotāju ātrumu. Robotu varēja pagriezt, stūrējot riteņus kā automašīnu, un, ja lietotājs bija jāaptur, var pievienot bremzes. Nākamās paaudzes eyeRobot gadījumā es noteikti izmantošu šo ļoti atšķirīgo pieeju. 4) Divi atstaroti sensori sienu sekošanai - kā minēts iepriekš, radās problēmas, mēģinot sekot sienai tikai ar vienu pusi vērstu sensoru, tāpēc bija nepieciešams pārvietot robotu starp rādījumiem lai sasniegtu dažādus atskaites punktus. Divi sensori ar attālumu starp tiem ievērojami vienkāršos sekošanu sienām. Tas būtu padarījis navigācijas kodu daudz jaudīgāku ar pilnīgāku hidrolokatoru masīvu (bet, protams, sensori maksā naudu, kas man tobrīd nebija).

9. solis. Secinājums

Secinājums
Secinājums

Secinājums: iRobot izrādījās ideāla prototipēšanas platforma, lai eksperimentētu ar robotu baltā spieķa koncepciju. No šī prototipa rezultātiem redzams, ka šāda veida robots patiešām ir dzīvotspējīgs. Es ceru attīstīt otrās paaudzes robotu no mācībām, kuras esmu guvis, izmantojot Roomba Create. Nākamajās eyeRobot versijās es iedomājos ierīci, kas spēj vairāk nekā tikai vadīt cilvēku pa gaiteni, bet drīzāk robotu, ko var nodot neredzīgo rokās lietošanai ikdienā. Izmantojot šo robotu, lietotājs vienkārši pateiks savu galamērķi, un robots viņus tur vedīs bez lietotāja apzinātas piepūles. Šis robots būtu pietiekami viegls un kompakts, lai to varētu viegli pacelt pa kāpnēm un novietot skapī. Šis robots papildus lokālajai spētu veikt globālu navigāciju, spējot vadīt lietotāju no sākuma līdz galamērķim bez lietotāju iepriekšējām zināšanām vai pieredzes. Šī iespēja pārsniegtu pat suņu pavadoni, ar GPS un progresīvākiem sensoriem, kas neredzīgajiem ļautu brīvi pārvietoties pasaulē, Nathaniel Barshay, (ievadījis Stephen Barshay) (Īpašs paldies Džekam Hitam par Roomba Create)

10. darbība: konstrukcija un kods

Konstrukcija un kods
Konstrukcija un kods

Daži sveši vārdi par konstrukciju: Klājs izgatavots no akrila gabala, kas sagriezts aplī ar atveri aizmugurē, lai varētu piekļūt elektronikai, un pēc tam tiek ieskrūvēts montāžas atverēs blakus kravas nodalījumam. Prototipēšanas dēlis ir ieskrūvēts skrūves atverē līča apakšā. Zbasic ir uzstādīts ar L kronšteinu ar tādām pašām skrūvēm kā klājs. Katrs hidrolokators ir ieskrūvēts akrila gabalā, kas savukārt ir piestiprināts pie L kronšteina, kas piestiprināts pie klāja (L kronšteini ir saliekti par 10 grādiem atpakaļ, lai iegūtu labāku redzamību). Lineārā sensora sliede ir ieskrūvēta tieši klājā, un slīdošais pods ir uzstādīts ar L kronšteiniem blakus. Tehnisks lineārā sensora un vadības stieņa konstrukcijas apraksts ir atrodams 4. darbībā.

Kods: Esmu pievienojis robotu koda pilno versiju. Stundas laikā esmu mēģinājis to notīrīt no trīs vai četrām koda paaudzēm, kas bija failā, tam vajadzētu būt pietiekami vienkāršam tagad. Ja jums ir ZBasic IDE, to vajadzētu viegli apskatīt, ja ne, izmantojiet piezīmju grāmatiņu, sākot ar failu main.bas un ejot cauri citiem.bas failiem.

Ieteicams: