ROBOTICS - 2018/9

Module code: EEE3043

Module Overview

Module purpose: Modern robotics brings together many aspects of engineering including electronics, hardware, software and AI. This leads to complex asynchronous systems that requires a systems engineering approach. The Robotics Operating System (ROS), is an extensive community built software suite that underpins most leading-edge robotics development. It provides extensive hardware interfacing and high-level functionality which allows complex systems engineering and control while abstracting away much of the complexity inherent to robotics systems design. This module will use ROS to provide a solid foundation in systems engineering based robotics.

Module provider

Electrical and Electronic Engineering

Module Leader

BOWDEN R Prof (Elec Elec En)

Number of Credits: 15

ECTS Credits: 7.5

Framework: FHEQ Level 6

JACs code: H671

Module cap (Maximum number of students): 70

Module Availability

Semester 2

Prerequisites / Co-requisites

Strong C/C++ knowledge, Python, experience with practical electronics.

Module content

Indicative content includes the following.

Week 1: [Lecture 1] Introduction to Robotics [Lecture 2] Robot Operating System [Lab] ROS Software Lab

Week 2: [Lecture 3] PIDs, microcontrollers [Lecture 4] Developing your own ROS nodes [Lab] Self balancing hardware lab

Week 3: [Lecture 5] Gazebo, URDF, transform trees [Lecture 6] Sensors [Lab] Self balancing software simulation lab

Week 4: [Lecture 7] Kalman filter & sensor fusion [Challenge 1] Self balancing challenge

Week 5: [Lecture 8] Particle filters, monte carlo localization [Lecture 9] Planning [Lab] Sensor fusion software lab

Week 6: [Lecture 10] Mapping [Lecture 11] SLAM (Simultaneous localization and mapping) [Lab] Turtlebot navigation software lab

Week 7: [Lecture 12] Inverse Kinematics & manipulation [Challenge 2] Turtlebot challenge

Week 8: [Lecture 13] MoveIt [Lecture 14] High level perception [Lab] Baxter software lab

Week 9: [Lecture 15] Multi-agent systems [Challenge 3] Baxter Challenge

Week 10: [Lecture 16] AI and decision processes [Lecture 17] Reinforcement learning [Lab] Intelligent robotics software lab

Week 11: [Lecture 18] Revision [Challenge 4] Intelligent robotics challenge

Assessment pattern

Assessment type Unit of assessment Weighting
Examination 2-hour, closed-book written examination 80
Practical based assessment Group robotics challenges (4 in total, each worth 5%) 20

Alternative Assessment

Not applicable due to the nature of the challenges, any students failing can take a late summer exam paper in lieu of both units.

Assessment Strategy

The assessment strategy for this module is designed to provide students with the opportunity to demonstrate both knowledge and practical expertise in the design and implementation of various robotics systems. The written examination will assess knowledge and the assimilation of terminology, concepts, and features of various robotic subsystems, and the specific use of these concepts in the robotics operating system. The practical challenges will evaluate the ability of students to design and implement these skills in a practical setting.

Thus, the summative assessment for this module consists of the following:

Examination: 2-hour, closed-book written examination (80%)

Practical robotic challenges: to be completed in groups during the lab sessions in week 4,7,9 and 10 (20% total).

Any submission deadline given here is indicative. For confirmation of exact date and time, please check the Departmental assessment calendar issued to you.

Formative assessment and feedback:

For the module, students will receive formative assessment/feedback in the following ways. During lectures, by question and answer sessions

During supervised laboratory sessions Via verbal feedback provided during practical challenges

Module aims

  • This module will provide an understanding of both the techniques and practices that underpin modern industrial robotics
  • Give a practical overview of robotics from a systems engineering perspective
  • Provide an understanding of the ROS ecosystem and development
  • Provide a solid foundation into underlying theories of modern robotics and how they are manifest within ROS

Learning outcomes

Attributes Developed
001 Understanding of the ROS ecosystem CKP
002 Integrate new sensors into ROS PT
003 Understand the role of simulation in modern robotics KP
004 Provide an overview of the current state of the art of robotics subsystems and how they are implemented in ROS CKP
005 Develop complex asynchronous ROS applications CKPT

Attributes Developed

C - Cognitive/analytical

K - Subject knowledge

T - Transferable skills

P - Professional/Practical skills

Overall student workload

Independent Study Hours: 66

Lecture Hours: 18

Laboratory Hours: 26

Methods of Teaching / Learning

There will 2 hours of lectures per week, with an associated 2 hours of laboratory-based (including hardware and software labs) material that will closely follow the lectured material. The purpose of the laboratories is for students to gain first-hand experience in applying the concepts taught in lectures and their implementation in ROS. In weeks 4,7,9 and 11 the students will instead receive 1 hour of lectures, and will have 3 hours of scheduled lab time, to prepare for and participate in the practical robotics challenges.

Learning and teaching methods include the following:

Lectures: 11 weeks at 2 hours per week (one hour in week 4,7,9 & 10).

Laboratories: 11 weeks at 2 hours per week (three hours in week 4,7,9 & 10)

Indicated Lecture Hours (which may also include seminars, tutorials, workshops and other contact time) are approximate and may include in-class tests where one or more of these are an assessment on the module. In-class tests are scheduled/organised separately to taught content and will be published on to student personal timetables, where they apply to taken modules, as soon as they are finalised by central administration. This will usually be after the initial publication of the teaching timetable for the relevant semester.

Reading list

Reading list for ROBOTICS : http://aspire.surrey.ac.uk/modules/eee3043

Programmes this module appears in

Programme Semester Classification Qualifying conditions
Electrical and Electronic Engineering MEng 2 Optional A weighted aggregate mark of 40% is required to pass the module
Electrical and Electronic Engineering BEng (Hons) 2 Optional A weighted aggregate mark of 40% is required to pass the module
Electronic Engineering BEng (Hons) 2 Optional A weighted aggregate mark of 40% is required to pass the module
Electronic Engineering with Computer Systems BEng (Hons) 2 Optional A weighted aggregate mark of 40% is required to pass the module
Electronic Engineering MEng 2 Optional A weighted aggregate mark of 40% is required to pass the module
Electronic Engineering with Computer Systems MEng 2 Optional A weighted aggregate mark of 40% is required to pass the module
Electronic Engineering MSc 2 Optional A weighted aggregate mark of 40% is required to pass the module
Computer Vision, Robotics and Machine Learning MSc 2 Optional A weighted aggregate mark of 40% is required to pass the module

Please note that the information detailed within this record is accurate at the time of publishing and may be subject to change. This record contains information for the most up to date version of the programme / module for the 2018/9 academic year.