I built a LEGO Mindstorms EV3 robot, and programmed it in C using the ROBOTC software from Carnegie Mellon Robotics Academy.
The robot uses a colour sensor, touch sensor, gyro sensor, and ultrasonic sensor to sense its environment, and is propelled by two servomotors in a differential drive system.
The robot can navigate an obstacle course and:
- Follow a black line using a PID controller
- Follow a wall using another PID controller
- Detect and shoot at targets
- Climb uphill
- Shoot at targets
Here is a YouTube video showing the robot in action:
https://www.youtube.com/watch?v=qg3koZGPkho
More pictures of the robot: