project aceso cs 480 senior design group 7. the team: aaron m. daniels aaron j. lamb elliott v....

18
PROJECT ACESO CS 480 Senior Design Group 7

Upload: brendan-may

Post on 24-Dec-2015

216 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: PROJECT ACESO CS 480 Senior Design Group 7. The Team: Aaron M. Daniels Aaron J. Lamb Elliott V. Iannello Joseph A. Yaworski Wesley J. Moody Sponsor: Dr

PROJECT ACESOCS 480 Senior Design Group 7

Page 2: PROJECT ACESO CS 480 Senior Design Group 7. The Team: Aaron M. Daniels Aaron J. Lamb Elliott V. Iannello Joseph A. Yaworski Wesley J. Moody Sponsor: Dr

The Team:Aaron M. DanielsAaron J. LambElliott V. IannelloJoseph A. YaworskiWesley J. Moody

Sponsor:Dr. Valeriya Gritsenko

Mentor:Dr. Frances Vanscoy

Page 3: PROJECT ACESO CS 480 Senior Design Group 7. The Team: Aaron M. Daniels Aaron J. Lamb Elliott V. Iannello Joseph A. Yaworski Wesley J. Moody Sponsor: Dr

Outline

Problem StatementObjectivesACESO API

GameChallengesConclusion

Page 4: PROJECT ACESO CS 480 Senior Design Group 7. The Team: Aaron M. Daniels Aaron J. Lamb Elliott V. Iannello Joseph A. Yaworski Wesley J. Moody Sponsor: Dr

Problem Statement

Design and Build a Flexible and Extensible Platform for Rehab-Game Development

Design and Build a Game that Utilizes and Demonstrates the Platform

Page 5: PROJECT ACESO CS 480 Senior Design Group 7. The Team: Aaron M. Daniels Aaron J. Lamb Elliott V. Iannello Joseph A. Yaworski Wesley J. Moody Sponsor: Dr

Objective Tree

Page 6: PROJECT ACESO CS 480 Senior Design Group 7. The Team: Aaron M. Daniels Aaron J. Lamb Elliott V. Iannello Joseph A. Yaworski Wesley J. Moody Sponsor: Dr

General Architecture

Rehabilitation Video Game

Graphics Engine

MS Kinect Drivers

ACESO API

Calibration System

Pateint Safety System

Patient Profiling System

Kinematic Data

Management System

Page 7: PROJECT ACESO CS 480 Senior Design Group 7. The Team: Aaron M. Daniels Aaron J. Lamb Elliott V. Iannello Joseph A. Yaworski Wesley J. Moody Sponsor: Dr

ACESO API

Automated Capture of Exercise Statistics and Observation

Easy to Use Intended to be Open-Sourced “Standard-Focused” Flexible Easily Extendable and Maintainable Kinect Dependent

Page 8: PROJECT ACESO CS 480 Senior Design Group 7. The Team: Aaron M. Daniels Aaron J. Lamb Elliott V. Iannello Joseph A. Yaworski Wesley J. Moody Sponsor: Dr

ACESO Class Diagram«interface»Constants

+startCapture()+stopCapture()+promptForJoint(in Joints)+setMotionRange(in coordinates : float)

-patient : object

Calibration

+addPatient() : void+deletePatient() : void+getPatient(in name) : object+write()+read() : object

-patientList : object

Profiles

+help_Call(in phone_Number)+overRide_Stop()+overRide_Start()

+active : bool

Safety

+readFile() : float+writeToFile(in coordinates : float)+readEncrypted() : float+writeEncrypted(in coordinates : float)

-active : bool-fileLocation : string

DataManagement

+updateMotionRange(in Coordiantes : float, in Joint : object)+updateJointStatus()+getName() : string+setName(in name : string)+addJoint()+deleteJoint()+write()+read() : object

-name : string-patientID : long-status : int-injured_joint_list : object-report : string

Patient

+getOwner() : string+getMotionRange() : float+prompt() : string+getSide() : char

Joint

+getOwner() : string+getMotionRange() : float+getSide() : char+prompt() : string

-owner : string-motionRange : float-bodySide : char

Ankle

Class Diagram for ACESO API

1

*

1

*

ACESO Package

ACESO API

+getOwner() : string+getMotionRange() : float+getSide() : char+prompt() : string

-owner : string-motionRange : float-bodySide : char

Knee

+getOwner() : string+getMotionRange() : float+getSide() : char+prompt() : string

-owner : string-motionRange : float-bodySide : char

Hip

+getOwner() : string+getMotionRange() : float+getSide() : char+prompt() : string

-owner : string-motionRange : float-bodySide : char

Shoulder

+getOwner() : string+getMotionRange() : float+getSide() : char+prompt() : string

-owner : string-motionRange : float-bodySide : char

Elbow

+getOwner() : string+getMotionRange() : float+getSide() : char+prompt() : string

-owner : string-motionRange : float-bodySide : char

Wrist

+getOwner() : string+getMotionRange() : float+getSide() : char+prompt() : string

-owner : string-motionRange : float

Pelvis

+getOwner() : string+getMotionRange() : float+getSide() : char+prompt() : string

-owner : string-motionRange : float

Neck

Page 9: PROJECT ACESO CS 480 Senior Design Group 7. The Team: Aaron M. Daniels Aaron J. Lamb Elliott V. Iannello Joseph A. Yaworski Wesley J. Moody Sponsor: Dr

Well-Pump Game

Have Therapeutic Value Showcase ACESO API Relaxing and Engaging Immersion/ Provide some form of

Escape

Page 10: PROJECT ACESO CS 480 Senior Design Group 7. The Team: Aaron M. Daniels Aaron J. Lamb Elliott V. Iannello Joseph A. Yaworski Wesley J. Moody Sponsor: Dr

Concept Screenshot

Page 11: PROJECT ACESO CS 480 Senior Design Group 7. The Team: Aaron M. Daniels Aaron J. Lamb Elliott V. Iannello Joseph A. Yaworski Wesley J. Moody Sponsor: Dr

Game Play State Diagram

Initial (off)

Idle

Render Next Frame

Check Rules

Menu/Pause

Terminal(Close Game)

Page 12: PROJECT ACESO CS 480 Senior Design Group 7. The Team: Aaron M. Daniels Aaron J. Lamb Elliott V. Iannello Joseph A. Yaworski Wesley J. Moody Sponsor: Dr

Context Diagram

Rehab Game

Development Team

Therapist/Doctor Patient

ButtonContext Diagram

for a Rehab Game

Page 13: PROJECT ACESO CS 480 Senior Design Group 7. The Team: Aaron M. Daniels Aaron J. Lamb Elliott V. Iannello Joseph A. Yaworski Wesley J. Moody Sponsor: Dr

Game Class Diagram

+getImage(in name : string) : object+getImage(in ID : int) : object

-ImageList : object

Image

+Game()+Menu() : void+Watch() : void+Render() : void+Logic() : void+DisplayMenu() : void+Exit() : void

-Pause : bool-Timer : decimal-Score : int-State : string-SkeletalPosition : float

Game

«interface»Coding4Fun Library

«interface»DirectX 9 API

+getSound(in name : string) : object+getSound(in ID : int) : object

-AudioList : object

Audio

1

*

1

*

«interface»ACESO API

«interface»Kinect SDK

Page 14: PROJECT ACESO CS 480 Senior Design Group 7. The Team: Aaron M. Daniels Aaron J. Lamb Elliott V. Iannello Joseph A. Yaworski Wesley J. Moody Sponsor: Dr

Use-Case Diagrams

Patient/Player

Doctor/Therapist

ACESO Framework Use-Case Diagram

Play-Rehab Game

View PatientProfile

*

*

*

*

Calibrate Controls

*

*

Add Motion

Edit PatientProfile

** *

*

View Game Results

Exit Game

Adjust Game Options

Safety Features

External Developers

Development Team

Extend ACESOFramework

Utilize ACESO APIin Game Dev

1

*

**

**

1

1

Publish ApprovedVersions of ACESO API

*

1

*

*

*

*

*

*

*

*

*

*

*

*

Rehab Game Using ACESO API

ACESO API Usage

Maintenance

1

* *

*

Page 15: PROJECT ACESO CS 480 Senior Design Group 7. The Team: Aaron M. Daniels Aaron J. Lamb Elliott V. Iannello Joseph A. Yaworski Wesley J. Moody Sponsor: Dr

Challenges

Learning Kinect SDK Limitations Learning Direct X 9 Limitations Overcoming Reliance on 3rd Party

Drivers and Equipment Staying within HIPPA Regulations Refining the Design

Page 16: PROJECT ACESO CS 480 Senior Design Group 7. The Team: Aaron M. Daniels Aaron J. Lamb Elliott V. Iannello Joseph A. Yaworski Wesley J. Moody Sponsor: Dr

3rd Party Software

Kinect SDK Direct X 9 Coding4Fun C# Library

Page 17: PROJECT ACESO CS 480 Senior Design Group 7. The Team: Aaron M. Daniels Aaron J. Lamb Elliott V. Iannello Joseph A. Yaworski Wesley J. Moody Sponsor: Dr

What Lies Ahead…

Statistical System Integration,Game Prototype,Compiling Standards for

Development,And…

…Building the Final Product

Page 18: PROJECT ACESO CS 480 Senior Design Group 7. The Team: Aaron M. Daniels Aaron J. Lamb Elliott V. Iannello Joseph A. Yaworski Wesley J. Moody Sponsor: Dr

Thanks, any Questions

That’s all folks!