Why ROS?
So the stage is set, stacks are high, and this ROS is a powerful engine that can solve it all. To help you get an idea of how powerful it is, let’s compare ROS’s wish list from a few years ago with what ROS stands for today: ROS wanted to:- Become hardware-independent — ROS needs to use all kinds of motors, sensors, cameras, etc.
- Become vendor-independent — ROS should not care if you have got Universal Robot, KUKA, Denso, FANUC, or any other commercially available industry manipulator
- Be written by any programming language – ROS has no boundaries
- Become easy to use, learn and upgrade — You don’t need Ph.D. in Robotics to use ROS
- Support large types of robots — Land, air, sea, underground, indoors, and outdoors
- Solve common problems in robotics — ROS needs to support computer vision, trajectory calculation, SLAM, motor control, safety, etc.
- Hardware independent — ROS can use the majority of motors, sensors, cameras (many vendors provide ROS drivers for their devices)
- Vendor independent — ROS can be used to drive commercial industrial manipulators and robot arms. ROS – Industrial is trying hard to do this, but it trespasses into other companies’ revenue streams
- Written by any programming language — ROS programs can be written with C, C++, Python, Matlab, Java. C++ and Python are the main choices
- Easy to use, learn and upgrade — Learning support is getting better and better
- Support large types of robots — See the list and judge
- Solves common problems in robotics — The 2000+ software libraries available for ROS speak for themselves