1 / 13

Single Player Foosball Table with an Autonomous Opponent

Single Player Foosball Table with an Autonomous Opponent. Michael Aeberhard Shane Connelly Evan Tarr Nardis Walker. Preliminary Design Review October 16 th , 2007. ECE 4007 Senior Design Team FIFA Dr. James Hamblen. Project Overview. Develop an automated human vs. machine foosball table

kory
Download Presentation

Single Player Foosball Table with an Autonomous Opponent

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Single Player Foosball Table with an Autonomous Opponent Michael Aeberhard Shane Connelly Evan Tarr Nardis Walker Preliminary Design Review October 16th, 2007 ECE 4007 Senior Design Team FIFA Dr. James Hamblen

  2. Project Overview • Develop an automated human vs. machine foosball table • Low-cost • Competitive play • Prototype is a modificationof a normal foosball table • Player assumes one side, a computer controls the other side Source: Gauselmann

  3. System Overview USB 2.0 Webcam Servos ImageProcessing PC Bi-directional UART and PWM RS-232 Physical Servo Control Board Foosball Table

  4. Image Processing • Use webcam for image input • SPC-900NC chosen for 90FPS • USB 2.0 allows 480Mbit/s • Use PC for image processing • Java Media Framework used forsoftware processing • Allows easy acquisition using a single command • As fast as C for media processing: up to 250FPS • Localization and prediction performed in real time

  5. Store current position Predict position at next frame Image Processing Acquire new frame from webcam Scan all pixels for yellow ball Ball found? No Yes Kalman Filter Acquire new frame from webcam Search localized area for yellow ball

  6. Servo Controller • A controller board is used to control the servo motors • Servo motors interact mechanically with the handles of the foosball table • Microchip PIC18F4520 microcontroller • Software for microcontroller written in C • AX-12 servos used for the lateral motion of handles • PWM servos used for the rotational kicking motion

  7. Servo Communication • AX-12 servos controlled by a bi-directional UART data bus • Each servo identified by a unique ID • AX-12 communications protocol • Read, write, write all, status instructions used to control and obtain information from the servos • AX-12 powered by a separate 9.6V source • Typical servo current draw: 1A each • Prevents power overload from microcontroller • Each PWM servo controlled by a pulse-width-modulated signal from the microcontroller

  8. AX-12 Servo Communication Source: Robotis AX-12 User Manual

  9. Servo Control Block Diagram PIC18F4520 Microcontroller MAX3100 UART MAX232 Transceiver PC SPIModule SPI UART RS-232 10 MBit/s 115.2 kBit/s 115.2 kBit/s PWMServo PWMServo PWMServo PWMServo Kicking Motion PWM Signals EPWMModule EUSARTModule UART AX-12 Servo AX-12 Servo AX-12 Servo AX-12 Servo Lateral Motion 1 MBit/s

  10. 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 PC-Controller Communication • RS-232 physical interface from PC to microcontroller • UART data communication between PC and microcontroller at 115.2 kBit/s • Custom communication protocol Data bits for communication message 0-1: Always [ 1, 0 ] 2: Control Bit (1 = special command, 0 = servo control) 3: Servo Type Select (0 = AX-12, 1 = PWM) 4-5: Servo Addressing (00 = 1, 01 = 2, 10 = 3, 11 = 4) 6-15: Positional Value

  11. Mechanical Assembly Nylon Gear (Attached to Servo) Nylon Track Top-Down View AX-12 Servo (Lateral) PWM Servo (Rotational) Foosball Table Nylon Gear Side View Nylon Track

  12. Current Status • Mechanical assembly • Goalie handle assembly complete • Currently testing the design • Servo control board • Successful AX-12 communication/control • Successful PC communication • Image processing • Preliminary tracking software completed • Processing successfully at over 200FPS

  13. Goals and Issues • Need to successfully test mechanical operation • Once completed, duplication of design is easy • Critical item – needs to be completed to continue development • Implement and test PC-microcontroller communication • Webcam acquisition rate is low • Currently at 10 FPS • Goal: at least 60 FPS • Begin developing gameplay AI

More Related