Desenvolver um robô autônomo requer várias ferramentas, como drivers de software, ferramentas de simulações e visão computacional. ROS (Robot Operating Syste) é um framework que tem todas essas ferramentas reunidas voltadas para o desenvolvimento de tal. De forma mais simples, o ROS é utilizado para facilitar a comunicação de diferentes módulos, dessa forma é possível criar uma arquitetura de processamento de dados paralelos. O framework ROS é de fácil implementação em qualquer linguagem de programação moderna e já está implementado em Python, C ++ e LISP, além de já existir algumas bibliotecas experimentais em Lua e Java.
É importante deixar claro que este não é um sistema operacional real, mas sim um sistema operacional que permite retirar o hardware do software. Assim podemos dizer que seria um software para qualquer hardware pertencente a um robô.
A maneira de funcionamento é feita por processos que chamamos de nó, sendo cada nó responsável por uma tarefa. Cada nó se comunica com outros nós, por meio de mensagens, enviando e obtendo dados de outros dados pelo modelo de publish e subscribe.
Como mencionado anteriormente, ROS reúne ferramentas para o desenvolvimento do robô, as duas de maior enfâse é Gazebo e Rviz. O Gazebo é o simulador 3D que reproduz a física, expressando como seria o comportamento do robô em um ambiente real. Em contrapartida, o Rviz é o visualizador 3D para o robô, algoritmos e até os sensores. Através dele podemos analisar o estado do robô no ambiente simulado.
Um exemplo de ultilização é o E-ROS4PRO, que é um pacote educacional que propõe uma nova abordagem para ensinar robótica móvel, robótica de manipulação, robótica social e Inteligência Artificial. Esse projeto é uma mistura de educação contínua e inicial em um formato de oficina com um estilo hackathon, que são facilmente replicáveis com robôs populares como um pacote educacional de código aberto completo.
Dessa forma, esta foi apenas uma introdução simples e pontual, tendo como objetivo de apresentar um panorama amplo do ROS e suas versatilidades.
Escrito por Maria Luiza Lino