Touch slider-position sensing

10551945 ยท 2020-02-04

Assignee

Inventors

Cpc classification

International classification

Abstract

Touch slider-position sensing useable with a capacitive touch sensor that includes multiple capacitive electrodes arranged to define a slider track. The touch slider-position sensing methodology includes: (a) generating a set of calibration vectors for points of the slider track; (b) determining a touch slider-position based on (i) measuring a measurement/data vector associated with the touch-press slider-location, (ii) determining an angle between the measurement/data vector and a subset of the calibration vectors, and (iii) determining touch slider-position based on the angles between the measurement data vectors and the subset of calibration vectors. The method can include performing a quadratic or higher order interpolation of the angles between the measurement/data vector and the subset of the calibration vectors.

Claims

1. A method for touch-position sensing with a capacitive touch sensor that includes multiple capacitive electrodes arranged to define a slider track, comprising: performing a calibration operation to measure calibration data at points along the slider track, and generating a corresponding set of calibration vectors R(X)=(R.sub.0, R.sub.1, . . . , R.sub.N) for points of the slider track, where R.sub.i is a calibration data response of each capacitive electrode at the points along the slider track, and after the calibration operation, the calibration vectors corresponding to a configuration of the capacitive electrodes; performing position sensing operations at a defined sensing frequency to determine a touch-position on the slider track based on: measuring position data for the touch-position, and generating a corresponding touch-position vector D=(D.sub.0, D.sub.1, . . . , D.sub.N), where D.sub.i is a position data response of each capacitive electrode at the touch-position, determining an angle between the touch-position vector and each of a subset of the calibration vectors; determining a touch-position based at least in part on the angles between the touch-position vectors and the subset of calibration vectors.

2. The method of claim 1, wherein the calibration operation comprises: measuring, for each capacitive electrode, zero-level calibration data corresponding to no-touch; measuring, for each capacitive electrode, touch calibration data at defined L positions on the slider track; determining L+1 calibration vectors as a difference between the zero-level calibration data and the touch calibration data.

3. The method of claim 1, wherein the calibration operation comprises: measuring, for each capacitive electrode, calibration data at defined L positions along the slider track; generating L+1 calibration data sets, corresponding to the L positions and a zero position; determining L+1 calibration vectors R.sub.i from the L+1 calibration data sets.

4. The method of claim 3, further comprising post-processing each calibration data set to remove a DC component; and generating, from the remaining AC calibration data, the corresponding calibration vector R.sub.j.

5. The method of claim 3, wherein each calibration data set is based on averaging calibration data responses for multiple touches of each slider-position L.

6. The method of claim 5, wherein removing the DC component is based on removing a moving average of calibration data measurements.

7. The method of claim 1, further comprising subtracting from the position data a DC component; and generating, from the remaining AC position data, the corresponding touch-position vector D.sub.j.

8. The method of claim 7, wherein removing a DC component is based on removing a moving average of position data measurements.

9. The method of claim 1, wherein the position sensing operations further comprise: determining a length of the touch-position vector D.sub.j, and determining the touch-position based in part on a comparison of the length of the touch-position vector D.sub.i a with a defined threshold value.

10. The method of claim 9, further comprising determining the touch position based on: determining the cosine between the position vector [D.sub.j] and the calibration vector R.sub.j according to Cos ( ) .Math. i = 0 N R i * Di .Math. D .fwdarw. .Math. * : .Math. R .fwdarw. .Math. , where |{right arrow over (R)}| is the length of the calibration vector: .Math. R .fwdarw. .Math. = .Math. i = 0 N R i 2 ; and determining the touch position based on a local maxima of Cos ().

11. The method of claim 10, further comprising: performing a quadratic or higher order interpolation of the angles between the position vector and the subset of the calibration vectors.

Description

BRIEF DESCRIPTION OF THE DRAWINGS

(1) FIGS. 1 and 2A/2B illustrate example physical structures for a touch slider [10, 20] configured with multiple interdigitated touch sensors/electrodes, such as for implementing a touch slider element of a device case, with touch slider-position sensing according to this Disclosure: FIG. 1A illustrates an example two channel configuration with two interdigitated sensor electrodes [12A, 12B]; and FIGS. 2A/2B illustrate an example four channel configuration with four interdigitated sensors configured from five electrodes [22A-22E], with end electrodes [22A and 22E] coupled in series as a single end-point sensor.

(2) FIGS. 3A and 3B are an example plots illustrating calibration data collection for defining calibration vectors for use in touch slider-position sensing based on calibration/touch vector processing according to the Disclosure, for an example a touch slider with four touch sensors [FIGS. 2A/2B].

(3) FIG. 4 is an example plot illustrating touch slider-position sensing based on calibration (R) and touch (D) vector processing according to aspects of the Disclosure.

(4) FIGS. 5A and 5B are example plots illustrating an aspect of touch slider-position sensing based on calibration/touch vector processing according to this Disclosure, using interpolation (in this example, quadratic) to identify a local maximum corresponding to touch slider-position.

DETAILED DESCRIPTION

(5) This Description and the Drawings constitute a Disclosure for touch slider-position sensing based on calibration/touch vector processing, including describing design examples (example implementations), and illustrating various technical features and advantages.

(6) This Disclosure uses the following nomenclature. A touch slider is a linear position sensor for sensing touch position along a linear slider/track defined by touch-slider element integrated into a device.

(7) In an example application, the touch slider-position sensing methodology according to the Disclosure based on calibration/touch vector processing can be used to implement a touch slider element integrated into the case of a mobile communications device, such as on an edge panel/wall of the case.

(8) In brief overview, a method suitable for touch slider-position sensing with a capacitive touch sensor that includes multiple capacitive electrodes arranged to define a slider track, includes: (a) generating a set of calibration vectors for points of the slider track; (b) determining a touch slider-position based on (i) measuring a measurement/data vector associated with the touch-press slider-location, (ii) determining an angle between the measurement/data vector and a subset of the calibration vectors, and (iii) determining touch slider-position based on the angles between the measurement data vectors and the subset of calibration vectors. To improve resolution, the method can include performing a quadratic or higher order interpolation of the angles between the measurement/data vector and the subset of the calibration vectors.

(9) FIGS. 1 and 2A/2B illustrate example physical embodiments/structures for a capacitive touch slider, each with multiple capacitive interdigitated sensor electrodes, such as for implementing a touch slider element of a device case with touch slider-position sensing according to the Disclosure.

(10) Touch slider position-sensing for sensing linear slider-position on a touch-slider according to the Disclosure, is based on calibration/touch vector processing, which is independent of sensor electrode configuration. In particular, touch slider position-sensing according to the Disclosure and can be scaled to different sensor electrode configurations, with different multi-electrode configurations and layouts, as required to achieve a desired performance/resolution for the touch slider.

(11) FIG. 1 illustrates an example touch-slider sensor 10 in a two channel sensor configuration, with two interdigitated sensor electrodes 12A and 12B.

(12) FIGS. 2A/2B illustrate (different views) an example four channel touch-slider sensor configuration 20A/20B, with four sensors configured from five interdigitated electrodes 22A-22E, with end electrodes 22A and 22E coupled in series as a single end-point sensor (this configuration is designated 22A/22E-22D).

(13) An example touch slider implementation based on capacitive touch slider-position sensing according to the Disclosure, includes a touch slider sensor configuration with multiple capacitive sensor electrodes in a defined configuration/layout, and capacitive sensor electronics coupled to the each sensor electrode.

(14) The design of the sensor electronics is not important to the touch slider-position sensing methodology, which is based on calibration/touch vector processing according to the Disclosure. For the example touch slider implementation based on capacitive touch slider-position sensing, a multi-channel capacitance-to-data converter (CDC) can be used, with each excitation/acquisition channel coupled to an associated slider sensor electrode (such as slider sensor electrodes 22A/22E-22D in FIG. 1B).

(15) The following description of an example implementation of touch slider-position sensing based on calibration/touch vector processing according to the Disclosure is in the context of the example capacitive touch slider configuration of FIGS. 2A/2B, with four sensor channels (five interdigitated sensor electrodes 22A/22E-22D, where end point sensor electrodes 22A and 22E are series connected to provide a single end position sensor/channel). The example four channel touch slider sensor includes N=5 interdigitated sensor electrodes (five separate electrode sections/areas defining a linear slider/track).

(16) During operation, capacitive data is collected from these N sensors to determine linear slider-position (X) of a finger, hand, or other capacitive object relative to the touch-slider element/track.

(17) FIGS. 3A and 3B are an example plots illustrating calibration data collection for defining calibration vectors for use in touch slider-position sensing based on calibration/touch vector processing according to aspects of the Disclosure.

(18) A initial calibration is performed, prior to touch slider operation, to collect calibration vector data. For example, calibration can be performed as follows. Pre-determined positions on the slider are touched, and capacitive calibration data for each sensor electrode is measured. The example plots in FIGS. 3A/3B illustrate response averaging based on touching a slider-position 10 times. Then the calibration data is post-processed to eliminate a DC component. For example, DC elimination can be based on removing a long-term moving average, or using a baseline tracking technique. Then, a maximum delta-capacitance C response is determined for each of the four sensor electrodes.

(19) Alternatively, a delta-capacitance response C can be measured as follows: (a) measure 0-level (no touch) capacitances of the N=5 sensor electrodes (22A/22E-22D in FIGS. 2A/2B); (b) measure capacitances for a touch-press at known slider-position X; and (c) then take the difference to derive delta-capacitance response C.

(20) This procedure is repeated at several known slider-positions X, for example, every 1 cm starting from end position 0 to end position L (for example, 10 cm) on the slider/track.

(21) As a result, L+1 (for example, L=10 plus the zero position) sets of C responses are measured for each of the N sensor electrodes (22A/22E-22D in FIG. 1B) at the known X position. That is, L+1 response calibration vectors are determined, where each response calibration vector {right arrow over (R)} is given by the C response as measured by the sensor channel for the associated sensor electrode, {right arrow over (R)}(X)=(R.sub.0, R.sub.1, . . . , R.sub.N) where R.sub.i is a C response of each of the N sensor electrodes at position X.

(22) FIG. 4 is an example plot illustrating touch slider-position sensing based on calibration/touch vector processing with calibration (R) and touch (D) vectors according to aspects of the Disclosure.

(23) During touch slider operation, sensor data is continuously measured within pre-defined sensing periods (i.e., at a predefined sensing frequency). The DC component is subtracted from the data (for example, by removing long-term moving average, or using a baseline tracking technique). The remaining AC signal is a vector {right arrow over (D)}=(D.sub.0, D.sub.1, . . . , D.sub.N), where D.sub.i is a capacitance C response of each sensor electrode. To determine if a touch-press is occurring, the touch slider-position sensing methodology calculates, in each sensing period, the length of data vector
{right arrow over (D)}:|{right arrow over (D)}|={square root over (.sub.i=0.sup.ND.sub.i.sup.2)}
and compares it to a predefined threshold value T.

(24) If the data vector magnitude D is greater than the threshold T, a touch-press is detected, and the methodology proceeds to determine touch slider-position.

(25) Touch slider-position sensing according to the Disclosure is based on calibration/data vector processing. For each of the response calibration vectors {right arrow over (R)}, the cosine is determined between the measurement/data vector {right arrow over (D)} and {right arrow over (R)}:

(26) Cos ( ) .Math. i = 0 N R i * Di .Math. D .fwdarw. .Math. * : .Math. R .fwdarw. .Math. ,
where

(27) |{right arrow over (R)}| is the length of the calibration vector:

(28) .Math. R .fwdarw. .Math. = .Math. i = 0 N R i 2

(29) These determinations obtain Cos() as an angle between the measurement/data vector {right arrow over (D)} and the calibration vector {right arrow over (R)} associated with each of the calibration positions X.

(30) FIG. 4 provides an example plot for this dependency, for an example slider 23 cm-long.

(31) If the touch-press occurs at slider-position X, the current measurement/data vector will align well with calibration response vectors close to position X, i.e. the angle between measurement/data vector {right arrow over (D)} and calibration vectors {right arrow over (R)} will be close to 0, and cosine of the angles will be close to 1. The plot demonstrates this relationship for cosines around 4 cm are close to 1, indicating good alignment between current measurement/data vector and calibration vectors around X=4.

(32) FIGS. 5A and 5B are example plots illustrating an aspect of touch slider-position sensing based on calibration/touch vector processing according to the Disclosure, using interpolation to identify a local maximum corresponding to touch slider-position. In this example, quadratic interpolation is used. Cubic or higher order interpolation can be used.

(33) Resolution can be increased by using interpolation to determine a local maximum point for Cos() vs X. For example, to identify a touch slider-position, the methodology can proceed to identify a peak position for Cos() vs X. Points surrounding the maximum (X=4 in this example) are identified, and a quadratic interpolation is performed, using measurements at X=3, 4, and 5. For higher order interpolations, more surrounding points are used.

(34) Using interpolation, a formula can be identified that gives a fit on the measurement/data points. A maximum of this function can be identified, around an initial measured maximum position, to find an interpolated maximum position with higher resolution (limited only by the noise in the measurement system). For example, in FIG. 5B, a touch position of X=3.7565 can be identified.

(35) Note that the cosine did not go to 1, because of noise, so that the four dimensional vectors do not align exactly.

(36) The Disclosure provided by this Description and the Figures sets forth example designs and applications illustrating aspects and features of the invention, and does not limit the scope of the invention, which is defined by the claims. Known circuits, connections, functions and operations are not described in detail to avoid obscuring the principles and features of the Disclosed example designs and applications. This Disclosure can be used by ordinarily skilled artisans as a basis for modifications, substitutions and alternatives, including adaptations for other applications.