Title: Outline
1(No Transcript)
2Outline
- Introduction Jeff
- Pin Side Unit
- Power Supply - Jeff
- Sensor / Filter - Dan
- Timing / Image Transmission - John
- Digital Camera - Elizabeth
- User Side Unit
- Image Processing Kelly
- User Interface - Joe
- Conclusions / Questions - Jeff
3IntroductionBackground
- Inspiration for our project came from the GCC
bowling alley. - Conducted a survey and two interviews.
- Current systems were too expensive and required
professional technicians to install. - Bowl-O-Drome uses AMF Boss system.
4IntroductionDesign Objectives
- Minimized production costs
- (recurring costs lt 500)
- Installable by bowling center owners without the
assistance of a professional technician - Accurately keeps track of all game information
for up to six players, including scoring
information for each ball and the current score - GUI is intuitive and easily understood by even
novice bowlers
5System Block Diagram
Pin Side Unit
User Side Unit
Picture from Pins
Power Supply
Matlab / C Code
Timer Circuit
Digital Camera
What is to be Displayed
Image of Pins
Switch Signal w/ Delay
Personal Computer (Notebook)
Image of Pins
Camera Receiver
IR Switch Filter
What is to be Displayed
Image of Pins
Sweep
Display
Image of Pins (wireless)
6Power Supply
7System Block Diagram
Pin Side Unit
User Side Unit
IR Switch Filter
Sweep
8Sensor
- Triggers camera to take picture
- Original plan to have laser reflect off bowling
ball - New plan to have laser reflect off sweep
- Timing delays are uniform regardless of ball
speed - Can use smaller laser due to shorter distance
9Receiver
- Use phototransistor in actual circuit with 850nm
filter for ambient light rejection - Reflect signal using reflective tape on ball sweep
10Transmitter
- Scratch using LEDs for using VCSEL
- Lower power consumption and threshold current
than traditional EELs - Longer lifetime
- Narrower beam divergence
- Coherent, predictable light output
- Much more efficient
11Amplification of Signal
10k
12Square Wave Generator and Filter
13Purpose of the Filter (or lack thereof)
- Ambient light could cause false triggers
- Has not been an issue at the GCC Bowling Lanes
- Lack of testing conditions (cosmic bowling or
other varied lighting conditions) - Left filter in circuit for
- system robustness
14System Block Diagram
Pin Side Unit
User Side Unit
Switch Signal w/ Delay
Timer Circuit
IR Switch Filter
Sweep
Image of Pins (wireless)
15Circuit ComponentsTiming Circuit
16Timing Circuit
- After sweep trips the ball sensor, delay for pins
to settle - Second delay to prevent retriggering
- Analyzed video of pinsetter operation to
determine appropriate delays - First delay - 1.4 seconds
- Second delay - 8.75 seconds
- Camera triggers after first delay
17Image Transmission
- Problem
- Getting the data from the camera side to the
computer on the user side - System Requirements
- Small Files approximately 16 KB
- High speed transfers not needed
- Minimal system installation difficulty
18Image TransmissionWhat didnt work
- Aerocomm AC4490 900 MHz RF Transceivers
- Unable to interface with camera / computer
- Microtune Bluetooth Printer Adapter
- Unable to support required data rates
What worked
- Camera with integrated Bluetooth connection
19System Block Diagram
Pin Side Unit
User Side Unit
Picture from Pins
Digital Camera
Switch Signal w/ Delay
Timer Circuit
Image of Pins
Camera Receiver
Image of Pins
IR Switch Filter
Sweep
Image of Pins (wireless)
20Digital CameraObstacles
- Logitech Clicksmart 310
- Unable to interface the camera to a wireless
connection due to bandwidth issues - Lenses to magnify image to increase usable area
- Unable to attach to camera and keep in focus
21Digital CameraThe Success
- Camera takes picture at a specified time
- Picture visibly shows all ten pins with
sufficient spacing for image processing - Image is accurately transferred to user-side
computer
Logitech Quickcam Cordless
22Digital Camera
- Specifications
- Operating Range 75 feet
- Operating Band 2.4 GHz (Bluetooth)
- Four separate channels of operation
- 320 x 240 Still Image and Video Capture
23Digital Camera
- Two pins of interest on the camera switch
- During normal operation one is held high and the
other low - Camera takes a picture on a high-to-low
transition - Timer circuit is connected to the base leg of a
transistor - Camera pins connected across collector and
emitter legs of transistor
24Camera Location
25System Block Diagram
Pin Side Unit
User Side Unit
Picture from Pins
Matlab / C Code
Digital Camera
Switch Signal w/ Delay
Timer Circuit
What is to be Displayed
Image of Pins
Image of Pins
Personal Computer (Notebook)
Camera Receiver
Image of Pins
IR Switch Filter
Sweep
Image of Pins (wireless)
26Image Processing
- Converting a jpeg to a single integer
27Image Conversion
28Image Conversion
29Image Conversion
30Aligning the Camera
- Scan the picture, looking for a region that meets
the following criteria - gt 25 of pixels are white
- Region has black borders that are at least 2
pixels wide
31Horizontal Scanning Illustration
- Using a horizontal line scan, determine max
number of white objects in the region - Each object must be between 3 and 12 pixels long
- Return this number to scorekeeping code
32System Block Diagram
Pin Side Unit
User Side Unit
Picture from Pins
Power Supply
Matlab / C Code
Timer Circuit
Digital Camera
What is to be Displayed
Image of Pins
Switch Signal w/ Delay
Personal Computer (Notebook)
Image of Pins
Camera Receiver
IR Switch Filter
What is to be Displayed
Image of Pins
Sweep
Display
Image of Pins (wireless)
33Autostrike User Interface
34Main View
35Overview of User Interface
- The User Interface
- is written entirely in
- C using the
- Microsoft
- Foundation Class
- libraries
36Document Class
- The document class contains all the computational
work that is done in the application
- The Document class contains
- The Bowling Scoring algorithms
- A separate object for each bowler to keep track
of their name, score, turn, etc.
37View Class
- The View class handles all interaction with the
bowler - Anything that the bowler sees on the screen comes
from functions in the View class
- The View class contains
- The MatLab image processing algorithm, compiled
into C - All the display algorithms for outputting the
score to the user
38View Class HScan Function
- Matlab code compiled into C and inserted into
the view class of the user interface app - HScan will receive the JPEG image, compute the
new pin count, and report it to the view class
Matlab
Matlab
Matlab Image Processing Code
C Image Processing Code
Compiler
39View class Display Algorithms
- The view class will receive updated scores and
frame information from the document class - It will take these scores, figure out where on
the screen they need to be posted based on the
frame number, and then output the scores to the
screen
40Software Summary
41Budget
- Non-Recurring Costs
- Matlab 300
- Matlab Compiler 300
- Visual Studio 80
- Recurring Costs
- Camera 200
- Laser Diodes 15
- IR switch and miscellaneous circuitry 30
- Power Supply 20
- Manufacturing cost 25/unit
- Total Recurring Costs 290
42ConclusionsWhat Succeeded
- Precise triggering by reflecting off sweep
- Accurate timing delays determined experimentally
- Camera with integrated Bluetooth connection
- Redesign of image processing code for greater
robustness - User interface displays scores in easily
understandable format
43Conclusions
- A system should be developed to fit the needs of
smaller bowling centers. - The system needs to be installable without
professional assistance. - The system needs to cost far less than current
systems on the market. - The system that is required is the
- Autostrike Automated Bowling Scoring System
44Thanks
- Dr. Yeager
- Mr. Jaillet
- Dr. Lyle
- John the bowling alley guy
- GCC Electrical Engineering Professors
- Chris Borders and our business team
45Thank you for your attention.Any Questions?