So our summer school is now over. I really enjoyed teaching the students. They came back for the second week, so I think they enjoyed it too! You can see all the photos in the gallery here.
We started day 1 learning about programming and Python. By day 2 all the students had built a simple music library application which played their own mp3 files.
On days 3 and 4 we got stuck into physical computing with the Raspberry Pi, and ended having built 3 remote controlled robots, controlled using Playstation 3 and Playstation 4 controllers:
There were some tricky Python coding challenges, in particular mapping the range of values coming from the joystick controls to control the speed and direction of the motors. But by the end of day 4 all students were tweaking and optimising their code to enter the competition challenge. Well done to Joel for guiding his robot, Barry, to top place in our leader board for that challenge.
In a busy day 5 we took on the challenge to make the robots follow a line. Using infrared sensors, the students were able to detect a black line on white paper. They then worked to make their robots respond to the various states that the robot can find itself whilst navigating. Again, the coding was in Python and the day ended with a timed challenge. Barry The Robot again managed to take top spot on the day, just ahead of Samuel and Mikel’s “Mk I” (who managed the best time when travelling clockwise around the course).
It was a pretty hectic day, probably because of the long lunch of homemade pizzas (sadly, no photos as the pizza was all consumed in a flash!). But to end with most of the robots completing the course with no penalties was very satisfying.
In week 2 students were encouraged to create their own project. Over 4 days we had top trump games, noughts-and-crosses, and a quite amazing and very nearly completed maze following robot. Here are the students painting their maze:
For the maze, the idea was that the robot navigated from the starting position to the end. The maze included some dead-ends, and the aim was to make a first run to map out the nodes, including the dead-ends, and a second run to optimise the run, eliminating turns into dead-ends. The students managed the first run, generating the in-memory map of the maze nodes, and we managed to dry-run the algorithm for the second run, seeing how the generated map could be used to do an optimal run. Sadly, we ran out of time to see the robot complete the second run. It was very encouraging to see the students set themselves such a difficult challenge and get so close to completing it. I really didn’t expect to see such an advanced project undertaken in the 2 weeks. I hope they take this project away and work on it to completion.
So, at the end of 2 weeks, I have some tidying up to do, a lot of robot bits to recycle, a couple of fried ultrasonics sensors to discard (that’s what happens when you wire them the wrong way around), and some thinking to do to raise the bar for the next robot week at half term…