Czech English

Simulátor manipulátorů

aneb jak využít SolidWorks netradičně

Pro výuku robotiky - kinematiky jsem hledal názornou pomůcku, kterou bych přiblížil funkci manipulátorů. Něco pro pochopení pojmů: stupně volnosti, pohyblivost, pracovní prostor a v neposlední řadě řešení přímé a inverzní úlohy kinematiky.



Motivace

Úkolem bylo zábavnou formou žákům vysvětlit konstrukci průmyslových manipulátorů z pohledu kinematiky. Vysvětlit různá kinematická schémata, jejich výhody a nevýhody.
Pro jejich zobrazení jsem využil námi používaný konstrukční CAD systém SolidWorks. Tím bylo možno ukázat pohyblivost manipulátorů, jejich pracovní prostor a omezení, ale stále chyběla vazba na vlastní kinematiku a nutnost jejího řešení.
Pro numerické řešení kinematiky lze snadno použít tabulkový kalkulátor (MS Excel). A po napsání VBA scriptu, kterým jsou výsledky výpočtu provázány s hodnotami kót v sestavě SolidWorksu vznikl jednoduchý simulátor kinematiky.

Vytvoření simulačního modelu

Pro získání funkčního modelu manipulátoru je nutné vytvořit:
1. 3D model sestavy manipulátoru
2. vytvořit propojení z tabulkového editoru a model v SoliWorksu
3. sestavit rovnice přímé a inverzní úlohy kinematiky a zapsat je o tabulkového editoru

1. Tvorba 3D modelu manipulátoru

Na základě zvoleného kinematického schematu vytvoříme 3D modely jednotlivých částí manipulátoru.
 Kinematické schéma manipulátoru RRT - schematické znázornění
Kinematické schéma manipulátoru RRT - schematické znázornění
 Sférická kinematická koncepce (RRT)
Sférická kinematická koncepce (RRT)
Z nich zkompletujeme model manipulátoru jako zcela běžnou sestavu. Všechny součásti zavazbíme tak, aby pohyblivost odpovídala požadovanému stavu.
V místech pohyblivých kloubů (rotačních nebo posuvných vazeb) vytvořte vazbu úhel, resp. vzdálenost (ověřte. zda kladný přírůstek hodnoty odpovídá vámi zvolenému směru pohybu).
Nyní zjistěte názvy kót těchto vazeb (dvojklik na dané vazbě a potom pravé tlačítko na zobrazené kótě). Na obrázku je kóta pojmenovaná "D1@Úhel1".

2. Vytvoření propojení MS Excel - SolidWorks

Vzorový soubor tabulkového kalkulátoru přejmenujeme tak, aby jeho jméno bylo stejné jako jméno sestavy v SolidWorksu (sestava "Robot.sldasm" -> tabulka "Robot.xls").
Na listu "Konfigurace robota" nastavíme počet stupňů volnosti manipulátoru (počet kloubů) a a počet nezávislých os (obvykle 3 - xyz).
V části "Kloubové proměnné" nastavíme jména kót kloubů, které jsme zjistili v předchozím kroku, a zadáme rozsah hodnot těchto pohybů (viz. obrázek).
 Konfigurace propojení MS Excel - SolidWorks
Konfigurace propojení MS Excel - SolidWorks
Nyní ověříme funkčnost propojení. Na listu "Přímé řízení robota" stiskneme tlačítko "Otevřít model". V tuto chvíli dojde ke spuštění SolidWorksu a otevření sestavy manipulátoru (pokud již není otevřen). Nyní by se po stisku tlačítek u jednotlivých kloubů (nebo změně hodnot kloubových proměnných) měl model manipulátoru pohybovat.
 Přímé řízení modelu manipulátoru
Přímé řízení modelu manipulátoru
Stisknutím tlačítka "Zavřít model" dojde k odpojení a uzavření SolidWorksu.

3. Sestavení a zápis rovnic přímé a inverzní úlohy kinematiky

V přímé úloze kinematiky je úkolem přepočet kloubových (přirozených) souřadnic (poloh kloubů) na kartézské souřadnice konce ramene manipulátoru.
Pro manipulátor RRT:
 Rovnice přímé úlohy kinematiky
Rovnice přímé úlohy kinematiky
Tyto rovnice zapíšeme do příslušných políček na listu "Přímá úloha kinematiky".
V inverzní úloze kinematiky je úkolem určení poloh kloubů pro dosažení požadované polohy konce ramene manipulátoru určené kartézskými souřadnicemi xyz.
 Rovnice inverzní úlohy kinematiky
Rovnice inverzní úlohy kinematiky
Po doplnění rovnic kinematiky se můžeme přepnout opět na list "Přímé řízení robota". Připojíme 3D model ("Otevřít model") a vyzkoušíme přímo změnu hodnot kartézských souřadnic (kloubové souřadnice by se měly automaticky přepočítávat užitím rovnic inverzní úlohy kinematiky a naopak), model by se měl příslušně pohybovat.
Správnost rovnic kinematiky ověříme změřením skutečné polohy konce ramene na modelu.

Ukázkový projekt manipulátoru RRT: RRT.zip pro nekomerční použití (vzdělávací účely).
Pokud se vám podaří vytvořit nějaký pěkný funkční model, budu rád, když mi ho zašlete, stejně tak připomínky a nápady k vylepšení.