It has been a little quiet on this front for the past few months but certainly not for a lack of activity so it's probably high time for a 2014 update on what we're up to. Some of the more interesting directions the various groups are working on:
Piyush at Austin University of Texas has been playing around with a multi-master Gazebo so we can develop in simulation before deploying and has also found a bunch of interesting and zany computer scientists who are getting curious about robots, but don't have the time or resources to commit to actually getting their experiments into real robots in the real world (which is where we come in).
Meanwhile William at OSRF has been putting together a beta version of capabilities
. These have been designed to provide some much needed structure to the internals of a ros robot. William has already expended many words on that wiki page - go there so we don't have to reinvent the word here :) Even though beta, capabilities are already finding their way into robots at Yujin, Unbounded Robotics and Clearpath, which is great - they were designed exactly to scratch an itch for products and what we see is exactly those groups being the early adapters.
On other fronts, tackling orchestration of services at a higher level stonewalled us for a while - what is the right solution for robotics? The answer to that exact question turned out to be 'the wrong solution
' and once we realised this, it allowed us to move forward designing a framework. To be slightly less enigmatic, between ourselves, a group at Soongsil University in Korea and the computer scientists at Austin, there was no consensus on what to do in this space and subsequently whatever we chose, it was very likely going to be that wrong solution. This should have been immediately apparent given that there are so many PhD theses on the topic (even ROS' papa smurf Brian Gerkey has been there, done that!) but hindsight is a wonderful thing. What was obvious though, was that there was a need to provide a platform which would handle all the details and let people experiment with multi-robot services and solutions on top. Enter the OPP
, rocon's Orchestration Platform Prototype. Our goal for this is to enable people to write and experiment with their own service workflows (be they ROS, link graph, java agents or business process styles) and handle all of the surrounding details so that people who write services can focus on doing exactly that.
So what's our first tangible going to look like? As a first version, what we'd like to deliver is a system which can assist you in building maps, administrating, do teleop'ing in emergencies, manage robot and software resources and provide a final slot in which you can write your own custom service. A 'navigation stack' for multi-master if you will.
Interesting how all those discussions from varying groups resulted in something that rather resembles technology from the 70's - what we have here basically looks like a server computer complete with hardware resources that need to be managed, human interactive devices, software support and services running in parallel on top providing the real world operations...
We're currently in the middle of this marathon, see the milestones
page has more details.
Jack O'Quinn is working on a flexible and customisable resource requester/scheduler. Austin's computer scientists are plugging away at a new method for orchestrating services and wireless handling. Soongsil is working on a business process style service, Jorge in Spain is about to tackle maps and annotations while we are working on the framework and doing our damndest to fervently adhere and not lose sight of the KISS principle which repeatedly threatens to disappear over the horizon.
Still much to do, but the road ahead is finally now, a road. If you'd like to discuss, talk to us on the ros multimaster sig
. And in the meantime, we hope to spin off a few useful ros single-master tools we've developed sometime in the next couple of weeks, but more about them whey they come out...
Happy 2014 from the ROCON team.