`Boie et al.
`
`111111111111111111111111111111111111111111111111111111111111111111111111111
`US005463388A
`[11] Patent Number:
`[45] Date of Patent:
`
`5,463,388
`* Oct. 31, 1995
`
`[54] COMPUTER MOUSE OR KEYBOARD INPUT
`DEVICE UTILIZING CAPACITIVE SENSORS
`
`[75]
`
`Inventors: Robert A. Boie, Westfield; Laurence
`W. Ruedisueli, Berkeley Heights; Eric
`R. Wagner, South Plainfield, all of N.J.
`
`[73] Assignee: AT&T IPM Corp., Coral Gables, Fla.
`[ * ] Notice:
`
`The portion of the term of this patent
`subsequent to May 12, 2009, has been
`disclaimed.
`
`[21]
`
`[22]
`
`[51]
`[52]
`[58]
`
`[56]
`
`Appl. No.: 11,040
`Jan. 29, 1993
`
`Filed:
`
`Int. Cl.6
`•••••••••••••••••.•••••••••••.••..•...••••••••••••••• H03K 17/94
`U.S. Cl ................................................ 341133; 345/174
`Field of Search ................................. 341/33; 178/18,
`178/19; 345/174
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`4,733,222
`4,737,768
`4,772,874
`4,806,709
`4,852,443
`4,&93,071
`4,972,496
`
`3/198& Evans ........................................ 341/33
`4/1988 Lewiner et al. .......................... 341133
`911988 Hasegawa ................................. 341/33
`2/1989 Evans ........................................ 178/19
`8/1989 Duncan et al. .......................... 8411.04
`1/1990 Miller ...................................... 324/660
`11/1990 Sklarew ................................ 178/18 X
`
`5,012,124
`5,016,008
`5,113,041
`5,122,623
`
`411991 Hollaway .................................. 341/33
`511991 Gruaz et al ............................... 341133
`511992 Blonder et al ............................ 178/18
`6/1992 Zank et al ................................. 178119
`
`OTHER PUBLICATIONS
`
`''The Art of Electronics," Second Edition, Horowitz and
`Hill, p. 889, Cambridge University Press (1989).
`
`Primary Examiner-Brent Swarthout
`Assistant Examiner-Thomas J. Mullen, Jr.
`Attorney, Agent, or Firm-Geoffrey D. Green
`
`[57]
`
`ABSTRACT
`
`A computer input device for use as a computer mouse or
`keyboard comprises a thin, insulating surface covering an
`array of electrodes. Stich electrodes are arranged in a grid
`pattern and can be connected in columns and rows. Each
`column and row is connected to circuitry for measuring the
`capacitance seen by each column and row. The position of
`an object, such as a finger or handheld stylus, with respect
`to the array is determined from the centroid of such capaci(cid:173)
`tance values, which is calculated in a microcontroller. For
`applications in which the input device is used as a mouse, the
`microcontroller forwards position change information to the
`computer. For applications in which the input device is used
`as a keyboard, the microcomputer identifies a key from the
`position of the touching object and forwards such key
`identity to the computer.
`
`10 Claims, 6 Drawing Sheets
`
`EXHIBIT 1002
`IPR Petition for U.S. Patent No. 8,059,015
`
`
`
`U.S. Patent
`US. Patent
`
`Oct. 31, 1995
`Oct. 31, 1995
`
`Sheet 1 of 6
`Sheet 1 of 6
`
`5,463,388
`5,463,388
`
`FIG. 1
`
`100
`
`
`
`\
`
`I
`I
`\
`I
`
`l
`
`\
`
`\
`
`I
`
`\
`
`\
`
`110
`
`
`
`U.S. Patent
`
`Oct. 31, 1995
`
`Sheet 2 of 6
`
`5,463,388
`
`FIG. 2
`
`FIG. 3
`
`100
`
`: .'
`: ·. :
`: :
`·. : ·.
`: ·. ..
`
`.'
`
`:
`..
`
`·.
`
`· .
`: ·.
`: ·.
`
`: :
`
`204'
`
`203'
`
`203'
`
`
`
`... w
`0\ w
`... .a;.
`Ol
`
`QO
`QO
`
`<:'\
`
`s,
`~
`~ ......
`C"l:l =(cid:173)~
`
`ii;
`\C
`"' .....
`~ .....
`0 p.
`
`~ = "'""" a
`
`•
`00.
`d •
`
`410
`
`409
`
`OSICLL.ATOR
`
`RJ.
`
`~EANS
`
`TO UTILIZING
`
`420
`
`CONTROLLER
`
`~ICRO
`
`CONVERTER
`
`A/D
`
`406
`
`405
`
`SYNCHRONOUS
`404
`
`AND fiLTER
`DETECTOR
`
`100
`
`FIG. 4
`
`
`
`U.S. Patent
`FIG. 5
`
`Oct. 31, 1995
`
`Sheet 4 of 6
`
`5,463,388
`
`TO ELEMENT
`OF ARRAY 100
`
`FIG. 7
`
`y
`
`1
`
`504
`
`507
`
`508
`
`TO MULTIPLEXER 402
`
`FROM RF OSCILLATOR 408
`
`I
`I
`
`I
`I
`
`I
`I ~==->
`
`·············
`
`I
`
`................
`
`I
`
`...............
`
`I
`
`.............. .
`
`411!11!111!11
`3 -rn&;mrw !itilillt !1GIIn:1ir
`lfffiJE]] I i·:·::·:·:: ·•:C·:ll r·:·:,a::::·ll ·:·::::·:·::::·:C
`r EZZiill : :±w~:g t ".fufyffu : f#:Bful-
`2 ~~MliliH~~+Iili}~~&ila~~ :g;;,_
`I!I.Ml;!iiPt!IU!II i Ill i l!.l•;l
`
`:
`
`:
`
`: :::::::::::::1::::::::
`
`;:::::·:::::.::::··!·:·· · .. ::. ·:·. :_
`
`I illillillillill I
`
`.............. .
`
`2
`
`3
`--x
`
`4
`
`
`
`U.S. Patent
`FIG. 6
`
`Oct. 31, 1995
`
`Sheet 5 of 6
`
`5,463,388
`
`601
`
`READ AND STORE
`INITIAL CAPACITANCE VALUES
`
`602
`READ CAPACITANCE VALUES
`AND SUBTRACT INITIAL VALUES
`
`REMAINDERS ABOVE THRESHOLD?
`
`604
`
`COMPUTE X AND Y
`VALUES AT CENTROID
`605
`r------L-.J..--.,. YES
`>--------,
`
`607
`CLEAR II T" FLAG
`
`STORE X AND Y VALUES
`
`READ OTHER INPUTS
`
`NO
`
`614
`STORE STATES OF
`OTHER INPUTS
`
`
`
`U.S. Patent
`
`Oct. 31, 1995
`
`Sheet 6 of 6
`
`5,463,388
`
`FIG. 8
`
`START
`
`READ AND STORE
`INITIAL CAPACITANCE VALUES
`
`LB02
`READ CAPACITANCE VALUES
`AND SUBTRACT INITIAL VALUES
`
`fB03
`REMAINDERS ABOVE THRESHOLD?
`
`.....,.___,CLEAR uT" FLAG ~-t--<
`
`YES
`
`f 804
`
`uT" FLAG SET?
`NO
`
`Laos
`COMPUTE X AND Y AT CENTROID
`
`DETERMINE KEY TOUCHED FROM X AND Y
`VALUES AND STORED RANGES
`
`LB07
`
`SEND DATA
`Laoa
`SET HT" FLAG
`
`
`
`5,463,388
`
`1
`COMPUTER MOUSE OR KEYBOARD INPUT
`DEVICE UTILIZING CAPACITIVE SENSORS
`
`FIELD OF THE INVENTION
`
`This invention relates to sensors for capacitively sensing
`the position or movement of an object, such as a finger, on
`a surface.
`
`BACKGROUND OF THE INVENTION
`
`Numerous devices are known for sensing the position of
`objects on surfaces, many of which relate to computer input
`tablets. For example, U.S. Pat. No. 5,113,041 to Greg E.
`Blonder et al. discloses a computer input tablet for use with 15
`a stylus in which the position of the stylus can be determined
`from signals transmitted to the stylus from a grid of signal
`lines embedded in the tablet, and U.S. Pat. No. 4,806,709 to
`Blair Evans discloses a touch-screen having a resistive layer
`with a number of point electrodes spaced thereon such that
`the position of a finger touching the screen can be deter(cid:173)
`mined from the relative values of the currents drawn from
`the point electrodes. The first such device requires means for
`the stylus itself to transmit information, such as a direct
`electrical connection. The second such device, and other 25
`kinds of tablets that sense the pressure of a finger or stylus,
`do not require such information-transmitting means.
`Computer input tablets can be used for input of textual or
`graphical information. Various systems are known in the art
`which process handwritten text as if it were entered on a 30
`keyboard. Graphical information can also be captured by
`means of such tablets.
`Other input devices such as computer "mice," joysticks
`and trackballs can be used with computers to control the
`position of a cursor on a display screen, such as a video 35
`terminal, for input of graphical information and for interac(cid:173)
`tive programs such as computer games and programs using
`"windows" for display of information. Movement of a
`mouse in a particular direction on a surface causes a corre(cid:173)
`sponding movement of the cursor or other object on the 40
`screen. Similarly, movement of a joystick or trackball in a
`particular direction causes such movement.
`Input devices such as mice, joysticks and trackballs can be
`cumbersome because of their size and shape and, particu(cid:173)
`larly with mice, the room needed for use. These drawbacks 45
`are more apparent with respect to portable computers, such
`as the so-called "notebook" computers. It is deskable, there(cid:173)
`fore, to furnish such control capabilities in an input device
`that can be incorporated in a small space, but without
`sacrificing ease of use. It is also desirable to be able to use 50
`such a device for multiple functions, for example, a particu-
`lar area of a computer keyboard that can also be used as a
`mouse without losing its functionality as a keyboard. Fur(cid:173)
`ther, it is desirable that such an input device be capable of
`operation by a finger or handheld stylus that does not require 55
`an electrical connection or other means for transmitting
`information.
`
`2
`can be measured separately or the electrodes can be divided
`into separate elements connected in columns and rows and
`the capacitances measured for each column and row. The x
`and y coordinates of the centroid are calculated in a micro-
`5 controller from the measured capacitances. For applications
`in which the sensor is used to emulate a mouse or trackball,
`the microcontroller forwards position change information to
`utilizing means. For applications in which the sensor is used
`to emulate a keyboard, the microcontroller identifies a key
`10 from the position of the touching object and forwards such
`key identification to utilizing means.
`These and other aspects of the invention will become
`apparent from the attached drawings and detailed descrip(cid:173)
`tion.
`
`BRIEF DESCRIPTION OF THE DRAWING
`
`FIG. 1 is a graphic diagram showing the relationship
`between the position of a user's finger and capaCitances at
`20 electrodes in a two- dimensional sensor constructed in
`accordance with the invention.
`FIG. 2 is a more detailed representation of interdigitated
`electrode components at the intersections of rows and col(cid:173)
`umns in a two-dimensional sensor.
`FIG. 3 is an alternate arrangement for electrodes in the
`array.
`FIG. 4 is an overall block diagram of a two-dimensional
`capacitive position sensor in accordance with the invention.
`FIG. 5 is a diagram of an integrating amplifier and
`bootstrap circuit associated with the electrodes.
`FIG. 6 is a flow chart showing operation of the capacitive
`position sensor of the invention as a computer mouse or
`trackball.
`FIG. 7 is a diagram showing use of the capacitive position
`sensor of the invention as a keyboard.
`FIG. 8 is a flow chart showing operation of the capacitive
`position sensor of the invention as a keyboard.
`
`DETAILED DESCRIPTION
`
`The invention will be described in terms of a exemplary
`two-dimensional embodiment adapted to emulate a com(cid:173)
`puter mouse or keyboard for use with a personal computer.
`However, it will be clear to those skilled in the art that the
`principles of the invention can be utilized in other applica(cid:173)
`tions in which it is convenient to sense position of an object
`capacitively in one or more dimensions.
`The operational principle of the capacitive position sensor
`of the invention is shown in FIG. 1. Electrode array 100 is
`a square or rectangular array of electrodes 101 arranged in
`a grid pattern of rows and columns, as in an array of tiles.
`A 4x4 array is shown, which we have found adequate for
`emulating a computer mouse by finger strokes on the array.
`However, the invention can be used with arrays of other
`sizes; if desired. The electrodes are covered with a thin layer
`of insulating material (not shown). Finger 102 is shown
`positioned with respect to array 100. Electrode array 100 can
`be one- dimensional for applications in which position in
`60 only one dimension is to be sensed.
`Histogram 110 shows the capacitances for electrodes 101
`in array 100 with respect to finger 102. Such capacitances
`are a two- dimensional sampling of the distribution of
`capacitance between array 100 and finger 102. The centroid
`(center of gravity or first moment) 111 of such distribution
`will correspond to the position of finger 102, or some other
`object touching array 100, if suitable sampling criteria are
`
`65
`
`SUMMARY OF THE INVENTION
`
`The capacitive sensor of the invention comprises a thin,
`insulating surface covering a plurality of electrodes. The
`position of an object, such as a finger or hand-held stylus,
`with respect to the electrodes, is determined from the
`centroid of capacitance values measured at the electrodes.
`The electrodes can be arranged in one or two dimensions. In
`a two-dimensional array, the capacitance for each electrode
`
`
`
`5,463,388
`
`10
`
`15
`
`3
`met; that is, by choosing electrodes of sufficiently small size
`when compared to the extent of the distribution. Such
`criteria are discussed in the Blonder et a!. patent referred to
`above.
`The x and y coordinates of the centroid can be determined 5
`by directly measuring the capacitance at each electrode 101
`and calculating such x and y coordinates from such mea(cid:173)
`sured capacitances. Thus, for the 4x4 array 100, sixteen
`capacitance measurements would be needed. The number of
`measurements can be reduced, however, by taking advan(cid:173)
`tage of the fact that the one-dimensional centroids of the
`projections of the distribution onto the x and y axes also
`correspond to the finger position. Such projections can be
`formed by subdividing each electrode 101 into two ele(cid:173)
`ments, as shown in FIG. 2.
`FIG. 2 shows four such subdivided electrodes in more
`detail at an intersection of two rows and two columns in
`array 100. As can be seen from FIG. 2, a horizontal element
`201 and a vertical element 202 are situated at each inter(cid:173)
`section of a row and column. Horizontal elements 201 are
`interconnected by leads 203 and vertical elements 202 are
`interconnected by leads 204. Elements 201 and 202 can be
`interdigitated as shown. It is advantageous for the conduct(cid:173)
`ing areas of elements 201 and 202 to cover the surface of
`array 100 as completely as possible. For finger strokes, we 25
`have used interdigitated elements 201 and 202 that are
`approximately 0.37" square. Smaller electrodes 101 or ele(cid:173)
`ments 201 and 202 be desirable for use with a hand-held
`stylus having a smaller cross-section than a finger.
`As will be clear to those skilled in the art, elements 201
`and 202 can be fabricated in one plane of a multi-layer
`printed circuit board together with one set of interconnec(cid:173)
`tions, for example, the horizontal row connections 203. The
`vertical row connections 204 can then be fabricated in
`another plane of the circuit board with appropriate via
`connections between the planes.
`Other electrode array configurations can be used, if
`desired. For example, FIG. 3 shows horizontal strip elec(cid:173)
`trodes 203' overlapping vertical strip electrodes 204'. Elec(cid:173)
`trodes 203' and 204' are separated by a thin insulating layer
`(not shown) and covered by another thin insulating layer
`(not shown). In such a configuration, areas of electrodes 204'
`must be left unmasked by electrodes 203' so that electrodes
`204' can still "see" the capacitance of an object touching the
`surface in which such electrodes are embedded. A similar
`configuration of electrodes is shown in the Blonder et at.
`patent. However, the structure of FIG. 2 is preferred because
`the interdigitated elements 201 and 202 do not overlap and
`the capacitance values measured can be higher for a given
`area of array 100, thus providing greater noise immunity.
`FIG. 4 is an overall block diagram of a capacitive sensor
`400 in accordance with the invention. Electrode array 100
`comprises rows and columns of electrodes, for example,
`rows and columns of connected horizontal and vertical
`elements as shown in FIG. 2. Referring again to FIG. 4, each
`row and column of electrodes from array 100 is connected
`to an integrating amplifier and bootstrap circuit 401, which
`is shown in more detail in FIG. 5 and will be described
`below. Each of the outputs from circuits 401 can be selected 60
`by multiplexer 402 under control of microcontroller 406.
`The selected output is then forwarded to summing circuit
`403, where such output is combined with a signal from
`trimmer resistor 409. Synchronous detector and filter 404
`convert the output from summing circuit 403 to a signal 65
`related to the capacitance of the row or column selected by
`multiplexer 402. RF oscillator 408 provides an RF signal,
`
`4
`for example, 100 kilohertz, to circuits 401, synchronous
`detector and filter 404 via inverter 410, and guard plane 411.
`Guard plane 411 is a substantially continuous plane parallel
`to array 100 and associated connections, and serves to
`isolate array 100 from extraneous signals. The operation of
`synchronous detector and filter 404 is well known in the art,
`for example, see page 889 of "The Art of Electronics,"
`Second Edition, by Horowitz and Hill, Cambridge Univer(cid:173)
`sity Press (1989). A capacitive proximity detector having a
`single electrode, a guard plane and similar circuitry is
`disclosed in co-pending Application No. 07/861,667 for R.
`A. Boie et al. filed Apr. I, 1992, now U.S. Pat. No.
`5,337,353.
`Apparatus similar to that shown in FIG. 4 can also be used
`for applications in which it is desired to measure separate
`capacitance values for each electrode in array 100 instead of
`the collective capacitances of subdivided electrode clements
`connected in rows and columns. To measure such capaci(cid:173)
`tances separately, a circuit 401 is provided for each electrode
`in array 100 and multiplexer 402 is enlarged to accommo-
`20 date the outputs from all circuits 401.
`The output of synchronous detector and filter 404 is
`converted to digital form by analog-to-digital converter 405
`and forwarded to microcontroller 406. Thus, microcontroller
`406 can obtain a digital value representing the capacitance
`seen by any row or column of electrode elements (or
`electrode if measured separately) selected by multiplexer
`402. Buttons 407, which can be auxiliary pushbuttons or
`switches situated near array 400, are also connected to
`microcontroller 406. Buttons 407 can be used, for example,
`for the same purposes as the buttons on a computer mouse.
`Microcontroller 406 sends data to utilizing means, such as a
`personal computer (not shown) over lead 420. A particular
`device that can be used for AID converter 405 and micro-
`controller 406 is the 87C552 circuit made by Intel Corpo(cid:173)
`ration, which includes both an AID converter and a micro(cid:173)
`processor.
`FIG. 5 is a circuit diagram of each integrating amplifier
`and bootstrap circuit 401. The RF signal from RF oscillator
`40 408 drives the base of transistor Q1 and the bootstrap circuit
`comprised of resistor 501 and capacitor 502. Current source
`503 provides a constant DC bias current through transistor
`Ql. An electrode in array 100 is connected to the emitter of
`transistor Ql. The RF current to an electrode is determined
`45 by the capacitance seen by the electrode; thus, an increase in
`capacitance caused by the proximity of an object, such as a
`finger, causes in increase in such current. Such an increase
`is reflected as a change in the RF current flowing from the
`collector of transistor Q1. The collector of transistor Ql is
`50 connected to the input node of integrating amplifier 505 via
`coupling capacitor 506. For a change in capacitance, ~C, at
`the electrode, the change in the amplitude of the output
`signal from amplifier 505 will be approximately A(1'1C!C1),
`where A is the amplitude of the RF signal from oscillator 403
`55 and C1 is the value of integrating capacitor 507. Resistor 503
`provides a bias current for amplifier 505 and resistor 504
`provides bias current for transistor Ql.
`The effects of electrode-to-electrode capacitances, wiring
`capacitances and other extraneous capacitances arc mini(cid:173)
`mized by driving all electrodes and guard plane 411 in
`unison with the same RF signal from RF oscillator 408. The
`bootstrap circuit serves to minimize any signal due to the
`finite impedance of the biasing circuit of transistor Ql. The
`base-to-collector capacitance of transistors Q1 and other
`stray capacitances in the circuit can be compensated for by
`adjusting trim resistor 109 shown in FIG. 1.
`In using the position sensor of the invention as a computer
`
`30
`
`35
`
`
`
`5,463,388
`
`6
`
`(4)
`
`5
`
`5
`mouse or trackball to control a cursor, movement of the
`mouse or trackball is emulated by touching array 100 with
`finger 102, or some other object, and stroking finger 102
`over array 100 to move the cursor. Changes in position of the
`finger with respect to array 100 are reflected in correspond-
`ing changes in position of the cursor. Thus, for such an
`application, microcontroller 406 sends data over lead 420
`relating to changes in position. FIG. 6 is a flow chart of the
`operation of microcontroller 406 in such an application.
`Referring to FIG. 6, microcomputer 406 reads the initial 10
`capacitance values for all the elements in array 100 and
`stores such values (step 601). Such initial values should
`reflect the state of array 100 without a finger or other object
`being nearby, accordingly, it may be desirable to repeat step
`601 a number of times and then to select the minimum
`capacitance values read as the initial values, thereby com- 15
`pensating for the effect of any objects moving close to array
`100 during the initialization step. After initialization, all
`capacitance values are periodically read and the initial
`values subtracted to yield a remainder value for each ele(cid:173)
`ment (step 602). If one or more of the remainders exceeds 20
`a preset threshold (step 603), indicating that an object is
`close to or touching array 100, then the x and y coordinates
`of the centroid of capacitance for such object can be calcu(cid:173)
`lated from such remainders (step 604). For applications in
`which the electrodes of array 100 are connected in rows and 25
`columns, as shown in FIG. 2 and FIG. 3, such calculation
`can be performed as follows:
`
`where xc andy care the values just calculated in step 605 and
`xP and y P are the values calculated and stored (step 610)
`during the previous iteration.
`It may be desirable to remove jitter from the least(cid:173)
`significant bit in the values of dx and dy calculated (step
`609). This can be accomplished by incrementing negative
`values by 1 and decrementing positive values by 1, leaving
`zero values without change.
`The values calculated for x andy are stored (step 610) for
`use in calculating dx and dy during the next iteration. Then,
`if other inputs, such as buttons 407, are connected to
`microcontroller 406, the state of such inputs is read (step 611
`). Finally, if x andy have changed (dx:tO or dy:tO) or the state
`of buttons 407 has changed (step 612), data relating to such
`changes is sent over line 420 to the computer or other
`utilizing means to which sensor 400 is connected (step 613).
`Such data typically includes dx, dy and the current state of
`the buttons, which corresponds to that sent to a computer by
`a conventional computer mouse or trackball. Finally the
`states of such other inputs are stored (step 614) for use
`during the next iteration.
`Typically the cycle time through the above-described
`steps will be about 20 milliseconds, depending on the time
`constant of the filter in circuit 404. After each change of
`multiplexer 402, microcontroller 406 is programmed to wait
`approximately 2 milliseconds for the output of circuit 404 to
`settle.
`It will be clear that the absolute values of x and y can be
`included in the data sent over line 420 to utilizing means, if
`desired. For example, capacitive input sensor 400 can be
`adapted for use as a general purpose input pad for entering
`handwritten information. For such an application, it may be
`deskable to increase the number of electrodes to improve
`definition, but even a 4x4 matrix for use with finger input
`can produce useful input data because of the interpolating
`effect of the centroid-finding calculations performed in step
`604.
`Instead of using buttons 407 for additional input when
`40 array sensor 100 is used as a computer mouse, it may be
`desirable to sense different finger pressures. For example, to
`perform a "click and drag" operation, a typical use of a
`computer mouse, a heavier finger pressure can be used on
`array 100 than when an ordinary cursor movement is
`45 desired. Clearly finger pressures can be sensed by electro(cid:173)
`mechanical or other means, but differences in the capaci(cid:173)
`tances sensed by sensor 400 can also be used for this
`purpose.
`The magnitudes of the capacitance values sensed by array
`50 100 are somewhat related to finger pressure because of the
`compressibility of the fingertip when contacting array 100.
`Higher finger pressure will cause higher capacitance values
`to be sensed. This effect can be enhanced by replacing the
`insulating layer (not shown) on array 100 with a compress-
`ible insulating layer. Different finger pressures can be set by
`defining one or more additional thresholds for use in step
`603. An ordinary touch would cause the remainders to
`exceed only the first threshold; a heavier touch would cause
`at least one remainder to exceed a higher threshold, which
`60 could then be used to indicate a different button state.
`FIG. 7 is a diagram showing how an array 100 can be used
`as a keyboard in accordance with the invention. Again, array
`100 is shown as a 4x4 matrix of electrodes, but with a
`keyboard pattern overlay superimposed on the matrix. The
`65 dotted lines indicate such matrix. Such a keyboard pattern
`can be printed on the insulating layer covering the elec(cid:173)
`trodes. Note that the individual "keys" in the keyboard do
`
`X
`
`Ux
`L V(nx)
`nx=1
`
`Uy
`L ny V(ny)
`y= ny=1
`Uy
`L V(ny)
`ny=1
`
`(!) 30
`
`(2) 35
`
`where:
`ux is the number of columns, V(nJ is the remainder value for
`column nx, uy is the number of rows and V(ny) is the
`remainder value for row ny. To avoid spurious operation, it
`may be desirable to require that two or more measurements
`exceed the preset threshold. The threshold can be set to some
`percentage of the range of AID converter 405, for example
`10-15% of such range. Note that the value of x can neither
`be less than 1 nor more than ux and the value of y can neither
`be less than 1 nor more than lly·
`For applications in which the capacitance values for the
`electrode 101 in array 100 are measured separately, the x and
`y values of the centroid can also be calculated using equa(cid:173)
`tions (1) and (2) by adding all the capacitances measured for
`a row or column to obtain the value of V for such row or
`column. Such addition has the same effect as if the elec(cid:173)
`trodes were connected together in a row or column.
`When set, the "T" flag indicates that remainders were
`above the threshold during the previous iteration through
`step 603. Such flag is set during step 606 and cleared during
`step 607. Thus, after the first iteration through step 603,
`indicating a new stroke of finger 102 on array 100, the "T"
`flag is set and the x and y values just calculated are stored.
`During each subsequent iteration during such stroke, the
`changes in x and y(dx and dy) are calculated (step 608) as
`follows:
`
`(3)
`
`55
`
`
`
`5,463,388
`
`5
`
`10
`
`25
`
`7
`not necessarily correspond to the underlying electrodes. The
`x and y coordinates are shown for reference purposes. Since
`the values obtained for x and y in a 4x4 matrix using
`equations (1) and (2) will range from 1 to 4, this range is
`shown on the coordinates.
`The identity of a key touched is determined from the x and
`y values computed for the centroid of capacitance resulting
`from the touch. For example, using the x and y coordinates
`shown in FIG. 7, a "5" can be defined as a touch with
`[1.7~x~2.3, 2.3~y~2.7]; a "0" can be defined as a touch
`with [I ~x~2.3, 1 ~y~ 1.3]; and a "+" can be defined as a
`touch with [3.7~x~4, 2.4~y~3.5]. These ranges are cho(cid:173)
`sen to leave guard bands between adjacent keys. Such a
`range for each key on the keyboard is stored in micropro(cid:173)
`cessor 406.
`FIG. 8 is a flow chart showing operation of microcon- 15
`troller 406 when the capacitive position sensor of the
`invention is used as a keyboard. Steps 801, 802, 803 and 805
`are similar to steps 601, 602, 603 and 604, respectively, in
`FIG. 6. In step 805, the identity of the key touched is
`determined from the stored ranges and the values of x and 20
`y calculated in step 806. In step 807, the identity of the key
`touched is sent to utilizing means. The "T" flag is set in step
`808, cleared in step 809 and tested in step 804. Such flag
`assures that the key identity is sent to utilizing means only
`once.
`It should be clear that the various ways described above
`of using the capacitive position sensor of the invention can
`be combined. For example, a combination mouse-keyboard
`can be implemented in which one portion of array 100 is
`used as a mouse responsive to finger strokes and a second 30
`portion is used as a keyboard responsive to finger touches.
`Alternatively, array 100 can be adapted to operate in differ-
`ent modes: the first mode as a mouse, the second as a
`keyboard. Switching between modes can be accomplished,
`for example, with one of buttons 407, or with extra pressure 35
`in a specified region of array 100. Thus, where space is at a
`premium, such as in a portable computer, the capacitive
`position sensor of the invention can be used as part of the
`keyboard and also as a mouse.
`The invention has been shown and described with refer- 40
`ence to particular embodiments. However, it will be under(cid:173)
`stood by those skilled in the art that various changes may be
`made therein without departing from the spirit and scope of
`the invention.
`What is claimed is:
`1. A sensor for capacitively sensing the position in a
`continuous range of positions of an object on a surface of an
`input device, which comprises:
`an array of electrodes on said surface;
`an insulating layer covering said electrodes;
`means connected to said electrodes for measuring a
`capacitance value for each said electrode;
`means responsive to said measuring means for comparing
`said capacitance values with a first preset threshold 55
`and, if at least one of said capacitance values exceeds
`said first preset threshold, for calculating the position of
`a centroid of capacitance for said array from said
`measured capacitance values, said first preset threshold
`being set at a capacitance value that is exceeded for a 60
`given electrode only when said object is close to or
`touching said given electrode, said centroid of capaci(cid:173)
`tance being the first moment of the distribution of said
`capacitance values in said array and representing sub(cid:173)
`stantially the position of said object on said surface;
`and
`means responsive to said calculating means and con-
`
`8
`nected to utilizing means for sending said centroid of
`capacitance position to said utilizing means.
`2. The sensor of claim 1 in which said array is a two(cid:173)
`dimensional array and said electrodes are arranged in rows
`and columns.
`3. The sensor of claim 2 wherein said input device is a
`keyboard, said sensor further comprising:
`means for designating portions of the surface of said
`keyboard to represent different keys; and
`said calculating means comprises:
`means for storing a range of coordinates for each key in
`said keyboard;
`means for comparing said centroid of capacitance position
`with said ranges of coordinates and selecting the range
`of coordinates in which said centroid of capacitance
`position falls, and
`said sending means comprises means for sending the
`identity of the key associated with said selected range
`of coordinates to said utilizing means.
`4. The sensor of claim 2 wherein each said electrode
`comprises:
`at each intersection of a row and a column, a first
`electrode element connected to other first electrode
`elements in said row and a second electrode element
`connected to other second electrode elements in said
`column,
`and wherein said means for measuring a capacitance
`value for each electrode is adapted to measure the
`capacitance value for each row of said first electrode
`elements and the capacitance value for each column of
`said second electrode elements.
`5. The sensor of claim 4 wherein said first and second
`electrode elements at each intersection are interdigitated.
`6. The sensor of claim 1 wherein said calculating means
`periodically calculates changes in said centroid of capaci(cid:173)
`tance position and said sending means periodically sends
`said changes to said utilizing means.
`7. The sensor of claim 1 which further comprises:
`means responsive to said measuring means for comparing
`said capacitance values with a second preset threshold
`and for indicating to said utilizing means when said
`second preset threshold is exceeded, said second preset
`threshold being set at a capacitance value higher than
`said first preset threshold.
`8. The sensor of claim 1 wherein said measuring means
`comprises:
`means connected to said electrodes for supplying the
`same RF signal in unison to each said electrode,
`means connected to said electrodes for sen