Microsoft Robotics Developer Studio

Last updated
Microsoft Robotics Developer Studio
Developer(s) Microsoft in association with the community
Initial releaseDecember 18, 2006;17 years ago (2006-12-18)
Stable release
4.0 / March 8, 2012;12 years ago (2012-03-08)
Operating system
Type Robotics suite
License Various
Website www.microsoft.com/robotics/   OOjs UI icon edit-ltr-progressive.svg

Microsoft Robotics Developer Studio (Microsoft RDS, MRDS) is a discontinued Windows-based environment for robot control and simulation that was aimed at academic, hobbyist, and commercial developers and handled a wide variety of robot hardware. It requires a Microsoft Windows 7 operating system or later.

Contents

RDS is based on Concurrency and Coordination Runtime (CCR): a .NET Framework-based concurrent library implementation for managing asynchronous parallel tasks. This technique involves using message-passing and a lightweight services-oriented runtime, Decentralized Software Services (DSS), which allows orchestrating multiple services to achieve complex behaviors.

Features include: a visual programming tool, Microsoft Visual Programming Language (VPL) to create and debug robot applications, web-based and windows-based interfaces, 3D simulation (including hardware acceleration), easy access to a robot's sensors and actuators. The primary programming language is C#.

Microsoft Robotics Developer Studio includes support for packages to add other services to the suite. Those currently available include Soccer Simulation and Sumo Competition by Microsoft, and a community-developed Maze Simulator, a program to create worlds with walls that can be explored by a virtual robot, and a set of services for OpenCV.

Components

Example of a Reference Platform Robot Reference Platform Robot.jpg
Example of a Reference Platform Robot

RDS has four main components:

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. This package is called the CCR and DSS Toolkit.

Tools

Simulated robot and environment in MRDS Mars rover msrds simulation.jpg
Simulated robot and environment in MRDS

The tools that allow developing an MRDS application contain a graphical environment (Microsoft Visual Programming Language (VPL)) command line tools allow working with Visual Studio projects (VS Express version is enough) in C#, and 3D simulation tools.


Notable applications

Critique

Microsoft Robotics and the future

Microsoft Robotics Developer Studio has not been updated or patched since version 4.0, which was released on March 8, 2012. On September 22, 2014, as part of Microsoft's restructuring plan, the Robotics division of Microsoft Research was suspended, according to a tweet from Ashley Feniello, a principal developer at Microsoft Robotics division of Microsoft Research (MSR). It is now highly unlikely that MRDS will ever be updated again, however forum members (MVPs) may still offer limited support. [4]

See also

Related Research Articles

<span class="mw-page-title-main">Microsoft Visual C++</span> Integrated development environment product

Microsoft Visual C++ (MSVC) is a compiler for the C, C++, C++/CLI and C++/CX programming languages by Microsoft. MSVC is proprietary software; it was originally a standalone product but later became a part of Visual Studio and made available in both trialware and freeware forms. It features tools for developing and debugging C++ code, especially code written for the Windows API, DirectX and .NET.

A cross compiler is a compiler capable of creating executable code for a platform other than the one on which the compiler is running. For example, a compiler that runs on a PC but generates code that runs on Android devices is a cross compiler.

<span class="mw-page-title-main">Visual programming language</span> Programming language written graphically by a user

In computing, a visual programming language, also known as diagrammatic programming, graphical programming or block coding, is a programming language that lets users create programs by manipulating program elements graphically rather than by specifying them textually. A VPL allows programming with visual expressions, spatial arrangements of text and graphic symbols, used either as elements of syntax or secondary notation. For example, many VPLs are based on the idea of "boxes and arrows", where boxes or other screen objects are treated as entities, connected by arrows, lines or arcs which represent relations. VPLs are generally the basis of Low-code development platforms.

<span class="mw-page-title-main">Microsoft XNA</span> Freeware set of tools by Microsoft

Microsoft XNA is a freeware set of tools with a managed runtime environment that Microsoft Gaming developed to facilitate video game development. XNA is based on .NET Framework, with versions that run on Windows and Xbox 360. XNA Game Studio can help develop XNA games. The XNA toolset was announced on March 24, 2004, at the Game Developers Conference in San Jose, California. A first Community Technology Preview of XNA Build was released on March 14, 2006.

Windows Presentation Foundation (WPF) is a free and open-source graphical subsystem originally developed by Microsoft for rendering user interfaces in Windows-based applications. WPF, previously known as "Avalon", was initially released as part of .NET Framework 3.0 in 2006. WPF uses DirectX and attempts to provide a consistent programming model for building applications. It separates the user interface from business logic, and resembles similar XML-oriented object models, such as those implemented in XUL and SVG.

<span class="mw-page-title-main">PhysX</span> Realtime physics engine software

PhysX is an open-source realtime physics engine middleware SDK developed by Nvidia as a part of Nvidia GameWorks software suite.

A robotics suite is a visual environment for robot control and simulation. They are typically an end-to-end platform for robotics development and include tools for visual programming and creating and debugging robot applications. Developers can often interact with robots through web-based or visual interfaces.

Microsoft Visual Programming Language, or VPL, is a visual programming and dataflow programming language developed by Microsoft for the Microsoft Robotics Studio. VPL is based on the event-driven and data-driven approach. The programming language is distinguished from other Microsoft programming languages such as Visual Basic and C#, as it is the only Microsoft language that is a true visual programming language. Microsoft has utilized the term "Visual" in its previous programming products to reflect that a large degree of development in these languages can be performed by "dragging and dropping" in a traditional wysiwyg fashion.

Concurrency and Coordination Runtime (CCR) is an asynchronous programming library based on .NET Framework from Microsoft distributed with Microsoft Robotics Developer Studio (MRDS). Even though it comes with MRDS, it is not limited to modelling robotic behavior but can be used to express asynchronous behavior in any application.

Visual Studio Tools for Office (VSTO) is a set of development tools available in the form of a Visual Studio add-in and a runtime that allows Microsoft Office 2003 and later versions of Office applications to host the .NET Framework Common Language Runtime (CLR) to expose their functionality via .NET.

Visual Studio Tools for Applications (VSTA) is a set of tools that independent software vendors (ISVs) can use to build customization abilities into their applications for both automation and extensibility. Those customization abilities can be used by end-users to tailor the ISV's application within a managed extensibility environment just like Visual Basic for Applications.

<span class="mw-page-title-main">Robotics simulator</span> Simulator to create applications for physical robots

A robotics simulator is a simulator used to create an application for a physical robot without depending on the physical machine, thus saving cost and time. In some case, such applications can be transferred onto a physical robot without modification.

<span class="mw-page-title-main">Kinect</span> Motion-sensing input device for the Xbox 360 and Xbox One

Kinect is a discontinued line of motion sensing input devices produced by Microsoft and first released in 2010. The devices generally contain RGB cameras, and infrared projectors and detectors that map depth through either structured light or time of flight calculations, which can in turn be used to perform real-time gesture recognition and body skeletal detection, among other capabilities. They also contain microphones that can be used for speech recognition and voice control.

Tandy Trower is the current CEO of Hoaloha Robotics LLC, a robotics company based in Seattle, Washington, developing an autonomously mobile, socially interactive robot, to empower senior citizens to live more independently.

FlexSim is a discrete-event simulation software package developed by FlexSim Software Products, Inc. The FlexSim product family currently includes the general purpose FlexSim product and healthcare systems modeling environment.

ASU VIPLE is a Visual IoT/Robotics Programming Language Environment developed at Arizona State University.

References

  1. "Technical Paper for the Darpa Challenge" (PDF). Archived from the original (PDF) on 2010-03-31. Retrieved 2011-02-03.
  2. 1 2 Worthington, David (August 1, 2008). "Microsoft's shift to parallel computing". SDTimes on the Web. Archived from the original on 2009-07-15. Retrieved 2008-08-02.
  3. "Princeton Autonomous Vehicle Engineering -Section Software". Pave.mycpanel.princeton.edu. Retrieved 2019-04-08.
  4. Feniello, Ashley (20 September 2014). "Sadly, the Microsoft robotics team has been shut down. My card key stops working tomorrow afternoon... :-/". Twitter. Retrieved 2016-01-20.

Further reading