web-dev-qa-db-fra.com

Simulateur robotique

Quel est le meilleur simulateur de robotique? Pour le moment, je cherche simplement à obtenir des simulations simples de la méthode du champ potentiel, des algorithmes de bogue, de l'algorithme A *, etc.! 

Une liste des simulateurs de robots connus est;

  1. Project Player (Simulateur 2D - Scène - Simulateur 3D - Gazebo - et interface de contrôle - open source, appartenant au projet ROS)
  2. MORSE (simulateur 3D général/intérieur/extérieur)
  3. Microsoft Robotics Studio (simulateur + interface de contrôle)
  4. KiKS (plugin Matlab, uniquement pour Khepera + interface de contrôle) 
  5. MobotSim (pour un point comme des robots, plus d'implémentation d'algorithme) 
  6. Karel (Pretty Kiddish, je suppose que c'est Pascal/Logo like)
  7. Peekabot (ça a l'air vraiment cool!)
  8. MRPT (l'air très gentil, l'essayerai bientôt)
  9. Carmen (Robot Vision, etc. est facile à mettre en œuvre dans (?))
  10. Webots (open-source - multiplateforme - multilingue [ROS, Python, Matlab, etc.] - aspect dernier cri - export Web) 
  11. Simbad (simulateur 2D/3D sous Java et Jython)
  12. Robocode (Un costume Java/.NET)
  13. Le théâtre de Rossum (costume C/C++)
  14. V-REP (3D, source disponible, script Lua, API pour C/C++, Python, Java, Matlab, URBI, 2 moteurs physiques, résolveur cinématique complet, etc.)

Certaines plates-formes/middlewares plus génériques proposent également des outils de simulation:

  1. ROS (actuellement la plus grande intégration de telles plates-formes
  2. URBI
  3. YARP
  4. OROCOS (Je ne sais rien à ce sujet!)

Quelques références sur les simulateurs de robots: 

  1. Environnements de développement pour les robots mobiles autonomes: une enquête
  2. Boîte à outils de robotique open source
  3. Revue mise à jour des plateformes logicielles de robotique
  4. Simulateurs existants - [email protected]
  5. Liste sur le site web d'Asaf Matan
54
Arkapravo

Je voudrais aller pour un cadre couramment utilisé. Comme vous êtes intéressé par la planification de chemins, choisissez un framework qui a déjà des robots simulés et écrivez simplement les services de planification dont vous avez besoin pour générer des chemins. 

ROS est très cool, et propose un assez grand choix de services de perception utiles, ainsi que la pile complète PR2. Il utilise un gazebo (une partie du lecteur/de la scène) pour la simulation et inclut quelques robots standard (erratique serait idéal pour cela). C'est tout à fait nouveau, mais très actif.

MRDS dispose de plusieurs robots appropriés et d’environnements réellement mieux simulés que ROS, mais pas autant que par le biais de services de haut niveau. Le simulateur de robot lego conviendrait parfaitement à ce que vous voulez faire et vous donne le choix de valider à moindre coût le matériel réel à l'avenir.

Ces deux ont la part des lions de développeurs pour le moment. En réalité, la décision revient à savoir si vous êtes plus heureux dans le développement de Visual Studio sous Windows ou sur des plates-formes Linux. Les deux sont gratuits pour les étudiants (MSRS fait partie des programmes ELMS/dreamspark), ont tous deux une courbe d'apprentissage et tous deux bénéficient d'un très bon soutien de la part de la communauté. Pour MRDS, allez vous inscrire sur le forum, pour ROS, rejoignez la liste de diffusion.

9
Tom

peekabot n'est pas un simulateur, mais un outil de visualisation et, dans une certaine mesure, un outil permettant de contrôler votre robot de manière interactive. C'est un bon accord pour une utilisation avec un simulateur sans sa propre visualisation, cependant.

MRPT ne dispose pas d'un simulateur AFAIK (complet), mais uniquement d'algorithmes, d'interfaces, de pilotes et de son propre format de journal. En plus de ça, ça a l'air chouette.

OpenRAVE pourrait être utile de vérifier si vous êtes intéressé par la planification.

Gazebo n’était pas vraiment mature et assez stable la dernière fois que j’ai essayé (il ya ~ 1 an). Cela vaut peut-être la peine de vérifier si.

Stage est simple à utiliser, à condition que vous n'ayez besoin que d'un simulateur 2D sans dynamique.

J'ai utilisé à la fois ODE et Bullet pour des simulations robotiques, et les deux ont bien fonctionné bien que je recommande ODE.

Pour obtenir une réponse plus précise, vous devez préciser vos besoins. Vous recherchez par exemple un simulateur ou un système similaire à ROS, vous avez besoin d’un simulateur 3D avec dynamique ou uniquement en 2D? vouloir simuler, etc.

2
Staffan

J'ai programmé contre SimSpark . C'est le moteur de simulation open-source derrière la RoboCup 3D Simulated Soccer League .

C'est extensible pour différentes simulations. Vous pouvez brancher vos propres capteurs, actionneurs et modèles à l'aide de fichiers C++, Ruby et/ou RSG (Ruby Scene Graph).

Je ne sais pas si c'est le meilleur simulateur, mais j'ai bien aimé l'utiliser.

EDIT En réponse au commentaire d'Arkapravo.

J'ai écrit une API .NET pour écrire vos propres agents RoboCup 3D appelée TinMan .

Il y a un tas de vidéos sur YouTube de matchs de football en 3D simulés. C'est un de mes préférés .

RoboCup 2010 se déroule cette semaine à Singapour, mais malheureusement, je ne pourrai pas le faire.

RoboCup 3D fonctionne sur un moteur de simulation physique appelé SimSpark . Il a un Wiki complet avec de nombreuses informations expliquant comment cela fonctionne.

Mon agent est encore assez primitif, je n'ai donc rien publié à ce sujet pour l'instant. Il y a beaucoup de implémentations d'agent open source dans différentes langues si cela vous intéresse.

2
Drew Noakes

On dirait que tout ce dont vous avez besoin est un simulateur 2D. Donc, je voudrais éviter les frais généraux et les maux de tête d'un simulateur 3D. Quelques notes sur vos choix:

  1. Le joueur inclut un simulateur 2D (Stage) et un simulateur physique 3D (Gazeebo) qui, je pense, utilise ODE
  2. MRDS comprend un simulateur de physique 3D par PhysX

  3. ROS n’est qu’une architecture et je ne pense pas qu’il dispose de son propre simulateur. bien qu’il dispose de différents outils de visualisation. cela enveloppe également Player.

Un autre simulateur/architecture populaire est WeBots. Mais je pense que ce n’est que de la 3D. 

C'est tout ce que je sais. Bonne chance .- Ben

2
Ben

Urbi n'est pas un simulateur. C'est une plate-forme middleware, qui repose sur un langage de script parallèle et piloté par les événements. Il est maintenant open source et prend en charge les ROS, ce qui signifie que vous devez utiliser les deux! Voici quelques informations sur Urbi: www.urbiforge.org

Enfin, il est facile à utiliser pour les débutants.

J'espère que toutes les informations que vous avez obtenues vous aideront à choisir le bon simulateur pour vous!

1
Seg

Je travaille au développement d'un autre simulateur de robotique, basé sur Blender. Il s’appelle MORSE et se veut un simulateur très flexible basé sur des composants modulaires. Il fournit une connectivité à divers middlewares, actuellement YARP, ROS et sockets . Les applications qui l'utilisent actuellement incluent la coopération de robots mobiles multiples et l'interaction homme-robot.

Vous pouvez trouver plus d'informations sur la page d'accueil officielle: http://morse.openrobots.org

Tout est open source et nous avons des listes de diffusion pour les utilisateurs. Nous apprécierions si vous pouviez essayer et nous faire part de vos commentaires.

1
gilberto

Quelques-uns sont destinés à la robotique humanoïde et/ou aux applications multi-corps, mais ils peuvent également être utilisés à des fins de robotique mobile: 

  1. OpenHRP : Open source, des tonnes de bibliothèques écrites en C++ sont également incluses pour les simulations et les visualisations dynamiques en avant. C'est un peu pénible d'être opérationnel, avec quelques dépendances très sensibles aux versions. 
  2. Robotran : Gratuit pour un usage personnel et/ou pour la recherche. Fonctionne principalement dans l'environnement Matlab/Simulink. Très facile à mettre en place des modèles. 
  3. MapleSim : Logiciel commercial mais utile pour la modélisation très sophistiquée. Exporte également une dynamique symbolique multicorps efficace pour la simulation/visualisation dans Matlab/Simulink. 

Tous ces packages sont destinés à la simulation/visualisation, ce qui est utile pour la conception générale d'applications robotiques. 

1
safwanc

ODE quelqu'un? Je l'ai beaucoup utilisé dans mes projets de micromouse.

1
iamgopal

Une très bonne option que je recommande est le RobotSim de Cogmation. Ils ont également un autre produit RobotBuilder qui vous permet de construire tout robot imaginable, et même d'importer vos propres modèles. 

0
mgauthier

Je suis tombé sur Fawkes en ligne aujourd'hui:

http://www.fawkesrobotics.org/

Fawkes est une infrastructure logicielle basée sur des composants pour les applications robotiques en temps réel pour diverses plates-formes et domaines.

Développé et utilisé pendant quatre ans pour la robotique cognitive, des applications en temps réel comme le football et la robotique de service. Il prend en charge l'échange rapide d'informations ainsi que la combinaison et la coordination efficaces de différents composants afin de répondre aux besoins des robots mobiles opérant dans des environnements incertains.

C'est aussi open source (GPL).

0
Drew Noakes

Je mentionnerais également Unity3D , il est vraiment plus conçu pour le développement de jeux mais offre de bonnes capacités pour les graphismes 3D, les scripts (en javascript ou en mono/C #), la physique, etc. souhaitant écrire ou intégrer certaines des fonctionnalités spécifiques au robot (capteurs, algorithmes, etc.).

De plus, il est multi-plateforme, la version de base est gratuite et permet de réaliser de très jolies démonstrations avec un minimum d'effort.

0
WildCrustacean

Breve a été utilisé pour simuler des robots physiquement mis en oeuvre. Breve est piloté par ODE.

0
kharrington