“Three measures of Gordon’s, one of vodka, half a measure of Kina Lillet. Shake it very well until it’s ice-cold, then add a large thin slice of lemon-peel.” – James Bond
Immortalizing the most famous cocktail in history, 007 does two things correctly: he subversively asks for it to be shaken, most likely to dilute the formidable combination of gin and vodka. Secondly, he understands the necessity of nuance and balance when bringing several elements together to work interconnectedly.
If ROS is a martini, then its components are the bartender and lemon garnish. Like an ecosystem, Kinesis illustrates this interconnectivity through its collaborative, one-to-many-control system design. In fact, this interconnectivity is called an “ecosystem” – a “system of products or platforms that are complemented by applications.”
Where ROS Moves In
Often used for the purposes of solving complex problems through the use of connected robotics technologies, and gaining in popularity:
“The Robot Operating System (ROS) is a flexible framework for writing robot software. It is a collection of tools, libraries, and conventions that aim to simplify the task of creating complex and robust robot behavior across a wide variety of robotic platforms.”
Transcending its R&D roots and making waves in the commercial, industrial and military markets, ROS is gaining momentum in the robotics community. As an open-source tool, it equips users with the means to optimize communications, sensors, develop and visualization tools and equips the community with repositories for code management and functionality. View our Brief Introduction to ROS for a reminder on ROS basics.
Exploring the Ecosystem
Operating at the micro level, nodes are the building blocks in the ROS ecosystem. Organized along a pre-designed path, nodes are the catalyst of communication, transmitting data between software and hardware. Utilizing the publish/subscribe messaging protocol, nodes communicate with each other over topics. Though the nodes themselves are unaware which counterpart will receive the information, they subscribe to the relevant topic that contains the information they requested. Publishing the results of their data, nodes are vital in the communication between hardware and software.
Zooming out to the macro level, nodes are gathered into packages and subsequently, meta-packages. As the name suggests, packages are rich with information about the packages themselves, formatted in Extensible Markup Language (XML), for the user and machine readability. Packages include information like its name, its version, a brief description, its author(s), licenses, etc.
If the “thin slice of lemon peel” is the ecosystem’s communicable nodes, then the bartender is the wise and ever-knowing fount of repositories and online resources for the ROS community. Comprehensive in its scope, www.ros.org provides its visitors with encyclopedic information on ROS architecture in the form of a wiki, FAQ’s, blog entries, and countless other features. As a repository host, www.github.com provides packages, core stacks, code review, among other features to equip its user base with a universal language in the development of ROS-built technology.
The Ecosystem in Action
Zooming out to see the big picture of the ecosystem could be overwhelming, but consider the capability of Kinesis to seamlessly incorporate robotics into your workflow through intuitive and affordable solutions. Operating within every layer of the ROS ecosystem, Kinesis streamlines the collaboration between unmanned systems to allow robots and unmanned systems to be used as the functional tools they were envisaged to be - driving productivity and safety across a large variety of use cases in disparate markets.