240AR060 - Introduction to Ros

Similar documents
SAM - Sensors, Actuators and Microcontrollers in Mobile Robots

SSE - Supervision of Electrical Systems

The Moodle and joule 2 Teacher Toolkit

Android App Development for Beginners

A systems engineering laboratory in the context of the Bologna Process

Strategy and Design of ICT Services

Seminar - Organic Computing

Using Moodle in ESOL Writing Classes

Strengthening assessment integrity of online exams through remote invigilation

FONDAMENTI DI INFORMATICA

Remote Control Laboratory Via Internet Using Matlab and Simulink

EECS 571 PRINCIPLES OF REAL-TIME COMPUTING Fall 10. Instructor: Kang G. Shin, 4605 CSE, ;

International Business Bachelor. Corporate Finance. Summer Term Prof. Dr. Ralf Hafner

Examity - Adding Examity to your Moodle Course

CPMT 1347 Computer System Peripherals COURSE SYLLABUS

Course Brochure 2016/17

ATENEA UPC AND THE NEW "Activity Stream" or "WALL" FEATURE Jesus Alcober 1, Oriol Sánchez 2, Javier Otero 3, Ramon Martí 4

Blackboard Communication Tools

Unit purpose and aim. Level: 3 Sub-level: Unit 315 Credit value: 6 Guided learning hours: 50

Diploma in Library and Information Science (Part-Time) - SH220

LEGO MINDSTORMS Education EV3 Coding Activities

Research computing Results

Science Olympiad Competition Model This! Event Guidelines

On-Line Data Analytics

MAE Flight Simulation for Aircraft Safety

Data Structures and Algorithms

Development of an IT Curriculum. Dr. Jochen Koubek Humboldt-Universität zu Berlin Technische Universität Berlin 2008

ACTL5103 Stochastic Modelling For Actuaries. Course Outline Semester 2, 2014

Computer Organization I (Tietokoneen toiminta)

Spring 2015 IET4451 Systems Simulation Course Syllabus for Traditional, Hybrid, and Online Classes

"On-board training tools for long term missions" Experiment Overview. 1. Abstract:

Python Machine Learning

STUDENT MOODLE ORIENTATION

Web-based Learning Systems From HTML To MOODLE A Case Study

Customised Software Tools for Quality Measurement Application of Open Source Software in Education

Integration of ICT in Teaching and Learning

Business Analytics and Information Tech COURSE NUMBER: 33:136:494 COURSE TITLE: Data Mining and Business Intelligence

Feature-oriented vs. Needs-oriented Product Access for Non-Expert Online Shoppers

GACE Computer Science Assessment Test at a Glance

Computer Science 141: Computing Hardware Course Information Fall 2012

Bayllocator: A proactive system to predict server utilization and dynamically allocate memory resources using Bayesian networks and ballooning

Chapter 2. Intelligent Agents. Outline. Agents and environments. Rationality. PEAS (Performance measure, Environment, Actuators, Sensors)

ENME 605 Advanced Control Systems, Fall 2015 Department of Mechanical Engineering

PH.D. IN COMPUTER SCIENCE PROGRAM (POST M.S.)

Appendix L: Online Testing Highlights and Script

Bluetooth mlearning Applications for the Classroom of the Future

Software Development: Programming Paradigms (SCQF level 8)

Introduction to Financial Accounting

Education for an Information Age

Classroom Assessment Techniques (CATs; Angelo & Cross, 1993)

Texas A&M University-Central Texas CISK Comprehensive Networking C_SK Computer Networks Monday/Wednesday 5.

A virtual surveying fieldcourse for traversing

Strategic Management (MBA 800-AE) Fall 2010

SECTION 12 E-Learning (CBT) Delivery Module

COURSE SYLLABUS: CPSC6142 SYSTEM SIMULATION-SPRING 2015

Briefing document CII Continuing Professional Development (CPD) scheme.

Bluetooth mlearning Applications for the Classroom of the Future

PROGRAMME SPECIFICATION

Adult Degree Program. MyWPclasses (Moodle) Guide

Tools and Techniques for Large-Scale Grading using Web-based Commercial Off-The-Shelf Software

COMS 622 Course Syllabus. Note:

Physics Experimental Physics II: Electricity and Magnetism Prof. Eno Spring 2017

ebusiness Technologies Spring 2000 Syllabus

Integrating simulation into the engineering curriculum: a case study

Advanced Multiprocessor Programming

IMPROVE THE QUALITY OF WELDING

Spinners at the School Carnival (Unequal Sections)

THE UNIVERSITY OF SYDNEY Semester 2, Information Sheet for MATH2068/2988 Number Theory and Cryptography

Evaluation of Learning Management System software. Part II of LMS Evaluation

Computers in Physics Education

Robot manipulations and development of spatial imagery

Mater Dei Institute of Education A College of Dublin City University

DEVELOPMENT OF AN INTELLIGENT MAINTENANCE SYSTEM FOR ELECTRONIC VALVES

TEACHING IN THE TECH-LAB USING THE SOFTWARE FACTORY METHOD *

EECS 700: Computer Modeling, Simulation, and Visualization Fall 2014

CPMT 1303 Introduction to Computer Technology COURSE SYLLABUS

Class Numbers: & Personal Financial Management. Sections: RVCC & RVDC. Summer 2008 FIN Fully Online

THE WEB 2.0 AS A PLATFORM FOR THE ACQUISITION OF SKILLS, IMPROVE ACADEMIC PERFORMANCE AND DESIGNER CAREER PROMOTION IN THE UNIVERSITY

Education: Integrating Parallel and Distributed Computing in Computer Science Curricula

Ansys Tutorial Random Vibration

The role of virtual laboratories in education

Axiom 2013 Team Description Paper

Certificate of Higher Education in History. Relevant QAA subject benchmarking group: History

Training Pack. Kaizen Focused Improvement Teams (F.I.T.)

Number Line Moves Dash -- 1st Grade. Michelle Eckstein

Telekooperation Seminar

LIVERPOOL JOHN MOORES UNIVERSITY Department of Electrical Engineering Job Description

Computed Expert System of Support Technology Tests in the Process of Investment Casting Elements of Aircraft Engines

FLN Learning Helping your Child succeed

PROGRAMME SPECIFICATION KEY FACTS

Intermediate Computable General Equilibrium (CGE) Modelling: Online Single Country Course

Examining the Structure of a Multidisciplinary Engineering Capstone Design Program

ENGINEERING FIRST YEAR GUIDE

European Cooperation in the field of Scientific and Technical Research - COST - Brussels, 24 May 2013 COST 024/13

CURRICULUM VITAE PERSONAL DETAILS. Evans Anderson Kirimi Miriti Year of Birth: English (Excellent), Kiswahili (Excellent), French (Fair).

CS 1103 Computer Science I Honors. Fall Instructor Muller. Syllabus

ME 443/643 Design Techniques in Mechanical Engineering. Lecture 1: Introduction

Content Teaching Methods: Social Studies. Dr. Melinda Butler

Agents and environments. Intelligent Agents. Reminders. Vacuum-cleaner world. Outline. A vacuum-cleaner agent. Chapter 2 Actuators

COURSE LISTING. Courses Listed. Training for Cloud with SAP SuccessFactors in Integration. 23 November 2017 (08:13 GMT) Beginner.

Transcription:

Coordinating unit: Teaching unit: Academic year: Degree: ECTS credits: 2017 240 - ETSEIB - Barcelona School of Industrial Engineering 915 - IRI - Institute of Robotics and Industrial Informatics MASTER'S DEGREE IN AUTOMATIC CONTROL AND ROBOTICS (Syllabus 2012). (Teaching unit Optional) 4,5 Teaching languages: English Teaching staff Coordinator: Others: RAMON COSTA CASTELLO - GUILLEM ALENYÀ RIBAS Segon quadrimestre: SERGIO FOIX SALMERON - 10 Opening hours Timetable: To be defined Prior skills The student should have basic skills in C++ programming as well as linux common tools and commands. An overall understanding of software processes involved in robotics will be welcomed. Teaching methodology The teaching methodology will combine lectures together with supervised exercises based on the current ROS version and tools. All classes will be organized with the theoretical sessions at the beginning and practical exercises and team work at the end. The initial part will consist on the explanation of theoretical concepts by the lecturer, promoting the active participation of students. The practical part will be focused on the student?s solving skills requiring the use of their own computers running Ubuntu and ROS. The main theoretical concepts will be shown in practical simulation examples and finally on a real robot test. Learning objectives of the subject The objective of this course is to introduce students in the use of ROS as a powerful robotics tool. Specifically a familiarization with the middleware concept and the software structure of a robot. There will be a special emphasis on sensing and control a robot using ROS, both in simulation and real environments. Learning Outcomes: Learn how to setup a Linux O.S. environment to work with ROS. Understand the ROS communications architecture. Use ROS in the different process layers, from sensing to control or actuation. Implement simple ROS projects with both simulation and real robots. Mandatory contents: Install and setup ROS in a native O.S. Linux (Ubuntu). Know and understand the internal procedures of ROS and its modules functionalities (master,nodes, and so on). Identify and use the ROS tools and formats related to the internal communication between nodes (topics, actions, services,...). 1 / 6

Use ROS visualization and debugging tools. Design and program C++ algorithms using ROS as a middleware. Use debugging tools to verify the compilation and the algorithm functionalities. Configure and use a simulation environment with the designed algorithms. Managing acquisition, analysis and display of data obtained from different sensors using ROS (cameras, IMU, and so on), both using simulation and real settings. Manage and send control commands to a robot using ROS (parrot ARdrone), both using simulation and real settings. Study load Total learning time: Hours large group: Hours medium group: Hours small group: Guided activities: Self study: 2 / 6

Content ROS introduction Learning time: 5h Theory classes: 3h Guided activities: Self study : 2h What is ROS. Why, when and where to use ROS. Introduction to basic concepts of software processes, system and design of robotic architectures. ROS community. Pros and cons of using ROS in a robot. Overview of current famous robots using ROS. Lectures and ROS wiki page. Specific introduction to ROS characteristics. Presentation of the ROS community, forum and resources. ROS environment configuration in a Linux O.S. Learning time: 5h Theory classes: 1h 30m Guided activities: 1h 30m Self study : 2h Installation of ROS in a Linux environment (Ubuntu). Lectures and ROS installation tutorial. How ROS uses the system, Which part is done by ROS and which by the underlying operating system. Installation of ROS main packages and dependencies as well as those uses during the course. Introduction to ROS tools. Visualisation, analysis and debug. Practical application (using?.bag? files). Learning time: 16h Theory classes: 6h Guided activities: 6h Self study : 4h Introduction to ROS developer tools. Command line tools and GUIs Frame transformations (tf). 3D visualization (rviz). Logging and visualization sensor data (rosbag and rqt_bag). Live plotting (rqt_plot). System visualization (rqt_graph). Command line tools. Move it!. ros_control. 3 / 6

Introduction to ROS nodes and communications. Learning time: 24h Theory classes: 6h Guided activities: 8h Self study : 1 Description of ROS communications scheme. ROS package (node) creation. ROS package filesystem and architecture. Topics. Publishers and Subscribers. Messages. Services. Actions. Master. Parameter Server. Dynamic reconfigure. Creation of two nodes. Addition of message publishers and subscribers. Addition of an action and a service (server and client). Callbacks and spinning (single threaded, multi-threaded or asynch-spinner). Multiple machines with unique master. Configuration and use of a simulation environment. Learning time: 9h Theory classes: 1h Guided activities: 4h Self study : 4h Presentation of the simulated environment to be used during the subject. Introduction to Gazebo. Overview of a simulated robot. Use of Gazebo with a simulated robot and world. Definition of a robot (urdf) and sensors (plugins). Interaction between ROS and Gazebo. Robot control using created nodes. 4 / 6

Managing acquisition, analysis and display of data obtained from different sensors. Learning time: 7h Theory classes: 1h Guided activities: 2h Self study : 4h Use of ROS tools to acquire data from sensors (simulation and real setting). Display of sensor data using a terminal or visualization tools. Use a simulated camera and detect markers in the image. Using ROS in a real setting (Robot). Learning time: 2 Theory classes: 2h Guided activities: 2h Self study : 16h Final project presentation. Apply of acquired concepts during the course. Lectures, guided exercises and final project statement. Robot introduction. Communications between robot and laptops. Sensor acquisitions. Robot control. Final project with public presentation. Qualification system The acquired competences and capabilities will be assessed on the basis of four qualification grades: practical work with periodic reports that must be delivered during the course (2), a formal final project report (4), the corresponding project exhibition (2), and a discretional teamwork evaluation (2). Re-evaluation: new final project (4). 5 / 6

Bibliography Others resources: Basic: Lectures slides. Description of case studies, exercises and guides. ROS wiki page: http://wiki.ros.org/ Complementary: ROS tutorials. http://wiki.ros.org/ros/tutorials Representing Robot Pose, the good, the bad and the ugly. Paul Furgale, ETH Zürich. http://goo.gl/gcqsxn A gentle Introduction to ROS, Jason M. O'Kane, 2013. http://www.cse.sc.edu/ jokane/agitr/ ROS Cheat Sheet (from Hydro version and catkin). http://clearpath.wpengine.netdna-cdn.com/wpcontent/uploads/2014/01/ros-cheat-sheet-landscape-v2.pdf Hyperlink Nom recurs Resource 6 / 6