WO2001003105A1 - Controlling vibrotactile sensations for haptic feedback devices - Google Patents

Controlling vibrotactile sensations for haptic feedback devices Download PDF

Info

Publication number
WO2001003105A1
WO2001003105A1 PCT/US2000/017980 US0017980W WO0103105A1 WO 2001003105 A1 WO2001003105 A1 WO 2001003105A1 US 0017980 W US0017980 W US 0017980W WO 0103105 A1 WO0103105 A1 WO 0103105A1
Authority
WO
WIPO (PCT)
Prior art keywords
actuator
haptic feedback
feedback device
recited
mass
Prior art date
Application number
PCT/US2000/017980
Other languages
French (fr)
Other versions
WO2001003105A9 (en
Inventor
Bruce M. Schena
Erik J. Shahoian
Original Assignee
Immersion Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Immersion Corporation filed Critical Immersion Corporation
Priority to AU60594/00A priority Critical patent/AU6059400A/en
Publication of WO2001003105A1 publication Critical patent/WO2001003105A1/en
Publication of WO2001003105A9 publication Critical patent/WO2001003105A9/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/016Input arrangements with force or tactile feedback as computer generated output to the user

Definitions

  • the present invention relates generally to producing forces in haptic feedback interface devices, and more particularly to the output and control of vibrations and similar force sensations from actuators in a haptic feedback interface device.
  • a user can interact with an environment displayed by a computer system to perform functions and tasks on the computer, such as playing a game, experiencing a simulation or virtual reality environment, using a computer aided design system, operating a graphical user interface (GUI), or otherwise influencing events or images depicted on the screen.
  • GUI graphical user interface
  • Common human-computer interface devices used for such interaction include a joystick, mouse, trackball, steering wheel, stylus, tablet, pressure-sensitive ball, or the like, that is connected to the computer system controlling the displayed environment.
  • force feedback or tactile feedback is also provided to the user, also known more generally herein as "haptic feedback.”
  • haptic feedback can provide physical sensations which are felt by the user using the controller or manipulating the physical object of the interface device.
  • One or more motors or other actuators are used in the device and are connected to the controlling computer system.
  • the computer system controls forces on the haptic feedback device in conjunction and coordinated with displayed events and interactions on the host by sending control signals or commands to the haptic feedback device and the actuators.
  • haptic feedback devices provide forces to the user by vibrating the manipulandum and/or the housing of the device that is held by the user.
  • the output of simple vibration haptic feedback requires less complex hardware components and software control over the force-generating elements than does more sophisticated haptic feedback.
  • one or more motors are mounted in the housing of the controller and which are energized to provide the vibration forces.
  • An eccentric mass is positioned on the shaft of each motor, and the shaft is rotated quickly to cause the motor and the housing of the controller to vibrate.
  • the host computer (console unit) provides commands to the controller to turn the vibration on or off or to increase or decrease the frequency of the vibration by varying the rate of rotation of the motor.
  • vibrations that these implementations produce are very limited and cannot be significantly varied.
  • the frequency of the vibrations output by the controllers described above can be adjusted by the host computer, but the magnitude of these vibrations cannot be varied independently from the frequency.
  • These devices can only provide vibration magnitudes that are directly proportional to frequency; thus, low-frequency vibrations must have a low magnitude, and high frequency vibrations must have a high magnitude. Developers have no way of providing, for example, vibrations having a high frequency and low magnitude or vibrations having a low frequency and high magnitude, thus severly limiting the force feedback effects which can be experienced by a user of the device.
  • the present invention is directed to controlling vibrotactile sensations in haptic feedback devices which are interfaced with a host application program.
  • the present invention allows more varied and complex sensations to be provided using inexpensive electronics and mechanical parts.
  • the present invention relates to a method for providing a vibration for a haptic feedback device.
  • An actuator in a haptic feedback device is provided and includes a rotatable mass, and a drive signal is received at the haptic feedback device.
  • the drive signal controls the actuator to oscillate the mass in two directions about an axis of rotation of the actuator such that the oscillation of the mass induces a vibration in the haptic feedback device.
  • the magnitude and frequency of the vibration can be independently controlled by adjusting a magnitude and a frequency, respectively, of the drive signal.
  • the mass of the actuator can be an eccentric mass, and the oscillation can be accomplished in a bi-directional mode, where a different drive signal is provided to the actuator in a uni-directional mode to rotate the eccentric mass in a single direction about the axis of rotation of the shaft.
  • the uni-directional mode can be used to output high magnitude, low frequency vibrotactile effects
  • the bi-directional mode can be used to output high frequency vibrotactile effects.
  • the haptic feedback device can be a gamepad controller receiving commands from a host computer which determines when the vibration is to be output based on events occurring within a graphical environment implemented and displayed by the computer.
  • Another aspect of the invention is concerned with a method for commanding a vibration for a haptic feedback device from a host computer that implements a graphical environment.
  • the indication is caused by an event or interaction occurring in the graphical environment of the host computer.
  • Information is provided to the haptic feedback device and includes a magnitude and a frequency that are independently adjustable.
  • An actuator is caused to oscillate a mass about an axis of rotation in two directions to cause a vibration in the haptic feedback device, where a magnitude and a frequency of the vibration is based on the magnitude and frequency included in the information.
  • the indication to output the information can received by a force feedback driver program running on the host computer, or another software layer.
  • the information provided to the haptic feedback device can be a command including parameters describing the magnitude and frequency, or can be a drive signal which is provided to the actuator.
  • a haptic feedback device provides vibrotactile sensations to a user, is coupled to a host computer and includes a housing and an actuator coupled to the housing and including a mass, wherein said mass can be rotated by the actuator.
  • the device also includes a circuit for driving the actuator in two directions, the circuit receiving a drive signal and causing the actuator to oscillate the mass and induce a vibration in the housing. The vibration is experienced by the user as vibrotactile sensations.
  • the mass can be an eccentric mass positioned offset on the rotating shaft.
  • the circuit for driving the actuator can include an H- bridge circuit or can include two linear amplifiers.
  • the haptic feedback device can be a gamepad controller that receives information from the host which determines when the vibrotactile sensations are to be output based on events occurring within a graphical environment implemented and displayed by the host computer.
  • the present invention advantageously provides a haptic feedback device that can output a wide variety of vibrotactile sensations. Both the frequency and amplitude of the vibrations can be controlled using bi-directional control features, allowing a much wider range of sensations to be experienced by the user than in the uni-directional prior art devices. Furthermore, the device is low in cost to produce and is thus quite suitable for home consumer applications.
  • FIGURE 1 is a block diagram of a control system for the haptic feedback interface device of the present invention
  • FIGURE 2a is a perspective view of one embodiment of a motor having an eccentric mass that is rotated to provide vibrations to an interface device;
  • FIGURES 2b and 2c are top plan views of a motor and differently-shaped eccentric masses
  • FIGURE 3 is a graph illustrating a vibration magnitude vs. motor voltage for prior art devices
  • FIGURE 4 is a graph illustrating a vibration magnitude vs. frequency of oscillation of the eccentric or drive signal
  • FIGURE 5a is a schematic diagram illustrating a first example of a drive circuit which can be used to drive the actuator in bi-directional mode.
  • FIGURE 5b is a schematic disgram illustrating a second example of a drive circuit which can be used to drive the actuator in bi-directional mode.
  • FIGURE 1 is a block diagram illustrating a force feedback interface system 10 for use with the present invention controlled by a host computer system.
  • Interface system 10 includes a host computer system 12 and an interface device 14.
  • Host computer system 12 can be any of a variety of computer systems, such as a home video game systems (game console), e.g. systems available from Nintendo, Sega, or Sony. Other types of computers may also be used, such as a personal computer (PC, Macintosh, etc.), a television " set top box” or a "network computer," a workstation, a portable and/or handheld game device or computer, etc.
  • Host computer system 12 preferably implements a host application program with which a user 22 is interacting via peripherals and interface device 14.
  • the host application program can be a video or computer game, medical simulation, scientific analysis program, operating system, graphical user interface, or other application program that utilizes force feedback.
  • the host application provides images to be displayed on a display output device, as described below, and/or other feedback, such as auditory signals.
  • the host application, or a driver program, API or other layer running on the host computer preferably sends out information to cause haptic feedback to the user on the device 14, as described below, based on events or interactions occuring within the host application. For example, when a user-controlled vehicle collides with a fence in a game or simulation, a vibration can be output to the user to enhance the interactive experience of the collision.
  • vibrations can be used to inform the user of the interaction.
  • Host computer system 12 preferably includes a host microprocessor 16, a clock 18, a display screen 20, and an audio output device 21.
  • Microprocessor 16 can be one or more of any of well-known microprocessors. Random access memory (RAM), read-only memory (ROM), and input/output (I/O) electronics are preferably also included in the host computer.
  • Display screen 20 can be used to display images generated by host computer system 12 or other computer systems, and can be a standard display screen, television, CRT, flat-panel display, 2-D or 3-D display goggles, or any other visual interface.
  • Audio output device 21, such as speakers, is preferably coupled to host microprocessor 16 via amplifiers, filters, and other circuitry well known to those skilled in the art and provides sound output to user 22 from the host computer 12.
  • Peripherals can also be coupled to host processor 16, such as storage devices (hard disk drive, CD ROM/DVD-ROM drive, floppy disk drive, etc.), communication devices, printers, and other input and output devices. Data for implementing the interfaces of the present invention can be stored on computer readable media such as memory (RAM or ROM), a hard disk, a CD-ROM or DVD-ROM, etc.
  • An interface device 14 is coupled to host computer system 12 by a bi-directional bus 24.
  • Interface device 14 can be a gamepad controller, joystick controller, mouse controller, steering wheel controller, or other device which a user may manipulate to provide input to the computer system and experience force feedback.
  • the bi-directional bus sends signals in either direction between host computer system 12 and the interface device.
  • An interface port of host computer system 12 such as an RS232 or Universal Serial Bus (USB) serial interface port, parallel port, game port, etc., connects bus 24 to host computer system 12. Alternatively, a wireless communication link can be used.
  • USB Universal Serial Bus
  • Interface device 14 includes a local microprocessor 26, sensors 28, actuators 30, a user object 34, optional sensor interface 36, an actuator interface 38, and other optional input devices
  • Local microprocessor 26 is coupled to bus 24 and is considered local to interface device 14 and is dedicated to force feedback and sensor I/O of interface device 14.
  • Microprocessor 26 can be provided with software instructions to wait for commands or requests from computer host 12, decode the command or request, and handle/control input and output signals according to the command or request.
  • processor 26 preferably operates independently of host computer 12 by reading sensor signals and calculating appropriate forces from those sensor signals, time signals, and stored or relayed instructions selected in accordance with a host command. Suitable microprocessors for use as local microprocessor 26 include the
  • Microprocessor 26 can include one microprocessor chip, or multiple processors and/or co-processor chips, and/or digital signal processor (DSP) capability.
  • DSP digital signal processor
  • Microprocessor 26 can receive signals from sensors 28 and provide signals to actuators 30 of the interface device 14 in accordance with instructions provided by host computer 12 over bus 24.
  • host computer 12 provides high level supervisory commands to microprocessor 26 over bus 24, and microprocessor 26 manages low level force control loops to sensors and actuators in accordance with the high level commands and independently of the host computer 12.
  • the force feedback system thus provides a host control loop of information and a local control loop of information in a distributed control system. This operation is described in greater detail in U.S. Patent No. 5,734,373, incorporated herein by reference.
  • Microprocessor 26 can also receive commands from any other input devices
  • Local memory 27 such as RAM and/or ROM, can be coupled to microprocessor 26 in interface device 14 to store instructions for microprocessor 26 and store temporary and other data (and/or registers of the microprocessor 26 can store data).
  • a local clock 29 can be coupled to the microprocessor 26 to provide timing data.
  • Sensors 28 sense the position, motion, and/or other characteristics of a user manipulandum 34 of the interface device 14 along one or more degrees of freedom and provide signals to microprocessor 26 including information representative of those characteristics.
  • Rotary or linear optical encoders, potentiometers, photodiode or photoresistor sensors, velocity sensors, acceleration sensors, strain gauge, or other types of sensors can be used.
  • Sensors 28 provide an electrical signal to an optional sensor interface 36, which can be used to convert sensor signals to signals that can be interpreted by the microprocessor 26 and/or host computer system 12. For example, these sensor signals can be used by the host computer to influence the host application program, e.g. to steer a race car in a game or move a cursor across the screen.
  • One or more actuators 30 transmit forces to the interface device 14 and/or to manipulandum 34 of the interface device 14 in response to signals received from microprocessor 26.
  • the actuators output forces on the housing of the interface device 14 which is handheld by the user, so that the forces are transmitted to the manipulandum through the housing.
  • actuators can be directly coupled to the manipulandum 34.
  • Actuators 30 can include two types: active actuators and passive actuators. Active actuators include linear current control motors, stepper motors, pneumatic/hydraulic active actuators, a torquer (motor with limited angular range), voice coil actuators, moving magnet actuators, and other types of actuators that transmit a force to move an object.
  • Actuator interface 38 can be connected between actuators 30 and microprocessor 26 to convert signals from microprocessor 26 into signals appropriate to drive actuators 30, as is decribed in greater detail below.
  • buttons and triggers can be other input devices 39.
  • the various buttons and triggers can be other input devices 39.
  • the user manipulandum 34 is a joystick
  • other input devices can include one or more buttons provided, for example, on the joystick handle or base.
  • Power supply 40 can optionally be coupled to actuator interface 38 and/or actuators 30 to provide electrical power.
  • a safety switch 41 is optionally included in interface device 14 to provide a mechanism to deactivate actuators 30 for safety reasons.
  • Manipulandum 34 is a physical object, device or article that may be grasped (held in the hand between two or more fingers or in the palm) or otherwise contacted or controlled by a user and which is coupled to interface device 14.
  • the user 22 can manipulate and move the manipulandum along provided degrees of freedom to interface with the host application program the user is viewing on display screen 20.
  • Manipulandum 34 in such embodiments can be a joystick, mouse, trackball, stylus (e.g. at the end of a linkage), steering wheel, sphere, medical instrument (laparoscope, catheter, etc.), pool cue (e.g. moving the cue through actuated rollers), hand grip, knob, button, or other object.
  • Mechanisms can be used to provide degrees of freedom to the manipulandum, such as gimbal mechanisms, slotted yoke mechanisms, flexure mechanisms, etc.
  • Various embodiments of suitable mechanisms are described in Patent Nos. 5,767,839; 5,721,566; 5,623,582; 5,805,140; and 5,825,308, all incorporated herein by reference.
  • the haptic feedback can be output directly on the housing of a device, such as a handheld device.
  • the housing can be used for a gamepad, remote control, telephone, or other handheld device.
  • the housing of the gamepad can receive the vibrotactile feedback of the present invention, and a fingertip joystick or other control on the gamepad can be provided with separate haptic feedback, e.g. with motors coupled to the joystick mechanism to provide force feedback in the degrees of freedom of the joystick, and/or tactile feedback.
  • Some gamepad embodiments may not include a joystick, so that manipulandum 34 can be a button pad or other device for inputting directions or commands to the host computer.
  • the present invention provides more control over vibrotactile feedback using an actuator having a moving mass.
  • the moving mass is rotated by a rotary actuator, as described below.
  • FIGURE 2a is a graph illustrating a DC rotary motor 100 that can be included in a handheld controller 14 or coupled to manipulandum 34 as actuator 30 for providing force feedback to the user of the controller 14 and/or manipulandum 34.
  • Motor 100 includes a shaft 102 that rotates about an axis A, and an eccentric mass 104 is rigidly coupled to the shaft 102 and thus rotates with the shaft about axis A.
  • the housing 106 of the motor 100 is coupled to the housing of the interface device 14, e.g. the motor can be attached to the inside of the housing of a handheld gamepad or other controller.
  • the actuator can be coupled to a movable manipulandum, such as a joystick or mouse, or other member.
  • eccentric masses 104 can be used. As shown in FIGURE 2b, a wedge- or pie-shaped eccentric can be used, where one end of the eccentric is coupled to the shaft 102 so that most of the wedge extends to one side of the shaft.
  • a cylindrical or other-shaped mass 108 can be coupled to the shaft 102.
  • the center 1 10 of the mass 108 is positioned to be offset from the axis of rotation A of the shaft 102, creating an eccentricity parameter e that is determined by the distance between the axis of rotation of the shaft 102 and the center of mass of the mass 108.
  • the e parameter can be adjusted in different device embodiments to provide stronger or weaker vibrations, as desired.
  • motor 100 When the eccentric mass 104 is rotated by the motor 100, a vibration is induced in the motor and in any member coupled to the motor due to the off-balance motion of the mass. Since the housing 106 of motor 100 is preferably coupled to a housing of a controller or to a movable manipulandum, the vibration is transmitted to the user that is holding the housing or manipulandum.
  • motors 100 can be included in a device 14 to provide vibrotactile or other haptic feedback; for example, two motors may be used to provide stronger magnitude vibrations and/or vibrations in two different directions.
  • FIGURE 3 is a graph 112 illustrating a uni-directional mode of the motor 100 used in the prior art for outputting vibrotactile feedback.
  • the motor is controlled by a voltage value to rotate the eccentric mass in one direction about the axis of rotation of the shaft.
  • a local microprocessor can output a voltage directly to the motor, or an actuator interface can provide the desired voltage value to the motor 100.
  • an on-off drive voltage signal is used, where the duty cycle of the drive signal indicates the actual voltage seen across the motor.
  • the graph 112 shows the relationship between voltage (the horizontal axis) and acceleration on the surface of the housing of the controller device 14 (the vertical axis).
  • a top portion and a side portion of the housing are areas where the acceleration has been measured for this graph, as indicated by the different curves; in addition, a large eccentric mass and a smaller eccentric mass were used.
  • the magnitude of acceleration is indicative of the magnitude of vibration as experienced by the user. As shown, the vibration increases in magnitude proportionally with the magnitude of voltage used to control the motor.
  • Prior art gamepad controllers such as the Sony Dual-ShockTM or the Dual Impact by
  • Performance use the uni-directional mode to provide vibrotactile feedback to a controller held by the user.
  • An advantage of this mode is that strong vibrations can be provided to the user.
  • the strength of the vibrations is directly tied to the frequency of the vibration, i.e. the revolutions-per-minute of the eccentric mass about the shaft's axis of rotation, so that the higher the frequency, the higher the vibration magnitude.
  • a high frequency, low magnitude vibration cannot be output.
  • a low frequency, high strength vibration cannot be output for a particular mass and eccentricity.
  • FIGURE 4 is a graph 120 illustrating the output results of a bi-directional mode of the present invention of the motor 100 for outputting vibrotactile feedback.
  • the motor is controlled by a drive waveform that changes between positive and negative signs, thereby changing the direction of rotation of the motor shaft 102 in accordance with the waveform.
  • the eccentric mass 104 never completes a full rotation, but is instead controlled to oscillate approximately about a single point in its range of motion (a forced harmonic). The eccentric mass thus travels through only a portion of the full range of motion of the shaft before it changes direction and moves in the opposite direction. This causes a vibration in the motor and in any member or housing coupled to the motor as the mass is quickly moved back and forth.
  • the graph 120 shows the relationship for several motors between frequency of oscillation of the eccentric or drive signal (the horizontal axis) and acceleration on the top surface of the housing of the controller device 14 (the vertical axis). As shown in the graph, for most of the motors shown, a higher frequency of oscillation causes a lower magnitude of vibration, while a lower frequency of oscillation causes a higher magnitude of vibration. The dynamic range of control is much greater in bi-directional mode than in uni-directional mode.
  • the results shown in graph 120 were obtained using a current-controlled linear amplifier; however, a voltage- controlled amplifier can also be used, and/or a switching amplifier can be used as shown in Fig. 5 a.
  • the drive waveform can be a current waveform or a voltage waveform, depending on the particular amplifier circuit and other circuitry used in a particular implementation.
  • the drive waveform can be supplied by a local controller or circuitry, such as microprocessor 26, by an actuator interface 38, or the host computer 12 can directly supply the voltage (using an amplifier) or a command to supply a desired voltage.
  • a force feedback driver program, API, or application program (or other software layer) running on the host computer can provide an actuator command having independently-controllable magnitude and frequency parameters, where the command is provided in response to an event or interaction in the graphical environment provided by the host.
  • the local microprocessor or other circuitry can receive the command and parameters and, in response, provide a drive signal of the appropriate frequency or magnitude to the actuator(s).
  • a host computer program can provide a drive signal directly to the device and actuator(s).
  • the curves shown in graph 120 are at a maximum amplitude of drive waveform for the motor (i.e. the maximum current which was used to drive the motors in the test resulting in graph 120). If a lower amplitude drive waveform is used, then the magnitude of vibration output is correspondingly lower. This allows the controller of the drive waveform to adjust the magnitude of vibration to a desired level within the allowed magnitude range by adjusting the current magnitude of the waveform. The controller can also adjust the frequency of the drive waveform independently of the amplitude of the drive waveform to adjust the frequency of vibration. This allows different frequency vibrations to be output independently of the magnitude of those vibrations, thereby providing a degree of control over the vibration that is not possible in uni-directional mode.
  • the maximum magnitude of vibration (acceleration) in bi-directional mode is less than the maximum vibration magnitude that can be output in uni-dirctional mode, the advantage of independently controllable magnitude and frequency of vibration allows a great many haptic feedback effects to be generated that are not possible in uni-directional mode.
  • uni-directional mode a vibration can be made strong by increasing the voltage and thus the frequency of rotation of the eccentric mass.
  • the strength of vibration must always be associated with a corresponding frequency, causing a similar feel to the user each time a particular-strength of vibration is output.
  • a two vibrations may be of similar magnitude but completely different frequencies, or, have the same frequencies but different magnitudes. This creates a large variety of vibration sensations which can be output to the user.
  • both uni-directional mode and bi-directional mode are used in a single hybrid controller device 14.
  • a motor 100 that is configured to operate in bidirectional mode may be able to operate in uni-directional mode, e.g. a voltage controlled bridge circuit may be able to drive the motor in both modes (a current-controlled motor is not as appropriate for uni-directional mode).
  • an amplifier that can operate as a voltage control amplifier for uni-directional mode and as a different amplifier (e.g. current controlled) for bi-directional mode can be used; or, two different amplifiers can be used which can be alternatively selected, where the appropriate amplifier is selected based on the current mode.
  • uni-directional mode can offer vibrations of higher magnitude, this mode can be useful to generate very strong lower- frequency force feedback effects, e.g. explosions, collisions, etc. in a game displayed and implemented by the host computer.
  • a given actuator can be driven with voltage control in uni-directional mode to get large magnitude vibrations from 5 to 80 Hz.
  • the controller e.g. microprocessor 26
  • bi-directional current control mode can then switch to bi-directional current control mode to produce high frequency vibrations.
  • This multi-mode approach provides higher bandwidth that would not be possible in uni-directional mode and opens up a whole range of haptic feedback effects.
  • a 10 g 5 Hz vibration can be output in uni-directional mode followed by a high frequency decaying ringing to simulate loss of vehicle control followed by impact with a metal guardrail in a racing game implemented by the host computer.
  • Other combinations of uni-directional vibrations and bi-directional vibrations can be provided.
  • one actuator in the device 14 operates in uni-directional mode, and another actuator can operate in bi-directional mode, allowing a uni-directional vibrations to be output at different times or simultaneously.
  • the vibration effects described above can be greatly varied by changing the drive waveform.
  • Software tools such as Immersion StudioTM from Immersion Corporation can be used to design and provide different vibration waveforms and to determine which output is best for a particular application.
  • FIGURE 5a is a schematic diagram of a first example of a drive circuit 50 which can be used to drive actuator 30 (e.g., motor 100 or other type of actuator). This circuit allows the actuator to operate in bi-directional mode.
  • the circuit can be included in the actuator interface
  • Circuit 50 is a well-known H-bridge circuit that allows an input current or voltage to drive the actuator 30 in either direction by providing current or voltage in either direction through the actuator load.
  • Transistors 52, 54, 56, and 58 are provided in the configuration shown and are used as switches to provide voltage or current in one of two directions through the motor 30 depending on the switched configuration. For example, transistors 52 and 54 can be switched on and transistors 56 and 58 can be switched off to provide current in one direction through the motor 30, and transistors 56 and 58 can be switched on while transistors 52 and 54 are switched off to provide current in the other direction through the motor 30.
  • the operation of switching H-bridge circuits are well known to those skilled in the art. Either a voltage- controlled amplifier or a current-controlled amplifier circuit can be used. Other H-bridge switching circuits that use FET transistors can also be used in the present invention.
  • FIGURE 5b is a diagram of a second example of a drive circuit 60 that can be used to drive actuator 30 in bi-directional mode.
  • Circuit 60 allows an input current to drive the actuator 30 in either direction by providing current in either direction through the actuator load.
  • An input signal is provided at node 62, and is amplified either by linear amplifier 64 or linear amplifier 66 depending on the direction of the cu ⁇ ent, where an inverter 68 inverts the signal for amplifier 66.
  • Such functionality can be obtained with many commonly available linear amplifier integrated circuits. Any amplifier circuit which is capable of reversing drive current can be used to drive the motor in two directions.
  • actuators can be used.
  • a solenoid having linear motion can be used to provide the bi-directional vibrations described above.
  • Rotary or linear voice coil or moving magnet actuators can also be used.

Abstract

Method and apparatus for controlling vibrotactile sensations for haptic feedback devices. An actuator (30) in a haptic feedback device includes a rotatable eccentric mass (104), and information is received at the haptic feedback device causing a drive signal. The drive signal controls the actuator (30) to oscillate the mass in two directions about an axis (A) of rotation of the actuator (30) such that the oscillation of the mass induces a vibration in the haptic feedback device. The magnitude and frequency of the vibration can be independently controlled by adjusting a magnitude and a frequency, respectively, of the drive signal. The vibrations can also be provided in a bi-directional mode or uni-directional mode to provide the most efficient magnitude of the vibrotactile sensations. The haptic feedback device can be, for example, a gamepad controller receiving commands from a host computer providing a graphical environment.

Description

CONTROLLING VIBROTACTILE SENSATIONS FOR HAPTIC FEEDBACK DEVICES
CROSS REFERENCE TO RELATED APPLICATIONS
This application claims priority to U.S. Provisional Application No. 60/142,155, filed July 1, 1999, entitled, "Providing Vibration Forces in Force Feedback Devices," and which is incorporated by reference herein.
BACKGROUND OF THE INVENTION
The present invention relates generally to producing forces in haptic feedback interface devices, and more particularly to the output and control of vibrations and similar force sensations from actuators in a haptic feedback interface device.
Using an interface device, a user can interact with an environment displayed by a computer system to perform functions and tasks on the computer, such as playing a game, experiencing a simulation or virtual reality environment, using a computer aided design system, operating a graphical user interface (GUI), or otherwise influencing events or images depicted on the screen. Common human-computer interface devices used for such interaction include a joystick, mouse, trackball, steering wheel, stylus, tablet, pressure-sensitive ball, or the like, that is connected to the computer system controlling the displayed environment.
In some interface devices, force feedback or tactile feedback is also provided to the user, also known more generally herein as "haptic feedback." These types of interface devices can provide physical sensations which are felt by the user using the controller or manipulating the physical object of the interface device. One or more motors or other actuators are used in the device and are connected to the controlling computer system. The computer system controls forces on the haptic feedback device in conjunction and coordinated with displayed events and interactions on the host by sending control signals or commands to the haptic feedback device and the actuators.
Many low cost haptic feedback devices provide forces to the user by vibrating the manipulandum and/or the housing of the device that is held by the user. The output of simple vibration haptic feedback (tactile sensations) requires less complex hardware components and software control over the force-generating elements than does more sophisticated haptic feedback. For example, in many current game controllers for game consoles such as the Sony Playstation and the Nintendo 64, one or more motors are mounted in the housing of the controller and which are energized to provide the vibration forces. An eccentric mass is positioned on the shaft of each motor, and the shaft is rotated quickly to cause the motor and the housing of the controller to vibrate. The host computer (console unit) provides commands to the controller to turn the vibration on or off or to increase or decrease the frequency of the vibration by varying the rate of rotation of the motor.
One problem with the current implementations of providing vibration haptic feedback is that the vibrations that these implementations produce are very limited and cannot be significantly varied. For example, the frequency of the vibrations output by the controllers described above can be adjusted by the host computer, but the magnitude of these vibrations cannot be varied independently from the frequency. These devices can only provide vibration magnitudes that are directly proportional to frequency; thus, low-frequency vibrations must have a low magnitude, and high frequency vibrations must have a high magnitude. Developers have no way of providing, for example, vibrations having a high frequency and low magnitude or vibrations having a low frequency and high magnitude, thus severly limiting the force feedback effects which can be experienced by a user of the device.
SUMMARY OF THE INVENTION
The present invention is directed to controlling vibrotactile sensations in haptic feedback devices which are interfaced with a host application program. The present invention allows more varied and complex sensations to be provided using inexpensive electronics and mechanical parts.
More specifically, the present invention relates to a method for providing a vibration for a haptic feedback device. An actuator in a haptic feedback device is provided and includes a rotatable mass, and a drive signal is received at the haptic feedback device. The drive signal controls the actuator to oscillate the mass in two directions about an axis of rotation of the actuator such that the oscillation of the mass induces a vibration in the haptic feedback device. The magnitude and frequency of the vibration can be independently controlled by adjusting a magnitude and a frequency, respectively, of the drive signal.
The mass of the actuator can be an eccentric mass, and the oscillation can be accomplished in a bi-directional mode, where a different drive signal is provided to the actuator in a uni-directional mode to rotate the eccentric mass in a single direction about the axis of rotation of the shaft. The uni-directional mode can be used to output high magnitude, low frequency vibrotactile effects, and the bi-directional mode can be used to output high frequency vibrotactile effects. The haptic feedback device can be a gamepad controller receiving commands from a host computer which determines when the vibration is to be output based on events occurring within a graphical environment implemented and displayed by the computer.
Another aspect of the invention is concerned with a method for commanding a vibration for a haptic feedback device from a host computer that implements a graphical environment. An indication to output information to cause a haptic effect to be output to a user of the haptic feedback device. The indication is caused by an event or interaction occurring in the graphical environment of the host computer. Information is provided to the haptic feedback device and includes a magnitude and a frequency that are independently adjustable. An actuator is caused to oscillate a mass about an axis of rotation in two directions to cause a vibration in the haptic feedback device, where a magnitude and a frequency of the vibration is based on the magnitude and frequency included in the information. The indication to output the information can received by a force feedback driver program running on the host computer, or another software layer. The information provided to the haptic feedback device can be a command including parameters describing the magnitude and frequency, or can be a drive signal which is provided to the actuator.
In another aspect, a haptic feedback device provides vibrotactile sensations to a user, is coupled to a host computer and includes a housing and an actuator coupled to the housing and including a mass, wherein said mass can be rotated by the actuator. The device also includes a circuit for driving the actuator in two directions, the circuit receiving a drive signal and causing the actuator to oscillate the mass and induce a vibration in the housing. The vibration is experienced by the user as vibrotactile sensations. The mass can be an eccentric mass positioned offset on the rotating shaft. The circuit for driving the actuator can include an H- bridge circuit or can include two linear amplifiers. The haptic feedback device can be a gamepad controller that receives information from the host which determines when the vibrotactile sensations are to be output based on events occurring within a graphical environment implemented and displayed by the host computer.
The present invention advantageously provides a haptic feedback device that can output a wide variety of vibrotactile sensations. Both the frequency and amplitude of the vibrations can be controlled using bi-directional control features, allowing a much wider range of sensations to be experienced by the user than in the uni-directional prior art devices. Furthermore, the device is low in cost to produce and is thus quite suitable for home consumer applications.
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
FIGURE 1 is a block diagram of a control system for the haptic feedback interface device of the present invention;
FIGURE 2a is a perspective view of one embodiment of a motor having an eccentric mass that is rotated to provide vibrations to an interface device;
FIGURES 2b and 2c are top plan views of a motor and differently-shaped eccentric masses;
FIGURE 3 is a graph illustrating a vibration magnitude vs. motor voltage for prior art devices;
FIGURE 4 is a graph illustrating a vibration magnitude vs. frequency of oscillation of the eccentric or drive signal;
FIGURE 5a is a schematic diagram illustrating a first example of a drive circuit which can be used to drive the actuator in bi-directional mode; and
FIGURE 5b is a schematic disgram illustrating a second example of a drive circuit which can be used to drive the actuator in bi-directional mode.
DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS
FIGURE 1 is a block diagram illustrating a force feedback interface system 10 for use with the present invention controlled by a host computer system. Interface system 10 includes a host computer system 12 and an interface device 14.
Host computer system 12 can be any of a variety of computer systems, such as a home video game systems (game console), e.g. systems available from Nintendo, Sega, or Sony. Other types of computers may also be used, such as a personal computer (PC, Macintosh, etc.), a television " set top box" or a "network computer," a workstation, a portable and/or handheld game device or computer, etc. Host computer system 12 preferably implements a host application program with which a user 22 is interacting via peripherals and interface device 14. For example, the host application program can be a video or computer game, medical simulation, scientific analysis program, operating system, graphical user interface, or other application program that utilizes force feedback. Typically, the host application provides images to be displayed on a display output device, as described below, and/or other feedback, such as auditory signals. The host application, or a driver program, API or other layer running on the host computer, preferably sends out information to cause haptic feedback to the user on the device 14, as described below, based on events or interactions occuring within the host application. For example, when a user-controlled vehicle collides with a fence in a game or simulation, a vibration can be output to the user to enhance the interactive experience of the collision.
Similarly, when a user-controlled cursor moves onto another object such as an icon or text heading, vibrations can be used to inform the user of the interaction.
Host computer system 12 preferably includes a host microprocessor 16, a clock 18, a display screen 20, and an audio output device 21. Microprocessor 16 can be one or more of any of well-known microprocessors. Random access memory (RAM), read-only memory (ROM), and input/output (I/O) electronics are preferably also included in the host computer. Display screen 20 can be used to display images generated by host computer system 12 or other computer systems, and can be a standard display screen, television, CRT, flat-panel display, 2-D or 3-D display goggles, or any other visual interface. Audio output device 21, such as speakers, is preferably coupled to host microprocessor 16 via amplifiers, filters, and other circuitry well known to those skilled in the art and provides sound output to user 22 from the host computer 12. Other types of peripherals can also be coupled to host processor 16, such as storage devices (hard disk drive, CD ROM/DVD-ROM drive, floppy disk drive, etc.), communication devices, printers, and other input and output devices. Data for implementing the interfaces of the present invention can be stored on computer readable media such as memory (RAM or ROM), a hard disk, a CD-ROM or DVD-ROM, etc. An interface device 14 is coupled to host computer system 12 by a bi-directional bus 24. Interface device 14 can be a gamepad controller, joystick controller, mouse controller, steering wheel controller, or other device which a user may manipulate to provide input to the computer system and experience force feedback. The bi-directional bus sends signals in either direction between host computer system 12 and the interface device. An interface port of host computer system 12, such as an RS232 or Universal Serial Bus (USB) serial interface port, parallel port, game port, etc., connects bus 24 to host computer system 12. Alternatively, a wireless communication link can be used.
Interface device 14 includes a local microprocessor 26, sensors 28, actuators 30, a user object 34, optional sensor interface 36, an actuator interface 38, and other optional input devices
39. Local microprocessor 26 is coupled to bus 24 and is considered local to interface device 14 and is dedicated to force feedback and sensor I/O of interface device 14. Microprocessor 26 can be provided with software instructions to wait for commands or requests from computer host 12, decode the command or request, and handle/control input and output signals according to the command or request. In addition, processor 26 preferably operates independently of host computer 12 by reading sensor signals and calculating appropriate forces from those sensor signals, time signals, and stored or relayed instructions selected in accordance with a host command. Suitable microprocessors for use as local microprocessor 26 include the
MC68HC711E9 by Motorola, the PIC16C74 by Microchip, and the 82930AX by Intel Corp., for example. Microprocessor 26 can include one microprocessor chip, or multiple processors and/or co-processor chips, and/or digital signal processor (DSP) capability.
Microprocessor 26 can receive signals from sensors 28 and provide signals to actuators 30 of the interface device 14 in accordance with instructions provided by host computer 12 over bus 24. For example, in a preferred local control embodiment, host computer 12 provides high level supervisory commands to microprocessor 26 over bus 24, and microprocessor 26 manages low level force control loops to sensors and actuators in accordance with the high level commands and independently of the host computer 12. The force feedback system thus provides a host control loop of information and a local control loop of information in a distributed control system. This operation is described in greater detail in U.S. Patent No. 5,734,373, incorporated herein by reference. Microprocessor 26 can also receive commands from any other input devices
39 included on interface apparatus 14, such as buttons, and provides appropriate signals to host computer 12 to indicate that the input information has been received and any information included in the input information. Local memory 27, such as RAM and/or ROM, can be coupled to microprocessor 26 in interface device 14 to store instructions for microprocessor 26 and store temporary and other data (and/or registers of the microprocessor 26 can store data).. In addition, a local clock 29 can be coupled to the microprocessor 26 to provide timing data.
Sensors 28 sense the position, motion, and/or other characteristics of a user manipulandum 34 of the interface device 14 along one or more degrees of freedom and provide signals to microprocessor 26 including information representative of those characteristics. Rotary or linear optical encoders, potentiometers, photodiode or photoresistor sensors, velocity sensors, acceleration sensors, strain gauge, or other types of sensors can be used. Sensors 28 provide an electrical signal to an optional sensor interface 36, which can be used to convert sensor signals to signals that can be interpreted by the microprocessor 26 and/or host computer system 12. For example, these sensor signals can be used by the host computer to influence the host application program, e.g. to steer a race car in a game or move a cursor across the screen.
One or more actuators 30 transmit forces to the interface device 14 and/or to manipulandum 34 of the interface device 14 in response to signals received from microprocessor 26. In one embodiment, the actuators output forces on the housing of the interface device 14 which is handheld by the user, so that the forces are transmitted to the manipulandum through the housing. Alternatively or additionally, actuators can be directly coupled to the manipulandum 34. Actuators 30 can include two types: active actuators and passive actuators. Active actuators include linear current control motors, stepper motors, pneumatic/hydraulic active actuators, a torquer (motor with limited angular range), voice coil actuators, moving magnet actuators, and other types of actuators that transmit a force to move an object. Passive actuators can also be used for actuators 30, such as magnetic particle brakes, friction brakes, or pneumatic/hydraulic passive actuators. Active actuators are preferred in the embodiments of the present invention. Actuator interface 38 can be connected between actuators 30 and microprocessor 26 to convert signals from microprocessor 26 into signals appropriate to drive actuators 30, as is decribed in greater detail below.
Other input devices 39 can optionally be included in interface device 14 and send input signals to microprocessor 26 or to host processor 16. Such input devices can include buttons, dials, switches, levers, or other mechanisms. For example, in embodiments where the device 14 is a gamepad, the various buttons and triggers can be other input devices 39. Or, if the user manipulandum 34 is a joystick, other input devices can include one or more buttons provided, for example, on the joystick handle or base. Power supply 40 can optionally be coupled to actuator interface 38 and/or actuators 30 to provide electrical power. A safety switch 41 is optionally included in interface device 14 to provide a mechanism to deactivate actuators 30 for safety reasons.
Manipulandum (or "user object") 34 is a physical object, device or article that may be grasped (held in the hand between two or more fingers or in the palm) or otherwise contacted or controlled by a user and which is coupled to interface device 14. In some embodiments, the user 22 can manipulate and move the manipulandum along provided degrees of freedom to interface with the host application program the user is viewing on display screen 20. Manipulandum 34 in such embodiments can be a joystick, mouse, trackball, stylus (e.g. at the end of a linkage), steering wheel, sphere, medical instrument (laparoscope, catheter, etc.), pool cue (e.g. moving the cue through actuated rollers), hand grip, knob, button, or other object. Mechanisms can be used to provide degrees of freedom to the manipulandum, such as gimbal mechanisms, slotted yoke mechanisms, flexure mechanisms, etc. Various embodiments of suitable mechanisms are described in Patent Nos. 5,767,839; 5,721,566; 5,623,582; 5,805,140; and 5,825,308, all incorporated herein by reference.
In other embodments, the haptic feedback can be output directly on the housing of a device, such as a handheld device. For example, the housing can be used for a gamepad, remote control, telephone, or other handheld device. In a gamepad embodiment, the housing of the gamepad can receive the vibrotactile feedback of the present invention, and a fingertip joystick or other control on the gamepad can be provided with separate haptic feedback, e.g. with motors coupled to the joystick mechanism to provide force feedback in the degrees of freedom of the joystick, and/or tactile feedback. Some gamepad embodiments may not include a joystick, so that manipulandum 34 can be a button pad or other device for inputting directions or commands to the host computer.
Controlling Force Feedback Vibrations Using Bi-directional Motor Output
The present invention provides more control over vibrotactile feedback using an actuator having a moving mass. In existing implementations, the moving mass is rotated by a rotary actuator, as described below.
FIGURE 2a is a graph illustrating a DC rotary motor 100 that can be included in a handheld controller 14 or coupled to manipulandum 34 as actuator 30 for providing force feedback to the user of the controller 14 and/or manipulandum 34. Motor 100 includes a shaft 102 that rotates about an axis A, and an eccentric mass 104 is rigidly coupled to the shaft 102 and thus rotates with the shaft about axis A. In one preferred embodiment, the housing 106 of the motor 100 is coupled to the housing of the interface device 14, e.g. the motor can be attached to the inside of the housing of a handheld gamepad or other controller. In other embodiments, the actuator can be coupled to a movable manipulandum, such as a joystick or mouse, or other member.
Many different types and shapes of eccentric masses 104 can be used. As shown in FIGURE 2b, a wedge- or pie-shaped eccentric can be used, where one end of the eccentric is coupled to the shaft 102 so that most of the wedge extends to one side of the shaft.
Alternatively, as shown in FIGURE 2c, a cylindrical or other-shaped mass 108 can be coupled to the shaft 102. The center 1 10 of the mass 108 is positioned to be offset from the axis of rotation A of the shaft 102, creating an eccentricity parameter e that is determined by the distance between the axis of rotation of the shaft 102 and the center of mass of the mass 108. The e parameter can be adjusted in different device embodiments to provide stronger or weaker vibrations, as desired. For example, the radial force due to the unbalanced rotating mass is given by F = m * wΛ2 * e, where m is the rotating mass, w is the angular velocity, and e is the eccentricity. This relationship predicts that greater magnitude is obtained by changing the eccentricity if the motor is driven constantly in one direction.
When the eccentric mass 104 is rotated by the motor 100, a vibration is induced in the motor and in any member coupled to the motor due to the off-balance motion of the mass. Since the housing 106 of motor 100 is preferably coupled to a housing of a controller or to a movable manipulandum, the vibration is transmitted to the user that is holding the housing or manipulandum. One or more of motors 100 can be included in a device 14 to provide vibrotactile or other haptic feedback; for example, two motors may be used to provide stronger magnitude vibrations and/or vibrations in two different directions.
FIGURE 3 is a graph 112 illustrating a uni-directional mode of the motor 100 used in the prior art for outputting vibrotactile feedback. In this mode, the motor is controlled by a voltage value to rotate the eccentric mass in one direction about the axis of rotation of the shaft. For example, a local microprocessor can output a voltage directly to the motor, or an actuator interface can provide the desired voltage value to the motor 100. Typically, an on-off drive voltage signal is used, where the duty cycle of the drive signal indicates the actual voltage seen across the motor.
The graph 112 shows the relationship between voltage (the horizontal axis) and acceleration on the surface of the housing of the controller device 14 (the vertical axis). A top portion and a side portion of the housing are areas where the acceleration has been measured for this graph, as indicated by the different curves; in addition, a large eccentric mass and a smaller eccentric mass were used. The magnitude of acceleration is indicative of the magnitude of vibration as experienced by the user. As shown, the vibration increases in magnitude proportionally with the magnitude of voltage used to control the motor.
Prior art gamepad controllers, such as the Sony Dual-Shock™ or the Dual Impact by
Performance, use the uni-directional mode to provide vibrotactile feedback to a controller held by the user. An advantage of this mode is that strong vibrations can be provided to the user. However, the strength of the vibrations is directly tied to the frequency of the vibration, i.e. the revolutions-per-minute of the eccentric mass about the shaft's axis of rotation, so that the higher the frequency, the higher the vibration magnitude. Thus, a high frequency, low magnitude vibration cannot be output. Similarly, a low frequency, high strength vibration cannot be output for a particular mass and eccentricity.
FIGURE 4 is a graph 120 illustrating the output results of a bi-directional mode of the present invention of the motor 100 for outputting vibrotactile feedback. In this mode, the motor is controlled by a drive waveform that changes between positive and negative signs, thereby changing the direction of rotation of the motor shaft 102 in accordance with the waveform. In the preferred method of operation, the eccentric mass 104 never completes a full rotation, but is instead controlled to oscillate approximately about a single point in its range of motion (a forced harmonic). The eccentric mass thus travels through only a portion of the full range of motion of the shaft before it changes direction and moves in the opposite direction. This causes a vibration in the motor and in any member or housing coupled to the motor as the mass is quickly moved back and forth. In practice, it has been found that a minimum frequency must be provided for the eccentric mass to oscillate about a single point; below that natural frequency of the eccentric mass, the mass will tend to shift about the rotational range of the actuator as it oscillates. The natural frequency is determined by the spring constant of the inherent cogging effect (reluctance force) of the motor.
The graph 120 shows the relationship for several motors between frequency of oscillation of the eccentric or drive signal (the horizontal axis) and acceleration on the top surface of the housing of the controller device 14 (the vertical axis). As shown in the graph, for most of the motors shown, a higher frequency of oscillation causes a lower magnitude of vibration, while a lower frequency of oscillation causes a higher magnitude of vibration. The dynamic range of control is much greater in bi-directional mode than in uni-directional mode. The results shown in graph 120 were obtained using a current-controlled linear amplifier; however, a voltage- controlled amplifier can also be used, and/or a switching amplifier can be used as shown in Fig. 5 a. The drive waveform can be a current waveform or a voltage waveform, depending on the particular amplifier circuit and other circuitry used in a particular implementation.
The drive waveform can be supplied by a local controller or circuitry, such as microprocessor 26, by an actuator interface 38, or the host computer 12 can directly supply the voltage (using an amplifier) or a command to supply a desired voltage. For example, a force feedback driver program, API, or application program (or other software layer) running on the host computer can provide an actuator command having independently-controllable magnitude and frequency parameters, where the command is provided in response to an event or interaction in the graphical environment provided by the host. The local microprocessor or other circuitry can receive the command and parameters and, in response, provide a drive signal of the appropriate frequency or magnitude to the actuator(s). Alternatively, a host computer program can provide a drive signal directly to the device and actuator(s).
The curves shown in graph 120 are at a maximum amplitude of drive waveform for the motor (i.e. the maximum current which was used to drive the motors in the test resulting in graph 120). If a lower amplitude drive waveform is used, then the magnitude of vibration output is correspondingly lower. This allows the controller of the drive waveform to adjust the magnitude of vibration to a desired level within the allowed magnitude range by adjusting the current magnitude of the waveform. The controller can also adjust the frequency of the drive waveform independently of the amplitude of the drive waveform to adjust the frequency of vibration. This allows different frequency vibrations to be output independently of the magnitude of those vibrations, thereby providing a degree of control over the vibration that is not possible in uni-directional mode.
Although the maximum magnitude of vibration (acceleration) in bi-directional mode is less than the maximum vibration magnitude that can be output in uni-dirctional mode, the advantage of independently controllable magnitude and frequency of vibration allows a great many haptic feedback effects to be generated that are not possible in uni-directional mode. In uni-directional mode, a vibration can be made strong by increasing the voltage and thus the frequency of rotation of the eccentric mass. However, the strength of vibration must always be associated with a corresponding frequency, causing a similar feel to the user each time a particular-strength of vibration is output. In bi-directional mode, a two vibrations may be of similar magnitude but completely different frequencies, or, have the same frequencies but different magnitudes. This creates a large variety of vibration sensations which can be output to the user.
In one optimized embodiment, both uni-directional mode and bi-directional mode are used in a single hybrid controller device 14. A motor 100 that is configured to operate in bidirectional mode may be able to operate in uni-directional mode, e.g. a voltage controlled bridge circuit may be able to drive the motor in both modes (a current-controlled motor is not as appropriate for uni-directional mode). In some embodiments, an amplifier that can operate as a voltage control amplifier for uni-directional mode and as a different amplifier (e.g. current controlled) for bi-directional mode can be used; or, two different amplifiers can be used which can be alternatively selected, where the appropriate amplifier is selected based on the current mode. Since uni-directional mode can offer vibrations of higher magnitude, this mode can be useful to generate very strong lower- frequency force feedback effects, e.g. explosions, collisions, etc. in a game displayed and implemented by the host computer. For example, a given actuator can be driven with voltage control in uni-directional mode to get large magnitude vibrations from 5 to 80 Hz. The controller (e.g. microprocessor 26) can then switch to bi-directional current control mode to produce high frequency vibrations. This multi-mode approach provides higher bandwidth that would not be possible in uni-directional mode and opens up a whole range of haptic feedback effects. Using this paradigm, for example, a 10 g 5 Hz vibration can be output in uni-directional mode followed by a high frequency decaying ringing to simulate loss of vehicle control followed by impact with a metal guardrail in a racing game implemented by the host computer. Other combinations of uni-directional vibrations and bi-directional vibrations can be provided. In other embodiments, one actuator in the device 14 operates in uni-directional mode, and another actuator can operate in bi-directional mode, allowing a uni-directional vibrations to be output at different times or simultaneously.
The vibration effects described above can be greatly varied by changing the drive waveform. Software tools such as Immersion Studio™ from Immersion Corporation can be used to design and provide different vibration waveforms and to determine which output is best for a particular application.
FIGURE 5a is a schematic diagram of a first example of a drive circuit 50 which can be used to drive actuator 30 (e.g., motor 100 or other type of actuator). This circuit allows the actuator to operate in bi-directional mode. The circuit can be included in the actuator interface
38 of Fig. 1, for example, or within microprocessor 26 or other circuitry.
Circuit 50 is a well-known H-bridge circuit that allows an input current or voltage to drive the actuator 30 in either direction by providing current or voltage in either direction through the actuator load. Transistors 52, 54, 56, and 58 are provided in the configuration shown and are used as switches to provide voltage or current in one of two directions through the motor 30 depending on the switched configuration. For example, transistors 52 and 54 can be switched on and transistors 56 and 58 can be switched off to provide current in one direction through the motor 30, and transistors 56 and 58 can be switched on while transistors 52 and 54 are switched off to provide current in the other direction through the motor 30. The operation of switching H-bridge circuits are well known to those skilled in the art. Either a voltage- controlled amplifier or a current-controlled amplifier circuit can be used. Other H-bridge switching circuits that use FET transistors can also be used in the present invention.
FIGURE 5b is a diagram of a second example of a drive circuit 60 that can be used to drive actuator 30 in bi-directional mode. Circuit 60 allows an input current to drive the actuator 30 in either direction by providing current in either direction through the actuator load. An input signal is provided at node 62, and is amplified either by linear amplifier 64 or linear amplifier 66 depending on the direction of the cuπent, where an inverter 68 inverts the signal for amplifier 66. Such functionality can be obtained with many commonly available linear amplifier integrated circuits. Any amplifier circuit which is capable of reversing drive current can be used to drive the motor in two directions.
In other embodiments of the present invention, yet other types of actuators can be used. For example, a solenoid having linear motion can be used to provide the bi-directional vibrations described above. Rotary or linear voice coil or moving magnet actuators can also be used.
While this invention has been described in terms of several preferred embodiments, it is contemplated that alterations, permutations and equivalents thereof will become apparent to those skilled in the art upon a reading of the specification and study of the drawings. 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 alterations, permutations, and equivalents as fall within the true spirit and scope of the present invention.

Claims

What is claimed is:C L A I M S
1. A method for providing a vibration for a haptic feedback device, the method comprising:
providing an actuator for said haptic feedback device, said actuator including a rotatable mass; and
receiving information at said haptic feedback device, said information causing a drive signal to be produced, said drive signal controlling said actuator to oscillate said mass in two directions about an axis of rotation of said actuator such that said oscillation of said mass induces a vibration in said haptic feedback device, wherein a magnitude and a frequency of said vibration can be independently controlled by adjusting a magnitude and a frequency, respectively, of said drive signal.
2. A method as recited in claim 1 wherein said mass of said actuator is an eccentric mass.
3. A method as recited in claim 2 wherein said oscillation of said eccentric mass in said two directions is accomplished in a bi-directional mode, and wherein a different drive signal is provided to said actuator in a uni-directional mode to rotate said eccentric mass in a single direction about said axis of rotation of said shaft.
4. A method as recited in claim 3 wherein said uni-directional mode is used to output high magnitude, low frequency vibrotactile effects, and wherein said bi-directional mode is used to output high frequency vibrotactile effects.
5. A method as recited in claim 1 wherein said haptic feedback device is a gamepad controller, said gamepad controller communicating with a computer and receiving commands from said computer which determine when said vibration is to be output based on events occurring within a graphical environment implemented and displayed by said computer.
6. A method as recited in claim 5 wherein said gamepad controller includes a joystick having two degrees of freedom and providing input to said host computer when manipulated by said user.
7. A method as recited in claim 1 wherein said drive signal is provided to said actuator using a H-bridge circuit.
8. A method as recited in claim 1 wherein said drive signal is derived from a command from a host computer coupled to said force feedback device and displaying a graphical environment manipulable by a user of said haptic feedback device.
9. A method as recited in claim 2 wherein said eccentric mass is wedge-shaped.
10. A method for commanding a vibration for a haptic feedback device from a host computer, said host computer implementing a graphical environment, the method comprising:
receiving an indication to output information to cause a haptic effect to be output to a user of a haptic feedback device coupled to said host computer, said indication caused by an event or interaction occurring in said graphical environment; and
providing information to said haptic feedback device, said information including a magnitude and a frequency that are independently adjustable, wherein an actuator is caused to oscillate a mass in two directions to cause a vibration in a housing of said haptic feedback device, wherein a magnitude and a frequency of said vibration is based on said magnitude and frequency included in said information.
11. A method as recited in claim 10 wherein said indication to output said information is received by a force feedback driver program running on said host computer.
12. A method as recited in claim 10 wherein said actuator is a rotary actuator and said mass of said actuator is an eccentric mass and is rotated about an axis of rotation of said actuator.
13. A method as recited in claim 12 wherein said oscillation of said mass in said two directions is accomplished in a bi-directional mode, and wherein different information is provided to said actuator in a uni-directional mode to rotate said mass in a single direction about said axis of rotation of said actuator.
14. A method as recited in claim 14 wherein said uni-directional mode is used to output high magnitude, low frequency vibrotactile effects, and wherein said bi-directional mode is used to output high frequency vibrotactile effects.
15. A method as recited in claim 10 wherein said haptic feedback device is a gamepad controller grasped by a hand of a user, and wherein said events occurring within said graphical environment include an interaction of a user-controlled graphical object with a different graphical object.
16. A method as recited in claim 10 wherein said information provided to said haptic feedback device is a command including parameters describing said magnitude and frequency.
17. A method as recited in claim 10 wherein said information provided to said haptic feedback device is a drive signal which is provided to said actuator.
18. A haptic feedback device for providing vibrotactile sensations to a user, said haptic feedback device coupled to a host computer and comprising:
a housing grasped by said user;
an actuator coupled to said housing and including a mass, wherein said mass can be rotated by said actuator; and
a circuit for driving said actuator in two directions, said circuit receiving a drive signal and causing said actuator to oscillate said mass about an axis of rotation and induce a vibration in said housing, said vibration experienced by said user as vibrotactile sensations.
19. A haptic feedback device as recited in claim 18 wherein said mass is an eccentric mass positioned offset on said rotating shaft.
20. A haptic feedback device as recited in claim 18 wherein said circuit for driving said actuator includes an H-bridge circuit that can provide current in two directions through said actuator.
21. A haptic feedback device as recited in claim 18 wherein said circuit for driving said actuator includes two linear amplfiers, each of said linear amplifiers amplifying a signal through said actuator in a different direction to allow said actuator to driven in said two directions.
22. A haptic feedback device as recited in claim 18 wherein said haptic feedback device is a gamepad controller, said gamepad controller receiving information from said host computer which determines when said vibrotactile sensations are to be output based on events occurring within a graphical environment implemented and displayed by said host computer.
23. A method as recited in claim 22 wherein said gamepad controller includes a joystick having two degrees of freedom and providing input to said host computer when manipulated by said user.
PCT/US2000/017980 1999-07-01 2000-06-30 Controlling vibrotactile sensations for haptic feedback devices WO2001003105A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU60594/00A AU6059400A (en) 1999-07-01 2000-06-30 Controlling vibrotactile sensations for haptic feedback devices

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14215599P 1999-07-01 1999-07-01
US60/142,155 1999-07-01

Publications (2)

Publication Number Publication Date
WO2001003105A1 true WO2001003105A1 (en) 2001-01-11
WO2001003105A9 WO2001003105A9 (en) 2002-04-25

Family

ID=22498753

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2000/017980 WO2001003105A1 (en) 1999-07-01 2000-06-30 Controlling vibrotactile sensations for haptic feedback devices

Country Status (2)

Country Link
AU (1) AU6059400A (en)
WO (1) WO2001003105A1 (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6424333B1 (en) 1995-11-30 2002-07-23 Immersion Corporation Tactile feedback man-machine interface device
US8007282B2 (en) 2001-07-16 2011-08-30 Immersion Corporation Medical simulation interface apparatus and method
US8441444B2 (en) 2000-09-28 2013-05-14 Immersion Corporation System and method for providing directional tactile sensations
US8576174B2 (en) 2002-04-25 2013-11-05 Immersion Corporation Haptic devices having multiple operational modes including at least one resonant mode
US9134795B2 (en) 2000-09-28 2015-09-15 Immersion Corporation Directional tactile feedback for haptic feedback interface devices
US9492847B2 (en) 1999-09-28 2016-11-15 Immersion Corporation Controlling haptic sensations for vibrotactile feedback interface devices
US9625905B2 (en) 2001-03-30 2017-04-18 Immersion Corporation Haptic remote control for toys
US9753540B2 (en) 2012-08-02 2017-09-05 Immersion Corporation Systems and methods for haptic remote control gaming

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4731603A (en) * 1985-08-30 1988-03-15 Unisys Corporation Tactile alarm system for gaining the attention of an individual
US5296871A (en) * 1992-07-27 1994-03-22 Paley W Bradford Three-dimensional mouse with tactile feedback

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4731603A (en) * 1985-08-30 1988-03-15 Unisys Corporation Tactile alarm system for gaining the attention of an individual
US5296871A (en) * 1992-07-27 1994-03-22 Paley W Bradford Three-dimensional mouse with tactile feedback

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6424333B1 (en) 1995-11-30 2002-07-23 Immersion Corporation Tactile feedback man-machine interface device
US9690379B2 (en) 1995-11-30 2017-06-27 Immersion Corporation Tactile feedback interface device
US9492847B2 (en) 1999-09-28 2016-11-15 Immersion Corporation Controlling haptic sensations for vibrotactile feedback interface devices
US8441444B2 (en) 2000-09-28 2013-05-14 Immersion Corporation System and method for providing directional tactile sensations
US9134795B2 (en) 2000-09-28 2015-09-15 Immersion Corporation Directional tactile feedback for haptic feedback interface devices
US9625905B2 (en) 2001-03-30 2017-04-18 Immersion Corporation Haptic remote control for toys
US8007282B2 (en) 2001-07-16 2011-08-30 Immersion Corporation Medical simulation interface apparatus and method
US8576174B2 (en) 2002-04-25 2013-11-05 Immersion Corporation Haptic devices having multiple operational modes including at least one resonant mode
US9753540B2 (en) 2012-08-02 2017-09-05 Immersion Corporation Systems and methods for haptic remote control gaming

Also Published As

Publication number Publication date
AU6059400A (en) 2001-01-22

Similar Documents

Publication Publication Date Title
US7656388B2 (en) Controlling vibrotactile sensations for haptic feedback devices
US6982696B1 (en) Moving magnet actuator for providing haptic feedback
US6693622B1 (en) Vibrotactile haptic feedback devices
US7182691B1 (en) Directional inertial tactile feedback using rotating masses
US7561142B2 (en) Vibrotactile haptic feedback devices
JP5244702B2 (en) Directional contact feedback for haptic feedback interface devices
US7084854B1 (en) Actuator for providing tactile sensations and device for directional tactile sensations
US8169402B2 (en) Vibrotactile haptic feedback devices
US7209118B2 (en) Increasing force transmissibility for tactile feedback interface devices
US6686901B2 (en) Enhancing inertial tactile feedback in computer interface devices having increased mass
US6995744B1 (en) Device and assembly for providing linear tactile sensations
JP5417663B2 (en) Tactile feedback using rotary harmonic motion mass
US7265750B2 (en) Haptic feedback stylus and other devices
US7106305B2 (en) Haptic feedback using a keyboard device
US9492847B2 (en) Controlling haptic sensations for vibrotactile feedback interface devices
JP2003199974A6 (en) Directional contact feedback for haptic feedback interface devices
WO2001003105A1 (en) Controlling vibrotactile sensations for haptic feedback devices
WO2001003105A9 (en) Controlling vibrotactile sensations for haptic feedback devices
WO2001013354A9 (en) Vibrotactile haptic feedback devices

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AG AL AM AT AU AZ BA BB BG BR BY CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GE GH GM HR HU ID IL IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP