Title: Single%20Player%20Foosball%20Table%20with%20an%20Autonomous%20Opponent
1Single Player Foosball Table with an Autonomous
Opponent
- Michael Aeberhard
- Shane Connelly
- Evan Tarr
- Nardis Walker
Final Presentation December 10th, 2007
ECE 4007 Senior Design Team FIFA Dr. James Hamblen
2Project Overview
- Successfully implemented an autonomous foosball
table - Total parts cost 710
- Player assumes one side, a computer controls the
other side - Tracking through computer vision
- Control players with servos
3System Overview
Webcam
Unworthy Human Opponent
USB 1.1
Image Processing Computer
RS-232
Servo Controller Board
UART and PWM
Servo Assemblies
4Image Processing
- Use webcam for image input
- SPC-900NC chosen, but specs were falsified
- USB 1.1 allowed maximum 30 FPS
- Java Media Framework for image processing
- Localization and prediction performed in real
time - Processing kept in lockstep with frame
acquisition - Both ball and opponent players tracked
5Servo Controller Board
- Servo controller board communicates with PC and
the servos - AX-12 digital and HS-81 PWM servos
- RS-232 UART communications with PC
- Separate microcontrollers for each PWM servo
- Designed a manufacturable PCB
6Servo Controller Board
7Servo Controller PCB
8PC-Controller Communication
- UART data communication between PC and
microcontroller at 115.2 kBit/s - Java CommAPI used for PC serial communication
- Custom communication protocol
9Mechanical Assembly
10Mechanical Assembly
11Prototype Results
- Prototype successfully implemented basic foosball
gameplay elements - Trajectory prediction
- Continuous blocking alignment
- Offense/midfield lift up to create a clear shot
at proper time - Players attempt to kick when the ball is near
12Demonstration Video
13Technical Specifications
Item Specification Goals Demonstrated Specifications
Camera frame rate min. 60 frames per second 30 frames per second
Camera resolution min. 30 pixels per sq. in. 39.5 pixels per sq. in.
Localized ball tracking success rate 80 of frames minimum 93 of frames
Kick rate (ball velocity) up to 10 feet per second 1.5 feet per second
Lateral player speed up to 2.5 feet per second 0.77 feet per second
Lateral player position resolution at least 1 cm 0.228 mm
Move and kick success rate 75 of attempts minimum 33 of attempts
Unopposed goal rate 50 of attempts minimum 10 of attempts
Goalie blocking success rate 90 of attempts minimum 72 of attempts
Reaction time from webcam 200 ms maximum 100ms
14Milestones
Milestone Projected Date Date Met
Preliminary parts search and selection of proper motors 9/07 8/28
Initial parts order made 9/12 9/5
Complete Proposal 9/17 9/12
Foosball table built 9/15 9/19
Basic AX-12 servo to microcontroller communication 9/28 10/3
Basic vision processing completed 10/7 10/3
Basic mechanical design completed, begin implementing 10/03 10/10
Initial mechanical assembly of 1 handle completed 10/12 10/17
PWM to microcontroller communication 10/15 10/24
Completed PC to microcontroller communications 10/15 11/7
Completed assembly of all 4 handles 10/24 11/28
Final component integration and testing completed 11/21 12/6
15Future Improvements
- Redesign with CMOS camera and FPGA
- Reduce camera latency
- Improved software efficiency
- Better mechanical design
- Larger gears for faster lateral movement
- Some sort of belt-driven or pulley system
- Stronger, more reliable servos or motors
(requires larger budget) - Improved AI and prediction algorithms
- More gameplay features
- External digital scoreboard
- Variable difficulty settings