01.06.2015 Views

A Performance Analysis System for the Sport of Bowling

A Performance Analysis System for the Sport of Bowling

A Performance Analysis System for the Sport of Bowling

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

2.7.2 Start-Up<br />

The SMARTDOT module spends <strong>the</strong> vast majority <strong>of</strong> its time in an ultra-low power sleep<br />

mode, which draws less than 1 µAmp. Finger pressure applied to <strong>the</strong> insert wakes <strong>the</strong><br />

module from its sleep. Since <strong>the</strong> bowler's finger must still be in <strong>the</strong> insert immediately<br />

after start-up, if SMARTDOT detects too much light at start-up, <strong>the</strong> release is presumed to<br />

be invalid (<strong>for</strong> instance, caused by ano<strong>the</strong>r ball striking it on <strong>the</strong> ball return), and <strong>the</strong><br />

module shuts down (goes back to sleep).<br />

If it is dark enough after start-up, SMARTDOT continues sampling <strong>the</strong> ambient light<br />

level, waiting <strong>for</strong> <strong>the</strong> release <strong>of</strong> <strong>the</strong> ball (indicated by <strong>the</strong> measured light level exceeding a<br />

configurable "release" level). The release process takes several seconds, while <strong>the</strong><br />

bowler picks up <strong>the</strong> ball from <strong>the</strong> ball return and subsequently delivers it to <strong>the</strong> lane<br />

during <strong>the</strong>ir approach. If release is not detected within one second <strong>of</strong> activation, <strong>the</strong><br />

module shuts down. Since <strong>the</strong> bowler grips <strong>the</strong> inserts throughout <strong>the</strong>ir approach, <strong>the</strong><br />

module may experience several "false" start-ups be<strong>for</strong>e <strong>the</strong> actual release occurs. Refer<br />

to Figure A-1a (Start-Up Task Flowchart) <strong>for</strong> <strong>the</strong> sequence <strong>of</strong> events at module start-up.<br />

2.7.3 Pre-Sampling<br />

As part <strong>of</strong> <strong>the</strong> actual release, <strong>the</strong> bowler applies significant pressure to <strong>the</strong> inserts<br />

immediately be<strong>for</strong>e release. The module is again activated (several hundred milliseconds<br />

be<strong>for</strong>e release), giving SMARTDOT sufficient time to see <strong>the</strong> ambient light release point.<br />

Since <strong>the</strong> module detected a valid pre-release light level at start-up, it looks <strong>for</strong> <strong>the</strong><br />

release light level <strong>for</strong> up to one second. While waiting <strong>for</strong> release, <strong>the</strong> module stores <strong>the</strong><br />

pre-release light samples in an 8-byte circular buffer. This "pre-sampling" allows <strong>the</strong><br />

MASTER application to identify <strong>the</strong> precise moment <strong>of</strong> release. See Figure A-1b (Pre-<br />

Sampling Task Flowchart) <strong>for</strong> <strong>the</strong> pre-sampling sequence <strong>of</strong> events.<br />

The wave<strong>for</strong>m is sampled at 240 Hz, but <strong>the</strong> sample data is collected and stored at a 120<br />

Hz rate. In order to cancel <strong>the</strong> effects <strong>of</strong> <strong>the</strong> 120 Hz AC ripple superimposed on <strong>the</strong><br />

wave<strong>for</strong>m by <strong>the</strong> overhead fluorescent lights, two consecutive 240 Hz samples are<br />

averaged toge<strong>the</strong>r to yield a single 120 Hz sample. The maximum stored sample value is<br />

clipped to 127 (0x7F) so that <strong>the</strong> high-order bit <strong>of</strong> each sample is available <strong>for</strong> storing <strong>the</strong><br />

impact status <strong>for</strong> that sample. Refer to Figure A-2 (Light Sample ISR Flowchart).<br />

2.7.4 Wave<strong>for</strong>m Discrimination and Validation<br />

The SMARTDOT module always runs in one <strong>of</strong> two major operational states: it samples,<br />

validates, and stores <strong>the</strong> ambient light wave<strong>for</strong>m; or it communicates with <strong>the</strong> COMM<br />

wand. While <strong>the</strong> module samples and stores <strong>the</strong> wave<strong>for</strong>m, it also executes a routine that<br />

discriminates between wave<strong>for</strong>ms that result from <strong>the</strong> ball rolling down <strong>the</strong> lane, <strong>the</strong><br />

MASTER attempting to make contact, and spurious activations.<br />

After detecting <strong>the</strong> actual release <strong>of</strong> <strong>the</strong> ball, <strong>the</strong> module continues to sample <strong>the</strong><br />

wave<strong>for</strong>m and collect data in its 8-byte RAM sample buffer (<strong>the</strong> same one used <strong>for</strong><br />

storing <strong>the</strong> pre-samples), transferring <strong>the</strong> buffer contents to <strong>the</strong> active scratch pad in<br />

external EEPROM while scanning <strong>the</strong> sampled data <strong>for</strong> a pattern consistent with <strong>the</strong> ball<br />

rolling down <strong>the</strong> lane. If <strong>the</strong> presence <strong>of</strong> a "valid" wave<strong>for</strong>m (one that looks like <strong>the</strong> ball<br />

is rolling) is not detected within 600 msecs (72 samples plus <strong>the</strong> 8 pre-samples) following<br />

release, <strong>the</strong> module automatically switches from sampling <strong>the</strong> wave<strong>for</strong>m to its<br />

communication routines, and attempts to contact <strong>the</strong> COMM wand. Refer to Figure A-3<br />

(Sampling Task Flowchart) and Figure A-4 (Discrimination Task Flowchart).<br />

24

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!