SlideShare une entreprise Scribd logo
1  sur  20
HUMANOIDS‟06
                                      Presented by

Lightweight Concurrency               Andreas Heil
                                      Alexander Brändle

                                      Date
A Distributed Platform for Creating   04th December 2006


Robotics Applications
Microsoft Research Overview




         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 worldwide
Microsoft & Robotics

        Experience                                Groups
  Systems                             Microsoft Research

  • PC Ecosystem (desktop, web,       •   Enabling Technologies
    mobile, home)                     •   Human Robot Interaction
  • XP, XP Embedded, CE (real-time)   •   Personal Robotics
                                      •   Educational Robotics
  Development environment and tools   •   Programming Environments

  • Programming IDE                   Microsoft Robotics Groups
  • Debugging and Optimization
                                      • Microsoft Robotics Group
  Existing applicable Technologies      Redmond
                                      • Center for Innovative Robotics
  • Speech                              Carnegie Mellon University
  • Real-time Communications          • External Research Office
  • Infrastructure                      Cambridge
2
                                                                                 1
                                                                                                    Real vacuum cleaner




     Filtering unnecessary Information
     Household Devices (Microwave, Fridge)
                                                                                                    Robot with integrated Communication Capabilities1




                                                                                                    Robot loading Dishwasher2
                                                                                                    Tourguide3
                                                                                                    Robot adapting to individual Needs




                                                                                                    Gaming Robots




   3 Learning about new Environments by giving a Tour to it, after that it can re-give that tour.
                                                                                                                                                        Humanoids – where are we?




                                                                                                    Robot helping handicapped People




                                                                                                    Ironing Robot
                                                                                                    Proactive Robots
                                                                                                    Robots understanding human Activities



                                                                                                    24h Assistant
                                                                                                    Companion for elderly People
* EURON Workshop 2005
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) based on the
  Concurrency and Coordination Runtime (CCR) 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
Existing Open Software Platform


 •   Robotics Hardware manufacturers (OEM)
 •   Robotics Hardware Distributors                           Applications and Tools
 •   Robotics Software Developers (ISVs)
 •   Robotics curriculum/Educational Agencies
 •   Community Platforms                                         Authoring Tools

                                                              Microsoft Visual Studio   Technology Libraries
                                                                                           Robot Models
                                                                                          Device Services
                                                              Runtime Environment         (OEM, ISV, IRV)
     CoroWare Inc, KUKA Robot Group, Robosoft,                 Robotic Application
     RoboticsConnection, White Box Robotics Inc,                     Runtime

     fischertechnik, LEGO Group, MobileRobots Inc.,
     Parallax Inc. and Phidgets Inc., ScatterWeb, …


     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.
Service Based Architecture

                                   Services

            Vision                 • Can be used to abstract hardware
            Knowledge

                                   • Can be composed and provide
            Body                     aggregated functionality (sensor
            Arm
                                     fusion, for example)
              Communication

                                   • Are inherently remotable and
            Motion                   participate in distributed operations
             Sensors
                                   • Restartable and mobile (state
             Internal perception
                                     transfer)
              Network perception

                                   • Must be inherently asynchronous
Service Based Architecture

                                   Services are the basic building
                                   blocks
            Vision
            Knowledge              • Structured state

            Body                   • Behavior
            Arm

              Communication        • Partner services

            Motion                 • Contracts
             Sensors

             Internal perception

              Network perception
Service Based Architecture

                                   Nodes

            Vision                 • Services run within an execution
            Knowledge                context called a „node‟

            Body                   • Nodes expose http and SOAP/TCP
            Arm
                                     endpoints
              Communication

                                   • 3,000 – 50,000 Messages/s
            Motion

             Sensors

             Internal perception

              Network perception
Robotics Application
An application is a composition of loosely-coupled services concurrently executing across
scopes

• Interactions described using service contacts
• Components are networked
• Provides isolation between components
   > Reliability – ability to restart independently, replaceable/updatable
   > Parallelism
   UI

                               Main Port



                                                                                                               Main Port

                               Service
                                                                                                Private Port
                                Code
                                State      Main Port                                                             Service
                                                                                         Main Port
                                                                                                                 Code
                   Main Port
Private Port                                                                                                      State
                                                                       Private Port
                                             Service
               Service                       Code                                     Service
               Code                           State                                   Code
               State                                                                  State


                                                                                                     H/W                   H/W
* Example: Model car + sensors
Simulation Capabilities
• High-End Graphics Support
 • Easy programmable simulation environment


• Ageia PhysX Engine
 • Hardware support
 • SDK free available

• Simulated Services
 • Manufacturer support


• Simulated Camera View
 • Generic service
Community Work: KHR1




                * L. Lessieux, http://www.lessieux.com/mywiki/index.php?title=Microsoft_Robotics_SDK_Work
Outlook
• Why is Microsoft not developing their own robot?
• Microsoft Robotics Studio
 > Free for personal & academic use
 > Available as CTP (November CTP)
 > 30,000 downloads since May „06
 > Improved visualization
 > Package based deployment
 > Increasing adaption by HW manufacturers
 > Final version end of Dec 2006
 > CCR / DSS maybe available as
   separate DL
 > http://msdn.microsoft.com/robotics/

 > Multiple languages: C#, C++, VB,
   Python, VPL
 > Designed to support multicore /
   multiprocessor / multimachine
 > Good News: Hard real time support
   in future (Win CE)

 > No humanoids yet
Thank you for your attention.
Backup
Robotics Studio Architecture
  Orchestration




                                                                    Orchestration Application


                                         Decentralized System Services    Robotic Services                 Services
                      Concurrency and
                       Coordination




                                                                                             Device Services     Library Services
                                        Activation         Discovery       Robot Model
                         Runtime




                                                                                               Device 1               Vision
Services




                                        Diagnostics         Storage          Vis/Sim           Device 2               SLAM
                                                                                                   …                    …
                                         Terminal              UX



                                                           Messaging Transport
  SPL




                                                                                                  Signal Processing

                                                                  Hardware Abstraction Layer
  HAL
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 Layer
Service Composition

 • Services aren‟t 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
 Services




                                                    Encoder           Steering Servo

                                                 Robot Model Service
Robot Model




                                         Wheel             Base Geometry
Authoring Environment
Standalone & Visual Studio
integrated
Scales with programmer skill                                       Visual Studio
• Helps beginners with drag/drop




                                    IDE
  programming
• Assists advanced developer with
  service orchestration                                                Robot Package

                                                          Robot Model Designer          Code Generator
• Conceptually consistent with
  conventional programming



                                               Tool Box
                                                          Application Designer         Debugging services
  languages
                                    Packages
                                                            Service Contract            Visualization and
• Context based toolbox                                        Designer                    Simulation


Support Rapid Application                                 Deployment Designer           Code Downloader

Development via visual
programming, simulation and
visualization.
Supports programming of
distributed scenarios
Extensible to support other
hardware
Lightweight Concurrency

Contenu connexe

Tendances

cvpr2011: human activity recognition - part 6: applications
cvpr2011: human activity recognition - part 6: applicationscvpr2011: human activity recognition - part 6: applications
cvpr2011: human activity recognition - part 6: applications
zukun
 
Simone Mora - PhD Interview at ITU
Simone Mora - PhD Interview at ITU Simone Mora - PhD Interview at ITU
Simone Mora - PhD Interview at ITU
Simone Mora
 
Pharos Social Map Based Recommendation For Content Centric Social Websites
Pharos Social Map Based Recommendation For Content Centric Social WebsitesPharos Social Map Based Recommendation For Content Centric Social Websites
Pharos Social Map Based Recommendation For Content Centric Social Websites
gu wendong
 
A NOVAL ARTECHTURE FOR 3D MODEL IN VIRTUAL COMMUNITIES FROM FACE DETECTION
A NOVAL ARTECHTURE FOR 3D MODEL IN VIRTUAL COMMUNITIES FROM FACE DETECTIONA NOVAL ARTECHTURE FOR 3D MODEL IN VIRTUAL COMMUNITIES FROM FACE DETECTION
A NOVAL ARTECHTURE FOR 3D MODEL IN VIRTUAL COMMUNITIES FROM FACE DETECTION
IJASCSE
 
Smarter Cities Research in Ireland 20120113
Smarter Cities Research in Ireland 20120113Smarter Cities Research in Ireland 20120113
Smarter Cities Research in Ireland 20120113
urbansystemssymposium
 
SOFIA Pilots Brochure Final Set
SOFIA Pilots Brochure Final SetSOFIA Pilots Brochure Final Set
SOFIA Pilots Brochure Final Set
Sofia Eu
 
Visual Dataflow Coordination2010
Visual Dataflow Coordination2010Visual Dataflow Coordination2010
Visual Dataflow Coordination2010
alombide
 

Tendances (20)

Embodied Intelligence: The four messages
Embodied Intelligence: The four messagesEmbodied Intelligence: The four messages
Embodied Intelligence: The four messages
 
cvpr2011: human activity recognition - part 6: applications
cvpr2011: human activity recognition - part 6: applicationscvpr2011: human activity recognition - part 6: applications
cvpr2011: human activity recognition - part 6: applications
 
Simone Mora - PhD Interview at ITU
Simone Mora - PhD Interview at ITU Simone Mora - PhD Interview at ITU
Simone Mora - PhD Interview at ITU
 
PhD Proposal Presentation
PhD Proposal PresentationPhD Proposal Presentation
PhD Proposal Presentation
 
Pharos Social Map Based Recommendation For Content Centric Social Websites
Pharos Social Map Based Recommendation For Content Centric Social WebsitesPharos Social Map Based Recommendation For Content Centric Social Websites
Pharos Social Map Based Recommendation For Content Centric Social Websites
 
A NOVAL ARTECHTURE FOR 3D MODEL IN VIRTUAL COMMUNITIES FROM FACE DETECTION
A NOVAL ARTECHTURE FOR 3D MODEL IN VIRTUAL COMMUNITIES FROM FACE DETECTIONA NOVAL ARTECHTURE FOR 3D MODEL IN VIRTUAL COMMUNITIES FROM FACE DETECTION
A NOVAL ARTECHTURE FOR 3D MODEL IN VIRTUAL COMMUNITIES FROM FACE DETECTION
 
VR- virtual reality
VR- virtual realityVR- virtual reality
VR- virtual reality
 
Excursions into Blended Reality
Excursions into Blended RealityExcursions into Blended Reality
Excursions into Blended Reality
 
Smarter Cities Research in Ireland 20120113
Smarter Cities Research in Ireland 20120113Smarter Cities Research in Ireland 20120113
Smarter Cities Research in Ireland 20120113
 
Th
ThTh
Th
 
Test
TestTest
Test
 
Global Futures Forum (Washington, D.C.)
Global Futures Forum (Washington, D.C.)Global Futures Forum (Washington, D.C.)
Global Futures Forum (Washington, D.C.)
 
Virtual Reality
Virtual RealityVirtual Reality
Virtual Reality
 
Augmented Human 2018
Augmented Human 2018Augmented Human 2018
Augmented Human 2018
 
D0361015021
D0361015021D0361015021
D0361015021
 
Presentation Strate Collège digital culture - Crossing Talents
Presentation Strate Collège digital culture - Crossing TalentsPresentation Strate Collège digital culture - Crossing Talents
Presentation Strate Collège digital culture - Crossing Talents
 
SOFIA Pilots Brochure Final Set
SOFIA Pilots Brochure Final SetSOFIA Pilots Brochure Final Set
SOFIA Pilots Brochure Final Set
 
6 Elements Of the Augmented Reality Universe
6 Elements Of the Augmented Reality Universe6 Elements Of the Augmented Reality Universe
6 Elements Of the Augmented Reality Universe
 
Visual Dataflow Coordination2010
Visual Dataflow Coordination2010Visual Dataflow Coordination2010
Visual Dataflow Coordination2010
 
3D context-aware mobile maps for tourism - ENTER2011 PhD Workshop
3D context-aware mobile maps for tourism - ENTER2011 PhD Workshop3D context-aware mobile maps for tourism - ENTER2011 PhD Workshop
3D context-aware mobile maps for tourism - ENTER2011 PhD Workshop
 

Similaire à Lightweight Concurrency

Page 1 of 14 ENS4152 Project Development Proposal a.docx
Page 1 of 14  ENS4152 Project Development Proposal a.docxPage 1 of 14  ENS4152 Project Development Proposal a.docx
Page 1 of 14 ENS4152 Project Development Proposal a.docx
karlhennesey
 
Page 1 of 14 ENS4152 Project Development Proposal a.docx
Page 1 of 14  ENS4152 Project Development Proposal a.docxPage 1 of 14  ENS4152 Project Development Proposal a.docx
Page 1 of 14 ENS4152 Project Development Proposal a.docx
smile790243
 
Page 1 of 14 ENS4152 Project Development Proposal a.docx
Page 1 of 14  ENS4152 Project Development Proposal a.docxPage 1 of 14  ENS4152 Project Development Proposal a.docx
Page 1 of 14 ENS4152 Project Development Proposal a.docx
jakeomoore75037
 
Figure 1
Figure 1Figure 1
Figure 1
butest
 
Figure 1
Figure 1Figure 1
Figure 1
butest
 
Figure 1
Figure 1Figure 1
Figure 1
butest
 
Application development for the internet of things
Application development for the internet of thingsApplication development for the internet of things
Application development for the internet of things
Pankesh Patel
 

Similaire à Lightweight Concurrency (20)

Vom PC zum Roboter
Vom PC zum RoboterVom PC zum Roboter
Vom PC zum Roboter
 
My Robot
My RobotMy Robot
My Robot
 
Robotics
RoboticsRobotics
Robotics
 
Robotics
RoboticsRobotics
Robotics
 
CHAPTER 9-EMERGING TRENDS.pptx
CHAPTER 9-EMERGING TRENDS.pptxCHAPTER 9-EMERGING TRENDS.pptx
CHAPTER 9-EMERGING TRENDS.pptx
 
Robotics
RoboticsRobotics
Robotics
 
Week14 final
Week14 finalWeek14 final
Week14 final
 
Page 1 of 14 ENS4152 Project Development Proposal a.docx
Page 1 of 14  ENS4152 Project Development Proposal a.docxPage 1 of 14  ENS4152 Project Development Proposal a.docx
Page 1 of 14 ENS4152 Project Development Proposal a.docx
 
Page 1 of 14 ENS4152 Project Development Proposal a.docx
Page 1 of 14  ENS4152 Project Development Proposal a.docxPage 1 of 14  ENS4152 Project Development Proposal a.docx
Page 1 of 14 ENS4152 Project Development Proposal a.docx
 
Page 1 of 14 ENS4152 Project Development Proposal a.docx
Page 1 of 14  ENS4152 Project Development Proposal a.docxPage 1 of 14  ENS4152 Project Development Proposal a.docx
Page 1 of 14 ENS4152 Project Development Proposal a.docx
 
Figure 1
Figure 1Figure 1
Figure 1
 
Figure 1
Figure 1Figure 1
Figure 1
 
Figure 1
Figure 1Figure 1
Figure 1
 
robotics.pptx
robotics.pptxrobotics.pptx
robotics.pptx
 
569637 634222725772371250
569637 634222725772371250569637 634222725772371250
569637 634222725772371250
 
Ubiquitous Computing and Context-Aware Services
Ubiquitous Computing and Context-Aware ServicesUbiquitous Computing and Context-Aware Services
Ubiquitous Computing and Context-Aware Services
 
Robots in Human Environments
Robots in Human EnvironmentsRobots in Human Environments
Robots in Human Environments
 
Application development for the internet of things
Application development for the internet of thingsApplication development for the internet of things
Application development for the internet of things
 
Interaction Paradigms
Interaction ParadigmsInteraction Paradigms
Interaction Paradigms
 
Final-Report
Final-ReportFinal-Report
Final-Report
 

Plus de Andreas Heil

Einführung in .NET
Einführung in .NETEinführung in .NET
Einführung in .NET
Andreas Heil
 

Plus de Andreas Heil (7)

Windows 8
Windows 8Windows 8
Windows 8
 
Anwendungsentwicklung fuer Intelligente Umgebungen im Web Engineering
Anwendungsentwicklung fuer Intelligente Umgebungen im Web EngineeringAnwendungsentwicklung fuer Intelligente Umgebungen im Web Engineering
Anwendungsentwicklung fuer Intelligente Umgebungen im Web Engineering
 
Foederiertes Geraete- und Dienstmanagement mit Web-Technologien
Foederiertes Geraete- und Dienstmanagement mit Web-TechnologienFoederiertes Geraete- und Dienstmanagement mit Web-Technologien
Foederiertes Geraete- und Dienstmanagement mit Web-Technologien
 
Programming Robots
Programming RobotsProgramming Robots
Programming Robots
 
Ethics of AI
Ethics of AIEthics of AI
Ethics of AI
 
Einführung in .NET
Einführung in .NETEinführung in .NET
Einführung in .NET
 
Student Technology Conference 2004
Student Technology Conference 2004Student Technology Conference 2004
Student Technology Conference 2004
 

Dernier

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Dernier (20)

ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 

Lightweight Concurrency

  • 1. HUMANOIDS‟06 Presented by Lightweight Concurrency Andreas Heil Alexander Brändle Date A Distributed Platform for Creating 04th December 2006 Robotics Applications
  • 2. Microsoft Research Overview 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 worldwide
  • 3. Microsoft & Robotics Experience Groups Systems Microsoft Research • PC Ecosystem (desktop, web, • Enabling Technologies mobile, home) • Human Robot Interaction • XP, XP Embedded, CE (real-time) • Personal Robotics • Educational Robotics Development environment and tools • Programming Environments • Programming IDE Microsoft Robotics Groups • Debugging and Optimization • Microsoft Robotics Group Existing applicable Technologies Redmond • Center for Innovative Robotics • Speech Carnegie Mellon University • Real-time Communications • External Research Office • Infrastructure Cambridge
  • 4. 2 1 Real vacuum cleaner Filtering unnecessary Information Household Devices (Microwave, Fridge) Robot with integrated Communication Capabilities1 Robot loading Dishwasher2 Tourguide3 Robot adapting to individual Needs Gaming Robots 3 Learning about new Environments by giving a Tour to it, after that it can re-give that tour. Humanoids – where are we? Robot helping handicapped People Ironing Robot Proactive Robots Robots understanding human Activities 24h Assistant Companion for elderly People * EURON Workshop 2005
  • 5. 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) based on the Concurrency and Coordination Runtime (CCR) 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
  • 6. Existing Open Software Platform • Robotics Hardware manufacturers (OEM) • Robotics Hardware Distributors Applications and Tools • Robotics Software Developers (ISVs) • Robotics curriculum/Educational Agencies • Community Platforms Authoring Tools Microsoft Visual Studio Technology Libraries Robot Models Device Services Runtime Environment (OEM, ISV, IRV) CoroWare Inc, KUKA Robot Group, Robosoft, Robotic Application RoboticsConnection, White Box Robotics Inc, Runtime fischertechnik, LEGO Group, MobileRobots Inc., Parallax Inc. and Phidgets Inc., ScatterWeb, … 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.
  • 7. Service Based Architecture Services Vision • Can be used to abstract hardware Knowledge • Can be composed and provide Body aggregated functionality (sensor Arm fusion, for example) Communication • Are inherently remotable and Motion participate in distributed operations Sensors • Restartable and mobile (state Internal perception transfer) Network perception • Must be inherently asynchronous
  • 8. Service Based Architecture Services are the basic building blocks Vision Knowledge • Structured state Body • Behavior Arm Communication • Partner services Motion • Contracts Sensors Internal perception Network perception
  • 9. Service Based Architecture Nodes Vision • Services run within an execution Knowledge context called a „node‟ Body • Nodes expose http and SOAP/TCP Arm endpoints Communication • 3,000 – 50,000 Messages/s Motion Sensors Internal perception Network perception
  • 10. Robotics Application An application is a composition of loosely-coupled services concurrently executing across scopes • Interactions described using service contacts • Components are networked • Provides isolation between components > Reliability – ability to restart independently, replaceable/updatable > Parallelism UI Main Port Main Port Service Private Port Code State Main Port Service Main Port Code Main Port Private Port State Private Port Service Service Code Service Code State Code State State H/W H/W * Example: Model car + sensors
  • 11. Simulation Capabilities • High-End Graphics Support • Easy programmable simulation environment • Ageia PhysX Engine • Hardware support • SDK free available • Simulated Services • Manufacturer support • Simulated Camera View • Generic service
  • 12. Community Work: KHR1 * L. Lessieux, http://www.lessieux.com/mywiki/index.php?title=Microsoft_Robotics_SDK_Work
  • 13. Outlook • Why is Microsoft not developing their own robot? • Microsoft Robotics Studio > Free for personal & academic use > Available as CTP (November CTP) > 30,000 downloads since May „06 > Improved visualization > Package based deployment > Increasing adaption by HW manufacturers > Final version end of Dec 2006 > CCR / DSS maybe available as separate DL > http://msdn.microsoft.com/robotics/ > Multiple languages: C#, C++, VB, Python, VPL > Designed to support multicore / multiprocessor / multimachine > Good News: Hard real time support in future (Win CE) > No humanoids yet
  • 14. Thank you for your attention.
  • 16. Robotics Studio Architecture Orchestration Orchestration Application Decentralized System Services Robotic Services Services Concurrency and Coordination Device Services Library Services Activation Discovery Robot Model Runtime Device 1 Vision Services Diagnostics Storage Vis/Sim Device 2 SLAM … … Terminal UX Messaging Transport SPL Signal Processing Hardware Abstraction Layer HAL
  • 17. 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 Layer
  • 18. Service Composition • Services aren‟t 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 Services Encoder Steering Servo Robot Model Service Robot Model Wheel Base Geometry
  • 19. Authoring Environment Standalone & Visual Studio integrated Scales with programmer skill Visual Studio • Helps beginners with drag/drop IDE programming • Assists advanced developer with service orchestration Robot Package Robot Model Designer Code Generator • Conceptually consistent with conventional programming Tool Box Application Designer Debugging services languages Packages Service Contract Visualization and • Context based toolbox Designer Simulation Support Rapid Application Deployment Designer Code Downloader Development via visual programming, simulation and visualization. Supports programming of distributed scenarios Extensible to support other hardware