Simulateur de robotique [fermé]
Quel est le meilleur simulateur de robotique ? À partir de Maintenant, je cherche juste à obtenir des simulations simples de la méthode de champ potentiel, des algorithmes de Bug, un algorithme* etc !
Une liste des simulateurs de robots connus sont;
- projet de joueur (simulateur 2D-Stade-simulateur 3D-Gazebo - et interface de contrôle-open source, partie du projet ROS)
- MORSE (usage général Intérieur/Extérieur 3D simulateur)
- Microsoft Robotics Studio (simulateur + interface de contrôle)
- KiKS (plugin Matlab, uniquement pour L'interface de contrôle Khepera+)
- MobotSim (pour les robots de type point, plus d'implémentation d'algorithme)
- Karel (jolie Kiddish, je suppose que C'est Pascal / Logo comme)
- Peekabot (semble vraiment cool ! )
- MRPT (semble très agréable, va essayer bientôt)
- Carmen (Robot Vision etc est facile à mettre en œuvre en elle (?))
- Webots (source fermée)
- Simbad (simulateur 2D / 3D en Java et Jython)
- Robocode (Un costume Java/. NET)
- Rossum's Playhouse (costume C / C++)
- V-REP (3D, source disponible, scripts Lua, API pour C / C++, Python, Java, Matlab, URBI, 2 moteurs physiques, solveur cinématique complet, etc.)
Certaines plates-formes/middlewares plus génériques offrent également la simulation outils:
- ROS (actuellement, la plus grande intégration de ces plates-formes)
- URBI
- YARP
- OROCOS (Je ne sais rien à ce sujet !)
Quelques références sur les simulateurs de robots:
12 réponses
J'irais pour un framework couramment utilisé. Comme vous êtes intéressé par la planification des chemins, choisissez un cadre 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 pour cela.
ROS est très cool, et a un assez grand choix de services de perception utiles, ainsi que la pile PR2 complète. Il utilise gazebo (partie de joueur/scène) pour la simulation, et comprend quelques robots sur étagère (erratique serait idéal pour cela). Son tout à fait nouveau, mais très actif.
MRDS a plusieurs robots appropriés, et franchement des environnements mieux simulés que ROS, mais pas tout à fait autant par le biais de services de haut niveau. Le simulateur de robot lego serait bien pour ce que vous voulez faire, et vous donne le choix de valider sur du matériel réel à moindre coût à l'avenir.
Ces deux ont la part des lions des développeurs en ce moment. Vraiment, la décision se résume à savoir si vous êtes plus heureux de développer dans visual studio sous windows, ou sur les plates-formes linux. Les deux sont gratuits pour les étudiants (MSRS est sous les programmes ELMS / dreamspark), les deux ont une courbe d'apprentissage, les deux ont un assez bon soutien communautaire. Pour MRDS, allez vous inscrire au forum, pour ROS, rejoignez la liste de diffusion.
Il semble que tout ce dont vous avez besoin est un simulateur 2D. Donc, j'éviterais les frais généraux et les maux de tête d'un simulateur 3D. Quelques notes sur vos choix:
- Joueur comprend un simulateur 2D (stade) et un simulateur de physique 3D (Gazeebo) qui je pense utilise ODE
-
MRDS comprend un simulateur de physique 3D par PhysX
ROS est seulement une architecture, et je ne crois pas qu'il a son propre simulateur. bien qu'il ait des outils de visualisation différents. il enveloppe également Joueur.
Un autre simulateur / architecture populaire est WeBots. Mais je pense que ce N'est que 3D.
C'est tout ce que je sais. Bonne chance. - Ben
J'ai programmé contre SimSpark . C'est le moteur de simulation open-source derrière la RoboCup 3D simulé Soccer League.
Il 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 aimé l'utiliser.
Modifier en réponse au commentaire D'Arkapravo.
J'ai écrit une API. net pour écrire vos propres agents RoboCup 3D appelés TinMan .
Il y a un tas de vidéos sur YouTube de matchs de football 3D simulés. C'est l'un de mes favoris.
RoboCup 3D fonctionne sur un moteur de simulation physique appelé SimSpark. Il a un wiki complet avec beaucoup d'informations expliquant comment tout cela travail.
Mon agent est encore assez primitif, donc je n'ai rien publié à ce sujet pour l'instant. Il y a beaucoup d'implémentations open source agent dans différentes langues si vous êtes intéressé.
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 match pour une utilisation 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. En outre, il a l'air soigné.
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 je l'ai essayé (il y a~1 an). 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 les 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-c'est-à-dire que vous cherchez un simulateur seulement ou quelque chose de plus comme ROS, avez-vous besoin d'un simulateur 3D avec dynamique ou seulement 2D, à quel point doit-il être précis, quels capteurs voulez-vous simuler, etc.
Urbi n'est pas un simulateur. C'est une plate-forme middleware, qui repose sur un langage de script parallèle et axé sur les événements. Il est maintenant open source et dispose d'un support pour ROS, ce qui signifie que vous devez utiliser les deux! Voici quelques informations sur Urbi: www.urbiforge.org
Et last but not least, il est facile à utiliser pour les débutants.
Espérons que toutes les informations que vous avez obtenu vous aide à choisir le bon simulateur pour vous!
Je travaille sur le développement d'un autre simulateur de robotique, basé sur Blender. Il est appelé MORSE, et il vise à être un simulateur très flexible basé sur des composants modulaires. Il fournit une connectivité à divers middlewares, actuellement YARP, ROS et sockets. Les applications actuelles qui l'utilisent 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 ouvert source, et nous avons des listes de diffusion pour les utilisateurs. Nous vous serions reconnaissants si vous pouvez essayer et nous donner vos commentaires
Il y en a quelques-uns qui sont orientés vers la robotique humanoïde et / ou les applications multi-corps générales, mais ils peuvent également être utilisés à des fins de robotique mobile:
- OpenHRP : Open source, des tonnes de bibliothèques écrites en C++ incluses pour les simulations et les visualisations forward dynamics. C'est un peu pénible de se lever et de courir, quelques dépendances qui sont très sensibles aux versions.
- Robotran: Gratuit pour un usage personnel et/ou à des fins de recherche. Fonctionne principalement dans L'environnement Matlab/Simulink. Très facile à obtenir des modèles et en cours d'exécution.
- MapleSim : logiciel Commercial mais utile pour une modélisation très sophistiquée. Exporte également une dynamique multi-corps symbolique efficace pour la simulation / visualisation dans Matlab / Simulink.
Tous ces paquets sont destinés à la simulation/visualisation, ce qui est utile pour la conception générale d'applications robotiques.
Une très bonne option que je recommande est RobotSim de Cogmation. Ils ont aussi un autre produit RobotBuilder qui vous permet de construire un robot que vous pouvez imaginer, et même importer vos propres modèles.
Je suis tombé sur Fawkes en ligne aujourd'hui:
Http://www.fawkesrobotics.org/
Fawkes est un Framework logiciel basé sur des composants pour les Applications robotiques en temps réel pour diverses plates-formes et Domaines.
Développé et utilisé sur quatre ans pour des applications en temps réel de robotique cognitive comme le soccer et la robotique de service. Il prend en charge l'échange d'informations rapide et efficace combinaison et coordination de différents composants pour répondre aux besoins de mobile robots opérant dans des environnements incertains.
C'est aussi open source (GPL).
Breve a été utilisé pour simuler des robots qui ont été physiquement implémentés. Breve est entraîné par ODE.
Je mentionnerais aussi Unity3D, Il est vraiment plus conçu pour le développement de jeux mais a de bonnes capacités pour les graphismes 3D, les scripts (en javascript ou Mono/C#), la physique, etc. et peut être utilisé comme un simulateur si vous êtes prêt à écrire ou intégrer certaines des fonctionnalités spécifiques au robot vous-même (capteurs, algorithmes, etc.).
De plus, il est multi-plateforme, la version de base est gratuite, et il peut faire de très belles démonstrations avec un minimum d'effort.