Microsoft Robotics Studio (MSRS 1.5)
| Logiciels |
Application-specific code orchestrates those services, sends queries, and receives responses back -- and thus controls the robot. If a service is located on a remote server, a patented network protocol called DSSP is used to communicate to the server.
As all the services are running in parallel, there is a chance that the application-level orchestration code may get confused by multiple responses simultaneously coming from various services. The answer to the problem is a special library called CCR (Concurrency and Coordination Runtime) that provides a consistent and scalable way to program asynchronous operations and coordinate among multiple responses. DSS makes use of CCR.

The runtime environment comes with a graphical programming language called VPL that is used to orchestrate multiple asynchronous invocations of decentralized services managed by the DSS/CCR framework. VPL is domain independent and can be used outside of the robotics domain.

Originally greeted with a mixture of enthusiasm, caution, and skepticism by the world of robotics researchers and hobbyists, the MSRS platform turned out to be overkill for small hobby/research projects. Writing DSS services and connecting them to the platform is a major exercise in service-oriented programming, and one that is often an unnecessary distraction from the final goal of a robotics project. And, in the end, one still has to look for a third-party library to handle, for example, object recognition, as the platform does not have any built-in "artificial intelligence."
On the other hand, if a robot (simulated or real) comes with a package of DSS services already built for it, the robot can be easily programmed using VPL graphical language (mission-level programming). This helps, especially if the platform is used for education.
The platform's design is heavily influenced by WebServices/SOAP/REST architecture which was not originally meant for low-latency applications such as real-time vehicle control. In general, traditional Web technologies are optimized for traffic volume rather than for achieving the lowest latency. The problem is somewhat worsened by the .NET Framework's memory garbage collector, a source of random delays. How well the IT-style architecture of the Microsoft platform fits the real-time (or even "soft" real-time) domain is yet to be fully uncovered.
Several companies and teams use the Microsoft platform with success. Robosoft, a company building autonomous robots, uses it as a software framework for all of their robots. Coroware uses MSRS as a programming and simulation environment for their CoroBot robots, built for the research and education market. Princeton Urban Grand Challenge team used MSRS as a software framework for a control system built for their unmanned ground vehicle (pictured below).

By Michael Somby ( Cette adresse email est protégée contre les robots des spammeurs, vous devez activer Javascript pour la voir. )