Designing an Autonomous Service Robot

Co-taught with Lars Kunze
Thom Building LR6 Mon. 2-4pm Now online, Mon. 2-4pm


Robots have revolutionized industrial manufacturing in the 80’s and logistics in the beginning of this century. Now robots are staring to take their first steps in new domains and applications, working closer to human teammates. Today robots are staring to reach every-day urban, industrial, natural and domestic environments, with the aim of automating a plethora of tasks that up to now required human-level dexterity and intelligence. This third robotic revolution is just starting and you will design the killer application for this challenging field.

Challenge Problem

Your task, which is a paper-based only design exercise, will be to design all aspects of an autonomous service robot: hardware and software, as well as functional and usability requirements that would make for an efficient, cost-effective, useful robot application in a domain where the system will work alongside humans. Design elements can realistically be expected to include, (i) hardware for sensing and actuation (ii) software for navigation, motion planning and control, as well as human-machine interaction and task execution/monitoring, (iii) command and control interfaces for remote operation, system auditing and supervisory control.

Course Design

Beyond the usual 3YP organization involving log-books, group work, presentations, and writing, we expect several of the leading researchers in this area to be able to join us either in person or via Skype to present their work and answer questions. Additionally, we will provide notes and advice on developing ideas around (i) navigation and motion planning (ii) object and environment perception, (iii) mobility and actuation. This will aid the various teams in developing solutions to appropriate tasks, as they develop their project designs. The students on the EEM pathway will develop the engineering solution in MT before considering an appropriate exploitation pathway in HT.


Version control for collaboration
You may use git via bitbucket or github for version control of your reports, software, and presentations. You may wish to read online resources like this blog and this tutorial to help acquaint yourself with this essential technology. And remember, practice makes perfect. In addition to other metrics for judging relative contributions, your git behaviour will be tracked. Also, version control systems, in addition to writing in laboratory notebooks, can help to establish IP precedence.

LaTeX for writing

You must use latex and bibtex to write your final report and the report must be versioned in the aforementioned git repository. You may wish to read online resources like this blog to get started.


All groups will work together through Michaelmas on the overall hardware and software design. The bulk of Michaelmas will be dedicated to the design of the robot hardware and software. The later part of Michaelmas will serve as an introduction the possible external software and hardware. Hilary will be dedicated to the software/intelligence design for mobility or perception, with a competition to he held between groups on one particular essential autonomy aspect.

Michaelmas Term
Week Due Activity
1 Groups Intro
2   Talks (1, 5, 9, 13) - Pitch (overview & use case/cases)
3   Guest lecture
4 Log books Talks (2, 6, 10, 14) - Device hardware
5   Guest lecture
6   Talks (3, 7, 11, 15) - Device software
7 Log books Talks (4, 8, 12, 16) - External hardware + software
8   Guest lecture
Hilary Term
Week Due Activity
1   Challenge problem brief
2 Log books Guest lecture
3   Challenge problem progress talks (1, 5, 9, 13)
4   Challenge problem progress talks (2, 6, 10, 14)
5   Challenge problem progress talks (3, 7, 11, 15)
6   Challenge problem progress talks (4, 8, 12, 16)
7 Log books Guest lecture
8   Practice final presentation
Trinity Term
Week Activity
1 Draft of report
2 A possible date for final presentation
3 A possible date for final presentation
4 Report due

Intro Slides

Inspirational Material