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

cs.hbg.psu.edu
from cs.hbg.psu.edu More from this publisher
01.06.2015 Views

2.3.4 Communications The SMARTDOT module must transfer the data it collects to an external device for archival, analysis, and display. The module must be able to detect the presence of the external communications device, and both receive commands from it, and transmit data to it. Communications occur in a non-contact (wireless) fashion, and a light-based (infrared) communications scheme is used. The on-board transceiver consists of the previously described light sensor and two visible red (660 nm) LEDs. An algorithm has been developed that relies on the on-board transceiver to detect the presence of the external communications device (COMM wand), and initiate communication. 2.4 CAPABILITIES The module is intended to detect and record (at least some of) the major forces that the ball experiences. A bowler attempts to exert various forces on a bowling ball during delivery, to varying degrees, in a controlled manner. These forces are: • Lift: Force applied to cause the ball to rotate about a primary axis relative to the finger holes. The more lift that is applied to the ball at release, the faster the ball rotates as it travels down the lane. • Turn: The amount by which the axis of rotation of the ball is rotated away from normal with respect to the length of the bowling lane. The more turn that is applied at release, the more the ball has the potential to hook. • Tilt: The amount by which the axis of rotation is tilted away from parallel with the lane surface. The amount of tilt directly impacts how long the ball delays (skids or slides) before starting to hook. • Velocity: The speed and direction with which the ball leaves the bowler's hand. The higher the velocity, the harder the ball hits the pins, but the less it hooks. The velocity consists of a large x-coordinate component (towards the pins) and a small (but not insignificant) y-component (towards either gutter). The x-component is always positive, originating at the foul line and running towards the pins. The y- component can be negative (toward the right gutter for a right-handed bowler) or positive (toward the left gutter for a right-hander). • Loft: The distance the ball travels (in the air) before it first makes contact with the lane after release. A bowler can control the amount a ball hooks by altering the distance the ball is lofted before it hits the pins. More loft generally means less hook. The basic premise behind the SMARTDOT module is that two sensors, an ambient light sensor and a piezoelectric pressure/impact sensor, combined with an accurate time source, are sufficient to accurately capture the amount of lift applied to the ball (the angular velocity), the moment of release, and the various times of impact with the lane and the pins. It was not expected that this combination of sensors would be capable of reliably capturing the amount of turn, tilt, or the y-component of the ball's velocity. 14

2.4.1 Ambient Light Sensor The ambient light sensor serves three purposes: • It senses when the bowler has released the ball. A finger in the insert blocks ambient light from reaching the module. When the ball is released, a sudden increase in the ambient light level is detected. • It detects the revolution of the ball as it rolls down the lane. The light sensor, located on the top side of the SMARTDOT module PCB, "looks" out through the finger insert and "sees" the ambient light as the ball rolls down the lane. It was presumed that the ambient light level the sensor sees would be brighter when the module faces upward (toward the ceiling), since the lights are located there, and darker when the module faces downward (toward the lane surface). It was further presumed that the light waveform the module sees would be roughly sinusoidal in nature, exhibiting peaks when the module faces the ceiling, and valleys when the module faces the lane. Counting these peaks and valleys results in the total number of revolutions (to within ½ revolution) that the ball underwent during its traversal of the lane. By measuring the time between peaks (and/or valleys), it is then possible to calculate the angular velocity (rpms) of the ball for any given revolution. Fractional revolutions (immediately following release, and immediately before impact) can be extrapolated from the angular velocity of the closest complete revolution, hopefully resulting in a resolution of 30° of rotation, or better than 0.1 revolution. • It receives serial data from the communications module. 2.4.2 Pressure/Impact Sensor The pressure/impact sensor serves these purposes: • It wakes up the module when finger pressure is applied to the insert - indicating that the bowler is holding the ball, and preparing for delivery and release. • It senses the moment(s) of impact with the lane - ball loft distance. • It senses the moment(s) of impact with the pins. • It senses that the ball has rolled over a finger hole (the ball "hops" when it rolls over one of the finger holes, since the hole acts like a flat spot on the ball). 2.4.4 Clock The microprocessor's time-base serves the following purposes: • It generates the ambient light sample timer. • It provides a time-stamp for the impacts that the piezoelectric film sensor detects. • It generates the baud rate(s) for the communications transceiver. • It generates several precise time intervals and time out functions required for coordination of the various microprocessor tasks. 15

2.4.1 Ambient Light Sensor<br />

The ambient light sensor serves three purposes:<br />

• It senses when <strong>the</strong> bowler has released <strong>the</strong> ball. A finger in <strong>the</strong> insert blocks<br />

ambient light from reaching <strong>the</strong> module. When <strong>the</strong> ball is released, a sudden<br />

increase in <strong>the</strong> ambient light level is detected.<br />

• It detects <strong>the</strong> revolution <strong>of</strong> <strong>the</strong> ball as it rolls down <strong>the</strong> lane. The light sensor,<br />

located on <strong>the</strong> top side <strong>of</strong> <strong>the</strong> SMARTDOT module PCB, "looks" out through <strong>the</strong><br />

finger insert and "sees" <strong>the</strong> ambient light as <strong>the</strong> ball rolls down <strong>the</strong> lane. It was<br />

presumed that <strong>the</strong> ambient light level <strong>the</strong> sensor sees would be brighter when <strong>the</strong><br />

module faces upward (toward <strong>the</strong> ceiling), since <strong>the</strong> lights are located <strong>the</strong>re, and<br />

darker when <strong>the</strong> module faces downward (toward <strong>the</strong> lane surface).<br />

It was fur<strong>the</strong>r presumed that <strong>the</strong> light wave<strong>for</strong>m <strong>the</strong> module sees would be<br />

roughly sinusoidal in nature, exhibiting peaks when <strong>the</strong> module faces <strong>the</strong> ceiling,<br />

and valleys when <strong>the</strong> module faces <strong>the</strong> lane. Counting <strong>the</strong>se peaks and valleys<br />

results in <strong>the</strong> total number <strong>of</strong> revolutions (to within ½ revolution) that <strong>the</strong> ball<br />

underwent during its traversal <strong>of</strong> <strong>the</strong> lane. By measuring <strong>the</strong> time between peaks<br />

(and/or valleys), it is <strong>the</strong>n possible to calculate <strong>the</strong> angular velocity (rpms) <strong>of</strong> <strong>the</strong><br />

ball <strong>for</strong> any given revolution. Fractional revolutions (immediately following<br />

release, and immediately be<strong>for</strong>e impact) can be extrapolated from <strong>the</strong> angular<br />

velocity <strong>of</strong> <strong>the</strong> closest complete revolution, hopefully resulting in a resolution <strong>of</strong><br />

30° <strong>of</strong> rotation, or better than 0.1 revolution.<br />

• It receives serial data from <strong>the</strong> communications module.<br />

2.4.2 Pressure/Impact Sensor<br />

The pressure/impact sensor serves <strong>the</strong>se purposes:<br />

• It wakes up <strong>the</strong> module when finger pressure is applied to <strong>the</strong> insert - indicating<br />

that <strong>the</strong> bowler is holding <strong>the</strong> ball, and preparing <strong>for</strong> delivery and release.<br />

• It senses <strong>the</strong> moment(s) <strong>of</strong> impact with <strong>the</strong> lane - ball l<strong>of</strong>t distance.<br />

• It senses <strong>the</strong> moment(s) <strong>of</strong> impact with <strong>the</strong> pins.<br />

• It senses that <strong>the</strong> ball has rolled over a finger hole (<strong>the</strong> ball "hops" when it rolls<br />

over one <strong>of</strong> <strong>the</strong> finger holes, since <strong>the</strong> hole acts like a flat spot on <strong>the</strong> ball).<br />

2.4.4 Clock<br />

The microprocessor's time-base serves <strong>the</strong> following purposes:<br />

• It generates <strong>the</strong> ambient light sample timer.<br />

• It provides a time-stamp <strong>for</strong> <strong>the</strong> impacts that <strong>the</strong> piezoelectric film sensor detects.<br />

• It generates <strong>the</strong> baud rate(s) <strong>for</strong> <strong>the</strong> communications transceiver.<br />

• It generates several precise time intervals and time out functions required <strong>for</strong><br />

coordination <strong>of</strong> <strong>the</strong> various microprocessor tasks.<br />

15

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

Saved successfully!

Ooh no, something went wrong!