COMP105P - Robotics Programming

This database contains the 2017-18 versions of syllabuses. Syllabuses from the 2016-17 session are available here.

Note: Whilst every effort is made to keep the syllabus and assessment records correct, the precise details must be checked with the lecturer(s).

CodeCOMP105P
Year1
PrerequisitesNone
Term2
Taught ByGhita Kouadri Mostefaoui (100%)
Lab sessions will be facilitated by Teaching Assistants.
2 external speakers, to be confirmed.
AimsThe primary objective of the course is for students 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 OutcomesUsing 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.

Content

The basics:

Compile code, run code in simulator, upload code to the robot.

Movement:

Write code from scratch to cause the robot to draw geometrical shapes.

Motor Encoders:

Extend code from previous weeks to use the input from the motor encoders to adapt motor power.

Data structures and algorithms:

Implementing and visualizing sorting algorithms on data structures using the robot.

Sensors:

Reading values from infrared and ultrasonic sensors.

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 shortest path between two points.

Method of Instruction

1 x hour lecture per week.

2 x 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.

Assessment

The course has the following assessment components:

  • Coursework (100%)

To pass this course, students must:

  • Obtain an overall pass mark of 40% for all components combined.

Resources

Reading list available via the UCL Library catalogue.