June 20, 2006
Microsoft Robotics Studio Announced

Today Microsoft announced the Microsoft Robotics Studio, “a new Windows-based environment for academic, hobbyist and commercial developers to easily create robotic applications for a wide variety of computing platforms.”

It looks pretty Microsofty. The “Introduction to the Microsoft Robotics Studio Application Model” starts with a discussion of HTTP, REST and SOAP, and the web console interface to the Robotics Studio Runtime makes me feel like I'm installing MBeans on WebSphere—actually, that could almost be their slogan: “Makes robotics as easy as writing an MBean!”

Key features and benefits of the Microsoft Robotics Studio environment include these:

  • End-to-end robotics development platform. Microsoft Robotics Studio includes a visual programming tool, making it easy to create and debug robot applications. Robotics Studio enables developers to generate modular services for hardware and software, allowing users to interact with robots through Web-based or Windows-based interfaces. Developers can also simulate robotic applications using realistic 3-D models; Microsoft has licensed the PhysX engine from AGEIA, a pioneer in hardware-accelerated physics, enabling real-world physics simulations with robot models. The PhysX simulations can also be accelerated using AGEIA hardware.
  • Lightweight services-oriented runtime. Microsoft Robotics Studio provides a lightweight services-oriented runtime. Using a .NET-based concurrency library, it makes asynchronous application development simple. The services-oriented, message-based architecture makes it simple to access the state of a robot’s sensors and actuators with a Web browser, and its composable model enables the building of high-level functions using simple components and providing for reusability of code modules as well as better reliability and replaceability.
  • Scalable, extensible platform. The Microsoft Robotics Studio programming model can be applied for a variety of robot hardware platforms, enabling users to transfer their learning skills across platforms. Third parties can also extend the functionality of the platform by providing additional libraries and services. Both remote (PC-based) and autonomous (robot-based) execution scenarios can be developed using a selection of programming languages, including those in Microsoft Visual Studio and Microsoft Visual Studio Express languages (Visual C# and Visual Basic .NET), JScript and Microsoft IronPython 1.0 Beta 1, and third-party languages that conform to its services-based architecture.

And

Some services provide UI in the form of HTML, typically generated from XML, but others may generate UI in any format including audio, video, and images.

The concept of accessing information through IE is very deeply integrated into the Microsoft Robotics Studio runtime. Every runtime service can be accessed this way and through simple HTML forms, possibly generated from XML using XSLT, services may be manipulated on the fly.

I don't know anything about the PhysX physics engine, but the technology demos look decent enough. The Robotics Studio simulator should be fun:

microsoft robotics studio simulator microsoft robotics studio simulator

Note that the red lines in the image above are from the robots' laser scanners. Fancy!

It's a little odd seeing Microsoft release something that is, in a lot of ways, the product that was Evolution's one-time aspiration.

Does this mean that Bill Gates met an ER1 (sans ER software?) as part of a review that may have eventually led to the announcement of the Microsoft Robotics Platform today?

Posted by jjwiseman at June 20, 2006 11:20 AM
Comments

How is this different from player/stage?

playerstage.sf.net

Posted by: Stu Glaser on June 20, 2006 04:39 PM

C#, web browser, ready made interfaces and installers, physics simulation (maybe I missed that part in player/stage, or there are common plugins). I know little to nothing about both, you know about one, you tell me the differences. Are were you just dismissing the product straight off due to it not being free and being an offer from Microsoft?

Posted by: webbrowser on June 21, 2006 12:03 PM

Lighten up, Francis. He asked about the differences - you seemed to immediately project dismissiveness in a defensive manner, reminiscent of Microsoft itself, which indeed has a sordid reputation in a lot of realms.

Posted by: Jed on June 21, 2006 01:21 PM

Sure, good point, I guess. Are we in triple speak yet? But I bet I'm right about his direction with that.

Posted by: hahah on June 21, 2006 06:30 PM

Will this work with Lego Mindstorms?

Posted by: Marc on June 21, 2006 11:48 PM

I was present for the announcement and attended the two hour technical introduction session. While MS has not perfected the system, they have done a very respectable job of integrating simulation and actual hardware. Their physics comes from a game engine (forgot the name) and is very nice. Robots can push things around, and that pushes other things, etc.

Most people had the initial reaction that this system is very heavyweight. And, well, it does seem to be. But it does dos a good deal of messaging and connectivity, and seems to provide an interesting web-based front end. I.e., you can control actuators and read sensors over the web from anywhere since the robots become little html servers. Well, that's not exactly true. The "service" that you implement to the MS specification is the tiny web server. It connects to the actual physical robot over whatever link you want; USB, BlueTooth, Wifi, etc. You have to implement that yourself.

With the whole iRobot flurry of activity and the push for enhancing the Roomba via their serial port command interface, I was somewhat surprised that MS did not have a Roomba model already made. They did have a WhiteBox bot, a BoeBot, a Fischertechnique (sp?), some Pioneers, and others (sorry, I don't recall the names of all of them.)

Anyhow, if you want more info ping me. (No, I have not installed it yet.)

Posted by: Trenton Henry on June 23, 2006 02:34 PM

Where the fuck is Tom when you need someone to shout WEB SERVICES!?!

I like web services for some things. Especially robots. Hacking into robots is WAAAAY more fun than hacking into a bank. Especially when they start flying over LA with cameras.

Who wants to go in on me with a new series for Fox: ROBOCOPS.

$100 says it's already planned.

Posted by: hackalicious on June 25, 2006 09:55 PM

Comme d'abitude ,Microsoft ne fait que singer Sun
En effet, les premières plateformes de développement pour applications robotiques sont à base de Java (Lejos le petit jdk robotique pour les lego mindstorms par exemple permet de telles fonctionnalité apportées par le visual robotic studio par exemple).
Pour la simulation , la technomogie java présente beaucoup d'outils puissanrt dans ce cadre.
Sauf que, pour ne pas dire que microsoft n'a rien fait , l'idée d'intégrer un environnement de développement très puissant est une excellent idée ;chose qu'on n'avait pas avec lejox par exemple.
J'aurai aimé qu'on développe un environnement orienté objet pour programmer des pics et de cette manière on oblige pas le développeur à utiliser des briques rcx ou ntx pour des applications réelles car elles sont trop chères pour ne pas dire qu'ells sont inexistantes dans quelques cas.
Merci

Posted by: ramezi on July 11, 2006 06:07 AM

Too bad your encoding didn't transfer properly, but here's a fairly readable translation anyway:

Like abitude, Microsoft does that ape Sun
Indeed, the premières platforms of development for robotic applications using Java are (Lejos the small jdk robotics for the lego mindstorms e.g allows for such fonctionnalité apportées by the visuelle robotic studio e.g).
For the simulation, the technomogie java présente many tools puissanrt within this framework.
With that, not to say that Microsoft did nothing, the idea to integrate a very powerful development environment is an excellent idea; it was not with lejox e.g.
I aimé that développe an environment orienté object to schedule peaks and manière not forcing the développeur use bricks rcx or ntx applications for réelles because they are too chères not to say that they are nonexistent in some cases.
Thank you

Heck, that's like two or three phrase rearrangements away from draft quality.

Posted by: translatz0r on August 9, 2006 11:51 AM
Post a comment
Name:


Email Address:


URL:




Unless you answer this question, your comment will be classified as spam and will not be posted.
(I'll give you a hint: the answer is “lisp”.)

Comments:


Remember info?