Robots Unlimited - Microsoft Research

advertisement
Robots Unlimited
PHD Summerschool
July 2006
Alexander Brändle
Marco Combetto
1
Agenda
•
•
•
•
2
Who we are?
Why robotics?
Activity overview
Future ideas
Intelligent Environments Team
Alexander
Braendle
3
Marco
Combetto
Pierre-Louis
Xech
Andreas
Heil
(PHD Student)
Why robotics?
•
How will Future Environments look like?
– Challenges/Needs
– Personal Devices, Embedded Devices, Sensors, Robots, Appliances?
– Enabling technologies,Programming paradigms,Interaction paradigms?
•
How will future applications look like?
– Wide range of user types?
– Mixing real and virtual world?
Robots could form a part of it!
4
The Robotics Wave
• Service and consumer markets
just emerging
–
–
–
–
–
–
Remote assistance/presence
Assistive
Facilities maintenance
Security
Education
Entertainment
• Academic Research
–
–
–
–
–
Complex topic
Moving from 8/16 to 32 bit
Lots of hand-coded solutions
Education and Hobbyist channel
Still mostly 8 bit, starting to shift
• Strong governmental interest
worldwide
5
EURON roadmap:
2015 -> It‘s all about software
Robots!
•
Wide range of applications
– Commercial use
– Academic use
– Personal use
•
How to program them?
•
Challenges
–
–
–
–
–
–
–
–
–
6
Complexity
Reusability
Reliability
Resources
Tools
Technologies
Choice
Sharing
Transference of skills/experience
Links
• European Robotics Network
(EURON)
• European Robotics Platform
(EUROP)
• IEEE RAS Technical Commitee on
‚Programming Environments in
Robotics and Automation‘
7
Robots, too?
• Software
–
–
–
–
–
Internet Explorer
Media Player
MS Agent
Mobile Phones
…
Definition: A robot is a device, hard- or software with
the capability of sensing and (re-)acting.
8
Robotics at Microsoft [Research (Cambridge)]
Robots in human environments
• End-user programming
– Developer Tools (FischertechnikDemo, Scatterweb-Demo)
– Visual Programming (.FUN-Demo)
– End-user „debugging“
– Microsoft Robotics Studio
– Coding4Fun
• Enabling new applications
–
–
–
–
9
Emotional oriented computing
Personal robotics
Self-reconfigurable structures
Learn from interaction with animals
The Fischertechnik ROBO Interface
– The in- and outputs
•
•
•
•
10
8 digital inputs
2 digital and analog distance sensors
4 analog sensors for resistance and voltage
4 motors with 8 different speeds
• The board
•
•
•
•
•
TS%SystemRoot%\System32\mstsc.exe
Serial port, COM, RS232
USB
Infrared
R/F module available
Ethernet for the next
hardware revision planned
Adding Control
– Now we want to control the robot
– Let‘s take another off the shelf product
– Ordinary Joystick
+
11
Coding4Fun
http://msdn.microsoft.com/coding4fun/
12
Integrating Sensors
– Sensors are they eyes and ears of robots
– Increasing Demand for easy robust sensor platform from biology, ecology, civil
engineering et al.
How to get easy access to Sensor Nodes systems
A challenge on it‘s own:
13
•
Where are sensor node platforms
heading?
•
Dealing with vast amounts of real-time
data becoming available
Sensor Networks in the real world
•
Robustness …
–
–
–
–
–
–
–
•
Bluetooth, …
GW
SN
SN
SN
SN
SN
SN
SN
Realistic simulation tools
Heterogeneous testbeds
Useful traces
Tool integration (in well know platforms)
Development for heterogeneous systems
SN
GW
SN
SN
GW
GW
SN
…Better development support
–
–
–
–
–
14
WSNs have to work 24/7
WSNs have to offer uniform APIs
Long-lived, autonomous networks
Self-organizing and energy efficient
Routing
Data aggregation
Deployment & Setup
ScatterWeb/.NET
SN
Sensors (ScatterWeb)
An open and flexible platform for rapid protoyping & implementation of
wireless sensor networks
•
Nodes
–
with/without sensors
•
Sensors
–
•
•
–
Luminosity, noise detection,
vibration, PIR movement detection,
Microphone/speaker
IR sender/receiver
stand-alone/modular
•
–
•
Gateways
–
•
15
WLAN, Ethernet, Bluetooth, GPS, GSM/GPRS, USB, RS485 , serial…
Software
–
–
–
•
Acceleration, humidity, temperature, luminosity, noise detection,
vibration, PIR movement detection on demand
Stand-by: 7.6µA, 5 years life-time with AA battery and 1% duty-cycle
Management, flashing, routing, ns-2 simulation models
TCP/IP, web server (http://193.10.67.150/), Contiki, TinyOS, …
Basic functions for energy management, routing
www.scatterweb.net
Jochen Schiller,Free University Berlin
.NET for ScatterWeb
• Extend the .NET tools and architecture to small devices
•
•
•
•
•
•
•
16
Sensor world available to every
developer
Easy access to sensor values, events,
and functions
Understandable namespaces and
interfaces
Support for IntelliSense and dynamic
help
Well known programming model
(events, methods, properties)
Extensibility of the nodes’ logic (Tiny
C#) and instant IntelliSense-Update
Development, deployment and
debugging within Visual Studio
Jochen Schiller,Free University Berlin
A first step
• Attractive for developers
• End-users?
17
.FUN
18
•
A compelling & engaging
programmable environment
to play & learn for children
(introduce children to
Computing in new ways)
•
Make technologies of
tomorrow accessible to non
technical market (children,
nurse, elderly, machine
operator)
•
Linking real and virtual world
•
Wider market potential of
Robotics (Industrial,
Assistive technology, new
consumer products, health)
Technical University Berlin
Next steps
•
•
•
•
19
Keep graphical representation
Using context data
Domain specific language
Changing the paradigm …
Integrating a Context Server 1/2
Raw Sensor Data
Sensors
Context Events
Context Server
Application(s)
DB
Context Requests
20
Torben Weis, University of Stuttgart
Integrating a Context Server 2/2
Raw Sensor Data
Context Simulator
Context Events
Context Server
Application(s)
DB
3D Data
21
Context Requests
Torben Weis, University of Stuttgart
22
Torben Weis, University of Stuttgart
Microsoft Robotics Studio
A development platform for 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
•
Make it easy to manage asynchronous components
Avoid need to understand manual threading, semaphores, etc.
•Provide a scalable programming model
•Make state observable, easily accessible
•Provide for reusability and failure
•Support component discovery and composition
•Support remote/distributed execution
25
Microsoft Robotics Studio
Key Runtime Features
• Support standalone and distributed processing scenarios
Connected
operation
(remote execution on PC)
26
Disconnected
autonomous operation
(with optional networked monitoring)
Distributed execution
(execution across compute units)
Microsoft Robotics Studio
• Extensible to a wide variety of hardware
27
Microsoft Robotics Studio
Services and Samples
• Over 15 tutorials
– VB.Net, C#, JScript
• Support for
–
–
–
–
28
LEGO® Mindstorms® RCX
LEGO® Mindstorms® NXT
fischertechnik®
MobileRobots Pioneer P3™
Microsoft Robotics Studio
Other University Support
•
•
•
•
•
•
•
•
•
•
29
Bryn Mawr College
Carnegie Mellon University
Cornell University
Georgia Tech
Massachusetts Institute of Technology
Stanford University
University of Pennsylvania
University of Pisa
University of Southern California
University of Washington
Robotics at Microsoft [Research (Cambridge)]
Robots in human environments
• End-user programming
– Developer Tools (FischertechnikDemo, Scatterweb-Demo)
– Visual Programming (.FUN-Demo)
– End-user „debugging“
– Microsoft Robotics Studio
– Coding4Fun
• Enabling new applications
–
–
–
–
31
Emotional oriented computing
Personal robotics
Self-reconfigurable structures
Learn from interaction with animals
Emotion-Oriented Computing
• General Goal: Make interaction between human
and machine more natural for the humans
• Machine should be able to:
– To register human emotions
– To convey and comunicate emotion
– To understand the emotional relevance of the event
32
3/18/2016
Microsoft Internal Only
32
Human Centred, Affects and Emotions
•
Enhance communication through compelling, fun and
emotional interactions with computing. Seeking to make the
process more intuitive, interactive and appealing to a wider
group of people. Experimenting, evolving, evaluate
emotional models
•
Support privacy, intimacy and different level of information
sharing
Extending the software as a new medium
•
–
–
–
–
34
3/18/2016
Affective Media and Mobile media (affective loop)
Participatory creation, exchange, authoring and fruition
Storing the intimacy, the private value of the things
Fusion of different kind of data sensors, embodiments,
Microsoft Internal Only
34
Some examples
Sensing
Interaction
with Environments
35
Affective Diary
Designing for bodily expressiveness and self-reflection
•
•
•
•
Collecting memories – including body memorabilia mingled with
mobile materials (SMS, MMS, photographs, music listened to,
video,..
Offering a diary medium in which those memories can be mirrored
and organised
Empowering the user to create meaning and alter those
representations
Prototype
– build on TabletPC and Smartphone
– Sensordata (movement, arousal)
36
3/18/2016
Microsoft Internal Only
36
BSP: Interactive storytelling
in vast location based
•
•
•
•
Pervasive computing: Location based games provide navigational
challenges e.g. Chasing
Mobile Media: A flexible media and framework for interaction
Interactive storytelling: Balance linearity with user control, believable
characters
The concept of believable environments, and our implementation, put a
research focus on possibilities to:
– Enrich pervasive games with location
dependent narratives
– Design “the stage set” to improve
interactive storytelling
37
3/18/2016
Microsoft Internal Only
37
An example
Sensing
Interaction
with Robots
38
The mind and the body
• Neurophysiologists suggest that the body plays a crucial role
in our cognitive process
• The brain experiences the world through the body:
– The environment is well known to the brain
– Outside environment is a set of states of inside
• Agents with body (embodied agents) try to mimic this schema
to produce intelligent behavior
• Dautenhan and Jakobi show that body’s presence influences
the behavior of software (anything already heard?)
40
40
Component structure
Vision Roblet
Knowledge Base
Body Map
Arm Roblet
WiFi Roblet
MotionRoblet
Sensors
Internal perception
Network perception
41
41
Robotics4.net
• Realization of a platform for define the body of a robot as a
set of agents (Roblets) that acts as intermediaries between
the devices and the reasoning software
• The robot provides a physical body and a set of core services
to support the development of highly autonomous agent
situated in both cyberspace (e.g Internet, virtual entities) and
real world
• Definition of an Object Model, an API, a set of abstraction that
allows:
– Portability (on different type of platforms)
– Scalability from small (e.g. Lego) to complex systems
– Integration with the MS Development Platform and MS OS and
Application suites
42
42
Functions implemented
• The platform provide the following base services to
support the software implementing the roblets:
–
–
–
–
–
–
–
–
General purpose functions (I/O)
Basic motion abilities
Collision avoidance software
Vision software for face recognition
Speech and gesturing recognition
Positioning and navigation aided by video input
Network perception
IM interface
– The Architecture is available as a simple Software Development
Kit freely downloadable from http://www.robotics4.net
43
43
Perception
44
3/18/2016
Microsoft Internal Only
44
Evolving the framework
• Reduce the programming model of Robotics4.NET to the
one adopted by the Robotics Studio CTP
• Extending the Mind/Body model with self-developing
tools, model and methods to verify the behavior of
systems imposing very high level constrains and how
that can be both formally and programmatically verified
• Testing interaction in real scenarios
45
45
Questions
46
Download