Raspberry-Pi controlled robot for a school robotics project
For a school project, several teams constructed and programmed small robots to navigate on uneven terrain and complete various tasks. The required tasks included being able to drive around, measure the position of the "sun" in the sky, measure the wind speed, measure the salinity of a puddle of water, measure the temperature of a block of ice, and plant a flag into the ground. Each team was also required to pick several additional tasks, according to the number of people in the team. We chose to also collect gravel from a pile. Most teams controlled their robots using the Vex Cortex and programmed their robots with RobotC. However, I didn't like using RobotC, so as the team's programmer, I chose to control our robot with a Raspberry Pi and program it with C. However, the Raspberry Pi only has two hardware pulse-width modulation (PWM) outputs, and no analog inputs, so it would not have been able to control all of the motors or use the light and salinity sensors. T