- UCAS course code
- HHH6
- UCAS institution code
- M20
Master of Engineering (MEng)
MEng Mechatronic Engineering
*This course is now closed for applications for 2025 entry.
- Typical A-level offer: AAA including specific subjects
- Typical contextual A-level offer: AAB including specific subjects
- Refugee/care-experienced offer: ABB including specific subjects
- Typical International Baccalaureate offer: 36 points overall with 6,6,6 at HL, including specific requirements
Fees and funding
Fees
Tuition fees for home students commencing their studies in September 2025 will be £9,535 per annum (subject to Parliamentary approval). Tuition fees for international students will be £34,000 per annum. For general information please see the undergraduate finance pages.
Policy on additional costs
All students should normally be able to complete their programme of study without incurring additional study costs over and above the tuition fee for that programme. Any unavoidable additional compulsory costs totalling more than 1% of the annual home undergraduate fee per annum, regardless of whether the programme in question is undergraduate or postgraduate taught, will be made clear to you at the point of application. Further information can be found in the University's Policy on additional costs incurred by students on undergraduate and postgraduate taught programmes (PDF document, 91KB).
Scholarships/sponsorships
For information about scholarships and bursaries please visit our undergraduate student finance pages and our Department funding pages .
Course unit details:
Software for Robotics
Unit code | EEEN42041 |
---|---|
Credit rating | 15 |
Unit level | Level 4 |
Teaching period(s) | Semester 1 |
Available as a free choice unit? | No |
Overview
Software is a fundamental element of robotic systems, both for embedded control and simulation. Students will use the Linux OS, which is widely used in the robotics community and programme in Python. Employing appropriate robotic middleware, they will produce custom code whilst following good software development practices. They will construct simulation environments allowing visualisation of robotic systems and hardware-in-the-loop integration and develop and implement a navigation stack for a robot within it. Key considerations such as cybersecurity will also be explored.
Topics covered:
- Introduction and installation
- Python best practices
- ROS2 packages, nodes, and libraries
- ROS2 Messages, Parameters, and Launch files.
- ROS2 services and actions
- URDF & Describing Robots
- Gazebo & Simulations
- Navigation & Planning Pt. 1
- Create a ROS2 package with a map (.pgm and .yaml files) for a Gazebo simulation environment.
- Navigation & Planning Pt. 2
- Create a ROS2 package which contains a suitable launch file and .yaml configuration files to run a semi-autonomous navigation of a simulated mobile robot using Nav2.
- Behaviour Trees
Aims
Introduce students to the key software technologies used within the robotics community. Students will make use of the Linux OS and programme in Python as they develop software engineering skills employing widely used middleware for robotic systems in a range of simulation environments.
Learning outcomes
On successful completion of the course, a student will be able to:
ILO 1: Use the Linux operating system and programme in Python.
ILO 2: Demonstrate good software engineering practices in the development of code, including the use of version control and testing methodologies.
ILO 3: Employ appropriate middleware for robotic systems and produce custom code to integrate into it.
ILO 4: Construct simulation environments allowing visualisation of robotic systems and hardware-in-the-loop integration.
ILO 5: Design and implement a navigation stack for a robotic system and evaluate its performance in simulation.
ILO 6: Discuss the challenges of cybersecurity within software for robotic systems.
Assessment methods
Method | Weight |
---|---|
Report | 50% |
Practical skills assessment | 50% |
Feedback methods
.
Study hours
Scheduled activity hours | |
---|---|
Lectures | 33 |
Tutorials | 9 |
Independent study hours | |
---|---|
Independent study | 108 |
Teaching staff
Staff member | Role |
---|---|
Murilo Marinho | Unit coordinator |
Pawel Ladosz | Unit coordinator |