Module Specification

The information contained in this module specification was correct at the time of publication but may be subject to change, either during the session because of unforeseen circumstances, or following review of the module at the end of the session. Queries about the module should be directed to the member of staff with responsibility for the module.
Title Robotic Systems
Code ELEC230
Coordinator Dr D McIntosh
Electrical Engineering and Electronics
D.G.Mcintosh@liverpool.ac.uk
Year CATS Level Semester CATS Value
Session 2021-22 Level 5 FHEQ Whole Session 15

Aims

This module aims to give students an understanding of the basic knowledge required to develop a mobile robot system. Initially they will be taught the features of Linux and how to program using the Object-Oriented approach with C++, along with aspects of sensors and actuators for mobile robots. Subsequently students will be taught the key features of ROS for simulation and then use ROS to explore aspects of development of a mobile robot system.


Pre-requisites before taking this module (other modules and/or general educational/academic requirements):

ELEC143 DIGITAL & INTEGRATED ELECTRONICS DESIGN; ELEC142 ELECTRICAL CIRCUITS AND SYSTEMS; ELEC123 Introduction to Mechatronics; ELEC129 INTRODUCTION TO PROGRAMMING IN C 

Co-requisite modules:

ELEC207 INSTRUMENTATION & CONTROL 

Learning Outcomes

(BH1) Understanding Linux and the mechanisms provided for multi-tasking

(BH2) Understanding the features of an Object-Oriented Programming language and the ability to code in C++

(BH3) Knowledge of the capabilities of sensors and actuators used in mobile robots

(BH4) Understanding the ROS system

(BH5) Understanding the basics of Image Processing


Syllabus

 

Part 1 (with approximate numbers of lectures and/or instructional sessions within labs):
- Module overview – Introduction to mobile robots (0.5)
- Introduction to Operating Systems and Linux (2.5)
- Object-Oriented programming in C++ (8)
- Inter-process communications in Linux (3)
- Actuators and sensors on mobile robotic systems (3)
- Network Communications (Ethernet and Wi-Fi) (1)

Part 2 (with approximate numbers of lectures and/or instructional sessions within labs):
- Introduction to ROS and Package Management (2)
- Robot and system modelling using ROS, RViz and Gazebo (7)
- Interfacing Sensors and Actuators with ROS (3)
- ROS on the Jetbot Nano, or other application of ROS (2)
- Image Processing using OpenCV (4)


Teaching and Learning Strategies

1 - Lectures
2 - Laboratories
3 - Course Work

Due to COVID-19, one or more of the following delivery methods will be implemented based on the current local conditions and the situation of registered students. It is anticipated that a 'blended learning' combination of (a) and (c) will be in operation for Semester 1 (hybrid delivery but with minimal social distancing for on-Campus activities).

(a) Hybrid delivery, with social distancing on Campus:

Teaching Method 1 - On-line asynchronous lectures
Description: Lectures to introduce and/or explain the material
Attendance Recorded: No
Notes: On average ~50m of video per week along with pdf and accompanying notes/reading

Teaching Method 2 -Synchronous, face-to-face (Campus based) Laboratory Work Tutorials
Description: Labs on the lecture material, Assignments and Set Problems / Practical material. Labs will sometimes incorporate an instructional session and/or notes/reading to introduce or expand on further relevant syllabus material.
Attendance Recorded: Yes
Notes: 3 hours of supervised lab per week (10-12 weeks per semester)

(b) Fully online delivery and assessment

Teaching Method 1 - On-line asynchronous lectures
Description: Lectures to introduce and/or explain the material
Attendance Recorded: No
Notes: On average ~50m of video per week along with pdf and accompanying notes/reading

Teaching Method 2 - on-line Laboratory Work Tutorials
Description: Virtual labs on the lecture material, Assignments and Set Problems / Practical material. Labs will sometimes incorporate an instructional session and/or notes/reading to introduce or expand on further relevant syllabus material.
Attendance Recorded: Yes
Notes: 3 hours of on-line supervised lab per week where students can contact demonstrators to provide support (10-12 weeks per semester)

(c) Standard on-campus delivery with minimal social distancin g:

Teaching Method 1 - Lecture
Description: Lectures to introduce and/or explain the material
Attendance Recorded: Yes
Notes: On average one per week along with pdf and accompanying notes/reading

Teaching Method 2 -Synchronous, face-to-face (Campus based) Laboratory Work Tutorials
Description: Labs on the lecture material, Assignments and Set Problems / Practical material. Labs will sometimes incorporate an instructional session and/or notes/reading to introduce or expand on further relevant syllabus material.
Attendance Recorded: Yes
Notes: 3 hours of supervised lab per week (10-12 weeks per semester)


Teaching Schedule

  Lectures Seminars Tutorials Lab Practicals Fieldwork Placement Other TOTAL
Study Hours 24

    72

  54

150
Timetable (if known)              
Private Study 0
TOTAL HOURS 150

Assessment

EXAM Duration Timing
(Semester)
% of
final
mark
Resit/resubmission
opportunity
Penalty for late
submission
Notes
(230.4) Regular open-book online Canvas Quiz on recent lecture/lab content. 4 quizzes per semester, on the given week's lab day. Approx. 5 questions per quiz.  Each quiz open for 1    15       
CONTINUOUS Duration Timing
(Semester)
% of
final
mark
Resit/resubmission
opportunity
Penalty for late
submission
Notes
(230.3) Image Processing with OpenCV and ROS - or similar.  20 hours    20       
(230.2) Simulating a "Roomba"-type vacuum cleaner with ROS, RViz and Gazebo - or similar.  20 hours    25       
(230.1) Interfacing a range finding sensor and a compass to a Raspberry Pi Zero W - or similar.  15 hours    25       
(230) Classes and Objects - Object-Oriented Programming with C++.  15 hours    15       

Reading List

Reading lists are managed at readinglists.liverpool.ac.uk. Click here to access the reading lists for this module.