The present invention relates generally to computing devices, and more specifically, to detecting inputs for computing devices.
Many types of input devices may be used to provide input to computing devices, such as buttons or keys, mice, trackballs, joysticks, touch screens and the like. Touch screens, in particular, are becoming increasingly popular because of their ease and versatility of operation. Typically touch screens can include a touch sensor panel, which may be a clear panel with a touch-sensitive surface, and a display device that can be positioned behind the panel so that the touch-sensitive surface substantially covers the viewable area of the display device. Touch screens allow a user to provide various types of input to the computing device by touching the touch sensor panel using a finger, stylus, or other object at a location dictated by a user interface being displayed by the display device. In general, touch screens can recognize a touch event and the position of the touch event on the touch sensor panel, and the computing system can then interpret the touch event in accordance with the display appearing at the time of the touch event, and thereafter can perform one or more actions based on the touch event.
Touch sensor panels can be formed from a matrix of row and column traces, with sensors or pixels present where the rows and columns cross over each other while being separated by a dielectric material. Each row can be driven by a stimulation signal, and touch locations can be identified through changes in the stimulation signal. Typically, a touch location is sensed based on an interference of the stimulation signal, such that a touch location may correspond to a location where the stimulation signal is the weakest. Touch sensor panels may generally be configured to detect touches from a user's fingers, which generally have a surface area that contacts the touch sensor panel to disturb the stimulation signal sufficiently for touch location to be recognized.
In some instances, computing devices incorporating touch screens may be configured to detect one or more gestures as user inputs. For example, a first type of finger movement, such as a user moving two fingers away from each other may indicate a first type of input (e.g., a zoom-in command), whereas a second type of finger movement, such as a user moving two fingers towards each other may indicate a second type of input (e.g., a zoom-out command). However, in some instances, if a user begins a gesture just outside of the touch screen sensing region, such as towards an edge of the device, the gesture may be difficult to detect because only a portion of the gesture may be detected by the touch screen. In these instances, computing devices may sense inputs that may be different from a user's intended input.
One example of the present disclosure may take the form of a computing device configured detect a user input. The computing device includes a processor, a touch interface in communication with the processor and configured to detect a touch signal corresponding to an object approaching or contacting a surface, and at least three force sensors in communication with the processor and configured to detect a force signal corresponding to an object exerting a force on the surface. In response to the force the processor determines a force centroid location and the touch signals are processed by the processor by analyzing the force centroid location.
Another example of the disclosure may take the form of a method for detecting user inputs to a computing device through force sensing. The method includes detecting by three or more force sensors a force input, calculating by a processor in communication with the force sensors a force centroid based on the force input, and using the force centroid to analyze one or more user inputs to the computing device.
Yet another example of the disclosure may take the form of a mobile computer configured to detect at least two types of user inputs. The mobile computer includes a processor, a touch screen in communication with the processor, and at least three pressure sensors in communication with the processor. The touch screen is configured to detect a touch signal corresponding to a user finger approaching or contacting the touch screen. The at least three pressure sensors are configured to detect a pressure signal corresponding to an object proving pressure on a surface. In response to the pressure signal the processor determines a centroid location relative to the surface and the touch signal is processed by the processor by analyzing the centroid location.
Overview
In some embodiments herein, a computing device including a touch interface for detecting one or more touch inputs and a plurality of force sensors for detecting one or more force inputs is disclosed. The computing device may include at least three, and typically four or more, force sensors that detect a force input on a surface. The force sensors may be distributed along different portions of the computing device, and generally may be operably connected to a cover surface. The cover surface may cover a portion if not all of the touch screen and/or an enclosure, such as a protective glass layer covering the touch screen or other portions of the computing device. The cover surface may extend over the touch screen, as well as other non-touch sensitive portions of the computing device. For example, in some instances the computing device may include a “black mask” portion or other enclosure area of the display that may border a portion, if not all, of the touch screen, but may not be sensitive to capacitive or touch inputs.
In some embodiments, the force sensors may be used to detect inputs on non-touch sensitive regions of the computing device. For example, if a user applies a force on the black mask, the force sensors may detect the input force and/or its location. Additionally, the force sensors may be used to enhance detection of inputs on the touch sensitive regions of the computing device. In these embodiments, the force sensors may enhance detection of input gestures that may begin on the non-touch sensitive surface, as well as may provide additional input receiving mechanisms which may allow the non-touch sensitive surfaces of the computing device to receive user inputs.
In some instances, when an input force is received, such as due to a user applying a force on the cover glass, the force sensors may each detect a force signal that may correspond to the input force, but the sensed signal may vary based on the location of each of the force sensors. For example, if the input force is exerted on a top right hand corner of the surface, a first force sensor adjacent the top right corner of the surface may sense a first force value, a second force sensor that may be in a left bottom corner may sense a second force value, and a third force sensor in a left top corner may sense a third value. These three force values may be used to determine a location of a center of the force or force centroid location.
The force centroid location may be used to analyze one or more touch inputs and/or user force inputs to the computing device. As a first example, the force centroid may be used in conjunction with any detected touch input to determine if a touch input is part of a force gesture that began off of the touch screen sensitive area, such that the touch input may be treated as a touch gesture. As a second example, the force centroid may be used to determine if one or more touch inputs are accidental, such as due to a user holding the computing device and placing a portion of a finger on the touch sensitive screen but not meaning to provide a touch input. As a third example, the force centroid may be used to detect user inputs outside of the touch sensitive area. In this example, the computing device may detect certain user inputs which may be correlated to virtual buttons or commands outside of the touch sensitive or active touch region.
Turning now to the figures, a computing device including a touch screen will now be discussed in more detail.
The computing device 100 may include the touch interface 102, an enclosure 104 at least partially surrounding the touch interface 102, a cover surface 106 covering at least a portion of the touch interface 102 and/or the enclosure 104, and/or one or more input buttons 108. The enclosure 104 encloses one or more components of the computing device 100, as well as may surround and/or secure a portion of the touch interface 102 to the computing device 100. The one or more input buttons 108 may provide input functions to the computing device 100. For example, the input buttons 108 may adjust a volume for the computing device 100, turn the computing device 100 on or off, or may provide other inputs for the computing device 100. Further, the computing device 100 may also include one or more receiving ports (not shown). The receiving ports may receive one or more plugs or connectors, such as but not limited to, a universal serial bus (USB) cable, a tip ring sleeve connector, or the like.
The cover surface 106 may be incorporated as a portion of the touch interface 102 and/or may be a protective surface that protects the touch interface 102 and/or enclosure 104 or portions thereof. In some embodiments, the cover surface 106 may extend over a top surface of the enclosure 104 as well as a top surface of the touch interface 102. In these embodiments, the cover surface 106 may also act as an enclosure for the components of the computing device 100. The cover surface 106 may be a material that may allow for one or more electrical properties to be transmitted therethrough. For example, the cover surface 106 may be a glass or plastic. Additionally, in instances where the touch interface 102 may also include a display screen, at least a portion of the cover surface 106 that extends over the touch interface 102 may be clear or partially transparent. Typically the cover surface 106 should be sufficiently thin to allow for sufficient electrode coupling between the touch interface 102 and any external input objects (e.g., fingers, input devices).
The touch interface 102 may include one or more touch sensors in order to detect one or more touch or capacitive inputs, such as due to a user placing his or her finger close to or on the cover surface 106 and/or touch interface 102. The touch interface 102 will be discussed in more detail below, but may generally be any type of interface configured to detect changes in capacitance or other electrical parameters that may be correlated to a user input.
The force sensors 110, 112, 114, 116 are configured to sense an input force, or a change in a sensed force, that may be applied to the cover surface 106, the enclosure 104, and/or touch interface 102. Although the force sensors are discussed herein as receiving an input force that is applied to the cover surface, it should be noted that the force sensors may be operably connected to a variety of different surfaces or elements within the computing device where a user may apply a force. Accordingly, the discussion of any particular embodiments for the force sensors is meant as illustrative only, and not meant as limiting.
With continued reference to
In some embodiments, such as shown in
The computing device 100 may include one or more components that may be in communication with one another.
The processor 124 may be substantially any electronic device cable of processing, receiving, and/or transmitting instructions. For example, the processor 124 may be a microprocessor or a microcomputer. As described herein, the term “processor” is meant to encompass a single processor or processing unit, multiple processors, or multiple processing units, or other suitably configured computing element. For example, select components of the electronic device 100 may be controlled by a first processor and other components of the electronic device 100 may be controlled by a second processor, where the first and second processors may or may not be in communication with each other. As a specific example, the touch interface 102 may include one or more separate processing components that may be in communication with the processor 124.
The memory 126 may store electronic data that may be utilized by the electronic device 100. For example, the memory 126 may store electrical data or content e.g., audio files, video files, document files, and so on, corresponding to various applications. The memory 126 may be, for example, non-volatile storage, a magnetic storage medium, optical storage medium, magneto-optical storage medium, read only memory, random access memory, erasable programmable memory, flash memory, or a combination of one or more types of memory components.
The electronic device 100 may also include one or more sensors 128, in addition to the force sensors 110, 112, 114, 116 and/or touch sensors incorporated into the touch interface 102. The sensors 128 may provide substantially any type of input to the electronic device 100. For example, the sensors 128 may be one or more accelerometers, gyroscopes, light sensors, image sensors (such as a camera), force sensors, and so on.
The power source 120 may be substantially any device capable of providing energy to the computing device 100. For example, the power source 120 may be a battery, a connection cable that may be configured to connect the computing device 100 to another power source such as a wall outlet, or the like.
The input/output interface 122 may be configured to provide communication to and from the computing device 100. For example, the input/output interface 122 may facilitate communication by the computing device to and from a variety of devices/sources. For example, the input/output interface 122 may receive data from user, control buttons on the computing device 100, and so on. Additionally, the input/output interface 122 may also receive/transmit data to and from an external drive, e.g., a universal serial bus (USB), or other video/audio/data inputs.
It should be noted that
The touch interface 102 and force sensors 110, 112, 114, 116 will now be discussed in more detail.
With reference to
The touch interface 102 is configured to receive inputs from an object (e.g., location information based on a user's finger or data from the input device) and to send this information to the processor 124. The touch interface 102 may report touches to the processor 124 and the processor interprets the touches in accordance with its programming. For example, the processor may initiate a task in accordance with a particular touch. The touch interface 102 may include a display screen 132 and a sensor panel 130 positioned at least partially over the display screen 132.
The display screen 132 is configured to display one or more output images and/or videos for the computing device 100. The display screen 132 may be substantially any type of display mechanism, such as a liquid crystal display (LCD), plasma display, or the like. In instances where the display screen 132 is a LCD display, the display screen 132 may include (not shown) various layers such a fluorescent panel, one or more polarizing filters, a layer of liquid crystal cells, a color filter, or the like. It should be noted that
In some embodiments, the cover surface 106 may be a clear glass or plastic panel that may allow the display screen 132 to be viewable therethrough. The sensor panel 130 may include one or more electrodes which may be deposited on the cover surface 106. For example, the electrode layer may include transparent conductive materials and pattern techniques such as ITO and printing.
It should be noted that in some embodiments, the touch interface 102 be substantially any type of touch screen or touch detecting component(s). For example, the touch interface may not be see-through and/or may not correspond to a display screen. In these instances, a particular surface or group of surfaces may be configured to receive touch inputs, that may or may not correspond to a separately displayed user interface, icons, or the like.
The sensor panel 130 may include one or more touch sensors that may detect changes in an electrical parameter that may correspond to an object touch or approaching the touch interface 102. For example, the sensor panel 130 may include one or two layers of electrodes which may be spaced apart across the panel 130. The electrodes may define one or more nodes that act as capacitive coupling sensors to detect touches on the touch interface 102. The number and configuration of the nodes may be varied, depending on the desired sensitivity of the touch interface 102.
In some embodiments, the sensor panel 130 of the touch interface 102 may be configured to detect touches on the surface of the touch interface 102 by sensing one or more changes in capacitance. Typically when two electrically conductive members come close to one another, without actually touching, their electric fields interact to form a capacitance. As briefly described above, the sensor panel 130 may include a plurality of sensing nodes that may be formed by one or more electrodes that may interact with an external object, such as a user's finger, to detect the presence of the object.
The touch interface 102 can detect changes in capacitance at each node, which may allow the touch interface 102 to determine when and where a user has touched various surfaces of the cover surface 106 and/or touch interface 102 with one or more objects. The touch interface 102 may be substantially any type of touch detecting mechanism as generally known in the art, and the specific implementations may be based on a number of different factors, such as but not limited to, the size of the touch screen, the desired sensitivity of the touch screen, and so on. Accordingly, the discussion of the any particular touch interface configuration is meant as illustrative only and not limiting.
With reference again to
The touch interface 102 and the force sensors 110, 112, 114, 116 may be used to determine the location and strength of various inputs to the cover surface 106 of the computing device 100. The computing device 100, using the force sensors 110, 112, 114, 116 positioned at each corner of cover surface 106, may be configured to determine the location of a force centroid for a user input or inputs. The force sensors may be differently configured and/or positioned in other embodiments, but may still be used to determine and assign forces to particular input locations.
Centroid Calculations with a Detected Touch Position
For user inputs that are in communication with the touch interface 102 (e.g., detectable by the touch interface, such as being within an active touch region), the touch sensors 130 may determine the location of any touches or inputs to cover surface 106 positioned over the touch interface 102, and the force sensors 110, 112, 114, 116 may determine the force magnitude at locations of the cover surface 106.
For example, in instances where the user provides an input force to the cover surface 106 above the touch interface 102 with a single finger, the computing device 100 may associate that position with the entire force detected by the one or more force sensors 110, 112, 114, 116. However, in many instances the user may provide an input force or forces with one or more fingers and/or other portions of his or her hand. For example, the touch interface 102 may be used to capture input gestures based on the number or type of finger inputs. In these instances, the computing device 100 may determine an input force associated with several or all of the various touch locations on the cover surface 106 to input force levels. In some embodiments, the computing device 100 may determine a centroid of the overall applied force, which may include a location of approximately a center of the applied forces. In this manner, if there is a force applied by two fingers of a user, the centroid may be positioned between the two fingers.
Examples of centroid calculations to determine the force centroid location will be discussed in more detail below. As briefly discussed above, in instances where the input force may be applied to the touch interface 102, the position of the force may be determined based on the touch location data sensed by the touch interface 102. In these embodiments, the computing device 100 may determine the touch location providing a majority of the input force using a centroid calculation. However, because in some embodiments the computing device 100 may include only a four force sensors 110, 112, 114, 116, some calculations and/or estimations may be used to determine the finger that may be providing the input force. As described in more detail below, the computing device 100 may utilize the position information as detected by touch interface 102 along with various force signals detected by the four force sensors 110, 112, 114, 116 to determine the touch location corresponding to a particular force. By determining the centroid of the input forces provided to the cover surface 106, and due to the position of touches on the cover surface 106 detected by the sensor panel 130 of the touch screen 106, the computing device 100 may determine the finger providing the input force as the finger closest to the force centroid. The global force centroid CGF may be expressed by Eq. (1) below:
In Eq. (1), the global force centroid CGF is expressed as the sum of a select number of positions Pi multiplied times the weight Wi at each position Pi, divided by the sum of the weights Wi. The positions Pi may be determined by the touch interface 102. For example, if the user presses on the cover surface 106 with two fingers, those fingers may provide a position input signal (such as a change in capacitance) at two separate locations or nodes. Those locations may be used as two input positions Pi in Eq. (1). In some instances, the positions Pi may be a set or coordinates or a single axis coordinates, in the latter example, Eq. (1) may be repeated twice, once for a X or horizontal axis and once for a Y or vertical axis. In other examples, such as illustrated in Eq. (2), the positions Pi may be represented as position vectors relative to a predetermined origin. The weight Wi may be same as the force sensed by each force sensor, or may be the force sensed by each force sensor multiplied by gravitational acceleration (e,g., 9,80665 m/s2 or 32.174 ft/s2).
Eq. (1) also uses the weight Wi for each position; however, because there may not be force sensors 110, 112, 114, 116 at every location of the cover surface 106 where there may be a touch, the weight Wi at each position may not be known, only the force at the location of the force sensors 110, 112, 114, 116. In these embodiments, the position information along with the force sensed at each input sensor 110, 112, 114, 116 may be used to solve for a global force centroid.
Using the example of a computing device 100 having four force sensors 110, 112, 114, 116, Eq. (1) may be expanded to include the values for each of the input sensors 110, 112, 114, 116 extrapolated to Eq. (2) below:
In Eq. (2) above and with reference to
As indicated in Eq. (2) in some embodiments, the values for the force sensors may be low pass filtered prior to processing. This filtering may be used to remove noise, such as spikes within the signal. However, in other instances, the input values from the force sensors 110, 112, 114, 116 may not need to be low pass filtered based on the noise level for each of the signals. As described above, the force sensors 110, 112, 114, 116 may be configured to detect a force at a predetermined location. However, in instances where there may be one or more forces applied to the cover surface 106, the force registered at each force sensor 110, 112, 114, 116 may be reduced or increased as compared to other sensors 110, 112, 114, 116 based on the distance of the applied force from the respective force sensor 110, 112, 114, 116. In other words, a moment of the cover surface 106 for a particular force sensor 110, 112, 114, 116 may vary based on distance from the particular force as a moment arm or perpendicular distance from the force location to the force sensor 110, 112, 114, 116 may increase or decrease. In some embodiments, the force sensors 110, 112, 114, 116 may be strain gages, which may register varying force inputs based on the moment, so that the force inputs as sensed by the force sensors 110, 112, 114, 116 may vary based on the distance to a respective input force.
Although the above examples were described with respect to four force sensors 110, 112, 114, 116, in other embodiments, three sensors or more than four sensors may also be used. For example, because only three points are required to define a plane, the computing device 100 may include only three force sensors and use substantially the same calculations as above. Alternatively, the computing device 100 may include more force sensors in order to refine the above calculations.
Using Eq. (2) above, the global force centroid, that is the location of the center of the applied force, may be determined. As an example, with a single touch, the center of the force may be determined by analyzing the force registered at each force sensor, along with the location of the touch detected by the touch interface 102. Because in this example, there is only a single input touch, the computing device 100 may determine that the entire force was provided at the location of the force centroid, and then use that knowledge to determine the force magnitude applied thereto.
Centroid Calculations without a Detected Touch Position
For user inputs that are not in communication with the touch interface 102, such as those that are in the black mask 118 portion of the cover surface 106 that is not above the touch interface 102, or otherwise outside of the touch sensitive region of the touch screen, the force sensors 110, 112, 116, 118 may detect the force magnitude and may extrapolate position from the varying values detected by each sensor 110, 112, 114, 116. For example, with reference to
In the example illustrated in
As a specific, non-limiting example, the centroid location may be determined by determining the location of an axis centroid along a first axis and a second axis. The axis centroid values may then represent a coordinate for the overall centroid location. In this example, the computing device may use force values as measured by each of the sensors 110, 112, 114, 116 on a given axis of the device 100 (e.g., x or y axis). In some instances the device may include an axis centroid value for each side of the device, e.g., a left y axis, a right y axis, a top x axis, and/or a bottom x axis. Each value for a particular axis may be summed, and then value as detected by each respective sensor (that is, the force sensed by each sensor) may be multiplied by that axis length, providing a location of the axis centroid with respect to the particular axis. Specifically, if the second sensor 112 senses a force of 80 grams and the fourth sensor 114 senses a force of 20 grams, the total force for the left y axis may be 100 grams. In instances where the distance between the second sensor 112 and the fourth sensor 114 is 160 mm, than the force centroid for this example on the left edge y axis may be (80 g/100 g)*160 mm, such that the centroid for this axis is 128 mm from the fourth sensor 114 and 32 mm away from the second sensor 112. However, it should be noted that the above example is only one manner in which the force centroid may be determined, and other embodiments are envisioned. Moreover, the calculations for a force centroid may be varied based on the number and/or position of the sensors.
Using the Force Centroid Location
Using the equations listed above, the location of the global force centroid CGF can be determined for both instances where a touch may be detected by the touch interface 102, as well as instances where a touch may not be detected by the touch interface 102. The computing device 100 may then use the location of the CGF to track changes in applied force in order to better detect gestures that may begin in the black mask 118.
After the user has input the finger gesture, by moving his or her finger 140 from the black mask 118 towards the touch interface 102, the location of the force centroid may also move.
In the example illustrated in
In some embodiments, the computing device 100 may determine or estimate a force applied to the black mask or non-touch sensitive portion of the cover surface.
With reference to
Using these assumptions, the device 100 may determine the intensity of a force applied in the black mask 118. Specifically, the location difference between the touch centroid and the force centroid may be used to determine (or at least estimate) the location and intensity of a force applied in the black mask 118 region. For example, the computing device 100 may take into account the known location of the black mask 118, shown in
The intersection point 113 of the line as it enters the black mask region 118 may be used as a likely indicator of the location of the force input on the black mask 118. This may allow the computing device 100 to determine the side of the black mask 118 where the force was applied, as well as a general estimate of the actual location relative to that side of the black mask. Once the intersection 113 location is known, the ratio of the distance between the force centroid and the touch centroid to that location may be used to estimate the percentage of force applied in the touch region versus the black mask region. For instance, the force centroid may be located at a distance L2 from the intersection point and the touch location centroid may be located at a distance L1 from the intersection point. The percentage of the total sensed force that may be attributed to the black mask 118 region may be determined to be equal to one minus the ratio of the distance L2 over the distance L1. Expressed as an equation
The remaining percentage of the sensed force may then be attributed to the touch interface touch locations. In this manner, the percentage of the total force applied to the cover surface 106 that was applied in the black mask region 118, as well as the percentage applied in the touch interface 102 region may be determined.
The force sensors 110, 112, 114, 116 may also be used to determine whether a user force should be rejected or ignored. In other words, whether a user input on the touch interface 102 may be accidental.
With reference to
In one embodiment, with reference to
As a second example, with reference again to
It should be noted that in some instances a user may provide a purposeful input with both the finger 140 and the thumb 142 (or a second finger). In these instances, the force centroid may be positioned outside of the two boundaries 148, 150 and thus the processor 124 may interpret both touches as purposeful. This is because the total magnitude of the input forces may be relatively evenly distributed between both the finger 140 and the thumb 142 which may indicate that the user was applying a relatively equal force by both the finger 140 and thumb 142, and thus meant to provide an input to the touch interface 102 with both.
In some instances, the computing device 100 may include one or more buttons within the black mask 118 or other non-touch sensitive portions of the cover surface 106.
In the embodiment illustrated in
Similarly, the computing device 100 may use the force sensors 110, 112, 114, 116 to detect taps on the black mask 118. The taps, such as a user pressing on the black mask 118 with his or her finger, may be used as an input to the computing device 100. For example, a first tap may represent a first command, whereas two taps successively may represent a second command. Additionally, the computing device 100 may detect gestures by a user outside of the touch sensitive region. For example, as a user slides his or her finger along a portion of the black mask 118 the force centroid may move correspondingly, and this motion may be sensed by the force sensors 110, 112, 114, 116 and tracked as a change in the location of the force centroid, and provided as a particular input. In this example, the sliding gesture may be used to switch pages on a reading application, adjust a volume, adjust brightness, and so on. Additionally, in these embodiments, these type of gestures may be distinguished from gestures that ultimately terminate in the touch sensitive region, as these type of gestures may not be correlated to any touch inputs. That is, gestures in the non-touch region, such as the black mask 118, may not include a corresponding touch input on the touch interface 102.
A method for using the force sensors 110, 112, 114, 116 to detect one or more force inputs to the computing device 100 will now be discussed.
Once the input force is detected, the method may proceed to operation 204 and the processor 124 may determine the location of the force centroid for the applied force of forces. In some embodiments, the sensed inputs for each of the force sensors 110, 112, 114, 116 may be used to determine the force centroid location. In instances where the input force may be applied to a touch sensitive region, the position of the input forces may be determined by the touch interface 102, and using the position information and force information the force centroid may be determined. However, for input forces not on the touch sensitive region, the sensed magnitudes by each of the force sensors 110, 112, 114, 116 may be used to determine the location of the force centroid.
As, during, or after the force centroid is determined, the method 200 may proceed to operation 206 and the computing device 100 may determine whether there was also a capacitive input. In other words, the computing device 100 may determine whether there was a touch input sensed in addition to the force input. In some embodiments, the touch determination may be done simultaneously with operation 204, as the touch information may be used (in some instances) to determine the force centroid location. In instances where the force input may be provided on the black mask 118, or another area outside of the sensitive region of the touch interface 102, the computing device 100 may determine that there is no capacitive input. On the contrary, if the user has provided an input to the touch sensitive area of the device 100, such as on the touch interface 102, the computing device 100 may detect a capacitive input (such as a change in capacitance due to a user's finger interacting with the touch sensors 130).
If a capacitive input is not detected, the method 200 may proceed to operation 214, which will be discussed in more detail. If a capacitive input is detected, the method 200 may proceed to operation 208 and the computing device 100, specifically the processor 124, may determine whether the centroid is within the boundary. For example, with reference to
If the centroid is not within the boundary, the method 200 may proceed to operation 210. As discussed above with respect to
With continued reference to
If the centroid location does not correspond to a button location or a gesture, the method 200 may proceed to optional operation 218. In operation 218, the computing device 100 may store the force input information, such as the centroid location in one or more of the memory components. In these embodiments, the stored information may be used at a later time, such as if there is a subsequent touch in the touch interface 120 region that may have begun with an input force in the black mask 118. However, in other embodiments, the force information may not be stored.
However, if the centroid location corresponds to a button or gesture, the method 200 may proceed to operation 216 and the processor 124 may process the button or gesture. This may include providing the input to an application running, or otherwise utilizing the force inputs. After operations 216 and 218, the method 200 may proceed to an end state 224.
As briefly discussed above, in operation 208 if the centroid is within the boundary, the method 200 may proceed to operation 212. In operation 212 the computing device 100 may determine whether the centroid has moved. For example, in instances where a user may be performing a touch gesture, the centroid may have moved from the black mask 118 to the touch interface 102 region as the user completed the gesture. Centroid movement may be determined by analyzing one or more previous centroid locations based on one or more previous force inputs.
If the centroid has moved, the method 2000 may proceed to operation 222. In operation 222 the processor 124 may analyze the touch inputs detected by the touch interface 102 through the touch sensors 130, as well as the centroid and force inputs to determine the gesture, and thus process the gesture input. On the contrary, if the centroid has not moved, the method 200 may proceed to operation 220 and the processor 124 may process the touch inputs. After operations 220, 222 and the method 200 may proceed to the end state 224.
The foregoing description has broad application. For example, while examples disclosed herein may focus on computing devices having touch interfaces, it should be appreciated that the concepts disclosed herein may equally apply to substantially any other type of communication devices. Similarly, although the touch detection is discussed with touch screens, the devices and techniques disclosed herein are equally applicable to other types of capacitive coupling systems. Accordingly, the discussion of any embodiment is meant only to be exemplary and is not intended to suggest that the scope of the disclosure, including the claims, is limited to these examples.
Number | Name | Date | Kind |
---|---|---|---|
3176241 | Hogan | Mar 1965 | A |
4558757 | Mori | Dec 1985 | A |
4577174 | Lemmer | Mar 1986 | A |
4716393 | Logie | Dec 1987 | A |
4897582 | Otten et al. | Jan 1990 | A |
5052844 | Kendall | Oct 1991 | A |
5231336 | van Namen | Jul 1993 | A |
5541372 | Baller | Jul 1996 | A |
5805138 | Brawne | Sep 1998 | A |
5999168 | Rosenberg et al. | Dec 1999 | A |
6100874 | Schena et al. | Aug 2000 | A |
6219038 | Cho | Apr 2001 | B1 |
6337678 | Fish | Jan 2002 | B1 |
6388655 | Leung | May 2002 | B1 |
6492979 | Kent | Dec 2002 | B1 |
6518954 | Chen | Feb 2003 | B1 |
6816049 | Watanabe | Nov 2004 | B2 |
6937124 | Nakamura | Aug 2005 | B1 |
6940494 | Hoshino et al. | Sep 2005 | B2 |
7031592 | Akieda | Apr 2006 | B2 |
7091886 | DePue | Aug 2006 | B2 |
7152482 | Ueno | Dec 2006 | B2 |
7176897 | Roberts | Feb 2007 | B2 |
7219549 | Honkura et al. | May 2007 | B2 |
7245293 | Hoshino et al. | Jul 2007 | B2 |
7283120 | Grant | Oct 2007 | B2 |
7290694 | Kirby et al. | Nov 2007 | B2 |
7436396 | Akieda | Oct 2008 | B2 |
7443384 | Harada | Oct 2008 | B2 |
7511706 | Schena | Mar 2009 | B2 |
7525532 | Liu et al. | Apr 2009 | B2 |
7532202 | Roberts | May 2009 | B2 |
7557051 | Ryu | Jul 2009 | B2 |
7567232 | Rosenberg | Jul 2009 | B2 |
7639232 | Grant et al. | Dec 2009 | B2 |
7685538 | Fleck et al. | Mar 2010 | B2 |
7692078 | Hayashi | Apr 2010 | B2 |
7710397 | Krah et al. | May 2010 | B2 |
7791506 | Riihimaki | Sep 2010 | B2 |
7825903 | Anastas et al. | Nov 2010 | B2 |
7877707 | Westerman | Jan 2011 | B2 |
7920225 | Nishikawa et al. | Apr 2011 | B2 |
7948337 | Chu | May 2011 | B2 |
7952566 | Poupyrev | May 2011 | B2 |
8059104 | Shahoian | Nov 2011 | B2 |
8081156 | Ruettiger | Dec 2011 | B2 |
8084968 | Murray et al. | Dec 2011 | B2 |
8117912 | Kawakubo | Feb 2012 | B2 |
8132468 | Radivojevic | Mar 2012 | B2 |
8139038 | Chueh | Mar 2012 | B2 |
8144129 | Hotelling | Mar 2012 | B2 |
8169401 | Hardwick | May 2012 | B2 |
8169402 | Shahoian et al. | May 2012 | B2 |
8232969 | Grant | Jul 2012 | B2 |
8252695 | Tan | Aug 2012 | B2 |
8260337 | Periyalwar et al. | Sep 2012 | B2 |
8264465 | Grant et al. | Sep 2012 | B2 |
8279175 | Kim et al. | Oct 2012 | B2 |
8287522 | Moses et al. | Oct 2012 | B2 |
8291776 | Pickens | Oct 2012 | B1 |
8296670 | Matthews et al. | Oct 2012 | B2 |
8310350 | Pfau et al. | Nov 2012 | B2 |
8310452 | Takenaka et al. | Nov 2012 | B2 |
8319727 | Norieda | Nov 2012 | B2 |
8373664 | Wright | Feb 2013 | B2 |
8378798 | Bells et al. | Feb 2013 | B2 |
8378965 | Gregorio et al. | Feb 2013 | B2 |
8400410 | Taylor | Mar 2013 | B2 |
8421567 | Eckl et al. | Apr 2013 | B2 |
8482381 | Chatterjee et al. | Jul 2013 | B2 |
8487759 | Hill | Jul 2013 | B2 |
8488308 | LeVasseur | Jul 2013 | B2 |
8502547 | Philipp | Aug 2013 | B2 |
8536978 | Coggill | Sep 2013 | B2 |
8570162 | Ujii | Oct 2013 | B2 |
8570297 | Bulea | Oct 2013 | B2 |
8581901 | Joshi | Nov 2013 | B2 |
8587542 | Moore | Nov 2013 | B2 |
8633901 | Orr et al. | Jan 2014 | B2 |
8633911 | Schediwy et al. | Jan 2014 | B2 |
8633916 | Bernstein et al. | Jan 2014 | B2 |
8648816 | Homma et al. | Feb 2014 | B2 |
8671782 | Mink | Mar 2014 | B2 |
8686839 | Posamentier | Apr 2014 | B2 |
8686961 | Yamano | Apr 2014 | B2 |
8717152 | Bhatia et al. | May 2014 | B2 |
8783106 | Nielson et al. | Jul 2014 | B1 |
8810522 | Tse | Aug 2014 | B2 |
8836648 | Wilairat | Sep 2014 | B2 |
8854317 | Homma et al. | Oct 2014 | B2 |
8892051 | Yi et al. | Nov 2014 | B2 |
8898564 | Grant | Nov 2014 | B2 |
8901783 | Gregory et al. | Dec 2014 | B2 |
8907661 | Maier | Dec 2014 | B2 |
8915422 | Harty | Dec 2014 | B1 |
8976537 | Ito | Mar 2015 | B2 |
9001060 | Harris | Apr 2015 | B2 |
9013430 | McCann | Apr 2015 | B2 |
9030419 | Freed | May 2015 | B1 |
9054627 | Bosch et al. | Jun 2015 | B2 |
9086740 | Furukawa | Jul 2015 | B2 |
9110532 | Ando et al. | Aug 2015 | B2 |
9122325 | Peshkin | Sep 2015 | B2 |
9122345 | Chen | Sep 2015 | B2 |
9128523 | Buuck | Sep 2015 | B2 |
9148190 | Buuck et al. | Sep 2015 | B1 |
9164605 | Pirogov | Oct 2015 | B1 |
9207801 | Schediwy et al. | Dec 2015 | B2 |
9222693 | Gourlay | Dec 2015 | B2 |
9223471 | Buxton | Dec 2015 | B2 |
9282893 | Longinotti-Buitoni et al. | Mar 2016 | B2 |
9298260 | Karaoguz | Mar 2016 | B2 |
9304587 | Wright et al. | Apr 2016 | B2 |
9348473 | Ando | May 2016 | B2 |
9349552 | Huska | May 2016 | B2 |
9360968 | Wright | Jun 2016 | B2 |
9372543 | Behles | Jun 2016 | B2 |
9389686 | Zoller | Jul 2016 | B2 |
9454256 | Fisher et al. | Sep 2016 | B2 |
9798409 | Wells et al. | Oct 2017 | B1 |
20030210235 | Roberts | Nov 2003 | A1 |
20040080494 | Fahlman | Apr 2004 | A1 |
20060238517 | King | Oct 2006 | A1 |
20070152966 | Krah et al. | Jul 2007 | A1 |
20080018611 | Serban et al. | Jan 2008 | A1 |
20080068343 | Hoshino et al. | Mar 2008 | A1 |
20080084384 | Gregorio et al. | Apr 2008 | A1 |
20080165159 | Soss et al. | Jul 2008 | A1 |
20080191648 | Ito et al. | Aug 2008 | A1 |
20080297478 | Hotelling et al. | Dec 2008 | A1 |
20090002199 | Lainonen et al. | Jan 2009 | A1 |
20090115734 | Fredriksson | May 2009 | A1 |
20090167704 | Terlizzi et al. | Jul 2009 | A1 |
20090174672 | Schmidt | Jul 2009 | A1 |
20090225046 | Kim | Sep 2009 | A1 |
20090242282 | Kim | Oct 2009 | A1 |
20090243817 | Son | Oct 2009 | A1 |
20090316380 | Armstrong | Dec 2009 | A1 |
20090322183 | Kawakubo | Dec 2009 | A1 |
20100053116 | Daverman | Mar 2010 | A1 |
20100107067 | Vaisanen | Apr 2010 | A1 |
20100141408 | Doy et al. | Jun 2010 | A1 |
20100149111 | Olien | Jun 2010 | A1 |
20100149124 | Kim | Jun 2010 | A1 |
20100164959 | Brown | Jul 2010 | A1 |
20100182263 | Aunio et al. | Jul 2010 | A1 |
20100214239 | Wu | Aug 2010 | A1 |
20100225600 | Dai et al. | Sep 2010 | A1 |
20100245254 | Olien et al. | Sep 2010 | A1 |
20100302172 | Wilairat | Dec 2010 | A1 |
20100328229 | Weber | Dec 2010 | A1 |
20110057899 | Sleeman et al. | Mar 2011 | A1 |
20110163985 | Bae et al. | Jul 2011 | A1 |
20110205163 | Hinckley et al. | Aug 2011 | A1 |
20110209099 | Hinckley | Aug 2011 | A1 |
20110227872 | Huska | Sep 2011 | A1 |
20110248916 | Griffin | Oct 2011 | A1 |
20120013531 | Wilson | Jan 2012 | A1 |
20120038568 | Colloms et al. | Feb 2012 | A1 |
20120050230 | Harris | Mar 2012 | A1 |
20120062491 | Coni et al. | Mar 2012 | A1 |
20120105358 | Momeyer et al. | May 2012 | A1 |
20120105367 | Son et al. | May 2012 | A1 |
20120133496 | Aono | May 2012 | A1 |
20120154315 | Aono | May 2012 | A1 |
20120139860 | Hotelling et al. | Jun 2012 | A1 |
20120182238 | Lee | Jul 2012 | A1 |
20120206246 | Cruz-Hernandez et al. | Aug 2012 | A1 |
20120229264 | Bosch et al. | Sep 2012 | A1 |
20120249462 | Flanagan et al. | Oct 2012 | A1 |
20120319987 | Woo | Dec 2012 | A1 |
20130038541 | Bakker | Feb 2013 | A1 |
20130076652 | Leung | Mar 2013 | A1 |
20130093685 | Kalu | Apr 2013 | A1 |
20130154933 | Sheik-Nainar | Jun 2013 | A1 |
20130179827 | Eriksson et al. | Jul 2013 | A1 |
20130222267 | Almalki | Aug 2013 | A1 |
20130222289 | Kwak | Aug 2013 | A1 |
20130321290 | Oh | Dec 2013 | A1 |
20140028575 | Parivar | Jan 2014 | A1 |
20140062933 | Coulson | Mar 2014 | A1 |
20140062934 | Coulson | Mar 2014 | A1 |
20140145836 | Tossavanen et al. | May 2014 | A1 |
20140176485 | Holmberg et al. | Jun 2014 | A1 |
20140191973 | Zellers | Jul 2014 | A1 |
20140197936 | Biggs et al. | Jul 2014 | A1 |
20140198071 | Algreatly | Jul 2014 | A1 |
20140347289 | Suh | Nov 2014 | A1 |
20150089435 | Kuzmin | Mar 2015 | A1 |
20150109223 | Kessler et al. | Apr 2015 | A1 |
20150116205 | Westerman et al. | Apr 2015 | A1 |
20150130730 | Harley et al. | May 2015 | A1 |
20150155474 | Tanimoto et al. | Jun 2015 | A1 |
20150177899 | Degner et al. | Jun 2015 | A1 |
20150192482 | Araki | Jul 2015 | A1 |
20150227280 | Westerman et al. | Aug 2015 | A1 |
20150234493 | Parivar | Aug 2015 | A1 |
20150242037 | Pedder et al. | Aug 2015 | A1 |
20150301642 | Hanaur | Oct 2015 | A1 |
20150346881 | Watazu | Dec 2015 | A1 |
20160085355 | Pirogov | Mar 2016 | A1 |
20160091972 | Patel et al. | Mar 2016 | A1 |
20160162030 | Patel et al. | Jun 2016 | A1 |
20160162031 | Westerman et al. | Jun 2016 | A1 |
20160188010 | Wright et al. | Jun 2016 | A1 |
Number | Date | Country |
---|---|---|
1659583 | Aug 2005 | CN |
101477422 | Jul 2009 | CN |
101482785 | Jul 2009 | CN |
101523329 | Sep 2009 | CN |
101763193 | Jun 2010 | CN |
101833393 | Sep 2010 | CN |
101868770 | Oct 2010 | CN |
102047088 | May 2011 | CN |
102084325 | Jun 2011 | CN |
102084328 | Jun 2011 | CN |
102144205 | Aug 2011 | CN |
102339166 | Feb 2012 | CN |
102426490 | Apr 2012 | CN |
102640093 | Aug 2012 | CN |
1496549 | Oct 2012 | CN |
102713805 | Oct 2012 | CN |
102870080 | Jan 2013 | CN |
103097990 | May 2013 | CN |
102010007486 | Aug 2011 | DE |
2077490 | Jul 2009 | EP |
2202619 | Jun 2010 | EP |
2320309 | May 2011 | EP |
2357547 | Aug 2011 | EP |
2375306 | Oct 2011 | EP |
2381340 | Oct 2011 | EP |
2395414 | Dec 2011 | EP |
2648071 | Oct 2013 | EP |
2007034991 | Feb 2007 | JP |
101274123 | Jun 2013 | KR |
20130109288 | Oct 2013 | KR |
201314541 | Apr 2013 | TW |
WO2012161061 | Nov 2012 | WO |
WO 13169299 | Nov 2013 | WO |
WO 13169303 | Nov 2013 | WO |
WO 13169305 | Nov 2013 | WO |
WO 14017407 | Jan 2014 | WO |
WO 15020663 | Feb 2015 | WO |
Entry |
---|
“Immersion Announces MOTIV™ Development Platform for Android,” retrieved from the Internet: URL:http://ir.immersion.com/releasedetail.cfm?sh—email=no&releaseid=549080, Feb. 10, 2011. |
Zordan, Enrico et al., “Principle design and actuation of a dual chamber electromagnetic micropump with coaxial cantilever valves,” Biomedical Microdevices, Kluwer Academic Publishers, BO, vol. 12, No. 1, Oct. 17, 2009, pp. 55-62. |
Pava et al., “Real Time Platform Middleware for Transparent Prototyping of Haptic Applications,” 2004. |
Technifast, “Blind Captive Nuts,” Jun. 30, 2013, http://www.technifast.co.uk. |
International Search Report and Written Opinion, dated Feb. 12, 2014, PCT/US2013/052006, 15 pages. |
International Search Report and Written Opinion, dated Apr. 24, 2014, PCT/US2014/013206, 12 pages. |
Product Specification Sheet: GEEPLUS, VIBRO1 Vibration Actuator, 2 pages, www,geeplus.biz, downloaded on Jul. 15, 2015. |
U.S. Appl. No. 15/791,618, filing date Oct. 24, 2017, Wells et al. |
U.S. Appl. No. 15/797,992, filing date Oct. 30, 2017, Kessler et al. |
Number | Date | Country | |
---|---|---|---|
20140028575 A1 | Jan 2014 | US |