TAPS: Touch-Based Adaptive Predictive Screen

The Main goal of this project is to produce a touchscreen product that adapts dynamically to changes in light intensity and vibration in order to provide an excellent user experience.The product developed will be able to work effectively under a wide range of light intensities as well as under different kinds of physical vibration (both rhythmic and non-rhythmic) in all directions. The process of developing the product will also involve the design of experiments to adequately test its functionality. The designed experiments will be conducted and the results obtained and analyzed. In the future, the evolutionary process might involve adding functionality to compensate for the contamination of the touchscreen surface.

Background
Many touchscreen products are unable to adapt adequately to dynamic environmental changes, such as changes in light intensity and the introduction of vibration. These environmental factors introduce errors such as “false touches,” which result in the trigger of unintended screen functionality.

Deliverables

 * To compensate for the presence of vibration
 * To compensate for changes in light intensity
 * To incorporate togglable/configurable compensation switch
 * To design and conduct experiments to test system functionality
 * To compensate for user finger jitter

Specifications
The specifications table is below:



Vibration Compensation
The touchscreen product must be able to appropriately respond and make compensation to inputs received in an environment with vibrations. There are two primary forms of vibration incidents that this project considers: rhythmic vibration and random vibration. Rhythmic vibration is prioritized over random vibration for this design, because rhythmic vibration is more common.

Rhythmic vibration is a vibration incident that remains relatively the same in magnitude throughout the incident and occurs in a predictable, repeating pattern. An example of rhythmic vibration would be the vibration experienced by a massage chair, or the vibrations felt when driving down an evenly-paved, flat road.

Random vibration is a vibration incident that does not necessarily have the same magnitude throughout the incident and is unpredictable. An example of random vibration would be the vibration experienced by brief, unexpected turbulence by an aircraft, or the quick jolt of accidentally driving over a pothole.

Effects of Vibration
Both types of vibration incidents will cause the screen to move to some degree and cause more difficulty for the user to touch the desired section of the screen. This effect will most likely cause additional false touches. One way to help characterize the incoming vibration is to use the appropriate accelerometer. For this project, two simple silicon-based accelerometers were selected, the ADXL350 and the Digilent PmodACL2.

Accelerometers
The ADXL350 accelerometer was chosen for the project initially because it has SPI and I²C inputs and outputs, making the ADXL350 compatible with most microcontrollers. Another primary deciding factor for choosing the ADXL350 was that it can measure ±1 to 2gs, which is the expected necessary range for the project. Additionally, the ADXL350 is very customizable, as it lets the user specify the acceleration range (from 1 to 8gs) and the bandwidth (from 3.125Hz to 1.6kHz).

Lighting Compensation
The touchscreen must adapt its user interface to compensate for the varying levels in surrounding light. The surrounding light is most commonly referred to as ambient light. The screen should attempt to compensate, dynamically, to the surrounding light levels. Most ambient light sensors use photodiodes or photoresistors to relate the light intensity.

Photodiodes are based on the physics of semiconductors. They are devices which convert light into current. When light intensity increases, the amount of current produced increases.

Photoresistors is a resistor that changes with light intensity. As light intensity increases, the resistance of the photoresistor decreases.