Wii Care James Augustin Benjamin Cole Daniel Hammer Trenton J. Johnson Ricardo Martinez
Wii for Healthcare Problem 2/3rds of Americans will experience neck pain 120,000 cases of whiplash annually Solution Low cost method to analyze range of motion Ability to perform cervical exercise at home
Project Scope ◦Sponsor ◦Head Orientation Tracking Device Wii ◦Top selling $74 mil Worldwide ($34 mil U.S.) ◦Components
Wiimote Main input device; Bluetooth communication ◦Compatible with standard Bluetooth hosts 16 kB Chip 128x96 monochrome camera with Infrared filter. ◦Infrared wavelengths ( nm) ◦Refresh Rate of 100Hz 1024x768 resolution or track objects
Wiimote AA Batteries ◦60 hours – accelerometer functionality and ◦25 hours - accelerometer and pointer functionality 16 kB Chip ◦Code for built-in microcontroller ◦Section read/write by host 6 kB ◦ Up to ten Mii avatars ◦ User profiles or days logged
Memory Chip EEPROM
Sensor Bar 2 quintets of infrared LEDs 20cm Triangulation ◦Each cluster is separate point
Concept #1 Using single Wii-Mote and LEDs
Concept 1: Role reversal ◦Up to 4 LEDs worn Stationary Wii remote. Tracking of motion ◦Blackbody Phenomenon. Naturally everything emits infrared radiation; moving atoms. The infrared filter in the Wiimote records IR LEDs affixed on the user’s device. ◦LED intensity rating(940nm) 5m max
Appearance The LED apparatus, or sensor bar, is aesthetically modified in order to present an unobtrusive device that can be comfortably worn. ◦Compartment of resistors, diodes, and battery. ON/OFF Switch
Concept #2 Using the Accelerometer
Concept 2: 3-axis with range of at least +/- 3g with 10% sensitivity. Wii controller placed on back of head Simple method to acquire position data (integration of acceleration) Lowest cost among all concepts May make patient feel uncomfortable Contact by patient and therapist increases risk for damage to design Initial values must be determined manually Nintendo determined not accurate enough alone to determine position
Accelerometer Goofy or Awesome? ADXL330 Integrated Circuit
Concept #3 Using Multiple Wii Controllers
Concept 3: Usage of Multiple Wii Controllers The Wii controller’s infra-red camera is only capable of tracking up to four moving infra-red sources at once. Therefore, by utilizing a range of 2-4 controllers data can be pulled and analyzed for up to 16 infra-red sources.
Benefits of Multiple Controllers Multiple infra-red sources can be used for tracking and other purposes. Increased field of view. Increased accuracy.
Negatives of Multiple Controllers Increased cost. Restricted infra-red source placement due an increased field of view. Possibility of one controller interpreting a source as “jumping” from one end of the field of view to the other. Adds complexities to the programming, data analyzing and manipulating process.
Two Wii Controllers
Three Wii Controllers
Four Wii Controllers
Concept #4 LED Array and Reflective Device
-IR Field -Centralized reflection back to source
Pros Simplicity No electronics in head unit Interference Cons
Concept #5 Using extra LED sets
Extra LEDs Monitoring of more areas More accurate tracking Size and shape data
Filter Rendering of more data sets Key locations 850 to 940nm stock
Pros More accuracy Constant sources Complexity Head Unit Complications Cons
Blinking Rendering of more data sets Key locations 100Hz refresh rate
Pros More accuracy Minimized Components Complexity Head Unit Complications Cons
Videos
Decision Matrix Criteria Weighing Factor 1 WiimoteMultiple Wiimotes Accelerometer 1-4 LEDs4+ LEDSArray1-4 LEDs4+LEDsArray Cost Durability Adaptability/ Versatility Efficiency Portability/Light weight Ease of Use/Setup Accuracy Design Complexity Aesthetics Total
Results of Decision Matrix Ranked from 1-10 Multiple Wii controllers with up to 4 LEDs determined to be best concept Marginally better by 0.05 score Can be easily switched to single Wii controller if problems arise during construction
Programming
Interaction Style Graphical User Interface (GUI) vs Command Line Interface (CLI) ◦Ease of operation ◦Ease of understanding and interpretation ◦Spatial and visual cues of the environment vs
Interaction Style Command Line Interface (CLI) ◦Advantages: Much easier to implement Could be efficient for experts ◦Disadvantages: Can be error prone May require user to do a lot of memorizing Hard to make use of physical metaphors Archaic Unattractive
Interaction Style Graphical User Interface (GUI) ◦Advantages Symbols recognized faster than text Faster learning Much more intuitive Aesthetically pleasing Increased feeling of control ◦Disadvantages: Greater design complexity May not be fastest interaction style for experts
Interaction Style Graphical User Interface (GUI) ◦The most significant advantages of using a graphical user environment: 3 dimensional body rendering 3D and 2D data visualization (graphs)
Interaction Style Graphical User Interface (GUI) Concept
Data Presentation 3D Graphs ◦Data points will be taken in x-, y-, and z- coordinate triplets. ◦Points can be connected to show the path that the points take while attached to the moving head, shoulders, etc.
Data Presentation 2D Graphs ◦Data can also be represented in three different 2D graphs, one for each dimension in space. ◦“coordinate versus time” layout ◦will allow movement in each dimension to be analyzed individually
Programming Languages Which programming language is the best fit? ◦C / C++ ◦Visual Basic ◦C ♯ ◦Java
Programming Languages C / C++ ◦Ubiquitous ◦GUI creation is more complex with other languages ◦Widely supported ◦Applications run natively so performance is optimal
Programming Languages Visual Basic ◦Easy to learn ◦GUI creation is like a first class citizen ◦Syntax is not like C / C++
Programming Languages C ♯ ◦More robust object-oriented language ◦Syntax like C / C++ ◦Heavily influenced by Java
Programming Languages Key points of VB and C ♯ ◦Part of Microsoft’s.NET technology ◦Common Language Runtime (CLR) is, in actuality, a separate piece of software ◦Only available for the Windows platform
Programming Languages Enter Java. ◦Write Once, Run Anywhere (WORA) ◦Java Runtime Environment Has been implemented in: ◦ Several operating systems ◦ Several architectures ◦ Hardware ◦Java 3D library
Programming Languages Enter Java. ◦Performance Comparison with C / C++ ◦“A little slower” is an acceptable trade off for portability
Data Presentation (revisited) Java and Graphing ◦Free libraries exist Java Universal Network Graphic (JUNG) Framework JGraphT JFreeChart just to name a few ◦MATLAB Builder TM JA Exports MATLAB code to Java classes $4,000
Conclusion Multiple Wii controllers with 4 LEDs Java GUI Best way to get accurate results Can be easily changed to single Wii controller Cost remains low