As part of the course 'Introduction to Robotics' (ECE 470), we had a lab component that involved programming a Rhino robotic arm. This course covered a variety of topics like DH parameters, inverse kinematics, motion planning and basic computer vision (edge detection, centroid detection and block detection). 

One of the coolest parts of the lab was to make the Rhino robot arm capable of solving a 3 block Towers of Hanoi problem. The problem description can be found here. Seeing the robot move the blocks around and solve the problem, using computer vision, was the moment I decided to specialize in robotics, AI and Machine Learning. I found it amazing to think that a machine could be trained to 'think' in a way that is very hard to distinguish from a human. Of course, people may disagree, citing the Turing test and other tests. But I still think that, for all practical intents and purposes, we are getting ever closer to bridging the gap between artificial intelligence and what we can describe as 'natural consciousness'. 

You can see the robot in action by watching the Youtube video.