Robot Operating System

Origem: Wikipédia, a enciclopédia livre.
Ir para: navegação, pesquisa
Robot Operating System
Logótipo
Captura de tela
Visualização de robô empurrando um carrinho em RViz
Desenvolvedor Willow Garage
Stanford Artificial Intelligence Laboratory
Open Source Robotics Foundation
Lançamento 2007 (9–10 anos)
Linguagem C++, Python
Sistema operacional Linux
Gênero(s) Sistema Operacional, biblioteca
Licença Licença BSD
Estado do desenvolvimento Ativo
Página oficial www.ros.org

Robot Operating System (ROS, sistema operacional de robôs) é uma coleção de frameworks de software para desenvolvimento de robôs, que fornece a funcionalidade de um sistema operacional em um cluster de computadores heterogêneo. ROS fornece serviços padrões de sistema operacional, tais como abstração de hardware, controle de dispositivos de baixo nível, a implementação de funcionalidades comumente usadas, passagem de mensagens entre processos e gerenciamento de pacotes. Conjuntos de processos de ROS em execução são representados em uma arquitetura de gráfico onde o processamento se realiza em nós que podem receber e enviar mensagens como sensores multiplex, controle, estado, planejamento, atuador e outras. Apesar da importância da reatividade e baixa latência no controle de robôs, ROS, em si, não é um sistema operacional de tempo real, embora seja possível integrar ROS com código em tempo real.[1] A falta de suporte para sistemas em tempo real está sendo abordada no desenvolvimento de ROS 2.0.[2]

Software no ecossistema do ROS[3] pode ser dividido em três grupos:

  • ferramentas independentes de linguagem e plataforma usadas para a construção e distribuição de software baseada em ROS;
  • Implementações de bibliotecas clientes de ROS como roscpp,[4] rospy[5] e roslisp;[6]
  • pacotes contendo código relacionada a aplicações que usam uma ou mais bibliotecas clientes de ROS.

Tanto as ferramentas independentes da língua quanto as principais bibliotecas clientes (C++, Python e Lisp) são lançadas sob os termos da licença BSD, e como tal são softwares de fonte aberta e livre para uso comercial e de pesquisa. A maioria dos outros pacotes estão licenciados sob uma variedade de licenças de código aberto. Estes outros pacotes implementam funcionalidades e aplicações, tais como drivers de hardware, modelos de robôs, tipos de dados, planejamento, percepção, mapeamento e localização simultâneos, ferramentas de simulação e outros algoritmos comumente usados.

As principais bibliotecas clientes de ROS (C++, Python, Lisp) são voltados para um sistema do tipo Unix, devido, principalmente, a sua dependência de grandes coleções de software de código aberto. Para estas bibliotecas clientes, o Ubuntu Linux é listado como "suportado", enquanto outras variantes como o Fedora Linux, Mac OS X e Microsoft Windows são designados "experimentais" e são apoiados pela comunidade.[7] A biblioteca cliente Java ROS nativa, rosjava, no entanto, não compartilha dessas limitações e permitiu software baseado em ROS a ser escrito para o sistema operacional Android.[8] A rosjava também permitiu que ROS fosse integrado em uma caixa de ferramentas MATLAB oficialmente suportada, que pode ser usada em Linux, Mac OS X e Microsoft Windows.[9] A biblioteca cliente em JavaScript, roslibjs, também foi desenvolvida e permite a integração de software em um sistema de ROS através de qualquer navegador web padrão.

Projetos desenvolvidos[editar | editar código-fonte]

Ícone de esboço Este artigo sobre Robótica é um esboço. Você pode ajudar a Wikipédia expandindo-o.


Referências[editar | editar código-fonte]

  1. ROS-Introduction http://wiki.ros.org/ROS/Introduction
  2. Kay, Jackie. «Proposal for Implementation of Real-time Systems in ROS 2». Consultado em 16 de agosto de 2016 
  3. «Browsing packages for indigo». ROS.org. ROS. Consultado em 21 de fevereiro de 2016 
  4. «Package Summary». ROS.org. ROS. Consultado em 21 de fevereiro de 2016 
  5. «Package SUmmary». ROS.org. ROS. Consultado em 21 de fevereiro de 2016 
  6. «Package Summary». ROS.org. ROS. Consultado em 21 de fevereiro de 2016 
  7. «ROS/Installation - ROS Wiki». Wiki.ros.org. 29 de setembro de 2013. Consultado em 12 de julho de 2014 
  8. «android - ROS Wiki». Wiki.ros.org. 12 de abril de 2014. Consultado em 12 de julho de 2014 
  9. «Robot Operating System (ROS) Support from MATLAB - Hardware Support». Mathworks.com. Consultado em 12 de julho de 2014 
  10. PR2 http://www.willowgarage.com/pages/robots
  11. PR1 http://personalrobotics.stanford.edu/
  12. HERB http://personalrobotics.intel-research.net/
  13. STAIR I and II http://stair.stanford.edu/index.php
  14. K U leuven http://people.mech.kuleuven.be/%7Eu0062536/embsensor.html
  15. http://www.ros.org/wiki/nao
  16. Humanoid Robots Lab http://hrl.informatik.uni-freiburg.de/
  17. brown-robotics http://brown-robotics.org/
  18. G.T. Jay, Post to ros-users mailing list announcing ROS support for the Nao
  19. http://robotnik.es/en/products/mobile-robots/summit-xl
  20. rosbridge protocol and server http://www.ros.org/wiki/rosbridge
  21. brown-robotics http://brown-robotics.org/
  22. Husky A200 http://www.clearpathrobotics.com/husky
Notas
  • STAIR: The STanford Artificial Intelligence Robot project, Andrew Y. Ng, Stephen Gould, Morgan Quigley, Ashutosh Saxena, Eric Berger. Snowbird, 2008.

Ligações externas[editar | editar código-fonte]

Portal A Wikipédia possui o portal:
  • Free software