Patent Document

CROSS-REFERENCE TO RELATED APPLICATIONS 
   This application is a continuation of U.S. application Ser. No. 09/852,401, filed May 9, 2001, now U.S. Pat. No. 7,023,423 which is a continuation of U.S. application Ser. No. 08/870,956, now U.S. Pat. No. 6,246,390, filed Jun. 6, 1997, which is a continuation of U.S. application Ser. No. 08/374,288, now U.S. Pat. No. 5,731,804, filed Jan. 18, 1995, the entirety of which are incorporated herein by reference in their entirety. 

   BACKGROUND 
   The present invention relates generally to interface devices between humans and computers, and more particularly to computer input devices having three-dimensional input. 
   Virtual reality computer systems provide users with the illusion that they are part of a “virtual” environment. A virtual reality system will typically include a computer processor, such as a personal computer or workstation, specialized virtual reality software, and virtual reality I/O devices such as head mounted displays, sensor gloves, three dimensional (“3D”) pointers, etc. 
   One common use for virtual reality computer systems is for training. In many fields, such as aviation and vehicle and systems operation, virtual reality systems have been used successfully to allow a user to learn from and experience a realistic “virtual” environment. The appeal of using virtual reality computer systems for training relates, in part, to the ability of such systems to allow trainees the luxury of confidently operating in a highly realistic environment and making mistakes without “real world” consequences. Thus, for example, a trainee pilot or automobile driver can learn to operate a vehicle using a virtual reality simulator without concern for accidents that would cause injury, death and/or property damage in the real world. Similarly, operators of complex systems, e.g., nuclear power plants and weapons systems, can safely practice a wide variety of training scenarios that would risk life or property if performed in reality. 
   For example, a virtual reality computer system can allow a doctor-trainee or other human operator or user to “manipulate” a scalpel or probe within a computer-simulated “body”, and thereby perform medical procedures on a virtual patient. In this instance, the I/O device which is typically a 3D pointer, stylus, or the like is used to represent a surgical instrument such as a scalpel or probe. As the “scalpel” or “probe” moves within a provided space or structure, results of such movement are updated and displayed in a body image displayed on the screen of the computer system so that the operator can gain the experience of performing such a procedure without practicing on an actual human being or a cadaver. 
   In other applications, virtual reality computers systems allow a user to handle and manipulate the controls of complicated and expensive vehicles and machinery. For example, a pilot or astronaut in training can operate a fighter aircraft or spacecraft by manipulating controls such as a control joystick and other buttons and view the results of controlling the aircraft on a virtual reality simulation of the aircraft flying. In yet other applications, a user can manipulate objects and tools in the real world, such as a stylus, and view the results of the manipulation in a virtual reality world with a “virtual stylus” viewed on a screen, in 3-D goggles, etc. 
   For virtual reality systems to provide a realistic (and therefore effective) experience for the user, sensory feedback and manual interaction should be as natural as possible. As virtual reality systems become more powerful and as the number of potential applications increases, there is a growing need for specific human/computer interface devices which allow users to interface with computer simulations with tools that realistically emulate the activities being represented within the virtual simulation. Such procedures as laparoscopic surgery, catheter insertion, and epidural analgesia should be realistically simulated with suitable human/computer interface devices if the doctor is to be properly trained. Similarly, a user should be provided with a realistic interface for manipulating controls or objects in a virtual reality simulation to gain useful experience. 
   While the state of the art in virtual simulation and medical imaging provides a rich and realistic visual feedback, there is a great need for new human/computer interface tools which allow users to perform natural manual interactions with the computer simulation. For medical simulation, there is a strong need to provide doctors with a realistic mechanism for performing the manual activities associated with medical procedures while allowing a computer to accurately keep track of their actions. There is also a need in other simulations to provide virtual reality users with accurate and natural interfaces for their particular tasks. 
   In addition to sensing and tracking a user&#39;s manual activity and feeding such information to the controlling computer to provide a 3D visual representation to the user, a human interface mechanism should also provide force or tactile (“haptic”) feedback to the user. The need for the user to obtain realistic tactile information and experience tactile sensation is extensive in many kinds of simulation. For example, in medical/surgical simulations, the “feel” of a probe or scalpel simulator is important as the probe is moved within the simulated body. It would invaluable to a medical trainee to learn how an instrument moves within a body, how much force is required depending on the operation performed, the space available in a body to manipulate an instrument, etc. In simulations of vehicles or equipment, force feedback for controls such as a joystick can be necessary to realistically teach a user the force required to move the joystick when steering in specific situations, such as in a high acceleration environment of an aircraft. In virtual world simulations where the user can manipulate objects, force feedback is necessary to realistically simulate physical objects; for example, if a user touches a pen to a table, the user should feel the impact of the pen on the table. An effective human interface not only acts as an input device for tracking motion, but also as an output device for producing realistic tactile sensations. A “high bandwidth” interface system, which is an interface that accurately responds to signals having fast changes and a broad range of frequencies as well as providing such signals accurately to a control system, is therefore desirable in these and other applications. 
   There are number of devices that are commercially available for interfacing a human with a computer for virtual reality simulations. There are, for example, such 2-dimensional input devices such as mice, trackballs, and digitizing tablets. However, 2-dimensional input devices tend to be awkward and inadequate to the task of interfacing with 3-dimensional virtual reality simulations. 
   Other 3-dimensional interface devices are available. A 3-dimensional human/computer interface tool sold under the trademark Immersion PROBE.TM. is marketed by Immersion Human Interface Corporation of Santa Clara, Calif., and allows manual control in 3-dimensional virtual reality computer environments. A pen-like stylus allows for dexterous 3-dimensional manipulation, and the position and orientation of the stylus is communicated to a host computer. The Immersion PROBE has six degrees of freedom which convey spatial coordinates (x, y, z) and orientation (roll, pitch, yaw) of the stylus to the host computer. 
   While the Immersion PROBE is an excellent 3-dimensional interface tool, it may be inappropriate for certain virtual reality simulation applications. For example, in some of the aforementioned medical simulations three or four degrees of freedom of a 3-dimensional human/computer interface tool is sufficient and, often, more desirable than five or six degrees of freedom because it more accurately mimics the real-life constraints of the actual medical procedure. More importantly, the Immersion PROBE does not provide force feedback to a user and thus does not allow a user to experience an entire sensory dimension in virtual reality simulations. 
   In typical multi-degree of freedom apparatuses that include force feedback, there are several disadvantages. Since actuators which supply force feedback tend to be heavier and larger than sensors, they would provide inertial constraints if added to a device such as the Immersion PROBE. There is also the problem of coupled actuators. In a typical force feedback device, a serial chain of links and actuators is implemented to achieve multiple degrees of freedom in a desired object positioned at the end of the chain, i.e., each actuator is coupled to the previous actuator. The user who manipulates the object must carry the inertia of all of the subsequent actuators and links except for the first actuator in the chain, which is grounded. While it is possible to ground all of the actuators in a serial chain by using a complex transmission of cables or belts, the end result is a low stiffness, high friction, high damping transmission which corrupts the bandwidth of the system, providing the user with an unresponsive and inaccurate interface. These types of interfaces also introduce tactile “noise” to the user through friction and compliance in signal transmission and limit the degree of sensitivity conveyed to the user through the actuators of the device. 
   Other existing devices provide force feedback to a user. In U.S. Pat. No. 5,184,319, by J. Kramer, an interface is described which provides force and texture information to a user of a computer system. The interface consists of an glove or “exoskeleton” which is worn over the user&#39;s appendages, such as fingers, arms, or body. Forces can be applied to the user&#39;s appendages using tendon assemblies and actuators controlled by a computer system to simulate force and textual feedback. However, the system described by Kramer is not easily applicable to simulation environments such as those mentioned above where an object is referenced in 3D space and force feedback is applied to the object. The forces applied to the user in Kramer are with reference to the body of the user; the absolute location of the user&#39;s appendages are not easily calculated. In addition, the exoskeleton devices of Kramer can be cumbersome or even dangerous to the user if extensive devices are worn over the user&#39;s appendages. Furthermore, the devices disclosed in Kramer are complex mechanisms in which many actuators must be used to provide force feedback to the user. 
   Therefore, a less complex, more compact, and less expensive alternative to a human/computer interface tool having force feedback, lower inertia, higher bandwidth, and less noise is desirable for certain applications. 
   SUMMARY OF THE INVENTION 
   The present invention provides a human/computer interface apparatus which can provide from two to six degrees of freedom and highly realistic force feedback to a user of the apparatus. The preferred apparatus includes a gimbal mechanism and linear axis member which provide three degrees of freedom to an object coupled to the apparatus and held by the user. The structure of the apparatus permits transducers to be positioned such that their inertial contribution to the system is very low. In addition, a capstan drive mechanism provides mechanical advantage in applying force feedback to the user, smooth motion, and reduction of friction, compliance, and backlash of the system. The present invention is particularly well suited to simulations of medical procedures using specialized tools and moving an object such as a stylus or joystick in three-dimensional simulations. 
   An apparatus of the present invention for interfacing the motion of an object with an electrical system includes a gimbal mechanism that provides two revolute degrees of freedom to an object about two axes of rotation. In the preferred embodiment, the gimbal mechanism is a closed loop five-member linkage including a ground member coupled to a ground surface, first and second extension members, each being coupled to the ground member, and first and second central members, the first central member having an end coupled to the first extension member and the second central member having an end coupled to the second extension member. 
   A linear axis member is coupled to the gimbal mechanism at the intersection of the two central members, which is at the intersection of the two axes of rotation. The linear axis member is capable of being translated along a third axis to provide a third degree of freedom. The user object is coupled to the linear axis member and is thus translatable along the third axis so that the object can be moved along all three degrees of freedom. Transducers are also coupled between members of the gimbal mechanism and linear axis member to provide an electromechanical interface between the object and the electrical system. 
   In one embodiment, the linear axis member can be rotated about its lengthwise axis to provide a fourth degree of freedom. Four transducers are preferably provided, each transducer being associated with a degree of freedom. The transducers for the first three degrees of freedom include sensors and actuators, and the transducer for the fourth degree of freedom preferably includes a sensor. The sensors are preferably digital encoders and the actuators are basket wound DC servo motors. The sensors sense the positions of the object along the respective degrees of freedom and provide the sensory information to a digital processing system such as a computer. The actuators impart forces along the respective degrees of freedom in response to electrical signals produced by the computer. 
   In the preferred embodiment, a capstan drive mechanism is coupled between an actuator and the gimbal mechanism for each degree of freedom of the gimbal mechanism. The capstan drive mechanism transmits the force generated by the transducer to the gimbal mechanism and transmits any forces generated by the user on the gimbal mechanism to the transducer. In addition, a capstan drive mechanism is preferably used between the linear axis member and a transducer to transmit force along the third degree of freedom. The capstan drive mechanisms each preferably include a rotating capstan drum rotatably coupled to the gimbal mechanism, where the capstan drum is coupled to a pulley by a cable and the transducer is coupled to the pulley. 
   In another embodiment, a floating gimbal mechanism is coupled to the linear axis member to provide fifth and sixth degrees of freedom to an object coupled to the floating gimbal mechanism. Fifth and sixth degree of freedom transducers are coupled to the floating gimbal mechanism to sense the position of the object along the fifth and sixth degrees of freedom. In one embodiment, the handle or grip of a medical tool such as a laparoscope is used as the object in a medical procedure simulation. In other embodiments, a stylus or a joystick is used as the object. 
   The gimbal mechanism of the present invention provides a structure allowing transducers associated with two degrees of freedom to be decoupled from each other and instead be coupled to a ground surface. This allows the weight of the transducers to contribute a negligible inertia to the system, providing a low friction, high bandwidth motion system. The addition of a linear axis member and transducer positioned near the center of rotation of the gimbal mechanism allows a third degree of freedom to be added with minimal inertia. The present invention also includes capstan drive mechanisms coupled between the transducers and moving components of the apparatus. The capstan drive provides mechanical advantage while allowing smooth movement to be achieved and providing negligible friction and backlash to the system. These advantages allow a computer system to have more complete and realistic control over force feedback sensations experienced by a user of the apparatus. 
   These and other advantages of the present invention will become apparent to those skilled in the art upon a reading of the following specification of the invention and a study of the several figures of the drawing. 

   
     BRIEF DESCRIPTION OF THE DRAWINGS 
       FIG. 1  is a perspective view of a virtual reality system which employs an apparatus of the present invention to interface a laparoscope tool handle with a computer system; 
       FIG. 2  is a schematic diagram of a mechanical apparatus of the present invention for providing mechanical input and output to a computer system; 
       FIG. 3  is a perspective front view of a preferred embodiment of the mechanical apparatus of  FIG. 2 ; 
       FIG. 4  is a perspective rear view of the embodiment of the mechanical apparatus of  FIG. 3 ; 
       FIG. 5  is a perspective detailed view of a capstan drive mechanism used for two degrees of motion in the present invention; 
       FIG. 5   a  is a side elevational view of the capstan drive mechanism shown in  FIG. 5 ; 
       FIG. 5   b  is a detailed side view of a pulley and cable of the capstan drive mechanism of  FIG. 5 ; 
       FIG. 6  is a perspective view of a center capstan drive mechanism for a linear axis member of the mechanical apparatus shown in  FIG. 3 ; 
       FIG. 6   a  is a cross sectional top view of a pulley and linear axis member used in the capstan drive mechanism of  FIG. 6 ; 
       FIG. 6   b  is a cross sectional side view of the linear axis member and transducer shown in  FIG. 6 ; 
       FIG. 7  is a perspective view of an embodiment of the apparatus of  FIG. 2  having a stylus object for the user; 
       FIG. 8  is a perspective view of an embodiment of the apparatus of  FIG. 2  having a joystick object for the user; 
       FIG. 9  is a block diagram of a computer and the interface between the computer and the mechanical apparatus of  FIG. 2 ; 
       FIG. 10  is a schematic diagram of a suitable circuit for a digital to analog controller of the interface of  FIG. 9 ; and 
       FIG. 11  is a schematic diagram of a suitable power amplification circuit for powering the actuators of the present invention as shown in  FIG. 9 . 
   

   DETAILED DESCRIPTION 
   In  FIG. 1 , a virtual reality system  10  used to simulate a medical procedure includes a human/computer interface apparatus  12 , an electronic interface  14 , and a computer  16 . The illustrated virtual reality system  10  is directed to a virtual reality simulation of a laparoscopic surgery procedure. The software of the simulation is not a part of this invention and thus will not be discussed in any detail. However, such software is commercially available as, for example, Teleos.TM. from High Techsplanations of Rockville, Md. Suitable software drivers which interface such simulation software with computer input/output (I/O) devices are available from Immersion Human Interface Corporation of Santa Clara, Calif. 
   The handle  26  of a laparoscopic tool  18  used in conjunction with the present invention is manipulated by an operator and virtual reality images are displayed on a screen  20  of the digital processing system in response to such manipulations. Preferably, the digital processing system is a personal computer or workstation, such as an IBM-PC AT or Macintosh personal computer, or a SUN or Silicon Graphics workstation. Most commonly, the digital processing system is a personal computer which operates under the MS-DOS operating system in conformance with in IBM PC AT standard. 
   The human/interface apparatus  12  as illustrated herein is used to simulate a laparoscopic medical procedure. In addition to the handle of a standard laparoscopic tool  18 , the human/interface apparatus  12  may include a barrier  22  and a standard laparoscopic trocar  24  (or a facsimile of a trocar). The barrier  22  is used to represent portion of the skin covering the body of a patient. Trocar  24  is inserted into the body of the virtual patient to provide an entry and removal point from the body of the patient for the laparoscopic tool  18 , and to allow the manipulation of the laparoscopic tool. Laparoscopic tools and trocars  24  are commercially available from sources such as U.S. Surgical of Connecticut. Barrier  22  and trocar  24  can be omitted from apparatus  12  in other embodiments. Preferably, the laparoscopic tool  18  is modified, in the preferred embodiment, the shaft is replaced by a linear axis member of the present invention, as described below. In other embodiments, the end of the shaft of the tool (such as any cutting edges) can be removed. The end of the laparoscopic tool  18  is not required for the virtual reality simulation, and is removed to prevent any potential damage to persons or property. An apparatus  25  for interfacing mechanical input and output is shown within the “body” of the patient in phantom lines. 
   The laparoscopic tool  18  includes a handle or “grip” portion  26  and a shaft portion  28 . The shaft portion is an elongated mechanical object and, in particular, is an elongated cylindrical object, described in greater detail below. In one embodiment, the present invention is concerned with tracking the movement of the shaft portion  28  in three-dimensional space, where the movement has been constrained such that the shaft portion  28  has only three or four free degrees of motion. This is a good simulation of the real use of a laparoscopic tool  18  in that once it is inserted into a trocar  24  and through the gimbal apparatus  25 , it is limited to about four degrees of freedom. More particularly, the shaft  28  is constrained at some point of along its length such that it can move with four degrees of freedom within the patient&#39;s body. 
   While one embodiment of the present invention will be discussed with reference to the laparoscopic tool  18 , it will be appreciated that a great number of other types of objects can be used with the method and apparatus of the present invention. In fact, the present invention can be used with any mechanical object where it is desirable to provide a human/computer interface with three to six degrees of freedom. Such objects may include endoscopic or other similar surgical tools used in medical procedures, catheters, hypodermic needles, wires, fiber optic bundles, styluses, joysticks, screw drivers, pool cues, etc. Some of these other objects are described in detail subsequently. 
   The electronic interface  14  is a component of the human/computer interface apparatus  12  and couples the apparatus  12  to the computer  16 . More particularly, interface  14  is used in preferred embodiments to couple the various actuators and sensors contained in apparatus  12  (which actuators and sensors are described in detail below) to computer  16 . A suitable interface  14  is described in detail with reference to  FIG. 9 . 
   The electronic interface  14  is coupled to mechanical apparatus  25  of the apparatus  12  by a cable  30  and is coupled to the computer  16  by a cable  32 . In other embodiments, signal can be sent to and from interface  14  and computer  16  by wireless transmission and reception. In some embodiments of the present invention, interface  14  serves solely as an input device for the computer  16 . In other embodiments of the present invention, interface  14  serves solely as an output device for the computer  16 . In preferred embodiments of the present invention, the interface  14  serves as an input/output (I/O) device for the computer  16 . 
   In  FIG. 2 , a schematic diagram of mechanical apparatus  25  for providing mechanical input and output in accordance with the present invention is shown. Apparatus  25  includes, a gimbal mechanism  38  and a linear axis member  40 . A user object  44  is preferably coupled to linear axis member  40 . 
   Gimbal mechanism  38 , in the described embodiment, provides support for apparatus  25  on a grounded surface  56  (schematically shown as part of member  46 ). Gimbal mechanism  38  is preferably a five-member linkage that includes a ground member  46 , extension members  48   a  and  48   b , and central members  50   a  and  50   b . Ground member  46  is coupled to a base or surface which provides stability for apparatus  25 . Ground member  46  is shown in  FIG. 2  as two separate members coupled together through grounded surface  56 . The members of gimbal mechanism  38  are rotatably coupled to one another through the use of bearings or pivots, wherein extension member  48   a  is rotatably coupled to ground member  46  and can rotate about an axis A, central member  50   a  is rotatably coupled to extension member  48   a  and can rotate about a floating axis D, extension member  48   b  is rotatably coupled to ground member  46  and can rotate about axis B, central member  50   b  is rotatably coupled to extension member  48   b  and can rotate about floating axis E, and central member  50   a  is rotatably coupled to central member  50   b  at a center point P at the intersection of axes D and E. The axes D and E are “floating” in the sense that they are not fixed in one position as are axes A and B. Axes A and B are substantially mutually perpendicular. As used herein, “substantially perpendicular” will mean that two objects or axis are exactly or almost perpendicular, i.e. at least within five degrees or ten degrees of perpendicular, or more preferably within less than one degree of perpendicular. Similarly, the term “substantially parallel” will mean that two objects or axis are exactly or almost parallel, i.e. are at least within five or ten degrees of parallel, and are preferably within less than one degree of parallel. 
   Gimbal mechanism  38  is formed as a five member closed chain. Each end of one member is coupled to the end of a another member. The five-member linkage is arranged such that extension member  48   a , central member  50   a , and central member  50   b  can be rotated about axis A in a first degree of freedom. The linkage is also arranged such that extension member  48   b , central member  50   b , and central member  50   a  can be rotated about axis B in a second degree of freedom. 
   Linear axis member  40  is preferably an elongated rod-like member which is coupled to central member  50   a  and central member  50   b  at the point of intersection P of axes A and B. As shown in  FIG. 1 , linear axis member  40  can be used as shaft  28  of user object  44 . In other embodiments, linear axis member  40  is coupled to a different object. Linear axis member  40  is coupled to gimbal mechanism  38  such that it extends out of the plane defined by axis A and axis B. Linear axis member  40  can be rotated about axis A by rotating extension member  48   a , central member  50   a , and central member  50   b  in a first revolute degree of freedom, shown as arrow line  51 . Member  40  can also be rotated about axis B by rotating extension member  50   b  and the two central members about axis B in a second revolute degree of freedom, shown by arrow line  52 . Being also translatably coupled to the ends of central members  50   a  and  50   b , linear axis member  40  can be linearly moved along floating axis C, providing a third degree of freedom as shown by arrows  53 . Axis C can, of course, be rotated about one or both axes A and B as member  40  is rotated about these axes. 
   Also preferably coupled to gimbal mechanism  38  and linear axis member  40  are transducers, such as sensors and actuators. Such transducers are preferably coupled at the link points between members of the apparatus and provide input to and output from an electrical system, such as computer  16 . Transducers that can be used with the present invention are described in greater detail with respect to  FIG. 2 . 
   User object  44  is coupled to apparatus  25  and is preferably an interface object for a user to grasp or otherwise manipulate in three dimensional (3D) space. One preferred user object  44  is the grip  26  of a laparoscopic tool  18 , as shown in  FIG. 1 . Shaft  28  of tool  18  can be implemented as part of linear axis member  40 . Other examples of user objects are described in subsequent embodiments. User object  44  may be moved in all three degrees of freedom provided by gimbal mechanism  38  and linear axis member  40  and additional degrees of freedom as described below. As user object  44  is moved about axis A, floating axis D varies its position, and as user object  44  is moved about axis B, floating axis E varies its position. 
     FIGS. 3 and 4  are perspective views of a specific embodiment of a mechanical apparatus  25 ′ for providing mechanical input and output to a computer system in accordance with the present invention.  FIG. 3  shows a front view of apparatus  25 ′, and  FIG. 4  shows a rear view of the apparatus. Apparatus  25 ′ includes a gimbal mechanism  38 , a linear axis member  40 , and transducers  42 . A user object  44 , shown in this embodiment as a laparoscopic instrument having a grip portion  26 , is coupled to apparatus  25 ′. Apparatus  25 ′ operates in substantially the same fashion as apparatus  25  described with reference to  FIG. 2 . 
   Gimbal mechanism  38  provides support for apparatus  25 ′ on a grounded surface  56 , such as a table top or similar surface. The members and joints (“bearings”) of gimbal mechanism  38  are preferably made of a lightweight, rigid, stiff metal, such as aluminum, but can also be made of other rigid materials such as other metals, plastic, etc. Gimbal mechanism  38  includes a ground member  46 , capstan drive mechanisms  58 , extension members  48   a  and  48   b , central drive member  50   a , and central link member  50   b . Ground member  46  includes a base member  60  and vertical support members  62 . Base member  60  is coupled to grounded surface  56  and provides two outer vertical surfaces  61  which are in a substantially perpendicular relation which each other. A vertical support member  62  is coupled to each of these outer surfaces of base member  60  such that vertical members  62  are in a similar substantially 90-degree relation with each other. 
   A capstan drive mechanism  58  is preferably coupled to each vertical member  62 . Capstan drive mechanisms  58  are included in gimbal mechanism  38  to provide mechanical advantage without introducing friction, and backlash to the system. A capstan drum  59  of each capstan drive mechanism is rotatably coupled to a corresponding vertical support member  62  to form axes of rotation A and B, which correspond to axes A and B as shown in  FIG. 1 . The capstan drive mechanisms  58  are described in greater detail with respect to  FIG. 5 . 
   Extension member  48   a  is rigidly coupled to capstan drum  59  and is rotated about axis A as capstan drum  59  is rotated. Likewise, extension member  48   b  is rigidly coupled to the other capstan drum  59  and can be rotated about axis B. Both extension members  48   a  and  48   b  are formed into a substantially 90-degree angle with a short end  49  coupled to capstan drum  59 . Central drive member  50   a  is rotatably coupled to a long end  51  of extension member  48   a  and extends at a substantially parallel relation with axis B. Similarly, central link member  50   b  is rotatably coupled to the long end of extension member  48   b  and extends at a substantially parallel relation to axis A (as better viewed in  FIG. 4 ). Central drive member  50   a  and central link member  50   b  are rotatably coupled to each other at the center of rotation of the gimbal mechanism, which is the point of intersection P of axes A and B. Bearing  64  connects the two central members  50   a  and  50   b  together at the intersection point P. 
   Gimbal mechanism  38  provides two degrees of freedom to an object positioned at or coupled to the center point P of rotation. An object at or coupled to point P can be rotated about axis A and B or have a combination of rotational movement about these axes. 
   Linear axis member  40  is a cylindrical member that is preferably coupled to central members  50   a  and  50   b  at intersection point P. In alternate embodiments, linear axis member  40  can be a non-cylindrical member having a cross-section of, for example, a square or other polygon. Member  40  is positioned through the center of bearing  64  and through holes in the central members  50   a  and  50   b . The linear axis member can be linearly translated along axis C, providing a third degree of freedom to user object  44  coupled to the linear axis member. Linear axis member  40  can preferably be translated by a transducer  42  using a capstan drive mechanism similar to capstan drive mechanism  58 . The translation of linear axis member  40  is described in greater detail with respect to  FIG. 6 . 
   Transducers  42  are preferably coupled to gimbal mechanism  38  to provide input and output signal between mechanical apparatus  25 ′ and computer  16 . In the described embodiment, transducers  42  include two grounded transducers  66   a  and  66   b , central transducer  68 , and shaft transducer  70 . The housing of grounded transducer  66   a  is preferably coupled to vertical support member  62  and preferably includes both an actuator for providing force in or otherwise influencing the first revolute degree of freedom about axis A and a sensor for measuring the position of object  44  in or otherwise influenced by the first degree of freedom about axis A, i.e., the transducer  66   a  is “associated with” or “related to” the first degree of freedom. A rotational shaft of actuator  66   a  is coupled to a pulley of capstan drive mechanism  58  to transmit input arid output along the first degree of freedom. The capstan drive mechanism  58  is described in greater detail with respect to  FIG. 5 . Grounded transducer  66   b  preferably corresponds to grounded transducer  66   a  in function and operation. Transducer  66   b  is coupled to the other vertical support member  62  and is an actuatorlsensor which influences or is influenced by the second revolute degree of freedom about axis B. 
   Grounded transducers  66   a  and  66   b  are preferably bidirectional transducers which include sensors and actuators. The sensors are preferably relative optical encoders which provide signals to measure the angular rotation of a shaft of the transducer. The electrical outputs of the encoders are routed to computer interface  14  via buses  67   a  and  67   b  and are detailed with reference to  FIG. 9 . Other types of sensors can also be used, such as potentiometers, etc. 
   It should be noted that the present invention can utilize both absolute and relative sensors. An absolute sensor is one which the angle of the sensor is known in absolute terms, such as with an analog potentiometer. Relative sensors only provide relative angle information, and thus require some form of calibration step which provide a reference position for the relative angle information. The sensors described herein are primarily relative sensors. In consequence, there is an implied calibration step after system power-up wherein the sensor&#39;s shaft is placed in a known position within the apparatus  25 ′ and a calibration signal is provided to the system to provide the reference position mentioned above. All angles provided by the sensors are thereafter relative to that reference position. Such calibration methods are well known to those skilled in the art and, therefore, will not be discussed in any great detail herein. 
   Transducers  66   a  and  66   b  also preferably include actuators which, in the described embodiment, are linear current control motors, such as DC servo motors. These motors preferably receive current signals to control the direction and torque (force output) that is produced on a shaft; the control signals for the motor are produced by computer interface  14  on control buses  67   a  and  67   b  and are detailed with respect to  FIG. 9 . The motors may include brakes which allow the rotation of the shaft to be halted in a short span of time. A suitable transducer for the present invention including both an optical encoder and current controlled motor is a 20 W basket wound servo motor manufactured by Maxon of Burlingame, Calif. 
   In alternate embodiments, other types of motors can be used, such as a stepper motor controlled with pulse width modulation of an applied voltage, or pneumatic motors. However, the present invention is much more suited to the use of linear current controlled motors. This is because voltage pulse width modulation or stepper motor control involves the use of steps or pulses which can be felt as “noise” by the user. Such noise corrupts the virtual simulation. Linear current control is smoother and thus more appropriate for the present invention. 
   Passive actuators can also be used in transducers  66   a ,  66   b  and  68 . Magnetic particle brakes or friction brakes can be used in addition to or instead of a motor to generate a passive resistance or friction in a degree of motion. An alternate preferred embodiment only including passive actuators may not be as realistic as an embodiment including motors; however, the passive actuators are typically safer for a user since the user does not have to fight generated forces. 
   In other embodiments, all or some of transducers  42  can include only sensors to provide an apparatus without force feedback along designated degrees of freedom. Similarly, all or some of transducers  42  can be implemented as actuators without sensors to provide only force feedback. 
   Central transducer  68  is coupled to central drive member  50   a  and preferably includes an actuator for providing force in the linear third degree of freedom along axis C and a sensor for measuring the position of object  44  along the third degree of freedom. The rotational shaft of central transducer  68  is coupled to a translation interface coupled to central drive member  50   a  which is described in greater detail with respect to  FIG. 6 . In the described embodiment, central transducer  68  is an optical encoder and DC servo motor combination similar to the actuators  66   a  and  66   b  described above. 
   The transducers  66   a ,  66   b  and  68  of the described embodiment are advantageously positioned to provide a very low amount of inertia to the user handling object  44 . Transducer  66   a  and transducer  66   b  are decoupled, meaning that the transducers are both directly coupled to ground member  46  which is coupled to ground surface  56 , i.e. the ground surface carries the weight of the transducers, not the user handling object  44 . The weights and inertia of the transducers  66   a  and  66   b  are thus substantially negligible to a user handling and moving object  44 . This provides a more realistic interface to a virtual reality system, since the computer can control the transducers to provide substantially all of the forces felt by the user in these degrees of motion. Apparatus  25 ′ is a high bandwidth force feedback system, meaning that high frequency signals can be used to control transducers  42  and these high frequency signals will be applied to the user object with high precision, accuracy, and dependability. The user feels very little compliance or “mushiness” when handling object  44  due to the high bandwidth. In contrast, in typical prior art arrangements of multi-degree of freedom interfaces, one actuator “rides” upon another actuator in a serial chain of links and actuators. This low bandwidth arrangement causes the user to feel the inertia of coupled actuators when manipulating an object. 
   Central transducer  68  is positioned near the center of rotation of two revolute degrees of freedom. Though the transducer  68  is not grounded, its central position permits a minimal inertial contribution to the mechanical apparatus  25 ′ along the provided degrees of freedom. A user manipulating object  44  thus will feel minimal internal effects from the weight of transducers  66   a ,  66   b  and  68 . 
   Shaft transducer  70  preferably includes a sensor and is provided in the described embodiment to measure a fourth degree of freedom for object  44 . Shaft transducer  70  is preferably positioned at the end of linear axis member  40  that is opposite to the object  44  and measures the rotational position of object  44  about axis C in the fourth degree of freedom, as indicated by arrow  72 . Shaft transducer  70  is described in greater detail with respect to  FIGS. 6 and 6   b . Preferably, shaft transducer  72  is implemented using an optical encoder similar to the encoders described above. A suitable input transducer for use in the present invention is an optical encoder model SI marketed by U.S. Digital of Vancouver, Wash. In the described embodiment, shaft transducer  70  only includes a sensor and not an actuator. This is because for typical medical procedures, which is one intended application for the embodiment shown in  FIGS. 3 and 4 , rotational force feedback to a user about axis C is typically not required to simulate actual operating conditions. However, in alternate embodiments, an actuator such as a motor can be included in shaft transducer  70  similar to transducers  66   a ,  66   b , and  68 . 
   Object  44  is shown in  FIGS. 3 and 4  as a grip portion  26  of a laparoscopic tool similar to the tool shown in  FIG. 1 . Shaft portion  28  is implemented as linear axis member  40 . A user can move the laparoscopic tool about axes A and B, and can translate the tool along axis C and rotate the tool about axis C. The movements in these four degrees of freedom will be sensed and tracked by computer system  16 . Forces can be applied preferably in the first three degrees of freedom by the computer system to simulate the tool impacting a portion of subject body, experiencing resistance moving through tissues, etc. 
   Optionally, additional transducers can be added to apparatus  25 ′ to provide additional degrees of freedom for object  44 . For example, a transducer can be added to grip  26  of laparoscopic tool  18  to sense when the user moves the two portions  26   a  and  26   b  relative to each other to simulate extending the cutting blade of the tool. Such a laparoscopic tool sensor is described in U.S. patent application Ser. No. 08/275,120, now U.S. Pat. No. 5,623,582 filed Jul. 14, 1994 and entitled “Method and Apparatus for Providing Mechanical I/O for Computer Systems” assigned to the assignee of the present invention and incorporated herein by reference in its entirety. 
     FIG. 5  is a perspective view of capstan drive mechanism  58  shown in some detail. As an example, the drive mechanism  58  coupled to extension arm  48   b  is shown; the other capstan drive  58  coupled to extension arm  48   a  is substantially similar to the mechanism presented here. Capstan drive mechanism  58  includes capstan drum  59 , capstan pulley  76 , and stop  78 . Capstan drum  59  is preferably a wedge-shaped member having leg portion  82  and a curved portion  84 . Other shapes of member  59  can also be used. Leg portion  82  is pivotally coupled to vertical support member  62  at axis B (or axis A for the opposing capstan drive mechanism). Extension member  48   b  is rigidly coupled to leg portion  82  such that when capstan drum  59  is rotated about axis B, extension member  48   b  is also rotated and maintains the position relative to leg portion  82  as shown in  FIG. 5 . Curved portion  84  couples the two ends of leg portion  82  together and is preferably formed in an arc centered about axis B. Curved portion  84  is preferably positioned such that its bottom edge  86  is about 0.030 inches above pulley  76 . 
   Cable  80  is preferably a thin metal cable connected to curved portion  84  of the capstan drum. Other types of durable cables, cords, wire, etc. can be used as well. Cable  80  is attached at a first end to curved portion  84  near an end of leg portion  82  and is drawn tautly against the outer surface  86  of curved portion  84 . Cable  80  is wrapped around pulley  76  a number of times and is then again drawn tautly against outer surface  86 . The second end of cable  80  is firmly attached to the other end of curved portion  84  near the opposite leg of leg portion  82 . The cable transmits rotational force from pulley  76  to the capstan drum  59 , causing capstan drum  59  to rotate about axis B as explained below. The cable also transmits rotational force from drum  59  to the pulley and transducer  66   b . The tension in cable  80  should be at a level so that negligible backlash or play occurs between capstan drum  59  and pulley  76 . Preferably, the tension of cable  80  can be adjusted by pulling more (or less) cable length through an end of curved portion  84 . Caps  81  on the ends of curved portion  84  can be used to easily tighten cable  80 . Each cap  81  is preferably tightly coupled to cable  80  and includes a pivot and tightening screw which allow the cap to move in a direction indicated by arrow  83  to tighten cable  80 . 
   Capstan pulley  76  is a threaded metal cylinder which transfers rotational force from transducer  66   b  to capstan drum  59  and from capstan drum  59  to transducer  66   b . Pulley  76  is rotationally coupled to vertical support member  62  by a shaft  88  (shown in  FIG. 5   a ) positioned through a bore of vertical member  62  and rigidly attached to pulley  76 . Transducer  66   b  is coupled to pulley  76  by shaft  88  through vertical support member  62 . Rotational force is applied from transducer  66   b  to pulley  76  when the actuator of transducer  66   b  rotates the shaft. The pulley, in turn, transmits the rotational force to cable  80  and thus forces capstan drum  59  to rotate in a direction about axis B. Extension member  48   b  rotates with capstan drum  59 , thus causing force along the second degree of freedom for object  44 . Note that pulley  76 , capstan drum  59  and extension member  48   b  will only actually rotate if the user is not applying the same amount or a greater amount of rotational force to object  44  in the opposite direction to cancel the rotational movement. In any event, the user will feel the rotational force along the second degree of freedom in object  44  as force feedback. 
   The capstan mechanism  58  provides a mechanical advantage to apparatus  25 ′ so that the force output of the actuators can be increased. The ratio of the diameter of pulley  76  to the diameter of capstan drum  59  (i.e. double the distance from axis B to the bottom edge  86  of capstan drum  59 ) dictates the amount of mechanical advantage, similar to a gear system. In the preferred embodiment, the ratio of drum to pulley is equal to 15:1, although other ratios can be used in other embodiments. 
   Similarly, when the user moves object  44  in the second degree of freedom, extension member  48   b  rotates about axis B and rotates capstan drum  59  about axis B as well. This movement causes cable  80  to move, which transmits the rotational force to pulley  76 . Pulley  76  rotates and causes shaft  88  to rotate, and the direction and magnitude of the movement is detected by the sensor of transducer  66   b . A similar process occurs along the first degree of freedom for the other capstan drive mechanism  58 . As described above with respect to the actuators, the capstan drive mechanism provides a mechanical advantage to amplify the sensor resolution by a ratio of drum  59  to pulley  76  (15:1 in the preferred embodiment). 
   Stop  78  is rigidly coupled to vertical support member  62  a few millimeters above curved portion  84  of capstan drum  59 . Stop  78  is used to prevent capstan drum  59  from moving beyond a designated angular limit. Thus, drum  59  is contrained to movement within a range defined by the arc length between the ends of leg portion  82 . This constrained movement, in turn, constrains the movement of object  44  in the first two degrees of freedom. In the described embodiment, stop  78  is a cylindrical member inserted into a threaded bore in vertical support member  62 . 
     FIG. 5   a  is a side elevational view of capstan mechanism  58  as shown in  FIG. 5 . Cable  80  is shown routed along the bottom side  86  of curved portion  84  of capstan drum  59 . Cable  80  is preferably wrapped around pulley  76  so that the cable is positioned between threads  90 , i.e., the cable is guided by the threads as shown in greater detail in  FIG. 5   b . As pulley  76  is rotated by transducer  66   b  or by the manipulations of the user, the portion of cable  80  wrapped around the pulley travels closer to or further from vertical support member  62 , depending on the direction that pulley  76  rotates. For example, if pulley  76  is rotated counterclockwise (when viewing the pulley as in  FIG. 5 ), then cable  80  moves toward vertical support member  62  as shown by arrow  92 . Capstan drum  59  also rotates clockwise as shown by arrow  94 . The threads of pulley  76  are used mainly to provide cable  80  with a better grip on pulley  76 . In alternate embodiments, pulley  76  includes no threads, and the high tension in cable  80  allows cable  80  to grip pulley  76 . 
   Capstan drive mechanism  58  is advantageously used in the present invention to provide transmission of forces and mechanical advantage between transducers  66   a  and  66   b  and object  44  without introducing substantial compliance, friction, or backlash to the system. A capstan drive provides increased stiffness, so that forces are transmitted with negligible stretch and compression of the components. The amount of friction is also reduced with a capstan drive mechanism so that substantially “noiseless” tactile signals can be provided to the user. In addition, the amount of backlash contributed by a capstan drive is also negligible. “Backlash” is the amount of play that occurs between two coupled rotating objects in a gear or pulley system. Two gears, belts, or other types of drive mechanisms could also be used in place of capstan drive mechanism  58  in alternate embodiments to transmit forces between transducer  66   a  and extension member  48   b . However, gears and the like typically introduce some backlash in the system. In addition, a user might be able to feel the interlocking and grinding of gear teeth during rotation of gears when manipulating object  44 ; the rotation in a capstan drive mechanism is much less noticeable. 
     FIG. 6  is a perspective view of central drive member  50   a  and linear axis member  40  shown in some detail. Central drive member  50   a  is shown in a partial cutaway view to expose the interior of member  50   a . Central transducer  68  is coupled to one side of central drive member  50   a . In the described embodiment, a capstan drive mechanism is used to transmit forces between transducer  68  and linear axis member  40  along the third degree of freedom. A rotatable shaft  98  of transducer  68  extends through a bore in the side wall of central drive member  50   a  and is coupled to a capstan pulley  100 . Pulley  100  is described in greater detail below with respect to  FIG. 6   a.    
   Linear axis member  40  preferably includes an exterior sleeve  91  and an interior shaft  93  (described with reference to  FIG. 6   b , below). Exterior sleeve  91  is preferably a partially cylindrical member having a flat  41  provided along its length. Flat  41  prevents sleeve  91  from rotating about axis C in the fourth degree of freedom described above. Linear axis member  40  is provided with a cable  99  which is secured on each end of member  40  by tension caps  101 . Cable  99  preferably runs down a majority of the length of exterior sleeve  91  on the surface of flat  41  and can be tightened, for example, by releasing a screw  97 , pulling an end of cable  99  until the desired tension is achieved, and tightening screw  97 . Similarly to the cable of the capstan mechanism described with reference to  FIG. 5 , cable  99  should have a relatively high tension. 
   As shown in  FIG. 6   a , cable  99  is wrapped a number of times around pulley  100  so that forces can be transmitted between pulley  100  and linear axis member  40 . Pulley  100  preferably includes a central axle portion  103  and end lip portions  105 . Exterior sleeve  91  is preferably positioned such that flat  41  of the sleeve is touching or is very close to lip portions  105  on both sides of axle portion  103 . The cable  99  portion around pulley  100  is wrapped around central axle portion  103  and moves along portion  103  towards and away from shaft  98  as the pulley is rotated clockwise and counterclockwise, respectively. The diameter of axle portion  103  is smaller than lip portion  105 , providing space between the pulley  100  and flat  41  where cable  99  is attached and allowing free movement of the cable. Pulley  100  preferably does not include threads, unlike pulley  76 , since the tension in cable  99  allows the cable to grip pulley  100  tightly. In other embodiments, pulley  100  can be a threaded or unthreaded cylinder similar to capstan pulley  76  described with reference to  FIG. 5 . 
   Using the capstan drive mechanism, transducer  68  can translate linear axis member  40  along axis C when the pulley is rotated by the actuator of transducer  68 . Likewise, when linear axis member  40  is translated along axis C by the user manipulating object  44 , pulley  100  and shaft  98  are rotated; this rotation is detected by the sensor of transducer  68 . The capstan drive mechanism provides low friction and smooth, rigid operation for precise movement of linear axis member  40  and accurate position measurement of the member  40 . 
   Other drive mechanisms can also be used to transmit forces to linear axis member and receive positional information from member  40  along axis C. For example, a drive wheel made of a rubber-like material or other frictional material can be positioned on shaft  98  to contact linear axis member  40  along the edge of the wheel. The wheel can cause forces along member  40  from the friction between wheel and linear axis member. Such a drive wheel mechanism is disclosed in the abovementioned application Ser. No. 08/275,12, now U.S. Pat. No. 5,623,582 well as in U.S. patent application Ser. No. 08/344,148, filed Nov. 23, 1994 and entitled “Method and Apparatus for Providing Mechanical I/O for Computer Systems Interfaced with Elongated Flexible Objects” assigned to the assignee of the present invention and incorporated herein by reference in its entirety. Linear axis member  40  can also be a single shaft in alternate embodiments instead of a dual part sleeve and shaft. 
   Referring to the cross sectional side view of member  40  and transducer  70  shown in  FIG. 6   b , interior shaft  93  is positioned inside hollow exterior sleeve  91  and is rotatably coupled to sleeve  91 . A first end  107  of shaft  93  preferably extends beyond sleeve  91  and is coupled to object  44 . When object  44  is rotated about axis C, shaft  93  is also rotated about axis C in the fourth degree of freedom within sleeve  91 . Shaft  93  is translated along axis C in the third degree of freedom when sleeve  91  is translated. Alternatively, interior shaft  93  can be coupled to a shaft of object  44  within exterior sleeve  91 . For example, a short portion of shaft  28  of laparoscopic tool  18 , as shown in  FIG. 1 , can extend into sleeve  91  and be coupled to shaft  93  within the sleeve, or shaft  28  can extend all the way to transducer  70  and functionally be used as shaft  93 . 
   Shaft  93  is coupled at its second end  109  to transducer  70 , which, in the preferred embodiment, is an optical encoder sensor. The housing  111  of transducer  70  is rigidly coupled to exterior sleeve  91  by a cap  115 , and a shaft  113  of transducer  70  is coupled to interior shaft  93  so that transducer  70  can measure the rotational position of shaft  93  and object  44 . In alternate embodiments, an actuator can also be included in transducer  70  to provide rotational forces about axis C to shaft  93 . 
     FIG. 7  is a perspective view of an alternate embodiment of the mechanical apparatus  25 ″ and user object  44  of the present invention. Mechanical apparatus  25 ″ shown in  FIG. 7  operates substantially the same as apparatus  25 ′ shown in  FIGS. 3 and 4 . User object  44 , however, is a stylus  102  which the user can grasp and move in six degrees of freedom. By “grasp”, it is meant that users may releasably engage a grip portion of the object in some fashion, such as by hand, with their fingertips, or even orally in the case of handicapped persons. Stylus  102  can be sensed and force can be applied in various degrees of freedom by a computer system and interface such as computer  16  and interface  14  of  FIG. 1 . Stylus  102  can be used in virtual reality simulations in which the user can move the stylus in 3D space to point to objects, write words, drawings, or other. images, etc. For example, a user can view a virtual environment generated on a computer screen or in 3D goggles. A virtual stylus can be presented in a virtual hand of the user. The computer system tracks the position of the stylus with sensors as the user moves it. The computer system also provides force feedback to the stylus when the user moves the stylus against a virtual desk top, writes on a virtual pad of paper, etc. It thus appears and feels to the user that the stylus is contacting a real surface. 
   Stylus  102  preferably is coupled to a floating gimbal mechanism  104  which provides two degrees of freedom in addition to the four degrees of freedom provided by apparatus  25 ′ described with reference to  FIGS. 3 and 4 . Floating gimbal mechanism  104  includes a U-shaped member  106  which is rotatably coupled to an axis member  108  by a shaft  109  so that U-shaped member  106  can rotate about axis F. Axis member  108  is rigidly coupled to linear axis member  40 . In addition, the housing of a transducer  110  is coupled to U-shaped member  106  and a shaft of transducer  110  is coupled to shaft  109 . Shaft  109  is preferably locked into position within axis member  108  so that as U-shaped member  106  is rotated, shaft  109  does not rotate. Transducer  110  is preferably a sensor, such as an optical encoder as described above with reference to transducer  70 , which measures the rotation of U-shaped member  106  about axis F in a fifth degree of freedom and provides electrical signals indicating such movement to interface  14 . 
   Stylus  102  is preferably rotatably coupled to U-shaped member  106  by a shaft (not shown) extending through the U-shaped member. This shaft is coupled to a shaft of transducer  112 , the housing of which is coupled to U-shaped member  106  as shown. Transducer  112  is preferably a sensor, such as an optical encoder as described above, which measures the rotation of stylus  102  about the lengthwise axis G of the stylus in a sixth degree of freedom. 
   In the described embodiment of  FIG. 7 , six degrees of freedom of stylus  102  are sensed. Thus, both the position (x, y, z coordinates) and the orientation (roll, pitch, yaw) of the stylus can be detected by computer  16  to provide a highly realistic simulation. Other mechanisms besides the floating gimbal mechanism  104  can be used to provide the fifth and sixth degrees of freedom. In addition, forces can be applied in three degrees of freedom for stylus  102  to provide 3D force feedback. In alternate embodiments, actuators can also be included in transducers  70 ,  110 , and  112 . However, actuators are preferably not included for the fourth, fifth, and sixth degrees of freedom in the described embodiment, since actuators are typically heavier than sensors and, when positioned at the locations of transducers  70 ,  100 , and  112 , would create more inertia in the system. In addition, the force feedback for the designated three degrees of freedom allows impacts and resistance to be simulated, which is typically adequate in many virtual reality applications. Force feedback in the fourth, fifth, and sixth degrees of freedom would allow torques on stylus  102  to be simulated as well, which may or may not be useful in a simulation. 
     FIG. 8  is a perspective view of a second alternate embodiment of the mechanical apparatus  25 ′″ and user object  44  of the present invention. Mechanical apparatus  25 ′″ shown in  FIG. 8  operates substantially the same as apparatus  25 ′ shown in  FIGS. 3 and 4 . User object  44 , however, is a joystick  112  which the user can preferably move in two degrees of freedom. Joystick  112  can be sensed and force can be applied in both degrees of freedom by a computer system and interface similar to computer system  16  and interface  14  of  FIG. 1 . In the described embodiment, joystick  112  is coupled to cylindrical fastener  64  so that the user can move the joystick in the two degrees of freedom provided by gimbal mechanism  38  as described above. Linear axis member  40  is not typically included in the embodiment of  FIG. 8 , since a joystick is not usually translated along an axis C. However, in alternate embodiments, joystick  112  can be coupled to linear axis member  40  similarly to stylus  102  as shown in  FIG. 7  to provide a third degree of freedom. In yet other embodiments, linear axis member  40  can rotate about axis C and transducer  70  can be coupled to apparatus  25 ′″ to provide a fourth degree of freedom. Finally, in other embodiments, a floating gimbal mechanism as shown in  FIG. 7 , or a different mechanism, can be added to the joystick to allow a full six degrees of freedom. 
   Joystick  112  can be used in virtual reality simulations in which the user can move the joystick to move a vehicle, point to objects, control a mechanism, etc. For example, a user can view a virtual environment generated on a computer screen or in 3D goggles in which joystick  112  controls an aircraft. The computer system tracks the position of the joystick as the user moves it around with sensors and updates the virtual reality display accordingly to make the aircraft move in the indicated direction, etc. The computer system also provides force feedback to the joystick, for example, when the aircraft is banking or accelerating in a turn or in other situations where the user may experience forces on the joystick or find it more difficult to steer the aircraft. 
     FIG. 9  is a schematic view of a computer  16  and an interface circuit  120  used in interface  14  to send and receive signals from mechanical apparatus  25 . Circuit  120  includes computer  16 , Interface card  120 , DAC  122 , power amplifier circuit  124 , digital sensors  128 , and sensor Interface  130 . Optionally included are analog sensors  132  instead of or in addition to digital sensors  128 , and ADC  134 . In this embodiment, the interface  14  between computer  16  and mechanical apparatus  25  as shown in  FIG. 1  can be considered functionally equivalent to the interface circuits enclosed within the dashed line in  FIG. 14 . Other types of interfaces  14  can also be used. For example, an electronic interface  14  is described in U.S. patent application Ser. No. 08/092,974, filed Jul. 16, 1993 and entitled “3-D Mechanical Mouse” assigned to the assignee of the present invention, which is the parent of file wrapper continuation application Ser. No. 08/461,170, now U.S. Pat. No. 5,576,727, and incorporated herein by reference in its entirety. The electronic interface described therein was designed for the Immersion PROBE.TM. 3-D mechanical mouse and has six channels corresponding to the six degrees of freedom of the Immersion PROBE. 
   Interface card  120  is preferably a card which can fit into an interface slot of computer  16 . For example, if computer  16  is an IBM AT compatible computer, interface card  14  can be implemented as an ISA or other well-known standard interface card which plugs into the motherboard of the computer and provides input and output ports connected to the main data bus of the computer. 
   Digital to analog converter (DAC)  122  is coupled to interface card  120  and receives a digital signal from computer  16 . DAC  122  converts the digital signal to analog voltages which are then sent to power amplifier circuit  124 . A DAC circuit suitable for use with the present invention is described with reference to  FIG. 10 . Power amplifier circuit  124  receives an analog low-power control voltage from DAC  122  and amplifies the voltage to control actuators  126 . Power amplifier circuit  124  is described in greater detail with reference to  FIG. 11 . Actuators  126  are preferably DC servo motors incorporated into the transducers  66   a ,  66   b , and  68 , and any additional actuators, as described with reference to the embodiments shown in  FIGS. 3 ,  7 , and  8  for providing force feedback to a user manipulating object  44  coupled to mechanical apparatus  25 . 
   Digital sensors  128  provide signals to computer  16  relating the position of the user object  44  in 3D space. In the preferred embodiments described above, sensors  128  are relative optical encoders, which are electro-optical devices that respond to a shaft&#39;s rotation by producing two phase-related signals. In the described embodiment, sensor interface circuit  130 , which is preferably a single chip, receives the signals from digital sensors  128  and converts the two signals from each sensor into another pair of clock signals, which drive a bi-directional binary counter. The output of the binary counter is received by computer  16  as a binary number representing the angular position of the encoded shaft. Such circuits, or equivalent circuits, are well known to those skilled in the art; for example, the Quadrature Chip from Hewlett Packard, California performs the functions described above. 
   Analog sensors  132  can be included instead of digital sensors  128  for all or some of the transducers of the present invention. For example, a strain gauge can be connected to stylus  130  of  FIG. 7  to measure forces. Analog sensors  132  provide an analog signal representative of the position of the user object in a particular degree of motion. Analog to digital converter (ADC)  134 . converts the analog signal to a digital signal that is received and interpreted by computer  16 , as is well known to those skilled in the art. 
     FIG. 10  is a schematic view of a DAC circuit  122  of  FIG. 9  suitable for converting an input digital signal to an analog voltage that is output to power amplifier circuit  124 . In the described embodiment, circuit  122  includes a parallel DAC  136 , such as the DAC1220 manufactured by National Semiconductor, which is designed to operate with an external generic op amp  138 . Op amp  138 , for example, outputs a signal from zero to −5 volts proportional to the binary number at its input. Op amp  140  is an inverting summing amplifier that converts the output voltage to a symmetrical bipolar range. Op amp  140  produces an output signal between −2.5 V and +2.5 V by inverting the output of op amp  138  and subtracting 2.5 volts from that output; this output signal is suitable for power amplification in amplification circuit  124 . As an example, R1=200 k.OMEGA. and R2=400 k.OMEGA. Of course, circuit  122  is intended as one example of many possible circuits that can be used to convert a digital signal to a desired analog signal. 
     FIG. 11  is a schematic view of a power amplifier circuit  124  suitable for use in the interface circuit  14  shown in  FIG. 9 . Power amplifier circuit receives a low power control voltage from DAC circuit  122  to control high-power, current-controlled servo motor  126 . The input control voltage controls a transconductance stage composed of amplifier  142  and several resistors. The transconductance stage produces an output current proportional to the input voltage to drive motor  126  while drawing very little current from the input voltage source. The second amplifier stage, including amplifier  144 , resistors, and a capacitor C, provides additional current capacity by enhancing the voltage swing of the second terminal  147  of motor  146 . As example values for circuit  124 , R=10 k.OMEGA., R2=500.OMEGA., R3=9.75 k.OMEGA., and R4=1.OMEGA. Of course, circuit  124  is intended as one example of many possible circuits that can be used to amplify voltages to drive actuators  126 . 
   While this invention has been described in terms of several preferred embodiments, it is contemplated that alterations, modifications and permutations thereof will become apparent to those skilled in the art upon a reading of the specification and study of the drawings. For example, the linked members of apparatus  25  can take a number of actual physical sizes and forms while maintaining the disclosed linkage structure. In addition, other gimbal mechanisms can also be provided with a linear axis member  40  to provide three degrees of freedom. Likewise, other types of gimbal mechanisms or different mechanisms providing multiple degrees of freedom can be used with the capstan drive mechanisms disclosed herein to reduce inertia, friction, and backlash in a system. A variety of devices can also be used to sense the position of an object In the provided degrees of freedom and to drive the object along those degrees of freedom. Furthermore, certain terminology has been used for the purposes of descriptive clarity, and not to limit the present invention. It is therefore intended that the following appended claims include all such alterations, modifications and permutations as fall within the true spirit and scope of the present invention.

Technology Category: g