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.
|
|
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 |
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 |
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 |
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 |
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í.