270 likes | 572 Views
Microsoft Robotics Studio. Tandy Trower General Manager Microsoft Robotics Group Microsoft Corporation. Microsoft Robotics Studio How we got here. Microsoft’s interest in robotics Engagement with the robotics community Think Week papers The CSA directive
E N D
Microsoft Robotics Studio Tandy Trower General Manager Microsoft Robotics Group Microsoft Corporation
Microsoft Robotics StudioHow we got here • Microsoft’s interest in robotics • Engagement with the robotics community • Think Week papers • The CSA directive • Initial research with community leaders
Microsoft Robotics StudioWhat we learned • Great excitement and potential • Motivator for science and math • Diverse community and skill set • Excellent thought leadership • Solving hard problems • Accessible hardware technology
Microsoft Robotics StudioWhat we learned • Challenges • Too much complexity/too many resources required • Lack of reusability • How to provide for reliability • Limited tools and technologies • Lack of choice • Difficulties in sharing • Transference of skills/experience • …
Microsoft Robotics Studio • A development platform for the robotics community, supporting a wide variety of users, hardware, and application scenarios Microsoft Robotics Studio Runtime • Concurrency • Services infrastructure Authoring Tools • Simulation Tool • Visual Programming Language Services and Samples • Samples and tutorials • Robot services • Robot models • Technology services
Microsoft Robotics StudioWhat is a robotics application? • An application is a composition of loosely-coupled components concurrently executing • Orchestration of sensors/actuators • User interface • Behavior Motor Bumper (Sensor) Message Box(Actuator) Orchestrator Infrared Detector (Sensor) Motor Bumper (Sensor)
Microsoft Robotics StudioKey runtime features • Concurrency and coordination runtime • Makes writing and managing asynchronous processes easy • Avoids need to understand manual threading, semaphores, etc. • Decentralized system services • Makes state observable, easily accessible • Provides for reusability and failure tolerance • Supports remote/distributed execution • Makes the programming model scalable
Service Port FIFO Handlers State Microsoft Robotics StudioServices – the basic building block • A service • Has structured state • Interacts using messages over ports • Supports handlers (encapsulate behaviors) • Basic operations • State retrieval and manipulation • Create and terminate • Notifications
Service Port FIFO Handlers State Microsoft Robotics StudioServices – the basic building block • Support dynamic discovery • Restartable • Provide simple abstraction for hardware and software • Provide aggregated, compositional functionality • Sensor fusion • Motor drive • Inherently distributed and asynchronous • Can have “partners”
Sensor services Microsoft Robotics StudioInteraction through the browser • Service state observable at all levels of the application • Services are capable of providing rich representation of data UI service Robot Joystick service Motor services Robotics Studio Runtime
Sensor services Microsoft Robotics Studio Driving a robot with the browser and JScript Robot Browser Motor services Dashboard Connect Scripting JS Service JS Service JS Service Robotics Studio Runtime
Disconnectedautonomous operation (with optional networked monitoring) Connected operation(remote execution on PC) Distributedexecution(execution across compute units) Microsoft Robotics StudioApplication deployment models • Supports standalone and distributed processing scenarios
Microsoft Robotics StudioExtensible to a wide variety of hardware
Microsoft Robotics StudioAuthoring tools • Simulation visualization tool • High resolution 3D rendering • Visual and physics views • High performance physics engine • PhysX™ supplied by Ageia Technology • Optional hardware acceleration • Makes technology accessible • Enables fast prototyping and debugging • Extensible by code or data
Microsoft Robotics StudioAuthoring tools • Web browser based programming/control • Scripting (e.g., JScript) • Windows Gadgets • Supported by multiple programming languages • Microsoft Visual Studio and VS Express (e.g., C#, VB.Net) • Microsoft Iron Python • 3rd party languages
Microsoft Robotics StudioAuthoring tools NOTE: Not included in the June 20 technical preview! • Visual Programming Tool • Dataflow editing • Simple connections • Building blocks • Model checking • Code generation • Dashboards • Robot models • Novice to expert
Microsoft Robotics StudioServices and samples • Over 15 tutorials • VB.Net, C#, JScript • Basic input and output • Autonomous navigation • Support for • LEGO® Mindstorms® RCX • LEGO® Mindstorms® NXT • fischertechnik® • MobileRobots Pioneer P3™ • Much more coming…stay tuned!
Microsoft Robotics StudioCommunity • Robotics Developer Center website • www.msdn.microsoft.com/robotics • Downloads • Bug reporting • Blogs • Newsgroups • Channel 9 videos and wiki • Technical Preview is available for free download
Microsoft Robotics StudioUniversity support • Bryn Mawr College • Carnegie Mellon University • Cornell University • Georgia Tech • Korea Institute of Science and Technology • Massachusetts Institute of Technology • Stanford University • University of Pennsylvania • University of Pisa • University of Southern California • University of Washington
SummaryMicrosoft Robotics Studio • A new application development platform for the robotics community, designed for a wide variety of users, hardware, and scenarios • Designed to address some of the common challenges facing those developing robot applications • Concurrency and distribution • Scalability • Code reuse and reliability • Authoring
SummaryEnabling the robotics community • Creating a platform that supports enabling contributions in different domains • Hardware development • Low-level software and high-level behavior and orchestration • Development tools • UX and simulation
SummaryEnabling the robotics community • Providing choice • Providing a growth path
A Closing Comment • Looking to the past • Looking to the future • The second age of the PC
Microsoft Robotics Studio Download the community technical preview http://www.msdn.microsoft.com/robotics
© 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.