robotalk: a general robot control framework can we access r2d2 & c3po with the same control...
Post on 20-Dec-2015
215 views
TRANSCRIPT
RoboTalk: a general robot control frameworkCan we access R2D2 & C3PO with the same control commands?
Allen Yang Yang
University of Illinois at Urbana-Champaign
QuickTime™ and aTIFF (Uncompressed) decompressor
are needed to see this picture.
H. Gonzales-Banos, V. Ng-Thow-Hing, J. E. Davis
Honda Research Institute, Mountain View, CA
2
Copyright Lucasfilm Ltd.
Motivation
Mobile Robot with Pan-Tilt Camera
Honda Asimo Humanoid Robot
3
Why do we need a motion specification?
Difficulties for researchers in robotics: Industrial copyright Programs are not re-usable in
different robot families, even different versions of same robot families
Have to choose OS based on the drivers provided
Not easy to share a robot remotely with other collaborators in different locations
QuickTime™ and aTIFF (Uncompressed) decompressor
are needed to see this picture.
QuickTime™ and aTIFF (Uncompressed) decompressor
are needed to see this picture.
Motion Commands
Windows? Linux? Mac OS?
Embedded OS?
4
Project goals
Whatever: (cross-model) Provide a network-enabled interface for Asimo which is
independent of the controller libraries Access to other robots & simulators: Pioneer, Puma
Whoever: (cross-platform) User interface must be cross-platform: support Unix, Linux, Mac
OS X and Windows. Wherever: (cross-network)
Good quality of service across the Internet.
5
Demo Videos
6
Contributions
A robot specification standard One command interface Four command modes between client and server:
Direct Delay Playback Broadcast
Easy-to-change robot driver implementation on the server-end
7
Previous Work
Player [R. Gerkey and A. Howard, 2003]
Open Architecture Humanoid Robotics Platform (HRP)[F. Kanehiro, et al., 2004]
Open Pino Project [F. Yamasaki, et al., 2000]
OROCOS [http://www.orocos.org/]
Dedicated systems ARIA [robots.activmedia.com/ARIA/]
Robonaut [H. Aldridge, et al., 2000]
Athena [J. Biesiadecki, et al., 2001]
8
Why not others?
Do not support humanoid robots Hard to change driver implementation Do not have network quality support Do not have protection mechanism for
exotic robots
9
System Architecture
System Overview Client/Server Structure Four Communication Modes
10
Architecture - Specification Standard
Configuration Spec
Command Spec
Communication Spec
Abstraction
11
Architecture - System Overview
Client/Server
...
Client
Client
Server
Asimo Library
Pioneer Library
Simulator
QuickTime™ and aTIFF (Uncompressed) decompressor
are needed to see this picture.
QuickTime™ and aTIFF (Uncompressed) decompressor
are needed to see this picture.
Configuration Spec
Command Spec
Communication Spec
12
Architecture - Robotalk Server
Server Daemon
Robot Daemon
Read and Write TCP/IP sockets
Issue Robot Driver Calls
CClientConnection
CClientConnection
Provide: Buffering, Scheduling, Panic, etc.
Class Interface
.
.
.
CRobotDriver
13
Architecture - CClientConnection
CClientConnection
Command Queue
Return Queue
Playback Queue
Read
Write
Input commands
Feedback
Priority Queues
Server Daemon
Robot Daemon
14
Architecture - CClient
Read Daemon
Return cache
CClient Class
Class Interface
Commands to the server.(Blocking/Nonblocking)
Feedback
(Nonblocking)
Broadcastcache
Function calls
15
Architecture - Communication Modes
Direct mode: blocking & instantaneous, for debug purposes
Delay mode: nonblocking, instantaneous or delay
Playback mode: nonblocking, adaptive caching based on channel quality
Broadcast mode: periodic query feedback
16
Direct Mode
Client Server Sync system clock
Clock
Command Cache
RobotDaemon
Client
Function call
Cache Return Cachereturn
17
Delay Mode
Client Server Sync system clock
RobotDaemon
Client
Cache
Function call
return
Delay
Command Cache
Clock +
Return Cacheerror signal
18
Playback Mode
Client
Cache
Function call
return
Return Cacheerror signal
Clock
Playback Cache
Command Cache
Delay
RobotDaemon
Client Server
Length of the sequence
19
Broadcast Mode
Client
Cache
Broadcast
call
return
Command Cache
RobotDaemon
Return Cachedata
Delay
20
Conclusions
Motivations System Structure Four Network Command Modes Future Extensions
Exclusive control Data channels Controlling multiple humanoid robots Virtual humanoid robots
21
Virtual Humanoid
Server
Pioneer Library
Camera Library
Puma Library
QuickTime™ and aTIFF (Uncompressed) decompressor
are needed to see this picture.
QuickTime™ and aTIFF (Uncompressed) decompressorare needed to see this picture.
Site A
Site B
Virtual Humanoid
22
Thank you!
Allen Yang: [email protected] Hector Gonzales-Banos: [email protected] Ng-Thow-Hing: [email protected]
All videos available online: perception.csl.uiuc.edu/RoboTalk/