FORCE FEEDBACK CURSOR CONTROLLER
REFERENCE TO RELATED APPLICATIONS This application claims priority to U.S. Prov. Appl. No. 60/105,629 filed October 26, 1998 and incorporated herein by reference.
FIELD
The present invention relates to a force feedback cursor controller structure for use with computers. In particular, the invention provides a user with a tactile response to computer cursor controller movements.
BACKGROUND
Known types of cursor controllers include cursor positioning keys, function keys, mice, track balls, joysticks, touch screens, light pens, tablets, and other devices, for controlling cursor movement and selecting functions on menus which can be popped up in computer programs. Conventional mouse type cursor controllers suffer from one or more deficiencies such as being slow, requiring extensive arm movement, requiring a person to withdraw attention from the monitor, and other deficiencies. One solution to these problems is a cursor controller with an optical position encoder as described in U.S. Pat. Nos. 4,935,728 and 5,771,037, incorporated herein by reference. Additionally, conventional cursor controllers do not provide the user with tactile interaction with the computer. For example, conventional controllers do not provide the user with tactile feedback that could improve the efficiency or experience of the user with the computer. A few recent patents describe the benefits of force feedback, for example, U.S. Pat. Nos. 5,691,898 and 5,739,811, incorporated herein by
reference. These patents suggest using motors to provide force feedback or brakes to provide friction.
What is needed is a cursor controller that combines the benefits of improved position encoder technology with the benefits of tactile feedback.
SUMMARY The invention overcomes the identified problems and provides a cursor controller that combines the benefits of improved position encoder technology with the benefits of tactile feedback. An exemplary embodiment of a force feedback cursor controller is for use with a computer system that provides a force feedback signal. The cursor controller includes a housing supporting a controller structure. An optical position structure is coupled to the controller structure and configured to generate a position signal based on a position of the controller structure. A feedback structure is coupled to the controller structure and configured to provide a force feedback responsive to the force feedback signal. In this manner, the computer receives the position signal from the position structure and the user obtains force feedback from the feedback structure.
In another embodiment, the controller structure is a puck extending upward from the housing. The optical position encoder includes an optically transmissive sliding member disposed between a source and a sensor that generates the position signal in response to a position of the sliding member. The feedback structure is an electromagnetic feedback structure including a magnet and a coil.
Advantages of the present invention include the ability to accurately determine controller position and the ability to provide force feedback to the user.
BRIEF DESCRIPTION OF THE FIGURES Additional advantages of the invention will become apparent upon reading the following detailed description and upon reference to the drawings, in which:
Figures 1 A-B depict a computer system having a cursor controller according to an embodiment of the invention;
Figure 2 is a block diagram of the cursor controller with the computer system of Figure 1;
Figure 3 is a plan view of the cursor controller used in the computer system of Figure 1;
Figure 4 is a cross-sectional view taken from the right side of a broken-away portion of the cursor controller of Figure 3; Figure 5 is a plan view of a plate sliding member with quadrature grating facilities for detecting movement in one of the two dimensions of movement of the cursor controller of Figure 3;
Figure 6 is a cross-sectional view taken from the front of a portion of the quadrature grating detection facilities of Figure 5; Figure 7 is a horizontal cross-sectional diagram showing the construction of gratings employed in a stationary member and a movable plate member of Figures 5 and 6; and
Figure 8 is a view of the plate sliding member showing the force feedback circuit actuator.
DETAILED DESCRIPTION Exemplary embodiments are described herein with reference to specific configurations. Those skilled in the art will appreciate that various changes and modifications can be made to the exemplary embodiments while remaining within the scope of the present invention.
1. Computer System
A first embodiment is described with reference to Figures 1 A-B. Figure 1A depicts a computer system 10 according to one embodiment of the invention. Similar computer systems are described in U.S. Patent Nos. 4,935,728 and 5,771,037, incorporated herein by reference.
Computer system 10 includes a computer 12 that has a central processing unit (CPU) 14, a memory 16, a network interface 18 and user interface 20. Computer 12 is capable of running operating system software and operates device drivers that interpret signals from devices attached to the user interface 20. A keyboard, display, 34 and cursor controller (cursor controller) 50 are all part of the user interface, and are coupled to computer 12 via cables 38a, 38b and 38c. Cable 38a is a standard 101 keyboard cable. Cable 38b is a serial cable (e.g. RS-232), a special mouse connector
cable (e.g. PS/2 mouseport), a Mac ADB bus cable, a bus mouse cable or other type cable. Cursor controller 50 transmits puck position signals over cable 38b to computer 12 and receives force feedback signals over cable 38b from computer 12. Cable 38c is a VGA or SVGA video type cable. Display 34 has a cursor 36 shown as an arrow. The cursor 36 can be any of a variety of cursors including a character or a highlighted menu item. When the cursor controller 50 is manipulated, the cursor 36 moves on the display 34.
Figure IB depicts a computer system with a keyboard having an integrated cursor controller 50. Cursor controller 50 transmits puck position signals over cable 38a to computer 12 and receives force feedback signals over cable 38a from computer 12.
Figure 2 shows a functional block diagram of the signals that are generated by the cursor controller and the computer. The cursor controller includes a position encoder 52 that provides a position signal to the computer. The computer provides a force feedback signal to force feedback circuit 54 to cause the cursor controller to generate a force feedback to the user.
2. Cursor Controller Structure
The cursor controller 50, as shown in Figures 1-4 includes a puck 64, which may be gripped by the user's fingers, and moved within a rectangular or square horizontal area of movement, such as a 1 inch square horizontal area having a 323 by 323 optical grid. The puck 64 includes a molded handle member 66 supported by a tubular stem 70 extending upward from a slidable cover plate 72. A switch button 78 is provided at a forward end of the handle member 66. Of course, multiple switch buttons can also be provided.
The stem 70 extends through the slide plate 72 and into respective slots 116 and 118 in the lower and upper plate members 108 and 110. The lower plate member 108 is retained by walls of the housing 106 for sliding motion in one orthogonal direction 120, see Figure 2, while the other plate member 110 is retained within the housing 106 for sliding motion in the direction 122. When the puck 64 is moved in the direction 122, the lower portion 114 of the member 72 slides freely within the slot 116, and when the puck 64 is moved in the direction 120, the lower portion 114 slides within the slot 118. The housing 106, as well as the leads of the electrical components
contained within the housing 106 are suitably mounted on a printed circuit board 130 which is in turn mounted in an enclosure 132. The top wall 134 of the enclosure 132 contains a square opening 136 through which the stem 70 projects. The horizontal planar area of movement of the stem 70 is determined by the opening 136 formed in the top of the housing 106. A more detailed description of the structure and operation is contained in U.S. Patent No. 4,935,728.
Each of the sliding plate members 108 and 110, as shown for the plate member 110 in Figures 5-8 has an extended head portion 140 and an extended arm portion 111. The head portion 140 contains an elongated groove 142 extending parallel to the direction 122 and into which extend a pair of photodiodes 144 and 146. A stationary member 150, also mounted in the pointer housing, has a recess 152 with a pair of light sensors or photo transistors 154 and 156 mounted therein in alignment with the respective LEDs 144 and 146. The head portion 140 has an outer wall 160 extending parallel to the direction 122, while the stationary member 150 contains a wall 162 extending parallel and adjacent the wall 160. Gratings are created in the walls 160 and 162 for detecting puck movement by modulating light from the LEDs 144 and 146 to generate quadrature related signals from the phototransistors 154 and 156. Gratings in the walls 160 and 162 in the present embodiment are formed by molded undulations in the outer surfaces of the walls which are formed from a transparent plastic material, such as polycarbonate. As shown in Figure 7, these undulations include valleys 164, first sloping side surfaces 166, hill top surfaces 168 and second sloping side surfaces 170, with the surfaces 164, 166, 168 and 170 being elongated or running vertically. The dimensions of the surfaces 164, 166, 168 and 170 extending in the direction 122 are all equal, except for one valley surface 172 formed in the wall 162 of the stationary member 150 between the photosensors 154 and 156; this wall portion 172 has a dimension in the direction 122 which is one-half of the dimension of the surfaces 164, 166, 168 and 170 in the direction 122 to thus form two gratings, which are phase- shifted 90 degree(s) relative to each other, on the member 162. As an example, 80 gratings per inch are satisfactory to provide good cursor control, while up to 1100 or more gratings per inch can be constructed if extremely fine control is desired.
Light passing through the wall 160 from the LEDs 144 and 146 is internally reflected when it strikes one of the sloping surfaces 166 or 170, but passes through the valley and hilltop surfaces 164 and 168 which are parallel to the direction 122 and
perpendicular to the direction of light emitted by the LEDs 144 and 146. Light that passes through the wall 160 and is emitted from the surfaces 164 and 168 is partially reflected and partially refracted if it strikes one of the sloping surfaces 166 or 170 of the wall 162, but passes through the wall 162 to the corresponding phototransistor 154 and 156 if the light impinges upon one of the valley surface 164 or hill top surface 168 of the stationary member wall 162. Due to the light reflection and refraction, movement of the wall 160 in the direction 122 causes the light impinging upon the light sensors 154 and 156 to be modulated. Since the surfaces 164, 166, 168 and 170 of the member 162 in line with the light sensor 154 from the LED 144 are 90 degree(s) out of phase relative to the corresponding surfaces of the wall 162 in front of the phototransistor 156, the signals generated by the sensors 154 and 156 by movement of the slide member 110 will be 90 degree(s) out of phase with each other. One complete cycle is defined by a valley surface 164 and a first sloping side surface 166 passing a point while a second complete cycle will occur when the succeeding hill top and second sloping surface pass the point. A more detailed description of the structure and operation is contained in U.S. Patent No. 4,935,728.
Referring to Figure 8, the force feedback structure includes the arm 111 on which a fixed magnet 180 is mounted. A conductive coil 182 is positioned around the arm 111 and magnet 180. Current in the conductive coil 182 is controller by force feedback circuit 54. As the puck 64 is moved back and forth through its range of motion 122, the magnet 180 moves back and forth in the coil 182. In one embodiment, the magnet is always within the coil. In another embodiment, magnet 180 is a conductive coil in which the current is controlled by force feedback circuit 54. In operation, the computer 12 knows the position of the cursor 36 on the display 34. When the computer 12 determines that the cursor is at a predetermined location associated with cursor controller feedback, the computer 12 sends a force feedback signal to the force feedback circuit 54 to deliver a current into coil 182 and cause a magnetic field in the coil. When the magnetic field is formed in the coil, the magnet 180 responds by wanting to escape the coil 182 in one of directions 122. The direction depends on the polarity of the induced current. When the coil's magnetic polarity is in a first direction, the magnet will want to escape in a first direction and when the coil's magnetic polarity is in the opposite direction, the magnet will want to
escape in the opposite direction. The coil can be induced with varied amounts of current, thereby causing varied amounts of force on the magnet 180.
Since there are two sliding plate members 108 and 110, there is an arm 109 and 111 with a magnet on each sliding plate member and a coil around each arm. This allows the cursor controller to sense X and Y position information and the coil allow the cursor controller to provide X and Y force feedback. The feedback is provided by the force feedback circuit 54 which generates the current i in a direction and with a magnitude that is responsive to the force feedback signal from the computer 12.
3. Examples of Operation
One example of operation is used with Microsoft Windows. With a conventional mouse controller, the cursor freely moves across the display over windows and icons. With the invention, as the computer senses the cursor moving across window boundaries and over icons, the computer sends a force feedback signal to the cursor controller to cause a feedback signal to the user. This is a great advantage to users who want to rely on tactile feel for confirmation that the cursor is within a window or on an icon. Moreover, this feature is a great advantage to disabled people who have impaired sight. The tactile feedback provides confirmation that the cursor is within the window boundary or has moved to a different window without the need to see the cursor.
A second example is used with a spreadsheet program. As the cursor moves across the display over cells, the computer senses the cursor moving across cell boundaries and sends a force feedback signal to the cursor controller to cause a feedback signal to the user. This is a great advantage to users who want to rely on tactile feel for movement of the cursor across cells. Moreover, this feature is a great advantage to disabled people who have impaired sight. The tactile feedback provides confirmation that the cursor has moved a predetermined number of cells without the need to see the cursor.
A third example is used with macro procedures as described in U.S. Pat. Nos. 4,935,728 and 5,771,037. As the cursor moves toward the edge of the display, the computer senses the cursor movement at the macro regions of the display and sends a force feedback signal to the cursor controller to cause a feedback signal to the user. This is a great advantage to users who want to rely on tactile feel for movement of the
cursor at the macro regions. Moreover, this feature is a great advantage to disabled people who have impaired sight. The tactile feedback provides confirmation that the cursor is over a predetermined macro procedure without the need to see the cursor.
4. Conclusion
Advantages of the present invention include the ability to accurately determine controller position and the ability to provide force feedback to the user.
Having disclosed exemplary embodiments and the best mode, modifications and variations may be made to the disclosed embodiments while remaining within the scope of the present invention as defined by the following claims.