Our students (working in groups of 3 or 4) had to develop a robot to solve a "Navigation, Search and Approach" challenge. This was done using the open source robot simulator
Webots. The first task was to design the robot, from scratch, by selecting appropriate geometries, a drive configuration (i.e. number and placement of wheels/motors) and selecting sensors that would allow the robot to make measurements of its surroundings to allow it to complete the challenge. As you'll see from some of the images shown early on in the video, some of the groups were very creative with their designs!
Once the robot had been designed, the students then programmed their robots (using the Python programming language) to achieve the following behaviours:
- Detect the colour of the walls surrounding the robot at the start of the arena and remember this
- Navigate a maze using distance sensors to detect the walls and avoid crashing into them
- Use cameras and colour sensors to search for an object of the same colour as the starting zone
- Approach this object and stop within a predefined zone surrounding it without crashing into it.
The robots were required to complete the challenge in 2 minutes or less, and the students had 6 weeks in total to work on this. We created some example simulations for them to use to help when designing their robot behaviours, but they weren't shown the configuration of the final arena (as depicted in the video), so they had to programme their robots effectively, to be able to cope with a completely unknown environment!
Note: the same would have been done in the lab with real robots originally, but had to be moved to simulation in light of the COVID-19 situation.