`US 7,843,277 B2
`(0) Patent No.:
`Gregorioetal.
`Nov.30, 2010
`(45) Date of Patent:
`
`US007843277B2
`
`HAPTIC FEEDBACK GENERATION BASED
`
`(56)
`
`ON RESONANT FREQUENCY
`
`References Cited
`U.S. PATENT DOCUMENTS
`
`(54)
`
`(75)
`
`Inventors: Pedro Gregorio, Verdun (CA); Danny
`A. Grant, Laval (CA); Patrice Favreau,
`Mascouche (CA); Eric Meunier,
`Montreal North (CA)
`
`(73)
`
`Assignee:
`
`Immersion Corporation, San Jose, CA
`(US)
`
`Notice:
`
`Subject to any disclaimer, the term ofthis
`patent is extended or adjusted under 35
`US.C. 154(b) by 160 days.
`
`(21)
`
`Appl. No.: 12/336,231
`
`(22)
`
`Filed:
`
`Dec. 16, 2008
`
`(65)
`
`Prior Publication Data
`
`US 2010/0153845 Al
`
`Jun. 17, 2010
`
`(51)
`
`Int. Cl.
`
`(52)
`
`(58)
`
`(2006.01)
`H03B 530
`(2006.01)
`G06F 3/01
`US. CL. oe 331/65; 331/116 R; 331/154;
`715/702; 345/173
`Field of Classification Search................... 331/65,
`331/35, 116 R, 116 M, 154; 715/702; 310/318,
`310/37; 345/156, 173
`See application file for complete search history.
`
`4,479,098 A
`4,539,845 A *
`4,811,835 A *
`5,783,973 A *
`6,275,213 Bl
`6,424,333 BL*
`2005/0052415 Al*
`
`10/1984 Watson
`9/1985 Molimar ....... ee 73/578
`
`.. 198/762
`3/1989 Bullivant
`...........
`
`...... we 331/35
`7/1998 Weinberg etal.
`8/2001 Tremblay etal.
`........... 345/156
`7/2002 Tremblay etal.
`3/2005 Braunetal. .... 345/161
`
`FOREIGN PATENT DOCUMENTS
`
`WO
`
`WO 99/63537
`
`12/1999
`
`* cited by examiner
`
`Primary Examiner—Joseph Chang
`(74) Attorney, Agent, or Firm—Squire, Sanders & Dempsey,
`LLP
`
`(57)
`
`ABSTRACT
`
`A system that generates a haptic effect generatesa drive cycle
`signal that includes a drive period and a monitoring period.
`The drive period includes a plurality of drive pulses that are
`based onthe haptic effect. The system applies the drive pulses
`to a resonant actuator during the drive period and receives a
`signal from the resonant actuator that corresponds to the
`position of a mass in the actuator during the monitoring
`period.
`
`25 Claims, 6 Drawing Sheets
`
`MONITORING BRANCH
`
`400
`
`
`
`AMPLITUDE SAMPLING
`WITH OFFSET NULL
`
`424
`422
`PWR
`
`STAGE
`
` DRIVE EXTENSION
`
`POLARITY
`
`
`
`DRV_EXT
`
`
`ZERO CROSSING
`POLARITY
`100 uS
`
`
` PULSE DURATION
`SAMPLING DT
`WITH
`CHANGE
`22ms
`
`
`200 uS
`
`
`
`OFFSET NULL
`DETECT
`LOW PASS
`
`
`
`FILTER RECOVERY
`
`
`
`
`\4
`
`09
`
`APPLE 1007
`
`1
`
`APPLE 1007
`
`
`
`U.S. Patent
`
`Nov.30, 2010
`
`Sheet 1 of 6
`
`US 7,843,277 B2
`
`AONANOYSLNVNOSSY
`
`NOLWNIWYSL40
`
`HLIMSACVel
`
`YOS$300ud
`
`Val
`
`|Sls
`
`
`
`
`
`
`
`\ LIMOYIDSATHCHOLVALOYa
`
`2
`
`
`
`
`
`Sheet 2 of 6
`
`US 7,843,277 B2
`
`U.S. Patent
`
`Nov. 30, 2010
`
`FIG.2
`
`3
`
`
`
`U.S. Patent
`
`Nov.30, 2010
`
`Sheet 3 of 6
`
`US 7,843,277 B2
`
`
`
`
`
`YaLdV“FTOAOHOWLV
`
`STVHHOV]LY
`
`
`
`IN3S3udSHLNVHLSLVSu9ValSHLHLIMSSVHd
`
`
`CNLdWGsuISaaNI‘ONISSONDO43Z
`
`3HISIAGGSZINOMHONAS381d
`
`LSV1SHL40NJSHL
`
`
`
`WUTSHLSYNSWAN“3S1Nd
`
`JCALWYNOLLVUSIA
`
`JOLO/ACSHLNOC3Sve
`
`SWSYOWESHL
`
`JQOWONT
`
`A@GAZINOUHONAS4S1Nd
`
`
`
`40LNO"ONISSONDO43Z
`
`ValHLHIMSSVHd
`
`01G3ZISONYNOLLVTTIOSO
`
`
`
`JONSYSISICSH!TIONVO
`
`LNIYYNO¥GNSS
`
`GsuISAdSHLSuVdWOO
`
`HLOLSCALIA
`
`
`
`FANLNdWYLNASSYd
`
`ONISSO¥O
`
`ONISSOUDO3ZFUNSVAN
`
`AW3MOVEVa40SNL
`
`
`
`ALIYW10dSHLHOLTONY
`
`
`
`JOONSSHLTLNASALVLS
`
`
`
`391dSAICSHL
`
`
`
`JCOWSAICCHVMuO4
`
`LNFYYNDVGNSS
`
`©Old
`
`iJCNLNdNYOlAZISGNVNOLLVTIIOSO
`
`JONFYIIIIGSHLTIONVO
`
`
`
`SALWLSALISV10d
`
`4
`
`
`
`U.S. Patent
`
`Nov.30, 2010
`
`Sheet 4 of 6
`
`US 7,843,277 B2
`
`
`
`NOISNSLX3SAIHC
`
`Alldv10d
`
`LAOXIN
`
`A¥AAOOSYHSLIs
`
`60¢
`
`
`SS¥dMOT193130TIAN138440
`
`laSNSJONVHYHIMsooMIMV10dONISSOWOO83Z
`
`NounvungSond
`
`y-Ols
`
`MMdCCPLey0erdy44id
`
`
`
`
`007HONVY9ONINOLINOW
`
`20
`
`
`
`JQALIGNV c0FTIAN13$440HLIMpONTIANVS
`
`5
`
`
`
`
`
`
`
`U.S. Patent
`
`Nov.30, 2010
`
`Sheet 5 of 6
`
`US 7,843,277 B2
`
`GOld_ef|ftfttft_.
`..{of||ftateee|i__
`.eeamtn_.
`
`ver0|ver0r7690"acleo:clzoWeOSloAC_TyV|||Me_.
`L130p20oeTl
`stoBey0wnnnennnndeneneeenpeeeee«90
`
`
`
`
`fq06SGOLuad|ONIYOLINOMOzS|aoladanu/WejaoraeanaNA
`
`IHintTAH_.
`
`
`
`$70
`
`209
`
`eb28L)
`
`6
`
`
`
`
`
`U.S. Patent
`
`Nov. 30, 2010
`
`Sheet 6 of 6
`
`US 7,843,277 B2
`
` KICK / WATCHDOG
`
`
`
`
`INITATE A HALF DRIVE
`
`CYCLE ~ 2.2 ms PULSE
`
`
`
`AND SETINITIAL POLARITY HALF DRIVE CYCLE
`
`
`~2.2 ms AT CURRENT
`
`POLARITY
` COMPARE THE DESIRED
`
`ANPLITUDE TO THE
`
`PRESENT AMPLITUDE
`
`
`
`
`
`ACCELERATION MODE
`BRAKE MODE
`IS THE
`
`
`
`SENOA CURRENTPULSE
`SEND 4 CURRENTPULSE
`
`
`SYNCHRONIZED BY ZERO CROSSING,IN]
`YES
`NO|SYNCHRONIZEDBYZEROCROSSING,CUT OF
`
`
`
`
`GREATER THAN THE PRESENT
`PHASE WITH THELRA OSCILLATIONAND
`PHASE WITH THELRA OSCILLATIONAND SIZED
`
`AMPLITUDE?
`Si7ED TO CANCEL THEDIFFERENCE
`
`TO CANCEL THEDIFFERENCE
`
`
`
`
`
`STOP DRIVING FOR ~ 300us
`TO LET VOLTAGE SETTLE DOWN
`TOTHEBACK EMF VOLTAGE|TRIG OFFSET NULLING SAMPLE AND HOLD
`DRIVE EXTENSION
`
`MONITORING PERIOD
`
`
`DETECTED?
`
`YES
`
` LATCH POLARITY & START
`
`
`
`SAMPLE ACTUAL BACK EMF
`VOLTAGE & COMPUTE PRESENT
`
`AMPLITUDE
`
`
`
`ANPLITUDE MEASUREMENT
`
`SAMPLING AMPLITUDE
`
`WAIT 200 uS
`
`FIG. 6
`
`7
`
`
`
`US 7,843,277 B2
`
`1
`HAPTIC FEEDBACK GENERATION BASED
`ON RESONANT FREQUENCY
`
`FIELD OF THE INVENTION
`
`One embodimentis directed generally to a user interface
`for a device, and in particular to generating haptic feedback
`for the user interface.
`
`BACKGROUND INFORMATION
`
`Electronic device manufacturers strive to produce a rich
`interface for users. Conventional devices use visual and audi-
`
`tory cues to provide feedback to a user. In some interface
`devices, kinesthetic feedback (such as active and resistive
`force feedback) and/or tactile feedback (such as vibration,
`texture, and heat) is also providedto the user, more generally
`knowncollectively as “haptic feedback”or “haptic effects”.
`Haptic feedback can provide cues that enhance and simplify
`the user interface. Specifically, vibration effects, or vibrotac-
`tile haptic effects, may be useful in providing cues to users of
`electronic devices to alert the user to specific events, or pro-
`vide realistic feedback to create greater sensory immersion
`within a simulated or virtual environment.
`In order to generate vibration effects, many devices utilize
`sometype of actuator. Knownactuators used for this purpose
`include an electromagnetic actuator such as an Eccentric
`Rotating Mass (“ERM”) in which an eccentric mass is moved
`by a motor, a Linear Resonant Actuator (“LRA”) in which a
`massattachedto a spring is driven back andforth,or a “smart
`material” such as piezoelectric, electro-active polymers or
`shape memory alloys. Many of these actuators, and the
`devices that they interact with, have built-in resonant frequen-
`cies that optimally are dynamically determined and con-
`trolled so that drive signals that generate the haptic effects can
`be most effective and efficient.
`
`SUMMARYOF THE INVENTION
`
`One embodimentis a system that generates a haptic effect.
`The system generates a drive cycle signal that includes a drive
`period and a monitoring period. The drive period includes a
`plurality of drive pulses that are based on the haptic effect.
`The system applies the drive pulses to a resonant actuator
`during the drive period and receivesa signal from the resonant
`actuator that corresponds to the position of a mass in the
`actuator during the monitoring period.
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`FIG. 1 is a block diagram ofa haptically-enabled system in
`accordance with one embodiment.
`FIG.2 is a cut-away side view of an LRA in accordance to
`one embodiment.
`FIG. 3 is a flow diagram ofthe functionality of a module in
`conjunction with a processor and an actuator drive circuit
`when driving LRA to generate haptic feedback accordance
`with one embodiment.
`
`FIG. 4 is a block diagram of a circuit for generating the
`functionality of FIG. 3 for driving the LRA in accordance
`with one embodiment.
`FIG.5 is a graphthatillustrates an example of a portion of
`a drive cycle that includes a drive period and a monitoring
`period.
`FIG.6 is a flow diagram ofthe functionality of a module in
`conjunction with a processor and an actuator drive circuit
`when driving LRA to generate haptic feedback accordance
`with one embodiment.
`
`10
`
`15
`
`25
`
`30
`
`35
`
`45
`
`50
`
`55
`
`60
`
`65
`
`2
`DETAILED DESCRIPTION
`
`One embodimentis a system that drives an LRA to gener-
`ate vibrotactile haptic feedback on a user interface or other
`area of a device. The system drives the LRA so that the
`resonant frequency of the LRA can be determined during a
`drive period and the drive signal can be adjusted to maximize
`the haptic feedback based on the determined resonantfre-
`quency
`FIG.1 is a block diagram ofa haptically-enabled system 10
`in accordance with one embodiment. System 10 includes a
`touch sensitive surface 11 or other type of user interface
`mounted within a housing 15, and may include mechanical
`keys/buttons 13. Internal to system 10 is a haptic feedback
`system that generates vibrations on system 10.
`In one
`embodiment, the vibrations are generated on touch surface
`11.
`
`The haptic feedback system includes a processor 12.
`Coupled to processor 12 is amemory 20 and an actuator drive
`circuit 16, which is coupled to an LRA actuator 18. Processor
`12 may be any type of general purpose processor, or could be
`a processor specifically designed to provide haptic effects,
`such as an application-specific integrated circuit (“ASIC”).
`Processor 12 may be the same processor that operates the
`entire system 10, or may be a separate processor. Processor 12
`can decide whathaptic effects are to be played and the order
`in which the effects are played based on high level param-
`eters. In general, the high level parameters that define a par-
`ticular haptic effect include magnitude, frequency and dura-
`tion. Low level parameters
`such as
`streaming motor
`commandscould also be used to determinea particular haptic
`effect. A haptic effect may be considered “dynamic”if it
`includes somevariation of these parameters whenthe haptic
`effect is generatedor a variation ofthese parameters based on
`a user’s interaction.
`
`Processor 12 outputs the control signals to drive circuit 16
`which includes electronic components and circuitry used to
`supply LRA 18 with the required electrical current and volt-
`age to causethe desired haptic effects. System 10 may include
`more than one LRA 18, and each LRA mayinclude a separate
`drive circuit 16, all coupled to a common processor 12.
`Memory device 20 can be any type of storage device or
`computer-readable medium, such as random access memory
`(“RAM”) or read-only memory (“ROM”). Memory 20 stores
`instructions executed by processor 12. Among the instruc-
`tions, memory 20 includes an LRA Drive with Resonant
`Frequency Determination module 22 which are instructions
`that, when executed by processor 12, generate drive signals
`for LRA 18 while also determining the resonant frequency of
`LRA 18 and adjusting the drive signals accordingly. The
`functionality of module 22 is discussed in more detail below.
`Memory 20 mayalso be located internal to processor 12, or
`any combination of internal and external memory.
`Touch surface 11 recognizes touches, and may also recog-
`nize the position and magnitude of touches on the surface.
`The data corresponding to the touchesis sent to processor 12,
`or another processor within system 10, and processor 12
`interprets the touches and in response generates haptic effect
`signals. Touch surface 11 may sense touches using any sens-
`ing technology, including capacitive sensing, resistive sens-
`ing, surface acoustic wave sensing, pressure sensing, optical
`sensing, etc. Touch surface 11 may sense multi-touch con-
`tacts and may be capable of distinguishing multiple touches
`that occur at the same time. Touch surface 11 may be a
`touchscreen that generates and displays imagesfor the userto
`interact with, such as keys,dials, etc., or may be a touchpad
`with minimal or no images.
`
`8
`
`
`
`US 7,843,277 B2
`
`4
`drive signal cycle includes a drive period where drive signal
`pulses are applied to LRA 18, and a monitoring period where
`the back electromagnetic field (“EMF”) of the moving mass
`27 is received and used to determinethe resonant frequency of
`the LRA. The drive signal pulses incorporate the desired
`haptic effect so that they are translated by LRA 18 into the
`haptic effect. In one embodiment, LRA 18 includes a sensing
`coil, Hall sensor, optical sensor or other type of sensing
`device that is located in proximity to mass 27for detecting the
`position of mass 27. In this embodiment, the sensing device
`will provide a sensed position signal that can be used as the
`monitoring signal to provide information about the position
`of the mass 27 instead of the back EMFsignal generated by
`the mass and drive coil of the LRA itself.
`
`FIG.3 is a flow diagram of the functionality of module 22
`in conjunction with processor 12 and actuator drivecircuit 16
`when driving LRA 18 to generate haptic feedback. The func-
`tionality of FIG. 3, and FIG. 6 below, is executed as a con-
`tinuous loop during a drive cycle that includesa drive period
`and a monitoring period. Whenthe functionality of FIG. 3 is
`initially executed, a resonant frequency for LRA 18 is
`assumed. During the drive period (approximately 90%) ofthe
`drive cycle, a drive pulse in the form of a square wave is
`applied to LRA 18, and during the monitoring period (ap-
`proximately 10%) ofthe drive cycle, drive circuit 16 “listens”
`or monitors and receives magnetic back EMF(i.e., the voltage
`generated by the internal motion inside LRA 18) from LRA
`18. In one embodiment,the functionality of the flow diagram
`of FIG. 3 is implemented by software stored in memory or
`other computer readable or tangible medium,and executed by
`a processor. In other embodiments, the functionality may be
`performed by hardware(e.g., through the use of an applica-
`tion specific integrated circuit (“ASIC”), a programmable
`gate array (“PGA”),
`a field programmable gate array
`(“FPGA”), etc.), or any combination of hardware andsoft-
`ware.
`
`3
`System 10 may be a handheld device, such as a cellular
`telephone, PDA, computer tablet, etc. or may be any other
`type of device that provides a user interface and includes a
`haptic effect system that includes one or more LRAs. The user
`interface may be a touch sensitive surface, or can be any other
`type of user interface such as a mouse, touchpad, mini-joy-
`stick, scroll wheel, trackball, game pads or game controllers,
`etc. Inembodiments with more than one LRA, each LRA may
`have a different resonant frequency in order to create a wide
`range of haptic effects on the device. Each LRA maybe any
`type of resonantactuator.
`FIG.2 is a cut-away side view of LRA 18 in accordance to
`one embodiment. LRA 18 includes a casing 25, a magnet/
`mass 27,a linear spring 26, andan electric coil 28. Magnet 27
`is mounted to casing 25 by spring 26. Coil 28 is mounted
`directly on the bottom of casing 25 underneath magnet 27.
`LRA 18 is typical of any known LRA.In operation, when
`current flows thru coil 28 a magnetic field forms around coil
`28 whichin interaction with the magnetic field of magnet 27
`pushes or pulls on magnet 27. One current flow direction/
`polarity causes a push action and the other a pull action.
`Spring 26 controls the up and down movement of magnet 27
`and has a deflected up position where it is compressed, a
`deflected down position where it is expanded,and a neutral or
`zero-crossing position where it is neither compressed or
`deflected and which is equal to its resting state when no
`current is being applied to coil 28 and there is no movement/
`oscillation of magnet 27.
`For LRA 18, a mechanical quality factor or “Q factor” can
`be measured. In general, the mechanical Q factoris a dimen-
`sionless parameter that compares a time constantfor decay of
`an oscillating physical system’s amplitude toits oscillation
`period. The mechanical Q factor is significantly affected by
`mounting variations. The mechanical Q factor represents the
`ratio of the energy circulated between the mass and spring
`over the energylost at every oscillation cycle. A low Q factor
`
`meansthatalarge portion ofthe energy stored in the mass and At302, at each half crossing of the drive pulse (i.e., when
`
`spring is lost at every cycle. In general, a minimumQfactor the square wave pulse goes from positive to negative and vice
`occurs with system 10 is held firmly in a hand due to energy
`versa), the zero crossing time of the LRA back EMFis mea-
`being absorbed bythe tissues of the hand. The maximum Q
`sured and the polarity status is latched until the end of the
`factor generally occurs when system 10 is pressed against a
`drive pulse.
`hard and heavy surfacethatreflects all ofthe vibration energy
`At 304, during each drive cycle, after the end ofthe last
`back into LRA 18.
`drive pulse (i.e., during the monitoring portion of the drive
`cycle), the LRA vibration amplitude is measured based on the
`In direct proportionality to the mechanical Q factor, the
`derivative of the speed of the mass (“dv/dt’’), which is based
`forces that occur between magnet/mass 27 and spring 26 at
`on the back EMF. The derivative of the speed of the mass
`resonanceare typically 10-100 timeslarger thanthe force that
`provides a measurement of how far the mass will rise above
`coil 28 must produce to maintain the oscillation. Conse-
`the zero crossing.
`quently, the resonant frequency of LRA 18 is mostly defined
`At 306, the desired amplitude is comparedto the present
`by the mass of magnet 27 and the complianceof spring 26.
`amplitude as determinedat 304.
`However, when an LRA is mounted toa floating device(1.e.,
`At 308, it is determinedif the desired amplitudeis greater
`system 10 held softly in a hand), the LRA resonantfrequency
`than the present amplitude. Decision block 308 also is pro-
`shifts up significantly. Further, significant frequency shifts
`vided as input the polarity status from 302. Based on the
`can occur due to external factors affecting the apparent
`decision at 308, functionality proceeds to forward drive mode
`mounting weight of LRA 18 in system 10, suchas acell phone
`at 312 because the amplitude of the mass needs to be
`flipped open/closed or the phone held tightly. Further, it is
`difficult using known manufacturing techniques to manufac-
`increased, or braking mode at 310 because the amplitude of
`the mass needs to be decreased.
`ture an LRA with a knownresonant frequency withinatight
`tolerance. Therefore, known uses of LRA typically must
`At 312, a drivepulse is sent that is synchronized by the zero
`assumea fixed resonant frequencyatall times, which does not
`crossing and in phase with the LRA oscillation. The drive
`take into account changing resonant frequency dueto differ-
`pulse is sized to cancel the difference between the present
`ent uses of a device or due to manufacturing tolerances. Since
`amplitude and the desired amplitude.
`the assumption ofthe resonant frequencyis typically inaccu-
`At 310, a drivepulse is sent that is synchronized by the zero
`rate, the subsequent use of the LRA to generate haptic feed-
`crossing and out of phase with the LRA oscillation. The drive
`backis typically inefficient and not as effective as possible.
`pulse is sized to cancel the difference between the present
`One embodimentof the present invention constantly and
`amplitude and the desired amplitude.
`dynamically determines the resonant frequency of LRA 18
`FIG. 41s a block diagram ofa circuit 400 for generating the
`while during a monitoring period of a drive signal cycle. A
`functionality ofFIG.3 for driving LRA 18 in accordance with
`
`30
`
`40
`
`45
`
`55
`
`9
`
`
`
`US 7,843,277 B2
`
`5
`one embodiment. In the embodimentof FIG.4, the driving
`signal is generated primarily in hardware as opposed to FIG.
`3 which can be generated by any combination of software(via
`module 22) or hardware.
`Circuit 400 is controlled by a “command”signal 410 thatis
`converted from a Pulse-width modulation (“PWM”). When
`command 410 exceeds a starting threshold and becomes
`“valid”it initiates a “kick” pulse that is an initiationofthefirst
`drive pulse. If LRA 18 was stopped for any reason while
`command 410 wasvalid a kick pulse would be issued every
`10 ms.
`
`During a drive cycle, the drive pulse has a duration of
`approximately 2.2 ms generated by pulse duration 408, and it
`is then followed by an approximately 100 us delay generated
`by drive extension 409 that allows the drive pulse to go back
`to zero. During this 100 1s monitoring period, the L|RA back
`EMF is transmitted along monitoring branch 430 to Zero
`Crossing with Offset Null circuit 405. Circuit 405 waits for a
`zero crossing. This edge initiates a 200 us sampling amplitude
`delay 407 that will restart a new pulse. Further, when an edge
`is detected, the polarity ofthe transitionis latched in latch 406
`for the next pulse and sampling logic.
`Circuit 405 includes a comparator and two analog
`switches. Whenthe pulse drivenis active via switch 420, the
`negative input is connected back to the output, thereby nulling
`the offset of the comparator. Offset nulling is needed in one
`embodiment because the back EMF amplitude may be gen-
`erally low, especially after the first pulse. An excessively
`positive offset would makethe detection ofthe edge tooearly,
`thereby increasing the frequency of the system. However,if
`the offset were excessively negative the edge would never be
`detected and the pulses would stop.
`Amplitude sampling with offset null circuit 402 includes
`an operational amplifier and three analog switches. Circuit
`402 measures the difference of amplitude between the time
`the zero crossing is detected until the end of the sampling
`period, which last approximately 200 us. Circuit 402 also
`nulls the amplifier offset. Offsets increase amplitude errors
`and decrease the performanceat braking.
`Dual differential amplifier circuit 404 includes an opera-
`tional amplifier and double pole, double throw (““DPDT”)
`analog switch. Depending onthe polarity, the amplitude of
`the MIX-OUTsignal 403 is subtracted from command 410.
`Theresult is sent to a pulse shaping circuit.
`The pulse shaping circuit includes an analog switch 420 for
`shaping the pulse anda filter 421 to smooth the pulse and
`reduce the high frequency content to avoid excessive audio
`noise. Thefiltered pulse is then converted to current bycur-
`rent generator 422.
`Driving a current allows for a compensation in a change in
`impedance variation that would affect the response, in par-
`ticular at the end ofbraking. Switch 420 is also used to switch
`from the drive period (switch is closed) to the monitoring
`period (switch is open).
`FIG.5 is a graphthatillustrates an example of a portion of
`a drive cycle that includes a drive period and a monitoring
`period. A command signal 502 (which corresponds to com-
`mandsignal 410 of FIG.4) transitions between periods 510
`and 520. A drive signal 504 is a square wavethat is active
`during drive pulse periods 510 and 520, and inactive during
`monitoring period 530. Drive signal 504 is applied to LRA 18
`of FIG.4. An output signal 506 gradually is reduced in ampli-
`tudebutis still active during monitoring period 530 dueto the
`back EMFgenerated by the moving mass of LRA 18. Output
`signal 506 is whatis transmitted along monitoring branch 430
`of FIG.4.
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`6
`FIG.6 is a flow diagram of the functionality of module 22
`in conjunction with processor 12 and actuator drivecircuit 16
`when driving LRA 18 to generate haptic feedback in accor-
`dance with one embodiment.
`As disclosed, the drive circuit in accordance with one
`embodiment generates haptic feedback with an LRA by
`including a monitoring period where the resonant frequency
`of the LRA is determined. The subsequent drive pulses are
`then adjusted to accountfor the resonant frequency.
`Several embodiments are specifically illustrated and/or
`described herein. However, it will be appreciated that modi-
`fications and variations of the disclosed embodiments are
`
`covered by the above teachings and within the purview ofthe
`appended claims without departing from the spirit and
`intended scope of the invention.
`Whatis claimedis:
`
`1. A methodof generating a haptic effect comprising:
`generating a drive cycle signal that comprises a drive
`period and a monitoring period, wherein the drive period
`comprises a plurality ofdrive pulses that are based on the
`haptic effect;
`applying the drive pulses to a resonant actuator during the
`drive period, wherein the resonant actuator comprises a
`mass; and
`receiving a signal that comprises a position of the mass
`from the resonant actuator during the monitoring period.
`2. The method of claim 1, further comprising:
`modifying an amplitude of one of the drive pulses in
`responseto the signal.
`3. The method of claim 2, wherein the signal is a back
`electromagnetic field (EMF).
`4. The method of claim 3, wherein the amplitude is modi-
`fied based on a derivative of the back EMF.
`5. The method of claim 2, wherein the drive pulse is out of
`phase with a resonant actuatoroscillation.
`6. The method of claim 2, wherein the drive pulse is in
`phase with a resonant actuatoroscillation.
`7. The method of claim 1, further comprising:
`determining a resonant frequency of the resonant actuator
`during the monitoring period.
`8. The method of claim 1, wherein the haptic effect is a
`vibrotactile haptic effect.
`9. The method of claim 1, wherein the resonant actuatoris
`a linear resonant actuator.
`
`10. The method of claim 1, wherein the signal is generated
`by a sense coil in proximity to the mass.
`11. A haptic effect enabled system comprising:
`a resonantactuator that comprises a mass;
`circuitry coupled to the resonant actuator, wherein the cir-
`cuitry is adapted to generate a drive cycle signal that
`comprises a drive period and a monitoring period,
`wherein the drive period comprises a plurality of drive
`pulses that are based on a hapticeffect;
`wherein the circuitry is adapted to applythe drive pulses to
`a resonant actuator during the drive period, and receive a
`signal that comprises a position of the mass from the
`resonant actuator during the monitoring period.
`12. The system of claim 11, the circuitry further adapted to
`modify an amplitude of one of the drive pulses in response to
`the signal.
`13. The system of claim 12, wherein the signal is a back
`electromagnetic field (EMF).
`14. The system of claim 13, wherein the amplitude is
`modified based on a derivative of the back EMF.
`
`15. The system of claim 12, wherein the drive pulse is out
`of phase with a resonantactuatoroscillation.
`
`10
`
`10
`
`
`
`US 7,843,277 B2
`
`7
`16. The system of claim 12, wherein the drive pulse is in
`phase with a resonant actuatoroscillation.
`17. The system of claim 11, the circuitry further adapted to
`determine a resonant frequency of the resonant actuator dur-
`ing the monitoring period.
`18. The system of claim 11, wherein the haptic effect is a
`vibrotactile haptic effect.
`19. The system of claim 11, wherein the resonant actuator
`is a linear resonant actuator.
`
`20. The system of claim 11, wherein the signal is generated
`by a sense coil in proximity to the mass.
`21. The system of claim 11, wherein the circuitry com-
`prises a processorand instructions stored on a computerread-
`able media.
`
`22. A system for generating a haptic effect comprising:
`means for generating a drive cycle signal that comprises a
`drive period and a monitoring period, wherein the drive
`period comprises a plurality of drive pulses that are
`based on the haptic effect;
`means for applying the drive pulses to a resonant actuator
`during the drive period, wherein the resonant actuator
`comprises a mass; and
`
`8
`means for receiving a signal that comprises a position of
`the mass from the resonant actuator during the monitor-
`ing period.
`23. A computer readable media having instructions stored
`thereon that, when executed by a processor, causes the pro-
`cessor to generate a haptic effect, the instructions comprising:
`generating a drive cycle signal that comprises a drive
`period and a monitoring period, wherein the drive period
`comprises a plurality ofdrive pulses that are based on the
`haptic effect;
`applying the drive pulses to a resonant actuator during the
`drive period, wherein the resonant actuator comprises a
`mass; and
`receiving a signal that comprises a position of the mass
`from the resonant actuator during the monitoring period.
`24. The computer readable media of claim 23, the instruc-
`tions further comprising:
`modifying an amplitude of one of the drive pulses in
`responseto the signal.
`25. The computer readable media of claim 23, wherein the
`signal is a back electromagnetic field (EMF).
`*
`*
`*
`*
`*
`
`5
`
`10
`
`15
`
`20
`
`11
`
`11
`
`