COMP1010 - Robotics ProgrammingNote: Whilst every effort is made to keep the syllabus and assessment records correct, the precise details must be checked with the lecturer(s).
- Taught By
- Mark Handley
- Jade Alglave
- The primary objective of the course is for student to engage in problem-based learning activities using programming as the tool. In this module, students will apply the programming they have learned in term 1, get experience with solving real non-trivial problems via hands-on engagement with a project.
- Learning Outcomes
- Using software to solve problems, including strategies for structuring code, dividing problems up into pieces that can be solved independently, then integrating the pieces into a whole to solve a large problem.
The basics: Compile code, run code in simulator, upload code to the robot.
Movement: Write code from scratch to cause the robot to drive in a straight line, a square and a circle.
Motor Encoders: Extend code from week 2 to use the input from the motor encoders to adapt motor power.
Sensors: Reading values frmo bump sensors and the multiple distance sensors.
Line sensing: Reading values from line sensors on the under-side of the robot. Write calibration code.
Line following: Write code to follow a line of tape on the floor.
Wall avoidance: Write code to drive along following the left wall, while avoiding crashing into objects in front.
Mapping + racetrack: Write code to drive around a racetrack between walls as fast as possible.
Maze exploration: Write code to explore a maze and find the centre.
Module concludes with competition.
Method of Instruction:
Two, two-hour lab classes per week. Students will have access to the robots in class time, and access to a simulator to be able to work outside labs.
Continuous assessment. Each week there will be a specific task that must be achieved. Marks will also be awarded for performance in the robot race competition.
To pass the course students must achieve an overall mark of 40%.
Resources for this course are on Moodle.