Air Hockey AI opponent.
The puck is tracked using a camera connected to a Raspberry Pi 3. The Pi uses OpenCV (an open-source computer vision learning library) to recognize the puck. The path of the puck is then predicted over time. The current and predicted coordinates are sent to an Arduino Mega clone (2560). The Mega contains the AI, which controls the arm using inverse kinematics (coordinates converted to angles).
Huge shoutout to Adrian at PyImageSearch, who made it easy to get started with OpenCV: http://www.pyimagesearch.com/2016/04/18/install-guide-raspberry-pi-3-raspbian-jessie-opencv-3/