Mündəricat:

EyeRobot - Ağ Robotlu Robot: 10 addım (şəkillərlə)
EyeRobot - Ağ Robotlu Robot: 10 addım (şəkillərlə)

Video: EyeRobot - Ağ Robotlu Robot: 10 addım (şəkillərlə)

Video: EyeRobot - Ağ Robotlu Robot: 10 addım (şəkillərlə)
Video: Yeni Hörümçək Adam 2| Hörümçək Adam Vs Rhino Son Səhnə (Azərbaycan Dilində) HD 2024, Noyabr
Anonim
EyeRobot - Ağ Baston Robotu
EyeRobot - Ağ Baston Robotu

Xülasə: iRobot Roomba Create istifadə edərək, eyeRobot adlı bir cihazın prototipini hazırladım. Görmə qabiliyyətli itin instinktləri ilə ənənəvi ağ qamışın sadəliyi ilə evlənmək üçün Roomba'dan əsas olaraq istifadə edərək kor və görmə qüsurlu istifadəçiləri qarışıq və məskunlaşmış mühitlərdə istiqamətləndirəcək. İstifadəçi sapı intuitiv şəkildə basıb bükərək istədiyi hərəkəti göstərir. Robot bu məlumatları alır və istifadəçini statik və dinamik maneələr ətrafında uyğun bir istiqamətə yönəltmək üçün sonardan istifadə edərək koridorda və ya otaqda aydın bir yol tapır. İstifadəçi, robotun arxasından izləyir, çünki istifadəçi sapdan hiss olunan nəzərəçarpacaq qüvvə ilə istədiyi istiqamətə yönəldir. Bu robot seçimi az məşq tələb edir: getmək üçün itələmək, dayandırmaq üçün çəkmək, çevirmək üçün bükmək. Uzaqgörənlərin təmin etdiyi uzaqgörənlik, gözlü bir itə bənzəyir və ağ qamışın istifadəsini göstərən davamlı sınaq və səhv üzərində əhəmiyyətli bir üstünlükdür. Yenə də eyeRobot, qiyməti 12 min dollardan çox olan və cəmi 5 il ərzində faydalı olan bələdçi itlərdən daha ucuz alternativ təqdim edir, prototip isə 400 dollardan aşağı qiymətə inşa edilmişdir. Həm də nisbətən sadə bir maşındır, bir neçə ucuz sensor, müxtəlif potensiometrlər, bəzi aparatlar və əlbəttə ki, Roomba Create tələb edir.

Addım 1: Video nümayişi

Video Nümayiş
Video Nümayiş

Yüksək keyfiyyətli versiya

Addım 2: Əməliyyata Baxış

Əməliyyata Baxış
Əməliyyata Baxış

İstifadəçi Nəzarəti: eyeRobotun işi təhsili əhəmiyyətli dərəcədə azaltmaq və ya aradan qaldırmaq üçün mümkün qədər intuitiv şəkildə qurulmuşdur. Hərəkətə başlamaq üçün istifadəçi sadəcə irəli getməyə başlamalıdır, çubuğun əsasındakı xətti bir sensor bu hərəkəti alacaq və robotu irəli aparmağa başlayacaq. Bu xətti sensordan istifadə edərək, robot istifadəçinin istədiyi sürətlə uyğunlaşa bilər. eyeRobot, istifadəçinin getmək istədiyi qədər sürətli hərəkət edəcək. Dönüşün istədiyini göstərmək üçün istifadəçi sadəcə sapı bükməlidir və əgər dönüş mümkündürsə, robot buna cavab verəcək.

Robot Naviqasiyası: Açıq məkanda səyahət edərkən, eyeRobot düz bir yol tutmağa çalışacaq, istifadəçiyə mane ola biləcək hər hansı bir maneəni aşkar edərək istifadəçini həmin obyektin ətrafında və orijinal yola yönləndirəcək. Təcrübədə istifadəçi təbii olaraq robotun arxasınca azca şüurlu bir şəkildə düşünə bilər. Koridorda gəzmək üçün istifadəçi robotu hər iki tərəfdəki divarlardan birinə itələməyə çalışmalıdır. istifadəçi koridorda. Kəsişmə nöqtəsinə çatdıqda, istifadəçi robotun dönməyə başladığını hiss edəcək və sapı bükərək, yeni sapı geri çevirmək və ya düz yola davam etmək üçün seçim edə bilər. Bu şəkildə robot ağ qamışa çox bənzəyir, istifadəçi robotla ətrafı hiss edə və bu məlumatları qlobal naviqasiya üçün istifadə edə bilər.

Addım 3: Menzil Sensorlari

Menzil Sensorlari
Menzil Sensorlari

Ultrasonik: eyeRobot 4 Ultrasonik məsafə tapan (MaxSonar EZ1) daşıyır. Ultrasonik sensorlar, robotun qarşısındakı və tərəfindəki cisimlər haqqında məlumat vermək üçün robotun ön tərəfindəki bir qövsdə yerləşdirilmişdir. Robota obyektin əhatə dairəsi haqqında məlumat verir və obyektin ətrafında açıq bir yol tapmasına və orijinal yoluna qayıtmasına kömək edir.

IR Ölçənlər: eyeRobot eyni zamanda iki IR sensoru (GP2Y0A02YK) daşıyır. IR məsafə tapıcılar, robotun divarın ardınca düşməsinə kömək etmək üçün 90 dərəcə sağa və sola baxacaq şəkildə yerləşdirilmişdir. İstifadəçinin girə biləcəyi tərəflərə çox yaxın olan obyektləri robotu xəbərdar edə bilərlər.

Addım 4: Çubuq Mövqe Sensorları

Çubuq Mövqe Sensorları
Çubuq Mövqe Sensorları

Xətti Sensor: EyeRobotun sürətini istifadəçi sürətinə uyğunlaşdırmaq üçün, eyRobot istifadəçinin irəli hərəkətini itələdiyini və ya gerilədiyini hiss edir. Bu, çubuğun əsasını bir iz boyunca sürüşdürməklə əldə edilir, çünki potensiometr qamışın mövqeyini hiss edir. EyeRobot robotun sürətini tənzimləmək üçün bu girişdən istifadə edir. EyRobotun xətti sensor vasitəsilə istifadəçinin sürətinə uyğunlaşması ideyası əslində ailənin çəmən biçənindən ilhamlandı. Kılavuz blokuna, bələdçi blokunun mövqeyini oxuyan və prosessora bildirən bir slayd potansiyometri əlavə edilmişdir. Çubuğun robota nisbətən dönməsinə icazə vermək üçün taxta blokdan keçən və fırlanan bir rulman meydana gətirən bir çubuq var. Bu rulman, çubuğun istifadəçinin hündürlüyünə uyğunlaşmasını təmin etmək üçün bir menteşəyə bağlanır.

Bükmə Sensoru: Bükmə sensoru istifadəçinin robotu döndərmək üçün sapı bükməsinə imkan verir. Bir taxta şaftın ucuna potansiyometr bağlanır və düymə sapın yuxarı hissəsinə yapışdırılır. Tellər dübeldən keçir və bükülmə məlumatlarını prosessora ötürür.

Addım 5: Prosessor

Prosessor
Prosessor

Prosessor: Robot, Robodyssey Advanced Motherboard II üzərində oturan Zbasic ZX-24a tərəfindən idarə olunur. Prosessor sürəti, istifadəsi asanlığı, əlverişli qiyməti və 8 analoq girişi ilə seçildi. Tez və asan dəyişikliklər etmək üçün böyük bir prototipləşdirmə çörək taxtasına bağlıdır. Robot üçün bütün güc anakartdakı enerji təchizatından gəlir. Zbasic, yük yuvası limanı vasitəsi ilə Roomba ilə əlaqə qurur və Roomba'nın sensor və motorlarına tam nəzarət edir.

Addım 6: Kodlara Baxış

Kod Baxış
Kod Baxış

Maneələrdən qaçınmaq: maneələrdən qaçmaq üçün eyeRobot, robotun yaxınlığındakı obyektlərin onu obyektdən uzaqlaşdıraraq robot üzərində virtual bir güc tətbiq etdiyi bir üsuldan istifadə edir. Başqa sözlə, obyektlər robotu özlərindən uzaqlaşdırır. Həyata keçirməyimdə, bir obyektin tətbiq etdiyi virtual qüvvə, məsafə kvadratına tərs mütənasibdir, buna görə də obyekt yaxınlaşdıqda və qeyri -xətti cavab əyrisi yaratdıqda itələmənin gücü artır: PushForce = ResponseMagnitudeConstant/Distance2Hər sensordan gələn itələmələr birlikdə əlavə olunur; sol tərəfdəki sensorlar robotun səyahəti üçün vektor əldə etmək üçün sağa və əksinə itələyir. Daha sonra təkər sürətləri dəyişdirilir, beləliklə robot bu vektora tərəf dönür. Robotun qarşısında ölü olan cisimlərin "heç bir reaksiya" verməməsini təmin etmək üçün (hər iki tərəfdəki qüvvələr tarazlıqda olduğu üçün) ölü cəbhədə olan cisimlər robotu daha açıq tərəfə itələyir. Robot obyekti keçdikdən sonra dəyişikliyi düzəltmək və orijinal vektora qayıtmaq üçün Roomba kodlayıcılarından istifadə edir.

Divar təqibi: Divar izləmə prinsipi, istədiyiniz məsafəni və bir divara paralel bucağı qorumaqdır. Robot divara nisbətən döndərildikdə problemlər yaranır, çünki tək sensor yararsız diapazon oxuları verir. Aralığın oxunuşu, robotların divara olan bucağı ilə divara həqiqi məsafə qədər təsir göstərir. Bucağı təyin etmək və bu dəyişkənliyi aradan qaldırmaq üçün robotun robotların bucağını əldə etmək üçün müqayisə edilə bilən iki istinad nöqtəsi olmalıdır. EyeRobot -un yalnız bir tərəfi İR uzaqlaşan ilə üzləşdiyi üçün, bu iki nöqtəni əldə etmək üçün robot hərəkət edərkən zamanla uzaqlaşıcı arasındakı məsafəni müqayisə etməlidir. Daha sonra robot divar boyunca hərəkət edərkən iki oxunuş arasındakı fərqdən bucağını təyin edir. Daha sonra bu məlumatı düzgün olmayan yerləşdirməni düzəltmək üçün istifadə edir. Robot, müəyyən bir müddət yanında bir divarı olduğu zaman divarı izləmə rejiminə keçir və yolunda maneə yarandıqda, yoldan kənara çıxdıqda və ya istifadəçi burulma sapından istifadə edərək robot divardan uzaqlaşdı.

Addım 7: Parça siyahısı

Parça siyahısı
Parça siyahısı

Lazım olan hissələr: 1x) Roomba yaratmaq1x) Böyük akril vərəq2) Kəskin GP2Y0A02YK IR diapazonu4x) Maxsonar EZ1 ultrasəs məsafəölçənlər1x) ZX-24a mikroprosessor1x) Robodyssey Ətraflı Anakart II1x) Slayd potensiometr1x) 1 ədəd) Çarxlı 1 ədəd Menteşələr, dübeller, vintlər, qoz -fındıq, mötərizələr və tellər

Addım 8: Motivasiya və təkmilləşdirmə

Motivasiya və təkmilləşdirmə
Motivasiya və təkmilləşdirmə

Motivasiya: Bu robot qabiliyyətli, lakin bahalı bələdçi iti ilə ucuz, lakin məhdud ağ qamış arasındakı açıq boşluğu doldurmaq üçün hazırlanmışdır. Satışa çıxarılan və daha qabiliyyətli Robotik Ağ Bastonun hazırlanmasında, Roomba Create konsepsiyanın işləyib -işləmədiyini görmək üçün sürətli bir prototip hazırlamaq üçün mükəmməl vasitə idi. Bundan əlavə, mükafatlar daha bacarıqlı bir robot hazırlamaq üçün xeyli xərc üçün iqtisadi dəstək təmin edəcək.

Təkmilləşdirmə: Bu robotun qurulmasını öyrəndiyim məbləğ əhəmiyyətli idi və burada ikinci nəsil robot yaratmağa çalışarkən öyrəndiklərimi ortaya qoymağa çalışacağam: 1) Maneələrin qarşısını almaq - real vaxt maneəsi haqqında çox şey öyrəndim qaçmaq. Bu robotun qurulması prosesində, orijinal obyekt qüvvəsi ideyasından başlayaraq ən açıq vektorun tapılması və axtarılması prinsipinə keçdikdən sonra iki fərqli maneə qaçma kodunu keçdim. obyektin reaksiyasının qeyri-xətti olması lazım olduğunu anlamaq. Gələcəkdə, layihəmə başlamazdan əvvəl əvvəllər istifadə olunan metodlarla bağlı heç bir onlayn araşdırma aparmamaqla bağlı səhvimi düzəldəcəyəm, çünki indi sürətli bir Google axtarışını öyrəndiyim üçün mövzu ilə bağlı çoxlu məqalələr əldə edərdim. 2) Çubuğun dizaynı sensorlar - Bu layihəyə başlayaraq, xətti bir sensor üçün yeganə seçimimin bir sürüşmə qazan və bir növ xətti rulman istifadə etmək olduğunu düşündüm. İndi başa düşürəm ki, çubuğun yuxarı hissəsini bir joystickə bağlamaq daha sadə bir seçim olardı, beləliklə çubuğu irəli itələmək də joysticki irəli aparacaq. Əlavə olaraq sadə bir universal birləşmə, çubuğun bükülməsini bir çox müasir joystickin bükülmə oxuna çevirməyə imkan verir. 3) Sərbəst dönmə təkərləri - Roomba ilə bu mümkün olmasa da, sərbəst dönər təkərli bir robotun bu iş üçün ideal olacağı artıq aydın görünür. Pasif yuvarlanan bir robot üçün heç bir mühərrik və daha kiçik bir batareya tələb olunmayacaq və buna görə də daha yüngül olacaq. Bundan əlavə, bu sistem istifadəçilərin itələməsini aşkar etmək üçün heç bir xətti sensora ehtiyac duymur, robot sadəcə istifadəçi sürətində yuvarlanacaq. Robot təkərləri avtomobil kimi idarə etməklə döndərilə bilər və istifadəçini dayandırmaq lazımdırsa əyləclər əlavə edilə bilər. Gələcək nəsil eyeRobot üçün əlbəttə ki, bu fərqli yanaşmanı istifadə edəcəm. 4) Divar izləmə üçün iki boşluqlu sensorlar - Daha əvvəl müzakirə edildiyi kimi, yalnız bir tərəfə baxan sensorla divarın ardınca getməyə çalışarkən ortaya çıxdı, buna görə də robotun oxunuşlar arasında hərəkət etməsi lazım idi. fərqli istinad nöqtələrinə nail olmaq. Aralarında məsafə olan iki sensör, divarın işini xeyli asanlaşdıracaq. 5) Daha çox sensorlar - Bu, daha çox pula başa gəlsə də, bu robotu dünyada prosessor xaricində bu qədər az pəncərəsi olan kodlaşdırmaq çətin idi. Naviqasiya kodunu daha dolğun bir sonar dizisi ilə daha güclü edərdi (amma təbii ki, sensorlar o vaxt məndə olmayan pula başa gəlir).

Addım 9: Nəticə

Nəticə
Nəticə

Nəticə: iRobot, Robotik Ağ Baston konsepsiyasını sınamaq üçün ideal bir prototip platforması olduğunu sübut etdi. Bu prototipin nəticələrindən aydın olur ki, bu tip bir robot həqiqətən canlıdır. Roomba Create -dən istifadə edərək öyrəndiyim dərslərdən ikinci nəsil robotu inkişaf etdirməyi ümid edirəm. EyRobot -un gələcək versiyalarında, bir insanı koridorda istiqamətləndirməkdən daha çox iş görən bir cihazı, daha çox gündəlik həyatda istifadə etmək üçün korların əlinə verilə bilən bir robotu təsəvvür edirəm. Bu robotla istifadəçi sadəcə təyinatını danışardı və robot istifadəçinin şüurlu səyləri olmadan ora doğru yol göstərərdi. Bu robot yüngül və kompakt olardı ki, asanlıqla pilləkənlərlə qalxsınlar və dolabda qalsınlar. Bu robot, istifadəçilərə əvvəlcədən məlumat və ya təcrübə olmadan istifadəçini başlanğıcdan təyinat istiqamətləndirə bilməklə yanaşı, yerli ilə yanaşı qlobal naviqasiya da edə bilər. Bu qabiliyyət hətta kor itin dünyanı sərbəst gəzməsinə imkan verən GPS və daha inkişaf etmiş sensorlar ilə hətta bələdçi itin də ötəsinə keçərdi (Stephen Barshay tərəfindən daxil edildi) (Roomba Create üçün Jack Hittə xüsusi təşəkkürlər)

Addım 10: Tikinti və Kod

Tikinti və Kod
Tikinti və Kod

Tikinti ilə əlaqədar bir neçə qəribə söz: Elektronikaya daxil olmaq üçün arxa tərəfində bir açılış olan bir dairə şəklində kəsilmiş bir akril parçadan hazırlanan göyərtə və sonra yük yuvasının yanındakı montaj çuxurlarına vidalanmışdır. Prototip lövhəsi körfəzin altındakı vida çuxuruna vidalanmışdır. Zbasic, göyərtə ilə eyni vintləri olan bir L mötərizəsi ilə quraşdırılmışdır. Hər bir sonar bir akril parçasına vidalanır, bu da öz növbəsində göyərtəyə bərkidilmiş L mötərizəyə bərkidilir (L mötərizələri daha yaxşı görmək üçün 10 dərəcə geri əyilir). Xətti sensorun izi birbaşa göyərtəyə vidalanmışdır və sürüşmə qabı yanında L mötərizələri quraşdırılmışdır. Xətti sensor və idarəetmə çubuğunun qurulmasının daha texniki təsvirini 4 -cü addımda tapa bilərsiniz.

Kod: Robotlar kodunun tam versiyasını əlavə etdim. Bir saat ərzində onu sənəddəki üç və ya dörd nəsil koddan təmizləməyə çalışdım, indi izləmək kifayət qədər asan olmalıdır. ZBasic IDE -yə sahibsinizsə, main.bas faylı ilə başlayan və digər.bas fayllarından keçən notepaddan istifadə etməsəniz, baxmaq asan olmalıdır.

Tövsiyə: