Pergunta

Qual é o melhor simulador de robótica? A partir de agora, estou apenas procurando obter simulações simples de método de campo em potencial, algoritmos de bug, um algoritmo* etc!

Uma lista dos simuladores de robô conhecidos são;

  1. Projeto de jogador (Simulador 2D - estágio - simulador 3D - Gazebo - e Interface de controle - código aberto, parte do projeto ROS)
  2. Morse (simulador 3D interno/externo de uso geral)
  3. Microsoft Robotics Studio (interface do simulador + controle)
  4. Kiks (Plugin do MATLAB, apenas para interface Khepera + Control)
  5. Mobotsim (Para robôs como pontos, mais implementação de algoritmo)
  6. Karel (Muito infantil, acho que é Pascal/logotipo)
  7. Peekabot (Parece muito legal!)
  8. MRPT (parece muito bom, tentarei em breve)
  9. Carmen (Visão de robôs etc é fácil de implementar nele (?))
  10. Webots (Sprimento aberto - Multiplataform - Multilanguage [ROS, Python, Matlab, etc.] - Aparência de última geração - Exportação da Web)
  11. Simbad (Simulador 2D/3D em Java e Jython)
  12. Robocode (Um traje Java/ .Net)
  13. Rossum's Playhouse (Terno C/C ++)
  14. V-rep (3D, fonte disponível, Script Lua, APIs para C/C ++, Python, Java, Matlab, Urbi, 2 motores de física, solucionador cinemático completo, etc.)

Algumas plataformas mais genéricas/middlewares também oferecem ferramentas de simulação:

  1. Ros (Atualmente a maior integração de tais plataformas)
  2. Urbi
  3. Yarp
  4. Orocos (Não sei nada sobre isso!)

Algumas referências sobre simuladores de robôs:

  1. Ambientes de desenvolvimento para robôs móveis autônomos: uma pesquisa
  2. Kits de ferramentas de robótica de código aberto
  3. Revisão atualizada de plataformas de software de robótica
  4. Simuladores existentes - webpage@laas.fr
  5. Lista no site da Asaf Matan
Foi útil?

Solução

Eu iria para uma estrutura comumente usada. Como você está interessado no planejamento do caminho, escolha uma estrutura que já tenha robôs simulados e apenas escreva os serviços de planejamento necessários para gerar caminhos para ele.

O ROS é muito legal e possui uma grande seleção de serviços de percepção úteis, bem como a pilha PR2 completa. Ele usa Gazebo (parte do jogador/estágio) para simulação e inclui alguns robôs fora dos prateleiras (irregular seria ideal para isso). É bastante novo, mas muito ativo.

O MRDS possui vários robôs adequados e ambientes simulados, francamente, do que os ROS, mas não tanto por meio de serviços de alto nível. O simulador de robôs LEGO seria bom para o que você deseja fazer e oferece a opção de validar em hardware real barato no futuro.

Esses dois têm a parte dos Leões de desenvolvedores no momento. Realmente, a decisão se resume a se você está mais feliz em se desenvolver no Visual Studio no Windows ou nas plataformas Linux. Ambos são gratuitos para estudantes (o MSRS está sob programas ELMS / Dreamspark), ambos têm uma curva de aprendizado, ambos têm um bom apoio da comunidade. Para o MRDS, vá se inscrever no fórum, para o ROS, participe da lista de discussão.

Outras dicas

Parece que tudo o que você precisa é um simulador 2D. Então, eu evitaria as despesas gerais e as dores de cabeça de um simulador 3D. Algumas notas sobre suas escolhas:

  1. O jogador inclui um simulador 2D (estágio) e um simulador de física 3D (Gazeebo) que eu acho que usa Ode
  2. O MRDS inclui um simulador de física 3D por Physx

  3. O ROS é apenas uma arquitetura e não acredito que tenha seu próprio simulador. Embora tenha algumas ferramentas de visualização diferentes. Também envolve jogador.

Outro simulador / arquitetura popular são os webots. Mas acho que isso é apenas 3D.

Isso é tudo que eu sei. Boa sorte. -Ben

Eu tenho programado contra SimSpark. É o motor de simulação de código aberto atrás do Robocup 3D simulado Liga de Futebol.

É extensível para diferentes simulações. Você pode conectar seus próprios sensores, atuadores e modelos usando arquivos C ++, Ruby e/ou RSG (Ruby Scene Scene).

Não sei se é o melhor simulador, mas gostei de usá -lo.

EDITAR Em resposta ao comentário de Arkapravo.

Eu escrevi uma API .NET para escrever seus próprios agentes Robocup 3D chamados Homem de Lata.

Existem vários vídeos no YouTube de partidas de futebol 3D simuladas. Este é um dos meus favoritos.

Robocup 2010 Está ocorrendo esta semana em Cingapura, embora, infelizmente, não seja capaz de fazê -lo.

Robocup 3D executa em um mecanismo de simulação física chamado SimSpark. Tem um Wiki abrangente Com muitas informações explicando como tudo funciona.

Meu agente ainda é bastante primitivo, então ainda não tenho nada publicado sobre isso. Existem muitos Implementações de agentes de código aberto Em diferentes idiomas, se você estiver interessado.

O Peekabot não é um simulador, apenas uma ferramenta de visualização e, em certa medida, uma ferramenta para controlar seu robô interativamente. É uma boa combinação para uso em conjunto com um simulador sem sua própria visualização.

O MRPT não possui um simulador (completo) AFAIK, apenas algoritmos, interfaces, drivers e seu próprio formato de log. Além disso, parece legal.

Openrave Pode valer a pena conferir se você estiver interessado em planejar.

O Gazebo não era realmente maduro e estável o suficiente pela última vez, tentei (~ 1 ano atrás). Pode valer a pena conferir.

O estágio é simples de usar, desde que você precise apenas de um simulador 2D sem dinâmica.

Eu usei simulações de ode e bala para robótica e ambas funcionaram bem, embora eu recomendasse o ODE.

Para obter uma resposta mais definitiva, você precisa refinar seus requisitos - ou seja, você está procurando apenas um simulador ou algo mais parecido com ROS, você precisa de um simulador 3D com dinâmica ou apenas 2D, quão preciso deve ser, que sensores você faz quero simular, etc.

TRIBUTO alguém ? Eu usei muito em meus projetos de Micromouse.

Urbi não é um simulador. É uma plataforma de middleware, que depende da linguagem de script paralela e orientada por eventos. Agora é de código aberto e apresenta suporte para o ROS, o que significa que você deve usar os dois! Aqui estão algumas informações sobre Urbi: www.urbiforge.org

E por último, mas não menos importante, é fácil de usar para iniciantes.

Espero que todas as informações que você obteve ajudem você a escolher o simulador certo para você!

Estou trabalhando no desenvolvimento de outro simulador de robótica, baseado no Blender. É chamado Morse e pretende ser um simulador muito flexível com base em componentes modulares. Ele fornece conectividade a vários usuários médios, atualmente Yarp, Ros e soquetes. As aplicações atuais que o utilizam incluem múltiplas cooperação para robôs móveis e interação humana-robot.

Você pode encontrar mais informações na página inicial oficial:http://morse.openrobots.org

É tudo de código aberto e temos listas de discussão para usuários. Agradecemos se você puder tentar e nos dar seus comentários

Existem alguns que são voltados para robótica humanóide e/ou aplicações gerais de multicorpos, mas também podem ser usadas para fins de robótica móvel:

  1. OpenHrp: Código aberto, toneladas de bibliotecas escritas em C ++ incluídas para simulações e visualizações para a Forward Dynamics também. Porém, é um pouco de dor em funcionamento, algumas dependências que são muito sensíveis às versões.
  2. Robotran: Grátis para uso pessoal e/ou usos de pesquisa. Opera principalmente no ambiente MATLAB/SIMULINK. Muito fácil colocar modelos em funcionamento.
  3. Maplesim: Software comercial, mas útil para modelagem muito sofisticada. Exporta a dinâmica multicorpo simbólica eficiente para simulação/visualização no MATLAB/SIMULINK também.

Todos esses pacotes são para simulação/visualização, que são úteis para o design geral de aplicações robóticas.

Uma ótima opção que eu recomendo é o Robotsim da Cogmation. Eles também têm outro produto RobotBuilder que permite criar qualquer robô que você possa imaginar e até importar seus próprios modelos.

Eu me deparei com Fawkes online hoje:

http://www.fawkesrobotics.org/

A Fawkes é uma estrutura de software baseada em componentes para aplicativos robóticos em tempo real para várias plataformas e domínios.

Desenvolvido e usado por mais de quatro anos para aplicativos em tempo real da robótica cognitiva, como robótica de futebol e serviço. Ele suporta troca de informações rápidas e combinação e coordenação eficientes de diferentes componentes para atender às necessidades de robôs móveis que operam em ambientes incertos.

Também é de código aberto (GPL).

BRE foi usado para simular robôs que foram fisicamente implementados. BRRE é acionado por Ode.

Eu também mencionaria Unity3d, é realmente mais projetado para o desenvolvimento de jogos, mas possui bons recursos para gráficos 3D, scripts (em javascript ou mono/c#), física etc. e pode ser usado como simulador se estiver disposto a escrever ou integrar alguns dos robôs- funcionalidade específica você mesmo (sensores, algoritmos, etc.).

Além disso, é uma plataforma cruzada, a versão básica é gratuita e pode fazer demonstrações muito bonitas com o mínimo de esforço.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top