Microsoft Robotics Developer Studio (Microsoft RDS, MRDS ) es un entorno basado en Windows que ya no se fabrica para el control y la simulación de robots , que estaba dirigido a desarrolladores académicos, aficionados y comerciales y que manejaba una amplia variedad de hardware de robots. Requiere un sistema operativo Microsoft Windows 7 o posterior.
RDS se basa en Concurrency and Coordination Runtime (CCR): una implementación de biblioteca concurrente basada en .NET Framework para gestionar tareas paralelas asincrónicas. Esta técnica implica el uso de paso de mensajes y un entorno de ejecución orientado a servicios ligero, Decentralized Software Services (DSS), que permite orquestar múltiples servicios para lograr comportamientos complejos.
Las características incluyen: una herramienta de programación visual , lenguaje de programación visual de Microsoft (VPL) para crear y depurar aplicaciones de robots, interfaces basadas en la web y en Windows, simulación 3D (incluida la aceleración de hardware ), fácil acceso a los sensores y actuadores de un robot . El lenguaje de programación principal es C# .
Microsoft Robotics Developer Studio incluye soporte para paquetes que permiten añadir otros servicios a la suite. Entre los disponibles actualmente se encuentran Soccer Simulation y Sumo Competition de Microsoft, y un Maze Simulator desarrollado por la comunidad, un programa para crear mundos con paredes que pueden ser explorados por un robot virtual y un conjunto de servicios para OpenCV .
Componentes

RDS tiene cuatro componentes principales:
- Tiempo de ejecución de concurrencia y coordinación (CCR)
- Servicios de software descentralizados (DSS)
- Lenguaje de programación visual (VPL)
- Entorno de simulación visual (VSE)
CCR y DSS también están disponibles por separado para su uso en aplicaciones comerciales que requieren un alto nivel de concurrencia y/o deben distribuirse entre varios nodos de una red. Este paquete se denomina CCR and DSS Toolkit.
Herramientas

Las herramientas que permiten desarrollar una aplicación MRDS contienen un entorno gráfico (Microsoft Visual Programming Language (VPL)), herramientas de línea de comandos que permiten trabajar con proyectos de Visual Studio (la versión VS Express es suficiente) en C#, y herramientas de simulación 3D.
- El lenguaje de programación visual es un entorno de desarrollo gráfico que utiliza un catálogo de servicios y actividades.
- Pueden interactuar gráficamente, un servicio o una actividad se representa mediante un bloque que tiene entradas y salidas que solo hay que arrastrar desde el catálogo a un diagrama.
- La vinculación se puede realizar con el ratón, permite definir si las señales son simultáneas o no, permite realizar operaciones sobre los valores transmitidos.
- VPL también permite generar el código de nuevos servicios “macro” a partir de diagramas creados por los usuarios.
- En VPL, es posible personalizar fácilmente los servicios para diferentes elementos de hardware.
- El entorno de simulación 3D RDS permite simular el comportamiento de robots en un mundo virtual utilizando la tecnología NVIDIA PhysX (motor 3D escrito originalmente por Ageia) que incluye física avanzada.
- Existen varios entornos de simulación en RDS. Estos entornos fueron desarrollados por SimplySim.
- Departamento
- Fábrica
- Casa moderna
- Exterior
- Urbano
- Hay muchos ejemplos y tutoriales disponibles para las diferentes herramientas, lo que permite una rápida comprensión de MRDS. Se han añadido varias aplicaciones a la suite, como Maze Simulator o Soccer Simulation, desarrollado por Microsoft .
- El sensor Kinect se puede utilizar en un robot en el entorno RDS. RDS también incluye un sensor Kinect simulado. Los servicios Kinect para RDS tienen licencia para uso comercial y no comercial. Dependen del SDK de Kinect para Windows.
Aplicaciones notables
- El proyecto de vehículos autónomos para el Gran Desafío Urbano DARPA de la Universidad de Princeton se programó con MRDS. [1]
- MySpace utiliza las bibliotecas básicas de computación paralela de MRDS , CCR y DSS, para una aplicación no robótica en el back end de su sitio. [2]
- La Universidad de Indiana utiliza MRDS en una aplicación no robótica para coordinar una red informática de alto rendimiento. [2]
- En 2008, Microsoft lanzó una competencia de robótica simulada llamada RoboChamps utilizando MRDS. Había cuatro desafíos disponibles: laberinto, sumo, urbano y explorador de Marte. El entorno simulado y los robots utilizados en la competencia fueron creados por SimplySim y la competencia fue patrocinada por Kia Motors.
- La sección de robótica y algoritmos de la competencia de software Imagine Cup de 2009 utiliza el entorno de simulación visual MRDS. Los desafíos de esta competencia también fueron desarrollados por SimplySim y son versiones mejoradas de los desafíos de RoboChamps.
Crítica
- La complicación y los gastos generales necesarios para ejecutar MRDS impulsaron a Princeton Autonomous Vehicle Engineering a convertir su sistema Prospect 12 de MRDS a IPC++. [3]
- El sitio web principal de RDS4 se actualizó por última vez el 29 de junio de 2012. (De hecho, el producto ya no existe).
Microsoft Robotics y el futuro
Microsoft Robotics Developer Studio no ha sido actualizado ni parcheado desde la versión 4.0, que se lanzó el 8 de marzo de 2012. El 22 de septiembre de 2014, como parte del plan de reestructuración de Microsoft , la división de Robótica de Microsoft Research fue suspendida, según un tweet de Ashley Feniello, desarrollador principal de la división de Robótica de Microsoft Research (MSR). Ahora es muy poco probable que MRDS vuelva a actualizarse, sin embargo, los miembros del foro (MVP) aún pueden ofrecer soporte limitado. [4]
Véase también
- Proyecto Player : utilizado en investigación y educación postsecundaria ( código abierto y gratuito )
- robots web
- Proyecto Chrono
- Tiempo de ejecución de concurrencia y coordinación
- Urbi
- Mapeo robótico
- Software de robot
- Kit de herramientas para la programación de robots móviles
- Arduino
- Sistema operativo robótico (ROS)
Referencias
- ^ "Documento técnico para el desafío Darpa" (PDF) . Archivado desde el original (PDF) el 2010-03-31 . Consultado el 2011-02-03 .
- ^ ab Worthington, David (1 de agosto de 2008). "El cambio de Microsoft a la computación paralela". SDTimes en la Web . Archivado desde el original el 15 de julio de 2009. Consultado el 2 de agosto de 2008 .
- ^ "Ingeniería de vehículos autónomos de Princeton - Sección de software". Pave.mycpanel.princeton.edu . Consultado el 8 de abril de 2019 .
- ^ Feniello, Ashley (20 de septiembre de 2014). "Lamentablemente, el equipo de robótica de Microsoft ha sido clausurado. Mi tarjeta de acceso dejará de funcionar mañana por la tarde... :-/". Twitter . Consultado el 20 de enero de 2016 .
Lectura adicional
- Morgan, Sarah (2008). Programación de Microsoft Robotics Studio . Microsoft Press . ISBN. 978-0-7356-2432-0.
- Johns, Kyle; Taylor, Trevor (2008). Estudio de desarrollo profesional de robótica de Microsoft . John Wiley & Sons . ISBN 978-0-470-14107-6.
- Kang, Shih-Chung; Chang, Wei-Tze; Gu, Kai-Yuan; Chi, Hung-Lin (2011). Desarrollo de robots con Microsoft Robotics Developer Studio . Chapman y Hall/CRC Press. ISBN 978-1-4398-2165-7.
Enlaces externos
- Sitio web oficial
- Páginas de robótica de Microsoft MSDN
- Microsoft Robotics Studio: una introducción
- Microsoft Robotics Studio Runtime: una introducción
- Muestras de Codeplex de MRDS (MRDS 2008 R3)
- Muestras adicionales del libro de texto Professional Robotics Developer Studio (MRDS 2008 R3)
- Comunidad Microsoft Robotics Studio – Turquía
- Grupo de noticias sobre robótica de Microsoft de Google Groups
- Página wiki de Channel9 sobre Microsoft Robotics Studio
- Páginas de www.Conscious-Robots.com para Microsoft Robotics Studio (MSRS)
- PhysX de Ageia Inicio
- Tutoriales y ejemplos de simuladores MSRS de Robubox Sitio web oficial
- SimplySim: empresa de simulación 3D de MRDS
- Imagine Cup 2009: Robótica y algoritmos