55 votes

Simulateur de robotique

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

Voici une liste des simulateurs de robots connus ;

  1. Projet du joueur (simulateur 2D - Scène - simulateur 3D - Gazebo - et interface de contrôle - open source, faisant partie du projet ROS)
  2. MORSE (simulateur 3D intérieur/extérieur à usage général)
  3. Microsoft Robotics Studio (simulateur + interface de contrôle)
  4. KiKS (plugin Matlab, uniquement pour Khepera + interface de contrôle)
  5. MobotSim (pour des points comme les robots, il s'agit plutôt de la mise en œuvre d'algorithmes).
  6. Karel (Assez enfantin, je suppose que c'est du type Pascal/Logo)
  7. Peekabot (Ça a l'air vraiment cool !)
  8. MRPT (ça a l'air très bien, je vais l'essayer bientôt)
  9. Carmen (La vision des robots, etc. est facile à mettre en œuvre dans ce système ( ?))
  10. Webots (source fermée)
  11. Simbad (simulateur 2D/3D en Java et Jython)
  12. Robocode (Un costume Java/.NET)
  13. La maison de jeu de Rossum (combinaison C/C++)
  14. V-REP (3D, source disponible, scripting Lua, API pour C/C++, Python, Java, Matlab, URBI, 2 moteurs physiques, solveur cinématique complet, etc.)

Certaines plateformes/middlewares plus génériques offrent également des outils de simulation :

  1. ROS ( actuellement la plus grande intégration de telles plateformes )
  2. URBI
  3. YARP
  4. OROCOS (Je n'y connais rien !)

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

  1. Environnements de développement pour les robots mobiles autonomes : Une étude
  2. Boîtes à outils robotiques à source ouverte
  3. Revue actualisée des plateformes logicielles de robotique
  4. Simulateurs existants - webpage@laas.fr
  5. Liste sur le site d'Asaf Matan

10voto

Tom Points 496

J'opterais pour un cadre communément utilisé. Comme vous vous intéressez à la planification des trajectoires, choisissez un framework qui possède déjà des robots simulés, et écrivez simplement les services de planification dont vous avez besoin pour générer des trajectoires.

ROS est très cool, et possède une large sélection de services de perception utiles, ainsi que la pile PR2 complète. Il utilise gazebo (partie de player/stage) pour la simulation, et inclut quelques robots standards (erratic serait idéal pour cela). Il est assez récent, mais très actif.

MRDS dispose de plusieurs robots adaptés, et franchement de meilleurs environnements simulés que ROS, mais pas autant en termes de services de haut niveau. Le simulateur de robot Lego conviendrait parfaitement à ce que vous voulez faire, et vous donne la possibilité de valider sur du matériel réel à moindre coût à l'avenir.

Ces deux-là ont la part du lion des développeurs en ce moment. En réalité, la décision se résume à savoir si vous êtes plus heureux de développer dans Visual Studio sous Windows ou sur des plateformes Linux. Les deux sont gratuits pour les étudiants (MSRS est dans le cadre des programmes ELMS / dreamspark), les deux ont une courbe d'apprentissage, les deux ont un assez bon support communautaire. Pour MRDS, allez vous inscrire au forum, pour ROS, rejoignez la liste de diffusion.

2voto

Drew Noakes Points 69288

J'ai programmé contre SimSpark . Il s'agit du moteur de simulation open-source qui se cache derrière l'application Ligue de football simulée RoboCup 3D .

Il est extensible pour différentes simulations. Vous pouvez ajouter vos propres capteurs, actionneurs et modèles en utilisant des fichiers C++, Ruby et/ou RSG (Ruby Scene Graph).

Je ne sais pas si c'est le meilleur simulateur, mais j'ai 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 simulés en 3D. C'est l'un de mes préférés .

RoboCup 2010 a lieu cette semaine à Singapour, mais je ne pourrai malheureusement pas y assister.

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

Mon agent est encore assez primitif, donc je n'ai rien publié à ce sujet pour l'instant. Il y a beaucoup de mises en œuvre d'agents à code source ouvert dans différentes langues si vous êtes intéressés.

2voto

Staffan Points 1327

Peekabot n'est pas un simulateur, seulement un outil de visualisation, et dans une certaine mesure un outil pour contrôler votre robot de manière interactive. C'est un bon outil à utiliser en conjonction avec un simulateur sans sa propre visualisation, cependant.

MRPT n'a pas de simulateur (complet) AFAIK, seulement des algorithmes, des interfaces, des pilotes et son propre format de journal. A part ça, ça a l'air bien.

OpenRAVE pourrait valoir le coup d'œil si vous êtes intéressé par la planification.

Gazebo n'était pas vraiment mature et stable la dernière fois que je l'ai essayé (il y a ~1 an). Mais cela peut valoir la peine de vérifier.

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 définitive, vous devez affiner vos exigences : recherchez-vous un simulateur uniquement ou quelque chose de plus proche de ROS, avez-vous besoin d'un simulateur 3D avec dynamique ou seulement 2D, quelle doit être sa précision, quels capteurs voulez-vous simuler, etc.

2voto

Ben Points 405

Il semble que vous n'ayez besoin que d'un simulateur 2D. J'éviterais donc les frais généraux et les maux de tête d'un simulateur 3D. Quelques remarques sur vos choix :

  1. Player comprend 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 crois pas qu'elle dispose de son propre simulateur, bien qu'elle dispose de différents outils de visualisation. elle englobe é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

1voto

iamgopal Points 1575

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

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X