Spring 2009


MEMBERS

PROJECT CONCEPT

This project allows individuals to view customizable information right in their mirror without interrupting any usual activities. The prototype features a lcd screen controlled by a wi-fi enabled computer, delivering RSS Feeds directly to a user's mirror, while allowing them to control their content through simple gesture based-commands.

MOTIVATION

Most products today are either multi-functional, such as a cell phone, or one-dimensional, such as weather readers, and all require some form of direct interaction, and leave a footprint in any area they are installed. This project will provide a fully integrated system leaving no footprint and allowing users to interact with the product through gestures which require no buttons, gloves or other external devices.

COMPETITIVE ANALYSIS

TECHNICAL SPECIFICATIONS

Hardware:

Software:

REQUIREMENTS

ARCHITECTURE

Architecture Diagram

USE CASES (INTERACTION DIAGRAMS)

  1. User starts up system
  2. User makes gestures in front of sensors
  3. User makes gestures which are unrecognized
  4. User puts program to sleep with special gestures
  5. User wakes up program with any gesture
  6. User shuts down program with special gesture or button

SYSTEM STATES & TRANSITIONS

State Diagram

RISKS & MITIGATION STRATEGIES

RisksMitigation Strategies
Sensory Failure
  • Check for low voltage
  • Report message to user
Broken Connection
  • Timeout between Adruino and computer
  • Show last available screen
  • Report message to user
Computer Crash
  • Ask user to restart computer
  • Boot GUI on startup
Environmental Effects
  • Heat and moisture
    • Enclose entire system in protective casing
    Flawed Gesture Recognition
    • Unintedned Gestures
    • Unrecognized Gestures
    • Unintuitive Gestures
    • Unintedned Gestures
    • Sensor Inaccuracy
    • Response Lag
      • Specified time limits, distance from senors, and tolerances for acceptable getures
      • Do nothing for unrecognized gestures
      • Work with Ainind Fey and HCI team to develop intuitive gestures
      • Place sensors accordingly as discussed with HCI team
      • Eliminate gestures and just have sensors map to different controls
      • Optimized software with necessary hardware
      Communication Risks
      • Broken RSS feed
      • Disconnection with server
      • Broken Wi-Fi
        • Cache information and show user the most recently available data
        • Report message to user

        ERROR HANDLING

        To be completed.

        IMPLEMENTATION DETAILS

        To be completed.

        TEST CASES

        EXPERIMENTAL EVALUATION

        Raw Data (HTML | PDF | XLS)

        Sensor Usabilitry Range Test

        Hypothesis:

        To prove or disprove the distributer provided range of 65cm.

        Test Setup:

        1 sensor, 1 adruino, 1 computer, 1 measure tape, 1 non-reflective surface.

        Metrics:

        Sensor Usability Range(cm) = The first distance at which the sonar reading is a trivial (.5V) value

        Workload:

        10 measurements were taken per sonar, with voltage readings being sent from the board to the computer where the computer would indicate in or out of range. Distance were measured by hand.

        Parameters:

        8.5inX11in non-reflective surface and distance from sonar to surface

        Test Run:

        Start with non-reflective surface in range of sonars. Keeping surface normal to the sonar increase the distance from the sonar to the surface until trivial voltage is read.

        Experiment:

        Number of tests per sonar: 10

        Mean Range in cm (Sonar 1, 2, 3): 49.02, 47.63, 45.09

        Median Range in cm (Sonar 1, 2, 3): 48.9, 47.63, 45.72

        Mode Range in cm (Sonar 1, 2, 3): 48.26, 46.99, 45.72

        Minimum Range in cm (Sonar 1, 2, 3):46.99, 45.72, 43.18

        Usability Boxplot

        Raw Data

        Sensor Voltage Reading Precision Test

        Hypothesis:

        A fixed object at a fixed range from a sensor should provide a stable voltage reading.

        Test Setup:

        Two tests were setup. In each test an object was placed at a specific range from the sensor and 1000 voltage readings from the sensor were recorded. One test held the object at 16cm and the other 41cm from the sensor. The object was not reflective and covered the full vision of the sensor.

        Metrics:

        The analog voltage reading (up to 5V) from the sensors was converted to a digital value (0-1024), divided by 4 to fit into a byte, sent over serial to the computer and read as a unitless voltage reading. The reading was then converted back to voltage, this process creates a +-.4% error.

        Workload:

        1000 reading were taken from the sensor, with each reading being transmitted from the board to the computer and written to an output file.

        Parameters:

        Height of the object from the sensor, number of readings taken, and sensor voltage reading

        Test Run:

        A test program was run on the Nano board which read values from the sensor and sent converted voltage reading to computer, where the reading was printed to a file.

        Experiment:
        Height of 18cm:

        Mean Reading in V (Sonar 1, 2, 3): 1.72, 1.68, 1.57

        Median Reading in V (Sonar 1, 2, 3): 1.7, 1.68, 1.56

        Standard Deviation in V (Sonar 1, 2, 3): 0.05, 0.04, 0.04

        Voltage Precision at 18cm

        Raw Data

        Height of 41cm:

        Mean Reading in V (Sonar 1, 2, 3): 0.66, 0.59, 0.55

        Median Reading in V (Sonar 1, 2, 3): 0.66, 0.59, 0.55

        Standard Deviation in V (Sonar 1, 2, 3): 0.04, 0.04, 0.04

        Voltage Precision at 41cm

        Raw Data

        Operations Throughput Test

        Hypothesis:

        The throughput of the system will be determined most significantly by the delay between sensor readings.

        Test Setup:

        An object was placed at a fixed range from a sensor and a program was written to read the value, interpret it as a gesture, and send the data to the computer through serial communication. The computer would record the time it received the information up to 1000 received gestures..

        Metrics:

        Time was measured by the millis() function in the Processing function. Throughput = (# of readings)/(end time - start time)

        Workload:

        1000 readings were taken, each reading was assummed to be a recognized gesture to simulate the complete system process.

        Parameters:

        Height of object from sensor, number of readings taken, location of start time code segement, and location of end time code segement

        Test Run:

        A test program was run on the Nano board to read values from the sensor, interpret them as gestures, and send the data to the computer. When the computer received the data and recognized the gesture, the time was recorded. This occurred for 1000 readings.

        Experiment:

        Mean Throughput in operations/second: 107

        Raw Data

        Startup Time Test

        Hypothesis:

        The startup time of the system will be dependent on when sensor values first become reasonable.

        Test Setup:

        An object was placed at a fixed range from a sensor and a program was written to read the value and send the data to the computer through serial communication. The computer would record the time it received the information.

        Metrics:

        Time was measured by the millis() function in the Processing function. Startup Time = (time from first stable reading) - (start time)

        Workload:

        ~100 readings taken for 5 tests, each reading sending data from the sensor and board to the computer.

        Parameters:

        Height of the object from the sensor (far enough to create stable reading), number of readings taken, and assumption of first stable value

        Test Run:

        A test program was run on the computer to read in values from the board and stopped after ~100 readings.

        Experiment:

        Mean Startup Time in seconds: 3.06

        Raw Data

        LESSONS LEARNED

        To be completed.

        FUN STUFF

        To be completed.

        REFERENCES


        Back to the top of this page
        18-549 course home page