Cursor positioning device

Abstract: A computer input device uses a standard mouse design and includes at least one thumb wheel or roller to provide three-dimensional cursor positioning. Left and right rollers, for use by left- and right-handed users, protrude from left and right sides of a standard mouse. The left and right rollers are axially mounted on left and right drive shafts that extend axially through left and right encoder wheels, respectively. Each encoder wheel forms part of a transducer for producing signals indicating movement or rotation of the wheel. These signals can be used for calculating cursor movement or for various other purposes in computer software applications. Alternatively, the rollers are coupled to switches or a single roller protrudes from the top of the mouse.

Description: Technical Field This invention relates to computer input devices, particularly mice and trackballs. Background of the Invention In today's computers, cursor movement, to select window and menu items, is often controlled using input devices such as mice or trackballs. Mice and trackballs both include a housing partially enclosing a rotatable ball and have one or more depressable buttons. Electronic encoders sense the rotation of the ball and generate signals indicating the ball's rotation. These signals are used to control movement of a cursor on a display screen of the computer. The ball either protrudes from the top of the housing (in a trackball) or below the housing (in a mouse). With a mouse, the housing is moved across a surface, typically a table top, causing the ball protruding below the housing to roll in a similar direction. The electronic encoders produce signals that are output to a computer reflecting such movement. The buttons are used to enter commands into the computer, usually based on the current position of the cursor on the display screen. Depressing the button permits the user to enter various commands into the computer. Examples of such commands include: opening or pulling down a menu; launching an application; create starting, ending or other points in a graphic pattern on the screen; moving objects to different locations on the screen; and the like. Currently commercially available computer input devices generally permit only two-dimensional positioning of a cursor. Some computer program applications are available which permit illusory positioning of a cursor in three-dimensional space on a two-dimensional video display device. European Patent Application WO 93/11526 describes a computer input device which permits three-dimensional positioning of a cursor. This device uses a stationary transmitter and a moveable receiver. The transmitter includes three speakers spaced apart in an "L" or "T" shape. The movable receiver includes three microphones spaced apart in a triangular shape. The speakers transmit ultrasonic signals which are received by the microphones. A calibration microphone is further included on the receiver. Control circuitry measures the time of delay for sound to travel from each of the three speakers in the transmitter to each of the three microphones in the receiver. From this delay information and the speed of sound in air (calibrated for that time and location), the device determines the three-dimensional position of the movable receiver with respect to the stationary transmitter. Sophisticated electronics and expensive components are required in this three-dimensional computer input device to perform the position/attitude computations. Overall, the inventors are unaware of any three-dimensional cursor positioning or computer input device which avoids sophisticated electronics and expensive components yet provides accurate cursor positioning. EP 0 531 829 discloses a hand-held remote control housing comprising a roller being manipulated by a finger. A movable bearing member has a receiving portion to support a rotary shaft of the roller and a pressing portion of that member is held in abutment against a push button switch. The bearing member is angularly movable with respect to the housing, around the axis of stubs. The axis of stubs and the axis of the rotary shaft are offset from each other. The rotary shaft and a rotary shaft of an encoder are provided with respective pulleys which are coupled to each other using a belt. This arrangement has the disadvantage that the user may inadvertently depress the switch when he only wishes to rotate the roller. WO 93/03475 discloses an input device for providing multidimensional spatial position data to a computer. The input device allows intuitive user selection of six coordinates or degrees of freedom: three translational coordinates and three rotational coordinates. The device incorporates three independently operable locating members or input mechanisms, such as a roller ball for entry of two translational coordinates, a thumb wheel for entry of a third translational coordinate, and a trackball for entry of three rotational coordinates. Depth/Force Capability for Mouse Pointing Devices, Research Disclosure, Emsworth, UK, October 1992, vol. 342, page 769 discloses a method for enabling for mouse pointing devices to provide depth/force (Z-axis) information. Sensors in the form of strain gauges or spring-loaded wheels are added to the mouse pointing device to provide Z-axis information, which supplements the X- and Y-axis information provided by standard devices. It is an object of the invention to provide an input device for a computer that is simple, is inexpensive and provides accurate cursor positioning, and a corresponding method of operation. This object is solved by the apparatus as claimed in independent claim 1 and by the method as claimed in independent claim 12. Preferred embodiments of the invention are subject matters of dependent claims. According to principles of the present invention, a computer input device uses a currently available mouse design and includes at least one thumb or roller wheel to provide three-dimensional cursor positioning. Left and right rollers, for use by left- and right-handed users, protrude from left and right sides of the mouse. The left and right rollers are axially mounted on left and right drive shafts that extend axially through left and right encoder wheels, respectively. Each encoder wheel separates a pair of optoelectronic devices and selectively permits light transmitted by one device to be received by the other device. The optoelectronic devices provide quadrature signals used for calculating cursor movement. The X and Y coordinates of an object or cursor in three-dimensional space are controlled by the standard ball and two encoder wheels. Either the left or right roller and encoder wheel provide Z dimension coordinate signals. The present invention allows a standard mouse design to provide three-dimensional computer input signals with only slight modifications, and uses currently available mouse components (encoder wheels, optoelectronic devices, etc.). Consequently, a very low-cost, three-dimensional computer input device may be readily manufactured. In a first alternative embodiment, the rollers are modified to provide switch functions, thus allowing for an additional mouse input. In a second alternative embodiment, a single roller protrudes from the top of a standard mouse, between primary and secondary input buttons. Ergonomically, this second alternative embodiment may be preferred, and allows for a reduced part count. The present invention may be used in a variety of applications. For example, the secondary mouse button could be used to enable and disable a vector orientation mode, particularly for use in computer-aided design/computer-aided manufacturing applications. In this mode, the attitude of an object may be adjusted about three orthogonal axes ( i.e ., roll, pitch, and yaw). Alternatively, the ball can control the X and Y coordinates to position a cursor. The thumb wheel could then control a characteristic of an item on a visual display screen of the computer designated by the cursor. Additional three-dimensional applications for the present invention include: moving up, down and through various overlapping spreadsheet or windows; varying the size of a window, highlighting text and then varying its size or style; zooming in or out of a document or picture; adjusting the color or volume in applications; and three-dimensional movement in games. The present invention embodies an input device for providing user commands to a computer comprising a housing and first and second transducers supported by the housing. The first and second transducers receive user commands and produce respective first and second signals in response thereto. A user actuatable member is received by the housing, the member capable of being actuated in opposing directions. The member is adapted to produce a third signal indicating the user's actuation of the member. A control circuit coupled to the first and second transducers and the member receives the first, second and third signals and provides an output signal to the computer in response thereto. Preferably, the member is a first roller projecting from the housing and coupled to a third transducer producing the third signal indicative of the rotation of the first roller. In a first alternative embodiment, the input device includes a switch coupled to the control circuit to produce a switch signal upon actuation of the switch. The first roller is slidably received by the housing and the switch is positioned adjacent to the first roller. Sliding of the first roller results in actuation of the switch. In a second alternative embodiment, the first roller projects from a top of the housing. Other features and advantages of the present invention will become apparent from studying the following detailed description of the presently preferred exemplary embodiment, together with the following drawings. Brief Description of the Drawings Figure 1 is an isometric right side view of the computer input device of the present invention. Figure 2 is an isometric left side view of the computer input device of Figure 1. Figure 3 is a top plan view of the computer input device of Figure 1. Figure 4 is a schematic view of internal components of the input device of Figure 1. Figure 5 is an isometric view of an encoder wheel thumb wheel shaft and thumb wheel of the computer input device of Figure 1. Figure 6 is an enlarged, partial schematic view of a first alternative embodiment of the computer input device of Figure 1. Figure 7 is an enlarged cross-sectional view of an upper thumb wheel shaft support taken along the line 7-7 of Figure 6. Figure 8 is a top plan view of a second alternative embodiment of the input device of Figure 1. Figure 9 is an isometric view of a third alternative embodiment of the present invention. Detailed Description of the Presently Preferred Exemplary Embodiment Figures 1, 2, and 3 show a computer input device, preferably a mouse 100, according to the present invention. The mouse 100 generally includes an upper housing 102 and a lower housing 104, with left and right thumb wheels 106 and 108 projecting from left and right sides of the mouse 100, respectively. Primary and secondary input buttons 110 and 112, respectively, are provided on the upper housing 102. A cord 114 connects the mouse 100 to a host computer 115. The host computer 115 includes a visual display device and a memory 115' (shown in Figure 1). The lower housing 104 forms the major bottom surface of the mouse 100, and the upper housing 102 forms the major upper surface of the mouse 100. The upper housing 102 and the lower housing 104 together form an inner chamber and a front surface, left and right side surfaces and a curved rear surface of the mouse 100. The upper housing 102 and the lower housing 104 may be joined together by any number of connection means known by those skilled in the art. The upper and lower housings 102 and 104 partially enclose a ball 117. As shown in Figure 4, the ball 117 rests in a middle portion of the lower housing 104, allowing a portion of the ball to protrude through a hole 120 (shown in dashed lines) in the lower surface of the mouse 100. X and Y axis transducers 121 and 121', respectively, preferably motion-to-electricity transducers, each include an encoder wheel shaft 122 and an encoder wheel 124 axially fixed to an end of each encoder wheel shaft 122, shown more clearly in Figure 5. Preferably, the encoder wheel shaft 122 and the encoder wheel 124 are formed together as a single part. The encoder wheel shafts 122 are positioned perpendicular to each other within the housing and adjacent to the ball 117. A series of holes or notches 125 are formed along the circumference of each encoder wheel 124. A wheel pin 126 and an end pin 127 axially extend from each encoder wheel shaft 122 into a pair of pin holes 129, formed in a pair of shaft supports 128, to rotatably receive the encoder wheel shaft. The wheel pin 126 axially extends from the end of the encoder wheel shaft 122 proximal to the encoder wheel 124. The end pin 127 axially extends from the end of the encoder wheel shaft 122 distal from the encoder wheel 124. The shaft supports 128 are preferably formed in the lower housing 104 and project upward from the bottom surface. Each pair of shaft supports 128 rotatably retains one of the encoder wheel shafts 122. With reference to Figure 4, a spring-biased roller 130 projects upwardly from and is rotatably retained by the lower housing 104. The spring-biased roller 130 is positioned opposite to an interior angle formed by the perpendicularly positioned encoder wheel shafts 122 and biases the ball 117 against the encoder wheel shafts and toward the interior angle, while allowing the ball to freely rotate in a planar fashion. The ball 117 is preferably made of rubber-covered steel and the encoder wheel shafts 122 and encoder wheels 124 are preferably made of glass-reinforced plastic. The rubber provides sufficient friction against the polycarbonate encoder wheel shafts whereby rotation of the ball 117 caused by sliding the mouse 100 over a planar surface causes the encoder wheel shafts 122 and the encoder wheels 124 to similarly rotate. As shown in Figure 5, the left and right thumb wheels 106 and 108 are elongated cylinders or conical frustums each having an axial bore 134. A thumb wheel shaft 138 is positioned through the axial bore 134 of each thumb wheel 106 and 108 and is fixed thereto. The thumb wheel shaft 138 is generally longer than the encoder wheel shaft 122 to accommodate the thumb wheel thereon. Each thumb wheel shaft 138 has a wheel pin 126, end pin 127 and an encoder wheel 124, as is formed on each encoder wheel shaft 122. Each thumb wheel 106 or 108 is fixed to an end of the thumb wheel shaft 138 proximate to the end pin 127, with the encoder wheel 124 fixed to the other end proximate to the wheel pin 126. A pair of thumb wheel shaft supports having pin holes 129 therethrough are formed in the lower housing 104 and project upward from the bottom surface, one pair formed proximate to the left side of the mouse 100 and the other pair formed proximate to the right side. Each pair of thumb wheel shaft supports consists of an upper thumb wheel shaft support 142 rotatably retaining the end pin 127 of one of the thumb wheel shafts 138 in its pin hole 129 and a lower thumb wheel shaft support 143 rotatably retaining the wheel pin 126 in its pin hole. The thumb wheel shaft supports are positioned on the lower housing 104 whereby when the thumb wheel shafts 138, with the thumb wheels 106 and 108 mounted thereon, are rotatably retained by the upper and lower thumb wheel shaft supports 142 and 143, the thumb wheels project from and extend along the left and right sides of the housing, between a left to right extending centerline of the housing and the front. When so positioned, the left and right thumb wheels 106 and 108 are proximate to the primary and secondary input buttons 110 and 112 on the upper surface of the mouse 100. When a user places his or her palm on the major upper surface of the mouse 100, his or her fingers extend forward so they are able to access the primary and secondary buttons 110 and 112. While the palm is in this position, the thumb extends over the left or right side so it is able to access the left or right thumb wheel 106 or 108 (depending on whether he or she is left- or right-handed). A pair of longitudinal thumb wheel shaft supports 144 project upward from the lower housing between each pair of thumb wheel shaft supports 142 and 143. Each pair of longitudinal thumb wheel shaft supports 144 receive an outer circumference of one of the thumb wheel shafts 138. Each pair of longitudinal thumb wheel shaft supports 144 are positioned approximately equidistant between each pair of thumb wheel shaft supports 142 and 143 such that when one of the thumb wheel shafts 138 is mounted thereon, the thumb wheel and upper thumb wheel shaft support 142 are positioned forward of the longitudinal shaft support, and the encoder wheel 124 and lower thumb wheel shaft support 142 are located rearward of the longitudinal shaft support. The longitudinal shaft supports 144 inhibit each thumb wheel shaft 138 from left or right movement, particularly when either thumb wheel 106 or 108 is rotated by a user. The shaft supports 128 and thumb wheel shaft supports 142 and 143 are preferably formed of a flexible plastic to permit the encoder wheel shafts 122 and thumb wheel shafts 138, respectively, to be snapfit therein during assembly. Similarly, the pair of longitudinal shaft supports 144 each have a curved recess (not shown) facing toward each other to allow the thumb wheel shaft 138 to be snapfit down into and between the pair of longitudinal shaft supports 144 with the shaft 138 rotatably received by the recesses on the inner surfaces of the longitudinal shaft supports 144. A light-emitting element, preferably a light-emitting diode ("LED") 146, is positioned on one side of each encoder wheel 124. A light-detecting element, preferably a phototransistor 148, is positioned opposite each LED 146 on the other side of each encoder wheel 124. As each encoder wheel 124 rotates, light from the LED 146 is alternatively blocked and transmitted through the encoder wheel 124 and received by the phototransistor 148 depending on whether one of the notches 125 separates the LED 146 and phototransistor 148. While notches in the encoder wheel 124 are shown in Figure 5, any other form of shutter to modulate light from each LED 146 to each phototransistor 148 may be used. The X and Y axis transducers 121 and 121', respectively, each include one of the LEDs 146 and one of the phototransistors 148. Similarly, left and right Z axis transducers 149 and 149', respectively, each include one of the thumb wheel shafts 138, encoder wheels 124, LEDs 146 and phototransistors 148. A primary switch 150 and a secondary switch 152 are positioned below the primary input button 110 and the secondary input button 112, respectively, whereby actuation of the primary or secondary input button results in actuation of the corresponding switch. The primary and secondary switches 150 and 152, the LEDs 146 and the phototransistors 148 are all mounted on a single printed circuit board 156, and coupled by known means to additional circuitry 158 mounted thereon. The additional circuitry 158 includes a microcontroller and other discrete electronic devices known by those skilled in the relevant art to cause the LEDs 146 to emit light, to cause the phototransistors 148 to produce signals based on the light, to receive the signals, and to convert these signals to appropriate computer signals to be output over the cord 114 to the computer 115. See, e.g ., U.S. Patents 4,464,652 to Lapson et al., 4,533,830 to Beauprey, and 4,562,314 to Hosogoe et al. In operation, the mouse 100 is moved or slid along a planar surface, causing the bail 117 protruding through the hole 122 to rotate. As the ball 117 rotates, it rotates the encoder wheel shafts 122 of the X and Y axis transducers 121 and 121', which, in turn, rotate the encoder wheels 124 fixed thereon. As the encoder wheels 124 rotate, the phototransistors 148 receive pulses of light from the LEDs 146 as the notches 125 sweep past the LEDs. Each phototransistor 148 converts these pulses of light into varying electrical signals which are input to the additional circuitry 154. While each phototransistor 148 is shown and described generally herein as a single element, the present invention preferably uses a single photodetector package having two phototransistors therein, such as the photodetector Model No. LTR-5576D, manufactured by LITEON. Consequently, each phototransistor 148 produces two signals or "quadrature signals." The phototransistor 148 that forms part of the X axis transducer 121 produces quadrature signals "XA" and "XB." The phototransistor 148 that forms part of the Y axis transducer 121' produces quadrature signals "YA" and "YB." The two phototransistors in each phototransistor 148 are separated by a known distance whereby one phototransistor in the photodetector is positioned at one of the notches 125 to receive light from the LED 146, causing the phototransistor to output a "high" signal that is interpreted by the additional circuitry 158 as a digital "1" quadrature signal. Conversely, the other phototransistor in the phototransistor 148 is blocked by the encoder wheel 124 from receiving light from the LED 146 and consequently outputs a "low" signal interpreted as a digital "0" quadrature signal. As a result, the two quadrature signals output from the phototransistor 148 produce a quadrature, that is, the signals are out of phase. The additional circuitry 154, namely the microcontroller, senses transitions between digital "0" and "1" input signals or levels in the two quadrature signals. Based on a comparison of these transitions, the additional circuitry 154 determines the direction in which the mouse is being moved. For example, if the quadrature signals XA and XB output from the phototransistor 148 are "00" followed by "10," then the additional circuitry 154 recognizes that the mouse 100 is being moved in one direction along the X axis. Conversely, if the quadrature signals XA and XB are "11" followed by "10," then the additional circuitry 154 recognizes that the mouse 100 is being moved in the opposite direction. The number of transitions between digital "0" and "1" signals detected by the additional circuitry 154 indicates the magnitude of mouse travel. Together, determination of direction and magnitude of mouse travel are referred to in the art as quadrature calculation. Quadrature calculation is performed by the additional circuitry 154 using known techniques. The quadrature calculations convert the quadrature signals into count signals indicating movement of the mouse 100 along X and Y axes. The count signals are either positive or negative, indicating movement of the mouse 100 in either a forward or reverse direction along a particular axis. The host computer 115 converts these counts into cursor movements on the visual display device. These counts and other mouse signals output to the host computer are preferably similar to the mouse signals described in Microsoft Mouse Programmer's Reference , Microsoft Press, 1991. Based on the above discussion, the X axis transducer 121 and associated phototransistor 148 produce XA and XB quadrature signals which are converted by the additional circuitry 154 into count signals indicating movement or position of the mouse 100 along the X axis, referred to herein as "X axis computer signals." The Y axis transducer 121' and associated phototransistor 148 produce YA and YB quadrature signals which are converted by the additional circuitry 154 into count signals indicating movement or position of the mouse 100 along the Y axis, referred to herein as "Y axis computer signals." Likewise, the left and right Z axis transducers 149 and 149', respectively, and associated phototransistors 148 produce two pairs of Z axis quadrature signals (each pair including a "ZA" and "ZB" component), which are input to the additional circuitry 154. For example, when the left thumb wheel 106 is rotated by a user's thumb, the thumb wheel shaft 138 similarly rotates about its wheel pin 126 in the lower thumb wheel shaft support 143, and its end pin 127 in the upper thumb wheel shaft support 142. As the thumb wheel shaft 138 rotates, the encoder wheel 124 fixed thereon similarly rotates, and the phototransistor 148 receives pulses of light from the LED 146 as the notches 125 sweep past the LED. In response to the pulses of light, the phototransistor 148 outputs the Z axis quadrature signals ZA and ZB. The additional circuitry 154 determines the direction and magnitude of "simulated" mouse travel along the Z axis from these quadrature signals using quadrature calculation, thus producing counts indicating the simulated movement or position of the mouse along the Z axis or "Z axis computer signals." These Z axis count signals are preferably summed together, and therefore either the left thumb wheel 106 or the right thumb wheel 108 may be used for Z axis movement of the mouse 100. If both the left thumb wheel 106 and the right thumb wheel 108 are rotated simultaneously and in opposite directions, the summed counts would cause the cursor to move twice as quickly along the Z axis than rotation of only a single thumb wheel. Alternatively, a switch can be provided, coupled to the additional circuitry 158, that disables the output of the Z-axis count signals to the computer. An actuation of the secondary switch 152 can enable the left and right thumb wheels 106 and 108 and the additional circuitry 158 to produce the Z axis computer signals. A second actuation of the secondary switch 152 could then position the cursor at a 0 position along the Z axis. Rotation of either thumb wheel in one direction or the other would thereafter result in movement of the cursor in either a positive or negative direction along the Z axis, respectively. Alternatively, actuations of the secondary switch 152 could toggle between movement of the cursor along positive or negative portions of the Z axis. Movement along the Z axis may be represented on the two-dimensional visual display as varying the size of the cursor whereby a cursor of increasing size indicates movement in the positive direction along the Z axis, and a cursor of diminishing size indicates movement of the cursor in a negative direction. In a first alternative embodiment 200 of the present invention shown in Figure 6, a thumb wheel switch 170 is positioned adjacent to each thumb wheel shaft 138, allowing actuation of the switch 170 by depressing and pivoting either the thumb wheel 106 or 108 inwardly as described below. The thumb wheel switches 170 are provided in addition to, or in lieu of, the primary and secondary switches 150 and 152. This first alternative embodiment, and all alternative embodiments described herein, are substantially similar to the first described embodiment and common elements or components are identified by the same numbers. Only the differences in construction and operation are described in detail. Referring to Figure 6, the thumb wheel switch 170 is fixed and electrically connected to the printed circuit board 156 between the left thumb wheel 106 and the encoder wheel 124. A button 172 extends outwardly from the thumb wheel switch 170 toward the left side of the mouse and against the thumb wheel shaft 138. A spring within the thumb wheel 170 (not shown) biases the button 172 outwardly and against the thumb wheel shaft 138. A slot 174, shown in Figure 7, extends longitudinally left to right within an upper thumb wheel shaft support 142'. The end pin 127 is slidably received within the slot 174. A central shaft support 175 projecting upward from the lower housing 104, between the left thumb wheel 106 and the encoder wheel 124, similarly has a longitudinally extending slot 176 which slidably receives the thumb wheel shaft 138 therein. The button 172 biases the end pin 127 and the thumb wheel shaft 138 against the leftmost end of the slots 174 and 176, respectively. While the left thumb wheel 106 is depressed inwardly, the end pin 127 and the thumb wheel shaft 138 slide longitudinally and inwardly left to right, through the slots 174 and 176, respectively, until each rests against the rightmost end of the slots. The left thumb wheel 106 and thumb wheel shaft 138 is simultaneously pivoted inwardly about the wheel pin 126, as shown by the arrow in Figure 6. Concurrently, the button 172 is depressed inwardly, compressing the spring and actuating the thumb wheel switch 170. When the left thumb wheel 106 is released, the spring in the thumb wheel switch 170 biases the button 172 outwardly, pivoting the thumb wheel 106 left and outwardly about the wheel pin 126, and sliding the end pin 127 and the thumb wheel shaft 138 left and through slots 172 and 176, respectively. A second alternative embodiment of the present invention is shown in Figure 8 as a mouse 300 that replaces the left and right thumb wheels 106 and 108 with a single upper thumb wheel 202. The upper thumb wheel 202 protrudes above the upper housing 102, between the primary and secondary input buttons 110 and 112. The primary and secondary input buttons 110 and 112 respectively actuate the primary and secondary switches 150 and 152 (not shown). The upper thumb wheel 202 is axially attached to a thumb wheel shaft 138 (shown in dashed lines). The upper thumb wheel 202 may be rotated by a user's finger, as opposed to the user's thumb, as his or her hand rests on the major upper surface 102 of the mouse 300. Ergonomically, the upper thumb wheel 202 provides more accurate user input than the left or right thumb wheels 106 and 108. Additionally, the second alternative embodiment provides a reduced part count over the previous embodiments while still permitting both left- and right-handed users to readily access the thumb wheel. A third alternative embodiment of the present invention is shown in Figure 9 as a trackball 400 having a left thumb wheel 106 protruding from the left side of the housing. The trackball 400 may also include a right thumb wheel 108 protruding from the right side of the housing. The internal components of the trackball 400 are substantially similar to those shown in Figure 4 and described herein. While the Z axis computer signal is described herein as being produced by a roller, encoder wheel and optoelectronic devices, the present invention may also produce the Z axis computer signal by using other electromechanical means. Specifically, the present invention may instead use a rocker switch, pressure-sensitive switches, joysticks, or other electromechanical switches, with an appropriate transducer if necessary, known by those skilled in the relevant art. While the mouse 100 is described above as moving a cursor in three dimensions, the present invention may be used in a variety of computer software applications. Generally, a computer software application uses the X, Y and Z axis computer signals and primary and secondary switch signals in a fashion particular to the computer software application. The computer software application, based on changes in these various signals, determines changes in the visual output as seen by the user on the visual display device. For example, the X and Y axis computer signals, produced by moving the mouse 100 along a planar surface, may be used to select a block of graphical data with appropriate switch input signals from either the primary or secondary switches 150 or 152. "Graphical data" as used herein includes text, documents, tables, spreadsheets, images, captured video data, and so forth. The Z axis computer signal, produced as a result of rotating the left, right or upper thumb wheel 106, 108 or 202, respectively, may be used to adjust the appearance of the block of graphical data, with appropriate switch signals if necessary. "Appearance" as used herein includes size, color, style, font, border, arrangement, brightness, etc. The primary and secondary switches 150 and 152 may be used to select a desired appearance. For example, a block of text is first selected from the X and Y axis computer signals by moving the mouse about a planar surface. Thereafter, the Z axis computer signal, produced as a result of rotating the thumb wheel, varies the size of the text if the primary switch 150 is actuated or the style of the text if the secondary switch 152 is actuated. The Z axis computer signal may be used to select one of many overlapping plies. As used herein, a ply is a two-dimensional representation of data such as a spreadsheet or text document. Once a particular ply is selected (with an appropriate switch signal), the X and Y axis computer signals move the cursor within the selected ply. As used herein, the term "cursor" includes any cursor, icon or pointer represented on a visual display device. The X, Y and Z axis computer signals may be used to navigate through three-dimensional "workbooks" such as spreadsheets. For example, in the spreadsheet environment, the left, right or upper thumb wheel 106, 108 or 202, respectively, cause the Z axis computer signal to be generated by the additional circuitry 158, which is in turn used by the computer 115 executing a computer spreadsheet software application. The Z axis computer signal is used by the computer 115, via the spreadsheet software application, to select one of many spreadsheets or plies within a three-dimensional spreadsheet depicted on the visual display device of the computer, the plies being two-dimensional spreadsheets arrayed along the third or Z dimension. Both the spreadsheet software application and the many plies are stored in a memory 115' of the computer 115. At any point in time, one of the many plies will be "active," i.e., dominantly or top-most displayed on the visual display device of the computer 115, allowing a user to manipulate data within that ply. The computer 115, executing the spreadsheet software application, translates the changing Z axis computer signal into a selection of which one of the arrayed plies is active. A user rotates one of the thumb wheels, generates the Z axis computer signal, and thereby moves from the active ply to one of the other plies, making each ply therebetween active in succession during such movement. The last ply indicated when movement of the thumb wheel ceases, is displayed on the visual display device of the computer 115. This movement or scrolling from one ply to another is similar to scrolling among the rows or columns within a ply. Thus, the Z axis computer signal may be used for this third-dimensional scrolling between plies moving successively among the arrayed plies, forward or backward (plus or minus Z axis movement), depending on the direction in which the thumb wheel is rotated. Specifically, as one of the thumb wheels is rotated and the Z axis computer signal is generated, the computer 115, via the spreadsheet software application, interprets how far the thumb wheel has been rotated and thereby determines which ply is active. For example, an eighth of a rotation of the thumb wheel (corresponding to a number of counts or values in the Z axis computer signal) causes the computer 115 to make the next ply active. If the last (or first) ply is active and the thumb wheel is still being rotated, the computer 115 provides an audible signal indicating that no additional plies underlie (or precede) the current ply. Alternatively, the host computer 115 compares the current value of the Z axis computer signal to a table stored in the memory 115' and determines which of the several plies is to be active. Once determining which of the many plies is active, the computer 115 retrieves from the memory 115' the active ply and displays it on the visual display device. Thereafter, the X and Y axis computer signals, generated by rotating the ball 117, are used by the computer 115 to move the cursor about the active ply to a desired cell within the ply. The secondary switch 152 may be actuated to cause the mouse 100 to enter into a vector orientation mode. In the vector orientation mode, the X, Y and Z axis computer signals may be used to orient the attitude of a video object in space. "Attitude" refers to the roll, pitch and yaw orientation of the video object. "Video object" refers to a cursor, graphic, or other image represented on a visual display. The primary switch 150 can be used to disable the vector orientation mode. Additional applications for the present invention include using the Z axis computer signal to vary the size of a selected window or spreadsheet, zooming in or out of graphical data, adjusting the color or volume in computer software applications, and three-dimensional movement in games. The present invention allows a standard mouse design to provide three-dimensional computer input signals with only slight modifications, and uses currently available mouse components ( e.g. , encoder wheels, LEDs, photodetectors, slightly modified mice housings, etc.). Since most of the components necessary under the present invention are located on a single printed circuit board, no additional manufacturing processes over those required for existing mice are required for manufacturing the present invention. Additionally, allowing the encoder wheel shafts 122 and the thumb wheel shafts 138 to be snapfit within the shaft supports formed in the lower housing 104, the mouse 100 of the present invention may be easily assembled. Consequently, the present invention describes a very low-cost three-dimensional computer input device that may be readily manufactured. Although specific embodiments of, and examples for, the present invention have been described for purposes of illustration, various modifications may be made as it will be apparent to those skilled in the relevant art. For example, while optoencoding methods are described herein using LEDs and photodetectors, other methods of producing quadrature signals may be employed, for example, using encoder wheels having electrical contacts along their circumference which alternatively make contact with electrical brushes as the encoder wheels rotate. The teachings provided herein of the present invention may be applied to other computer input devices, including optical mice or pen and tablets where the Z axis computer signal is produced by a thumb wheel provided on the optical mouse or the pen. These and other changes may be made to the invention in light of the above detailed description. Accordingly, the scope of the invention is determined entirely by the following claims.

Claims: An input device (100: 300: 400) for a computer (115), comprising: a housing (102, 104); a rotatable member (106, 108) received by the housing (102, 104), rotatable about an axis having first and second ends (126, 127), the first end (126) being pivotably received by the housing and the second end (127) being pivotably movable about the first end (126) between a rest position and an actuation position; a rotatable ball (117) received within the housing (102, 104); a first transducer (149, 149') positioned within the housing (102, 104) and coupled to the rotatable member (106, 108), the first transducer (149, 149') producing a first signal (ZA, ZB) indicative of the rotation of the rotatable member (106, 108); second and third transducers (121, 121') positioned within the housing (102, 104) and coupled to the rotatable ball (117), the second and third transducers (121, 121') producing second and third signals (XA, XE, YA, YB) indicative of the rotation of the ball (117); a control circuit (148) coupled to the first, second and third transducers (149, 149', 121, 121') for receiving the first, second and third signals (ZA, ZB, XA, XB, YA, YB) and outputting a computer signal to the computer (115) in response thereto; and a first switch (170) coupled to the control circuit (148) and adapted to produce a first switch signal upon actuation of the first switch (170), the first switch (170) being positioned adjacent to the rotatable member (106, 108) at some distance from the first end (126) of the rotation axis of the rotatable member (106, 108), and the rotatable member (106, 108) causing actuation of the first switch (170) when pivoted from the rest position to the actuation position. The input device (100: 300: 400) as claimed in claim 1, wherein: the rotatable member (106, 107) is a first elongate rotatably mounted roller (106, 107) projecting from the housing (102, 104). The input device (100: 300) as claimed in claim 2, further comprising: a second rotatably mounted roller (106, 107) projecting from the housing (102, 104), and a fourth transducer (149, 149') positioned about the second roller (106, 107) to also produce the first signal (ZA, ZB) indicative of the rotation of the second roller (106, 107), the first and second rollers (106, 107) projecting from left and right sides of the housing (102, 104), respectively, the second rotatable roller (106, 107) being received by the housing (102, 104) for movement between a rest position and an actuation position; and a second switch (170) coupled to the control circuit (148) adapted to produce a second switch signal upon actuation of the second switch (170), wherein the second switch (170) is positioned adjacent to the second rotatable roller (106, 107), and the second rotatable roller (106, 107) causes actuation of the second switch (170) when moved from the rest position to the actuation position. The input device (100: 300) as claimed in claim 2 or 3, wherein the first, second and third transducers (121, 121', 149, 149') are of approximately identical construction, and the first and second rollers (106, 107) are of approximately identical construction. The input device (100: 300: 400) as claimed in one of claims 2 to 4, wherein the first, second and third signals (ZA, ZB, XA, XB, YA, YB) indicate position in space along Z, X and Y axes, respectively, and wherein actuation of the first switch (170) causes the first, second and third signals (ZA, ZB, XA, XB, YA, YB) to indicate orientation in space. The input device (100: 300: 400) as claimed in one of claims 1 to 5, wherein actuation of the first switch (170) is adapted to enable the control circuit (148) to output the computer signal in response to the first signal (ZA, ZB). The input device (400) as claimed in claim 1 or 2, wherein the rotatable member (106, 107) projects from a top of the housing (102, 104), and the first switch (170) is positioned proximate to the rotatable member (106, 107). The input device (400) as claimed in claim 3, further comprising a second switch (170) coupled to the control circuit (148) and adapted to produce a second switch signal upon actuation of the second switch (170), the first and second switches (170) being coupled to the first rotatable member and the second roller, respectively. The input device (100: 300: 400) as claimed in claim 2, wherein the first transducer (149, 149') includes a first light-emitting element (146), a first light-detecting element (148) and a first rotatable encoder wheel (124), the first rotatable encoder wheel (124) being positioned between the first light-emitting element (146) and the first light-detecting element (148) to modulate light emitted from the first light-emitting element (146) and received by the first light-detecting element (148), the first rotatable encoder wheel (124) being rotated by the first rotatable roller (106, 107), and wherein the first transducer (149, 149') includes a shaft (138) axially fixed to the first rotatable roller (106, 107) and the first encoder wheel (124), the shaft (138) being rotatably and pivotally held by the housing (102, 104). The input device (100: 300: 400) as claimed in claim 9, wherein the second and third transducers (121, 121') include second and third light-emitting (146) and light-detecting (148) elements, second and third shafts (122) rotatably mounted in the housing (102, 104) adjacent to the ball (117), and second and third rotatable encoder wheels (124) positioned between the second and third light-emitting (146) and light-detecting (148) elements and axially fixed to the second and third shafts (127), all respectively, wherein rotation of the ball (117) results in rotation of the second and third shafts (122) and second and third rotatable encoder wheels (124), the second and third rotatable encoder wheels (124) selectively modulating light emitted from the second and third light-emitting elements (146), and received by the second and third light-detecting elements (148), respectively. The input device (100: 300: 400) as claimed in claim 10, wherein the first, second and third light-emitting elements (146) are of substantially similar construction, the first, second and third light-detecting elements (148) are of substantially similar construction, and the first, second and third rotatable encoder wheels (124) are of similar construction. A method of inputting data with a computer input device (100, 300, 400) as defined in any of the previous claims coupled to a host computer (115), the computer input device (100, 300, 400) having a housing (102, 104); a switch (150, 152, 170); a rotatable ball (117); a rotatable roller (106, 107) rotatable about an axis; and first, second and third transducers (121, 121', 149, 149'), the method comprising the steps of: generating a first computer signal (Z) from the first transducer (149, 149') indicative of the rotation of the rotatable roller (106, 107); generating second and third computer signals (X, Y) from the second and third transducers (121, 121') indicative of the rotation of the ball (117); actuating the switch (170) by pivoting the rotatable roller about one of its axial ends (126, 127) relative to the housing (102, 104); outputting at least one of the first, second and third computer signals (Z, X, Y) to the host computer (115); positioning a cursor in X and Y directions based on the second and third computer signals (X, Y), respectively; and controlling a non-positional characteristic of a displayed item designated by the cursor based on the first computer signal (Z). The method as claimed in claim 12, wherein the steps of rotating the rotatable ball (117) and rotating the rotatable roller (106, 107), can be performed concurrently. The method as claimed in claim 12 or 13, further comprising the step of: actuating the switch (150, 152, 170) to produce a switch signal before generating the first computer signal (Z). The method as claimed in claim 12 or 13, further comprising the step of: determining roll, pitch and yaw orientation of a video object based on the first, second and third computer signals (Z, X, Y), respectively and based on actuation of the switch (170). The method as claimed in claim 12 or 13, further comprising the steps of: outputting the switch signal to the computer (115); and selecting the displayed item designated by the cursor based on the switch signal.

Inventors: BACON GLADE B, KANEKO STEVEN T, MCROBERT ALAN W, MICHELMAN ERIC H, BACON, GLADE B., KANEKO, STEVEN T., MCROBERT, ALAN W., MICHELMAN, ERIC H.
Applicants: MICROSOFT CORP, MICROSOFT CORPORATION
Application year: 1995
Main classification: G06K11
IPC codes: G06F3