Allen Yang Yang University of Illinois at Urbana-Champaign

Slides:



Advertisements
Similar presentations
Operating Systems Manage system resources –CPU scheduling –Process management –Memory management –Input/Output device management –Storage device management.
Advertisements

THINC: A Virtual Display Architecture for Thin-Client Computing Ricardo A. Baratto, Leonard N. Kim, Jason Nieh Network Computing Laboratory Columbia University.
Operating Systems High Level View Chapter 1,2. Who is the User? End Users Application Programmers System Programmers Administrators.
Contiki A Lightweight and Flexible Operating System for Tiny Networked Sensors Presented by: Jeremy Schiff.
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.
Embedded Real-time Systems The Linux kernel. The Operating System Kernel Resident in memory, privileged mode System calls offer general purpose services.
Figure 1.1 Interaction between applications and the operating system.
Slide 3-1 Copyright © 2004 Pearson Education, Inc. Operating Systems: A Modern Perspective, Chapter 3 Operating System Organization.
Operating Systems Sameer Mahajan. Overview Process management Interrupts Memory management File system Device drivers Networking (TCP/IP, UDP) Security.
Ch4: Distributed Systems Architectures. Typically, system with several interconnected computers that do not share clock or memory. Motivation: tie together.
Presented by: k. Ramya krishna
Wind River VxWorks Presentation
Excellence Publication Co. Ltd. Volume Volume 1.
HDVC & Client Reflector server SIP Server User management HDVC & Client.
VPN Protocol What is a VPN? A VPN is A network that uses Internet or other network service to transmit data. A VPN includes authentication and.
1 06/00 Questions 10/6/2015 QoS in DOS ECOOP 2000John Zinky BBN Technologies ECOOP 2000 Workshop on Quality of Service in Distributed Object Systems
Design and Implementation of a Multi-Channel Multi-Interface Network Chandrakanth Chereddi Pradeep Kyasanur Nitin H. Vaidya University of Illinois at Urbana-Champaign.
SPREAD TOOLKIT High performance messaging middleware Presented by Sayantam Dey Vipin Mehta.
Windows NT Operating System. Windows NT Models Layered Model Client/Server Model Object Model Symmetric Multiprocessing.
Web Controlled of Robot Georgi Chakarov Ivelin Stoyanov.
A Study of Wireless Virtual Network Computing Kiran Erra.
Chapter 15 – Part 2 Networks The Internal Operating System The Architecture of Computer Hardware and Systems Software: An Information Technology Approach.
X-WindowsP.K.K.Thambi The X Window System Module 5.
Lecture 8 Page 1 CS 111 Online Other Important Synchronization Primitives Semaphores Mutexes Monitors.
Operating System Organization Chapter 3 Michelle Grieco.
Intel Research & Development ETA: Experience with an IA processor as a Packet Processing Engine HP Labs Computer Systems Colloquium August 2003 Greg Regnier.
GLOBAL EDGE SOFTWERE LTD1 R EMOTE F ILE S HARING - Ardhanareesh Aradhyamath.
Project Paper Presentation Hanlin Wan March 15, 2011.
1 Chapter 2: Operating-System Structures Services Interface provided to users & programmers –System calls (programmer access) –User level access to system.
Computer Science and Engineering Copyright by Hesham El-Rewini Advanced Computer Architecture CSE 8383 April 6, 2006 Session 22.
Introduction to Operating Systems Concepts
The Holmes Platform and Applications
Operating Systems {week 01.b}
Software and Communication Driver, for Multimedia analyzing tools on the CEVA-X Platform. June 2007 Arik Caspi Eyal Gabay.
Voice Controlled Robot by Cell Phone with Android App
Chapter 13: I/O Systems.
Module 12: I/O Systems I/O hardware Application I/O Interface
Architecture and Algorithms for an IEEE 802
Current Generation Hypervisor Type 1 Type 2.
Device Pool Status Report TANGO Collaboration Meeting April 17, 2008
Topics Covered What is Real Time Operating System (RTOS)
Virtual Network Computing
Cross Platform Development using Software Matrix
Cross-platform Libraries Technology Presentation
Computer Graphics Lecture 32
Introduction.
A Study of Wireless Virtual Network Computing
CASE STUDY 1: Linux and Android
G.Manduchi1, T.Fredian2⁾, J.Stillerman2⁾, A. Neto3), F. Sartori3)
Other Important Synchronization Primitives
CS490 Windows Internals Quiz 2 09/27/2013.
Hierarchical Architecture
MVL-supported Virtual Instrument Specifications
Chapter 3: Windows7 Part 4.
Chapter 2: The Linux System Part 1
IS 4506 Server Configuration (HTTP Server)
I/O Systems I/O Hardware Application I/O Interface
Operating System Concepts
13: I/O Systems I/O hardwared Application I/O Interface
CS703 - Advanced Operating Systems
Language Processors Application Domain – ideas concerning the behavior of a software. Execution Domain – Ideas implemented in Computer System. Semantic.
Chapter 13: I/O Systems I/O Hardware Application I/O Interface
Operating Systems: A Modern Perspective, Chapter 3
Open Automation Software
Chapter 13: I/O Systems I/O Hardware Application I/O Interface
CSE 542: Operating Systems
In Today’s Class.. General Kernel Responsibilities Kernel Organization
STATEL an easy way to transfer data
Module 12: I/O Systems I/O hardwared Application I/O Interface
IS 4506 Configuring the FTP Service
Presentation transcript:

Allen Yang Yang University of Illinois at Urbana-Champaign 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 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

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 Motion Commands Windows? Linux? Mac OS? Embedded OS?

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 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.

Demo Videos

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

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]

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

System Architecture System Overview Client/Server Structure Four Communication Modes

Architecture - Specification Standard Abstraction Configuration Spec Command Spec Communication Spec

Architecture - System Overview Asimo Library Configuration Spec Command Spec Communication Spec Pioneer Library Client . . . Server Client/Server Simulator Client

Architecture - Robotalk Server Server Daemon Provide: Buffering, Scheduling, Panic, etc. Read and Write TCP/IP sockets CClientConnection . . . CClientConnection Issue Robot Driver Calls Class Interface Robot Daemon CRobotDriver

Architecture - CClientConnection Server Daemon CClientConnection Input commands Robot Daemon Command Queue Read Playback Queue Feedback Write Return Queue Priority Queues

Architecture - CClient Function calls CClient Class Commands to the server. (Blocking/Nonblocking) Class Interface Broadcast cache Return cache Feedback (Nonblocking) Read Daemon

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

Direct Mode Client Server Sync system clock Clock Command Cache Client Function call Cache Robot Daemon Return Cache return

Delay Mode Client Server Sync system clock Delay Command Cache Clock + Function call return Robot Daemon Return Cache error signal

Playback Mode Client Server Length of the sequence Command Cache Delay Robot Daemon Clock Playback Cache Client Cache Function call return Return Cache error signal

Broadcast Mode Delay Broadcast call Command Cache Client Robot Daemon return Command Cache Robot Daemon Return Cache data

Conclusions Motivations System Structure Four Network Command Modes Future Extensions Exclusive control Data channels Controlling multiple humanoid robots Virtual humanoid robots

Virtual Humanoid Pioneer Library Site A Camera Library Site B Server Puma Library Virtual Humanoid

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/