Optical input areas, such as optical touch panels, have been applied to a variety of applications, including computers, measurement instruments and portable devices (e.g., personal digital assistants (PDAs) and mobile phones).
Conventionally, optical input areas are bounded by emitter/detector pairs, wherein the emitters are positioned around the edges of the optical input area, and wherein each of the detectors is positioned in line-of-sight communication with its corresponding emitter, across the optical input area from its corresponding emitter. The emitter/detector pairs are also positioned such that they form a plurality of light paths that intersect to delimit x-coordinates and y-coordinates of the optical input area. In use, and when the light paths are interrupted by means of a user's stylus or finger, a control system assesses which light paths are blocked, and thereby determines the coordinates of the user's interaction with the optical input area.
Various permutations and extensions of the above-described optical input area have been proposed, but all are based on light paths that define a Cartesian coordinate system (i.e., based on light paths that define (x, y) coordinates at their intersections).
In one embodiment, apparatus comprises a plurality of optical angle detectors, each of which is positioned at a different location adjacent an optical input area. Each of a plurality of light-control devices is positioned between the optical input area and one of the optical angle detectors to cause particular rays of light to be mapped to particular portions of a respective one of the optical angle detectors. The optical angle detectors are positioned to cause each coordinate in the optical input area to be within a field of view of at least two of the optical angle detectors.
In another embodiment, apparatus comprises a plurality of optical angle detectors, each of which has a plurality of light sensing elements, and each of which is positioned at a different location adjacent an optical input area. Each of a plurality of light-control devices is positioned between the optical input area and one of the optical angle detectors to cause particular rays of light to be mapped to particular light sensing elements of a respective one of the optical angle detectors. The optical angle detectors are positioned to cause each coordinate in the optical input area to be within a field of view of at least two of the optical angle detectors.
In yet another embodiment, a method comprises 1) positioning a plurality of light-control devices at different locations adjacent an optical input area, and 2) positioning a plurality of optical angle detectors at positions adjacent the optical input area that cause the light-control devices to map particular rays of light to particular portions of respective ones of the optical angle detectors. The optical angle detectors are positioned to cause each coordinate in the optical input area to be within a field of view of at least two of the optical angle detectors.
Other embodiments are also disclosed.
Illustrative embodiments of the invention are illustrated in the drawings, in which:
In contrast to optical input areas employing emitter/detector pairs that produce signals representing Cartesian coordinates of interactions with the optical input area, the methods and apparatus disclosed herein employ optical angle detectors that produce signals representing polar angles of interactions with an optical input area.
Of note, the actions 102, 104, 106, 108 of the method 100 may performed in alternate orders.
The apparatus 200 also comprises a plurality of light-control devices 212, 214, 216, 218, each of which is positioned between the optical input area 210 and one of the optical angle detectors 202, 204, 206, 208. The light-control devices 212, 214, 216, 218 cause particular rays of light, such as light ray 220, to be mapped to particular portions (i.e., to particular light sensing elements) of the optical angle detectors 202, 204, 206, 208. In
The optical angle detectors 202, 204, 206, 208 are positioned to cause each coordinate in the optical input area 210 to be within a field of view of at least two of the optical angle detectors 202, 204, 206, 208. A control system 222 may then be coupled to the detectors 202, 204, 206, 208 to 1) receive signals representing polar angles from the optical angle detectors 202, 204, 206, 208, and 2) map the polar angles to Cartesian coordinates representing positions of a pointer 224 with respect to the optical input area 210.
The control system 222 may be implemented in various ways, including by means of one or more of: a programmed circuit (e.g., a field-programmable gate array (FPGA) or application-specific integrated circuit (ASIC)), or a circuit (e.g., a microprocessor) controlled by firmware or software.
In one embodiment, the control system 222 may activate each of the optical angle detectors in series, and on a rotating basis (e.g., via a multiplexer). In this manner, a read buffer or other read logic may be shared by the detectors 202, 204, 206, 208.
Although
The apparatus 300 also comprises a plurality of light-control devices 312, 314, 316, 318, each of which is positioned between the optical input area 310 and one of the optical angle detectors 302, 304, 306, 308. The light-control devices 312, 314, 316, 318 cause particular rays of light, such as light ray 320, to be mapped to particular portions of the optical angle detectors 302, 304, 306, 308. In
The apparatus 300 further comprises a number of light sources 326, 328, 330, 332 (e.g., light emitting diodes (LEDs), each of which is positioned adjacent the optical input area 310.
The optical angle detectors 302, 304, 306, 308 are positioned to cause each coordinate in the optical input area 310 to be within a field of view of at least two of the optical angle detectors 302, 304, 306, 308. A control system 322 may then be coupled to the detectors 302, 304, 306, 308 to 1) receive signals representing polar angles from the optical angle detectors 302, 304, 306, 308, and 2 ) map the polar angles to Cartesian coordinates representing positions of a pointer 324 with respect to the optical input area 310.
The control system 322 may activate each of the optical angle detectors 302, 304, 306, 308 in series, and on a rotating basis (e.g., via a multiplexer). In this manner, a read buffer or other read logic may be shared by the detectors 302, 304, 306, 308. The control system 322 may also activate each of the optical angle detectors 302, 304, 306, 308 in sync with at least one of the light source(s) 326, 328, 330, 332 that is adjacent the optical angle detector. For example, and as illustrated in
To reduce the power consumption of the light sources 326, 328, 330, 332, light sources that need to be activated simultaneously (such as light sources 326, 328 in the context of detector 304) may be connected in series, within a switching matrix that provides for selecting the ones of the light sources 326, 328, 330, 332 that are connected in series.
The control system 322 may be implemented in various ways, including by means of one or more of: a programmed circuit (e.g., a field-programmable gate array (FPGA) or application-specific integrated circuit (ASIC)), or a circuit (e.g., a microprocessor) controlled by firmware or software.
In one embodiment, the light sources 326, 328, 330, 332 emit light of a predetermined wavelength, such as infrared (IR) light, and the light-control devices 312, 314, 316, 318 comprise filters to pass only the predetermined wavelength of light. If the apparatus 300 is used in an environment with a lot of ambient light (i.e., light other than that which is reflected from the pointer 322), the ambient light can thereby be filtered out, and prevented from blurring the spot formed on a detector, by virtue of light reflecting off the pointer 322.
Another way to factor out the effects of ambient light is to modulate the light produced by the light sources 326, 328, 330, 332. In this manner, readings with and without light that is produced by the light sources 326, 328, 330, 332, and reflected from the pointer 334, may be compared to factor out the effects of ambient light. Light source modulation also helps to reduce power consumption of the apparatus 300.
The apparatus 300 may further comprise a light-absorbing frame 334 that bounds the optical input area 310. The frame 334 may be provided with openings that allow light to pass from the optical input area 310 to the lenses 312, 314, 316, 318. Alternately, the lenses 312, 314, 316, 318 may be replaced with other light-control devices, such as pinholes in the frame 334 that substantially limit the light rays incident on each of the detectors 302, 304, 306, 308 to one ray for each particular viewing angle (e.g., substantially one light ray for each viewing angle of the detector, from 0°-90°).
To improve the resolution of the apparatus 300, the focal point of each lens 312, 314, 316, 318 should be positioned such that the lens is optimized to image pointers 322 that are positioned on a half of the optical input area 310 that is opposite the side of the optical input area 310 where the lens 312, 314, 316, 318 is positioned. Even more preferably, the focal points of the lenses 312, 314, 316, 318 should enable the lenses to optimally view pointers 322 that are about 75% of the way across optical input area 310. A suitable formula for calculating such a focal point is:
where h is the distance between a detector and its corresponding lens; a and b are the width and length of the optical input area 310; and f is the focal length.
The focal point of each lens 312, 314, 316, 318 with respect to its corresponding detector 302, 304, 306, 308 is not critical, because a polar angle of the pointer 322 with respect to one of the detectors 302, 304, 306, 308 may be determined by means of the “center of gravity” of a light spot on the detector. The focal point need only be adjusted to ensure that positions of the pointer 322 with respect to the optical input area 310 do not cause a light spot to be directed outside the bounds of one or more of the detectors 302, 304, 306, 308.
If each optical angle detector 302, 304, 306, 308 is designed to image pointers 322 in the opposite half-plane of the optical input area 310, then the minimum length of a one-dimensional optical angle detector 302, 304, 306, 308 can be calculated as:
2ah/b (for detectors 302 and 306); and (2)
2bh/a (for detectors 304 and 308). (3)
The equations set forth below, and
In
The angles Θ1 and Θ2 have the following relation to the Cartesian position (x,y) of the pointer 424:
From the above equations, the following relationships may be derived between the positions l1 and l2, and the Cartesian position (x,y) of the pointer 424:
Of note, the above equations can be implemented by the control system 222 or 322 without any need to implement complicated trigonometric functions.
In
In
In
Depending on their configurations, the method 100 and apparatus 200, 300, 500, 600, 700, 800 disclosed herein can provide a solution that requires fewer computations by the control system; a lower component count over conventional optical input areas; flexibility in terms of the size of an optical input area that can be defined (e.g., no more components are required for larger optical input areas—the spacing of the components simply needs to be adjusted, and the control system has to be provided with new component spacing and/or a program that contemplates same)