CA2107743A1 - Pointing device utilizing a photodetector array - Google Patents
Pointing device utilizing a photodetector arrayInfo
- Publication number
- CA2107743A1 CA2107743A1 CA002107743A CA2107743A CA2107743A1 CA 2107743 A1 CA2107743 A1 CA 2107743A1 CA 002107743 A CA002107743 A CA 002107743A CA 2107743 A CA2107743 A CA 2107743A CA 2107743 A1 CA2107743 A1 CA 2107743A1
- Authority
- CA
- Canada
- Prior art keywords
- ball
- array
- output
- light
- pixel
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/0304—Detection arrangements using opto-electronic means
- G06F3/0317—Detection arrangements using opto-electronic means in co-operation with a patterned surface, e.g. absolute position or relative movement detection for an optical mouse or pen positioned with respect to a coded surface
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/0304—Detection arrangements using opto-electronic means
- G06F3/0312—Detection arrangements using opto-electronic means for tracking the rotation of a spherical or circular member, e.g. optical rotary encoders used in mice or trackballs using a tracking ball or in mouse scroll wheels
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/033—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
- G06F3/0354—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of 2D relative movements between the device, or an operating part thereof, and a plane or surface, e.g. 2D mice, trackballs, pens or pucks
- G06F3/03543—Mice or pucks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/033—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
- G06F3/0354—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of 2D relative movements between the device, or an operating part thereof, and a plane or surface, e.g. 2D mice, trackballs, pens or pucks
- G06F3/03547—Touch pads, in which fingers can move on a surface
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/033—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
- G06F3/0354—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of 2D relative movements between the device, or an operating part thereof, and a plane or surface, e.g. 2D mice, trackballs, pens or pucks
- G06F3/03549—Trackballs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/033—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
- G06F3/038—Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
- G06F3/0383—Signal control means within the pointing device
Abstract
ABSTRACT
A cursor control device for personal computers and workstations includes a randomly speckled ball illuminated with diffuse lighting. An image of at leasta portion of the illuminated area of the speckled ball is focused by an optical element such as a diffractive optical element onto a photosensitive array. Logicassociated with the photosensitive array determines movement of the ball across the array, and translates that movement into conventional cursor control signalssupplied to a host system.
A cursor control device for personal computers and workstations includes a randomly speckled ball illuminated with diffuse lighting. An image of at leasta portion of the illuminated area of the speckled ball is focused by an optical element such as a diffractive optical element onto a photosensitive array. Logicassociated with the photosensitive array determines movement of the ball across the array, and translates that movement into conventional cursor control signalssupplied to a host system.
Description
~ ~77~3 .
: ..
SPECIF!CATION :`
.
25 ::Fie!d of the In~l~ention The present invention relates to pointing devices for cursors on video ~: ., display screens for personal cornputers and workstations, and more particularly .:
reiates to optical devices and rnethods for translating rotation of a ball into :: digital signals representative of such movement.
30 ~ ; ~ : Background of the Invention :Pointing devices, such~as mice and trackballs, are well known peripherals : -for~persona! computers and workstations. Such pointing devices allow rapid relocation of the cursor on a display screeni and are useful in many text, ;.:
. :
. . .
:
. ~ . `'.',~:
~` . ': ' ' ~' ' . ~ `': "
! ~ ~ , , .
': , ' ` ,._ ... ,....... ,.,.: .. _.. ,,:. .. ..... . ...... .. .... .... ....
: ..
SPECIF!CATION :`
.
25 ::Fie!d of the In~l~ention The present invention relates to pointing devices for cursors on video ~: ., display screens for personal cornputers and workstations, and more particularly .:
reiates to optical devices and rnethods for translating rotation of a ball into :: digital signals representative of such movement.
30 ~ ; ~ : Background of the Invention :Pointing devices, such~as mice and trackballs, are well known peripherals : -for~persona! computers and workstations. Such pointing devices allow rapid relocation of the cursor on a display screeni and are useful in many text, ;.:
. :
. . .
:
. ~ . `'.',~:
~` . ': ' ' ~' ' . ~ `': "
! ~ ~ , , .
': , ' ` ,._ ... ,....... ,.,.: .. _.. ,,:. .. ..... . ...... .. .... .... ....
2 ~
database and graphical programs. Perhaps the most cornmon form of pointing device is the electronic mouse; the second most common may well be the trackball .
With a mouse, the user controls the cursor by moving the mouse over a 5 reference surface; the cursor moves a direction and distance proportional to the movement of the mouse. Although some electronic mice use reflectance of light over a reference pad, and o~hers use a mechanical approach, most prior art mice use a ball which is on the underside of the mouse and rolls over the reference surface (such as a desktop) when the mouse is moved. In such a prior art 10 device, the ball contacts a pair of shaft encoders and the rotation of th0 ball rotates the shaft encoders, which historically includes an encoding wheel havinga plurality of slits therein. A light source, often an LED, is positioned on one side of the encoding wheel, while a photosensor, such as a phototransistor, is positioned substantiallv opposite the light source. Rotation of the encoding 15 wheel therebetween causes a series of light pulses to be received by the photosensor, by which the rotational movement of the ball can be converted to a digital representation useable to move ~he cursor.
The optomechanical operation of a trackball is similar, although many ' structural differences exist. In a trackball, the device remains stationary while 20 the user rotates the ball with the thumb, fingers or palm of the hand; one ergonomic trackball is shown in U.S. Patent No. 5,122,654, assigned to the assignee of the present invention. As with the mouse, the ball in a conventionaltrackball typically engages a pair of shaft encoders having encoding wheels thereon. Associated with the encoding wheels are light sources and 25 photosensors, which generate pulses when the movement of the ball causes ;, rotation of the shaft encoders. One prior art trackball using this approach is ~ shown in U.S. Patent No. 5,008,528.
:, . , Although such a prior art approach has worked well for some time, with .
high quality mice and trackballs providing years of trouble-free use, the 30 mechanical elements of such pointing devices necessarily limit the useful life of !
:
2:~Q~ 3 ~ P-1 589 the device.
Additionally, in conventional electronic mice, a quadrature signal representative o-F the movement of the mouse is generated by the use of two pairs of LED's and photodetectors. However, the quality of the quadrature 5 signal has ofter~ varied with the matching of the sensitivity of the photosensor to the light output of the LED. In many instances, this has required the expensive process of matching LED's and photodetectors prior to assembly. In addition, varying light outputs from the LED can create poor focus of light ontothe sensor, and extreme sensitivity of photosensor output to the distance 10 between the LED, the encoding wheel, and the photosensor.
There has therefore been a need for a photosensor which does not require matching to a particular LED or batch of LED's, while at the same time providing: good response over varying LED-to-sensor distances.
In addition, many prior art mice involve the use of a mask in combination 15 with an encoder wheel to properly distinguish rotation of the encoder wheel.
i Because such masks and encoder wheels are typicaliy constructed of injection rnolded plastic, tolerances cannot be controlled to the precision of most semiconductor devices. This has led, effectively, to a mechanical upper limit , imposed on the accuracy of the conventional optomechanical mouse, despite the 20 fact that the forward path of software using such mice calls for the availability of ever-increasing resolution. There has therefore been a need for a cursor ; control device for which accuracy is not limited by the historical tolerances of injection molding.
Summary of the Invention The present invention substantially overcomes the foregoing limitations of the prior art by providing an optical sensing system which elimina~es entirely the use of shaft encoders, the encoding wheels associated with shaft encoders, `~ masks or other mechanical elements normally associated with optomechanical ! pointing devices. Although the present invention can be implemented with 30 either a mouse or a trackball, the exemplary description hereinafter will discuss !. :
21~7~
primarily a trackball implementation.
The present trackball employs a specially colored ball, having a random pattern of randomly sized (within a suitable range~, randomly shaped spots in a color which contrasts with the background color, such as black spots on an 5 otherwise white ball. One or more light sources, typically LED's, illuminate aportion of the ball with diffuse light and a portion of that light reflects onto a sensor array comprising a plurality of indh/idual sensor elemen~s to create an image of a portion of the bali. An optical element such as a lens or diffractiveoptical element may be provided to focus the image of the ball on the array. The10 signals generated by the array are then acted upon by logic and analog circuits, for example employing a neural network, such that the movement of the ball is converted into X and Y components for movement of the cursor on the video display. Except for the mechanical aspects of the hall itself, the elec~ronic trackball of the present invention is entirely optical; when the ball is included, 15 the trackball of the present invention may reasonably be thought of as an optomechanical pointing device. It will be apparent that the techniques used .
herein may readily be adapted to other types of pointing devices, particularly electronic mice.
It is therefore one object of the present invention to provide an l 20 optomechanical pointing device not requiring shaft encoders.
;.f It is another objec~ of the present invention to provide an electronic ~ .
`l pointing device using analog or similar circuits, for example a neural network, to :
`lj~ convert rotation of a ball into cursor control signals.
:i! .
It is yet another object of the present invention to provide an electronic ,1 25 pointing device employing a random pattern of randomly sized and shaped spots on a ball in combination with an op~ical array to provide signals for generatingcursor control signals.
It is a still further object of the present invention to provide an electronic pointing device using a diffused light source in combination with an optical 30 element and a photosensitive array to provide signals for generating cursor , .
. . ~ .; .,, ! , , control signals.
These and other objects of the present invention may be better appreciated from the following detailed description of the invention, taken in combination with the accompanying Figures.
THE FIGURES
Figure 1 shows in exploded view an electronic trackball according to the present invention.
Figure 2A shows a generalized cross-sectional side view of ~he ball cage and ball of the presen~ invention.
Figure 2B shows a more detailed cross-sectional side view of the ball cage and ball of the present invention, including light paths.
Figure 3 shows in schernatic block diagram form the circuitry of a single pixel according to the present invention.
Figure 4 shows an array of four of the block diagrams of Figure 3, thus 15 showing the interrelationship between the pixels.
Figure 5A shows in schematic block diagram form the circuitry used for cursor control in the present invention.
Figure 5B shows in schematic block diagram form the signal conditioning circuitry of Figure 5A.
Figures 6A-6B show in flow diagram form the operation of the firmware ~;
which controls the logic of Figures 3 and 4.
I:)ETAILED~DESCRIPTION OF THE INVENTION
Referring first to Figure 1, an electronic pointing device, and in particular an electronic trackball 10, is shown in exploded perspective view. The trackball10 Includes an upper housing 20, a printed circuit board 30 close to which a ball cage 40 is juxtaposed, a lower housing 50, a ball 60, and a pluralit~ of buttons70 located on the upper housing 20 which actuate associated switches 80. The switches 80 are normally located on the circuit board 30. The ball cage 40 typically is mounted on the PCB 30, although in some instances it can be 30 mounted on a housing member. -- 2~77'~3 The printed circuit board 30 includes circuitry for operating on the signals provided by a sensor and associated logic (see Figures 3 and 4). Thus, movement o~ the ball in the trackball is in turn converted into digital signals which control the cursor on the screen of an associated personal computer, 5 terminal or workstation. In serial port pointing devices, the printed circuit board will typically include a microprocessor and related driver circuitry for sending and receiving standard serial communications, such as RS232 signals. Alternatively, the signals provided by the mouse will be compatible with PSI2 ports.
Referring next to Figure 2A, a ball cage 40 (shown in cross-section) and 10 a ball 60 according to the present invention are shown. As will be immediately appreciated by those skilled in the art, the combination nf ball 60 and ball cage 40 are markedly different from the prior art and form a key aspect of the present invention. In particular, the ball 60 can be seen to have a plurality of randomly shaped markings thereon in a color which contrasts with the background, such 15 that the overall effect is a randomly speckled ball. A typical ball may, for example, have black spots on an otherwise white ball, although many other coior combinations would be acceptable. The randomly shaped markings or spots are randomly arranged on the ball, although the markings are within a predetermined g suitable range. Thus, the markings typicall~ with range in size from 0.5 mm2 to 20 0.7 mm2, with a density of about one spot per square millimeter. In an exemplary embodiment, the ball may be on the order of 10 mm in diameter, although the diameter could range from 5 mm to larger than 20 mm. At present, it appears that the size of spot is relatively independent of the diameter , of the ball.
In addition, and as can be better appreciated from Figure 2B which shows a more detailed cross-sectionai view of the ball and ball cage taken along the centerlines thereof, the ball cage 40 includes at least one (Figure 2A~, and in :I some cases two or more (Figure 2E~), light sources 200 such as an LED, which produces light that impinges on the ball 60. The LED or other light source may 30 include an integrally formed lens. The light from the light sources 200 is J
, ,'', ,, - , ., ~ .. . ,. , ., , - . , . .. ` . .. . , -, ~ , . .. . .
. . . . ,' . ', ` ` , ' ' ~ " ~, ` . .
, . ' ', , ~: , , . :, ., `, ,i ` ':' . ' ' . ' ' . ' - 2~f~f7~3 preferably reflected off the inside surface 205 of the outer wall 210 of the ball cage 40, and is partially blocked by an interior wall 215 from striking directly the ball 60. The inside surface 205 may be, for example, the inside surface of a sphere. In this manner the light from the light sources 200 is distributed 5 relatively uniformly across a predetermined portion of the ball, whiie at the same time the light is caused to strike the ball obliquely, providing diffuse illumination of the ball.
The ball is maintained in a rotatable position by a plurality of supports ; 150, which may for example be rollers of a conventional type, or may be 10 jeweled bearing surfaces of the type disclosed in U.S. Patent Application S.N.
07/820,500, entitled Bearing Support for a Trackball, and filed 1/14/92 and : assigned to the same assignee as the present invention, incorporated herein by reference. Although only one such roller is shown in Figure 2B because of the view shown, a plurality, typically three, such rollers are provided to ensure 15 uniform support for the ball 60.
A removable cover may be provided in some embodiments to permit readily :`, insertion and removal of the ball 60; while such is removable cover is at present believed preferable, to permit cleaning of the ball and the inside of the pointing device, in at least some embodiments such a removable cover is unnecessary.
A photodetector array 220 is locatecl centrally between the light sources ~ 200 in a chamber 222 formed within a housing 22~. A portion of the relatively `f diffuse light which strikes the ball 60 is reflected into the array 220 through an , optical element 225. The result is that an image of at least a portion of the illuminated surface of the ball is formed on the array 220. In an important ?
25 distinction from prior ar~ optomechanical mice, the ball cage includes no shaft encoders, nor does it include the matched light source and photodetector typical ~ `~
of prior optomechanical mice. The optical element 225 is typically fixed in :
location between the housing 224 and an aperture housing 228 of which the l interior wall 216 forms the outside surface. An aperture 229 is provided in the -~
., 30 aperture housing 228 to permit the diffuse light reflected off the ball 60 to reach ~ .
,' i . ' ' -, , . .' ' . : ' ', i . ' . ' ,, i , ~, , , , . ~ . ' .", " , , ` , , , ' : , . , : f ! : `
2 1 ~ 3 the optical element 225, and then the photosensitive array 220.
The photodetector array 220 will typically range in cverall size from 2x2 mm to 7x7 mm, with each detector segment, or pixel, 220A-220n having dimensions in the range of 100x100 ,um to 200x200 ~m (where the exact 5 number is determined by the size of the overall array and the size of the individual detector). As will be discussed hereinafter in connection with Figures
database and graphical programs. Perhaps the most cornmon form of pointing device is the electronic mouse; the second most common may well be the trackball .
With a mouse, the user controls the cursor by moving the mouse over a 5 reference surface; the cursor moves a direction and distance proportional to the movement of the mouse. Although some electronic mice use reflectance of light over a reference pad, and o~hers use a mechanical approach, most prior art mice use a ball which is on the underside of the mouse and rolls over the reference surface (such as a desktop) when the mouse is moved. In such a prior art 10 device, the ball contacts a pair of shaft encoders and the rotation of th0 ball rotates the shaft encoders, which historically includes an encoding wheel havinga plurality of slits therein. A light source, often an LED, is positioned on one side of the encoding wheel, while a photosensor, such as a phototransistor, is positioned substantiallv opposite the light source. Rotation of the encoding 15 wheel therebetween causes a series of light pulses to be received by the photosensor, by which the rotational movement of the ball can be converted to a digital representation useable to move ~he cursor.
The optomechanical operation of a trackball is similar, although many ' structural differences exist. In a trackball, the device remains stationary while 20 the user rotates the ball with the thumb, fingers or palm of the hand; one ergonomic trackball is shown in U.S. Patent No. 5,122,654, assigned to the assignee of the present invention. As with the mouse, the ball in a conventionaltrackball typically engages a pair of shaft encoders having encoding wheels thereon. Associated with the encoding wheels are light sources and 25 photosensors, which generate pulses when the movement of the ball causes ;, rotation of the shaft encoders. One prior art trackball using this approach is ~ shown in U.S. Patent No. 5,008,528.
:, . , Although such a prior art approach has worked well for some time, with .
high quality mice and trackballs providing years of trouble-free use, the 30 mechanical elements of such pointing devices necessarily limit the useful life of !
:
2:~Q~ 3 ~ P-1 589 the device.
Additionally, in conventional electronic mice, a quadrature signal representative o-F the movement of the mouse is generated by the use of two pairs of LED's and photodetectors. However, the quality of the quadrature 5 signal has ofter~ varied with the matching of the sensitivity of the photosensor to the light output of the LED. In many instances, this has required the expensive process of matching LED's and photodetectors prior to assembly. In addition, varying light outputs from the LED can create poor focus of light ontothe sensor, and extreme sensitivity of photosensor output to the distance 10 between the LED, the encoding wheel, and the photosensor.
There has therefore been a need for a photosensor which does not require matching to a particular LED or batch of LED's, while at the same time providing: good response over varying LED-to-sensor distances.
In addition, many prior art mice involve the use of a mask in combination 15 with an encoder wheel to properly distinguish rotation of the encoder wheel.
i Because such masks and encoder wheels are typicaliy constructed of injection rnolded plastic, tolerances cannot be controlled to the precision of most semiconductor devices. This has led, effectively, to a mechanical upper limit , imposed on the accuracy of the conventional optomechanical mouse, despite the 20 fact that the forward path of software using such mice calls for the availability of ever-increasing resolution. There has therefore been a need for a cursor ; control device for which accuracy is not limited by the historical tolerances of injection molding.
Summary of the Invention The present invention substantially overcomes the foregoing limitations of the prior art by providing an optical sensing system which elimina~es entirely the use of shaft encoders, the encoding wheels associated with shaft encoders, `~ masks or other mechanical elements normally associated with optomechanical ! pointing devices. Although the present invention can be implemented with 30 either a mouse or a trackball, the exemplary description hereinafter will discuss !. :
21~7~
primarily a trackball implementation.
The present trackball employs a specially colored ball, having a random pattern of randomly sized (within a suitable range~, randomly shaped spots in a color which contrasts with the background color, such as black spots on an 5 otherwise white ball. One or more light sources, typically LED's, illuminate aportion of the ball with diffuse light and a portion of that light reflects onto a sensor array comprising a plurality of indh/idual sensor elemen~s to create an image of a portion of the bali. An optical element such as a lens or diffractiveoptical element may be provided to focus the image of the ball on the array. The10 signals generated by the array are then acted upon by logic and analog circuits, for example employing a neural network, such that the movement of the ball is converted into X and Y components for movement of the cursor on the video display. Except for the mechanical aspects of the hall itself, the elec~ronic trackball of the present invention is entirely optical; when the ball is included, 15 the trackball of the present invention may reasonably be thought of as an optomechanical pointing device. It will be apparent that the techniques used .
herein may readily be adapted to other types of pointing devices, particularly electronic mice.
It is therefore one object of the present invention to provide an l 20 optomechanical pointing device not requiring shaft encoders.
;.f It is another objec~ of the present invention to provide an electronic ~ .
`l pointing device using analog or similar circuits, for example a neural network, to :
`lj~ convert rotation of a ball into cursor control signals.
:i! .
It is yet another object of the present invention to provide an electronic ,1 25 pointing device employing a random pattern of randomly sized and shaped spots on a ball in combination with an op~ical array to provide signals for generatingcursor control signals.
It is a still further object of the present invention to provide an electronic pointing device using a diffused light source in combination with an optical 30 element and a photosensitive array to provide signals for generating cursor , .
. . ~ .; .,, ! , , control signals.
These and other objects of the present invention may be better appreciated from the following detailed description of the invention, taken in combination with the accompanying Figures.
THE FIGURES
Figure 1 shows in exploded view an electronic trackball according to the present invention.
Figure 2A shows a generalized cross-sectional side view of ~he ball cage and ball of the presen~ invention.
Figure 2B shows a more detailed cross-sectional side view of the ball cage and ball of the present invention, including light paths.
Figure 3 shows in schernatic block diagram form the circuitry of a single pixel according to the present invention.
Figure 4 shows an array of four of the block diagrams of Figure 3, thus 15 showing the interrelationship between the pixels.
Figure 5A shows in schematic block diagram form the circuitry used for cursor control in the present invention.
Figure 5B shows in schematic block diagram form the signal conditioning circuitry of Figure 5A.
Figures 6A-6B show in flow diagram form the operation of the firmware ~;
which controls the logic of Figures 3 and 4.
I:)ETAILED~DESCRIPTION OF THE INVENTION
Referring first to Figure 1, an electronic pointing device, and in particular an electronic trackball 10, is shown in exploded perspective view. The trackball10 Includes an upper housing 20, a printed circuit board 30 close to which a ball cage 40 is juxtaposed, a lower housing 50, a ball 60, and a pluralit~ of buttons70 located on the upper housing 20 which actuate associated switches 80. The switches 80 are normally located on the circuit board 30. The ball cage 40 typically is mounted on the PCB 30, although in some instances it can be 30 mounted on a housing member. -- 2~77'~3 The printed circuit board 30 includes circuitry for operating on the signals provided by a sensor and associated logic (see Figures 3 and 4). Thus, movement o~ the ball in the trackball is in turn converted into digital signals which control the cursor on the screen of an associated personal computer, 5 terminal or workstation. In serial port pointing devices, the printed circuit board will typically include a microprocessor and related driver circuitry for sending and receiving standard serial communications, such as RS232 signals. Alternatively, the signals provided by the mouse will be compatible with PSI2 ports.
Referring next to Figure 2A, a ball cage 40 (shown in cross-section) and 10 a ball 60 according to the present invention are shown. As will be immediately appreciated by those skilled in the art, the combination nf ball 60 and ball cage 40 are markedly different from the prior art and form a key aspect of the present invention. In particular, the ball 60 can be seen to have a plurality of randomly shaped markings thereon in a color which contrasts with the background, such 15 that the overall effect is a randomly speckled ball. A typical ball may, for example, have black spots on an otherwise white ball, although many other coior combinations would be acceptable. The randomly shaped markings or spots are randomly arranged on the ball, although the markings are within a predetermined g suitable range. Thus, the markings typicall~ with range in size from 0.5 mm2 to 20 0.7 mm2, with a density of about one spot per square millimeter. In an exemplary embodiment, the ball may be on the order of 10 mm in diameter, although the diameter could range from 5 mm to larger than 20 mm. At present, it appears that the size of spot is relatively independent of the diameter , of the ball.
In addition, and as can be better appreciated from Figure 2B which shows a more detailed cross-sectionai view of the ball and ball cage taken along the centerlines thereof, the ball cage 40 includes at least one (Figure 2A~, and in :I some cases two or more (Figure 2E~), light sources 200 such as an LED, which produces light that impinges on the ball 60. The LED or other light source may 30 include an integrally formed lens. The light from the light sources 200 is J
, ,'', ,, - , ., ~ .. . ,. , ., , - . , . .. ` . .. . , -, ~ , . .. . .
. . . . ,' . ', ` ` , ' ' ~ " ~, ` . .
, . ' ', , ~: , , . :, ., `, ,i ` ':' . ' ' . ' ' . ' - 2~f~f7~3 preferably reflected off the inside surface 205 of the outer wall 210 of the ball cage 40, and is partially blocked by an interior wall 215 from striking directly the ball 60. The inside surface 205 may be, for example, the inside surface of a sphere. In this manner the light from the light sources 200 is distributed 5 relatively uniformly across a predetermined portion of the ball, whiie at the same time the light is caused to strike the ball obliquely, providing diffuse illumination of the ball.
The ball is maintained in a rotatable position by a plurality of supports ; 150, which may for example be rollers of a conventional type, or may be 10 jeweled bearing surfaces of the type disclosed in U.S. Patent Application S.N.
07/820,500, entitled Bearing Support for a Trackball, and filed 1/14/92 and : assigned to the same assignee as the present invention, incorporated herein by reference. Although only one such roller is shown in Figure 2B because of the view shown, a plurality, typically three, such rollers are provided to ensure 15 uniform support for the ball 60.
A removable cover may be provided in some embodiments to permit readily :`, insertion and removal of the ball 60; while such is removable cover is at present believed preferable, to permit cleaning of the ball and the inside of the pointing device, in at least some embodiments such a removable cover is unnecessary.
A photodetector array 220 is locatecl centrally between the light sources ~ 200 in a chamber 222 formed within a housing 22~. A portion of the relatively `f diffuse light which strikes the ball 60 is reflected into the array 220 through an , optical element 225. The result is that an image of at least a portion of the illuminated surface of the ball is formed on the array 220. In an important ?
25 distinction from prior ar~ optomechanical mice, the ball cage includes no shaft encoders, nor does it include the matched light source and photodetector typical ~ `~
of prior optomechanical mice. The optical element 225 is typically fixed in :
location between the housing 224 and an aperture housing 228 of which the l interior wall 216 forms the outside surface. An aperture 229 is provided in the -~
., 30 aperture housing 228 to permit the diffuse light reflected off the ball 60 to reach ~ .
,' i . ' ' -, , . .' ' . : ' ', i . ' . ' ,, i , ~, , , , . ~ . ' .", " , , ` , , , ' : , . , : f ! : `
2 1 ~ 3 the optical element 225, and then the photosensitive array 220.
The photodetector array 220 will typically range in cverall size from 2x2 mm to 7x7 mm, with each detector segment, or pixel, 220A-220n having dimensions in the range of 100x100 ,um to 200x200 ~m (where the exact 5 number is determined by the size of the overall array and the size of the individual detector). As will be discussed hereinafter in connection with Figures
3 and 4, in at least the preferred embodiment of the invention, each pixel includes a photodetector element and associated circuitry for conditioning the -output of the photodetector element into a signal useable external to the array.10 The diameter of the ball area used for detection corresponds to the diagonal of the square detector field, and thus determines the maximum field angle to be covered by the optics. In an exemplary embodiment, a typical ball area diameter viewable for detection may be on the order of 2.8 mm, which represents a square field of 2x2 mm2, and the array 220 may comprise a matrix of 8x8 15 detectors 220A-n. Although a square array of detectors has been implemented (substantially as shown in Figure 5A~, in at least some embodiments it may be preferable to arrange the individual detectors in a circle or hexagon. Dependingupon the application, the detectors may be arranged across the area of the eiement, or may be positioned around the circumference, such as the 20 sircumference of a circle.
In addition, it is important to maximize the amount of diffuse light energy reflec~ed off the ball 60 and reaching the detector array 220, and in particulareach particular detector element 220A-n. Although a wide range of ~ ~-' magnifications is workable, a magnification of -1 is preferable to minimize the ~
25 effects of mechanical tolerances. In addition, because of the small size, `-expense, and required modulation transfer, conventional lenses are unsatisfactory in at least the presently preferred embodiments. Instead, ~ ~-diffractive optical elements (DOE's) are preferable, although applica~ions exist i where other optical elements would be acceptable, such as physically larger 30 implernentations. ;
': ' :
,i , : . : ' ! .
'', ' ' ''' ". ' ' .'; .''. ''' ' ' ' ' "' .' ' ' ' ~' ' " " . ' ' ~ . . '' '"' ' ''" '" ' ' ' ' ': ' ` ' 2~7l~3 P-1589 In particular, DOE's can provide the required light transfer while at the same time being fabricated by means of relatively conventional lithographic and etching methods known from microelectronics fabrication which fi~ into the normal manufacturing processes for fabricating the detector array itself, thus 5 keeping additional COStS to a minimum.
Additionally, aspherical functionality can be readily provided in a DOE at virtually no additional expense, and provides desirable light transfer capabilities although it does involve a more complicated design effort. In addition, different optical functions may be included in the same DOE, so that a portion of the DOE
;10 substrate can be fabricated with a first microstructure which directs the illumination cone from a light source at the appropriate incidence angle onto the ball surface, and a second microstructure which acts as an aspheric lens for pattern imaging, so that the image of the ball illuminated by the first `~microstructure is properly focused on the array 220 by the second 15 microstructure. Although such multiple DOE structures are attractive for at least some embodimen~s of the present invention, in the generally preferred arrangement a DOE is used only for imaging the illuminated area of the speckled ball 60 onto the array 220.
In such an exemplary embodiment, the focal length of the DOE is on the 20 order of 2.4 mm where the total ball-to-detector array distance is on the order of 10 mm. The aperture diameter is on the order of 1 - 1.5 mm, or a numerical .. . . .
1.aperture (NA) on the order of 0.1. In addition, because the magnification is -1, ~;the DOE is located midway between the ball 60 and the detector array 220.
,As with other optomechanical mice, the motion to be detected 25 corresponds either to two translations (x,y), or one translation and one rotation about the center of the image. Additionally, for power consumption reasons, the LED's are pulsed in the manner described in U.S. Patent Application No.
07/717,187, filed June 18, 1991, and entitled Low Power Optoelectronic Device and Method, meaning that the photodetectors 22QA-N can only detect .30 a series of "snapshots" of the ball. Finally, the output of the detector array 220 ., - . .
,, .'''~
., .' ~"' ;.
- 2~7~
preferably is compatible with a microprocessor input so that the signal can be readily converted to control of a cursor. For example, the output could conform to the type of output provided by designs employing optical encoders, such as described in U.S. Patent No. 5,008,528, and would result in a two-bit 5 quadrature code of about 15 impulsions per millimeter of ball displacement.
The circuitry for operating on the output signals received from the detector array 220 can be better understood by reference to Figure 3, aithough Figure 3 shows photodetector and logic comprising only a single pixel. Similar logic exists for each pixel 200A-n in the detector array (a four pixel array is 10 shown in Figure 4), with the end result being a collecti\/e computation for the array as a whole. In an exemplary embodiment, the detector array 220 and the associaled logic arrays of the type shown in Figure 3 are all implemented on a single die, and in particular the individual detector and associated circuit elements formed on the same pixel.
As a general explanation of the operation of the circuits of Figures 3 and 4, the basic function of the algorithm is the correlation of spatial intensity ~ifferences (referred to as "edges") and temporal intensity changes ("tics").
Referring particularly to Figure 3, a photode~ector 220A such as a reverse biased photodiode generates a current proportional to the intensity of the light reflected ` 20 off the ball onto the detector 220A. The current is compared with a threshold by a threshold circuit 300, to decide whether the pixel is white or black. The threshold can be adjusted differently for different sensor zones, such as to compensate for uneven ligh~ing; such adjustment can be made automatically or otherwise, depending on application~ Alternatively, a differential circuit, based 25 on the signals from neighboring cells, can be used to reduce sensitivity to variations in lighting intensity, ball speckle density, and so on. :
The output of the threshold circuit 300 is then supplied to a first memory 305, which stores the state of the threshold circuit and allows the LED to be switched off without losing the illumination value of the image. The first 30 memory 305, which may be either a flip-flop or a latch, thus may be thought of .. ~ . ` . .. ... . .. . . . ..
.: . ~ .:, .: : .: :- ; : , ; : ~ .
: ~ , :
i . . .. - . . . .
2~977~3 11 P-1 ~89 as a one-bit sample and hold circuit. More particularly, on the appropriate phase of the clock signal, tor example when the clock signal is high, the output of the threshold circuit 300 is copied into the mernory, and that value is frozen into memory when the clock signal goes low. A second memory 31(), also typically 5 a flip-flop or latch, stores the old state of the memory 305 in a similar manner, and thus the output of the second memory 310 is equal to the output of the firstmemory 305 at the end of the previous clock cycle. The clock cycle is, in an exemplary embodiment, synchronized with the LED pulse, with the active edge being at the end of the light pulse. The old state of the memory is supplied to 10 the pixels below and on the left through a "CURRENT STATE" bus 306.
The temporal intensity change ("tic") of a pixel can thus be determine!d by comparing the states of the first and second memories 305 and 310, respectively. This comparison is performed by comparator logic 315. In addition, the output of the first memory 305 is provided to two additional 15 comparators 320 and 325 to detect edges on the top and at the right, respectively. The comparator 320 also receives information on a line 321 about the current state of the pixel above in the array. The comparator 325 receives information from the pixel on the right through a line 326, or "EDGE ON RIGHT"
bus, and supplies informa~ion to the pixel on the righ~ through a line 327. The 20 cornparators 315, 320 and 325 may each be implemented as Exclusive-Or circuits fot simplicity.
Edges at the left and bottom are communicated to this pixel by the pixels ', at the left and on the bottom, respectively, as can be better appreciated from the portion of the array shown in Figure 4. More specifically, as with reference25 to Figure 3, the corresponding pixel circuits will inject a current on an associated wire if a tic and a corresponding edge is detected with the result being that : ;;.-. .
edges at the left and bottom are deducted from the values of the corresponding neighboring pixels. Similarly, the detection of a horizontal or vertical edge is,;.
signaled by injecting a current on the corresponding wire. Thus, lef~ correlator 30 logic circuit 330 receives information on a line 335 from what may be thought .
, ,'~
. .
~,: . ; : . .. . . . .. . . .. . . .
2 ~ o 7 r) ~ 3 of as a "MOVE LEFT" bus, and also receives information from the adjacent pixel on a line 336, which may be thought of as an "EDGE ON LEFT" bus. Down correlator logic 340 receives information on a line 345 from a "MOVE DOWN"
bus, and also from a line 341, supplied from the pixel below as an "EDGE ON
5 BOrrOM" bus. In contrast, up correlator logic 350 receives one input from the circuit 330 and a second input on a line 351, or "EDGE ON TOP" bus, and provides a signal on a line 355, or a "MOVE UP" bus; right correlator logic 360 provides a signal on a "MOVE RIGHT" bus 365. The correlator circuits may be thought of simply as AND gates.
In addition, a ,oair of switched current sources, 370 and 375, provide a calibrated current injection onto respective busses 380 and 385, when edges are detected; the current source 370 receives its sole input from the EDGE ON TOP
bus 351. Thus, when a horizontal edge is detected moving vertically, the current source 370 provides a calibrated current injection on line 380; simiiarly, 15 when a vertical edge is detected moving horizontally, the current source 375 provides a calibrated current injection on line 385. The lines 321, 326, 336 and341 are all tied to false logic levels at the edges of the array.
;~ Referring again to Figure 4, the implemen~ation of a four pixel array can .~, be better appreciated, and in particular the manner in which the correlator ;, 20 circuits 330, 340, 350 and 360 tie into adjacent pixel logic can be better understood. Similarly, the manner in which the vertical and horizontal edge de~ectors 370 and 375 cooperate with adjacen~ pixels can be better appreciated.
In an exemplary embodiment, an 8x8 matrix of pixels and associated logic has '! been found suitable, although many other array sizes will be acceptable in 25 particular applications. In addition, the 8x8 array is, in an exemplary . embodiment, comprised of four 4x4 quadrants. Each quadrant is provided with its own outputs for the four directions of displacement, to permit calculation of displacement to be performed. It will be appreciated that, basically, six bus lines are provided, with the output of each pixel tied to one output line. In essence,30 the function of the circuits of Figures 3 and 4 is that each pixel 200A-n can .~
2:~0~743 either drive a preset amount of current onto the associated bus ("ON"), or do nothing. By the use of very precise current drivers, it is then possible to sum the respective currents on each of the busses and determine the number of pixels that are on the bus. The six busses give six numbers, and the six numbers are 5 combined to compute X and Y displacements. In a presently preferred embodiment, X and Y displacements can be calculated as:
dX = I#right - #left]/#edges(Horizontal)detected, while dY = [#right - #left]/#edgeslVertical) detected.
10 The difference between the right and left moves (the dividend in the above fractions) is easily implemented with a differential amplifier using inverting and non-inverting inputs, as will be better appreciated in connection with Figure 5B, discussed below.
Referring next to Figure 5A, a generalized schematic block diagram is 15 shown in which the array 220 is connected to the remaining circuitry necessary for operation as a trackball. The array 220 is connected through signal conditioning logic 505A-B to A/D converters 510 and 520 to a microprocessor 530. The A/D converter 510 supplies lines XO, X1 and X2, as well as the sign of the X movement, to the microprocessor on lines 540; likewise, A/D converter 20 520 supplies lines YO, Y1 and Y2, as well as the sign of the Y movement, to the microprocessor on lines 550. Switches 80 supply additional control inputs to the microprocessor 530. The microprocessor provides a clock signal on line 535 to the array and associated circuits, indicated generally at 545, which may for example be implemented on a single chip. The microprocessor 530 then 25 communicates bidirectionally with line interface logic 560, and the output of the line interface logic 560 provides cursor control signals in conventional form toa host system, not shown, over an output bus 570. It will be appreciated by those skilled in the art that, in the embodiment detailed herein, the microprocessor 530 is used primarily for establishing the protocol for 30 communications with the host, although it does also control LED pulsing and ;. ,., ~ ,.
, ~
2:~77~
generation of interrupts.
With reference next to Figure 5B, the signal conditioning circuits i505A-B
shown in Figure 5 can be better understood. For convenience, only the X
(horizontal move) signal conditioning circuit is shown in detail; the corresponding 5 Y (vertical move) circuit is functionally identical. As previously noted, the curnulative current signals from the various pixels are summed on their respective busses. These sums of such currents from the "move left" and "move right" busses are subtracted in summing circuit 570, followed by determination of the absolute value in an absolute value circuit 572, after which 10 the absolute value is provided to the A/D converter 510. In addition, sign of the move is determined by providing the output of the summing circuit 570 to a comparator 574. Finally, the sum of the edge currents is compared through a series of comparators 576, the outputs of which are fed to combinational logic 578, and thence provided as X0-X2 outputs. It should also be noted that the 15 A/D conversion of circuits 510 and 520 can be readily implemented using a flash .~
A/D converter. Division can be similarly implemented with a flash A/D converter by using a reference voltage proportional to the bus current for the horizontal (or vertical) edges. Use of current sources for such circuitry provides desirable i simplicity and compactness.
-`, 20 Referring next to Figures 6A and 6B, the operating program which controls the mictoprocessor 530 can be better appreciated. Referring first to ;1 Figure 6A, the operation of the system of Figures 1-5 begins at step 600 b~
,~ resetting and initializing the logic, and enabling interrupts. A check is made at step 610 to determine whether the sleep mode has been enabled.
If sleep mode is enabled, reflecting no recent movement of the ball of the ,. ... . .
trackball, the logic of Figures 3-5 sleeps at step 620 until the timeout or the occurrence of bus activity, whichever occurs first. The occurrence of sleep modes is discussed in U.S. Patent Application Serial No. 07/672,090, filed ~, March 19, 1991 and assigned to the same assignee as the present invention, 30 the relevant portions of which are incorporated herein by reference. If sleep : i .
2 ~ ~77~3 mode is not enabled, or if a timeout or bus activity has occurred, the switches 80 on the trackball are read at step 630. After the switches are read, a check is made at step 640 to see whether the ball is moving. If not, sleep mode is enabled at step 650.
If the ball is moving, the total displacement is computed at step 660.
Following computation of the displacement, the data is provided as an output to the host system at step 670, and the process loops back to step 610.
Referring next to Figure 6B, the interrupt service routine of the present - invention can be better understood. The interrupt service routine is accessed at 10 step 700 whenever a timer function from the microprocessor generates an interrupt, although other methods of generating an interrupt at regular intervals are also acceptable in at least some embodiments. The system responds by acknowledging the interrupt at step 710, followed at step 720 by pulsing the ~` LEDs and sampling the senisor outpu~s for X and Y. At step 730 the time before 15 a next sample is to be taken is calculated. The amount of time can vary, depending upon whether the displacement of the ball since the last sample is large or small; for example, a sampling rate of once per millisecond is typical during norrnal movement, with less frequent sampling when the ball is stopped.
, If the displacement is small, the time between successive samples is increased;
.~ 20 if the displacement is large, the time between samples is decreased. In a presently preferred implementation, a "small" displacement represents a movement on the order of 1/400'h of an inch or less; a "large" displacement will'i ~ range between 5/800th and 7/800th of an inch. A~er computing the time until the next sample, the system returns from the interrupt at step 740.
Having fully described a preferred embodiment of the invention and various alternatives, those skilled in the art will recognize, given the teachings ~ herein, that numerous alternatives and equivalents exist which do not depart ,j from the invention. !t is therefore intended that the invention not be limited by the foregoing description, but only by the appended clairns.
*******
,.
.
'.'.':
,,:"' ,,''',' ,',,"' ~', ' .'',' ",,' ' ',. ' "' ,' ' ' '.' " ' '', ". ' '
In addition, it is important to maximize the amount of diffuse light energy reflec~ed off the ball 60 and reaching the detector array 220, and in particulareach particular detector element 220A-n. Although a wide range of ~ ~-' magnifications is workable, a magnification of -1 is preferable to minimize the ~
25 effects of mechanical tolerances. In addition, because of the small size, `-expense, and required modulation transfer, conventional lenses are unsatisfactory in at least the presently preferred embodiments. Instead, ~ ~-diffractive optical elements (DOE's) are preferable, although applica~ions exist i where other optical elements would be acceptable, such as physically larger 30 implernentations. ;
': ' :
,i , : . : ' ! .
'', ' ' ''' ". ' ' .'; .''. ''' ' ' ' ' "' .' ' ' ' ~' ' " " . ' ' ~ . . '' '"' ' ''" '" ' ' ' ' ': ' ` ' 2~7l~3 P-1589 In particular, DOE's can provide the required light transfer while at the same time being fabricated by means of relatively conventional lithographic and etching methods known from microelectronics fabrication which fi~ into the normal manufacturing processes for fabricating the detector array itself, thus 5 keeping additional COStS to a minimum.
Additionally, aspherical functionality can be readily provided in a DOE at virtually no additional expense, and provides desirable light transfer capabilities although it does involve a more complicated design effort. In addition, different optical functions may be included in the same DOE, so that a portion of the DOE
;10 substrate can be fabricated with a first microstructure which directs the illumination cone from a light source at the appropriate incidence angle onto the ball surface, and a second microstructure which acts as an aspheric lens for pattern imaging, so that the image of the ball illuminated by the first `~microstructure is properly focused on the array 220 by the second 15 microstructure. Although such multiple DOE structures are attractive for at least some embodimen~s of the present invention, in the generally preferred arrangement a DOE is used only for imaging the illuminated area of the speckled ball 60 onto the array 220.
In such an exemplary embodiment, the focal length of the DOE is on the 20 order of 2.4 mm where the total ball-to-detector array distance is on the order of 10 mm. The aperture diameter is on the order of 1 - 1.5 mm, or a numerical .. . . .
1.aperture (NA) on the order of 0.1. In addition, because the magnification is -1, ~;the DOE is located midway between the ball 60 and the detector array 220.
,As with other optomechanical mice, the motion to be detected 25 corresponds either to two translations (x,y), or one translation and one rotation about the center of the image. Additionally, for power consumption reasons, the LED's are pulsed in the manner described in U.S. Patent Application No.
07/717,187, filed June 18, 1991, and entitled Low Power Optoelectronic Device and Method, meaning that the photodetectors 22QA-N can only detect .30 a series of "snapshots" of the ball. Finally, the output of the detector array 220 ., - . .
,, .'''~
., .' ~"' ;.
- 2~7~
preferably is compatible with a microprocessor input so that the signal can be readily converted to control of a cursor. For example, the output could conform to the type of output provided by designs employing optical encoders, such as described in U.S. Patent No. 5,008,528, and would result in a two-bit 5 quadrature code of about 15 impulsions per millimeter of ball displacement.
The circuitry for operating on the output signals received from the detector array 220 can be better understood by reference to Figure 3, aithough Figure 3 shows photodetector and logic comprising only a single pixel. Similar logic exists for each pixel 200A-n in the detector array (a four pixel array is 10 shown in Figure 4), with the end result being a collecti\/e computation for the array as a whole. In an exemplary embodiment, the detector array 220 and the associaled logic arrays of the type shown in Figure 3 are all implemented on a single die, and in particular the individual detector and associated circuit elements formed on the same pixel.
As a general explanation of the operation of the circuits of Figures 3 and 4, the basic function of the algorithm is the correlation of spatial intensity ~ifferences (referred to as "edges") and temporal intensity changes ("tics").
Referring particularly to Figure 3, a photode~ector 220A such as a reverse biased photodiode generates a current proportional to the intensity of the light reflected ` 20 off the ball onto the detector 220A. The current is compared with a threshold by a threshold circuit 300, to decide whether the pixel is white or black. The threshold can be adjusted differently for different sensor zones, such as to compensate for uneven ligh~ing; such adjustment can be made automatically or otherwise, depending on application~ Alternatively, a differential circuit, based 25 on the signals from neighboring cells, can be used to reduce sensitivity to variations in lighting intensity, ball speckle density, and so on. :
The output of the threshold circuit 300 is then supplied to a first memory 305, which stores the state of the threshold circuit and allows the LED to be switched off without losing the illumination value of the image. The first 30 memory 305, which may be either a flip-flop or a latch, thus may be thought of .. ~ . ` . .. ... . .. . . . ..
.: . ~ .:, .: : .: :- ; : , ; : ~ .
: ~ , :
i . . .. - . . . .
2~977~3 11 P-1 ~89 as a one-bit sample and hold circuit. More particularly, on the appropriate phase of the clock signal, tor example when the clock signal is high, the output of the threshold circuit 300 is copied into the mernory, and that value is frozen into memory when the clock signal goes low. A second memory 31(), also typically 5 a flip-flop or latch, stores the old state of the memory 305 in a similar manner, and thus the output of the second memory 310 is equal to the output of the firstmemory 305 at the end of the previous clock cycle. The clock cycle is, in an exemplary embodiment, synchronized with the LED pulse, with the active edge being at the end of the light pulse. The old state of the memory is supplied to 10 the pixels below and on the left through a "CURRENT STATE" bus 306.
The temporal intensity change ("tic") of a pixel can thus be determine!d by comparing the states of the first and second memories 305 and 310, respectively. This comparison is performed by comparator logic 315. In addition, the output of the first memory 305 is provided to two additional 15 comparators 320 and 325 to detect edges on the top and at the right, respectively. The comparator 320 also receives information on a line 321 about the current state of the pixel above in the array. The comparator 325 receives information from the pixel on the right through a line 326, or "EDGE ON RIGHT"
bus, and supplies informa~ion to the pixel on the righ~ through a line 327. The 20 cornparators 315, 320 and 325 may each be implemented as Exclusive-Or circuits fot simplicity.
Edges at the left and bottom are communicated to this pixel by the pixels ', at the left and on the bottom, respectively, as can be better appreciated from the portion of the array shown in Figure 4. More specifically, as with reference25 to Figure 3, the corresponding pixel circuits will inject a current on an associated wire if a tic and a corresponding edge is detected with the result being that : ;;.-. .
edges at the left and bottom are deducted from the values of the corresponding neighboring pixels. Similarly, the detection of a horizontal or vertical edge is,;.
signaled by injecting a current on the corresponding wire. Thus, lef~ correlator 30 logic circuit 330 receives information on a line 335 from what may be thought .
, ,'~
. .
~,: . ; : . .. . . . .. . . .. . . .
2 ~ o 7 r) ~ 3 of as a "MOVE LEFT" bus, and also receives information from the adjacent pixel on a line 336, which may be thought of as an "EDGE ON LEFT" bus. Down correlator logic 340 receives information on a line 345 from a "MOVE DOWN"
bus, and also from a line 341, supplied from the pixel below as an "EDGE ON
5 BOrrOM" bus. In contrast, up correlator logic 350 receives one input from the circuit 330 and a second input on a line 351, or "EDGE ON TOP" bus, and provides a signal on a line 355, or a "MOVE UP" bus; right correlator logic 360 provides a signal on a "MOVE RIGHT" bus 365. The correlator circuits may be thought of simply as AND gates.
In addition, a ,oair of switched current sources, 370 and 375, provide a calibrated current injection onto respective busses 380 and 385, when edges are detected; the current source 370 receives its sole input from the EDGE ON TOP
bus 351. Thus, when a horizontal edge is detected moving vertically, the current source 370 provides a calibrated current injection on line 380; simiiarly, 15 when a vertical edge is detected moving horizontally, the current source 375 provides a calibrated current injection on line 385. The lines 321, 326, 336 and341 are all tied to false logic levels at the edges of the array.
;~ Referring again to Figure 4, the implemen~ation of a four pixel array can .~, be better appreciated, and in particular the manner in which the correlator ;, 20 circuits 330, 340, 350 and 360 tie into adjacent pixel logic can be better understood. Similarly, the manner in which the vertical and horizontal edge de~ectors 370 and 375 cooperate with adjacen~ pixels can be better appreciated.
In an exemplary embodiment, an 8x8 matrix of pixels and associated logic has '! been found suitable, although many other array sizes will be acceptable in 25 particular applications. In addition, the 8x8 array is, in an exemplary . embodiment, comprised of four 4x4 quadrants. Each quadrant is provided with its own outputs for the four directions of displacement, to permit calculation of displacement to be performed. It will be appreciated that, basically, six bus lines are provided, with the output of each pixel tied to one output line. In essence,30 the function of the circuits of Figures 3 and 4 is that each pixel 200A-n can .~
2:~0~743 either drive a preset amount of current onto the associated bus ("ON"), or do nothing. By the use of very precise current drivers, it is then possible to sum the respective currents on each of the busses and determine the number of pixels that are on the bus. The six busses give six numbers, and the six numbers are 5 combined to compute X and Y displacements. In a presently preferred embodiment, X and Y displacements can be calculated as:
dX = I#right - #left]/#edges(Horizontal)detected, while dY = [#right - #left]/#edgeslVertical) detected.
10 The difference between the right and left moves (the dividend in the above fractions) is easily implemented with a differential amplifier using inverting and non-inverting inputs, as will be better appreciated in connection with Figure 5B, discussed below.
Referring next to Figure 5A, a generalized schematic block diagram is 15 shown in which the array 220 is connected to the remaining circuitry necessary for operation as a trackball. The array 220 is connected through signal conditioning logic 505A-B to A/D converters 510 and 520 to a microprocessor 530. The A/D converter 510 supplies lines XO, X1 and X2, as well as the sign of the X movement, to the microprocessor on lines 540; likewise, A/D converter 20 520 supplies lines YO, Y1 and Y2, as well as the sign of the Y movement, to the microprocessor on lines 550. Switches 80 supply additional control inputs to the microprocessor 530. The microprocessor provides a clock signal on line 535 to the array and associated circuits, indicated generally at 545, which may for example be implemented on a single chip. The microprocessor 530 then 25 communicates bidirectionally with line interface logic 560, and the output of the line interface logic 560 provides cursor control signals in conventional form toa host system, not shown, over an output bus 570. It will be appreciated by those skilled in the art that, in the embodiment detailed herein, the microprocessor 530 is used primarily for establishing the protocol for 30 communications with the host, although it does also control LED pulsing and ;. ,., ~ ,.
, ~
2:~77~
generation of interrupts.
With reference next to Figure 5B, the signal conditioning circuits i505A-B
shown in Figure 5 can be better understood. For convenience, only the X
(horizontal move) signal conditioning circuit is shown in detail; the corresponding 5 Y (vertical move) circuit is functionally identical. As previously noted, the curnulative current signals from the various pixels are summed on their respective busses. These sums of such currents from the "move left" and "move right" busses are subtracted in summing circuit 570, followed by determination of the absolute value in an absolute value circuit 572, after which 10 the absolute value is provided to the A/D converter 510. In addition, sign of the move is determined by providing the output of the summing circuit 570 to a comparator 574. Finally, the sum of the edge currents is compared through a series of comparators 576, the outputs of which are fed to combinational logic 578, and thence provided as X0-X2 outputs. It should also be noted that the 15 A/D conversion of circuits 510 and 520 can be readily implemented using a flash .~
A/D converter. Division can be similarly implemented with a flash A/D converter by using a reference voltage proportional to the bus current for the horizontal (or vertical) edges. Use of current sources for such circuitry provides desirable i simplicity and compactness.
-`, 20 Referring next to Figures 6A and 6B, the operating program which controls the mictoprocessor 530 can be better appreciated. Referring first to ;1 Figure 6A, the operation of the system of Figures 1-5 begins at step 600 b~
,~ resetting and initializing the logic, and enabling interrupts. A check is made at step 610 to determine whether the sleep mode has been enabled.
If sleep mode is enabled, reflecting no recent movement of the ball of the ,. ... . .
trackball, the logic of Figures 3-5 sleeps at step 620 until the timeout or the occurrence of bus activity, whichever occurs first. The occurrence of sleep modes is discussed in U.S. Patent Application Serial No. 07/672,090, filed ~, March 19, 1991 and assigned to the same assignee as the present invention, 30 the relevant portions of which are incorporated herein by reference. If sleep : i .
2 ~ ~77~3 mode is not enabled, or if a timeout or bus activity has occurred, the switches 80 on the trackball are read at step 630. After the switches are read, a check is made at step 640 to see whether the ball is moving. If not, sleep mode is enabled at step 650.
If the ball is moving, the total displacement is computed at step 660.
Following computation of the displacement, the data is provided as an output to the host system at step 670, and the process loops back to step 610.
Referring next to Figure 6B, the interrupt service routine of the present - invention can be better understood. The interrupt service routine is accessed at 10 step 700 whenever a timer function from the microprocessor generates an interrupt, although other methods of generating an interrupt at regular intervals are also acceptable in at least some embodiments. The system responds by acknowledging the interrupt at step 710, followed at step 720 by pulsing the ~` LEDs and sampling the senisor outpu~s for X and Y. At step 730 the time before 15 a next sample is to be taken is calculated. The amount of time can vary, depending upon whether the displacement of the ball since the last sample is large or small; for example, a sampling rate of once per millisecond is typical during norrnal movement, with less frequent sampling when the ball is stopped.
, If the displacement is small, the time between successive samples is increased;
.~ 20 if the displacement is large, the time between samples is decreased. In a presently preferred implementation, a "small" displacement represents a movement on the order of 1/400'h of an inch or less; a "large" displacement will'i ~ range between 5/800th and 7/800th of an inch. A~er computing the time until the next sample, the system returns from the interrupt at step 740.
Having fully described a preferred embodiment of the invention and various alternatives, those skilled in the art will recognize, given the teachings ~ herein, that numerous alternatives and equivalents exist which do not depart ,j from the invention. !t is therefore intended that the invention not be limited by the foregoing description, but only by the appended clairns.
*******
,.
.
'.'.':
,,:"' ,,''',' ,',,"' ~', ' .'',' ",,' ' ',. ' "' ,' ' ' '.' " ' '', ". ' '
Claims
1. A cursor pointing device for controlling the position of a cursor on a display for a personal computer or workstation comprising a ball of a first color having speckles thereon of a color contrasting to the first color and which are randomly distributed on the ball, light source means for flooding a portion of the ball with diffuse light, sensor means responsive to diffuse light reflected from the speckled ball and impinging thereon for creating an output, optical means for creating an image of an illuminated portion of the ball on the sensor means, processing means responsive to the output from the sensor means for generating a cursor control output.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US07/956,907 US5288993A (en) | 1992-10-05 | 1992-10-05 | Cursor pointing device utilizing a photodetector array with target ball having randomly distributed speckles |
US07/956,907 | 1992-10-05 |
Publications (1)
Publication Number | Publication Date |
---|---|
CA2107743A1 true CA2107743A1 (en) | 1994-04-06 |
Family
ID=25498844
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA002107743A Abandoned CA2107743A1 (en) | 1992-10-05 | 1993-10-05 | Pointing device utilizing a photodetector array |
Country Status (11)
Country | Link |
---|---|
US (1) | US5288993A (en) |
JP (1) | JPH06195168A (en) |
KR (1) | KR940009817A (en) |
AU (1) | AU4881993A (en) |
CA (1) | CA2107743A1 (en) |
DE (1) | DE4333992B4 (en) |
ES (1) | ES2079288B1 (en) |
FR (1) | FR2696566A1 (en) |
GB (1) | GB2271847B (en) |
IT (1) | IT1262566B (en) |
NL (1) | NL9301709A (en) |
Families Citing this family (124)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6084574A (en) * | 1992-10-05 | 2000-07-04 | Logitech, Inc. | Compact cursor pointing device utilizing photodetector array |
US6031218A (en) * | 1992-10-05 | 2000-02-29 | Logitech, Inc. | System and method for generating band-limited quasi-sinusoidal signals |
US5703356A (en) * | 1992-10-05 | 1997-12-30 | Logitech, Inc. | Pointing device utilizing a photodetector array |
US5729009A (en) * | 1992-10-05 | 1998-03-17 | Logitech, Inc. | Method for generating quasi-sinusoidal signals |
US5907152A (en) * | 1992-10-05 | 1999-05-25 | Logitech, Inc. | Pointing device utilizing a photodetector array |
US5854482A (en) * | 1992-10-05 | 1998-12-29 | Logitech, Inc. | Pointing device utilizing a photodector array |
KR940022342A (en) * | 1993-03-19 | 1994-10-20 | 탁승호 | Compact mouse structure |
US5557440A (en) * | 1994-01-05 | 1996-09-17 | Microsoft Corporation | Noise-insensitive optoencoding techniques with compensation for device variations |
US6172665B1 (en) * | 1994-11-14 | 2001-01-09 | Edward T. Bullister | Mouse and trackball with optimal measurement optics |
US5854623A (en) * | 1994-11-14 | 1998-12-29 | Bullister; Edward T. | Two- and three-dimensional trackball with enhanced measurement optics |
US5560119A (en) * | 1994-12-07 | 1996-10-01 | Lebreton Guy C | Opto-mechanical instrument to accurately measure linear distances on flat or curved surfaces with incrementing |
US5771037A (en) * | 1995-07-24 | 1998-06-23 | Altra | Computer display cursor controller |
US5620371A (en) * | 1995-11-08 | 1997-04-15 | Lucent Technologies Inc. | Computer trackball |
US5760764A (en) * | 1995-12-13 | 1998-06-02 | Altra | Computer display cursor controller with serial interface |
CA2197362C (en) | 1996-02-26 | 2003-12-23 | Donald E. Weder | Flat sleeve convertible to a decorative container |
ATE202855T1 (en) | 1997-02-12 | 2001-07-15 | Kanitech As | INPUT DEVICE FOR A COMPUTER |
US6256016B1 (en) * | 1997-06-05 | 2001-07-03 | Logitech, Inc. | Optical detection system, device, and method utilizing optical matching |
JPH1123222A (en) * | 1997-06-30 | 1999-01-29 | Sony Corp | Position detecting element, position detector, and position inputting device |
US5898170A (en) * | 1997-07-02 | 1999-04-27 | Microsoft Corporation | Apparatus and method for finding optimal sensitivity level for optical encoding circuit |
KR100286371B1 (en) * | 1998-03-14 | 2001-04-16 | 윤종용 | Pointing device having bar capable of rotating and sliding |
EP1037134A2 (en) * | 1999-03-16 | 2000-09-20 | Matsushita Electric Industrial Co., Ltd. | Virtual space control data receiving apparatus and method |
US6587093B1 (en) * | 1999-11-04 | 2003-07-01 | Synaptics Incorporated | Capacitive mouse |
US6563101B1 (en) | 2000-01-19 | 2003-05-13 | Barclay J. Tullis | Non-rectilinear sensor arrays for tracking an image |
US6529184B1 (en) | 2000-03-22 | 2003-03-04 | Microsoft Corporation | Ball pattern architecture |
US7161578B1 (en) | 2000-08-02 | 2007-01-09 | Logitech Europe S.A. | Universal presentation device |
DE10048881A1 (en) * | 2000-09-29 | 2002-03-07 | Infineon Technologies Ag | Device for planar joining of two wafers e.g. for thin grinding and separation of product-wafer, has product wafer arranged surface-congruently over carrier wafer |
TW523140U (en) * | 2000-09-29 | 2003-03-01 | Meng-Yu Wei | Improved mouse structure |
SE0003688D0 (en) * | 2000-10-12 | 2000-10-12 | Jonas Wikstroem | Device for controlling a cursor on a computer screen |
US6781570B1 (en) | 2000-11-09 | 2004-08-24 | Logitech Europe S.A. | Wireless optical input device |
US6859196B2 (en) * | 2001-01-12 | 2005-02-22 | Logitech Europe S.A. | Pointing device with hand detection |
US7002549B2 (en) * | 2001-01-18 | 2006-02-21 | Mccahon Stephen William | Optically based machine input control device |
CA2332475C (en) * | 2001-01-29 | 2006-08-01 | Vtech Communications, Ltd. | Two-axis ball-based cursor control with tactile feedback |
US7061468B2 (en) * | 2001-04-10 | 2006-06-13 | Logitech Europe S.A. | Hybrid presentation controller and computer input device |
WO2002093342A2 (en) * | 2001-05-16 | 2002-11-21 | Kanitech International A/S | A computer control device with optical detection means and such device with a microphone and use thereof |
US6774351B2 (en) * | 2001-05-25 | 2004-08-10 | Agilent Technologies, Inc. | Low-power surface for an optical sensor |
US7034805B2 (en) * | 2001-11-02 | 2006-04-25 | Kye Systems Corp. | Optical trackball |
US6750846B2 (en) | 2001-12-05 | 2004-06-15 | Em Microelectronic - Marin Sa | Sensing device for optical pointing devices such as an optical mouse |
TWI263942B (en) * | 2001-12-05 | 2006-10-11 | Em Microelectronic Marin Sa | Method and sensing device for motion detection in an optical pointing device, such as an optical mouse |
GB2383410B (en) * | 2001-12-20 | 2005-10-12 | Devlin Electronics Ltd | Joystick |
AU2003208464A1 (en) * | 2002-04-12 | 2003-10-27 | Cursor Controls Limited | Improved pointing device |
US7102626B2 (en) * | 2003-04-25 | 2006-09-05 | Hewlett-Packard Development Company, L.P. | Multi-function pointing device |
US6963059B2 (en) * | 2003-07-01 | 2005-11-08 | Em Microelectronic-Marin Sa | Method and system for optimizing illumination power and integration time in an optical sensing device |
US7161585B2 (en) * | 2003-07-01 | 2007-01-09 | Em Microelectronic-Marin Sa | Displacement data post-processing and reporting in an optical pointing device |
US7161586B2 (en) * | 2003-07-01 | 2007-01-09 | Em Microelectronic-Marin Sa | Method of operating an optical motion sensing device and optical motion sensing device implementing this method |
US7737947B2 (en) | 2003-10-16 | 2010-06-15 | Avago Technologies Ecbu Ip (Singapore) Pte. Ltd. | Tracking motion using an interference pattern |
SE0401802D0 (en) * | 2004-07-08 | 2004-07-08 | Anoto Ab | Mounting of imaging arrangements in optical systems |
US7439954B2 (en) * | 2004-04-15 | 2008-10-21 | Logitech Europe S.A. | Multi-light-source illumination system for optical pointing devices |
US7042575B2 (en) * | 2004-05-21 | 2006-05-09 | Silicon Light Machines Corporation | Speckle sizing and sensor dimensions in optical positioning device |
US20050259097A1 (en) * | 2004-05-21 | 2005-11-24 | Silicon Light Machines Corporation | Optical positioning device using different combinations of interlaced photosensitive elements |
US20050259078A1 (en) * | 2004-05-21 | 2005-11-24 | Silicon Light Machines Corporation | Optical positioning device with multi-row detector array |
US7285766B2 (en) * | 2004-05-21 | 2007-10-23 | Silicon Light Machines Corporation | Optical positioning device having shaped illumination |
US7773070B2 (en) | 2004-05-21 | 2010-08-10 | Cypress Semiconductor Corporation | Optical positioning device using telecentric imaging |
US7268341B2 (en) * | 2004-05-21 | 2007-09-11 | Silicon Light Machines Corporation | Optical position sensing device including interlaced groups of photosensitive elements |
US20050258346A1 (en) * | 2004-05-21 | 2005-11-24 | Silicon Light Machines Corporation | Optical positioning device resistant to speckle fading |
US20060001657A1 (en) * | 2004-07-02 | 2006-01-05 | Logitech Europe S.A. | Scrolling device |
JP4425078B2 (en) * | 2004-07-12 | 2010-03-03 | 浜松ホトニクス株式会社 | Encoder |
US20070018946A1 (en) * | 2004-09-28 | 2007-01-25 | Kevin Manley | Controller apparatus |
US7663614B2 (en) * | 2004-10-05 | 2010-02-16 | Jeff Maynard | Method for storing and comparing computer generated lines |
TWI290221B (en) * | 2004-10-29 | 2007-11-21 | Silicon Light Machines Corp | Two-dimensional motion sensor |
US7138620B2 (en) * | 2004-10-29 | 2006-11-21 | Silicon Light Machines Corporation | Two-dimensional motion sensor |
US7248345B2 (en) * | 2004-11-12 | 2007-07-24 | Silicon Light Machines Corporation | Signal processing method for use with an optical navigation system |
WO2006068746A2 (en) | 2004-11-19 | 2006-06-29 | Silicon Light Machines Corporation | Dense multi-axis array for motion sensing |
WO2006060798A2 (en) * | 2004-12-02 | 2006-06-08 | Silicon Light Machines Corporation | Signal processing method for optical sensors |
US20060158424A1 (en) * | 2005-01-19 | 2006-07-20 | Tong Xie | Optical slide pad |
US7898524B2 (en) * | 2005-06-30 | 2011-03-01 | Logitech Europe S.A. | Optical displacement detection over varied surfaces |
US7567235B2 (en) | 2005-12-12 | 2009-07-28 | Cypress Semiconductor Corporation | Self-aligning optical sensor package |
US7765251B2 (en) * | 2005-12-16 | 2010-07-27 | Cypress Semiconductor Corporation | Signal averaging circuit and method for sample averaging |
US8471191B2 (en) | 2005-12-16 | 2013-06-25 | Cypress Semiconductor Corporation | Optical navigation system having a filter-window to seal an enclosure thereof |
US7737948B2 (en) * | 2005-12-20 | 2010-06-15 | Cypress Semiconductor Corporation | Speckle navigation system |
US7298460B2 (en) * | 2006-01-03 | 2007-11-20 | Silicon Light Machines Corporation | Method for determining motion using a velocity predictor |
US7884801B1 (en) | 2006-02-16 | 2011-02-08 | Cypress Semiconductor Corporation | Circuit and method for determining motion with redundant comb-arrays |
US7297912B1 (en) | 2006-03-27 | 2007-11-20 | Silicon Light Machines Corporation | Circuit and method for reducing power consumption in an optical navigation system having redundant arrays |
US7721609B2 (en) | 2006-03-31 | 2010-05-25 | Cypress Semiconductor Corporation | Method and apparatus for sensing the force with which a button is pressed |
US7809035B2 (en) * | 2006-03-31 | 2010-10-05 | Cypress Semiconductor Corporation | Eye-safe laser navigation sensor |
US7804486B2 (en) * | 2006-04-06 | 2010-09-28 | Smyth Robert W | Trackball systems and methods for rotating a three-dimensional image on a computer display |
US7839388B2 (en) * | 2006-05-09 | 2010-11-23 | Avago Technologies Ecbu Ip (Singapore) Pte. Ltd. | Optical navigation system and method for reducing the power consumption of the system |
US7492445B1 (en) | 2006-06-05 | 2009-02-17 | Cypress Semiconductor Corporation | Method and apparatus for robust velocity prediction |
US7728816B2 (en) * | 2006-07-10 | 2010-06-01 | Cypress Semiconductor Corporation | Optical navigation sensor with variable tracking resolution |
US7742514B1 (en) | 2006-10-31 | 2010-06-22 | Cypress Semiconductor Corporation | Laser navigation sensor |
US8072429B2 (en) * | 2006-12-22 | 2011-12-06 | Cypress Semiconductor Corporation | Multi-axial touch-sensor device with multi-touch resolution |
US8314774B1 (en) | 2007-07-09 | 2012-11-20 | Cypress Semiconductor Corporation | Method and apparatus for quasi-3D tracking using 2D optical motion sensors |
US8263921B2 (en) | 2007-08-06 | 2012-09-11 | Cypress Semiconductor Corporation | Processing methods for speckle-based motion sensing |
WO2009029723A1 (en) * | 2007-08-28 | 2009-03-05 | Marvell World Trade Ltd. | Determining position and velocity of a handheld device |
US20090135140A1 (en) * | 2007-11-27 | 2009-05-28 | Logitech Europe S.A. | System and method for accurate lift-detection of an input device |
US8259069B1 (en) | 2008-01-11 | 2012-09-04 | Cypress Semiconductor Corporation | Speckle-based optical navigation on curved tracking surface |
US8031176B1 (en) | 2008-01-22 | 2011-10-04 | Cypress Semiconductor Corporation | Optical navigation system using a single-package motion sensor |
US8462105B2 (en) | 2008-07-31 | 2013-06-11 | Hiroshima University | Three-dimensional object display control system and method thereof |
US8541727B1 (en) | 2008-09-30 | 2013-09-24 | Cypress Semiconductor Corporation | Signal monitoring and control system for an optical navigation sensor |
US7723659B1 (en) | 2008-10-10 | 2010-05-25 | Cypress Semiconductor Corporation | System and method for screening semiconductor lasers |
US8217334B1 (en) | 2008-12-24 | 2012-07-10 | Cypress Semiconductor Corporation | Optical navigation sensor including a spatial frequency filter |
US8711096B1 (en) | 2009-03-27 | 2014-04-29 | Cypress Semiconductor Corporation | Dual protocol input device |
JP5368324B2 (en) * | 2010-01-08 | 2013-12-18 | エフアンドエフ株式会社 | Information input device |
US9092082B2 (en) | 2010-12-22 | 2015-07-28 | Synaptics Incorporated | Methods and apparatus for mounting a touch sensor device |
WO2012173640A1 (en) | 2011-06-16 | 2012-12-20 | Cypress Semiconductor Corporaton | An optical navigation module with capacitive sensor |
US8896553B1 (en) | 2011-11-30 | 2014-11-25 | Cypress Semiconductor Corporation | Hybrid sensor module |
US9542016B2 (en) | 2012-09-13 | 2017-01-10 | Apple Inc. | Optical sensing mechanisms for input devices |
US9753436B2 (en) | 2013-06-11 | 2017-09-05 | Apple Inc. | Rotary input mechanism for an electronic device |
CN109634447B (en) | 2013-08-09 | 2022-04-19 | 苹果公司 | Tactile switch for electronic devices |
US10048802B2 (en) | 2014-02-12 | 2018-08-14 | Apple Inc. | Rejection of false turns of rotary inputs for electronic devices |
US9797752B1 (en) | 2014-07-16 | 2017-10-24 | Apple Inc. | Optical encoder with axially aligned sensor |
US10190891B1 (en) * | 2014-07-16 | 2019-01-29 | Apple Inc. | Optical encoder for detecting rotational and axial movement |
US9797753B1 (en) | 2014-08-27 | 2017-10-24 | Apple Inc. | Spatial phase estimation for optical encoders |
US10066970B2 (en) | 2014-08-27 | 2018-09-04 | Apple Inc. | Dynamic range control for optical encoders |
US10599101B2 (en) | 2014-09-02 | 2020-03-24 | Apple Inc. | Wearable electronic device |
US10145711B2 (en) | 2015-03-05 | 2018-12-04 | Apple Inc. | Optical encoder with direction-dependent optical properties having an optically anisotropic region to produce a first and a second light distribution |
EP3251139B1 (en) | 2015-03-08 | 2021-04-28 | Apple Inc. | Compressible seal for rotatable and translatable input mechanisms |
US9952682B2 (en) | 2015-04-15 | 2018-04-24 | Apple Inc. | Depressible keys with decoupled electrical and mechanical functionality |
US10018966B2 (en) | 2015-04-24 | 2018-07-10 | Apple Inc. | Cover member for an input mechanism of an electronic device |
US9891651B2 (en) | 2016-02-27 | 2018-02-13 | Apple Inc. | Rotatable input mechanism having adjustable output |
US10551798B1 (en) | 2016-05-17 | 2020-02-04 | Apple Inc. | Rotatable crown for an electronic device |
US10061399B2 (en) | 2016-07-15 | 2018-08-28 | Apple Inc. | Capacitive gap sensor ring for an input device |
US10019097B2 (en) | 2016-07-25 | 2018-07-10 | Apple Inc. | Force-detecting input structure |
US10664074B2 (en) | 2017-06-19 | 2020-05-26 | Apple Inc. | Contact-sensitive crown for an electronic watch |
US10962935B1 (en) | 2017-07-18 | 2021-03-30 | Apple Inc. | Tri-axis force sensor |
US11360440B2 (en) | 2018-06-25 | 2022-06-14 | Apple Inc. | Crown for an electronic watch |
US11561515B2 (en) | 2018-08-02 | 2023-01-24 | Apple Inc. | Crown for an electronic watch |
US11181863B2 (en) | 2018-08-24 | 2021-11-23 | Apple Inc. | Conductive cap for watch crown |
CN209560398U (en) | 2018-08-24 | 2019-10-29 | 苹果公司 | Electronic watch |
US11194298B2 (en) | 2018-08-30 | 2021-12-07 | Apple Inc. | Crown assembly for an electronic watch |
CN209625187U (en) | 2018-08-30 | 2019-11-12 | 苹果公司 | Electronic watch and electronic equipment |
US11194299B1 (en) | 2019-02-12 | 2021-12-07 | Apple Inc. | Variable frictional feedback device for a digital crown of an electronic watch |
US11550268B2 (en) | 2020-06-02 | 2023-01-10 | Apple Inc. | Switch module for electronic crown assembly |
US11635786B2 (en) | 2020-06-11 | 2023-04-25 | Apple Inc. | Electronic optical sensing device |
US11328559B2 (en) | 2020-10-03 | 2022-05-10 | William Choung | System and method for enabling wagering event between sports activity players with stored event metrics |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4404865A (en) * | 1982-02-10 | 1983-09-20 | Wico Corporation | Trackball device |
DE3407131A1 (en) * | 1984-02-28 | 1985-08-29 | Jaekel Fessenmaier Christian D | Position data input device which can be moved freehandedly for electronic data processing systems (technical term: computer mouse) with mechanical/optical or mechanical/magnetic detection of the motion vector |
US4799055A (en) * | 1984-04-26 | 1989-01-17 | Symbolics Inc. | Optical Mouse |
US4794384A (en) * | 1984-09-27 | 1988-12-27 | Xerox Corporation | Optical translator device |
US4720631A (en) * | 1985-12-12 | 1988-01-19 | The Laitram Corporation | Electro-optical compass card wherein transmissive member has random patterns that repeat for particular rotational positions |
JPH01161521A (en) * | 1987-12-18 | 1989-06-26 | Hitachi Ltd | Position designating device |
JPH0748174B2 (en) * | 1989-09-04 | 1995-05-24 | 松下電器産業株式会社 | Pen type computer input device |
-
1992
- 1992-10-05 US US07/956,907 patent/US5288993A/en not_active Expired - Lifetime
-
1993
- 1993-10-04 FR FR9311799A patent/FR2696566A1/en active Granted
- 1993-10-04 GB GB9320402A patent/GB2271847B/en not_active Expired - Fee Related
- 1993-10-05 CA CA002107743A patent/CA2107743A1/en not_active Abandoned
- 1993-10-05 ES ES09302087A patent/ES2079288B1/en not_active Expired - Lifetime
- 1993-10-05 NL NL9301709A patent/NL9301709A/en not_active Application Discontinuation
- 1993-10-05 DE DE4333992A patent/DE4333992B4/en not_active Expired - Fee Related
- 1993-10-05 IT ITFI930192A patent/IT1262566B/en active IP Right Grant
- 1993-10-05 AU AU48819/93A patent/AU4881993A/en not_active Abandoned
- 1993-10-05 JP JP5249226A patent/JPH06195168A/en active Pending
- 1993-10-05 KR KR1019930020479A patent/KR940009817A/en not_active Application Discontinuation
Also Published As
Publication number | Publication date |
---|---|
DE4333992A1 (en) | 1994-05-19 |
ES2079288B1 (en) | 1998-01-01 |
ES2079288A2 (en) | 1996-01-01 |
IT1262566B (en) | 1996-07-04 |
ES2079288R (en) | 1997-04-16 |
JPH06195168A (en) | 1994-07-15 |
US5288993A (en) | 1994-02-22 |
GB9320402D0 (en) | 1993-11-24 |
AU4881993A (en) | 1994-04-21 |
GB2271847A (en) | 1994-04-27 |
ITFI930192A1 (en) | 1995-04-05 |
GB2271847B (en) | 1996-03-06 |
FR2696566A1 (en) | 1994-04-08 |
KR940009817A (en) | 1994-05-24 |
ITFI930192A0 (en) | 1993-10-05 |
DE4333992B4 (en) | 2006-04-13 |
FR2696566B1 (en) | 1997-02-28 |
NL9301709A (en) | 1994-05-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5288993A (en) | Cursor pointing device utilizing a photodetector array with target ball having randomly distributed speckles | |
US6218659B1 (en) | Dual layer optical ball for pointing device | |
US5854482A (en) | Pointing device utilizing a photodector array | |
US6084574A (en) | Compact cursor pointing device utilizing photodetector array | |
EP0170783B1 (en) | Optical mouse | |
USRE37878E1 (en) | Pointing device with differential optomechanical sensing | |
US6256016B1 (en) | Optical detection system, device, and method utilizing optical matching | |
US4920260A (en) | Detector system for optical mouse | |
US9298279B2 (en) | Cursor control device | |
US7122781B2 (en) | Method and sensing device for motion detection in an optical pointing device, such as an optical mouse | |
US6225617B1 (en) | Method for generating quasi-sinusoidal signals | |
US5907152A (en) | Pointing device utilizing a photodetector array | |
Arreguit et al. | A CMOS motion detector system for pointing devices | |
US20070126700A1 (en) | Method and apparatus for sensing motion of a user interface mechanism using optical navigation technology | |
JPS6237408B2 (en) | ||
KR20010022253A (en) | Method and apparatus for scanning a fingerprint using a linear sensor | |
EP2306276A2 (en) | Improvements in or relating to pointing devices | |
US20060158424A1 (en) | Optical slide pad | |
US4880967A (en) | Coordinate vector method for optical input device | |
US7746477B1 (en) | System and method for illuminating and imaging a surface for an optical navigation system | |
WO2002003369A1 (en) | Dual layer optical ball for pointing device with texture sensing | |
CN101673147A (en) | Multi-dimensional optical control device and multi-dimensional optical control method | |
JPH04279922A (en) | Optical detection device | |
CN2061304U (en) | Optical input device with coordinate vector mode | |
JPH08329176A (en) | Data symbol reader |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FZDE | Discontinued |