1 Player Tutorial Boyoon Jung Robotic Embedded Systems Lab Robotics Research Lab Center for Robotics and Embedded Systems.

Slides:



Advertisements
Similar presentations
Three types of remote process invocation
Advertisements

Parallel Virtual Machine Rama Vykunta. Introduction n PVM provides a unified frame work for developing parallel programs with the existing infrastructure.
CPSC 441 TUTORIAL – JANUARY 16, 2012 TA: MARYAM ELAHI INTRODUCTION TO C.
The Player Project: Open Source tools for robotics research & education Brian P. Gerkey Richard T. Vaughan Andrew Howard.
Player/Stage/Gazebo CS 485/511 Drexel University Chris Cannon Marc Winners
DESIGN AND IMPLEMENTATION OF SOFTWARE COMPONENTS FOR A REMOTE LABORATORY J. Fernandez, J. Crespo, R. Barber, J. Carretero University Carlos III of Madrid.
Team 7 / May 24, 2006 Web Based Automation & Security Client Capstone Design Advisor Prof. David Bourner Team Members Lloyd Emokpae (team Lead) Vikash.
Installing and Using Software from the Player Project Robert N. Lass Drexel University April 1 st, 2010 (no joke) (some slides adapted from Cannon & Winners)
Bluetooth Hardware CS215 Rohit Kapoor Prabhakar Pundir.
How to program robot hardware Sascha Lange Why care about?
The Player universal driver and the Stage and Gazebo simulators Daniele Calisi.
Nate Koenig 15 Sep 2004 Stage and Gazebo The Instant Expert’s Guide.
1 CS 502: Computing Methods for Digital Libraries Lecture 22 Repositories.
IARP/EURON Workshop on Robotics for Risky Interventions and Environmental Surveillance Mobile robot simulators and their application to hazardous and.
Client Server Model The client machine (or the client process) makes the request for some resource or service, and the server machine (the server process)
1 Rosetta and Gazebo: Simulating Robots A CE Project Robotics Institute, Carnegie Mellon September 12, 2007.
USC Viterbi School of Engineering. Alternative CC Robotic Systems.
Remote Surveillance Vehicle Design Review By: Bill Burgdorf Tom Fisher Eleni Binopolus-Rumayor.
Victor Serbo, SLAC30 September 2004, Interlaken, Switzerland JASSimApp plugin for JAS3: Interactive Geant4 GUI Serbo, Victor (SLAC) - presenter Donszelmann,
Assembly Line Simulation With Multi-Robot Control Peter McHugh Thomas Zack Kyle Fecteau.
CCNA 1 Module1. Objectives Internet Connections Physical – NIC card to connect to local net Logical – Use a standard set of protocols (TCP/IP) Applications.
COGAIN 2009 Petr Novák, Olga Štepánková Home and environment control.
CGI Programming Languages Web Based Software Development July 21, 2005 Song, JaeHa.
Interconnection Protocol Mustafa Kara Term Work.
Intelligent Vehicles and Systems Group The Pennsylvania State University 1/9 EDSGN 100 EDSGN 100 Autonomous System Navigation and Driver Augmentation Pramod.
NETWORK CENTRIC COMPUTING (With included EMBEDDED SYSTEMS)
Multi-Robot Systems with ROS Lesson 1
Adviser: Yih-Ran Sheu Adviser : Yih-Ran Sheu Student : Shin-hao Wang SN:MA Mohammed A Qadeer Dept of Computer Engg Aligarh Muslim University, Aligarh,
Introduction to the Atlas Platform Mobile & Pervasive Computing Laboratory Department of Computer and Information Sciences and Engineering University of.
Player/Stage: A Unifying Paradigm to Improve Robotics Education Delivery Monica Anderson, Laurence Thaete, Nathan Wiegand The University of Alabama.
UNIX SVR4 COSC513 Zhaohui Chen Jiefei Huang. UNIX SVR4 UNIX system V release 4 is a major new release of the UNIX operating system, developed by AT&T.
Anees Elhammali Michael Malluck John Parsons Namrata Sopory
Multiple Autonomous Ground/Air Robot Coordination Exploration of AI techniques for implementing incremental learning. Development of a robot controller.
Department of Electrical Engineering Electronics Computers Communications Technion Israel Institute of Technology High Speed Digital Systems Lab. High.
ORCA Robot Simulator HY-475 Autonomous Robot Navigation.
Copyright © 2012 Pearson Education, Inc. Chapter 1: Introduction to Computers and Programming.
Dmitry Korobov April 13,  GUI interface for the robot ◦ Atomic Actions Panel ◦ Script generator for complex actions ◦ Sensors Panel  Robot’s module.
NATIONAL INSTITUTE OF SCIENCE & TECHNOLOGY Presented by: Santosh kumar Swain Technical Seminar Presentation by SANTOSH KUMAR SWAIN Roll # CS
Example title for notes and handouts
BLU-ICE and the Distributed Control System Constraints for Software Development Strategies Timothy M. McPhillips Stanford Synchrotron Radiation Laboratory.
CS 8903 Demo Wireless Interface for the Bioloid Robot Chetna Kaur.
Ling Chen ( From Shanghai University 1.
Final Review of ITER PBS 45 CODAC – PART 1 – 14 th, 15 th and 16 th of January CadarachePage 1 FINAL DESIGN REVIEW OF ITER PBS 45 CODAC – PART 1.
Introduction To Networking. Requirements for Internet connection Connections can be seen as 2 components: The physical connection: transfers signals between.
Application Block Diagram III. SOFTWARE PLATFORM Figure above shows a network protocol stack for a computer that connects to an Ethernet network and.
City College of New York 1 Player Stage Gazebo Rex Wong CCNY Robotic Lab A robotic research and development environment.
Android Laser Pointer Control Client System Block Diagram Functional Requirements Development Platform.
CHROMATIC TRAILBLAZER 25 th November, 2008 University of Florida, Department of Electrical & Computer Engineering, Intelligent Machine Design Lab (EEL.
Abstract A Structured Approach for Modular Design: A Plug and Play Middleware for Sensory Modules, Actuation Platforms, Task Descriptions and Implementations.
Page 1 Printing & Terminal Services Lecture 8 Hassan Shuja 11/16/2004.
MediaBroker: An Architecture for Pervasive Computing Kishore Ramachandran ( College of Computing.
CSI 3125, Preliminaries, page 1 Networking. CSI 3125, Preliminaries, page 2 Networking A network represents interconnection of computers that is capable.
3/12/2013Computer Engg, IIT(BHU)1 MPI-1. MESSAGE PASSING INTERFACE A message passing library specification Extended message-passing model Not a language.
438 labs. Labs Lab 1: Refreshing C and Linux Programming 2 Lab 1: Refreshing C and Linux Programming 2 – First: Getting familiar with development.
Serial Server Configuration Peter Szyszko. Hardware Configuration  Unit has to be connected to network and powered.  Computer has to be connected to.
Sung-Dong Kim Dept. of Computer Engineering, Hansung University Chapter 3 Programming Tools.
Chapter 4: server services. The Complete Guide to Linux System Administration2 Objectives Configure network interfaces using command- line and graphical.
NASA Robotic Mining Competition. Controllers Arduino Mega - controls motors and sensors Raspberry Pi - Linux based computer that has the autonomous.
2007/11/16 Dinh Trong Thuy RTLab
SPiiPlus Training Class
Overview of TANGO Control system
ROSLab: a High Level Programming Language for Robotic Applications
Mobile Operating System
Smart Car Robot Prepared by Supervised by Mai Asem Abushamma
What is ROS? ROS is an open-source robot operating system
File Transfer Protocol
Configuring a Router Module 3 Semester 2.
Monica Anderson, Laurence Thaete, Nathan Wiegand
Quick Introduction to ROS
HY-475 Autonomous Robot Navigation
Presentation transcript:

1 Player Tutorial Boyoon Jung Robotic Embedded Systems Lab Robotics Research Lab Center for Robotics and Embedded Systems

2 Player/Stage/Gazebo Player Device server that provides a powerful, flexible interface to a variety of sensors and actuators Stage 2D, multi-robot simulator Gazebo 3D, dynamic, multi-robot simulator

3 Robot Programming Camera Laser Sonar Odometry Motors User Program Sensory Data Acquisition Motor Command Generation PCI USB Serial … Canbus … Planner Desired Motion

4 Player Player: a device server Camera Laser Sonar Odometry Motors User Program Sensory Data Acquisition Motor Command Generation PCI USB Serial … Canbus … Planner Desired Motion

5 Player Server Device driver Interface Client / Server Model Player Client Library C/C++ C# Java Tcl Python Ruby Lisp Octave User Program SICK LMS 200 Pioneer SICK PLS Segway Khepera sicklms200 sickpls p2os segwayrmp khepera laser position Data Configuration Command TCP/IP IPC

6 Player Server Hardware Abstraction Player Client Library C/C++ C# Java Tcl Python Ruby Lisp Octave User Program Robot Hardware Stage Simulator Gazebo Simulator Player Server Player Server

7 Communication Player Client Library User Program Player Server Robot Hardware 1.Establish connection 1.Subscribe device(s) 1.Sensor data 1.Actuator commands

8 Running Player Building and installation make make install Execution player [–p ] playerv [hostname:port] playerjoy [hostname:port] Playernav [hostname:port]

9 Player config file Player Server Camera Laser Motors blobfinder:0 ( driver “acts” devicepath=“/dev/video0” channel 0 ) laser:0 ( driver “sicklms200” port “/dev/ttyS1” resolution 50 ) position:0 ( driver “p2os_position” port “/dev/ttyS0” max_xspeed 500 )

10 Player Programming Player client libraries C (libplayerc), C++ (libplayerclient), Tcl (tclPlayer), etc. Programming step 1. Establish connection. 2. Subscribe device(s). 3. Read sensory data. 4. Processing. 5. Send motor command. Repeat

11 Example Code $PLAYER/examples/c++/laserobstacleavoid.cc #include char host[256] = “localhost”; int port = PLAYER_PORTNUM;// 6665 int main(int argc, char **argv) { // 1. Establish connection PlayerClient robot(host, port); // 2. Subscribe device(s) PositionProxy pp(&robot, 0, ‘w’); LaserProxy lp(&robot, 0, ‘r’);

12 for (;;)// repeat { // 3. Read sensory data if (robot.Read()) exit(1); // 4. Procesing... double l = (1e5*minR)/500 – 100; double r = (1e5*minL)/500 – 100; newspeed = (r+1)/1e3; newturnrate = (r-l)/1e3; newturnrate = DTOR(min(newturnrate, 40)); newturnrate = DTOR(max(newturnrate, -40)); // 5. Send motor commands pp.SetSpeed(newspeed, newturnrate); }

13 Player Player: an algorithm repository Camera Laser Sonar Odometry Motors User Program Sensory Data Acquisition Motor Command Generation PCI USB Serial … Canbus … Planner Desired Motion

14 Computational devices amcl (Adaptive Monte-Carlo Localization) vfh (Vector Field Histogram) position laser / sonar / wifi amcllocalize map position vfh position lase

15 Player A device server Hardware abstraction Network transparency Language independence An algorithm repository