Robotický simulátor - Robotics simulator
| tento článek případně obsahuje původní výzkum. Prosím vylepši to podle ověřování vznesené nároky a přidání vložené citace. Výroky sestávající pouze z původního výzkumu by měly být odstraněny. (Srpna 2014) (Zjistěte, jak a kdy odstranit tuto zprávu šablony) |
A robotický simulátor je simulátor používaný k vytvoření aplikace pro fyziku robot bez závislosti na skutečném stroji, což šetří náklady a čas. V některých případech lze tyto aplikace přenést na fyzického robota (nebo přestavět) bez úprav.
Termín robotický simulátor může odkazovat na několik různých simulačních aplikací robotiky. Například v mobilní robotika aplikace, robotika založená na chování simulátory umožňují uživatelům vytvářet jednoduché světy tuhých objektů a světelných zdrojů a programovat roboty tak, aby s těmito světy interagovaly. Simulace založená na chování umožňuje akce, které mají biologičtější povahu ve srovnání se simulátory, které jsou více binární nebo výpočetní. Kromě toho se simulátory založené na chování mohou „poučit“ z chyb a jsou schopny demonstrovat antropomorfní kvalita houževnatosti.
Jedna z nejpopulárnějších aplikací pro robotické simulátory je pro 3D modelování a vykreslení robota a jeho prostředí. Tento typ robotického softwaru má simulátor, který je virtuálním robotem, který je schopen emulovat pohyb skutečného robota ve skutečné pracovní obálce. Některé robotické simulátory používají a fyzikální engine pro realističtější generování pohybu robota. Použití robotického simulátoru pro vývoj robotického řídicího programu je vysoce doporučeno bez ohledu na to, zda je k dispozici skutečný robot. Simulátor umožňuje pohodlné psaní robotických programů a odladěn off-line s finální verzí programu testovanou na skutečném robotu. To platí primárně pro průmyslový robot pouze aplikace, protože úspěch off-line programování závisí na tom, jak podobné je skutečné prostředí robota simulovanému prostředí.
Na základě senzoru akce robota je mnohem obtížnější simulovat a / nebo programovat offline, protože pohyb robota závisí na okamžitých odečtech senzorů ve skutečném světě.
Funkce
Moderní simulátory mají tendenci poskytovat následující funkce:
- Rychlé prototypování robotů
- Použití vlastního simulátoru jako nástroje pro vytváření.
- Pomocí externích nástrojů.
- Fyzikální motory pro realistické pohyby. Většina simulátorů používá Kulka, ÓDA nebo PhysX.
- Realistické 3d vykreslování. K vytváření prostředí lze použít standardní nástroje pro 3D modelování nebo nástroje třetích stran.
- Dynamická těla robotů se skriptováním. C, C ++, Perl, Krajta, Jáva, URBI, MATLAB jazyky používané Webots, Krajta používaný altánem.
Simulátory
Mezi nejnovější technologie, které jsou dnes k dispozici pro programování, patří ty, které využívají virtuální simulaci. Simulace s využitím virtuálních modelů pracovního prostředí a samotných robotů mohou nabídnout výhody společnosti i programátorovi. Pomocí simulace se snižují náklady a roboty lze naprogramovat offline, což eliminuje prostoje montážní linky. Akce robota a součásti sestavy lze vizualizovat ve trojrozměrném virtuálním prostředí měsíce předtím, než se dokonce vyrobí prototypy. Psaní kódu pro simulaci je také jednodušší než psaní kódu pro fyzického robota. Zatímco posun směrem k virtuálním simulacím pro programování robotů je krokem vpřed v designu uživatelského rozhraní, mnoho takových aplikací je pouze v plenkách.
Obecná informace
Software | Vývojáři | Stav vývoje | Licence | 3D vykreslování engine | Fyzikální engine | 3D modelář | Podporované platformy |
---|
Altán | Open Source Robotics Foundation (OSRF) | Aktivní | Apache 2.0 | OGRE | ÓDA /Kulka /Simbody /ŠIPKA | Vnitřní | Linux, macOS, Windows |
---|
RoboDK | RoboDK | Aktivní | Proprietární | OpenGL | Gravitační plugin | Vnitřní | Linux, macOS, Windows, Android, iOS, Debian |
---|
SimSpark | O. Obst a kol. (+26) | Aktivní | GNU GPL (v2) | Vnitřní | ÓDA | Žádný | Linux, macOS, Windows |
Webové stránky | Cyberbotics Ltd. | Aktivní | Apache 2.0 | Interní (WREN) | Vidlice ODR | Vnitřní | Linux, macOS, Windows |
---|
OpenRAVE | Komunita OpenRAVE | Aktivní | GNU LGPL | Coin3D /OpenSceneGraph | ÓDA /Kulka | Vnitřní | Linux, macOS, Windows |
Software | Vývojáři | Stav vývoje | Licence | 3D vykreslování engine | Fyzikální engine | 3D modelář | Podporované platformy |
---|
Technické informace
Software | Hlavní programovací jazyk | Podpora formátů | Rozšiřitelnost | Externí API | Middleware robotiky Podpěra, podpora | Primární uživatelské rozhraní | Bezhlavá simulace |
---|
Altán | C ++ | SDF[1]/ URDF[2], OBJ, STL, Collada | Pluginy (C ++) | C ++ | ROS, Player, Sockets (protobuf messages) | GUI | Ano |
---|
RoboDK | Krajta | SLDPRT, SLDASM, KROK, OBJ, STL, 3DS, Collada, VRML, URDF, Rhinoceros_3D, ... | API[3], Plug-In rozhraní[4] | Python, C / C ++, C #, Matlab, ... | Zásuvka | GUI | Neznámý |
---|
SimSpark | C ++, Ruby | Grafy rubínové scény | Mody (C ++) | Síť (sexpr ) | Zásuvky (sexpr ) | GUI, zásuvky | Neznámý |
---|
Webové stránky | C ++ | WBT, VRML, X3D, 3DS, Mixér, BVH, Collada, FBX, STL, OBJ, URDF | API, PROTO, pluginy (C / C ++) | C, C ++, Python, Java, Matlab, ROS | Zásuvky, ROS, NaoQI | GUI | Ano[5] |
---|
OpenRAVE | C ++, Python | XML, VRML, OBJ, Collada | Pluginy (C ++), API | C / C ++, Python, Matlab | Zásuvky, ROS, YARP | GUI, zásuvky | Ano |
---|
Software | Hlavní programovací jazyk | Podpora formátů | Rozšiřitelnost | Externí API | Podpora robotického middlewaru | Primární uživatelské rozhraní | Bezhlavá simulace |
---|
Infrastruktura
Podpěra, podpora
Kvalita kódu
Software | Kontrola statického kódu | Kontrola stylu | Zkušební systémy | Pokrytí testovací funkce | Vyzkoušejte pokrytí pobočky | Řádky kódu | Řádky komentářů | Kontinuální integrace |
---|
Altán | cppcheck[33] | cpplint[33] | gtest a qtest[33] | 77.0%[33] | 53.3%[33] | 320 tis[33] | 106 tis[33] | Jenkins[33] |
---|
RoboDK | Neznámý | Neznámý | Neznámý | Neznámý | Neznámý | Neznámý | Neznámý | Neznámý |
---|
SimSpark | Neznámý | Neznámý | Neznámý | Neznámý | Neznámý | Neznámý | Neznámý | Neznámý |
---|
Webové stránky | cppcheck[34] | clang-format[35] | jednotkové testy[36] | 100% funkcí API[37] | mistr[38], rozvíjet[39] | ~ 200 tis | ~ 50 tis | Travisi[40], AppVeyor[41], GitGuardian[42]Akce Github |
---|
OpenRAVE | Neznámý | Neznámý | Pythonový nos | Neznámý | Neznámý | Neznámý | Neznámý | Jenkins[43] |
---|
Software | Kontrola statického kódu | Kontrola stylu | Zkušební systémy | Pokrytí testovací funkce | Vyzkoušejte pokrytí pobočky | Řádky kódu | Řádky komentářů | Kontinuální integrace |
---|
Funkce
Software | CAD na pohyb | Dynamické zamezení kolizím | Relativní konečné efekty | Off-line programování | Řízení hardwaru v reálném čase |
---|
Altán | Neznámý | Ano | Ano | Ano | Ano |
---|
RoboDK | Ano | Ano | Ano | Ano | Ano |
---|
SimSpark | Neznámý | Ne | Neznámý | Ne | Ne |
---|
Webové stránky | Neznámý | Ano | Ano | Ano | Ano |
---|
OpenRAVE | Neznámý | Ne | Neznámý | Ne | Ne |
---|
Software | CAD na pohyb | Dynamické zamezení kolizím | Relativní konečné efekty | Off-line programování | Řízení streamování v reálném čase |
---|
Rodiny robotů
Software | UGV (pozemní mobilní robot) | UAV (anténní roboti) | AUV (podvodní roboti) | Robotické paže | Robotické ruce (simulace uchopení) | Humanoidní roboti | Lidské avatary | Úplný seznam |
---|
Altán | Ano[44] | Ano[45] | Ano[46] | Ano[47] | Ano[48] | Ano[49] | Ano[50] | |
---|
RoboDK | Ne | Ne | Ne | Ano[51] | Ne | Ne | Ne | Ano[52] |
---|
SimSpark | Ano | Ne | Ne | Možná | Možná | Ano | Ne | |
---|
Webové stránky | Ano | Ano | Ano[53] | Ano | Ano | Ano[54] | Ano | Ano[55] |
---|
OpenRAVE | Ano | Neznámý | Neznámý | Ano | Ano | Ano | Ano | |
---|
Software | UGV (pozemní mobilní robot) | UAV (anténní roboti) | AUV (podvodní roboti) | Robotické paže | Robotické ruce (simulace uchopení) | Humanoidní roboti | Lidské avatary | Úplný seznam |
---|
Podporované akční členy
Podporované senzory
Software | Odometrie | IMU | Kolize | GPS | Monokulární kamery | Stereo kamery | Hloubkové kamery | Všesměrové kamery | 2D laserové skenery | 3D laserové skenery | Úplný seznam |
---|
Altán | Ano | Ano | Ano[58] | Ano | Ano[59] | Ano | Ano | Ano | Ano[60] | Ano[60] | |
---|
RoboDK | Neznámý | Neznámý | Neznámý | Neznámý | Neznámý | Ano | Ano | Ano | Ano | Ano | |
---|
SimSpark | Ano | Ano | Ano[61] | Částečný[62] | Ano | Částečný | Neznámý | Neznámý | Ne | Ne | SimSpark perceptory |
---|
Webové stránky | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Webots senzory |
---|
OpenRAVE | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Neznámý | Ano | Ano | |
---|
Software | Odometrie | IMU | Kolize | GPS | Monokulární kamery | Stereo kamery | Hloubkové kamery | Všesměrové kamery | 2D laserové skenery | 3D laserové skenery | Úplný seznam |
---|
Reference
externí odkazy
UWSim
|
---|
Hlavní články | | |
---|
Typy | |
---|
Klasifikace | |
---|
Pohyb | |
---|
Výzkum | |
---|
Příbuzný | |
---|
|