ROS: o sistema operacional para robótica

ROS, Robótica

La a robótica é um campo em expansão. Mais e mais IA e robôs substituem o trabalho de mais pessoas. Eles são o presente e o futuro, por isso é importante treinar nesses tipos de campos para saber como funcionam e quais ferramentas e sistemas você tem à sua disposição para seus projetos de robótica. E, neste artigo, você verá o que é ROS e tudo o que você precisa saber sobre isso.

O que é ROS?

engenharia robótica

ROS significa Robot Operating System, ou sistema operacional de robô. É um middleware para robótica, ou seja, um conjunto de frameworks que visa facilitar o desenvolvimento de software para robôs. Atualmente é amplamente utilizado em robôs de renome, sendo uma das melhores ferramentas disponíveis hoje, totalmente gratuita, escrita em C e Python, e sob licença BSD de código aberto.

ROS foi originalmente desenvolvido em 2007, dentro da Laboratório de Inteligência Artificial de Stanford, e sob o codinome Switchyard. Inicialmente seria para o projeto do robô STAIR2. Depois disso, foi decidido abrir.

Uma pergunta que muitas vezes se faz é: se não é um sistema operacional, por que se chama assim? Bem, embora seja um conjunto de bibliotecas para desenvolvimento, a verdade é que fornece algumas das funções essenciais de um sistema operacional, como uma camada de abstração do hardware para que os desenvolvedores se preocupem apenas com o software, controle dos diferentes componentes do robô em baixo nível, capacidade de gerenciamento e comunicação de processos, manutenção de pacotes, etc.

A biblioteca é voltada para Sistemas UNIX, como Linux (em várias distros, embora o melhor suporte seja para Ubuntu) e macOS, embora também funcione em outros sistemas operacionais como o Microsoft Windows.

Também é importante diferenciar entre os peças da ROS:

  • ros: é a parte que atua como sistema operacional, a base. Esta é a parte do software licenciado BSD. Isso inclui o nó de coordenação principal, fluxos de dados (imagens, estéreo, laser, controle, atuadores, contato, ...), multiplexação de informações, criação e destruição de nós, login, etc.
  • ros-pacote: é o conjunto de pacotes criados pelos usuários e que implementam funcionalidades como planejamento, percepção, simulação, mapeamento, localização, etc. Esses outros componentes são licenciados em uma ampla variedade de licenças.

Os ferramentas incluídas em ROS são:

  • rviz: para simulação e visualização 3D.
  • Rosbag: para gravar e reproduzir mensagens de comunicação.
  • amentilho- Ferramenta de construção, baseada no CMake.
  • Rosbash- Pacote com ferramentas para estender a funcionalidade do shell bash.
  • roslaunch: para executar nós ROS local ou remotamente.

Documentação do projeto aqui

Aplicativos ROS

robôs, alunos ROS

ROS é um projeto em constante desenvolvimento, e cada vez que pode ser utilizado para mais aplicativos no campo da IA ​​e robótica, e cada vez faz seu trabalho melhor:

  • Sistemas de percepção artificial.
  • Identificação de objetos e visão artificial.
  • Reconhecimento facial, reconhecimento de gestos, etc.
  • Rastreamento de objetos.
  • Odometria visual.
  • Compreensão dos movimentos.
  • Visão estéreo.
  • Mobilidade do robô.
  • Ao controle.
  • Planejamento
  • Pegando objetos.
  • Coordenação
  • Testando.
  • Etc.

Exemplos de robôs usando ROS

São muitos, e seria difícil listar todos, já que o ROS se tornou quase um "padrão" para muitos deles. Mas alguns de o mais conhecido são:

  • PR1: robô pessoal desenvolvido pelo laboratório Ken Salisbury em Stanford.
  • PR2: robô pessoal que está sendo desenvolvido pela Willow Garage.
  • Baxter:  robô da Rethink Robotics, Inc.
  • Shadow's Robot: uma mão robótica da empresa Shadow Robot, em colaboração com a Universidade Pierre e Marie Curie de Paris e a Universidade Carlos III de Madrid. Desenvolvido dentro de um quadro europeu.
  • HERB: criado em CMU dentro do programa de robótica pessoal da corporação Intel.
  • Aldebaran Nao- Um robô humanóide criado pelo Humanoid Robots Labs e pela Universidade de Freiburg.
  • Husky UGV: um veículo terrestre e de código aberto.

Por que você deve aprender com ROS?

engenharia robótica, braço de robô industrial

Os robôs são sistemas complexos e a robótica é difícil de entender. No entanto, ter ferramentas como ROS torna muito mais fácil desenvolver do zero, acelerando a criação dos seus próprios projetos em muito menos tempo e sem tanto conhecimento como se não o tivesse.

Ou seja, a vantagem do ROS é facilitar o caminho para os desenvolvedores, com uma infinidade de add-ons gratuitos e de código aberto, para que você tenha tudo o que precisa. Além disso, você aprenderá mais do que robótica, também eletrônica, mecânica e programação:

  • Use linguagens como C ++ e Python para desenvolver aplicativos.
  • Administração de redes e sistemas para instalação e manutenção de ROS.
  • Conceitos básicos de robótica como mapeamento, IA, localização, cinemática inversa, etc., podendo colocar sensores, atuadores, controladores, etc. em contato.

Não importa o complexidade do robô, com ROS tudo é muito mais simples. Também não se limita a um tipo de robô, pode servir desde robôs de estimação a robôs humanóides, passando por braços robóticos para a indústria ...

Mais informações sobre ROS - Site oficial


Seja o primeiro a comentar

Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: Miguel Ángel Gatón
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.