Think robotics is only good for General Motors' assembly line and vacuuming your floor? Think again. Microsoft's Robotics Developer Studio has a number of components that businesses are using, or thinking about using, for such far-flung things as carded door access and Web messaging services.
Take Tyco, which is using Microsoft's Concurrency and Coordination Runtime, a part of the Robotics Developer Studio, to prevent the company's card-based physical access system from being overloaded.
"The robotics studio has many elements: a graphics suite, models, controls. I don't use any of that," says Stephen Tarmey, a Tyco software architect.
There are plenty of parts of Microsoft's robotics software that don't apply only to robots.
Previously, Tarmey had developed an access system in .Net 3.0, and though it worked fine during slow hours, he found he could flood the system so that latency was so bad a moveable camera looking at the card swipe would take too long to rotate to see who was trying to gain access.
The CCR allows messages to be sent across the network in multiple threads, therefore cutting back on latency overall and letting developers prioritize certain messages -- say, attempts to access areas people aren't allowed to access -- over others. It's in the Robotics Development Studio specifically because robots may have to deal with an overwhelming amount of input in order to react to their surroundings.
Tarmey says he's also interested in using Decentralized Software Services, which is a lightweight set of services akin to messaging or Web services that's used to send messages back and forth to robots. Tyco would use this for putting a more robust (though relatively low powered) computer system inside the door locks themselves rather than having relatively dumb door locks communicate with a network of small servers.
Tyco isn't the only company using Microsoft's robotics software for something other than robotics. MySpace uses CCR to manage the traffic on its messaging system, and Trower says there's active interest from other companies as well.
Tandy Trower, Microsoft's robotics general manager, says companies might eventually use the Robotics Development Studio's Visual Programming Language, which uses visual components instead of code, to combine service components into a new application, just as non-developers can do to create mash-ups with Microsoft's Popfly service. A simulation system Microsoft has developed for Robotics Development Studio could potentially be used to simulate customers moving through a store or items through a warehouse.
Since these components have uses beyond robotics, Microsoft is actively looking for places these components could land inside other products. According to Trower, Microsoft's embedded systems group already has plans to integrate support for the Concurrency and Coordination Runtime, Decentralized Software Services and the Microsoft Visual Programming Language into future products, while elements of the Concurrency and Coordination Runtime could find their way into some of Microsoft's forthcoming parallel programming frameworks.