RoboTalk: controlling arms, bases and androids through a single motion interface .

advertisement
RoboTalk: a general robot control framework
Can we access R2D2 & C3PO with the same control commands?
Allen Yang Yang
University of Illinois at Urbana-Champaign
QuickTime™ and a
TIFF (Uncompressed) decompressor
are needed to see this picture.
H. Gonzales-Banos, V. Ng-Thow-Hing, J. E. Davis
Honda Research Institute, Mountain View, CA
Motivation
Copyright
Lucasfilm Ltd.
Mobile Robot with
Pan-Tilt Camera
Honda Asimo
Humanoid Robot
2
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
Motion Commands
 Have to choose OS based on the
drivers provided
 Not easy to share a robot remotely
Windows? Linux? Mac OS?
with other collaborators in different
Embedded OS?
locations
QuickTime™ and a
TIFF (Uncompressed) decompressor
are needed to see this picture.
QuickTime™ and a
TIFF (Uncompressed) decompressor
are needed to see this picture.
3
Project goals

Whatever: (cross-model)



Whoever: (cross-platform)


Provide a network-enabled interface for Asimo which is
independent of the controller libraries
Access to other robots & simulators: Pioneer, Puma
User interface must be cross-platform: support Unix, Linux, Mac
OS X and Windows.
Wherever: (cross-network)

Good quality of service across the Internet.
4
Demo Videos
5
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
6
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]
7
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
8
System Architecture



System Overview
Client/Server Structure
Four Communication Modes
9
Architecture - Specification Standard
Abstraction
Configuration Spec
Command Spec
Communication Spec
10
Architecture - System Overview
Asimo
Library
Configuration Spec
QuickTime™ and a
TIFF (Uncompressed) decompressor
are needed to see this picture.
Command Spec
Client
Communication Spec
..
.
Client
Pioneer
Library
QuickTime™ and a
TIFF (Uncompressed) decompressor
are needed to see this picture.
Server
Client/Server
Simulator
11
Architecture - Robotalk Server
Server Daemon
Read and
Write
TCP/IP
sockets
CClientConnection
.
.
.
Provide:
Buffering,
Scheduling,
Panic, etc.
CClientConnection
Class
Interface
Issue Robot
Driver Calls
Robot Daemon
CRobotDriver
12
Architecture - CClientConnection
Server Daemon
Input
commands
CClientConnection
Command Queue
Read
Playback Queue
Robot
Daemon
Feedback
Write
Return Queue
Priority Queues
13
Architecture - CClient
Function
calls
CClient Class
Commands to the server.
(Blocking/Nonblocking)
Class
Interface
Broadcast
cache
Return cache
Feedback
Read Daemon
(Nonblocking)
14
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
15
Direct Mode
Client
Server
Sync system clock
Clock
Function call
Command Cache
Client
return
Cache
Robot
Daemon
Return Cache
16
Delay Mode
Client
Server
Sync system clock
Clock + Delay
Function call
Command Cache
return
Client
Robot
Daemon
error signal
Cache
Return Cache
17
Playback Mode
Length of the sequence
Client
Clock
Function call
return
Command Cache
Server
Delay
Playback Cache
Client
Robot
Daemon
error signal
Cache
Return Cache
18
Broadcast Mode
Delay
Broadcast
call
return
Command Cache
Client
Cache
data
Robot
Daemon
Return Cache
19
Conclusions




Motivations
System Structure
Four Network Command Modes
Future Extensions




Exclusive control
Data channels
Controlling multiple humanoid robots
Virtual humanoid robots
20
Virtual Humanoid
Pioneer
Library
Site A
QuickTime™ and a
TIFF (Uncompressed) decompressor
are needed to see this picture.
Server
Camera
Library
Puma
Library
Site B
Quic kT i me™ and a
T IFF (Unc ompres s ed) dec ompres s or
are needed t o s ee thi s pi c ture.
Virtual Humanoid
21
Thank you!
Allen Yang: yangyang@uiuc.edu
Hector Gonzales-Banos: hhg@honda-ri.com
Victor Ng-Thow-Hing: vng@honda-ri.com
All videos available online: perception.csl.uiuc.edu/RoboTalk/
22
Download