little league statistics tracking system group 8: corey cowart nicholas rimer sean martin brian...

48
Little League Statistics Tracking System Group 8: Corey Cowart Nicholas Rimer Sean Martin Brian McCauley Sponsor: Pete McAlindon

Upload: alisha-richards

Post on 13-Dec-2015

217 views

Category:

Documents


2 download

TRANSCRIPT

Little League Statistics Tracking System

Group 8:Corey CowartNicholas RimerSean MartinBrian McCauleySponsor: Pete McAlindon

Project Goals and Objectives

• Replace the currently used dugout score-sheets.

• Provide an online database for all players on teams using the system.

• Allow fans to easily follow the teams and players

• Provide in depth statistics for scouts and officials.

Overall Block Diagram

Possible Benefits

• Minimizing the training for score keeping.• Allow parents to remotely follow their

children’s games when not present.• Instantaneous data synchronization.• Prevent lost statistic from data sheets being

lost.• Better drafting into higher leagues based on

real stats rather than superficial figures.

Umpire Device

Goals and Objectives• Create a device that is ergonomic and

similar in size to the existing device.• Maintain all functions currently recorded on

Umpire indicator.• Display values for balls, strikes and outs on

the device.• Simplify the recording of play data to

minimize training time of the current system.

Specifications• Choose components that run off 3.3V to

simplify power schemes.• Have battery life of greater than 15 hours

with low battery indication.• Have range of over 30ft to connect with

coaching tablets.• Dimensions no larger than 5” x 3”.• Displays able to show digits 0 – 4 for balls,

strikes and outs

Current Umpire Device

• Dimensions of 2.5” x 4”• Scroll wheels for

selecting numbers of balls, strikes and outs.

• New digital umpire device will have push buttons for incrementing these counts.

Block Diagram

Display Schematic

PIC24HJ12GP202

4511

4511

4511

Microcontroller• Chosen microcontroller is the PIC24HJ128GP502

• 21 I/O pins when 18 pins needed.• Programmed in C language.• Cost effective at $2.24.• Programmed on the Microstick development

board costing $24.99

Bluetooth Connectivity

• Connects with all current mobile devices.• Up to 100 meter range.• Small footprint.• Sleep mode with ~370uA current draw.

WT12 from Bluegiga

Power• Device needs to be battery powered.• Multiple Umpires using same device so power

options need to be flexible.• All chipsets chosen to use 3.3V.• LD1117V33 can supply up to 950mA of

current.

Coach Application

Goals and ObjectivesPregame:• Allow a team’s coach to view and edit their

team roster within the application.• Create batting and fielding lineups for

upcoming games.• Display season and overall statistics for each

player in a detailed view.• Allow for database search on player creation

to keep tracking stats as players change teams.

Goals and ObjectivesIn-game:• Immediately reflect any change in state from

the umpire device.• Keep track of all statistics that are currently

recorded on the dugout score-sheets.• Account for all possible on field events such

as player substitutions, pinch hitting, etc.• Upload all tracked statistics in real time on a

play by play basis.

Goals and ObjectivesPost-game:• Implement a league-wide player search function

that displays detailed statistics on all players similar to that in the pre-game interface.

• Allow for side-by-side team comparisons for any other team in the league that is implementing the system.

• Present in-depth team statistics for any other team implementing the system in the league.

Block Diagram

Database Access• Local SQLite vs Online S3 Servers

• ArrayList<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();nameValuePairs.add(new BasicNameValuePair("fname", fname));nameValuePairs.add(new BasicNameValuePair("lname", lname));nameValuePairs.add(new BasicNameValuePair(stat, "" + amount));

InputStream is = null;try{HttpClient httpclient = new DefaultHttpClient();HttpPost httppost = new HttpPost("http://eustis.eecs.ucf.edu/~br726629/editStats.php");httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));HttpResponse response = httpclient.execute(httppost);HttpEntity entity = response.getEntity();is = entity.getContent();

Program Life Cycle• Baseline: Android v2.2• Optimized for 1024x600, high pixel density screen.• Does not interfere with any of the built-in android buttons.• Developed in eclipse IDE using the ADT Android plug-in.

Class Layout• 6 main activities.• All inherit from

Android’s Activity class.

• Each will have corresponding xml files to specify UI layout.

• Pass Intents for inter-app communication.

Data Structures• Additional data

classes will be used to facilitate data clarity within the app.

• A local database will be utilized to ensure that player and lineup data is not lost when the app’s onDestroy() method is called.

User Interface – Home Screen

User Interface – Roster Management

User Interface – At Bat

User Interface - Fielding

Hardware Implementation

Product capacity •  Internal: 8 GB flash memory •  External: Micro SD Slot

Display characteristics High resolution capacitive multitouch screen, 1024x600 pixels (WXVGA), 10.1'' TFT LCD

Processor •1GHz NVIDIA Tegra 2 Dualcore ARM CortexA9 CPU•512MB DDR

Communication protocols

• WiFi (802.11 b/g/n)• Bluetooth 2.1 EDR

Viewsonic G Tablet• Android 2.2 (Froyo).• ~10 hours of battery life

using internet connection.• Large screen for less

cluttered layout of prototype.

Fan Application

Goals and Objectives

•Communicate with the database•Provide information for games, teams and

players.•Regularly update stats from the database•Be quick and user friendly

Goals and Objectives

•Communicate with the database•Provide information for games, teams and

players.•Regularly update stats from the database•Be quick and user friendly

Class Diagram

User Interface Flow

Database

Objectives

• Organize and store data to optimize access speed.

• Maintain and backup current and previous games.

• Source client recognition and validation.• Minimize bandwidth.• Migrate data between multiple databases.

Class Diagram

User Interface Flow

Database

Objectives

• Organize and store data to optimize access speed.

• Maintain and backup current and previous games.

• Minimize bandwidth.• Migrate data across multiple tables.

Specifications

• Independent team, game, and play records.• Implemented in MySQL.• Remote cloud server (via Amazon).

Local vs. Remote

Local:

+ Direct control

+ Customizable

+ Faster

- Expensive

- Maintenance

Decision: Remote

Remote:

- Limited Options

- Accessibility

- Bandwidth

+ Cheaper

+ Self-maintaining

Database Types

• Coach– Names, team coaching.– Seasonal record (Wins/Losses).– League.

Database Types

• Team– All teams in the league.– Season team stats.– Player stats.– Player information and roster.

Database Types

• Game– Current and past seasonal games.– Individual inning stats.– Dates.– Final score and winner.

Database Types

• Play– All plays for every game.– Type of play, players involved.– Inning occurred, base changes.– Outs, strikes, and balls.

DB Classes

Script List

Budget BreakdownUmpire DeviceDisplay + Drivers ~$15.00Misc. Hardware ~$30.00Bluetooth Chip $50.89MicroController + parts $25.10PCB $33.00

Fan and Coach Applications

Viewsonic Tablet $299.99

Motorola Droid 2 $499.99

Database

Amazon RDS $18.50/month