Robotics Developer Studio
   HOME

TheInfoList



OR:

Microsoft Robotics Developer Studio (Microsoft RDS, MRDS) is a discontinued
Windows Windows is a Product lining, product line of Proprietary software, proprietary graphical user interface, graphical operating systems developed and marketed by Microsoft. It is grouped into families and subfamilies that cater to particular sec ...
-based environment for
robot A robot is a machine—especially one Computer program, programmable by a computer—capable of carrying out a complex series of actions Automation, automatically. A robot can be guided by an external control device, or the robot control, co ...
control and
simulation A simulation is an imitative representation of a process or system that could exist in the real world. In this broad sense, simulation can often be used interchangeably with model. Sometimes a clear distinction between the two terms is made, in ...
that was aimed at academic, hobbyist, and commercial developers and handled a wide variety of robot hardware. It requires a Microsoft
Windows 7 Windows 7 is a major release of the Windows NT operating system developed by Microsoft. It was Software release life cycle#Release to manufacturing (RTM), released to manufacturing on July 22, 2009, and became generally available on October 22, ...
operating system or later. RDS is based on Concurrency and Coordination Runtime (CCR): a .NET Framework-based concurrent
library A library is a collection of Book, books, and possibly other Document, materials and Media (communication), media, that is accessible for use by its members and members of allied institutions. Libraries provide physical (hard copies) or electron ...
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 In computing, a visual programming language (visual programming system, VPL, or, VPS), also known as diagrammatic programming, graphical programming or block coding, is a programming language that lets users create programs by manipulating prog ...
tool, Microsoft Visual Programming Language (VPL) to create and debug robot applications,
web-based A web application (or web app) is application software that is created with web technologies and runs via a web browser. Web applications emerged during the late 1990s and allowed for the server to dynamically build a response to the request, ...
and windows-based interfaces, 3D simulation (including
hardware acceleration Hardware acceleration is the use of computer hardware designed to perform specific functions more efficiently when compared to software running on a general-purpose central processing unit (CPU). Any transformation of data that can be calcula ...
), easy access to a robot's
sensor A sensor is often defined as a device that receives and responds to a signal or stimulus. The stimulus is the quantity, property, or condition that is sensed and converted into electrical signal. In the broadest definition, a sensor is a devi ...
s and
actuator An actuator is a machine element, component of a machine that produces force, torque, or Displacement (geometry), displacement, when an electrical, Pneumatics, pneumatic or Hydraulic fluid, hydraulic input is supplied to it in a system (called an ...
s. 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 A robot is a machine—especially one Computer program, programmable by a computer—capable of carrying out a complex series of actions Automation, automatically. A robot can be guided by an external control device, or the robot control, co ...
, and a set of services for
OpenCV OpenCV (Open Source Computer Vision Library) is a Library (computing), library of programming functions mainly for Real-time computing, real-time computer vision. Originally developed by Intel, it was later supported by Willow Garage, then Itseez ...
.


Components

RDS has four main components: * Concurrency and Coordination Runtime (CCR) * Decentralized Software Services (DSS) * Visual Programming Language (VPL) * Visual Simulation Environment (VSE) 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

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. *
Visual Programming Language In computing, a visual programming language (visual programming system, VPL, or, VPS), also known as diagrammatic programming, graphical programming or block coding, is a programming language that lets users create computer program, programs by ...
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 need only be dragged from the catalog to a diagram. ** Linking can be done with the mouse, it allows defining if signals are simultaneous or not, allows performing operations on transmitted values. ** VPL also allows generating the code of new "macro" services from diagrams created by users. ** In VPL, it is possible to easily customize services for different hardware elements. * RDS 3D simulation environment allows simulating the behavior of robots in a virtual world using NVIDIA PhysX technology (3D engine originally written by Ageia) that includes advanced physics. * There are several simulation environments in RDS. These environments were developed by SimplySim ** Apartment ** Factory ** Modern House ** Outdoor ** Urban * Many examples and tutorials are available for the different tools, which permits a fast understanding of MRDS. Several applications have been added to the suite, such as Maze Simulator, or Soccer Simulation which is developed by
Microsoft Microsoft Corporation is an American multinational corporation and technology company, technology conglomerate headquartered in Redmond, Washington. Founded in 1975, the company became influential in the History of personal computers#The ear ...
. * The
Kinect Kinect is a discontinued line of motion sensing input devices produced by Microsoft and first released in 2010. The devices generally contain RGB color model, RGB cameras, and Thermographic camera, infrared projectors and detectors that map dep ...
sensor can be used on a robot in the RDS environment. RDS also includes a simulated Kinect sensor. The Kinect Services for RDS are licensed for both commercial and non-commercial use. They depend on the Kinect for Windows SDK.


Notable applications

*
Princeton University Princeton University is a private university, private Ivy League research university in Princeton, New Jersey, United States. Founded in 1746 in Elizabeth, New Jersey, Elizabeth as the College of New Jersey, Princeton is the List of Colonial ...
's DARPA Urban Grand Challenge
autonomous car A self-driving car, also known as an autonomous car (AC), driverless car, robotic car or robo-car, is a car that is capable of operating with reduced or no User input, human input. They are sometimes called robotaxi, robotaxis, though this te ...
entry was programmed with MRDS. *
MySpace Myspace (formerly stylized as MySpace, currently myspace; and sometimes my␣, with an elongated Whitespace character#Substitute images, open box symbol) is a social networking service based in the United States. Launched on August 1, 2003, it w ...
uses MRDS's
parallel computing Parallel computing is a type of computing, computation in which many calculations or Process (computing), processes are carried out simultaneously. Large problems can often be divided into smaller ones, which can then be solved at the same time. ...
foundation libraries, CCR and DSS, for a non-robotic application in the back end of their site. *
Indiana University Indiana University (IU) is a state university system, system of Public university, public universities in the U.S. state of Indiana. The system has two core campuses, five regional campuses, and two regional centers under the administration o ...
uses MRDS in a non-robotic application to coordinate a high-performance computing network. * In 2008
Microsoft Microsoft Corporation is an American multinational corporation and technology company, technology conglomerate headquartered in Redmond, Washington. Founded in 1975, the company became influential in the History of personal computers#The ear ...
launched a simulated
robotics Robotics is the interdisciplinary study and practice of the design, construction, operation, and use of robots. Within mechanical engineering, robotics is the design and construction of the physical structures of robots, while in computer s ...
competition named RoboChamps using MRDS, four challenges were available: maze, sumo, urban, and Mars rover. the simulated environment and robots used by the competition were created by SimplySim and the competition was sponsored by Kia Motors * The 2009
robotics Robotics is the interdisciplinary study and practice of the design, construction, operation, and use of robots. Within mechanical engineering, robotics is the design and construction of the physical structures of robots, while in computer s ...
and
algorithm In mathematics and computer science, an algorithm () is a finite sequence of Rigour#Mathematics, mathematically rigorous instructions, typically used to solve a class of specific Computational problem, problems or to perform a computation. Algo ...
section of the
Imagine Cup Imagine Cup is an annual competition sponsored and hosted by Microsoft Corp. which brings together student developers worldwide to help resolve some of the world's toughest challenges. It is considered as "Olympics of Technology" by computer s ...
software Software consists of computer programs that instruct the Execution (computing), execution of a computer. Software also includes design documents and specifications. The history of software is closely tied to the development of digital comput ...
competition uses MRDS visual simulation environment. The challenges of this competition were also developed by SimplySim and are improved versions of the RoboChamps challenges.


Critique

* The complication and overhead required to run MRDS prompted Princeton Autonomous Vehicle Engineering to convert their Prospect 12 system from MRDS to IPC++. * The main RDS4 website was last updated on 2012-06-29. (In fact, the product no longer exists).


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 Restructuring or Reframing is the corporate management term for the act of reorganizing the legal, ownership, operational, or other structures of a company for the purpose of making it more profitable, or better organized for its present needs. ...
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.


See also

*
Player Project The Player Project (formerly Player/Stage Project) creates free and open-source software for research into robotics and sensor systems. Its components include the ''Player'' Computer network, network Server (computing), server and the ''Stage'' p ...
– used in research and post-secondary education (
open source Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use and view the source code, design documents, or content of the product. The open source model is a decentrali ...
and free) *
Webots Webots is a free and open-source 3D robot simulator used in industry, education and research. The Webots project started in 1996, initially developed by Dr. Olivier Michel at the Swiss Federal Institute of Technology (EPFL) in Lausanne, Switzerl ...
*
Project Chrono Project Chrono is a physics engine developed by University of Parma, University of Wisconsin-Madison and members of its open source community. It supports simulating rigid body dynamics, rigid and soft body dynamics, collision detection, vehicle ...
* Concurrency and Coordination Runtime *
URBI Urbi is an Open-source software, open-source cross-platform software computing platform written in C++ used to develop applications for robotics and complex systems. Urbi is based on the UObject distributed C++ component architecture. It also in ...
*
Robotic mapping Robotic mapping is a discipline related to computer vision and cartography. The goal for an autonomous robot is to be able to construct (or use) a map (outdoor use) or floor plan (indoor use) and to localize itself and its recharging bases or beac ...
*
Robot software Robot software is the set of coded commands or instructions that tell a mechanical device and electronic system, known together as a robot, what tasks to perform. Robot software is used to perform autonomous tasks. Many software systems and framew ...
* Mobile Robot Programming Toolkit *
Arduino Arduino () is an Italian open-source hardware and open-source software, software company, project, and user community that designs and manufactures single-board microcontrollers and microcontroller kits for building digital devices. Its hardwar ...
*
Robot Operating System Robot Operating System (ROS or ros) is an Open-source software, open-source robotics middleware suite. Although ROS is not an operating system (OS) but a set of software frameworks for robot software software development, development, it provide ...
(ROS)


References


Further reading

* * *


External links

*
Microsoft MSDN robotics pages

Microsoft Robotics Studio: An Introduction

Microsoft Robotics Studio Runtime – An Introduction

MRDS Codeplex Samples
(MRDS 2008 R3)
Additional Samples from Professional Robotics Developer Studio textbook
(MRDS 2008 R3)
Microsoft Robotics Studio Community – Turkey

Microsoft robotics newsgroup from Google Groups

Channel9 wiki page about Microsoft Robotics Studio

www.Conscious-Robots.com pages for Microsoft Robotics Studio (MSRS)

PhysX by Ageia Home
* Robubox's MSRS tutorials and simulator sample
Official Website

SimplySim: MRDS 3D simulation company

Imagine Cup 2009: Robotics & Algorithm
{{Microsoft development tools Robotics Developer Studio Integrated development environments Robotics suites 2006 software 2006 in robotics