About the Microsoft Robotics Developer Studio, the backgrounds and research behind it and how the technological development from the personal computer towards personal robots went on.
<ul><li> Vom PC zum Roboter Fraunhofer IPA Technologieforum 17.10. 2006 Alexander Brndle Andreas Heil Microsoft Research Cambridge 1 </li> <li> Microsoft Research World Wide Redmond Cambridge Beijing San Francisco Silicon Valley Bangalore 6 Research Labs 3 Continents 700+ Researchers: computer scientists, mathematicians, social scientists, architects and designers, computational scientists 55+ Areas of research Significant impact on Microsoft Products Strong partnership with leading universities worldwide2 </li> <li> The Robotics Market Potential Service and consumer markets just emerging Remote assistance/presence Worldw ide Robotics Market Grow th Assistive Facilities maintenance Security Education 70000000 Home Entertainment 60000000 Mediacal/Welfare Public Sector 50000000 Bio-Industrial Market Size $1,000s More applications are needed to Manufacturing propel the market 40000000 30000000 A lack of reusability keeps robot 20000000 developers endlessly re-solving the 10000000 same software problems 0 1995 2000 2005 2010 2025 Concentrating on the mechanics of Year robotics rather than the science of robotics Concurrency and complexity plague all Source: Japan Robotics Association software engineering and especially robotics Development requires too much effort A robot in every home and knowledge3 </li> <li> Apropos home - Apropos robot New Requirements Ultra Heterogeneity, Distributed environments, Dynamic Configuration, Context-Awareness, Personalization, Extensibility, Reliability, Security, Privacy protection, Usability, Autonomy Autonomy Ubiquitous computing environments should be deployed incrementally. Our living space is not a demonstration room. We like to replace existing objects to new objects when necessary. How can software infrastructures help to decrease the complexities? What is a robot? Remote control? Autonomous? Mobile? ? Intelligent? Humanoid? Appliance?4 </li> <li> Microsoft & Robotics Experience Groups Systems Microsoft Research PC Ecosystem (desktop, web, Enabling technologies mobile, home) Human Robot Interaction XP, XP Embedded, CE (real- Personal Robotics time) Educational Robotics Development environment and Programming environments tools Microsoft Robotics Group Programming IDE Microsoft Robotics Studio Debugging and optimization Center for innovative Robotics Existing applicable (Carnegie Mellon University) technologies External Research Office Speech SDK Real-time Communications SDK RFID SDK5 </li> <li> Working with Partners Robotics hardware manufacturers (OEM) Robotics hardware distributors Robotics software developers (ISVs) Robotics curriculum/educational agencies CoroWare Inc, KUKA Robot Group, Robosoft, RoboticsConnection, White Box Robotics Inc, fischertechnik, LEGO Group, MobileRobots Inc., Parallax Inc. and Phidgets Inc., tbc Whitebox Video Previews: ABB, InTouch Health, Lynxmotion Inc., RoboDynamics Corp., Senseta, Trossen Robotics and Ugobe Inc., as well as with many leading universities and research institutes, including Bryn Mawr College, Cornell University, Georgia Tech, Korea Institute of Technology, Massachusetts Institute of Technology, Stanford University, University of Pennsylvania, University of Pisa, University of Southern California, and the University of Washington.6 </li> <li> Adressing the needs Develop a software development platform (SDK) that Extends the PC and web ecosystem to robotics Targets development of academic research, hobbyist, and commercial applications for robotics Supports a wide variety of robotics applications (e.g. remote presence, security, maintenance, education, entertainment) Support scenarios for single robots, multiple robots, and robots operating with other computing technologies Provides layered API and driver framework that scales across multiple hardware devices and platforms Is extensible; encourages third party Commercial Hobby hardware and software support Development Academic Hobby Research Hobby Hobby Education/ Hobby Entertainment7 </li> <li> Non-Goals To mandate how robotics software be constructed The system is meant to be ala carte8 </li> <li> The Microsoft Robotics Studio A lightweight concurrency and services oriented runtime Handling of sensory input and controlling actuators Based on synchronous message passing Decentralized System Services (DSS) facilitating tasks and basic services such as debugging, logging, monitoring, security, discovery, and data persistence Authoring/development tools Visual programming editor Simulation Message debugging Technology libraries and basic algorithms Code samples and documentation9 </li> <li> Development Model Application model Build complex systems from smaller, simpler decentralized services Application Model Distribution model Applications are a collection of distributed services Distribution Discovery of functionality via contract and Model categories, Self-organizing Interaction via Messaging Programming model Programming Coordination of messages Model No manual creation of threads, locks, Figure semaphores10 </li> <li> Runtime Environment Orchestration Orchestration Application Decentralized System Services Robotic Services Services Concurrency and Device Services Library Services Coordination Activation Discovery Robot Model Runtime Device 1 Vision Services Diagnostics Storage Vis/Sim Device 2 SLAM Terminal UX Messaging Transport Signal Processing SPL Hardware Abstraction Layer HAL11 </li> <li> Service Composition Services arent just for devices Services can be compose to form other services Services can represent passive or non-existent devices. Fused sensory data can be re-exposed as an independent service Trajectory Drive Pose Motor Encoder Services Steering Servo Robot Model ServiceRobot Model Wheel Base Geometry12 </li> <li> Runtime Services Demo Autonomous operation & manual control (Pioneer 3) Pioneer Onboard CPU Client CPU Arcos Core Sick-LRF Drive By Wire Joy Stick Arcos Bumper Arcos Sonar Arcos Motor Runtime Environment Runtime Environment SH2 Motors Sonar Array Bumper Array Speaker13 </li> <li> http://msdn.microsoft.com/robotics14 </li> <li> Example fischertechnik15 </li> <li> Layered and Distributed Application Learns and begins to favors specific behavioral characteristics. Interacts with the orchestration layer to achieve the favored patterns. Behavior Control Layer Defines and facilitates communication patterns that coordinate information processing amongst lower level services. Orchestration Layer Provides functionality abstraction, computational encapsulation, failure isolation, distributed and concurrent execution, via software services . Services Layer Executes algorithms that require near real-time computation and deterministic time control. Signal Processing Layer Directly interfaces with the physical robotics hardware - Sensors and Actuators. Hardware Abstraction Layer16 </li> <li> Summary Robotics and home applications are merging Complexity reducing software infrastrcutures are needed Microsoft Robotics Studio Extend/bridge PC/Web to robotics Rich authoring/development tools Enable third parties to participate and contribute Current Status: CTP Talk to us!17 </li> </ul>