Robotik dasturlar uchun vositalar - Middleware for Robotic Applications - Wikipedia

MIRA
Tuzuvchi (lar)MetraLabs GmbH,
Ilmenau Texnologiya Universiteti
Dastlabki chiqarilish2012 yil 27 aprel; 8 yil oldin (2012-04-27)
Barqaror chiqish
2020-04-26 / 26 aprel 2020 yil; 7 oy oldin (2020-04-26)
YozilganC ++
Operatsion tizimLinux, Windows
TuriRobotika to'plami, O'rta dastur
LitsenziyaIkki litsenziya:
GPL 3-versiyasi,
Professional nashr litsenziyasi
Veb-saytwww.mira-loyiha.org

Robotik dasturlar uchun vositalar (MIRA) - bu o'zaro faoliyat platforma, ochiq manba dasturiy ta'minot doirasi a ni ta'minlaydigan C ++ da yozilgan o'rta dastur, tarqatilgan dasturiy ta'minot modullarini ishlab chiqish va sinovdan o'tkazish uchun bir nechta asosiy funktsiyalar va ko'plab vositalar. Bundan tashqari, ushbu modullarni plagin sifatida qayta ishlatishda murakkab, dinamik dasturlarni oson yaratishga qaratilgan. MIRA ning asosiy maqsadi - rivojlantirish robotlashtirilgan dasturlar, lekin ichki va protsessual aloqadan foydalangan holda dasturiy ta'minot modullari o'rtasida xavfsiz ma'lumotlar almashinuvini ta'minlash uchun ishlab chiqilganligi sababli, ushbu turdagi dasturlar bilan cheklanib qolmaydi.[1]

MIRA hamkorlikda ishlab chiqilgan MetraLabs GmbH va Ilmenau Texnologiya Universiteti /Neyroinformatika va kognitiv robototexnika laboratoriyasi. Shuning uchun MIRA tijorat maqsadlarida ham, ta'lim maqsadlarida ham ishlab chiqilgan.

Xususiyatlari

Umumiy:

  • qo'shadi introspektsiya /aks ettirish va seriyalash ga C ++ yordamida C ++ faqat til tuzilmalari (meta-til yoki metakompilyatorlar kerak emas)
  • dasturiy ta'minot modullari o'rtasida samarali ma'lumotlar almashinuvi
  • "kanallar" ga asoslangan ishlatilgan aloqa texnikasi har doim uzatilgan ma'lumotlarga to'siqsiz kirishga imkon beradi [2]
  • dasturiy ta'minot modullari bir xil jarayonda, turli xil jarayonlarda yoki turli xil mashinalarda joylashgan bo'lishidan qat'i nazar, foydalanuvchi uchun aloqa to'liq shaffof bo'ladi, asosiy transport qatlami avtomatik ravishda ma'lumotlarni uzatish uchun tezkor usulni tanlaydi[2]
  • "kanallar" orqali ma'lumot almashishdan tashqari, MIRA qo'llab-quvvatlaydi Masofaviy protsedura qo'ng'iroqlari (RPC) va masofaviy usulni chaqirish.
  • MIRA to'liq markazlashtirilmagan, shuning uchun markaziy server yoki markaziy aloqa markazi mavjud emas, bu uning aloqasini yanada mustahkam qiladi va ko'p robotli dasturlarda foydalanishga imkon beradi.
MIRACenter-ning skrinshoti

Robot dasturiga xos:

  • dasturiy ta'minot modullarini konfiguratsiya fayllari orqali oson sozlash
  • algoritmlarning parametrlarini o'zgartirish mumkin yashash disk raskadrovka va ishlab chiqish jarayonini tezlashtirish uchun ish vaqtida
  • juda ko'p miqdordagi robot sensorlari ma'lumotlarini yozib olish mumkin Lentalar keyinchalik ijro etish uchun bu erda ma'lumotlarni siqish uchun turli xil kodeklardan foydalanish mumkin

Platformalar

MIRA quyidagi platformalarda qo'llab-quvvatlanadi va muvaffaqiyatli sinovdan o'tkazildi:

MIRA-dan foydalanadigan dasturlar

MIRA quyidagi dasturlarda qo'llaniladi:

va loyihalar:

  • Yo'ldosh - Qobiliyat va xavfsizlik uchun integral kognitiv yordamchi va domotik yo'ldosh robotlashtirilgan tizim[9]
  • Robot-davr - keksayib qolgan aholi uchun real stsenariylarda rivojlangan robotlashtirilgan tizimlar va aqlli muhitni joriy etish va integratsiya qilish[10]

Foydalanish imkoniyati

Ko'zgu / Serializatsiya

sinf Ma'lumotlar {    int qiymat;    std::xarita<std::mag'lubiyat,std::ro'yxat<int> > murakkab;    Foo* ptr;    shablon <yozuv nomi Reflektor>    bekor aks ettirish(Reflektor& r)     {        r.a'zo("Qiymat",   qiymat,   "int a'zosi");        r.a'zo("Kompleks", murakkab, "murakkab a'zo");        r.a'zo("Ko'rsatkich", ptr,     "ko'rsatgich ko'rsatgichi");    }};
  • ma'lumotlarning o'zboshimchalik bilan murakkab turlarini sinfga yuqorida ko'rsatilgan tarzda oddiy aks ettirish usulini qo'shish orqali seriyalash mumkin
  • ushbu kichik o'zgarishlardan so'ng sinf ob'ektlarini jarayonlararo aloqa orqali tashish mumkin, dasturiy ta'minot modullari uchun konfiguratsiya fayllarida parametr sifatida foydalanish mumkin, "Tasma" fayllarida va hokazolarda yozib olish mumkin.

Masofaviy protsedura qo'ng'iroqlari

sinf MyClass{    int hisoblash(konst std::ro'yxat<suzmoq>& qiymatlar);    shablon <yozuv nomi Reflektor>    bekor aks ettirish(Reflektor& r)     {        r.usul("hisoblash", &MyClass::hisoblash, bu, "izoh");    }};
  • o'zboshimchalik usullarini reflect () usuli ichiga bitta satr kod qo'shib RPC usullariga aylantirish mumkin. Usullar atrofida o'ramlarni yozishga yoki meta tavsiflash tillaridan foydalanishga hojat yo'q.

Adabiyotlar

  1. ^ "MIRA loyihasi veb-sayti".
  2. ^ a b Eynxorn, Erik; Langner, Tim; Striker, Ronni; Martin, xristian; Gross, Xorst-Maykl (2012). "MIRA - robotik dasturlar uchun vositalar". 2012 IEEE / RSJ Intellektual robotlar va tizimlar bo'yicha xalqaro konferentsiya. 2591–2598 betlar. doi:10.1109 / IROS.2012.6385959. ISBN  978-1-4673-1736-8.
  3. ^ "MIRA Documentation - Linuxni qo'llab-quvvatlash".
  4. ^ "MIRA Documentation - Windows ko'magi".
  5. ^ "TU Ilmenau: Konrad-Zuse-Bau eröffnet". Thüringer Allgemeine Zeitung.
  6. ^ Striker, Ronni; va boshq. (2012). "Konrad va Suse, universitet binosida mehmonlarni boshqaradigan ikkita robot". Avtonom mobil tizimlar 2012 yil. Informatik aktuell. 49-58 betlar. doi:10.1007/978-3-642-32217-4_6. ISBN  978-3-642-32216-7.
  7. ^ "Ilmenauer Oberbürgermeister ließ sich von Roboter den Weg zeigen". Thüringer Allgemeine Zeitung.
  8. ^ "Der Markt Potenziale für mobile Robotik bilan ishlaydi". TRIA.
  9. ^ "CompanionAble".
  10. ^ "Robot-davr".

Tashqi havolalar