150 likes | 731 Views
Single Player Foosball Table with an Autonomous Opponent. Michael Aeberhard Shane Connelly Evan Tarr Nardis Walker. Final Presentation December 10 th , 2007. ECE 4007 Senior Design Team FIFA Dr. James Hamblen. Project Overview. Successfully implemented an autonomous foosball table
E N D
Single 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
Project 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
System Overview Webcam Unworthy Human Opponent USB 1.1 Image Processing Computer RS-232 Servo Controller Board UART and PWM Servo Assemblies
Image 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
Servo 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
Data bits for communication message 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Servo Control 1 0 0 Servo ID Positional Data Special Command 1 0 1 CommandIdentifier Control Bit PC-Controller Communication • UART data communication between PC and microcontroller at 115.2 kBit/s • Java CommAPI used for PC serial communication • Custom communication protocol
Prototype 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
Future 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