Skip to content
2nd year annual group project
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
main
tests
utils
.gitignore
README.md

README.md

Robotics Group Project

2nd year annual group project

Overview

The project is to design, build, and test a mobile robot which will compete against other robots to perform a predefined task. The project will be undertaken in small teams (typically 4 or 5 people). Groups will hold regular meetings which must be formally documented through agendas and minutes. Each group will present their results through presentations and demonstrations of the performance of their robot. Individually students also write a design report prior to commencing the project and review at the end of the project documenting their own personal contribution and that of their team-mates. Performance will be judged from the presentations, the success of the robot in performing the task, reports, minutes, agendas, and from the supervisor’s overall assessment of each member’s contribution towards the work.

Aims & outcomes

  • To provide practical experience of working in a group to solve a complex problem and design, manufacture, and test a mobile robot.
  • Know how to work in a team environment.
  • Understand the importance of project and team management and work scheduling and reporting.
  • Have developed skills for generating ideas and for realising their designs in working device.
  • Understand how to integrate knowledge from a range of subjects (taught in other courses) and have had practical experience of applying that knowledge.
  • Have insight into the difficulties of systems engineering and the practical problems associated with building a complex device such as a robot.
  • Have a fundamental understanding of (software) systems engineering processes, testing approaches, and management of artefacts developed in a distributed fashion in a team of software developers.

Hardware

LEGO EV3 Robots are used in this project and Java is required to be used for programming the robots.

Term 1 tasks: line-following and obstacle avoidance

Task 1

  • The robot should start following the line when a "curtain" is lifted.
  • One obstacle with defined geometry is placed at a known location.
  • The robot travels around the obstacle and reaches the track again accurately (< 10 cm away the obstacle).
  • The robot stops at the curtain.

Task 2

  • The robot should start following the line when a "curtain" is lifted.
  • One obstacle with undefined geometry is placed at a unknown location.
  • The robot travels around the obstacle and reaches the track again accurately (< 10 cm away the obstacle).
  • The robot stops at the curtain.

Term 2 tasks: self-localization and path planning

Task 1

  • The robot should localize its position using the Bayesian filter methodology.
  • The robot should use the A star algorithm to find a path to a given goal, avoiding the obstacles.
  • The robot should return to its starting position.

Task 2

  • The robot should localize its position using the Bayesian filter methodology.
  • The robot should use the A star algorithm to find a path to a given goal, avoiding the obstacles.
  • The robot should enter a tunnel and read a color.
  • The robot should go to the corresponding colored point.
  • The robot should return to its starting position.

Dependencies

  • Java 7
  • leJOS library

Eclipse users

leJOS has a dedicated plugin for Windows.

IntelliJ users

  • Dependencies: lejos-ev3-code as external library
  • Sources:
    • lejos-ev3-code/ev3classes/src
    • lejos-ev3-code/DBusJava/src

Project structure

TODO

Team members

Copyright

TODO

You can’t perform that action at this time.