A RoboDK új PRM mozgástervezője

Legújabb szolgáltatásunk – a RoboDK PRM mozgástervező – lehetővé teszi, hogy egy gombnyomással AI-alapú robotpályákat készítsen. De hogyan működik?

Nem mindig éljük meg a tiszta, szabad munkaterület luxusát, igaz? Ez igaz a saját személyes munkaterületünkre is (pl. az asztalomat letakarják a felesleges tárgyak). Ez a robotunk munkaterületére is igaz.

Néha a robot munkatere kisebb, mint azt terveztük. Néha egy hatalmas oszlop áll a munkaterület közepén, amitől nem tudunk megszabadulni. Néha van egy halom doboz, amelyet máshol nem lehet tárolni.

Amikor fennáll annak a lehetősége, hogy robotja összeütközik valamivel a munkaterületen, új mozgástervezőnk itt van, hogy megkönnyítse az életét.

Egy gombnyomással ütközésmentes utat tud létrehozni robotprogramja számára.

Ez a cikk bemutatja a PRM mozgástervezését, és elmagyarázza, mikor érdemes használni ezt az új funkciót.

Mit jelent a PRM?

Az új RoboDK mozgástervező a „PRM” nevű algoritmust használja, ami a „valószínűségi útiterv” rövidítése. Ez egy nagyon elterjedt mozgástervező típus, bizonyos okok miatt, amelyekbe hamarosan bele fogunk térni.

Számos különböző mozgástervezési algoritmus áll rendelkezésre a robotikához, a meglehetősen egyszerűtől a rendkívül bonyolultig terjedő összetettségben. Ha egyáltalán nem ismeri a mozgástervezőket, olvassa el korábbi cikkünket Vissza az alapokhoz: A robotmozgástervezés egyszerűen

Íme, mit jelent a PRM:

  • P = valószínűségi — A „konfigurációs tér” pontjait (azaz azon pontok halmazát, amelyeket a tervező arra használ, hogy tudja, merre mozoghat a robot a munkaterületén) a tervező véletlenszerűen választja ki. Ezt a véletlenszerű elhelyezést „valószínűségnek” nevezik. Az alternatíva az „egységes” elhelyezés, ahol a pontokat rendszeres időközönként helyezik el a teljes munkaterületen.
  • RM = Útiterv — A PRM algoritmusok úgy működnek, hogy először elkészítik a robot teljes munkaterületének „útvonaltervét”. Ez a térkép hasonló ahhoz, amelyet az okostelefon GPS-útvonal-funkciója használ. A térkép létrehozása eltarthat egy ideig, de ha már létrejött, nem kell újra kiszámolnia, így sokkal gyorsabban „lekérdezheti” a térképet.

Ebből a két kifejezésből a következőket mondhatjuk a PRM mozgástervezőről:

  1. Mindig talál egy életképes robotpályát (ha van ilyen).
  2. Megmenti a konfigurációs terület ütemtervét, hogy felgyorsítsa a „lekérdezés” fázist.

Ez a két ok, amiért a mozgáskorlátozottak tervezői népszerűek.

Hogyan működik a PRM

Egyes mozgástervezőkkel ellentétben a PRM algoritmusok 2 különálló fázisra osztják a munkájukat. Mielőtt használná a tervezőt a RoboDK-ban, be kell állítania néhány tulajdonságot.

Beállítási fázis

Három tulajdonságot kell manuálisan beállítani a tervező futtatása előtt.

Így állíthatja be ezeket a tulajdonságokat a RoboDK-ban (és mit jelentenek):

  1. A minták száma – Kiválaszthat néhány „mintát”, amelyeket a tervező a robot munkaterülete körül az építési szakaszban elhelyez. A kevesebb minta gyorsabb építési fázist, de nyersebb ütemtervet jelent.
  2. Élek mintánként – Minden mintának van maximális számú „éle”. Mindegyik él két mintát köt össze. A kevesebb él ismét gyorsabb építési fázist jelent, de nyersebb ütemtervet.
  3. Robot lépés (fok) — Amikor a PRM algoritmus végigfut az építési fázison, minden alkalommal kis távolságra mozgatja a robotot. Ezt a távolságot a robot lépése határozza meg. A nagyobb lépés gyorsabb építési fázist jelent, de nagyobb az esélye annak, hogy a tervező nem veszi észre az esetleges ütközést.

Ezután kattintson a „Térkép frissítése” gombra az építési fázis elindításához.

1. fázis: Építés (lassú)

A tervezés első fázisa az ütemterv elkészítése. Ez hosszú ideig tarthat (nagyjából 15-30 perc 100 mintánál, mintánként 25 éllel).

Így működik az építési szakasz „a motorháztető alatt”:

  1. A tervező egy „mintát” helyez el egy véletlenszerű helyre, valahol a robot munkaterületén belüli szabad helyre.
  2. Az algoritmus ezután teszteli a minta és a környező minták közötti utat. A robotot a „robot lépéssel” mozgatja az ösvényen, és ellenőrzi az ütközéseket. Ha az útvonal szabad, akkor az útvonalat „szegélyként” adja hozzá az ütemtervhez.
  3. Amikor a tervező eléri a minta éleinek maximális számát, továbblép a következő mintára.

Láthatja, hogy ez a fázis miért tart sokáig – az algoritmusnak sok tesztelendő mintája van. Szerencsére a térkép létrehozása után nem kell újra kiszámolnia (hacsak nem ad hozzá új objektumokat a környezethez).

2. fázis: Lekérdezés (gyors)

A lekérdezési fázis a mozgástervezés azon része, amelyet leggyakrabban használ. Két célt ad meg a tervezőnek (egy kezdő és egy végcél). A tervező ezután megpróbál egy ütközésmentes pályát létrehozni köztük a tárolt útiterv segítségével.

Ez a fázis így működik „a motorháztető alatt”

  1. Kijelöl két célpontot, és megmondja a tervezőnek, hogy „kapcsolja össze” őket.
  2. Ha valamelyik cél még nincs hozzáadva az ütemtervhez, a tervező új mintaként adja hozzá, és létrehoz egy élkészletet az új hely és a közelben lévő meglévő minták között.
  3. A tervező ezután az ütemterv alapján keresi meg azt az utat, amelynél a legrövidebb a távolság a két cél között.

Kellően részletes útitervvel ez lehetővé teszi, hogy egyetlen gombnyomással másodpercek alatt bonyolult, ütközésmentes robotmozgásokat készítsen.

Mikor használjam a mozgástervezőt?

A mozgások RoboDK-ba programozásának szokásos módja az, hogy saját kezűleg megtervezzük a mozdulatokat közös mozgások, lineáris vagy körmozgások segítségével. Még mindig ez a leggyorsabb módja annak, hogy a robotot két célpont közötti mozgásra programozzuk.

Ezek a szabványos parancsok azonban csak akkor működnek, ha van szabad hely a két cél között. Ha tárgyak vannak az úton, akkor előfordulhat, hogy sok időt kell töltenie a közbenső célpontok létrehozásával, hogy elkerülje az ütközéseket.

A mozgástervező lehetőséget ad ennek a folyamatnak a automatizálására. Automatikusan megtalálja a legjobb mozdulatsort, hogy ütközés nélkül mozgassa a robotot a célok között.

De van egy kompromisszum. Sokáig kell várnia az építési fázis befejezésére, mielőtt a tervező elkezdheti megtalálni az Ön számára az utakat.

Legtöbbször ez a hosszú várakozás nem okoz gondot. Csak „be kell állítani és elfelejteni”. Hagyja futni az építési fázist, amíg valami mást csinál.