Single Player Foosball Table with an Autonomous Opponent
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 n n n 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 ECE 4007 Team FIFA School of Electrical and Computer Engineering
System Overview Webcam Unworthy Human Opponent USB 1. 1 Image Processing Computer RS-232 Servo Controller Board UART and PWM Servo Assemblies ECE 4007 Team FIFA School of Electrical and Computer Engineering
Image Processing n Use webcam for image input ¡ ¡ n SPC-900 NC 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 ECE 4007 Team FIFA School of Electrical and Computer Engineering
Servo Controller Board n Servo controller board communicates with PC and the servos ¡ ¡ n n AX-12 digital and HS-81 PWM servos RS-232 UART communications with PC Separate microcontrollers for each PWM servo Designed a manufacturable PCB ECE 4007 Team FIFA School of Electrical and Computer Engineering
Servo Controller Board ECE 4007 Team FIFA School of Electrical and Computer Engineering
Servo Controller PCB ECE 4007 Team FIFA School of Electrical and Computer Engineering
PC-Controller Communication n UART data communication between PC and microcontroller at 115. 2 k. Bit/s Java Comm. API used for PC serial communication Custom communication protocol Data bits for communication message 0 1 2 3 4 5 Servo Control 1 0 0 Servo ID Special Command 1 0 1 6 7 8 9 10 11 12 13 14 15 Positional Data Command Identifier Control Bit ECE 4007 Team FIFA School of Electrical and Computer Engineering
Mechanical Assembly ECE 4007 Team FIFA School of Electrical and Computer Engineering
Mechanical Assembly ECE 4007 Team FIFA School of Electrical and Computer Engineering
Prototype Results n 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 ECE 4007 Team FIFA School of Electrical and Computer Engineering
Demonstration Video ECE 4007 Team FIFA School of Electrical and Computer Engineering
Technical 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 100 ms ECE 4007 Team FIFA School of Electrical and Computer Engineering
Milestones Milestone Projected 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 ECE 4007 Team FIFA School of Electrical and Computer Engineering
Future Improvements n Redesign with CMOS camera and FPGA ¡ ¡ n Better mechanical design ¡ ¡ n n n Reduce camera latency Improved software efficiency 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 ECE 4007 Team FIFA School of Electrical and Computer Engineering
- Slides: 15