Microsoft Robotics Developer Studio (Microsoft RDS, MRDS) is a Windows-based environment for robot control and simulation. It is aimed at academic, hobbyist, and commercial developers and handles a wide variety of robot hardware.
Features include: a visual programming tool, Microsoft Visual Programming Language, for creating and debugging robot applications; web-based and windows-based interfaces; 3D simulation (including hardware acceleration); easy access to the robot’s sensors and actuators; support of several programming languages (including C#, Visual Basic .NET, JScript and IronPython). Also MRDS includes support for packages to add other services to the suite.
There are four main components in Microsoft Robotics Developer Studio: CCR (Concurrency and Coordination Runtime), DSS (Decentralized Software Services), VPL (Visual Programming Language), VSE (Visual Simulation Environment).
CCR is a .NET-based concurrent library implementation for managing asynchronous parallel tasks. This technique involves using message-passing and a lightweight services-oriented runtime, DSS, which allows the orchestration of multiple services to achieve complex behaviors. CCR and DSS are also available separately for use in commercial applications that require a high level of concurrency and/or must be distributed across multiple nodes in a network.
Visual Programming Language is a graphical development environment that uses a service and activity catalog. They can interact graphically, a service or an activity is represented by a block that has inputs and outputs that just need to be dragged from the catalog to the diagram. VPL also allows to generate the code of new “macro” services from diagrams created by users. It is possible in VPL to easily customize services for different hardware elements.
MRDS 3D simulation environment allows to simulate the behavior of robots in a virtual world using NVIDIA PhysX technology (3D engine originally written by Ageia).
However, Microsoft Robotics Developer Studio has some disadvantages, such as: the lack of consideration and support of the real robot’s operating environment (type of terrain for its motion, weather conditions, etc.); the simulation (that can be not identical to the real prototype) is used for control of the real robot; the required number of settings increases together with increasing of the model’s precision; the physical modeling is vastly simplified.
1. Microsoft Robotics Developer Studio. – Mode of access: http://www.microsoft.com/robotics/.
2. Microsoft Robotics Developer Studio. – Mode of access: http://en.wikipedia.org/wiki/Microsoft_Robotics_Developer_Studio.
3. Microsoft Robotics Developer Studio. – Mode of access: http://ru.wikipedia.org/wiki/Microsoft_Robotics_Developer_Studio.
4. File:Simulated Reference Platform Robot.png. – Mode of access: http://en.wikipedia.org/wiki/File:Simulated_Reference_Platform_Robot.png.
5. Concurrency and Coordination Runtime. – Mode of access: http://en.wikipedia.org/wiki/Concurrency_and_Coordination_Runtime.
6. Concurrency and Coordination Runtime. – Mode of access: http://ru.wikipedia.org/wiki/Concurrency_and_Coordination_Runtime.
7. Microsoft Robotics Developer Studio – русскоязычное сообщество разработчиков / Главная. – Mode of access: http://mrds.ru/.
8. Программируем в Microsoft Robotics Developer Studio 4. Часть 1, реальные и виртуальные роботы / Хабрахабр. – Mode of access: http://habrahabr.ru/post/166449/.
9. Microsoft Surface and Microsoft Robotics Developer Studio for Multi-Robot Command and Control. – Mode of access: http://www.youtube.com/watch?v=HSOziHgQedA.
10. Демо Microsoft Robotics Developer Studio 4. – Mode of access: http://www.youtube.com/watch?v=EviugG6GjTQ.
11. Morgan S. Programming Microsoft Robotics Studio / Sara Morgan. – Washington : Microsoft Press, 2008. – 255 p.
12. Johns K. Professional Microsoft Robotics Developer Studio / Kyle Johns, Trevor Taylor. – Indianapolis : Wiley Publishing, Inc., 2008. – 828p.
1 Author published this work under the Creative Commons Attribution-Share Alike 3.0 Unported license.