EGH446: Autonomous Systems: Project Parts A & B
Due Date: See blackboard, 2020. Weight: 60 %
Overview: Major Project. Groups of 2 students.
Project Overview †‡
The aim of this group-based project is to investigate and implement control and guidance approaches for a ground
or an aerial autonomous system. The goal is to design the necessary subsystems to build an autonomous vehicle
that is able to navigate to a goal location on an optimal path while avoiding obstacles. See appendix A and B
for detailed requirements.
During this project, the group must develop the following subsystems:
• A guidance subsystem that enable the vehicle to follow waypoints.
• A path planning sub-system that construct a trajectory to a goal location.
• A collision avoidance subsystem that steer clear of walls and static obstacles.
The aim to minimise the time taken to achieve the goal, given any random location within the workspace. The
group may use the following subsystems from the provided Simulink library:
• Laser/Lidar subsystem.
• Obstacle detection subsystem.
At the start of the project, the team is given:
• A high fidelity dynamic simulation environment in Matlab/Simulink in which to build their ground or aerial
• A getting started guide for the simulation environment.
• Basic stabilisation approach for each vehicle.
• A Simulink library with control/guidance/navigation blocks that can used to validate your implemented
c Queensland University of Technology, 2020. EGH446: Autonomous Systems. School of Electrical Engineering and Robotics,
Queensland University of Technology.
‡Please report errors within this document to firstname.lastname@example.org
EGH446: Semester 1, 2020. 2
Submission Requirement and Assessment
The final submission must contain for part A, two reports and the final implemented solution using the simulation
environment provided. For part B, a single report and the final implemented solution using the simulation
environment provided. Reports and software should be compressed in a ZIP file and submitted to blackboard.
Each group will submit:
1. The group’s solution implemented within the provided simulation environment in Matlab/Simulink (i.e.
submit the whole Simulink file so that the solution can be simulated by the marker).
2. Report(s) addressing requested information.
3. See BB for more details.
Please review the CRA sheet to see how your submission will be graded.
Important Instructions and Rules
1. In this project you will be required to investigate and implement suitable algorithms for automation using
concepts covered in lectures. Your learning will be at a more detailed level than covered in the teaching
• It is suggested you initially attempt lower automation levels before increasing automation complexity.
Initially, using the position only waypoint capture is conceptually easier, but the path planning and
obstacle approaches are required for higher level performance.
2. You may not use pre-designed navigation or guidance blocks/algorithms available in the
3. You may need to tune the provided base stabilisation approaches provided (optional).
4. Students should divide the work and take ownership for a subsystem(s) and document their work in the
5. These sub-systems are coupled, and design decisions in each sub-system impacts the other system (in the
sense that all sub-systems need to work together). Students will need to negotiate their design decisions
with each other.
6. On request the unit coordination may give permission for submission by an individual who completes all
systems by themselves. They will be marked according to the same CRA.
7. Note that QUT’s policy on plagiarism applies to this project:
EGH446: Semester 1, 2020. 3
A (30 %) Part A Requirements: Due Week 7, 20th April.
1. Given the basic dynamics and stabilisation, design a guidance logic to navigate waypoints.
2. Report on the following:
(a) Total mission time. (Time it takes the vehicle to visit all waypoints).
(b) Provide a detailed explanation of your guidance subsystem. Include a block diagram of the overall
design, include plots and necessary diagrams to support your explanations.
(c) Implement and report on average cross track error.
(d) In terms of your position controller, report on the following performance parameters: rise time (the
time needed by the control system to reach the desired value after a perturbation), peak overshoot
(the highest value reached by the response before reaching the desired value), settling time (the time
required to reach and stay within 2% of final value) and steady-state error. Use as step function x =
10 m, y = 0 m, with initial heading θ0 = 300
. See below.
!” = 30″
Figure 1: Example setup for position controller design
EGH446: Semester 1, 2020. 4
B (30%) Part B Requirements: Due Week 12, 28th May
Given the dynamics of a robot, design the necessary subsystems to allow this robot to navigate in an indoor environment (see Fig. 2). The environment contains obstacles that must be avoided by your robot while navigating
towards a target waypoint. The navigation consists in visiting 5 waypoints.
• Initial position (x, y) = (2, 2) m
• Initial heading, θ= 0 deg
• Robot radius: 0.25m
2. Waypoints and obstacles
• Number of waypoints: 5
• Location (x, y) of each waypoint: Generated randomly within the area boundaries.
• Area boundaries XWorldLimits: [0 26], YWorldLimits: [0 20.5] in m.
• Waypoints must not overlap walls or obstacles.
• Number of obstacles: 12.
• Obstacles positions are given.
• Obstacle height is such that block any aerial robot path.
• All waypoints must be visited, either ordered or unordered. Robot stop at the last waypoint.
• Robot trajectories must not cross wall or obstacles.
• Minimum distance between your robot and obstacles and walls is equal to robot radius. Trajectory
must not come closer than this value to any wall or obstacle.
• The mission time should be no longer than 7 min.
• Obstacles must be avoided using the onboard sensor.
4. Reporting (single report)
(a) Each student must include a statement of contribution in the report.
(b) Provide an explanation of the path planner algorithm used. Provide details on parameters used,
working principle, advantages and disadvantages, reasons for choosing the algorithm.
(c) Provide an explanation of the obstacle collision avoidance approach used. Working principle, how is
the sensor used to detect obstacles and how is this information integrated with the guidance subsystem.
(d) Provide an explanation on which subsystems from part A were re-used and how the guidance approach
from part A was used in part B.
EGH446: Semester 1, 2020. 5
Waypoint 3 Waypoint 5
Figure 2: Example setup for the task
1. Obstacles are given by obstacles.mat, third column is optional (r=1, g=2, b=3). Is used by the robot
visualizer to differentiate obstacles by color.
X Y Color
4 4 1
8 8 2
8 2 3
8 18 1
2 12 3
14 14.5 2
22 14 1
16 6 3
23 4 2
24 18 1
12 4 2
21 9 3
2. Map is given by complexMat.mat. Logical and probabilistic versions of the map are given by logical occupancy map.mat
and probabilistic occupancy map.mat, respectively. A ’1’ or ’0’ (logical) represent occupied or free cells. A
’0.9990’ or ’0.0010’ (probabilistic) represent probabilities for occupied or free cells, respectively.