ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

I would agree with Thomas' assessment of the ROS software. However, it's important to note that while ROS may not be a perfect solution, there are a class of problems for which it is one of the only solutions. The state of the art within industrial robotics and automation has lagged behind cutting edge research in robotics. At this point ROS is five to ten ahead of commercial options when it comes to some raw capabilities. However, as Thomas points out, ROS is not as reliable or robust.

So what does this mean?

In the near term, I see ROS (and by extension, ROS-Industrial) as a solution to a class of industrial robotics applications that lack commercial solutions. Good examples include any application that requires a perception component and/or advanced path planning component. In these applications, end users, are probably willing to accept a 90% (i.e. imperfect) solution. It's important to remember that end-users only care about top-level metrics, ROI, uptime and throughput. Those aspects which are important to developers, usability and maintainability, only indirectly affect top-level metrics. I have seen many examples of nearly unreadable code that meets or exceeds top-level metrics.

In the long term, as ROS gains greater acceptance, aspects such as robustness, reliability, maintainability, and usability will improve (this is a goal of ROS-Industrial and the community at large). Industrial automation and robotics, if t ROS is adopted early, will then benefit by the sheer scale of ROS. The biggest hurdle in advancing the state of the art in industrial robotics is solely a problem of scale. The industrial robotics market is too small and has too many players to really advance technology. The solution is either consolidation or adopting an open solution such as ROS. An open solution, is the better option, because it pushes the state of the art, while still maintaining the competitive environment that results from many players.