Mundarija:

Robotni poyabzal sensori, GPSsiz, xaritasiz boshqarish: 13 qadam (rasmlar bilan)
Robotni poyabzal sensori, GPSsiz, xaritasiz boshqarish: 13 qadam (rasmlar bilan)

Video: Robotni poyabzal sensori, GPSsiz, xaritasiz boshqarish: 13 qadam (rasmlar bilan)

Video: Robotni poyabzal sensori, GPSsiz, xaritasiz boshqarish: 13 qadam (rasmlar bilan)
Video: Удивили преображением дома в Варшаве! Такого я не видела. Новая Хатка в Варшаве! 2024, Noyabr
Anonim

By obluobluFollow About: oblu - bu ichki navigatsiya sensori, oblu haqida batafsil »

Robot oldindan dasturlashtirilgan yo'lda harakat qiladi va real vaqtni kuzatish uchun (bluetooth orqali) haqiqiy harakat ma'lumotlarini telefonga uzatadi. Arduino yo'l bilan oldindan dasturlashtirilgan va oblu robotning harakatini sezish uchun ishlatiladi. oblu Arduino -ga ma'lum vaqt oralig'ida harakat haqidagi ma'lumotlarni uzatadi. Bunga asoslanib, Arduino g'ildiraklarning harakatini boshqaradi, bu esa robotga oldindan belgilangan yo'ldan borishga imkon beradi.

1 -qadam: QISQA KIRISH

QISQA KIRISH
QISQA KIRISH

Loyiha robotni GPS yoki WiFi yoki Bluetooth-ni joylashishni aniqlash uchun, hatto xarita yoki qurilish rejasini ishlatmasdan, aniq belgilangan yo'lda harakatlantiradi. Va uning haqiqiy yo'lini (o'lchovga), real vaqtda torting. Bluetooth real vaqtda joylashuv ma'lumotlarini uzatish uchun sim o'rnini bosuvchi sifatida ishlatilishi mumkin.

2 -qadam: QIZIQARLI HIKOYA

QIZIQARLI HIKOYA
QIZIQARLI HIKOYA

Bizning jamoamizning asosiy vazifasi-poyabzalga o'rnatilgan piyodalar uchun navigatsiya sensorlarini ishlab chiqish. Biroq, bizga ilmiy tadqiqot guruhi murojaat qildi, u robotni ichki makonda boshqarish va bir vaqtning o'zida uning holatini kuzatish talabi bilan murojaat qildi. Ular bunday tizimni yopiq kamerada nurlanish xaritasi yoki sanoat qurilmasida gaz oqishini aniqlash uchun ishlatmoqchi bo'lishdi. Bunday joylar odamlar uchun xavflidir. bizning Arduino robotimizga bino ichida navigatsiya qilish uchun mustahkam echim izlayapmiz.

Har qanday harakat sensori moduli (IMU) uchun bizning aniq tanlovimiz "oblu" edi (yuqoridagi rasm). Ammo bu erda eng qiyin tomoni shundaki, oblu-ning mavjud dasturiy ta'minoti oddiy so'zlar bilan aytganda, piyoda o'liklarni hisoblash (PDR) yoki piyoda navigatsiyasi uchun mos edi. oblu-ning PDR-ning yopiq xonada oyoqqa o'rnatilgan IMU ishlashi juda ta'sirli. Oblu-ni poyabzal sensori sifatida real vaqtda kuzatib borish uchun Android ilovasining (Xoblu) mavjudligi afzalliklarni oshiradi. Biroq, muammo robot yurish va uni kuzatish uchun odamning yurish modeliga asoslangan mavjud algoritmidan foydalanish edi.

3 -qadam: "oblu" ga qisqacha kirish

Image
Image
Tizim tavsifi
Tizim tavsifi

"oblu" - bu harakatlanishni sezish uchun qo'llaniladigan kichik o'lchamli, arzon va ochiq manbali platforma. Bu Li-ion qayta zaryadlanuvchi batareyadir va bortda USB batareyasini zaryadlash imkonini beradi. U simsiz aloqa uchun bortli Bluetooth (BLE 4.1) moduliga ega. "oblu" 32-bitli suzuvchi nuqtali mikrokontrollerga ega (Atmel AT32UC3C), bortda murakkab navigatsiya tenglamalarini echishga imkon beradi. Shuning uchun har bir harakatni oblu o'zi bajaradi va faqat yakuniy natijani uzatadi. Bu oblu -ning assotsiatsiya tizimi bilan integratsiyasini juda oddiy qiladi. "oblu" shuningdek, sensorni birlashtirishga imkon beradigan va harakatni sezish qobiliyatini yaxshilaydigan ko'p IMU (MIMU) qatoriga ega. MIMU yondashuvi "oblu" ning o'ziga xosligini oshiradi.

oblu ichki hisoblari odamning yurishiga asoslangan. oblu ketma -ket ketma -ket ikkita qadam va sarlavhaning o'zgarishi o'rtasidagi almashinuvni aniqlaydi. Qanday qilib - oyoq erga tegsa, taglikning tezligi nolga teng, ya'ni taglik to'xtab qoladi. Shunday qilib, oblu "qadamlar" ni aniqlaydi va ba'zi ichki xatolarni tuzatadi. Va bu xatolarni tez -tez tuzatish, kuzatuvning ajoyib ishlashiga olib keladi. Shunday qilib, tutish shu erda. Agar bizning robotimiz ham xuddi shunday yursa -chi, harakatlaning, to'xtang, harakatlaning, to'xtang -chi?.. Aniqki, oblu har doim nol va nol bo'lmagan momentlari bo'lgan har qanday ob'ekt uchun ishlatilishi mumkin. Shunday qilib, biz oblu bilan oldinga intildik va tez orada biz robot va kuzatuv tizimini yig'a olmadik.

4 -qadam: "oblu" ning foydasi nimada?

Vaqtimizning deyarli 70% ini uyda o'tkazamiz. Shu sababli, odamlar va mashinalarning ichki navigatsiyasini talab qiladigan ko'plab ilovalar mavjud. Joylashtirish uchun eng ko'p ishlatiladigan echim - bu yo'ldoshga asoslangan GPS/GNSS, tashqi navigatsiya uchun yaxshi. Bu yopiq muhitda yoki ochiq osmonga kira olmaydigan shahar muhitida muvaffaqiyatsiz bo'ladi. Bunday ilovalar-xarobalarda yoki og'ir daraxtzorlar ostidagi joylarni geo-surishtirish, robotlarning ichki navigatsiyasi, qutqaruvchilarni yong'in, konlarda baxtsiz hodisalar, shahar urushlari uchun joylashuvi.

Oblu o'tmishdoshi o't o'chiruvchilarni joylashtirish uchun juda ixcham poyabzal sensori (yoki PDR sensori) sifatida tanishtirildi, keyinchalik u osonlikcha aniq qidirayotgan ishlab chiqaruvchilar uchun yuqori darajada konfiguratsiya qilinadigan rivojlanish platformasi sifatida yangilandi va o'zgartirildi. odamlarni, shuningdek robotlarni yopiq navigatsiya uchun inertial sezish uchun qulay echim. Hozirgacha oblu foydalanuvchilari piyodalarni kuzatish, sanoat xavfsizligi va resurslarni boshqarish, taktik politsiya, GPS bo'lmagan hududni geo-surishtirish, o'z-o'zini boshqaruvchi robot, yordamchi robototexnika, o'yin, AR/VR, harakat buzilishlarini davolash, fizikani tushunish bo'yicha o'z dasturlarini namoyish qilishdi. harakat va hokazo oblu makon cheklovlari bo'lgan ilovalar uchun javob beradi, masalan taqiladigan harakat sezgichi. Bundan tashqari, bortdagi Bluetooth tufayli simsiz IMU sifatida ham foydalanish mumkin. Bortda suzuvchi nuqtalarni qayta ishlash qobiliyatining mavjudligi, to'rtta IMU majmuasi bilan birga, modulning o'zida sensorni birlashtirish va harakatni qayta ishlashga imkon beradi, bu esa o'z navbatida harakatni aniq sezishga olib keladi.

5 -qadam: LOYIHA HIKOYASI

Image
Image

Loyihaning hikoyasi videoda …

6 -qadam: Tizim tavsifi

Robot oldindan dasturlashtirilgan yo'lda harakat qiladi va real vaqtni kuzatish uchun (bluetooth orqali) haqiqiy harakat ma'lumotlarini telefonga uzatadi.

Arduino yo'l bilan oldindan dasturlashtirilgan va oblu robotning harakatini sezish uchun ishlatiladi. oblu Arduino -ga ma'lum vaqt oralig'ida harakat haqidagi ma'lumotlarni uzatadi. Bunga asoslanib, Arduino g'ildiraklarning harakatini boshqaradi, bu esa robotga oldindan belgilangan yo'ldan borishga imkon beradi.

Robotning yo'li to'g'ri chiziqli segmentlar to'plami sifatida dasturlashtirilgan. Har bir chiziq segmenti oldingi uzunlikka va yo'nalishga qarab belgilanadi. Robotning harakati ehtiyotkorlik bilan saqlanadi, ya'ni u to'g'ri chiziqda, lekin kichikroq bo'laklarda harakat qiladi (soddaligi uchun "qadam" deyish mumkin). Har bir qadamning oxirida, oblu qadam uzunligi va burilish darajasini (yo'nalishni o'zgartirish) to'g'ri chiziqdan Arduinoga uzatadi. Arduino, har bir qadamda, agar ma'lumot aniqlansa, u har doim to'g'ri chiziqda harakat qilishi kerak. Biroq, u tekis chiziqdan chiqib ketishi mumkin va notekis yuzasi, robotlarni yig'ishdagi massa muvozanati, doimiy dvigatellarda me'moriy yoki elektr muvozanati yoki oldingi bo'sh g'ildirakning tasodifiy yo'nalishi kabi ideal bo'lmaganligi sababli ma'lum burchakda yoki qiyshiq yo'lda yurishi mumkin. Bir qadam qo'ying.. yo'nalishni to'g'rilang … oldinga intiling. Robot, agar u ma'lum bir chiziq segmentining dasturlashtirilgan uzunligidan ko'proq sayohat qilsa, orqaga ham siljiydi. Keyingi qadam uzunligi aynan shu to'g'ri chiziq segmentining qolgan masofasiga bog'liq. Robot katta masofani bosib o'tadi va katta masofani bosib o'tadi (ya'ni har bir to'g'ri chiziq segmentining oxiri). oblu bir vaqtning o'zida ma'lumotlarni Arduino va telefonga uzatadi (bluetooth orqali). Xoblu (Android ilovasi) telefondan real vaqtda kuzatish uchun ishlatiladigan robotdan olingan harakat ma'lumotlariga asoslangan yo'lni qurish uchun oddiy hisob-kitoblarni amalga oshiradi. (Xoblu yordamida yo'l qurilishi ikkinchi rasmda ko'rsatilgan).

Xulosa qilib aytganda, oblu harakatni sezadi va harakat haqidagi ma'lumotlarni Arduino va telefonga ma'lum vaqt oralig'ida etkazadi. Dasturlashtirilgan yo'l va harakat ma'lumotlari (oblu tomonidan yuborilgan) asosida Arduino g'ildiraklar harakatini boshqaradi. Robotning harakati masofadan boshqarilmaydi, ishga tushirish/to'xtatish buyruqlaridan tashqari.

Oblu dasturiy ta'minoti uchun https://sourceforge.net/p/openshoe/_list/git saytiga tashrif buyuring.

Robotning Aurduino kodini bilish uchun https://github.com/vijkumsha/oblu_Robot saytiga tashrif buyuring.

7 -qadam: Yo'lni modellashtirish

Yo'lni modellashtirish
Yo'lni modellashtirish
Yo'lni modellashtirish
Yo'lni modellashtirish

Agar robot faqat to'g'ri chiziqli segmentlarda yursa, uni eng yaxshi boshqarish mumkin edi. Shunday qilib, yo'l birinchi navbatda to'g'ri chiziqli segmentlar to'plami sifatida modellashtirilishi kerak. Rasmlarda joy almashish va yo'nalish bo'yicha bir nechta misol yo'llar va ularning tasvirlari mavjud. Yo'l Arduino -da shunday dasturlashtirilgan.

Xuddi shunday, to'g'ri chiziq segmentlari to'plami bo'lgan har qanday yo'lni Arduino -da aniqlash va dasturlash mumkin.

8 -qadam: O'RNATISH TO'G'RISI

DAVLAT TO'G'RISI
DAVLAT TO'G'RISI

Yuqori darajali tizim integratsiyasi diagrammasi. Arduino va oblu apparat yig'ilishining bir qismidir. UART Arduino va oblu o'rtasidagi aloqa uchun ishlatiladi. (Iltimos, Rx/Tx ulanishiga e'tibor bering.) Ma'lumot oqimining yo'nalishi faqat ma'lumot uchun. Butun apparat yig'ilishi bluetooth yordamida smartfon (Xoblu) bilan aloqa o'rnatadi.

9 -qadam: O'RNAK DIAGRAMI

ZAMANA DIAGRAMI
ZAMANA DIAGRAMI

Arduino, oblu, dvigatel drayveri va batareya to'plami o'rtasidagi batafsil elektr aloqasi.

10 -qadam: Aloqa protokoli:

Quyida robotga o'rnatilgan oblu sensori va Xoblu o'rtasida ma'lumotlar aloqasi qanday sodir bo'ladi:

1 -qadam: Xoblu obluga START buyrug'ini yuboradi 2 -qadam: oblu Xobluga tegishli ACK yuborish orqali buyruq olganini tan oladi 3 -qadam: oblu har qadamda, har qadamda Xobluga joy almashish va yo'nalish ma'lumotlarini o'z ichiga olgan DATA paketini yuboradi. (qadam = nol harakati aniqlanganda yoki to'xtab qolganda). 4 -qadam: Xoblu tegishli ACKni obluga yuborish orqali oxirgi DATA paketini olganini tan oladi. (3 va 4 -qadamlarning tsikli Xoblu STOP yuborguncha takrorlanadi. STOP buyrug'ini olganidan so'ng oblu 5 -qadamni bajaradi) 5 -qadam: STOP - (i) obluda ishlov berishni to'xtatish (ii) obludagi barcha chiqishni to'xtatish Iltimos, oblu -ning arizasiga qarang. START, ACK, DATA va STOP tafsilotlari

11 -qadam: "oblu" IMU qanday ishlaydi (ixtiyoriy):

Oyoqqa o'rnatilgan PDR sensorlarining umumiy ko'rinishi va ishlash printsipi haqida ba'zi ma'lumotnomalarni taqdim etish:

Oblu-ning mavjud manba kodi piyoda harakatlanish uchun mo'ljallangan. Va bu maqsad uchun optimallashtirilgan. Quyidagi videoda uning ishlash printsipi ko'rsatilgan:

Bu erda piyoda o'rnatilgan PDR sensorlaridagi bir nechta oddiy maqolalar: 1. Mening qadamlarimni kuzatib boring

2. Qadamlarimni kuzatishda davom eting

Oyoq sensori yordamida piyodalar o'liklarini hisoblash haqida batafsil ma'lumot olish uchun ushbu hujjatga murojaat qilishingiz mumkin.

12 -qadam: "oblu.io" ga tashrif buyuring (ixtiyoriy)

Image
Image

"Oblu" ning mumkin bo'lgan ilovalari uchun videoni tomosha qiling:

---------------- Iltimos, o'z fikr-mulohazalaringiz, takliflaringiz va sharhlaringizni qoldiring. Eng yaxshi tilaklar!

13 -qadam: QOMPONENTLAR

1 oblu (ochiq manbali IMUni rivojlantirish platformasi)

1 Arduino uchun aqlli motorli robotli avtomobil akkumulyator qutisi shassi to'plami DIY tezlikni kodlovchi

1 Lehimsiz non paneli yarim o'lchami

1 erkak/ayol o'tish simlari

2 kondansatör 1000 mF

1 Texas Instruments Dual H-Bridge dvigatellari L293D

1 Arduino Mega 2560 va Genuino Mega 2560

4 Amazon Web Services AA 2800 Ni-MH zaryadlanuvchi

Tavsiya: