This inventive disclosure describes multiple inventions and embodiments of those inventions relating to and building upon SAVANT (“Synchronized Array of Vibration Actuators in a Network Topology”) architecture.
Vibration devices are used in a wide range of applications including haptic displays, haptic interfaces, force feedback devices, vibratory feeders, beauty products, personal hygiene products, personal pleasure products, personal massagers, tree harvesters, and seismic vibrators. Some widely used products that include haptic displays include the DUALSHOCK® 3 wireless controller for Sony Computer Entertainment's PlayStation® 3; the PlayStation® Move motion controller for motion gaming with Sony Computer Entertainment's PlayStation® 3; Microsoft Corporation's Xbox 360 Wireless Speed Wheel; and the Wii Remote™ Plus controller which is used for motion gaming with the Nintendo Wii.
Vibration actuators are typically the smallest and lowest cost method for generating haptic sensations. Therefore, it is advantageous to use vibration actuators to create a wide range of haptic sensations. Common low cost vibration actuators include Eccentric Rotating Mass actuators (ERMs) and Linear Resonant Actuators (LRAs). One of the advantages of both ERMs and LRAs is that they can generate relatively large vibration forces from low power input. Both ERMs and LRAs generally build up kinetic energy during their ramp-up period; an ERM does this as the velocity of its rotating mass increases, and an LRA does this as the amplitude of vibration of its moving mass increases. These low cost actuators are used in many applications, including in consumer electronics products such as smartphones and videogame controllers.
Many smartphones today use either a single ERM or a single LRA to produce alerts by vibrating the entire device. This has the advantage that the vibration alert can be felt while the device is inside a person's pocket. Game controllers (also commonly termed interchangeably as “videogame controllers” or simply “controllers”) often incorporate two ERMs within a two-handed device such as the Xbox 360 Wireless Controller or the Xbox 360 Wireless Speed Wheel (both devices from Microsoft). Sometimes such dual-ERM controllers are configured with one ERM having a large rotating mass and the other ERM having a small rotating mass. A single-handed controller such as the Wii Remote™ Plus (from Nintendo) will typically have a single ERM to provide vibration feedback to the user.
A common limitation of most existing vibration devices is the inability to define the directionality of the vibratory forces. ERM actuators generate centripetal forces that rotate in a plane, and generally the direction of vibration (that is to say, the instantaneous direction of the rotating centripetal force vector) cannot be not sensed in haptic applications due in part to the high rate of change of the direction of vibrations. In an ERM a centripetal force is applied onto the eccentric mass by the motor shaft, and an equal and opposite centrifugal force is applied onto the motor shaft. In this document both the terms centripetal and centrifugal are used with the understanding that these are equal but opposite forces. LRAs vibrate back and forth, and thus it may be possible to sense the axis of vibration, but it is not possible to provide more of a sensation in the forward direction relative to the backward direction or vice versa. Since haptic applications are often integrated with audio and video displays such as in computer gaming where directions are an integral component of the game, it is desirable to provide a haptic sensation that also corresponds to a direction. Moreover, it is be useful to generate haptic cues of directionality for applications where a person does not have visual cues, such as to guide a vision-impaired person. Therefore, it is desirable to provide a human-perceptible indication of directionality in vibratory haptic displays and interfaces. In addition, it is advantageous to use vibration actuators to generate a wide range of vibration waveforms including both directional and non-directional waveforms.
There have been some haptic vibration devices that provide a sensation of vibration direction, but these prior implementations have disadvantages. Specifically, asymmetric vibrations have been used to generate a haptic sensation that is larger in one direction than the opposite direction.
However, existing asymmetric vibrators are complex, costly, or have limited controllability. They tend to be bulky and have low power efficiency. Tappeiner et. al. demonstrated a vibration device that generated asymmetric directional haptic cues (Tappeiner, H. W.; Klatzky, R. L.; Unger, B.; Hollis, R., “Good vibrations: Asymmetric vibrations for directional haptic cues”, World Haptics 2009, Third Joint Euro Haptics Conference and Symposium on Haptic Interfaces for Virtual Environments and Teleoperator Systems), yet this device uses a high power and an expensive 6-DOF magnetic levitation haptic device. Amemiya et. al. (Tomohiro Amemiya; Hideyuki Ando; Taro Maeda; “Kinesthetic Illusion of Being Pulled Sensation Enables Haptic Navigation for Broad Social Applications, Ch. 21, Advances in Haptics, pp. 403-414”) illustrated a device that also generates asymmetric vibrations for haptic applications, yet this device uses a complex and large linkage system with 6 links and it appears that the direction of vibration cannot be modified in real-time.
Another limitation of vibration devices that use ERMs is that the amplitude of vibration is dependent on the frequency of vibration, since the vibration forces are generated from centripetal acceleration of an eccentric mass. Some prior approaches have used multiple ERMs to control frequency and amplitude independently, but in the process also generate undesirable torque effects due to the offset between the ERMs.
The foregoing aspects, features and advantages of the present disclosure will be further appreciated when considered with reference to the following description of preferred embodiments and accompanying drawings, wherein like reference numerals represent like elements.
As used herein, an actuator is a device that can generate mechanical motion or force. Actuators can convert a source of energy into mechanical motion or force. The source of energy can be electrical, pneumatic, hydraulic, or another source. Examples of actuators include rotary and linear motors. Examples of electric actuators include DC, AC, and stepper motors.
The term “direction” includes the orientation of an axis, also referred to as vector direction. A vector aligned with a specific direction can be either in the positive direction along the axis or the negative direction along the axis. As used herein, the term direction may distinguish between all angles in a circle, such as 0 to 360 degrees. And vibration control may distinguish between positive and negative directions along a single axis. Furthermore, the term “controller” is used herein in some situations to reference to game controller, and in other situations to a real-time controller of actuators, such as a microprocessor or an ASIC.
I. General Synchronized Vibration
In this disclosure, the term “General Synchronized Vibration” refers to control of the timing, and in some cases also control of amplitude, of multiple vibration forces, torques, or forces and torques. The sources of these vibration forces and torques can be electromagnetic, electrostatic, magnetic, spring forces, inertial forces such as centripetal forces, piezoelectric, pneumatic, hydraulic, or other force and torque sources. The sources of these vibration forces and torques can include those described in the text “Engineering Haptic Devices: A Beginner's Guide for Engineers” by Thorsten A. Kern,© 2009 (the entire disclosure of which is hereby expressly incorporated by reference herein). These vibration forces and torques can be generated from separate Vibration Actuators or from actuators that generate multiple force, torques, or forces and torques. In General Synchronized Vibration the forces, torques, or forces and torques are vectorially combined so that they generate a combined force, torque, or force and torque onto an object. The vector combination of force and torque vectors is also referred to as superposition. General Synchronized Vibration results in a combined vibration force, a combined vibration torque, or a combined vibration force and vibration torque onto an object. A force applied onto an object can also apply a torque onto that object. Accordingly, the references in this document to force also apply to force and torque unless explicitly described otherwise.
In the event that there is a difference in the usage of terminology between the instant application and any wholly included reference identified herein, the usage of the differing term definitions will be governed by the use in the present disclosure.
A vibration (or vibratory) actuator can impart repeated forces onto an object. These repeated forces can repeat a similar force profile over time during each repetition. Examples include rotary motors with eccentric masses, and linear actuators which move masses back and forth. These actuators can be DC, AC, stepper, or other types of actuators. A vibration actuator can repeat a similar force profile (waveform) in each cycle, or there can be variations in force profiles between cycles. Variations between cycles can be in amplitude, frequency, phase, and profile shape.
When a force is generated in a repeated cycle it can generate a vibratory force. The profile (also referred to as a waveform) of a repeated force cycle can be in a sinusoidal shape, triangular wave, a square wave, or other repeated profile as shown in
f=1/T (1)
A vibration force, F, is in a repeated cycle when
F(t+T)=F(t) (2)
where T is the period of vibration and t is time.
For purposes of vibration devices it is sufficient for the period of vibration to be approximate, and therefore a vibration is considered to be in a repeated cycle when:
F(t+T)≈F(t) (3)
One vibration waveform is a sinusoidal waveform, where the vibration force can be given by:
F(t)=A sin(ωt+ϕ) (4)
Here, F(t) is force as a function of time. A is the maximum amplitude of force. ω is the frequency of vibration in radians per second (the frequency in Hertz is f=ω/(2π)). And ϕ is the phase of vibration in radians. When ωt=2π the force profile repeats itself.
A vibration actuator may impart repeated forces onto an object. Due to the dynamics of an actuator, a single actuator can impart forces at multiple frequencies at the same time. However, for the purposes of analyzing vibrations and describing vibration devices herein, the primary frequency of an actuator's motion means the frequency having the largest component of kinetic energy in it.
The period of vibration can be defined by the time elapsed between the beginning of one vibration cycle and beginning of the next cycle. Thus to identify the period of vibration it is useful to identify the beginning of a cycle. One method for defining the beginning of cycle is to define the beginning of the cycle as the point with maximum amplitude in the profile.
The sine wave 12, triangle wave 14, and arbitrary profile wave 16 all have a unique point of maximum amplitude during each repeated cycle, and this point of maximum amplitude is used to define the beginning of the cycle. The square wave 18 does not have a unique point of maximum amplitude within a cycle; in such cases a repeated point on the profile can be selected to designate the beginning of the cycle. In
A frequency of vibration can also be identified when the shape of signal does not consist of exactly repeated profiles. Variations in amplitude of the cycle and small changes in the shape of a cycles profile still allow one to identify a unique point that designates the beginning of the cycle. As long as a repeated point in the profile can be identified, then the beginning of each cycle, a vibration period, and vibration frequency can be determined.
The phase of vibration defines the timing of the beginning of a cycle of vibration. A phase difference between two vibration waveforms is defined as the difference between the beginning of a vibration cycle in one waveform and the beginning of a vibration cycle in the other waveform. If there is a nonzero difference in the phase of vibration between two profiles, then the beginning of the cycles do not coincide in time.
As long as it is possible to identify the beginning of a cycle it is possible to identify a phase of vibration, even when the amplitude and frequency of vibration change between cycles of vibration.
One implementation of synchronized vibration is a vibration force formed by the superposition of two or more vibration waveforms where each of the waveforms include peaks that coincide in time with the peaks of the other waveforms on a regularly repeating basis. In a preferred embodiment, each of the waveforms would have the same frequency and a specified phase difference between them. Superposition can preferably be the vector sum of forces, torque, or forces and torque. Typically, the sources of these vibration waveforms are different vibration actuators. Often in synchronous vibration the waveforms have a zero phase difference between them, and thus the vibration waveforms are in-phase and in synchronous vibration. As used herein, specified phase difference may range between and including 0° and 360°. In some embodiments, the specified phase difference is 0° or 180°. In synchronized vibration, the various vibration waveforms can have different amplitudes.
Typically, synchronized vibration profiles will have similar shaped profiles. However, vibration actuators with different shaped vibration profiles can also be vibrated synchronously by matching frequency of vibration and specifying the phase difference between the waveforms. The matching of phase and frequency of vibration can be done approximately and still result in synchronized vibration.
Synchronized vibration can be generated by adding two vibration profiles together, where the amplitude of the second vibration profile is a multiple of the amplitude of the first vibration profile. This multiplying factor can be either positive or negative.
If there are two or more vibrating actuators where the peak amplitude of force of each vibrating actuator occurs repeatedly at approximately the same time, then these actuators are in-phase and in synchronous vibration. The peak amplitude of force can be either in the positive or negative direction of the vibration actuators' or vibration device's coordinate system. Thus if a positive peak amplitude from one actuator occurs at approximately the same time as the negative peak amplitude of another actuator, then these actuators are in-phase and are in synchronous vibration.
An exemplary linear motion vibration actuator 100 is shown in
As the moving mass 102 in the linear motion vibration actuator 100 moves back and forth, forces are generated between the moving mass 102 and the base 104. These forces can be transmitted through the base 104 of the actuator 100 to an object that the actuator is mounted to (not shown). The moving mass 102 may also be attached to an object, such as a handle (not shown), that is external to the actuator 100, and may transmit forces directly to an object external to the actuator 100.
The forces in the linear motion vibration actuator 100 may be magnetic forces, such as with a voice coil. The moving mass 102 may contain, for instance, a permanent magnet, electromagnet, ferromagnetic material, or any combination of these. The base 104 may contain, for instance, a permanent magnet, an electromagnet, ferromagnetic material, or any combination of these. Magnetic forces may be generated between base 104 and the moving magnet that generate acceleration and motion of the moving mass 104. A force in the linear motion vibration actuator 100 generated with an electromagnet can be modulated by controlling the current flowing through the electromagnet.
One embodiment of linear motion vibration actuator 100 in accordance with the present disclosure is shown in
In this embodiment, the force in the actuator 110 can be modulated by controlling the current in the electromagnet. When the current in the electromagnet flows in one direction, then the magnetic force will push the moving mass 112 towards one side of the actuator. Conversely when the current in the electromagnet flows in the other direction, then the moving mass 112 will be pushed to the other side of the actuator 110. Increasing the amount of current in the electromagnet will increase the amount of force applied onto the moving mass 112.
Another embodiment of the linear motion vibration actuator 100 in accordance with the present disclosure is shown in
In this embodiment both the electromagnet 124 and the permanent magnet of the moving mass 122 may have ferromagnetic material placed adjacent to them to increase the force output of the actuator 120. The force in the actuator 120 can be modulated by controlling the current in the electromagnet 124. When the current in the electromagnet 124 flows in one direction, then the magnetic force will push the moving mass 122 towards one side of the actuator 120. Conversely when the current in the electromagnet flows in the other direction, then the moving mass 122 will be pushed to the other side of the actuator 120. Increasing the amount of current in the electromagnet will increase the amount of force applied onto the moving mass 122.
Another embodiment of the linear motion vibration actuator 100 in accordance with aspects of the present disclosure is shown in
The springs 138 function to keep the moving mass 132 close to the center position when the actuator power is off, and to provide a restoring force when the moving mass 132 is at one end of travel of the actuator 130. The stiffness of the springs 138 can be selected so that the natural frequency of the actuator 130 increases the amplitude of vibration at desired natural frequencies. This spring effect can be generated from a single spring, from a nonlinear spring, from extension springs, as well as compression springs. A number of such spring configurations which may be employed with the present disclosure are described in the aforementioned U.S. patent application Ser. No. 11/325,036.
Another embodiment of the linear motion vibration actuator 100 according to aspects of the present disclosure is shown in
The size of the permanent magnets 148 attached to the base 144 can be selected so that the natural frequency of the actuator 140 increases the amplitude of vibration at desired natural frequencies. The actuator 140 may be controlled so that one or more natural frequencies are selected during different modes or times of operation. Use of repulsive magnetic forces as shown in
Alternative embodiments of linear motion vibration actuators that may also be utilized with the present disclosure include both springs and magnets, either alone or in combination, that return a moving mass towards the center of range of motion of the actuator.
A further alternative embodiment of the linear motion vibration actuator 100 in accordance with the present disclosure is shown in
A preferred embodiment of a vibration device 200 according to the present disclosure is shown in
The vibration actuators 202, 204 are desirably attached in a relatively rigid fashion to the vibration device enclosure or base. Rigid attachment provides a common base to the vibration device 200, upon which forces from both vibration actuators 202, 204 are applied. In this embodiment, the two actuators 202, 204 are mounted at approximately right angles to each other. The force generated by actuator 202 is shown as force vector F1, and the force vector from actuator 204 is shown as F2. As expressed herein, vectors and matrices are designated by bold font and scalars are designated without bolding. The combined force generated by the vibration device 200 is the vector sum of the vibration forces from both of the actuators 202, 204, and is shown in
The combined force, Fcombined, applied by the vibration actuators 202 and 204 onto the vibration device 200 is a superposition of the vibration forces from each actuator, and is a function of time, t. The force vector can Fcombined(t) is given by the vector equation:
Fcombined(t)=F1(t)+F2(t) (5)
where F1(t) is the force vector from actuator 202 as a function of time, and F2(t) is the force vector from actuator 204 as a function of time.
Both actuators 202, 204 can be operated in a vibratory fashion. For the case of a sine wave vibration, the actuator forces can be given by:
F1(t)=a1A1 sin(ω1t+ϕ1) (6)
and
F2(t)=a2A2 sin(ω2t+ϕ2) (7)
respectively, where A1 and A2 are the respective amplitudes of vibration, a1 and a2 are the unit vectors corresponding to the respective directions of vibration, ω1 and ω2 are the respective frequencies of vibration, ϕ1 and ϕ2 are the respective phase angles, and t is time. Other profile vibrations including square waves, triangle waves, and other profiles can also be implemented with each actuator.
In the example shown in
and the unit vector a2 aligned with the x axis and is represented by:
The combined force vector, Fcombined, is given by the superposition of forces form the actuators 202 and 204, and thus is given by:
Fcombined(t)=a1A1 sin(ω1t+ϕ1)+a2A2 sin(ω2t+ϕ2) (10)
It is possible to vibrate actuators 202 and 204 shown in
Fcombined(t)=[a1A1+a2A2]sin(ωt+ϕ) (11)
With such in-phase and synchronous vibration the vibration is synchronized, then the peak forces from both linear motion vibration actuators will occur at the same instances during each cycle of vibration. The net direction of vibration force is the vector combination of [a1A1+a2A2]. Thus, in synchronized vibration and in-phase vibration, the vibration device generates a vibration force at a specified frequency in a specified direction that results from the vector combination of forces from the direction and magnitude of each of the actuators in the device. It is possible to control the magnitude of vibration in each linear motion vibration actuator, and thereby control the net direction of vibration of Fcombined.
In a preferred example, the vibration frequency, ω, phase ϕ, and waveform of each actuator are substantially identical. For instance, ω2 may be set to be substantially equal to ω1 and ϕ2 may be set to be substantially equal to ϕ1. By way of example only, ω2 may be set to within 10% of the value of ω1, more preferably to within 5% of the value of ω1. Similarly, by way of example only, ϕ2 may be set to within 10% of the value of ω1, more preferably to within 5% of the value of ϕ1. In another example, the frequencies and/or phases may be set exactly equal to one another. Alternatively, the frequencies, phases, and/or waveforms of each actuator may be set so that a user would not be able to notice the difference in frequency, phase or waveform. In a further alternative, if the vibration device is used in a haptic application to generate force sensations on the user, small variations may occur which may not be detected by the user or which cannot be significantly felt by the user. In other instances, force sensations in a haptic application or in a vibratory feeder application may vary minutely so that user performance in the haptic application or performance of the vibratory feeder is not significantly changed.
It is also possible to apply equation 11 to a vibration profile/waveform of arbitrary shape. Here, waveform p(t) may be used to represent the waveform shape over time t. A period of vibration may be represented by p(t)=p(t+nT), where n=1, 2, 3, etc. and T is the period of vibration. In this case, an arbitrarily shaped synchronized vibration profile may be represented as:
Fcombined(t)=[a1(t)A1(t)+a2(t)A2(t)]p(t) (11.1)
When the direction of vibration force for each actuator is substantially constant relative to a base member, the arbitrarily shaped synchronized vibration profile may be represented as:
Fcombined(t)=[a1A1(t)+a2A2(t)]p(t) (11.2)
To illustrate how the direction of Fcombined can be controlled, the peak magnitudes, A1 and A2, are represented in
By varying the magnitude of the vibration force in the actuators 202, 204, it becomes possible to control the direction of vibration of the combined force effect. In
In a similar fashion, the direction of combined force can be rotated in the clockwise direction as shown in
It is also possible to change the direction of Fcombined to an adjacent quadrant. As shown in
An alternative embodiment of a vibration device in accordance with the present disclosure is shown in
The unit vector a1 is given by:
where the angle α describes the orientation of actuator 1 relative to the x axis as shown in
where the angle β describes the orientation of actuator 2 relative to the x axis as shown in
For a given vibration waveform the maximum magnitude of force vectors, F1,max and F2,max, from actuators 212 and 214 in
F1,max=A1a1 (14)
F2,max=A2a2 (15)
When actuators 212 and 214 are vibrated synchronously and in-phase (e.g. with the same frequency and with zero phase difference), then the maximum force amplitude occurs at the same time. Thus the maximum combined force vector, Fcombined,max, is given though superposition of the force vectors, and is given by:
Fcombined,max=F1,max+F2,max (16)
A matrix of actuator directions, DL, can be created where each of its columns is a unit vector that corresponds to the direction of vibration of a linear motion vibration actuator in a vibration device. For a vibration device with two linear motion vibration actuators, such as the one shown in
DL=[a1|a2] (17)
where a1 and a2 are column vectors.
A matrix representation of the combined force is given by:
where A1 and A2 are scalars. For the case of vibration in a plane, the vectors a1 and a2 will be 2×1 vectors and the matrix DL will be 2×2.
When the direction matrix, DL, is invertible then the amplitude of vibration in the individual actuators that corresponds to a desired combined force vector, Fcombined, is given by:
When the actuators are aligned orthogonally, then the direction matrix, DL, is orthonormal and its inverse is given by its transpose as shown below:
D−1=DT (20)
When the direction matrix, DL, in not invertible because there are more vibration actuators than directions of force being controlled, then a pseudo inverse of matrix DL can be used. For example, if there are 3 vibration actuators in the xy plane, and the control objective is only to control a two dimensional force, the DL matrix is given by:
DL=[a1|a2|a3] (21)
where a1, a2, and a3 are 2×1 column vectors.
The pseudo inverse is described in “Introduction to Linear Algebra”, 3rd Edition by Gilbert Strang, published in 2003 by Wellesley-Cambridge Press, the entire disclosure of which is incorporated by reference herein.
One method for calculating a pseudo inverse, DL+, is given by:
DL+=DLT(DLDLT)−1 (22)
In such a case the amplitude of vibration for each actuator can be given by:
It is possible to specify the combined force vector, Fcombined, in terms of a direction of vibration and amplitude. For a two dimensional embodiment the combined amplitude of vibration can be specified by the scalar Acombined, and the direction of vibration can be specified by an angle, theta, as shown in
Thus, it can be seen that the amplitudes of vibration, A1 and A2, can be represented in terms of the direction of vibration, theta, combined amplitude of vibration, Acombined, and direction matrix, DL, as given by:
Equation 25 provides the scalar magnitude of A1 and A2. When the sign of A1 is different than the sign of A2 then vibration waveform can be generated directly using the results of Eq. Avec. Alternatively, the waveform can be generated using absolute values of A1 and A2 but with one waveform completely out of phase with the other waveform. A sine wave is defined to be completely out of phase when it is 180 degrees out of phase. General waveforms are defined to be completely out of phase when the maximum positive amplitude of vibration of one waveform concedes with the maximum negative amplitude of the other waveform. A depiction of two actuators vibrating completely out of phase is shown in
It is also possible to specify the combined direction of vibration in terms of a unit vector, acombined, as shown in
Fcombined=Acombined×acombined (26)
Another configuration according to aspects of the present disclosure is a three dimensional configuration, where there are at least 3 linear motion vibration actuators as shown in
In the vibration device 220 of
Fcombined=Acombined×acombined (27)
where acombined and Fcombined are 3 dimensional vectors.
Vibration devices according to the present disclosure may include an arbitrary number of actuators in arbitrary locations and orientations.
Another alternative embodiment of a vibration device according to the present disclosure is shown in
In a variation of
A further embodiment of a vibration device according to the present disclosure is shown in
An alternative embodiment of a vibration device 290 in accordance with aspects of the present disclosure is shown in
In the vibration device embodiments described herein the vibration actuators may be attached to the vibration device in a rigid, a semi-rigid or a non-rigid fashion. Even when vibration actuators are attached in a non-rigid fashion to a vibration device, the vibration device is operable to transmit the superposition of forces from all vibration actuators. When vibration actuators are attached in a rigid fashion to a vibration device, the combined force applied by the vibration device becomes less dependent on the location where the vibration device transmits force and torques to other bodies. In addition, the more rigid the attachment between the vibration actuators and the vibration device, the more uniform the timing of the force superposition becomes at all points of the vibration device.
In an example, it is possible to attach the actuators directly onto a person's hand and body, for instance as shown in U.S. Pat. Nos. 6,275,213 and 6,424,333. In uses of the present disclosure where actuators are directly attached or indirectly coupled to the hand or body, the vibration force from each actuator may be felt directly at different locations on the body, yet a synchronized combined force vector can still be applied onto the body by synchronizing the operation of the actuators.
Vibration devices in accordance with the present disclosure can be built with rotary vibration actuators as well as with linear motion vibration actuators. In some cases the cost to manufacture rotary vibration actuators is less than the cost to manufacture linear motion vibration actuators. Thus, if cost is a factor, it may be desirable to utilize rotary vibration actuators in place of or in combination with linear motion vibration actuators. However, in order to generate synchronized vibration with rotary vibration actuators, it is necessary to control the rotary position of the actuators along with the rotary velocity.
A rotary vibration actuator may comprise, for example, a DC motor, a rotary solenoid, a rotary stepper motor, a servo motor, or other type of rotary actuator. One advantage of rotary actuators is their relatively low cost. The servo motor uses a position sensor and/or a velocity sensor for feedback. In some situations the rotary stepper motor may be more desirable because it allows for control of position and velocity without the use of a sensor.
Many existing vibrators utilize rotary vibration actuators with eccentric masses, but not with synchronized vibration. In accordance with the present disclosure, a pair of rotary vibration actuators can be configured to achieve a vibration force that is aligned with a single direction of motion. Accordingly, a pair of such rotary actuators can be used when a vibration force in a specified direction is required.
For instance, a vibration device according to the present disclosure can be built, by way of example only, with two rotary vibration actuators that rotate in opposite directions, as shown in
With rotary vibration actuators it is possible to create synchronized vibration in an analogous fashion to the synchronized vibration described with linear motion vibration actuators. With rotary vibrating actuators, synchronized vibration is defined to occur where two rotary actuators rotate in approximately the same plane at the same angular velocity in opposite directions, and where the relative angle between the actuators is controlled, such that the actuator centrifugal force vectors align repeatedly in the direction of desired vibration force.
The direction of vibration force can be controlled with a pair of rotary (or rocking) vibration actuators by controlling the angle at which the centrifugal force vectors become aligned. Therefore, it is possible to control the direction of combined force with rotary actuators in a fashion analogous to how the direction of combined force can be controlled with multiple linear vibration actuators.
An alternative type of rotary actuator suitable for use with the present disclosure is a rotary actuator with a pivoting mass.
As seen in
The mass 402 may pivot in either a clockwise or counterclockwise manner.
Vibration forces and/or torques can be generated with the pivoting actuator 400 as shown in
Vibration forces and/or torques can be generated by moving a mass back and forth. It is possible to define the beginning of a vibration waveform as an instance at which a mass reverses its direction of motion. For linear actuators, the reversal of direction is a reversal of translation. For rotary actuators, the reversal of direction is a reversal of rotation. In general, the reversal of motion of a mass in an actuator may include both translation and rotation.
In actuators having a spring device attached to a moving mass, energy can be built up in the spring device, especially when the mass is moved back and forth close to a natural frequency of the mass and spring system. In such cases, the maximum vibration force can occur at the maximum deformation of the spring device, which can occur when the mass reaches its maximum excursion and reverses its direction. Accordingly, moving masses in two (or more) actuators that are operating in synchronized vibration, can reverse direction at approximately the same time.
An alternative method for generating vibration would be to operate the pivoting actuator 400 in a clockwise (or counterclockwise) direction and then deactivate the pivoting actuator 400 while allowing the spring device 410 to rotate the pivoting mass 402 in the counterclockwise (or clockwise) direction. This approach would allow one to use pivoting actuators and control circuitry that only operates in a single direction.
One type of pivoting actuator 400 that could be employed is a DC motor. However, not all the components of the DC motor are necessary for this application, because the output shaft does not rotate continuously. Accordingly it is not necessary to have motor brushes, which can reduce cost as well as electrical power losses and frictional losses. In a preferred example, the pivoting actuator 400 may essentially include a stator and a rotor. The stator may be stationary and desirably contains permanent magnets and/or electromagnets. The rotor is operable to pivot and can contain permanent magnets and/or electromagnets. The polarity of the magnets in the stator and rotor can be configured so that activation of the electromagnets causes an electromagnetic torque to be exerted onto the rotating mass 402.
In the embodiment of
It is possible to generate nonlinear spring force, even with use of a linear spring element. Consider the embodiment shown in
As shown in
Low frequency operation is desirable in some situations, for instance in games that have low frequency effects. For instance, games may generate actions or events in the sub-200 Hertz range, such as between 15 and 150 Hertz. In certain cases the actions or events may be as low as 20-50 Hertz or lower, such as about 10-20 Hertz. Examples of such actions/events include gunshots, automobile related sounds such as a car spinning out of control, and helicopter related sounds such as the whirring of the rotor blades. Eccentric mass actuators may not be suitable to generate a haptic sensation in this frequency range, but pivoting actuators or linear actuators may generate such frequencies.
As the magnitude of rotation of the pivoting mass 422 increases, the lengthening of the spring device 428 increases as shown in
While several types of actuators have been described above that may be used with the present disclosure, other types of actuators may also be employed so long as they can be controlled as described herein. For instance, piezoelectric devices without separate or distinct “moving” and “stationary” masses may be employed either alone or in combination with other actuator types to impart vibratory forces in the manners described herein.
An alternative embodiment of the present disclosure includes two rotary vibration actuators whose planes of vibration are not the same; however, in this case the two planes are not orthogonal to each other. In this embodiment, the component of centrifugal force from one actuator that can be projected onto the plane of the other actuator can be used to achieve a component of synchronous vibration.
In one example, two or more vibration devices may be mounted devices into a game controller, as shown in
There are many orientations of both the rotary actuators and springs that can be used to achieve an embodiment where synchronized vibration is possible. For instance, the axis of rotation of both actuators can be aligned while the spring direction can vary, allowing an alternative configuration for synchronized vibration.
A controller for synchronized vibration of a pair of rotary vibration actuators specifies the angular position of each rotating shaft, such that the angle where the centrifugal force vectors are aligned is the desired direction of force vibration and the angular position is incremented such that the rotational velocity matches the desired vibration frequency.
A system 500 having a controller for one or more vibration devices that use linear motion vibration actuators is shown in
The controller 502 may be, by way of example only, a microprocessor and the driver circuit(s) 504 may be, for instance, one or more electrical amplifiers. The controller 502 and drive circuit 504 may be integrated into a single microprocessor or single electrical circuit. The control method in this figure is for a configuration with N actuators, where N is an arbitrary number of actuators. Some of the figures showing various control methods in the instant application illustrate only two actuators. However, it should be understood that control methods according to the present disclosure can be extended to include an arbitrary number of actuators, as shown in
The output from the vibration device controller 502 shown in
Here, t is time and ω is the vibration frequency in radians per second. The parameter p is the phase of vibration and may be set to zero. The value of ω in terms of frequency f in vibrations per second is given by ω=2πf.
When the vibration actuators have a linear relationship between the command magnitude and the magnitude of vibration, the output A1(t) and A2(t) from equation 28 can be applied directly to the vibration actuators to generate a combined vibration direction corresponding to the angle theta. However some vibration actuators may have a nonlinear relationship between the command magnitude and the magnitude of vibration. For such nonlinear actuators it is possible to generate vibration in the direction theta by using a linearization function that adjusts the magnitude of A1 and A2 to compensate for the nonlinearity of the actuator, as shown in the following equation.
The linearization equation described above can be a lookup table or a scaling algorithm or other type of function.
The ability to control the direction of vibration over time, such as though use of equations 28 and 29, is an important advantage of the present disclosure. The ability to control vibration direction can be used in vibratory feeders to direct parts in a desired direction. In addition, there are numerous advantages of using the disclosure for haptic devices as described herein.
If a digital computer is used, the digital output for each actuator 554a,b is then preferably fed into respective digital-to-analog (“DAC”) converters 556a and 556b, which convert the output to the appropriate analog waveform. The analog waveforms are then fed into the appropriate driver circuits 558a and 558b. Those skilled in the art could use other means to modulate the linear vibrations of each actuator 554a and 554b, for example via pulse width modulated (“PWM”). Varying the parameters produces an extremely broad range and rich set of haptic sensations for the end user.
In addition to creating varying force effects, one could control the direction of vibration—that is to say the direction of vibration could remain stationary. The resultant force effects can be of lower frequency than the frequency of vibration.
There are also useful applications for generating precise patterns of vibrations from simple parameters. Such patterns include circles, ellipses and straight lines. Furthermore, the amplitude and duration of the patterns may be precisely controlled over time. Moreover, a sequence of patterns may be generated as desired.
Each of the vibration devices described herein according to the present disclosure can be used as a haptic interface. Haptic interfaces provide force sensation to a user. Haptic interfaces include computer gaming controllers, robot controllers, surgical tool controllers, as well as other devices where a force sensation is provided to a user.
An embodiment 600 of the present disclosure with a haptic interface application is shown in
In the embodiment shown in
A haptic interface application can include a simulation of a virtual environment or representation of a real environment to the user 606. A systems controller method of control can be based upon this real or virtual environment. Typical simulated environments include games, driving and flight simulations, surgical simulations, and other types of simulations. Typical real world environments include control of robots and remote machines, long distance interactions, and other types of environments. It is often desirable that a haptic interface provide force sensations that correlate with the real or simulated environment in which the haptic interface is being used.
Another embodiment 620 having a haptic interface application is shown in
In the embodiment of
The embodiment shown in
A first example involves the simulation of a user firing a gun. In this simulation, the vibration device controller 632 could specify the angle theta to represent the direction of a gun firing, the amplitude of vibration, Acombined, to represent the amplitude of the gun recoil, and the frequency of vibration, f, to represent the frequency of bullets leaving the gun.
A second example involves an impact between objects. In this simulation the vibration device controller 632 may specify the angle theta to represent the direction of impact, and the amplitude of vibration, Acombined, to represent the amplitude of impact.
A third example involves driving a vehicle. In this simulation the vibration device controller 632 could specify the angle theta to represent the direction of vehicle motion, the frequency of vibration, f, to represent the frequency of vehicle vibration as it drives over bumps in the road or the speed of the vehicle, and the amplitude of vibration, Acombined, to represent the amplitude of bumps in the road.
A fourth example involves a car or spacecraft spinning out of control. In this simulation the vibration device controller 632 could specify an angle theta that represents the vehicle's orientation. To represent the vehicle spinning, the angle theta can vary over time. The rate at which the angle theta can be different than the vibration frequency. Typically the frequency at which a vehicle spins would be significantly lower than typical vibration frequencies.
An algorithm that can be used to create the vehicle spinning described above varies the direction of vibration continually. The direction of vibration may be rotated at a rate of β radians per second, using the equation below:
Equation 30 illustrates that the frequency of direction change, β, can be modified independently from the frequency of vibration ω. A user such as user 606 or 626 can sense both the frequency of vibration and the direction of vibration. In this fashion, sensations at both the β and ω frequencies can felt by the user. It is possible to set the frequency β much lower than the frequency ω, thereby overcoming a limitation of known devices. By way of example only, ω may vary between 10 Hz and 100 Hz while β may be on the order of 1 Hz. In another instance, β may vary from between about 5% to 20% of ω. Of course, in other instances ω and β may be similar or the same, or, alternatively, β may be larger than ω. All of these examples will depend on the specific effect that is desired.
Low frequency operation is desirable in some situations, for instance in games that have low frequency effects. For instance, games may generate actions or events in the sub-200 Hertz range, such as between 1 and 150 Hertz. In certain cases the actions or events may be as low as 2 Hertz or lower, such as about 0.5-1 Hertz. Examples of such actions/events include gunshots, automobile related sounds such as corresponding to a car spinning out of control, and helicopter related sounds such as the whirring of the rotor blades. A traditional eccentric mass actuator may not be suitable to generate a haptic sensation in this frequency range; however, two or more vibration actuators operated in synchronized vibration may generate such frequencies.
β is not limited to any particular rate or range of rates. For instance, β may be a relatively low rate to represent a slow spinning action, e.g., of a car spin out at less than 10 miles per hour, or β may be a relatively high rate to represent a fast spinning action, e.g., of a car spin out at a speed in excess of 40 miles per hour. Similarly, ω is not limited to any particular frequency of vibration. Preferably, ω is set within a range of frequencies that can be felt or otherwise detected by a user.
Equation 30 may be modified by changing the vibration profile from a sine wave to a square wave, triangle wave, or other profile. In addition, the amplitude of vibration, Acombined, can be varied over time. The frequencies β and ω can also be varied over time. In this fashion a wide range of force effects can be created.
Vibration actuators can be used to provide haptic sensations either through synchronized vibration or otherwise. Actuators can be vibrated without synchronization when there is no need to convey directional information, and then the actuators can be switched to synchronous vibration when there is a need to convey directional information though the haptic interface.
Many linear motion vibration actuators take advantage of resonance to achieve relatively high level of forces with low power requirements. However, to achieve these high levels of forces a number of vibration cycles have to occur before the peak magnitude of vibration occurs. In addition when the actuator is shut off, the moving mass in the actuator may continue to oscillate for a number of cycles. Thus the dynamics of the actuator prevents instantaneous response of the actuator to increase or decrease the magnitude of vibration.
When synchronous vibration is used to control the direction of combined force, the actuator dynamics may limit the speed at which the direction of combined force can be changed. One of the examples presented above describes implementation of a haptic force sensation that corresponds to the spinning of a car. However, the actuator dynamics may limit the rate at which such spinning effect can be generated. As will be described in detail below, it is possible to provide a method that can increase the rate at which the direction of force can be changed for a system of vibration actuators that are synchronously vibrated.
Equation 25 above defines the required amplitude of vibration of actuators to achieve a combined force direction corresponding to an angle theta. For a given actuator in a vibration device, the required amplitude of vibration is defined as Ades, which indicates the desired amplitude of vibration of that actuator. If the actuator is at rest or at a lower level of vibration than Ades, then it may be desirable to initially drive the actuator at a higher level of vibration to more quickly raise the amplitude of vibration to Ades. Conversely if the actuator is already vibrating at an amplitude higher than Ades it may be desirable to initially drive the actuator at a lower level or even brake the actuator to more quickly lower the amplitude of vibration to Ades. These variations in the amplitude at which the actuator is driven are defined as corrections to the commanded vibration magnitude.
One method of determining the proper corrections to the vibration magnitude is to model the dynamics of the actuator. This approach allows one to predict the dynamic states of the actuator and optimal commands to most quickly generate the desired amplitude of vibration.
An alternate method of determining the corrections to the vibration magnitude does not require a dynamic model of the actuator or explicitly predicting the dynamic states of the actuator. In this method a counter is maintained to track the recent number of vibrations of the actuator and the corresponding commands sent to the actuator during these recent vibrations. The command to the actuator at the kth vibration is given by the following equation:
Acom_k=Ades_k+Acor_k
Ades_k represents the desired actuator amplitude for the kth vibration of the actuator. Acor_k represents the correction to the command for the kth vibration. And Acom_k represents the actual amplitude of the command sent to the actuator for the kth vibration.
If the desired amplitude at the kth vibration is greater than the amplitude during the previous vibration, then most likely the vibration level needs to be increased. Accordingly, the correction to the command at vibration k, Acor_k, can be chosen to be proportional to the difference between the current desired amplitude, Ades_k, and the previous commanded amplitude Acom_k-1. An equation which described this approach for calculation Acor_k is:
Acor_k=K*(Ades_k−Acom_k-1) (31)
Here, K is a gain chosen based upon actuator performance. This same equation works for reducing the magnitude of vibration quickly. When Ades_k is less than the value of Acom_k-1, it indicates that most likely the level of vibration needs to be reduced and the correction Acor_k is negative. If the large reduction in vibration amplitude is commanded, then the negative magnitude of Acor_k may be greater than Ades_k and the actual command sent to the actuator, Acom_k, will be negative resulting in braking of the moving mass in the actuator.
Another approach to correcting the magnitude of vibration takes into consideration the two previous commanded amplitudes, and is given by the following equation:
Acor_k=K1*(Ades_k−Acom_k-1)+K2*(Ades_k−Acom_k-2) (32)
Here K1 is a gain that corresponds to the k-1 vibration command, and K2 is a gain that corresponds to the k-2 vibration command. In a similar fashion even more prior commands can be incorporated into the correction algorithm. The following equation shows how “m” prior commands can be incorporated into an actuator command.
Acor_k=K1*(Ades_k−Acom_k-1)+K2*(Ades_k−Acom_k-2)+ . . . +Km*(Ades_k−Acom_k-m) (33)
Alternative methods of control for multiple vibrating actuators may include modified synchronization. One method of modified synchronization is for one actuator to vibrate at a frequency that is an integer multiple of the vibration frequency of another actuator.
One advantage of such a modified synchronization method is that multiple vibration frequencies can occur at the same time while still providing for some superposition or peak amplitudes. The superposition of peak amplitudes allows for control of direction of vibration, in a similar fashion to how the direction for vibration is controlled for synchronized vibration. With this modified method of synchronized vibration, it is possible to specify the direction of combined force only during a portion of the vibration cycle. Nevertheless, a direction component to the vibration can be controlled in the duration close to the time where the superposition of peaks occurs. Close to the time at which there is superposition of peaks in the vibrations, the combined force vector, Fcombined, can be approximated by:
Fcombined=a1A1+a2A2 (34)
Here, a1 and a2 are the unit vectors aligned with the directions of actuator 1 and actuator 2, respectively. A1 and A2 are the amplitudes of force of actuator 1 and actuator 2, respectively, near the duration of the superposition of peaks. By modifying the amplitudes A1 and A2 it is possible to modify the amplitude and direction of the combined force vector, Fcombined. A similar approach can be used when there are more than two vibration actuators.
If there are two or more vibrating actuators where repeatedly the peak amplitude of force of these vibrating actuators occurs at approximately the same time, then the combined direction of force of these actuators can be controlled near the time when these repeated peak amplitudes occur. In this case, the combined direction of force can be controlled by modifying the amplitude of vibration of the actuators.
An alternative modified synchronization is to drive two vibration actuators at the same frequency but one vibration actuator at a phase where its peak magnitude of force occurs when a second vibration actuator is at zero force, which is at 90 degrees out of phase for a sinusoidal vibration. In such a modified synchronization the combined force direction rotates in a circle or ellipsoid during each vibration period.
Additional methods for modified synchronization of vibration may include the superposition of profiles as described in the “Jules Lissajous and His Figures” (“Lissajous”), appearing in chapter 12 of “Trigonometric Delights” by Eli Maor, published in 1998 by Princeton University Press. The entire disclosure of Lissajous is hereby incorporated by reference. Lissajous describes how profiles can be combined through various combinations of frequencies, phases, amplitudes, and profiles to generate a wide range of output figures. These are also known as Bowditch curves. Lissajous also describes how geometric shapes can be created from multiple vibration sources. These combinations of vibrations can be applied to haptic devices and vibration devices in accordance with aspects of the present disclosure. Thus, the concepts of superposition described in Lissajous can be applied by vibration actuators to yield a wide range of force sensations.
Electric actuators often require a driver circuit separate from a controller. The driver circuit provides sufficient current and voltage to drive the Actuators with the necessary electrical power. A wide range of driver circuits have been developed for electrical actuators and specifically for vibration actuators, and are known to those skilled in the field. Such driver circuits include linear drivers, PWM drivers, unipolar drivers, and bipolar drivers. A circuit block diagram for a vibration actuator 700 according to the present disclosure includes a vibration controller 702, a driver circuit 704, and an actuator 706, as shown in
The vibration controller 702 shown in
It is often desirable to control a vibration device or actuators from a digital controller such as a microprocessor or other digital circuit. Digital control circuits often have low level power output, and therefore require a higher power driver circuit to drive an actuator. In addition, low cost digital controllers often have digital outputs, but do not have analog outputs. To simplify the vibration controller circuitry and lower cost, the vibration signal can be a binary logic directional signal which signals the moving mass to move either forward or backwards. In this configuration, the vibration signal can be in the form of a square wave to generate the desired vibration effect. Even with such a square wave control signal, the actual motion and vibration force of the vibration actuator will most likely not follow a square wave exactly due to the dynamics of the actuator.
To further simplify the vibration controller circuitry and lower cost, the amplitude of the vibration signal can be modulated with a PWM signal, where the duty cycle of the signal is proportional to the amplitude of vibration. An embodiment 710 with such a digital vibration controller 712 for one actuator 716 is shown in
Digital control circuitry can be used to control a complete vibration device in synchronized vibration. In synchronized vibration the frequency and phase of two or more actuators are the same. Accordingly, a single square wave can be used to control the direction of the vibration actuators that are in synchronized vibration. The amplitude of vibration can be controlled independently for each actuator, with separate PWM signals.
The embodiment 720 of
Electric actuators in accordance with the present disclosure can be driven with unipolar or bipolar drivers. A unipolar driver will generate current in an actuator in a single direction. A unipolar driver is well suited for actuators where the moving mass is ferromagnetic and an electromagnetic coil only generates attractive magnetic forces, such as the actuator 150 shown in
A bipolar driver can generate current in two directions. Bipolar drivers are well suited for actuators where the moving mass is magnetic and where reversing the direction of current in an electromagnetic coil can reverse the direction of force on the moving mass. Examples of such actuators are presented in
In vibrating circuits it can be advantageous to increase power output of the driver circuits through use of a charge pump capacitor as used in 3958 and 3959 drivers manufactured by Allegro Microsystems. It can also be advantageous to incorporate a capacitor in series with a linear motion vibrating actuator to benefit from a resonance effect and temporary storage of energy in the capacitor, as described in the aforementioned U.S. patent application entitled “Vibration Device.”
As detailed herein, vibration actuators can be used in a variety of methods to create haptic effects. Vibration actuators can be operated continuously throughout the duration of a specified haptic effect, or can be pulsed on and off during the haptic effect. By pulsing vibration actuators on and off the user feels only a small number of vibrations, then feels a pause, and then the vibration resumes. In this fashion it is possible to generate secondary sensations associated with the frequency of pulsing the actuators on and off Examples of how such pulse effects can be used are described in U.S. Pat. Nos. 6,275,213 and 6,424,333.
Any of the actuators described herein may be used in accordance with the present disclosure to produce a wide variety of haptic effects. While some actuators such as linear actuators and rocking mass actuators may be particularly suited for low frequency operation, all actuators herein may provide synchronized feedback. Such feedback may be employed in games, virtual reality equipment, real-world equipment such as surgical tools and construction equipment, as well as portable electronic devices such as cellular phones and pagers. By way of example only, cellular phones and pagers may implement different vibration effects to identify different callers or different actions. Synchronized vibration may provide directional feedback, for instance, with the impact or recoil of a gun in a game, or to distinguish between frontal and side impacts in driving games. Synchronized vibration may also provide a continual rotation of a vibration force vector in a game to simulate a car spinning out of control. Synchronized vibration may also be used in endless other applications and situations to provide a rich haptic experience to a user.
As mentioned above, other aspects of the disclosure include General Synchronized Vibration. General Synchronized Vibration differs from non-synchronized vibration in that the frequency and phase of multiple vibration forces are controlled. Embodiments with multiple Vibration Actuators that are not controlled with the General Synchronized Vibration approach will often have inconsistent frequency, amplitude, or relative phase between the actuators. With General Synchronized Vibration the frequency and phase of the Vibration Actuators may vary during the startup and transitions between various waveforms. However, once the actuators are synchronized, each actuator is controlled to a specific frequency and phase.
Often each actuator is controlled to a fixed frequency and phase for a given duration of time. This duration of time depends on the application, but is typically longer than the period of the highest frequency vibration force that is being synchronized. In haptic applications this duration of time is typically along enough for a person to sense the effect. However, there are some implementations of General Synchronized Vibration where the desired waveform of vibration varies quickly, such as a quickly changing direction used to provide a sensation of spinning. In such quickly varying waveforms, the desired frequency and phase of a vibration actuator may be changing in a duration that is shorter than the period of the vibration of that actuator. A common characteristic of General Synchronized Vibration is that the frequency and relative phase of multiple vibration actuators are explicitly controlled to desired values rather than randomly selected values.
In General Synchronized Vibration there is typically a consistent correlation between frequency and phase of the actuators and desired vibration effects. For example, a haptics effect library for software developers may have a routine labeled “spin,” which generates a sequence of desired frequency and phase for a plurality of Vibration Actuators. Each time the spin effect is executed, a similar sequence of frequency and phase and generated by the plurality of Vibration Actuators.
Embodiments of this disclosure include a Vibration Device comprised of multiple Vibration Actuators mounted onto a mounting platform such as a base plate, sub-frame, housing, or enclosure. For example the mounting platform could be the housing of a game controller, or the housing of a Vibration Actuator. The mounting platform transfers force and torque between the Vibration Actuators and thereby allows the vibration forces and torques to be superimposed upon each other. The mounting platform is preferably rigid, but can also be relatively rigid component, or a semi-rigid component. The mounting platform could be made of separate pieces. The mounting platform could include components of an object upon which vibration forces are being applied. For example if multiple Vibration Actuators are mounted onto a person's arm or other body parts and forces are transmitted from these actuators through the arm or body parts, then the arm or body parts can serve as the mounting platform. This disclosure pertains to any configuration where the forces and torques from multiple Vibration Actuators can be vectorially combined to generate a net vibration force, vibration torque, or vibration force and torque.
The mounting platform is typically attached to a number of items such as battery, control circuit board, and the stationary parts of the Vibration Actuators including housing and stator. The combined mass of the mounting platform and items that are attached to it is defined as a “Reference Mass”. The vibration force and torques are transferred from Vibration Actuators to the Reference Mass. If the mounting platform is able to move, the vibration forces may shake the Reference Mass. Typically the Reference Mass is in contact with an “External Object”, and forces and torques are transmitted between the Reference Mass and the External Object. For example, a game controller held in a user's hand would transfer forces and torques from the game controller's Reference Mass onto a user's hands, which in this case is an External Object. The mounting platform may be attached to the Earth, which would also be an External Object. A Vibration Device attached to the Earth is sometimes termed a “Shaker” or a “Shaker Device”.
A preferred embodiment uses two aligned LRAs, as shown in
For the embodiment shown in
F1=B1 sin(ω1t+ϕ1)
F2=B2 sin(ω2t+ϕ2)
The combined force for the LRA Pair is given by:
FLRA_Pair=B1 sin(ω1t+ϕ1)+B2 sin(ω2t+ϕ2) (35)
Typically it is not critical to control vibration effects relative to absolute time. Accordingly, when implementing the vibration effect described in Eq. 35 above, it is not critical to control both the phase ϕ1 and ϕ2, but rather the relative phase between the two actuators. Therefore in some implementations one could set phase ϕ1 to zero and control only ϕ2. Alternatively one could directly control the phase difference between the actuators. In this application typically the phases of all the actuators are shown in the equations. However, without loss of utility only the relative phase of the actuators can be controlled. Thus the phase of Vibration Actuators 2, 3, 4, etc. would be controlled relative to the phase of actuator 1; thereby eliminating the need to control the phase of actuator 1 relative to absolute time.
A feature of this disclosure includes the use of superposition of synchronized vibration waveforms. When multiple vibration forces are generated on a single vibration device, the Combined Vibration Force for the device is the superposition of the multiple waveforms. An example with two synchronized sine waves described by Eq. 35 is shown in
Furthermore, at the time when waveform 1 is at its negative peak then waveform 2 is at a positive peak, and the forces magnitudes are subtracted from each other (also referred to as destructive interference or negative interference). Due to this synchronization the combined vibration waveform is asymmetric, meaning that the force profile for positive force values is different than the force profile for negative force values. In the asymmetric waveform shown in
In an LRA, a moving mass moves relative to the actuator housing, and a restoring spring transfers force between the moving mass and the actuator housing. The force imparted by an LRA onto a mounting platform is a combination of the force from the restoring spring, and the electromagnetic force between the stator and moving mass. The restoring spring can be, for example: a mechanical spring or a magnetic spring. As resonance builds up in an LRA, the magnitude of the spring restoring force increases and becomes the dominant portion of the actuator force. Accordingly, the peak force imparted by a LRA onto the mounting platform typically occurs at or near the peak excursion point of the moving mass.
In
Thus, in this embodiment the timing of the moving masses is an indication of an asymmetric vibration waveform. In
In the embodiment shown in
A variation of this embodiment is shown in
Another variation of this embodiment is shown in
The timing of vibration force within a Vibration Actuator can be correlated with a number of physical properties. For example, in many LRAs a spring applies a restoring force onto a moving mass and the vibration force is largely correlated with the position of the moving mass. In ERMs the direction of the vibration force largely correlates to the angular position of a rotating eccentric mass. Linkage mechanisms can be used to generate vibrations, such as a slider-crank vibration actuator 1110 shown in
A feature of this disclosure includes combining vibration waveforms from multiple Vibration Actuators to generate a more complex vibration waveform. The asymmetric vibration described by Eq. 35 and shown in
A vibration force, F, is in a repeated cycle over a period T when F(t+T)=F(t). The vibration force of an ith actuator in a repeated cycle can be given by:
Fi(t+Δi+Ti)=Fi(Δi+t),
where Δi is the phase and Ti is the period of the ith actuator. For the embodiment shown in
FAlignedSet=F1(Δ1+t)+F2(Δ2+t)+ . . . +FN(ΔN+t) (36)
In the general case, the waveform shapes of Fi can be a wide range of waveforms including sine waves, triangle waves, square waves, or other waveforms. In some embodiments, the frequency of the actuator with the lowest frequency is defined as the fundamental frequency, ω1, and the remaining actuators vibrate at integer multiples of the fundamental frequency. In these embodiments the period of the fundamental frequency is given by T1 and the remaining vibration periods are given by such that:
T1=2T2,T1=3T3, . . . T1=NTN
When all the vibration actuators vibrate at integer multiples of the fundamental frequency, then the combined waveform has a repeated waveform with a period of the fundamental frequency. The fundamental frequency is also referred to as the first harmonic.
One method of implementing General Synchronized Vibration is to use sinusoidal vibrations in each actuator of an aligned set, and use Fourier Waveform Synthesis to select the phase, frequency, and amplitude of each actuator to approximate a desired vibration waveform. For a set of N aligned actuators with sinusoidal waveforms, the combined force of an Aligned Set, FAlignedSetFourier, is given by:
FAlignedSetFourier=B1 sin(ω1t+ϕ1)+B2 sin(ω2t+ϕ2)+ . . . +BN Sin(ωNt+ϕN) (37)
A wide range of additional waveforms can be synthesized from a set (a plurality) of vibration waveforms. Fourier synthesis is a method whereby an arbitrary waveform can be approximated from a combination of sine waves, including both symmetric and asymmetric waveforms. It is advantageous to use actuators vibrating at frequencies that are integer multiples of the frequency of vibration of other actuators. The lowest frequency in the set is referred to as the fundamental frequency or the first harmonic, the second harmonic is twice the fundamental frequency, the third harmonic is three times the fundamental frequency, and so on.
An advantage of using harmonics is that all the waveforms in the set repeat at the period of the fundamental frequency, thereby providing a repeating waveform profile of the combined waveform. In many vibration applications each vibration actuator generates a force with a repeated waveform that has a zero DC component and the combined force is described by Eq. 37. Accordingly, the combined vibration force does not have a DC component. Fourier synthesis is widely used in create a wide range of waveforms. One example waveform is a Sawtooth waveform, which creates a sudden change of force in one direction. In this manner, the Sawtooth waveform can be used to generate directional haptic cues. When the set of waveforms consists of three sine waves, the Sawtooth waveform can be generated with the first harmonic at relative amplitude 1, the second harmonic is at relative amplitude of ½, and the third linear sine wave with a relative amplitude of ⅓. With Fourier waveform synthesis, arbitrary waveforms can be approximated including both symmetric and asymmetric waveforms. When using Fourier waveform synthesis, both constructive and destructive interference can occur for both the positive and negative forces amplitudes.
An operating advantage of an LRA is to use resonance to generate high magnitude vibration forces from a relatively low power input, and an LRA can be designed and manufactured to have a specific resonant frequency by optimizing its spring stiffness and moving mass. In embodiments of General Synchronized Vibration, it can be advantageous to select a set of LRAs with resonant frequencies that correspond to at least some of the harmonics of a desired waveform. For example for a vibration device such as that in
Although LRAs are generally designed to operate at their resonant frequency, one can operate LRAs at other frequencies with lower amplitude force output per input command signal. Since lower amplitude force output is typically required at higher harmonics, once could build a Vibration Device with LRAs that all have the same resonant frequency, but operate them at different frequencies. For example for a vibration device with a set of 2 LRAs, both LRAs could have a specified resonant frequency of (3/2)ω1, where the first LRA is driven at ω1, and the second LRA is driven at 2ω1. In this configuration both LRAs are amplifying the input signal, but less than if they were driven at the resonant frequency of the LRAs, which is (3/2)ω1 for this example.
Asymmetric Vibration waveforms are useful for generating directional haptic cues, and can be synthesized using Fourier synthesis. For instance, an example of a method for selecting frequency, phase, and amplitude of sinusoidal vibrations to generate a high level of asymmetry is discussed below. Vibration parameters are specified for a set of 2, 3, and 4 actuators. In addition a process is presented for identifying parameters for waveforms with a high level of vibration asymmetry for any number of actuators. It should be noted that high levels of asymmetry may be achieved even if the values specified by this example are only approximately implemented. For instance, in the case of superposition of two sine waves, if there is a 30% error in the amplitude of vibration then 90% of desired asymmetry effect will still be realized.
Fourier synthesis allows one to approximate an arbitrary waveform with a superposition of sinusoidal waves. However, it is advantageous in some applications to generate asymmetric waveforms that have higher peak magnitudes in the positive direction than in the negative direction (or vice versa). The question then becomes what is the best function to approximate that will maximize the amount of asymmetry for a given number of superimposed sine waves? It is of special interest to consider asymmetric waveforms that have a zero DC component and thus can be composed solely of sine waves. Waveforms with a zero DC component can be used to generate vibrations from a set of vibrators since each vibrator will typically have a zero DC component. An asymmetric pulse train is illustrated in
where W is the pulse width, V is valley amplitude, T is period of repeated pulse, and P is peak amplitude.
The amount of asymmetry in a pulse-train can be defined by the percentage increase of P over V. One could increase the amount of asymmetry by reducing W, which would generate a thin and high pulse. However, if W is too small, the waveform would not be well-approximated with a small number of sine waves. Accordingly, an analytical question is, “What is the optimal value of W for a waveform composed of N sine waves?”
where f(t) is an arbitrary waveform and when a0=0 it have zero DC component. The Fourier coefficients can be calculated by multiplying both sides of the above equation by sin(2 π n t) or cos(2 π n t) and then canceling out terms. The coefficients are:
The equation for a0 holds if the DC component is zero. For the pulse waveform above, an is given by:
In a similar fashion:
By substituting in V from the equation above, the result is:
Fourier coefficients can be represented by an and bn as:
An alternative representation using sine waves and phase is:
To relate the two representations, the addition of sines formula:
sin(α+β)=sin(α)cos(β)+cos(α)sin(β)
may be used with:
α=2πn t
β=ϕn
An sin(2πn t+ϕn)=An cos(ϕn)·sin(2πn t)+An sin(ϕn) cos(2πn t)
Let
an=An cos(ϕn) and bn=An sin(ϕn)
An=√{square root over (an2+bn2)}=√{square root over (An2 cos2(ϕn)+An2 sin2(ϕn))}=An
where
In one scenario, the process shown in
The variable “NACT” in Table I is used to define the number of sine waves since it can also represent the number of actuators. For two sine waves, an asymmetry of 100% can be achieved, which indicates there is twice the magnitude in the positive direction (or vice versa). Higher numbers of sine waves can provide even higher amounts of asymmetry as shown in Table I. One example is shown in
General Synchronized Vibration can be performed with a set of non-sinusoidal waveforms. Even without use of Fourier synthesis, asymmetric waveforms can be generated by synchronizing the waveforms to create positive interference of two or more waveforms in one direction, and negative interference of two or more waveforms in the opposite direction. Embodiments with non-sinusoidal waveforms can still have the peaks of two or more waveforms occur simultaneously with positive interference in one direction and also occur simultaneously with negative interference in the opposite direction.
To create an especially distinct vibration effect, some LRA vibration actuators can be operated at an amplitude high enough to push the moving mass into the travel stops, thereby creating an impact force during each oscillation. The impact with the travel stops will generate a vibration waveform that is not sinusoidal. Multiple such actuators can be synchronized together to generate positive and negative interference as instances of impacts of masses with travel stops. This configuration can generate sharp peaks of vibration force, where direction of vibration is controllable. These sharp peaks of vibrations could be used to generate haptic sensations corresponding to impacts such as simulating the recoil of a gun. A wide range of vibration effects can be generated with non-sinusoidal vibrations. Examples are presented herein that use sine wave vibration waveforms, with the understanding that similar approaches could be generated with other waveforms.
One waveform that can be simulated is referred to as a “missing fundamental” waveform, which takes advantage of a phenomenon of human perception. As explained in “Music and Connectionism” by Peter M. Todd, D. Gareth Loy, MIT Press 2003, humans may perceive that a sound contains pitch of a certain frequency even though that frequency is not present in the sound if the sound contains higher frequencies that are integer multiples of the low frequency. In haptic applications, low frequency vibrations may be difficult to generate due to size and power constraints, while it may be easier to generate higher frequency vibrations. A vibration waveform can be generated that does not contain a desired low frequency, but does include higher frequencies at integer multiples of the desired low frequency. A person may perceive the desired low frequency vibration, just as they perceive the missing fundamental in a sound. The perception of a missing fundamental in vibration can be enhanced by including audio or visual effects at the desired low frequency.
The embodiment shown in
LRAs generate vibration forces along an axis and thus are described as “Linear Force Actuators.” Other Linear Force Actuators include slider-crank vibrators, rack and pinion vibrators, linear actuators that do not use resonance, pistons, and solenoids. Rocking actuators and pivoting actuators (such as described in U.S. patent application Ser. No. 11/476,436) generate forces that are approximately along an axis and for many applications can be considered Linear Force Actuators. Indeed, any embodiment described herein as employing LRAs can also be implemented with Linear Force Actuators or other actuators that generate forces that are approximately along an axis.
A controller for General Synchronized Vibration of a pair of Linear Force Actuators is shown in
Both LRA and ERM Vibration Actuators take some time to ramp up to speed to generate their maximum force output. Embodiments described herein include controllers that may or may not synchronize the actuators during the ramp up period. In addition, a Vibration Device may be commanded to transition from one vibration effect to another vibration effect. During this transition time interval, the controller may or may not synchronize the actuators.
A vibration device controller can be a microprocessor or other programmable device. For each actuator in the vibration device, the vibration device controller can modify the frequency of vibration, the phase of vibration, the amplitude of vibration, or any combination of these parameters. The ability to change these parameters allows for a single vibration device to generate a wide range of waveforms.
The phase and amplitude of the force output of a Vibration Actuator depends on both the control signal and the physical characteristics of the actuator. For example there is often a phase lag between the control signal and the force output of the actuator. To distinguish between the waveform of the actuator outputs and the waveform of the control signal, the subscript “c” notation is used to designate the control waveform. Thus the commanded amplitudes, Ac, and the commanded phase pc are not necessarily a direct correlation to the actual amplitude and phase of the actuator force. For example, the command voltage, V, of a vibration device controller of an LRA actuator driven with a sinusoidal voltage signal at a frequency ω, with a command phase of ϕc, and a voltage peak magnitude Ac, given by:
V=Ac sin(ωt+ϕc) (38)
However, due to the phase lag inherent in the actuator and frequency response of the actuator, the steady state force output of the actuator, Fa, may be given by:
Fa=A sin(ωt+ϕ) (39)
The phase lag is the difference between ϕ and ϕc. The frequency response is reflected in the ratio between Ac and A. Both the phase lag and the frequency response are functions of the actuator physics that can vary with vibration frequency, and which is often represented by an actuator specific Bode plot. For effective implementation of synchronized vibration it can be advantageous to take into consideration the phase lag inherent in each vibration actuator. This can be done by adding an equal but opposite phase offset to the controller waverform so that the actuator phase lag does not impact synchronization.
One method to implement this offset is to use a look up table, Bode plot, or algorithm for each actuator that determines the appropriate phase offset for a given vibration frequency. In addition, it can be advantageous to use a lookup table, Bode plot, or algorithm to determine the required voltage magnitude needed to generated the desired vibration force magnitude. The Fourier synthesis approach and the approach of matching positive and negative peaks of vibration described herein are implemented in reference to the actual phase of the actuator force output rather than the phase of the waveform from the actuator drive circuits. In order to simplify notation herein, the phase lag due to the actuator physics is generally not included in the equations relating to synchronization. Rather a more compact notation is used which represents the vibration force output, F, with the understanding that the appropriate command signal is generated to provided that output. The command signal includes the necessary phase lag and magnitude adjustment as needed based upon the actuator physics. The magnitude control can be implemented with a voltage, current, PWM signal of voltage or current, or other type of command used to drive said actuator. The Fourier synthesis approach and the approach of matching positive and negative peaks of vibration describe specific target frequency and phase of vibration for actuators within the vibration device; however, even if these target frequency and phase are not exactly met, the overall vibration effect often is close enough to the desired waveform to achieve a desired effect.
Due to manufacturing variations, two actuators that are built on the same assembly line may have different physical characteristics that affect their Bode plot, including phase lag, amplitude characteristics or resonant frequency. In some embodiments a sensor or sensors can be used to detect the phase of an actuator, the amplitude of vibration of an actuator, or the amplitude and phase. Such a sensor could be an optical sensor, Hall-effect sensor or other type of sensor that detects when a moving mass passes the midpoint or other point of vibration. One such embodiment is shown in
Another method of sensing is to attach actuators 1124a and 1124b to the Mounting Platform 1100 of the vibration device 1134 as shown in
The sensor measurements can be used to self-calibrate the vibration devices. A test pattern can operate each actuator separately to identify the actuator phase lag, force amplitude characteristics, and resonant frequency. These characteristics can be used to update a lookup table, Bode plot, or algorithm used to generate the voltage commands to the actuators. The combined force of multiple actuators can also be measured to confirm that the desired force effects are being achieved. Accordingly, the vibration device controller can use the sensor measurements to update the commanded amplitude, phase, and frequency as shown in
Embodiments of the disclosure also include configurations with multiple sets of aligned vibration actuators. One such configuration is shown in
In the embodiment shown in
Fcombined=a1A1(B1 sin(ω1t+ϕ1)+B2 sin(ω2t+ϕ2))+a2A2(B1 sin(ω1t+ϕ1)+B2 sin(ω2t+ϕ2)) (40)
As described in U.S. patent application Ser. No. 11/476,436, there are methods for selecting the magnitude of A1 and A2 that will generate a desired direction for the vector Fcombined, yet these methods may only specify the axis of vibration and not whether the magnitude of force is positive or negative and thus limit the range of unique direction of vibrations to a range of 180 degrees. According to one aspect of the disclosure, an embodiment allowing control of the direction of vibration in all 360 degrees of the plane of the Mounting Platform, may have the following parameter relationships:
ω2=2ω1;
ϕ1=0 and ϕ2=−90 for a direction between −90 and +90 degrees;
ϕ1=0 and ϕ2=90 for a direction between 90 and 270 degrees;
A1 and A2 specified by equation 19 above
Numerous other embodiments are possible with multiple sets of aligned vibration actuators. Each set of aligned actuators can generate an arbitrary waveform, pAlignedSet. Embodiments of synchronized vibrations created from arbitrary shaped profiles are described above. Many such embodiments show a single actuator generating each waveform. However, it is also possible to have a set of aligned actuators create these waveforms. Therefore, such embodiments can be expanded to include configurations where a set of aligned actuators take the place of a single actuator. In these configurations, the arbitrary waveform profiles would take the form of the arbitrary waveform, pAlignedSet, as discussed herein.
Accordingly, embodiments of asymmetric vibration include 3D configurations and non-orthogonal configurations. An example of two non-orthogonal LRA Pairs is shown in
Fcombined=a1A1(pAlignedSet)+a2A2(pAlignedSet)+ . . . +aMAM(pAlignedSet) (41)
The approaches used to determine the values of A described above can be applied to these configurations as well. A variety of Lissajous vibration patterns are also described above, including lines, circles, ellipses, parabolas, etc. Asymmetric vibration waveforms can be used to produce larger peak forces during one part of the Lissajous vibration pattern than another part.
Turning to another aspect of the disclosure, an ERM is depicted in
One method of generating vibration forces is with an ERM where an eccentric mass is attached to motor shaft. As the motor rotates, centrifugal forces are generated onto the motor. General Synchronized Vibration can be applied to multiple ERMs by controlling the frequency and phase of rotation of the eccentric masses.
For the ith ERM, Ai is the amplitude of the vibration force, ωi is the frequency of vibration, and ϕi is the phase of vibration. The combined vibration force of the ERMs in
FEx=A1 cos(ω1t+ϕ1)+A2 cos(ω2t+ϕ2)+ . . . +AM cos(ωMt+ϕM)
FEy=A1 sin(ω1t+ϕ1)+A2 sin(ω2t+ϕ2)+ . . . +AM sin(ωMt+ϕM)
The force and torque imparted by an ERM onto a mounting platform are due to a combination of the centrifugal force from the rotating eccentric mass, the torque between the stator and rotor of the motor and other inertial forces such as gyroscopic effects. As the speed of the ERM increases the centrifugal force increases and typically becomes the dominant portion of the vibration force. Accordingly, once an ERM has sped up, the vibration force imparted by an ERM onto the mounting platform is close to the centrifugal force imparted by the rotating eccentric mass.
In one embodiment, the ERMs are configured in counter-rotating pairs, where each ERM in a pair has the same eccentric mass and operates at the same angular speed but the ERMs rotate in opposite directions from each other.
FE1x=A1 cos(ω1t+ϕ1+σ1)+A1 cos(−ω1t−ϕ1+σ1)
FE1y=A1 sin(ω1t+ϕ1+σ1)+A1 sin(−ω1t−ϕ1+σ1)
The phase difference between ERM 1212a and ERM 1212b is represented by two variables, ϕ1 and σ1, where ϕ1 represents a temporal phase and is half of the difference in overall phase and σ1 represents a geometric angle and is half of the average of the overall phase difference. For an ERM the magnitude of the vibration force, A, is equal to mrω2, where m is the mass, r is the radius of eccentricity, and ω is the velocity of angular rotation in radians per second. Through trigonometric identities, this combined vibration force vector of the first ERM pair can be represented by the equation below. In this configuration, the force from a single counter-rotating pair generates a sinusoidal vibration force aligned with an axis of force direction defined by the angle σ1.
The embodiment in
FE2x=A2 cos(ω2t+ϕ2+σ2)+A2 cos(−ω2t−ϕ2+σ2)
FE2y=A2 sin(ω2t+ϕ2+σ2)+A2 sin(−ω2t−ϕ2+σ2)
In one control method, σ1 and σ2 are set equal to the same value, σ, and therefore both ERM pairs generate a vibration along the same axis and the combined vibration force vibration force vector of all four ERMs is given by:
In another control method, σ2 is set equal to π+σ1 and therefore both ERM pairs generate a vibration along the same axis but the contribution from the second ERM pair has a negative sign. With this method the combined vibration force vibration force vector of all four ERMs is given by:
There are similarities between the application of General Synchronized Vibration to Linear Force Actuators and ERMs. In both cases, the combined vibration force can be composed of a superposition of sine waves, and in both cases it is possible to implement asymmetric vibrations. One embodiment asymmetric vibration uses the relative magnitudes and phases for superposition of two sinusoidal waves. In this embodiment, the amplitude of the fundamental frequency is twice that of the second harmonic. For the embodiment shown in
Steps of General Synchronized Vibration are shown in
Embodiments are possible with a plurality of ERM pairs, as shown in
In the embodiment shown in
mnrn=(An/A1)m1r1/n2 (45)
The phases may be represented relative to the starting time of a specific waveform of pulse-trains being approximated. In some implementations it is more convenient to set the phase of the first harmonic to zero and represent the phases of the other harmonics relative to the first harmonic. An equation that converts the phase of the nth harmonic, ϕn, to a phase of the nth harmonic relative to the first harmonic, is given by:
ϕrn=ϕn−(ωn/ω1)ϕ1 (46)
In addition, the phases may be defined relative a series of sine waves, while the ERM vibration equation Eq. 42 is specified in terms of a cosine wave. A cosine wave is a sinusoidal wave, but the phase is shifted by 90 degrees from a sine wave. Table I shows parameters for embodiments that superimpose 2, 3, and 4 sine waves. These parameters can be converted to relevant parameters for embodiments with 2, 3, and 4 ERM pairs, using Eq. 45 and Eq. 46 along with the 90-degree shift for the cosine representation. Table III, provided below, shows these parameters for ERM pairs which generate high levels of asymmetry. The method described in
Implementing General Synchronized Vibration with ERMs has an advantage that a wide range of vibration frequencies can be generated without being restricted to a specific resonance range. As the ERM frequency increases the centrifugal forces increase, the ratio of waveform amplitudes of A1 and An remains constant. Accordingly, high levels of asymmetric vibrations can be generated with a single ratio of eccentricity, as shown in Table II and Table III, over an arbitrary frequency.
An embodiment with four ERMs is shown in
Steps of General Synchronized Vibration are shown in
Other embodiments are possible with different frequency and mass relationships. The time, t, is represented in terms of the period of the fundamental frequency, where T1=2π/ω1. As seen in
Another vibration device is shown in
A single vibration device could operate similar to ERMs as either counter-rotating pairs or co-rating pairs. There are a number of advantages of operating a vibration device in a mode where some of the ERMs function as CORERMs. One advantage is that the magnitude of vibration can be increased by using a CORERM pair. Another advantage is that legacy vibration effects can be generated that simulate a single ERM rotating. For example, a haptic interface could be operated at one time to generate asymmetric vibration forces and at another time to simulate a single ERM. If users are accustomed to haptic signals from a single ERM, the CORERM pair allows for such familiar effects to be generated.
A large number of co-rotating ERMs could by synchronized together in with no phase offset such that their force magnitudes combine to create a vibration effect similar to a single large ERM. If all the co-rotating ERMs are CORERM pairs with co-located centers, then the center for the combined force would be the same as for a single large ERM.
Another advantage of using CORERM pairs is that they allow for Fourier syntheses of a wider range waveforms. One such embodiment is to replace each ERM in
Control of amplitude of vibration force can be especially useful in asymmetric vibrations used for haptic applications. A vibration device can be grasped by one hand, two hands, held with other body parts, attached to any body part, or placed in contact with any body part. Generally at least two sides of a haptic vibration device are in contact with a user, and each side contacts the user at somewhat different locations on their body. These different locations could be the different sides of a grip of a tube vibration device, such as shown in
Human perception often requires that a threshold be exceeded before a sensory event is perceived. In one embodiment, the magnitude of an asymmetric waveform is adjusted so that on one side of a Vibration Device low vibration forces are generated that are below a threshold of perception and on the opposite side higher peak forces are generated that are above a threshold of perception. In this manner, a vibration force may be perceived on mostly one location that is in contact with the vibration device, even though the vibration device is in contact with a number of locations on the body. As the direction of vibration is varies, the location on the body at which vibration is perceived may also vary. This approach uses vibration to generate effects that are vary significantly according to the direction of vibration, and thus are useful for indicating directional cues.
An embodiment with 2 ERMs in a tube is shown in
The embodiment in
The forces between an ERM and a mounting platform include both centrifugal forces and the motor torque generated between the motor stator and rotor. When an ERM is rotating at operating speed, the centrifugal forces are typically large and dominate the effect from the motor torque. However, some embodiments can bring effects from the motor torque to the forefront. When two ERMs with parallel axes are operated as a co-rotating pair with a phase offset of 180 degrees, the two eccentric masses balance each other out and the centrifugal forces cancel each other out. In this embodiment, the torque about the axes of rotation can be felt more prominently. The torque about the axis of rotation is felt during the acceleration and deceleration of the rotating masses. Higher torques can often be generated by periodically reversing the applied voltage to the motor, since the electromagnetic force (back EMF) in the motor can add to the reverse voltage being applied.
Even higher torques about the axis of rotation can be generated by using a brake to cause a sudden deceleration to a rotating mass. This approach is known as a reaction-wheel method for generating torques, and is useful when there is no grounded actuator to apply a torque effect.
One embodiment of an ERM Pair uses interleaved masses, an example of which is shown in
In an embodiment with interleaved masses, the ERM pair can generate centrifugal forces without generating a torque due to the distance between the ERMs. Interleaved ERM pairs are useful for generating pure force vibrations without torque vibrations. Interleaved ERM pairs can be operated as a co-rotating pair, and thereby vary the amplitude of vibration independently from the frequency of vibration. A co-rotating interleaved pair can switch between a 180 degree angle between the ERMs and a 0 degree angle to rapidly turn the vibration effect on or off Since there are no torque effects, the complete vibration sensation will be turned off when the ERMs have a relative phase angle of 180 degrees. In addition, such a configuration can generate a gyroscopic effect without generating torque vibrations.
An interleaved ERM pair can also be operated as a counter-rotating pair, and thereby generate a vibration force along an axis. By controlling the phase of the interleaved ERMs, the direction of the vibration force can be controlled.
Embodiments with 3 ERMs are shown in
When the distance A times the eccentricity of ERM 1314a is equal to the distance B times the eccentricity of ERM 1314b, then the combined vibration force from synchronized ERMs 1314a and 1314b is projected onto the axis of rotation at the same point along this axis that the center of the eccentric mass of ERM 1312 is projected onto. In this configuration the combined vibration force from all 3 ERMs share the same plane. With this configuration, a vibration force can be generated by all 3 ERMs without generating a torque. Accordingly, the embodiment with 3 ERMs in
If the eccentricity of ERM 1314a plus the eccentricity of ERM 1314b is equal to the eccentricity of ERM 1312, then complete cancellation of the vibration forces can occur when all 3 ERMs are rotating. This complete cancellation allows for rapid on and off control of vibration forces. The embodiment in
Another embodiment with 3 ERMs is shown in
When the eccentricity of ERMs 1314a and 1314b are half the eccentricity of the center ERM 1312, and the ERMs 1314a and 1314b are synchronized to operate at the same frequency and same phase, then complete cancellation of vibration forces and torques can occur at a phase offset of 180 degrees. Thus, the embodiment in
An additional embodiment with 3 ERMs is shown in
To provide complete cancellation of the vibration force, the eccentricity of the rotating mass of ERMs 1314a and 1314b can be selected to be half that of the center ERM 1312. Complete cancellation of vibration torques can occur in the co-rotating mode when the center ERM 1312, is located in the center between ERMs 1314a and 1314b. The embodiment in
The embodiment in
General Synchronized Vibration of ERMs requires control of both the frequency and phase of rotating eccentric masses. One method is to use a motor, such as a stepper motor, where the position and speed can be defined open-loop by specifying a desired series of steps. Another method is to use closed loop control with a sensor or sensors that measure frequency and phase. An ERM with a sensor 1260 is shown in
Another method to sense frequency and phase is to use a discrete sensor that detects when the motor shaft spins by a set position relative to the motor housing, or a number of set positions relative to the motor housing. Such discrete sensors can use reflective optical sensors that reflect off a rotating object coupled to the motor shaft, line-of-sight optical sensors that detect when a rotating object coupled to the motor shaft interrupts the line of site, hall effect sensors that detect a discrete component that is coupled to the rotating shaft, or other method of discrete detection of the shaft position.
Implementing General Synchronized Vibration with ERMs requires that the frequency and phase be controlled for each ERM that is used to synthesize the desired waveform. Both the frequency, ω, and phase, ϕ, can be controlled by controlling the position, θ, of the rotating shaft of the ERM to be at a desired position as a function of time. Accordingly, control of frequency and phase can also be equivalent to control of the position of an eccentric mass to a desired position trajectory over time. Measurement of the shaft position can be performed continuously or at discrete instances such as when the shaft passes a certain position. Continuous measurements could be made with an encoder or other type of sensor that measures positions at frequency intervals. Discrete measurements could be made with an optical sensor that detects when the eccentric mass passes by. Discrete measurements could be made at a single position of motor rotation or at multiple positions. Discrete measurements can be augmented with a second sensor that also measures the direction of rotation. A direction sensor could be a second optical sensor mounted close to the first optical sensor. The direction of rotation can be determined by which optical sensor is triggered first.
A wide range of methods can be used for real-time control the position and speed of an ERM. One method is Proportional-Integral-Control. Another method includes time optimal control as described by “Optimal Control Theory: An Introduction”, by Donald E. Kirk, Dover Publications 2004. One real-time control approach is presented below for controlling a set of synchronized ERMs. The approach is written for use with a discrete sensor, but can also be applied with a continuous sensor. When a continuous sensor is used, the dynamic performance of the system can be improved by more accurately updating the commands to the motor continuously.
An exemplary control approach for a system with M ERMs is now discussed. For each ERM for i=1 to M, define the desired frequency, ωdes,i, and desired phase, ϕdes,i. The desired direction of rotation is defined as dirdes,i=sign(ωdes,i). Initialize the following variables:
a. Time, t=0
b. Number of revolutions of each ERM, nrevi=0 (for all i)
Next, start motors turning by providing an open-loop command, Vopen_loop,i, to each ERM corresponding to the desired frequency, ωdes,i. The open-loop command can be determined by the motor's torque-speed curve and correspond to the voltage that will generate a terminal velocity as the desired value. An optional startup operation is to turn on the motors at a high or maximum voltage to reduce the startup time. Since sensors exist to detect speed of rotation, the voltage can be reduced to a desired level when the ERMs reach an appropriate speed. In this fashion the sensors used for synchronization can also be used to reduce the startup time of the overall vibration device. As each ERM passes its discrete sensor:
A control law may be implemented to reduce the position error of each ERM. There are a wide range of control of control approaches in the field of control, including:
With all control approaches a bidirectional or unidirectional motor driver could be used. An advantage of using bidirectional motor drivers is that high levels of deceleration can be applied to an ERM by applying a reverse voltage, even if the motor never changes direction of rotation. This approach can reduce the time it takes to synchronize the ERMs. Another advantage of using bidirectional motor drivers is that ERMs could be operated in both counter-rotating and co-rotating modes.
An alternative method of calculating the position error is discussed below. Where the desired force is represented by Aisin(ωit+ϕi) and the desired position is represented by θi(t)=ωit+ϕ1, start all ERMs at open loop voltages corresponding to ωi. Let the motors spin up to speed when ERM 1 passes the sensor so that it starts in phase, then reset the timer so t=0. See Table IV below.
In a digital system, ERM control may include the following. First, set rotation counts per revolution (e.g., 256 or 512). Correct for timer overflow so Δt=ti-ti-1 is always correct. Define ω in terms of rotation counts per timer counts. And use interrupts (or other operations) to avoid missing when an ERM passes by a sensor.
Some embodiments of Synchronized Vibration Devices can be controlled such that the combined force and torque sum to zero. In such an embodiment the force and torques from individual Vibration Actuators balance each other out to generate a net zero force and torque. An advantage of such an embodiment is that Vibration Actuators can be brought up to speed and put into a mode when no vibration effects are generated. When vibration effects are desired, they can be quickly implemented by modifying the phase of the vibration, without the lag for bringing the actuators up to speed. This embodiment is referred to as “Spinning Reserve”, and is analogous to the same term used for kinetic energy in an electric utility power plant that is held in reserve to quickly provide power when needed. The spinning reserve approach allows vibration to be quickly turned on and off. Spinning Reserve embodiments can include ERM actuators that are spinning in such a manner that the combined forces and torque sum to zero. Spinning Reserve embodiments can also include with LRA actuators and other resonant actuators that are vibrating in such a manner that the combined forces and torque sum to zero.
The spinning reserve approach has the advantage of fast on and off response times, but also can require increased power consumption since the vibration actuators are operated even when no overall vibration effects are generated. To reduce the added power consumption, the vibration actuators can be spun up to speed at the first indication that a need for vibration force is imminent. Such indications could be a keystroke, computer mouse motion, user touching a touch-screen, movement detection via a sensor of a game controller, beginning of a game portion where vibration effects are used, or any other event that would indicate that a desired vibration effect would be imminent. In a similar fashion power can be conserved by spinning down and stopping the actuators once the need for vibration is no longer imminent. Indications to spin down the actuators could include passage of a set amount of time where no user input is registered, transition to a new phase of a computer program where vibration effects are no longer needed, or other indication. During the spin up and spin down of the actuators, the actuators can by synchronized so that they operate in a spinning reserve mode and do not generate a combined vibration force. In this fashion, the user will not feel the spin up and spin down of the vibration actuators.
A spinning reserve embodiment with 4 ERMs is shown in
Another method of Synchronized Vibration can be applied to the embodiment shown in
When ERMs are rotating they generate a gyroscopic effect due to the angular inertia of the motor rotor and rotating mass. When the angular velocity of the ERMs is large this gyroscopic effect can be used to generate a haptic sensation in response to changes in orientation of the vibration device. The implementation of spinning reserve as shown in Table V has a gyroscopic effect since all ERMs are rotating in the same direction and their angular inertia combined. The implementation of spinning reserve as shown in Table VI does not have a gyroscopic effect since half the ERMs are rotating in the opposite direction of the other half, and therefore angular inertias cancel each other out when rotational inertias are equal. The mode of implementation of spinning reserve can be selected according to the desired gyroscopic effect.
Another method of Synchronized Vibration can be applied to the embodiment shown in
Another method of Synchronized Vibration can be applied to the embodiment shown in
Indeed Synchronized Vibration can be applied to the embodiment shown in
Another method of Synchronized Vibration can be applied to the embodiment shown in
Another implementation of pure torque can produce an asymmetric torque, where the peak torque in the clockwise direction is larger than the peak torque in the counterclockwise direction, or vice versa. One such asymmetric torque implementation for a 4 ERM configuration could be as shown in Table XI. This is achieved by operating ERMs 1192a and 1192b at twice the frequency of ERMs 1190a and 1190b, and controlling the phase appropriately. For the configuration shown in
Yet another method of Synchronized Vibration can be applied to the embodiment shown in
A wide range of haptic effects can be generated by switching between the various effects described herein. When the ERMs are rotating at the same speed in two different effects, the change between effects (including the no-vibration spinning reserve) can be achieved quickly. In many cases the change in effect only requires a positive or negative phase change of 90 degrees in specific ERMs.
Embodiments with 4 ERMs that are not aligned along the same axis also can generate many useful effects.
The embodiment shown in
As discussed above with regard to
Another embodiment of an interleaved ERM pair is shown in
The performance of almost any vibration device can be improved by applying the methods and embodiments of General Synchronized Vibration discussed herein. This approach toward synchronization allows for a wide range of waveforms to be generated including asymmetric waveforms that generate larger peak forces in one direction than the opposing direction. Applications range from seismic shakers and fruit tree harvesters, to vibratory feeders and miniature vibration applications. The embodiments described herein can replace more expensive actuation devices that are used to generate complex waveforms of vibrations. Such applications include seismic shakers that are simulating specific earthquake profiles, and voice coils that are used to generate complex haptic effects.
Haptic applications described herein can be used to augment any device that has a visual display including computer gaming, television including 3D television, a handheld entertainment system, a smartphone, a desktop computer, a tablet computer, a medical device, a surgical instrument, an endoscope, a heads-up display, and a wristwatch. Implementation of haptic feedback within a system that has a visual display is shown in
As described herein, Vibration Force cues can be generated in specific directions, and these directions can be chosen to correspond to direction that is relevant to an object or event that is being shown on a graphic display.
Moreover, it is be useful to generate haptic cues of directionality for applications where a person does not have visual cues, such as to guide a blind person or applications where vision is obscured or preoccupied with another task. For example, if a person had a handheld device such as a mobile phone that could generate directional haptic cues through vibration, and the mobile phone knew its absolute orientation as it was being held and the orientation the person should be in to move forward to a goal, then the mobile phone could communicate directional haptic cues through vibration (a force, a torque, or a combined force and torque) that corresponded to the direction and magnitude of the change in orientation the person holding the mobile phone needed to make.
The Vibration Devices describe herein can be used to improve the performance of existing devices that use vibration. For example vibration is used in fruit tree harvesting. By allowing the operator to generate complex waveforms and control the direction of vibration a higher yield of ripe fruit could be harvested, while leaving unripe fruit on the tree. Vibratory feeders are used in factory automation, and typically involve a significant amount of trial an error to achieve the desired motion of the parts. By allowing the operator to generate complex waveforms and control the direction of vibration it can be easier to generate the desired part motion and a wider range of parts could be processed with vibratory feeders.
The Vibration Devices described herein allow for a wide and continuous adjustment in areas such as vibration magnitude, frequency, and direction. To improve performance of a Vibration Device, sensor feedback can be used, as shown in
One application is to use General Synchronized Vibration for locomotion.
However, there will generally be no motion in the negative x direction, since the friction threshold is not exceeded. In this fashion, the Vibration Device 1200 will take steps in the positive x direction. The direction of motion along the x axis can be reversed by changing the synchronization of the Vibration Actuators and generating an asymmetric waveform that has a larger peak force in the negative direction. A location device can be made to move in arbitrary directions on a surface 1282 by using a Vibration Device 1200 where the direction of vibration can be controlled on a plane, such as those shown in
Vibration is also used for personal pleasure products such as Jimmyjane's Form 2 Waterproof Rechargeable Vibrator. Vibration is also used for personal massager products such as the HoMedics® Octo-Node™ Mini Massager. Vibration is also used for beauty products such as Estée Lauder's TurboLash and Lancôme's Oscillation mascara applicators. INOVA produces the AHV-IV Series Vibrators for Vibroseis seismic exploration. General Synchronized Vibration can be used to improve the performance of such products by allowing the user to customize the vibration waveforms and direction of peak vibration forces.
General Synchronized Vibration may also be used in therapeutic medical applications. For example a Vibration Device could vibrate a patient's stomach to aid in digestion, and the patient or a sensor could determine how to adjust the vibration over time.
II. SAVANT
Now having developed a foundation of General Synchronized Vibration in the previous section, the architecture for a “Synchronized Array of Vibration Actuators in a Network Topology” (herein “SAVANT”) is now presented to motivate the use of multiple, low-cost actuator components in lieu of a single, high-cost actuator. When using multiple actuators in an array, the system is able to exhibit various modalities which we will refer to as dimensions of the SAVANT architecture. These orthogonal dimensions are: performance, bandwidth, reliability, magnitude, spatial and temporal.
The SAVANT architecture is generically applicable to any type of low-cost actuator, but for the purposes of the present analysis, systems of linear resonant actuators (LRAs) are discussed. It will first be shown that the analysis for multiple, collinear LRAs can be reduced to the analysis of a single LRA driven by the sum of the component LRA forcing functions. Then, example implementations of the different dimensions of SAVANT will be presented and compared with different single-actuator solutions currently available. Finally a discussion of multi-dimensional control effects and sequences of these effects will be presented.
Having developed a foundation of General Synchronized Vibration in the previous section, a new conceptual framework is introduced for creating haptic effects with vibration actuators. This architecture is designed primarily with small, hand-held consumer devices in mind but it is general enough to apply to any device of any size. The basis of the architecture is joining small actuator elements together in different physical geometric configurations, or network topologies, to create a Synchronized Array of Vibration Actuators in a Network Topology—or SAVANT.
The power of SAVANT is three-fold: to synchronize arrays of low-cost, readily available vibration actuators to emulate superlative single actuators; to bring together sets of these emulated high-performance actuators to create almost any desired control effect; and to have an array of vibration actuators that is fault tolerant.
Any array of rigidly or semi-rigidly coupled actuators whose motions and control schemes have been synchronized with the purpose of having characteristics or producing haptic effects beyond the abilities of any single actuator in the array is a SAVANT. Subsets of the set of actuators in a SAVANT are also called SAVANTs as long as they still meet the definition.
While the number of actuators in a SAVANT must be at least two, SAVANTs may be further decomposed into a set of connected SAVANT nodes such that the number of actuators in a SAVANT node must only be at least one. The advantage of representing a SAVANT as a network of SAVANT nodes is that it enables the specification of geometric relationships between the SAVANT nodes. The specification of a SAVANT's nodes as a particular geometrical configuration is defined to be that SAVANT's specific network topology.
Furthermore, the SAVANT node is further defined to be a collection of rigidly or semi-rigidly coupled actuators in close proximity of one another whose resultant vibration effects are designed to appear to emanate from a single spatial point. These groups of actuators are also referred to herein as proximal groups. Groups of actuators that are spatially separated so as to jointly create effects that require non-pointlike origin are referred to herein as distal groups or distal nodes.
The network topology of the actuators in a SAVANT determines how they can be used together. The relevant properties of the SAVANT are the collinearities of the component actuators, the spanning set of displacement vectors and the relative proximities of the nodes.
The division of an array into SAVANT subsets is fluid. A single device may contain a SAVANT having a plurality of synchronized actuators and at any given time these actuators may be functioning in any available capacity. For example a device could have a total of six synchronized actuators: in response to stimulus A the six actuators could be divided into three subsets of two-actuator SAVANTs to produce the resultant control effect α; in response to stimulus B, the six actuators could instead be divided into two subsets of three-actuator SAVANTs to produce the control effect β. By joining together low-cost component actuators to emulate a single actuator with arbitrarily superlative performance characteristics, one also gets haptic capabilities unavailable to devices with unsynchronized vibration actuators, such as directional vibration and asymmetric vibration.
An LRA-type actuator has three performance characteristics that can be improved by combining multiple actuators together: response time, bandwidth and force output. An array of collinear LRA-type actuators can emulate improvement of any of these separately or at the same time. For example, four collinear LRAs could have synchronized control schemes such that they emulate a single component LRA with a faster response time. Alternatively they could be controlled synchronously to emulate a single component LRA with an increased frequency response range, or bandwidth. Or in a completely separate scenario the same four LRAs could be split into two subsets where each subset of two LRAs emulates a single LRA with increased bandwidth and collectively the two subsets work together to emulate faster response times.
Since an array of actuators with a given network topology can work together to emulate any single improved performance characteristic without improving the other two, then in the space of the actuator control schemes we consider these performance modes to be orthogonal. Thus it is possible for a SAVANT to simultaneously be in multiple performance modes, but it is not necessary. Later we will consider many examples of these control modes as well as combinations of them.
Beyond out-performing single actuator elements, arrays of actuators also have available two control modes unique to multiple synchronized actuators. These modes are referred to as spatial and temporal. SAVANTs running in spatial mode can create haptic effects that relate to the user via their position and orientation in space. For instance a set of actuators may work together to create a half-wavelength oscillation or the amplitude of a vibrational effect may change based on the position of the device (per se relatively to another object or positions related to the Earth). In temporal mode, SAVANTs can create vibrational effects that interact with the user to create an awareness of time. These can include asymmetric waveforms created through Fourier synthesis of harmonic forcing functions.
Finally, proximal arrays of collinear actuators have a natural safeguard against individual component failure. Many devices will use haptic effects to protect the wellbeing of their users, often in perilous or extreme environments. It is crucial that the vibration actuators are fault tolerant. One of the ways to achieve this is to build in redundancies for the purposes of reliability. Arrays of actuators that are designed to work together for the purposes of fault tolerant reliability are SAVANTs said to be running in reliability mode.
Because SAVANTs can exhibit these control modalities independently or simultaneously, they may be combined together into a single vector space which is referred to herein as the SAVANT “Control Space.” This space spans the haptic capabilities of sets and/or subsets of actuators. The purpose of introducing this space and its comprising directions is to abstract the capabilities of groups of actuators. The discussion of haptic control schemes can be elevated from “on and off” to sequences of control effects designed to enhance the user experience beyond today's capabilities, while only using low-cost components that are readily available today.
All possible haptic effects (within reason) can be created with the SAVANT architecture. In general, a SAVANT of sufficient size can be thought of as a vibration synthesizer, designed to create arbitrary vibrational output either using predefined control sequences or in response to external information, e.g., user interface or sensor feedback. Generically the SAVANT architecture applies to any type of actuator—and SAVANTs of one actuator type can even emulate another actuator type. For instance, two LRA-type actuators can be synchronized to emulate the output of an ERM-type actuator and vice versa. Given this duality, all control sequences designed e.g. for an LRA-type SAVANT are equally valid for an ERM-type SAVANT where each LRA-type actuator is replaced with two synchronized ERMs designed to emulate an LRA.
As previously stated, for the purpose of this inventive disclosure the examples of specific electronic components are designed for haptic applications of hand-held devices. The SAVANT architecture is not limited to actuators of this dimensional scale. That is to say, SAVANT is intended to be applicable at other dimensional scales with appropriate actuators—for example, an array of MEMS LRA actuators which might use electrostatic forces in place of electromagnetic forces; or arrays of very large LRAs that may be used for seismic exploration. Moreover, the examples discussed herein are based on a relatively small number of actuators but the architecture is consistent for any number of actuators. And finally, though the majority of examples in this text are concerned with homogeneous SAVANTs, it is perfectly acceptable and often desirable to have heterogeneous arrays of actuators. Here the notion of heterogeneity includes both actuators of a similar type with varying characteristics and actuators of different types.
Correspondingly,
Correspondingly,
Correspondingly,
Correspondingly,
Finally,
A. Equation of Motion for an LRA Array
First consider a single LRA. The response function of an LRA is that of a damped harmonic oscillator with a resonant angular frequency ω0, a mass m and a damping ratio ζ. Usually, though, LRAs are labeled by their resonant frequency f0, where ω0=2πf0. Generically, the LRA can be driven with any arbitrary function of time-usually implemented via the methods of pulse-width modulation, or PWM—but for simplicity let us just consider a simple sinusoidal driving force. This simplification is well-motivated by hardware considerations and as shown below, it is still quite general. Thus the equation of motion for a single LRA will be the solution of the differential equation
where ω and φ determine the characteristics of the driving force. If the LRA is starting from rest then the initial conditions are given by x(0)=0, x′(0)=0.
The steady-state maximum amplitude is given by
If we were to have n identical LRAs configured in parallel such that all the vibration directions were oriented along e.g. the x-axis, then each LRA would be governed by its own equation
and the total response of the embedding system, e.g. a phone or game controller, would be proportional to x(t)=x1(t)+x2(t)+ . . . +xn(t). We can reduce the number of equations though by introducing a change of variables. Let
X(t)=x1(t)+x2(t)+ . . . +xn(t) (Eq. 104)
which leads to
X′(t)=x1′(t)+x2′(t)+ . . . +xn′(t) (Eq. 105)
and
X″(t)=x1″(t)+x2″(t)+ . . . +xn″(t) (Eq. 105)
Summing the left-hand sides of Eq. 103 we have
(x1″(t)+x2″(t)+ . . . +xn″(t))+2ζω0(x1′(t)+x2′(t)+ . . . +xn′(t))+ω02(x1(t)+x2(t)+ . . . +xn(t))=X″(t)+2ζω0X′(t)+ω02X(t) (Eq. 107)
which we recognize as the equation of motion for a single simple harmonic oscillator whose position is given by X(t). On the right-hand side we are left with the sum of the individual forcing functions. Generically there is no simplification of the addition of sine functions. Note though that we can trivially deal with anti-parallel components by reversing the sign of their forcing function. Thus our array of n (anti-)parallel LRAs is governed by the single equation
Initial Conditions
Interestingly, the initial condition for the array of LRAs is just the sum of initial conditions of the individual LRAs:
X(0)=x1(0)+x2(0)+ . . . +xn(0),X′(0)=x1′(0)+x2′(0)+ . . . +xn′(0). (Eq. 109)
This can have unexpected consequences. Consider the case where there is an even number of LRAs with an identical steady-state maximum amplitude and the steady-state motions of each successive pair are out of phase by π-meaning that when 1, 3 and 5 are at A; 2, 4 and 6 are at −A. Even though each individual element is vibrating, the sum of the amplitudes is always zero and there will be no net motion of the embedding system. If one were to change the driving force while the array is in this state, it will have the same response as if it were starting from rest.
B. Analysis of Multiple LRAs
In the following sections we will use LRAs to give example control effects for each of the six dimensions of SAVANT. Since arrays of LRAs are governed by one differential equation, the analysis of multiple LRAs is computationally no different than that of a single LRA. Physically though, there are advantages. If a single LRA can be driven with a maximum driving amplitude F, then the n-LRAs system is effectively a single LRA with a maximum driving amplitude of n×F. The addition of maximum driving amplitudes forms the basis of the performance, bandwidth and magnitude modes.
1. Magnitude Mode
A straightforward consequence of having multiple LRAs in a synchronous topology is that their response amplitudes (and therefore their momentum transfers to the embedding system) simply add together. In the case of two identical, parallel LRAs driven identically, Eq. 108 yields
which is the equation of a single LRA with a maximum driving amplitude of 2 F. Physically this means that if there is a single LRA that can produce a maximum acceleration of 2 g, then two parallel LRAs will produce a maximum acceleration of 4 g; three LRAs could produce 6 g, and so on. This is due to the fact that LRAs are linear systems, as shown in the previous section. This is not the case for rotating actuators such as ERMs, though the methods of SAVANT are still generically applicable to them. The use of multiple actuators to produce vibrational magnitudes greater than the capacity of a single component actuator is denoted herein as a SAVANT running in magnitude mode.
2. Reliability Mode
Having multiple LRAs is in the system allows the designer to build in redundant components. This could be particularly useful especially for medical, scientific or military applications or in situations where the embedding device is habitually used in a rugged environment. When a device contains a group of identical actuators designed for the sole purpose of having built-in redundancy to safeguard against the failure of component actuators, this group of actuators is described as a SAVANT running in reliability mode.
3. Performance Mode
Actuators like LRAs are attractive because they are relatively low-cost, their design and control characteristics are well-understood and because their manufacturing infrastructure is already well-developed. Current trends disfavor the use of these actuators though because of their relatively long response times and narrow bandwidths compared to more exotic actuators-such as piezo-based solutions. By briefly leveraging the increased maximum driving amplitude afforded by an array of LRAs, one can bring the total response time down to the same order of magnitude as the piezo actuators. In the language of the architecture laid out in this work, the use of multiple actuators to effectively emulate a single, high-performance actuator will be referred to as a SAVANT running in performance mode.
To see how a SAVANT in performance mode compares with individual LRAs, the spring characteristics of a single LRA were modeled from data provided by Texas Instruments, Inc. We call this model “MOD1.” The data was taken from an AAC ELV1411A LRA from AAC Technologies Holdings Inc. which has a rated resonant frequency of 150 Hz and is shown in
As shown in this figure, the relative heights and positions of the peaks are determined by the resonant frequency, the driving frequency and the damping ratio. The overall scale for the y-axis is determined by the forcing amplitude and the mass. One can fit the parameters of the spring equation, Eq. 101, by assuming the driving function is at the same frequency as the resonant frequency; i.e., ω=ω0.
Since we are only interested in relative response times, the resulting motion may be rescaled by the steady-state maximum amplitude given by Eq. 102. This allows one to easily see the fraction of the steady-state maximum amplitude as a function of time.
The damping ratio was derived by fitting a damped, driven harmonic oscillator with resonant frequency of 150 Hz (driven at the resonance frequency) to the experimental output in
Solving Eq. 101 using the constants for the AAC ELV1411A 150 Hz LRA will give the response of the LRA as a function of time. In
Now consider the effect of two LRAs working together. The most basic control scheme that can be applied is one where at t=0 both LRAs are driven with their maximum forcing amplitudes for some short time τ. Then at t=τ the forcing amplitudes are reduced for each LRA to half the maximum. By running two parallel LRAs together at half their maximum amplitude the resultant steady-state amplitude will equal that of a single LRA driven at the maximum amplitude. This idea trivially generalizes to n LRAs: we initially drive all LRAs at their maximum forcing amplitudes and then after some time the forcing amplitudes are reduced to 1/n; such that the sum of the forcing amplitudes is equal to the maximum forcing amplitude of a single LRA. It is essential that each component is still driven at 1/n, rather than, e.g., driving one at maximum and keeping the others at rest. The reason for this is that undriven LRAs parallel to the driving force will begin to oscillate and act as dampers on the system.
In
For the two-LRA system, the response times are: 1.16 ms, 2.35 ms and 6.02 ms for 10%, 50% and 90% respectively. One can see the response times are significantly faster, especially the time to reach 90% max amplitude, which is almost 70% faster than the single LRA. Note that the 2-LRA 90% time is roughly the same as the 1-LRA 50% time, as expected. also it is noted that with two LRAs, the system has already reached its maximum amplitude in the second half-cycle.
By adding a third LRA to the system one can achieve even faster response times. In
Response times for 1-LRA, 2-LRA and 3-LRA systems based on our LRA model, MOD1.
4. Bandwidth Mode
Performance mode leverages multiple actuators to emulate a single actuator with an improved response time. The same emulated increase can also be seen in bandwidth. Amplitude response for a typical LRA drops off exponentially as the driving frequency differs from the resonant frequency. The response amplitudes are additive though; meaning that at any given frequency, the maximum amplitude for an n-LRA system is n times the maximum amplitude of the 1-LRA system. We denote systems of multiple, synchronized actuators controlled in a manner as to emulate a single high-bandwidth actuator as a SAVANT running in bandwidth mode.
In the specific case of the our first LRA model, MOD1, when the driving frequency is less than half of the resonant frequency, the steady-state maximum amplitude drops to roughly ¼ of the maximum resonance amplitude. Thus, with four parallel LRAs one can achieve the steady state maximum amplitude even when the driving force frequency differs greatly from the resonant frequency. In
For the system of four 150 Hz LRAs using our LRA model, MOD1, the maximum amplitude while being driven at 1.5 Hz is still 6% higher than a single LRA being driven at its resonant frequency. The response of the 4-LRA system when driven at 1 Hz is almost 90% of the single-LRA amplitude at resonance.
Thus, rather than continually developing more and more exotic actuator solutions, one can use the SAVANT architecture to emulate an LRA with an arbitrarily large bandwidth and force output and/or arbitrarily short response time by adding together an arbitrary number of LRAs.
5. Spatial Mode
So far we have only considered parallel configurations of LRAs. But by orienting groups of LRAs along different axes and synchronizing their control schemes, we can also produce spatial vibrational effects. Examples of such effects are linear vibrations along any line within the space spanned by the vibration axes and circular or elliptical vibrations in any plane within the vibration-axes space. When the system of LRAs is working to produce a spatial vibrational effect, we say that it is running in spatial mode.
Start by considering the action of a single LRA. An LRA is effectively a spring whose mechanical vibrations are oriented along an axis. When the LRA is embedding inside a larger system, it tends to produce vibrations of that embedding system along the axis of orientation. Now add in another LRA: one whose axis of mechanical vibration is oriented perpendicular to the first LRA. Since any two non-collinear lines span the plane, it is not necessary for the two LRAs to be completely orthogonal, only that they not be completely parallel. We choose orthogonal examples for simplicity but more complicated control schemes for non-orthogonal actuators can be devised using the methods of linear algebra.
Each LRA will be vibrating along its own axis, but will each be applying a force to the embedding system. Since the forces they're applying are vectors, we need to take the vector sum to find the resultant force; and therefore the resultant motion of the embedding system. If these two identical, perpendicular LRAs are being driven by identical forcing functions, then the resulting motion of the embedding object will be sinusoidal in the plane spanned by the two axes of orientation. The motion of the embedding object will have an angular separation of 45° from either axis, effectively bisecting the vibrational axes (see
The angle of the resulting motion can be changed by changing the relative amplitudes of the forcing functions. If we characterize the resulting motion as the angle it makes with the horizontal axis, then any arbitrary linear motion can be achieved with forcing amplitudes proportional to {cos(θ), sin(θ)}, where the first is the forcing amplitude of the horizontal actuator and the second is the forcing amplitude for the vertical actuator. For the example above, we wanted an angle of 45°,
which means that we need to drive the actuators with the same forcing amplitudes. If instead we wanted to make an angle of 135°, i.e. the mirror-flip of the 45°, example, we would drive them with amplitudes proportional to
This effectively means we would drive them out of phase by 180°.
The direction of the linear motion can even be made to vary in time. In this case, the forcing amplitudes become proportional to {cos(θ(t)), sin(θ(t))}; where now the angle θ is taken to be a function of time.
In
θ(t)=½(cos(t/250)+1)
Instead of forcing the two orthogonal LRAs with the same phase but different amplitudes, we can also produce spatial vibrational effects by forcing them with the same amplitude but different phases. In the case above, forcing them with the same amplitude but relative phases of 180° again produced a linear vibration. Instead if we forced them with the same amplitude but relative phases of 90° we can produce circular vibrations, as shown in
When the amplitudes of the two vibrational directions are different but they are still forced relatively out-of-phase by 90°, the resulting motion is elliptical, like that shown in
The linear and elliptical vibration effects described above are created with proximal SAVANTs: groups of actuators (also known as SAVANT nodes) that are designed to have or appear to have point-like origination. Alternatively, one can create distal SAVANTs; which are which are groups of actuators that are separated physically but still physically attached together so as to create effects originating from multiple points or even extended geometries.
For an example configuration of distal SAVANTs running in spatial mode, consider a bar-like object with uniform mass distribution and two SAVANTs, one placed at either end. Each of the SAVANTs are oriented parallel to each other but perpendicular to the axis-of-symmetry of the object. If the SAVANTs are forced with the same amplitude but out-of-phase by 180°, they will produce a torque on the object, creating a rotational vibrational effect. In principle any arrangements of non-collinear (non-coplanar) LRA orientations will span 2-space (3-space), but maximal orientations will provide the easiest orientations. For proximal systems these will be orthogonal orientations; distal systems are often best implemented by orthogonal, triangular and tetrahedral configurations. Orientations along the edges of higher-vertex Platonic solids (e.g. a cube, an octahedron, etc.) could also produce robust haptic possibilities.
Lissajous and Geometric Transformations
The above examples of the line, circle and ellipse vibration effects are members of the set of Lissajous curves (see
These control effects may have parameters which control the geometric transformations, for example: rotation, scaling and reflection. The parameters may be constant or vary during the effect. The parameters may correspond to real-world events, such as having a consumer electronic device containing a SAVANT, such as a remote control, generate a circular vibration that scales in magnitude based on its proximity to a fixed point in space. Alternatively, a parameter may vary with the distance to a real moving target, or a virtual moving target may only exist as a computer-generated object that is rendered haptically, and which may displayed optionally simultaneously in other sensory modalities for example vision or audition.
In many instances of designing real-world devices, the designer may be required to fit the physical components of a SAVANT into a form factor that does not allow optimum orientations. However, as long as the displacement directions (or axes of rotation for ERM-type SAVANTs) are not collinear then one can still create control effects that span the plane by decomposing the motion vectors into orthogonal components using the methods of linear algebra. An example of this might be a hand-held controller (such as the Xbox 360 Wireless Controller from Microsoft Corporation) that includes two non-collinear ERMs whose design placement maximizes the user's proximity to the actuators. In this case the axes of rotation of the ERMs are not orthogonal nor are they collinear. Thus to create synchronized control effects for these two ERMs one must first decompose the relevant vectors into orthogonal components and then refine the orthogonal actuator control schemes accordingly.
6. Temporal Mode
All of the SAVANT systems explored thus far have been homogeneous systems. We can also consider the possibilities offered by heterogeneous SAVANTs. For example, consider a system of two parallel LRAs: one with a resonant frequency of 175 Hz and one with a resonant frequency of 180 Hz. By driving them separately at their resonant frequencies, the resulting steady state motion will have a beat pattern, as shown in
Generically the superposition of two oscillators oscillating at two different frequencies will result in a beat pattern. If the two frequencies are integer multiples of one another then the oscillators can be considered as part of a Fourier series. Fourier synthesis of multiple actuators driven at various harmonics of a given fundamental enables a device to approximate any (finite and bounded) vibrational output via Fourier decomposition. For example,
Prior to the introduction of the General Synchronized Vibration approach as described above and the SAVANT architecture, as described here, the capability to generate haptic vibration waveforms with many harmonics has been extremely limited due to the cost and availability of high bandwidth actuators such as Electro-active Polymers. But by creating synchronized systems of multiple lower-cost vibration actuators, one can leverage the increased bandwidth (see Section 3.2.4) to approximate arbitrary vibrational output by: computing the Fourier series of the function matching the desired output; truncating the series at the desired approximation; and then matching each term in the approximation to a SAVANT.
In the example of the Sawtooth wave above, instead of having five actuators—each with different resonant frequencies-one could instead have five SAVANTs. Each SAVANT would correspond to a term in the Fourier series approximation and each would be designed to provide the appropriate amplitude at the corresponding driving frequency. For example, the first term in the series is
where t is measured in milliseconds and the amplitude of 2 means twice the steady state maximum amplitude of the single 150 Hz LRA. Rather than building an LRA specifically designed to give the appropriate amplitude when driven at the frequency, a SAVANT of eight 150 HZ LRAs could provide the necessary output. The eight LRAs would effectively be a SAVANT running in magnitude and bandwidth modes. The remaining terms in the series approximation would each be created by a SAVANT in the same fashion.
The bandwidth gains from just one extra parallel LRA are significant compared to the single LRA. In
In Section II above, we developed some of the individual advantages multiple actuator systems have over single actuators. We now describe how those advantages can be made to work together and lay the framework for how to create a SAVANT system that will produce any desired vibrational output. Any possible vibrational effect can be decomposed into the 6-dimensional control space of the SAVANT architecture. Vibrational effects are only limited by the number and relative orientations of actuators in the SAVANT. The relative orientations of the actuators in a SAVANT will dictate the spatial and temporal characteristics while the number of actuators oriented together in a given direction will determine the performance, bandwidth, magnitude and reliability characteristics.
We define a “control effect” as a set of predetermined sequences of control signals for each actuator in the array, such as the example effects in Sections II(B)(1)-(6) above. They can be triggered by a user interface with the device or by internal triggers, such as information from on-board sensors. Running a SAVANT in a single mode constitutes a control effect which makes use of a single dimension of the 6-dimensional control space. It is easy to construct control effects which simultaneously make use of multiple dimensions of the control space. We refer to these as multi-dimensional control effects.
h-Pulse
Control effects leverage the power of multiple actuators to produce desired mechanical responses without the limitations inherent to single actuators. Let us look at an example for the familiar 3-LRA case:
When the optimal response time control sequence outlined in Section II(B)(3) is used in conjunction with an optimal braking strategy, the resultant waveform is a sequence of an integer number of half-wavelengths. This entire control effect is referred to as an “h-pulse.” An h-pulse is defined such that the system starts from rest, vibrates at the maximum amplitude for some time (with no ramp-up time) and then immediately stops vibrating. In
Since the h-pulse control effect must go from maximum mechanical vibration to no vibration, it can have any duration that is an integer multiple of half-wavelengths. For a 150 Hz LRA, since there are two half-wavelengths per cycle, that means one can create h-pulses with durations n×3.33 ms, where n is any integer. This duration can be changed by using pairs of LRAs running in bandwidth mode and driving the SAVANTs at lower frequencies.
Amplitude Seeking
We can arbitrarily rescale an h-pulse by rescaling all of the forcing amplitudes in the control sequence by some scaling factor. This will allow us to have h-pulses of any arbitrary mechanical vibrational amplitude. For instance, in
We can use sequences of scaled h-pulses to create an amplitude seeking control scheme, as shown in
The negative amplitudes can be implemented with positive forcing amplitudes but changes in the forcing phase by 180°. The forcing functions are turned off at t25.5 ms.
It is possible to create amplitude seeking control sequences with even less time between pulses, but due to the overlap from previous pulses it requires a more detailed algorithm analysis.
Performance ⊗ Magnitude
A simple example of a multi-dimensional control effect is performance ⊗ magnitude (see the discussion below for an explanation of the tensor product notation). The purpose of performance mode is to have a faster response time than a single actuator; the purpose of magnitude mode is to have a stronger mechanical vibration than a single actuator. We can combine these modes when we want to mimic a single actuator that is both faster and stronger than any available component actuator. For the specific case of the 150 Hz LRA discussed above, it was found that the optimal response time required 3 LRAs. Let us then construct a system with 6 LRAs, all oriented along the same axis. We want to position the LRAs as tightly as possible so that the resulting effect will be as point-like as possible. To achieve the performance ⊗ magnitude control effect (assuming the LRAs are initially at rest):
1) Drive each LRA with a sinusoidal forcing function at the maximum amplitude. The phase won't affect the results much.
2) After some pre-determined optimal time τ, change the forcing amplitudes to ⅙ of the maximum amplitude. For the AAC ELV1411A 150 Hz LRA this optimal time is τ=2.57 ms.
3) After the desired vibration duration, stop forcing the LRAs. The vibration will damp out in the same time it would take a single LRA to damp out. Alternatively one could apply a braking method.
We note that the control schemes can generically be broken up into two phases: intervals where the SAVANT is outperforming a single component actuator and intervals where the SAVANT is emulating a single component actuator.
Performance ⊗ Magnitude Revisited
We can use performance mode to create extremely fast response and braking times and these allows us to create scaled h-pulses. We can concatenate sequences of these scaled h-pulses to create haptic gradients. These gradients can be scripted effects triggered by sensor information or controlled by a user interface such as a touchscreen. Relying on peoples' inherent ability to detect gradients, these systems could be used as input devices or as devices that give location feedback for the vision impaired. We can make the mechanical output of these gradients arbitrarily large by using multiple 3-LRA systems, effectively leveraging the magnitude mode.
The forcing functions are turned off at t257.53 ms.
Bandwidth ⊗ Performance ⊗ Magnitude
The widths of the single-peak h-pulses described in the Amplitude Seeking subsection were set by the driving frequency. Those h-pulses were created by a SAVANT composed of three parallel LRAs. By adding another set of three parallel LRAs we can increase the vibrational magnitude and bandwidth of the SAVANTs. This will allow the SAVANTs to be driven at lower frequencies while still maintaining on-resonance amplitudes. In
Even though the MOD1 LRAs in this group are being driven at ⅙thh of their resonance frequency, their total vibration amplitude is still greater than a single LRA based on our LRA model, MOD1, vibrating at resonance. Note that the total force output of this group of LRAs based on our LRA model, MOD1, is not comparable to that of a single model LRA vibrating at resonance because the force output scales with the square of the vibration frequency. This control scheme is an example of SAVANTs utilizing bandwidth, magnitude and performance modes simultaneously. From the example multi-dimensional control schemes above that, given enough actuators, it is possible to simultaneously control a SAVANT in any subset of the six modes of the SAVANT architecture.
As mentioned above, a SAVANT may incorporate a wide range of vibration actuators including a linear resonant actuator which has a moving mass that oscillates back and forth along a linear path. Other actuators that are useful in a SAVANT include the actuators where the mass is constrained to rotate about a particular vibration axis, following a circular or semi-circular path. These rotational actuators include Eccentric Rotating Mass actuators, Pivoting Mass actuators, and Rocking Mass Actuators as have been introduced earlier in this disclosure. While a single linear resonant actuator can impart a force on the mounting plate it is attached to, a single rotational actuator can impart a torque onto the mounting plate it is attached to. As explained previously in this disclosure, the torques generated by one or more rotating vibration actuators when added with torques generated by one or more counter-rotating vibrating actuators can sum to a net force upon a mounting plate, for example in cases when the axes of rotation of the rotational actuators are arranged collinearly.
Current controllers, such as Nintendo's Wii Remote Plus motion controller and Sony Computer Entertainment's PlayStation Move motion controller, could be augmented at little cost to include a SAVANT that provides additional haptic cues and vibrations. These could be in addition to or instead of the ERMs currently in the devices. Though the incremental cost of adding controllers is small, the potential revenue from the expanded possibility of titles could be very high. Moreover, as other companies move towards controller-less motion controlled gaming and computing, haptic feedback provides an advantage for hand-held controllers. At the same time, it is possible though to develop wearable haptic devices, such as wristbands or belts incorporating SAVANTs, which provide spatial and directional feedback. These devices could be in addition to or in lieu of a hand-held controller.
Other wearable applications include a SAVANT incorporated into a vibration device contained within a wristband, an armband or a leg band. Still other examples of wearable applications include a SAVANT incorporated into a vibration device contained within wearable accessories such as a pair of eyeglasses, a pair of headphones or a hearing aid. Still further applications could include incorporating a SAVANT into a vibration device that is used for providing haptic feedback in a handheld stylus drawing or writing or pointing tasks.
Furthermore, SAVANTs can be incorporated into personal pleasure devices to increase the range of haptic vibration sensations for a person's body, for usage of such haptic vibration devices either externally or internally in relation to a person's body, or both. A SAVANT may be used for other hand tools and devices that are commonly used in construction; for example screwdrivers, hand-drills; pliers; and wrenches.
Another application might be a SAVANT in a device that augments reality for a non-sensory impaired person, or alternatively in a device that substitutes vibratory feedback and sensations for sensory modalities for which a person may have a deficit such as vision or hearing.
SAVANTs may be used to telepresence activities, such that a parent who is located in one city is able to hold a SAVANT enabled device, such as a game controller, that produces vibrations that correspond and convey, for example, to the respiration of the parent's child located in another city, or the heartbeat of a parent conveyed to the parent's child to enable a parent-child connection. A vibration device incorporating a SAVANT may be used to help generate calming vibration patterns for a person having Autism Spectrum Disorder. SAVANTs may also be used to generate vibrations in children's toys, for example inside plush toys, such as a teddy bear.
The SAVANT architecture is intentionally designed as a scalable network topology such that a first vibration device with a first embedded SAVANT may physically and logically interface with a second vibration device with a second embedded SAVANT such that the vibration controllers of both vibration devices could share sensors, data and control to establish a larger SAVANT device. In this fashion, the SAVANTs embedded inside various devices may be considered as modular vibration units that can be attached together to form larger SAVANTs with different and often more robust capabilities.
A. Discussion of Optimal Control Methods
It is clear from
And after the switching time τ, the left-hand side of Eq. 111 is merely rescaled by a factor of 1/n.
(Note that for all of the analysis in Section 3.2.3, we've only considered sinusoidal forcing functions with the phase φ=0. This phase will give you the fastest 3-LRA response because it allows the system to reach the maximum amplitude in the first half-cycle. For a 2-LRA system though, driving functions with a phase φ=π/2 give a slightly faster 90% max amplitude response time of roughly 4.8 ms.)
It is well known from the theory of linear differential equations that a sinusoidally-driven, damped harmonic oscillator has a response function whose frequency and phase are determined solely by the oscillator characteristics and the frequency and phase of the driving function. Additional LRAs only change the amplitude of the driving function (Eq. 111) and we're only considering identically LRAs in this particular analysis. Therefore, it is impossible to change the position of the first peak by adding or removing LRAs from the system. Hence, since the 3-LRA system has its first peak at maximum amplitude, the control method we propose here is the optimal control method, within the subset of control methods where each LRA is driven by a sinusoidal function with frequency to =co.
This analysis assumes that the maximum allowable driving amplitude is the steady-state maximum amplitude. Many actuators can be “over-driven” though; such that they can be driven beyond their steady-state maximum amplitude for a brief period of time. If this is a possibility then the 3-LRA optimal control scheme is equivalent to a 2-LRA control scheme where they are initially driven at 1.5×steady-state maximum amplitude or a single LRA that is briefly driven at 3× steady-state maximum amplitude.
When a harmonic oscillator-type vibration actuator is driven by a constant sinusoidal external force there are two functions that characterize the response of the vibration actuator. The first is the amplitude response, defined as how the amplitude of the resulting motion increases or decreases with time in the presence of an external driving force. For the previously discussed LRA model, MOD1, the vibration actuator reaches 10%, 50% and 90% of its maximum amplitude in roughly 1.53 ms, 6.05 ms and 19.75 ms respectively. Alternatively one could say that these happen in the first, second and sixth half-wavelength. It is desirable to achieve a faster amplitude response.
The second important relationship is how the amplitude responds to the driving force frequency. This relationship is called the bandwidth of the vibration actuator. We shall denote this as the “frequency response”. Typically the amplitude responds maximally to the resonant frequency and the response diminishes as the driving force frequency diverges from the resonant frequency. Using the same 150 Hz LRA as mentioned above, the maximum amplitude response happens for a sinusoidal driving force with a frequency of 150 Hz, while a driving force with frequency 105 Hz only produces an amplitude of roughly half the maximum.
Each response function mentioned above is the result of inherent physical limitations associated with harmonic oscillators. These natural limitations of the vibration actuators can be mitigated by employing multiple vibration actuators in parallel. Without loss of generality we shall consider only identical vibration actuators though all that is discussed applies to a heterogeneous population of vibration actuators as well.
For example, when driven at resonance our model of an LRA, MOD1, reaches about 33% of its maximum amplitude in the first quarter-wavelength. Leveraging this fact, one can drive of our MOD1 model LRAs together at resonance and after one quarter-wavelength the summed response amplitude of the three LRAs will roughly be the same the maximum amplitude of any single MOD1 model LRA. Thus we say that these three LRAs can emulate a single LRA that has the maximum amplitude response in minimal time (that is to say, a quarter-wavelength, since for a harmonic oscillator starting from rest and driven by a sinusoidal force, the first quarter-wavelength corresponds to the first inflection point and therefore the first extremum of the motion).
The same approach can be applied to improving the frequency responses to overcome bandwidth limitations of any individual vibration actuator. Since a single MOD1 LRA responds to a 105 Hz driving force with roughly half its maximum possible amplitude, by driving two MOD1 LRAs together one can emulate the single LRA on-resonance amplitude even when driven at 105 Hz.
When one employs a collection of vibration actuators together to emulate a virtual vibration actuator possessing amplitude and/or frequency responses superior to any component vibration actuator in the collection, we denote this as running a SAVANT in performance and/or bandwidth mode respectively. A wide gamut of vibration output patterns can be built from amalgamations and concatenations of performance and bandwidth modes. These output patterns include, but are not limited to: immediate cessation of vibrations; discrete gradients of constant amplitude; and single, unidirectional h-pulses. Various scenarios and examples of control strategies are discussed below.
1) Combining multiple vibration actuators to emulate a vibration actuator with an amplitude response faster than any component vibration actuator. When the virtual vibration actuator goes from zero amplitude to its maximum amplitude within one quarter-wavelength. We denote this vibrational output as optimal amplitude response and the corresponding control strategy as the SAVANT OAR Control Strategy. When the virtual vibration actuator goes from its maximum amplitude to zero amplitude within one quarter-wavelength. We denote this vibrational output as optimal braking and the corresponding control strategy as the SAVANT OB Control Strategy.
2) Combining multiple vibration actuators to emulate a vibration actuator with a frequency response greater than any component vibration actuator, for any given sinusoidal driving force frequency.
3) Combining multiple vibration actuators to emulate a virtual vibration actuator that undergoes optimal amplitude response immediately followed by optimal damping. This effectively mimics a single vibration actuator that exhibits one half-wavelength of sinusoidal motion. We denote this vibrational output as an h-pulse and the corresponding control strategy as the SAVANT HP Control Strategy.
4) Combining multiple vibration actuators to emulate a virtual vibration actuator that exhibits successive h-pulses of arbitrary amplitudes. We denote this vibrational output as amplitude seeking and the corresponding control strategy as the SAVANT AS Control Strategy.
5) Combining multiple vibration actuators to emulate a virtual vibration actuator that undergoes optimal amplitude response followed by constant sinusoidal motion for N>1 half-wavelengths followed by optimal damping. This effectively mimics a single vibration actuator that exhibits N half-wavelength of sinusoidal motion with no periods of reduced amplitude at the onset or offset. We denote this vibrational output as an h-pulse and the corresponding control strategy as the SAVANT IMP Control Strategy.
6) Combining multiple vibration actuators to emulate a virtual vibration actuator that generates a sequence of h-pulses such that successive h-pulses differ in amplitude. The changes in amplitude may or may not be associated with information external to the vibration actuators, such as dynamic position or orientation information. We denote this vibrational output as a vibrational gradient and the corresponding control strategy as the SAVANT VG Control Strategy.
7) Combining multiple vibration actuators to emulate a virtual vibration actuator that exhibits a half-wavelength oscillation of arbitrary width. We denote this vibrational output as an elongated h-pulse and the corresponding control strategy as the SAVANT EHP Control Strategy.
8) Combining multiple vibration actuators to emulate a virtual vibration actuator that exhibits a superposition or sequential concatenation of any one or more of the above mentioned control sequences. This would include for example a control sequence consisting of a sequence of h-pulses with monotonically increasing amplitudes followed by an h-pulse of a given amplitude and duration followed by a sequence of h-pulses with monotonically decreasing amplitudes. This vibrational output is a template for haptically emulating the tactile feedback of a mechanical button press.
In the above analysis only a fitted model from data of the AAC ELV1411A 150 Hz LRA has been considered. There are many types of LRAs on the market today though, so it is instructive to test the robustness of the SAVANT architecture for different actuators. One can take same data from
Response times for 1-LRA, 2-LRA and 3-LRA systems based on fitted model of a 175 Hz LRA.
For a given control effect, it is possible to predetermine the optimal braking strategy such that the effect can be halted as quickly as possible. This will usually involve using a forcing (braking) function that is 180° out-of-phase with respect to the initial forcing function. For the familiar case of the our model LRA, MOD1, the optimal braking method to go from maximum mechanical vibration to effectively zero mechanical vibration is shown in
An example process according to the above is presented by the following steps
Step 1) Select a desired output waveform.
Step 2) Define a collection of harmonic oscillators to emulate the desired waveform.
Step 3) Set up the equation of motion for the collection of harmonic oscillators, with each driven by its own input function. For any set of identical oscillators this reduces to a single equation driven by the sum of the relevant component input functions. Each discontinuous change in the desired output waveform will generically correspond to a discontinuous change in the input functions. For harmonic oscillators with resonant frequency, f0, the times at which these changes in the input function should happen is generically of the order before each discontinuity.
Step 4) Solve the equation of motion with a defined set of initial conditions. For a collection of n oscillators trying to emulate a single oscillator with maximum amplitude A, typical initial conditions for various desired effects are: +m A for immediate maximum amplitude; −m A for immediate minimum amplitude (stopping or braking); +A for steady state A; 0 for no amplitude. The necessary number of oscillators needed in order to immediately reach the emulated maximum amplitude within half a wavelength is defined by the characteristic amplitude response function for the oscillator. For our model LRA, MOD1, this number is 3 because in half of a wavelength that particular LRA model has reached about 33% of its maximum amplitude.
Step 5) Slowly vary the amplitudes and/or discontinuity times in the input function until the solution matches the desired output waveform to a sufficient degree of accuracy. Computational tools such as Java applets or Mathematica DynamicModules from Wolfram Research can facilitate this process by enabling smooth manipulation of the input function parameters, as shown in
The “circle times” symbol used in Section 4, ⊗, is a symbol used to indicate the tensor product of vector spaces. We are using this notation in a similar fashion to how it is used in quantum mechanics. In quantum mechanics the tensor product is used to describe the resulting multi-particle states available to two or more interacting or entangled particles. If one particle is in state a and another is in state b, the two-particle state would be labeled by a ⊗ b. It represents all possible multi-particle states available given the two particles that make up the state. In the case of SAVANT, each SAVANT is like a quantum particle with available states and the tensor product of those SAVANTs defines the vector space of control effects available to the system.
For example, consider a collection of six parallel LRAs. We can choose to group these LRAs into two groups of three. Each group of three will be referred to as a SAVANT. We can individually (and independently) run each SAVANT in performance mode to emulate a single LRA with enhanced response time. If we choose to synchronize the control of each SAVANT though, such that they are both driven in performance mode at the same time and with the same phase, we would effectively be running the two SAVANTs in magnitude mode. To denote the fact that the individual LRAs in simultaneously in both the performance “state” and the magnitude “state”, we would say that they are being driven in performance ⊗ magnitude.
The notation is used for convenience and is not intended to be completely analogous to its usage in tensor algebra.
III. Incorporating a SAVANT into a Module
An important means to advance SAVANT technology into systems designed for a variety of applications, especially haptic applications, is to encapsulate and hide the complexity of one or more SAVANT nodes by placing technology inside a module that provides three defined interfaces: 1) a physical interface for rigidly attaching or docking the SAVANT integrated module to other SAVANT integrated modules or other objects; 2) a power interface for powering the SAVANT integrated module; and 3) a communication interface to allow external devices and services such as computers, external timing sources or services, other SAVANT integrated modules, and sensors to interface with the SAVANT integrated module. Within the SAVANT integrated module, a variety of necessary components are integrated together to achieve the functionality needed by a product designer, while hiding the complexity of the implementation from the product designer. Furthermore, the three interfaces for a given SAVANT integrated module can be defined and published independently of the implementation of the functionality of the module— thus allowing the products and the implementation of the functionality of the modules to coevolve via standardized interfaces. Moreover, the defined interfaces allow multiple manufacturers to develop their own implementations of given SAVANT integrated modules, thus permitting competition in the marketplace. These combined advantages should enable an optimized SAVANT integrated module to be manufactured at a low cost when produced in large scale.
The technology integrated into a SAVANT integrated module may include: vibration actuators which can be precisely attached and aligned to the module housing; a microcontroller or other microprocessor, DSP, FPGA, etc.; sensors needed for closed loop control of actuators and the associated sensor conditioning electronics; power electronics including H-bridges or their equivalents for allowing control of the vibration actuators. Additional components that may be optionally included and integrated into a SAVANT integrated module to provide even more functionality may include wireless communication such as a ZigBee low-power radio and energy storage such as a rechargeable battery, capacitor or supercapacitor.
It is useful to motivate and illustrate the physical interface through the example of LEGO® bricks. LEGO building blocks have a well-defined physical interface, namely the precise size of the brick studs and their corresponding holes; the arrangements and precise spacing of the studs and the holes; and the high manufacturing precision such that the manufacturing tolerances are measured in microns. Thus a LEGO enthusiast is able to construct his or her LEGO visions without any tools other than his or her hands and achieve a result having exacting precision, and furthermore LEGO bricks from decades ago are still able to physically interface with LEGO bricks of today.
Since the SAVANT architecture encompasses an array of vibration actuators, it is desirable to have a similar physical interface that will provide high precision alignment of the actuators (and their associated moving masses) inside the SAVANT integrated modules as well as a physical interface that will allow precise attachment of SAVANT integrated modules to a housing, other SAVANT integrated modules or various other attachment objectives. The physical interface can enable attachment in multiple orientations and translations.
The power interface provides external power for the internal components of the SAVANT integrated module—and in the case of a SAVANT integrated module that is designed to not only transduce electrical power to mechanical vibration, but also transduce mechanical vibration into electrical power it may also supply power externally while acting as a generator or when providing power from energy storage within the SAVANT integrated module that has been charged via harvesting vibrational energy. The power interface definition includes a physical connector as well as power specifications.
The communication interface allows the SAVANT integrated module to communicate with an external host computer, the cloud, the internet, various services such as a time reference service, other SAVANT integrated modules, a variety of sensors and human interface devices, etc. The communication interface includes the definition of an interface connector; signal characteristics and specifications, as well as communication protocols and specific calls that may be made. Another key capability of the communication interface is to allow an external timing source or time reference that may be an absolute time or a relative time. One SAVANT integrated module may also act as a timing source or time reference to other SAVANT integrated modules. The precise synchronization of vibrations of a SAVANT integrated module with other modules and other temporal events may be an essential capability.
Since SAVANT integrated modules may be used for critical applications such as alerting mechanisms worn on a person's body or perhaps even implanted inside a person's body, the identification and authentication of external computers, external sensors, timing sources or other SAVANT integrated modules may be essential to avoid malware and malicious access to a SAVANT integrated module. Furthermore, each SAVANT integrated module can have a globally unique identifier such as a serial number for addressability. SAVANT integrated modules can have renewable security so in the event that security on the device has been compromised the security can be renewed, or alternatively or additionally the security may be periodically or even aperiodically renewed. Communication with the SAVANT integrated module may be encrypted and messages may be digitally signed to ensure system security.
Although SAVANT integrated modules may be built at a variety of dimensional scales for different applications, we will now introduce various examples and embodiments at the haptic scale for this inventive disclosure.
Contemporary game controllers often incorporate two ERMs, one with a large eccentric rotating mass, the other with a small rotating mass, to generate a large variety of vibration or “rumble” effects that enhance a player's experience. The rumble motors provide vibrations ranging from around 15 Hz to 45 Hz.
It is desirable to significantly increase the gamut of vibrational output, while simultaneously ensuring that legacy vibration effects can be emulated, new vibration effects can be synthesized, and directional haptic cues may be produced.
One example embodiment for achieving these goals is to replace a single ERM with a SAVANT node that includes two interleaved and synchronized ERMs of approximately half-size and not only emulate both the large ERM and the small ERM, but perform many other haptic effects, including haptic cues for direction. With suitable engineering and sufficient production volume it is feasible to have the half-sized interleaved pair of ERMs be around the same size and weight as a single ERM, and also have similar power consumption when emulating a single ERM.
Our general concept here is: “Divide and Sync”; that is to say, divide a motor into two approximately half-sized motors; divide an eccentric rotating mass into two interleaved approximately half-sized eccentric rotating masses; and then use closed loop control to synchronize the motions of the two eccentric rotating masses.
Continuing on with the half-sized interleaved pair of ERMs, we can encapsulate the SAVANT and a controller, position sensors, sensor conditioning electronics, H-bridges, etc. into a small module about the size of a conventionally sized game controller ERM. Typically pulse-width modulation is used to convey a motor speed to each game controller ERM, for example with digital values ranging from 0-255. It is possible for the module to accept a PWM input, integrate that to a voltage level, and map that to the correct frequency and magnitude of vibration. An additional input to the module can determine whether it should emulate, for example, either a small or large eccentric rotating mass.
Some people who play videogames play with the vibration completely off since they believe that the vibration interferes with their ability to aim and distract their attention. With conventional ERMs the frequency and the vibration magnitude are locked together, and thus a gamer cannot reduce the vibration amplitude level without correspondingly reducing the frequencies of the haptic effects. With a half-sized pair of interleaved rotating masses it is possible to have a global vibration amplitude level parameter set by the user in the game options menu so that a gamer may increase or decrease the amplitude of the haptic vibration effects without altering the frequency characteristics of those effects.
Since our perceptual system has a nonlinear response to stimuli, including haptic stimuli, it is further possible to have the global amplitude parameter input to a SAVANT integrated module be mapped nonlinearly to control the magnitude of vibration to appear natural.
The half-sized interleaved pair of ERMs can be incorporated into a SAVANT integrated module for internal integration into a game controller or external integration via an expansion port.
The divide and sync module could also be designed into the game controller itself. One example embodiment is shown in a few views in
Another SAVANT integrated module for rumble applications is a single, full-sized ERM having either a large or small mass, which is capable of synchronizing with other SAVANT vibration actuators. Although a single ERM module does not have the capabilities of the above described “Divide and Sync” SAVANT integrated modules, it is less expensive and may be a way for game console manufacturers to at least begin to make SAVANT capable game controllers. These SAVANT integrated modules could emulate PWM speed control, but also have the capability for position control, thus allowing the module to be part of a larger SAVANT. The ERM can be incorporated into a SAVANT integrated module for internal integration into a game controller or external integration via an expansion port.
A final example of a SAVANT integrated module for game controllers may be a rotationally symmetric mass designed for high-speed rotational inertia applications. High-speed rotational inertia might only require speed control rather than position control. The rotational inertia might be switched on inside a game controller, for example, when emulating a Star Wars type Light Saber. Another application might be not for games but rather for stabilization of a handheld apparatus such as a handheld camera or game console. ERMs are exceptional at producing high vibration forces out with a relatively small power input. This balanced rotating mass designed for high rotational inertia can be incorporated into a SAVANT integrated module for internal integration into a game controller or external integration via an expansion port.
Since consumers often prefer thin form factors for smartphones, tablets and other mobile, portable devices it is desirable to have thin components, including vibration actuators. One means for doing this is to take the eccentric rotating mass of an ERM vibration actuator and divide it in half, and place half on one side of the motor shaft and bearing; and half on the other side of the motor shaft and bearing. This has the advantage of reducing the cantilever effect upon the bearing though the equal distribution of the eccentric rotating mass, and also reduces the radius needed for the eccentric rotating masses. The ERMs in a smartphone typically rotate about up to 175 Hz which is much faster than the ERMs used for rumble effects in game controllers.
This is halfway there to our “Divide and Sync” strategy. By driving the split eccentric rotating masses by two half-sized motors it is possible to not only emulate a traditional mobile phone ERM, but also produce new haptic effects, and directional haptic cues, as will be later shown in this inventive disclosure. At this scale it may be unnecessary to interleave the eccentric rotating masses since the parasitic torque effect is likely to be very small. These can be incorporated into a SAVANT integrated module for internal integration into a smartphone or external integration via an expansion port.
As shown in
When the ERMs are in phase, the forces align and produce double the force of one ERM. When the ERMs are out of phase, the forces point in opposite directions, as shown in
As shown by
One solution, as shown in
Thus, it can be seen that co-rotating, co-axial ERMs can produce high fidelity vibration effects. Axial separation between the ERMs can diminish the quality of the vibration effects due to parasitic torque. By interleaving the ERMs, the parasitic torque can be eliminated, resulting in the highest quality effects.
One example of how interleaved ERMs could be produced in large volume is now addressed. Key features of the finished product include: interleaved eccentric masses; balanced as an assembly; and integrated position sensors. As will be explained, this process is scalable to very small ERMs that can be used in cellular phones and other portable mobile devices.
An initial step includes providing masses that can be forged, cast, machined, stamped or otherwise manufactured in a high volume, loose tolerance process. Suitable mass materials may include those used as a sleeve bearing, e.g., bronze. One example of inner and outer masses is shown in
In most of the ERM embodiments shown in this specification, the ERMs are directly driven and are coaxial to the driving motor. However the eccentric masses do not need to be driven this way in order to produce the correct vibration effects. There can be instead driven through a transmission such as gears, belts, joints, cables, or any other transmission capable of transferring rotational motion.
The main advantage of driving ERMs through a transmission is the ability to orient the motors in different ways to the masses, so that the package fits better into a given device. Some example embodiments are shown in
In addition to these example embodiments, there are many other possibilities for driving ERMs through a transmission. For example the transmission could be a cable drive, where the motors are positioned in convenient locations far away from the module. There could be more than two interleaved ERMs, with one or more driven through a transmission. As long as the ERMs themselves are positioned in the correct way, the motors can be placed wherever is most convenient and an appropriate transmission device can be selected in order to drive the ERMs with the motors.
Many types of equipment experiences problems with self-generated vibration. These vibrations can lead to wasted energy, fatigue, premature failure of components, audible noise, and other issues. In the case of sensor networks it can be very beneficial for the sensor fidelity to cancel vibrations that the sensor is experiencing, which could potentially improve many sensor characteristics and allow for deployment of sensors and sensor networks in more harsh or non-ideal environments than such sensors would normally tolerate or produce useful data.
Often times the self-generated vibrations are periodic, meaning that they occur at one or more specific frequencies. This is especially true for equipment with rotating parts, where vibration is caused by an imbalance in rotating components, and occurs at the frequency of rotation. In some cases the vibrations may be composed of multiple frequencies, but typically there will be a dominant resonance mode where much of the vibration energy exists.
In order to cancel out a vibration force, an equal and opposite force must be applied to the equipment to counteract the force causing the vibration. For periodic vibrations, particularly with rotating equipment, this force is sinusoidal in nature along a given axis.
One or more dual ERM modules are an ideal solution for canceling out periodic vibrations. A single module can produce a vibration force that rotates at a specific frequency and magnitude, which on its own could cancel out some types of periodic vibrations. Two modules paired together and counter-rotating with respect to each other can produce a directional vibration at a specific frequency and magnitude, which could prove even more useful for canceling out a vibration. Four modules together would provide two adjustable directional vibrations, which could be used to completely cancel out a specific frequency of vibration in some cases (e.g. in rotating machinery). Six modules together could provide three orthogonal directional vibrations, which could prove even more useful.
Modules could be attached in strategic locations on a piece of machinery to cancel out vibrations. The closer to the source of vibration, the easier it is to cancel it, however it may also be sufficient to cancel vibration in a particular location (such as the cab of a large machine where an operator may sit, or at the mounting point of a sensor in order to decouple it from the effects of that vibration).
Modules could contain their own accelerometers or other sensors, to automatically pick out resonant modes for cancellation. This would allow greater accuracy and speed, as well as dynamic adaptability than a sensor-less design, though it is possible to use the modules initially passively to measure the vibration frequencies in terms of their effects on the eccentric masses in the case where cost, complexity, or size is an issue.
Modules could communicate with each other to strategically cancel out many vibration frequencies with minimal effort. The modules, in the course of their measurements may determine that certain modules are most strategically placed for a particular vibration, using all the sensors together as a network. The effects of the vibration cancellation as it propagates through the system can also be measured by the remote sensors of other modules. The communication of multiple modules could also be used to cancel distributed or complex vibrations which one module would not be able to measure alone.
As previously shown, it is possible to generate beating patterns with vibrating actuators. For instance,
ERMs can also be used to produce beating patterns, although there are some practical differences when compared to LRAs. Any two ERMs co-rotating at different frequencies in the same device will produce a beating vibrational pattern. The direction of the beating force rotates in the same direction as the ERMs, and the frequency of the beating force is based on the speed difference between the ERMs. The amplitude and shape of the beating force is a function of the speeds of the ERMs and their eccentricities. In general, both the amplitude and frequency of the beating force can be varied.
Some example beating patterns for a pair of co-rotating ERMs with equal eccentricities are shown in
The beating patterns in
When there is a single ERM, one can only control the input force, which most directly determines the angular velocity. This angular velocity thus determines the force felt by the user. This means that one cannot for instance use a single ERM to create an arbitrarily large force at an arbitrarily small rotation frequency. When there are two ERMs, the force felt by the user depends on both angular velocities. This means that one can keep the force constant even while continuously varying the individual angular velocities. (See plots showing varying angular velocities/forces and the constant sum in the X-direction.)
When driven in a manner as to produce a constant angular velocity, an individual ERM produces a sinusoidal force in any given direction in its rotational plane with a frequency proportional to its angular velocity. When each ERM is driven in such a manner, but with different angular velocities, there is a resulting beat pattern in the force. This beat frequency is given by the difference of the angular velocities divided by 2*pi.
This beat pattern can be particularly useful in haptic devices because of the disparity between typical ERM driving frequencies and frequencies which humans are typically responsive to. People tend to only be able to discern individual pulses in waveforms with frequencies less than about 5 Hz. Since the force output of an ERM is proportional to the square of its rotation frequency, typical ERMs used in handheld devices cannot produce noticeable forces in the haptically relevant range.
When one has two ERMs, though, it is very easy to produce haptically relevant frequencies. By setting the difference between the two ERM frequencies to be less than 5 Hz, the envelope of the beat pattern will provide the illusion of a low frequency force. The ERMs can spin arbitrarily fast, creating arbitrarily high amplitudes, while still maintaining a constant beat frequency.
The resultant beat patterns can have many applications in everyday devices. Such beat patterns by a mini Gemini drive or other proximal SAVANT device may be used to generate clicks. A particularly salient application is that of haptic navigation. There are two output dimensions available to beating ERMs: their amplitude and their beat frequency. Haptic navigation devices could leverage either or both of these modalities for navigation. For instance, as a user approached a desired end point the ERMs could be driven in such a way as to maintain a constant amplitude but vary the beat frequency. Making it such that, for instance, the beat frequency increased as the user approached the desired end point and decreased as they moved away from it. The same could be true for a scenario where the ERMs are driven with a constant beat frequency but the overall amplitude changes as the distance to the target position varies. Finally, these modalities can be combined in many ways. One example would be to choose two orthogonal spatial directions and to have, e.g., the beat frequency vary as the user moved the device along one direction (e.g., parallel to the ground) and the amplitude vary as they moved along the orthogonal direction (e.g., perpendicular to the ground).
These vibration beat patterns may be simultaneously enhanced with relevant visual stimuli, relevant audio stimuli, or both. These types of devices could be used for indoor navigation, object location within a dense collection of objects, or navigation to another person or animal. There are also myriad applications for persons with sensory impairments, for instance a haptic feedback pointing device that used beat patterns to let the user know when they were close to an icon or target region. They could also be used to gently and humanely guide animals away from certain areas via vibration collars, particularly if there were certain frequencies that produced sharp responses in the given animal. This type of navigation could also be used as an active feedback mechanism in pedagogical settings, for instance to train people to drive certain vehicles. Beat patterns could also be useful in therapeutic devices such as massage chairs and personal massagers.
Beyond beat patterns it is possible use arbitrarily complicated input control functions to create complex output forces. These output force pattern need not be cyclic or repetitive. To create such force patterns we have created interactive software tools that allow one to vary the input control functions and see the resultant outcome. These tools allow for arbitrary input control patterns and are extensible to multiple dual-ERM SAVANT integrated modules. With a sufficiently high number of dual-ERM SAVANT integrated modules, any reasonably conceivable output force pattern is achievable.
When two ERMs have the same eccentricity and have concentric and coplanar rotating force vectors with equal magnitude that counter-rotate they produce a linear vibration along an axis in the plane. The direction of this axis depends on the initial phase of the two ERMs. A person may have difficulty recognizing the direction of the axis of vibration if the amplitudes are small or if the oscillation is fast. One way to make the direction axis more discernable is to create small perturbations in the motion. These perturbations can come in three forms: a fast perturbation in the phase relative to the oscillation along the axis; a slow perturbation in the phase relative to the oscillation along the axis; and an oscillation about the extremum of each oscillation. These perturbations are referred to herein as “vibrato effects”.
The axis of vibration can rotate at a slower rate than the vibration frequency and it is quite noticeable. For example, the ERMs can counter-rotate at 25 Hz, and the linear axis of vibration may be rotated for example at 0.5 Hz. However, the axis of vibration can also oscillate about a given angle in the plane, and thus create a vibrato effect, also making the axis of vibration noticeable. Vibrato is used with stringed instruments such as a cello when a performer is required to play a sustained note. The vibrato adds a brilliance to the auditory perception of the sustained note, otherwise, our sensory and perceptual systems are designed to adapt and filter out such constant stimuli.
This haptic vibrato effect modulates the axis of vibration in the plane; thus, this effect can have several parameters: the angle of the axis of vibration in the plane (because of symmetry that angle can range from 0 to 180 degrees); the amplitude of the oscillation of the haptic vibrato; the frequency of the oscillation of the haptic vibrato.
To understand how vibrato effects are constructed, we first consider the resultant forces from a stationary linear vibration:
FE1x=A1 cos(ω1t+Φ1+σ1)+A1 cos(−ω1t−Φ1+σ1)
FE1y=A1 sin(ω1tt+Φ1+σ1)+A1 sin(−ω1t−Φ1+σ1)
where A1 is the amplitude of the vibration along the axis, ω1 is the co-rotation angular velocity, and Φ1 and σ1 represent relative and absolute phases.
In order to produce the vibrato perturbations, a time-varying phase function is added. For simplicity we will consider sinusoidally-varying phases but they could in principle be any function of time. These phases will be represented as α*sin(Ω*t), where α is the amplitude of the variation and Ω is the angular frequency. With these additions, the resultant forces are:
FE1x=A1 cos(ω1t+Φ1+σ1+α*sin(Ω*t))+A1 cos(−ω1t−Φ1+σ1+α*sin(Ω*t))
FE1y=A1 sin(ω1tt+Φ1+σ1+α*sin(Ω*t))+A1 sin(−ω1t−Φ1+σ1+α*sin(Ω*t))
where α controls the angle range that the vibrato effect happens between (it equals half the total range). While in principle it can be arbitrarily large, practically it should probably be kept smaller than pi/2, because α=pi/2 means the vibrato would sweep through an angle of pi (180 degrees). For most applications the angular variations should be constrained to a few degrees around the oscillation axis. Beyond a few degrees it seems the effect loses meaning, though it may be useful for other haptic effects. Ω controls the frequency of the vibrato, such that Ω=2*pi would be a vibrato at 1 Hz.
Once a SAVANT integrated module is available, it may be controlled by an external computer or by attaching a human interface device such as a MIDI controller to produce a variety of effects. Additionally, a SAVANT integrated module may have a variety of functions that may be utilized by selecting the function and including various parameters. Moreover, a SAVANT integrated module may include a library of haptic effects.
It is easy to emulate a stereo balance control. For instance:
Amplitude of Module 1+Amplitude of Module 2=constant while Frequency of Module 1=Frequency of Module 2.
More generally, a function F(x) could be used, for example to have a nonlinear mapping of amplitude, such that:
F(Amplitude of Module 1)+F(Amplitude of Module 2)=constant while Frequency of Module 1=Frequency of Module 2.
This approach can be expanded from two Modules as described above to n Modules.
An interleaved ERM module is capable of controlled modulation of many types of effects. Examples include:
Varying the frequency of a beating effect, while keeping constant force amplitude
Varying the force amplitude of a beating effect, while keeping constant beat frequency
Varying both force amplitude and beat frequency simultaneously
Varying the amplitude of vibration while keeping frequency constant
Varying the speed of a rotating directional effect while keeping the force amplitude constant
Varying the direction of a directional effect with constant force amplitude
Sweeping a directional vibration back and forth at a varying rate
Any effect that can be modulated on single module can be used to differentially vary two or more modules. For example:
The above may be coupled with sensors that determine position and orientation so that the device can be used for navigation.
With SAVANT's ability to create arbitrary motion output in a device, it is possible to create pre-programmed control schemes for handheld and/or wearable devices that synchronize with multimedia events such as watching a movie, listening to music or playing a video game. We denote these control schemes as “vibration tracks” in analogy with audio and video tracks in film. These tracks can exists alongside multimedia signals as a separate signal layer or they can be embedded together into a single framework.
As a simple example, consider watching a movie on a video game console. The video game console can add value to the movie watching experience relative to watching it on a standard DVD or Blu-ray player by leveraging the motion output capabilities of the handheld controller. While watching the movie, the user could download a vibration track-either officially created be the movie producers or created by third-parties—that would produce haptic effects during the movie that were synchronized to the film. These effects could be, for example, rumbling during scenes in moving vehicles, sharp impulses when guns fire, or any other haptic effect synchronized to the film in a manner as to add entertainment value. As previously stated these vibration tracks could be created for synchronization with any multimedia event and intended for any hand-held or wearable device.
The dual ERM's capabilities regarding generation of arbitrary force amplitudes, frequencies, and directions, as well as the range of high fidelity sensors such as accelerometers and gyroscopes allow for not only measurement of the system coupled to the module (such as a hand holding a game controller), but also application of forces to that system. Most modern game controllers now have a variety of MEMS sensors integrated with sensor fusion algorithms which provide motion tracking feedback such as position, orientation, velocity, and acceleration. These signals can be used for the system identification procedure. With the combination of input and output to a system, the ERM module or module group can effectively ‘shake’ the system and measure the response. For an example of the type of input needed for this procedure, consider a ten second sine wave generated by the dual ERM which ranges from 1 Hz to 50 Hz at 2N peak-to-peak force, pausing at each frequency for brief intervals. The input frequencies are recorded, as well as the actual acceleration and velocity of the system. Then a model of that system can be fitted to that data which estimates many types of parameters. That model could be used to classify various system characteristics such as the size of hand holding the controller (in the case of a game controller), how tightly the hand is holding the controller, whether it is likely to be a child, adult, female, or male hand, as well as the type of grip, potentially even identify a particular individual. This model can easily be updated over time, and so could potentially be useful in the medical fields for rehabilitation and assessment.
In the case of other systems being coupled to the ERM, system identification could be used by the ERMs, especially in a network, to identify or classify the structure, changes in the structure over time, dynamic behaviors of the structure, orientation (in the case where there are no accelerometers or there is too much noise in the system for the accelerometers), or to determine other parameters.
When the motors in an individual SAVANT module have no energy applied, and when they are subject to vibrations, the resulting movement of the masses moves the motors, and thus generate electrical current. This current can be harvested and stored by a simple addition to the circuit (in some cases, motor driver chips have this functionality built-in already), extending the life of any battery the SAVANT system is powered by. The amount of energy generated by the modules relative to the amount required for operation depends on how much vibration the module is exposed to, the size of the masses, and the frequency contents of the vibrations.
Since SAVANT systems are designed to span N spatial dimensions, this in principle allows for energy harvesting from motion in N spatial dimensions. What this means is if the vibration is not just in, for example, the x direction, but also y and z, then an arbitrary strategically oriented group of modules could harvest that energy. This is a direct advantage over current energy harvesting technologies, which tend to be along a single axis or in one plane. Thus, if for example a phone had three orthogonal SAVANT nodes integrated then it could continuously regenerate its battery during transportation of the device in clothes or a bag.
IV. Position Measurement Using a Single Sensor
This portion of the disclosure describes multiple examples and embodiments relating to a novel rotational position sensing system, referred to herein as the “MOHAWK Sensor System,” and additionally its industrial applicability to eccentric rotating mass (ERM) vibration actuators.
There is an ever-increasing need for more accurate, more precise, more robust, and lower-cost measurement, especially for high volume production of components for consumer electronics. This ever-increasing need is especially true for rotational position measurement, though not limited to that case. More and more microprocessors and feedback control are being incorporated into everyday consumer as well as industrial devices. In order to control a system with feedback, at least some information must be measured and fed back into the system in order for an algorithm to compute a control action. This allows the device to interact with and respond to the world. While it is in theory possible to build a perfect understanding of the world, and thus use no sensor measurements (and thus utilize open loop control methods), this is impractical in reality.
For example, consider a modern touchscreen interface for a smart phone. If one had a perfect model of the universe and the particular human owner of the smart phone, the phone could know what a person would type in on a particular day at a particular millisecond, but clearly there are many aspects of the universe beyond our ability to model, and even if we could create such a model it would be too complicated to run on current processor architectures. The answer is to incorporate a touchscreen to provide feedback to a relatively simple algorithm that can map states into actions. Similarly here, we will map measured and differing states into a consistent measurement. That measurement can be used for feedback and other purposes.
While there exist a multitude of sensors available in great varieties, often these sensors fail to meet one or more of the above criteria necessary for inclusion in consumer products. Common low-cost sensors frequently used in high volume consumer electronics products include, for example, Hall effect sensors that sense magnetic fields and optoelectronic sensors such as an IR detector which is typically paired with an IR emitter. Clearly it is advantageous to use the least number of components to perform the position measurement function, so that it is cheaper to use one Hall effect sensor rather than two Hall effect sensors. The least number of dedicated sensors is one: Therefore, it is an objective to have a single sensor rotational position measurement solution.
For most conventional rotational position measurement system requirements, the system must be able to produce the position at any given time. However, for SAVANT (“Synchronized Array of Vibration Actuators in a Network Topology”) Integrated Modules, since there are often many times when the vibration actuators are not vibrating, and thus in a quiescent state, we can exploit that opportunity to produce this novel, single sensor concept presented herein this inventive disclosure, namely the MOHAWK Sensor System. The MOHAWK Sensor System includes a measurement target specially designed to affect a magnetic field or an electromagnetic light field, then calibrated during quiescent states, so that the MOHAWK Sensor System is calibrated when needed and when the opportunity presents itself, and furthermore methods are utilized to minimize vibrational output during the calibration phase.
The concept of a feature-based field is explained as follows. If we know the features of a particular field, generated by a field source, in which we place a sensor, then changes in those features will produce changes in the sensor's output which can be used to compute some state measurement (such as position of the sensor relative to the field at ‘zero’). Consider, for example, a permanent magnet that generates a magnetic field of known and predictable shape. If the orientation or distance of the magnet to a Hall effect sensor (which transduces a magnetic field into a voltage) is varied, the output voltage of the Hall effect sensor will vary correspondingly. Now if one included several magnets which are each oriented to generate opposing fields around a disk outward, the Hall Effect sensor will measure alternating positive and negative magnetic fields, and thus outputs something like a sine or square wave. Since the waves are of known shape, the angle of the rotating section of the sensing device can be calculated easily.
The type of sensor modality or the type of field can be mixed, so that the combination provides additional information. For example, consider an angular position sensor that employs a magnetic field that is generated and then measured as one modality. One of the surfaces that are part of the sensor can be reflective and shaped to vary distance from the sensor with rotation, thus the second modality of a mixed modality sensor can be an optical sensor which bounces an infrared light off one of the surfaces, then measures reflective intensity or timing.
Given the previous discussion, the MOHAWK Sensor System (See
Aspects 1 2 and 3 are part of the so-called ‘hardware layer’ as they are the main components of the hardware, while 4, 5, 6 and 7 may be implemented by one or more controllers having routines that run on the controller(s), and so are part of the ‘software layer.’
Field Source: Some field generating element examples are a magnetic field generated by a permanent magnet (though it does not need to be permanent), and an optical field, such as light from an infrared emitter (for example, the Kingbright APT2012F3C).
Sensor: A typical magnetic sensor that is low cost and accurate is a Hall effect sensor, such as the Honeywell SS49E, which outputs a voltage that is linearly proportional to a magnetic field intensity acting on the sensor in one or more particular axes (many sensors such as this type require no external circuitry and so further reduce costs and complexity). A typical infrared sensor is the Everlight PD15-21B/TR8 (again this outputs a voltage that is proportional to infrared light intensity striking the sensor).
Target: The target (see
Embedded System: There is a need for an embedded software layer in order for the sensor to be useful, since regular calibration is a potentially important behavior of the sensor system, and an estimate of the position and uncertainty of that estimate needs to be maintained. The basic components listed above are each responsible for different functions. The entire software layer is potentially multi-threaded in order to serve multiple sensors and vibration actuator modules. There are many variables stored in data, along with measurements used by the estimator. The states of the system can be accessed through the API (application programming interface), which will send the position to functions asking for the current information about position. This serves to protect internal variables from accidental modification. Finally, there are several routines which run algorithms related to estimating the current state using models of the system, as well as any available external sensor measurements and controlling the ERM using those state measurements.
The control commands may be passed down to a motor controller, or the motor controller may be simple motor driver circuitry. This depends on the particular application. Typically an estimator will incorporate some least squares calculation that balances between the current measurement and the current estimate using the uncertainty about the sensor measurement and model (for example, consider a Kalman filter). This can easily be integrated with a typical control structure such as a Linear Quadratic Gaussian (LQG) controller. Such a controller assumes a linear system model where the controller is required to optimize with a quadratic constraint (such as position error and control energy), assuming uncertainty that is Gaussian (random with mean zero and some variance). So a typical loop will have a high priority portion and a lower priority portion. During the high priority portion the measurement is taken, estimate and model updated and data stored, then new control command computed and executed. The lower priority portion or separate thread will process any commands and respond to requests for data.
The field can also be modulated to improve the signal-to-noise ratio. What this does is improve robustness when in a noisy, non-ideal environment (most applications are far from ideal and filled with noise). The strategy here is that the modulation (on-off cycling of the field) provides a lower boundary for the ‘off’ portion of the modulation. Therefore, the sensor can be constantly adjusting the expected range of intensities it should expect to measure.
The MOHAWK Sensor System can quite easily be added to one or more actuators in an ERM system to provide position feedback.
If an optical emitter-detector pair modality is used, the rotating masses will have possibly integrated into them the surface designed to vary a parameter measured by the detector, such as surface roughness, and thus specular reflectivity. The sensor is placed to reflect a beam off the surface onto the detector, and there needs to be a means of enclosing the detector and emitter area by some carefully shaped material to prevent ambient light from striking the detector and providing false signals. This can easily be achieved with a piece of plastic, for example, that simultaneously serves to mount both the emitter and detector relative to the reflecting target. Finally the voltage output from the detector is routed to an analog to digital converter built into the processor (or as part of external circuitry) to be measured and converted to a digital value between a minimum and maximum. This value is converted to an angle after a calibration procedure is performed to match angle with the values. This calibration can be once (factory-calibrated) or periodic to continue to account for variations in parameters of the system, and can be completely automated. The calibration may also be performed a periodically, for example, as part of an opportunistic algorithm that seeks to calibrate the system when it is known to be in a quiescent state.
Calibration is a key component to the sensor system. Most of the time an ERM actuator, especially ones used in Haptic or gaming type applications, is in a dormant state. During this time the system can calibrate the sensor, as long as that calibration does not interfere with normal functioning or be apparent to the user.
Calibration as a process includes rotating the sensor target and the system searching for the absolute position feature. Once that is detected, there are multiple methods of using the feature to determine the angular range of the sensor. One example is for the absolute monotonically changing target. In this case the calibration determines the range of voltages the sensor can generate, and then maps those voltages, from minimum to maximum, to a 0-360 degree range. In the case of a spatially modulated annulus or periphery target, the absolute feature is searched for, at which point position may be reset to zero or corrected.
In order to calibrate unobtrusively, the system rotates the masses slowly in general. However, in the case that the MOHAWK Sensor System is integrated into a SAVANT dual ERM system, the masses can be placed in a 180-degree out of phase orientation during calibration, which allows rapid calibrations with no vibration output.
The timing of the calibration can be determined by many methods. One straightforward approach is a simple timer interrupt on a microcontroller. A more complex approach can involve an intelligent algorithm that estimates uncertainty of the position measurement, then calibrates when the uncertainty is above a particular value. In most cases, calibration is given a lower priority than responding to control requests. There may be cases where it is more important to calibrate rather than respond, such as when the position estimate becomes corrupted or very poor.
Aside from the modulation strategy previously discussed, it may be necessary to add design elements to the sensor system that improve robustness to varying environments. In the case of an optical sensor system, the emitter and detector portion may need an umbrella type shape to mostly enclose the relevant area of the target from ambient light. Modulation may also help avoid the effects of ambient light sources. If a reflective method is used, care must be taken to use a material that does not easily corrode, or protect the material from corrosion, so that the surface properties change in a minimal way over time. If a printed coloring is used, the ink must not be of a type that fades easily. Optical surfaces must also be protected from dust.
In the case of a magnetic sensor technology, the sensor may need to be enclosed in a Faraday cage to prevent interference from ambient magnetic fields or fields generated by the nearby motors.
In all cases, care must be taken with thermal expansion of all components to avoid warping of the precision shapes, as the motors will have a large range of temperatures depending on usage. There are many well-known thermal design strategies in mechanical engineering that can account for thermal issues.
Consider
Now consider
Given that there are well-known models of magnetic and optical phenomena, the designer can use those physical models to design the shape of the target for a desired output. Additionally, these models can predict with high accuracy the signal that the sensor will measure. The model is based on the physics of a soft magnetic material placed inside a magnetic field. The equations can be solved numerically or in closed form to yield a prediction of the magnetic field at any point around the material. One advantage of this modeling approach is that an iterative design approach can be employed by which optimizations can be performed to reduce material costs while optimizing signal response to provide the best accuracy sensor for the lowest price, as far as shape and material parameters.
It is possible to perform some of the computation with analog circuits in order to allow less expensive processors to be employed in the design. There is a balance between complexity, cost, and processing in terms of how much of the circuit should be rendered in an analog form, and there are several approaches that can be used. For example, an indexed signal of pulses can be converted into a counted analog number with comparators and analog mathematical operations. The advantage of analog circuitry is that it avoids any need for a digital sampling rate, being a continuous implementation of operations such as addition, subtraction, multiplication, and division. However, with the falling prices of processing power there is a balance between adding many circuit elements with potentially adding a small processor dedicated to sensing alone.
The goal in this section is to provide rotational position sensing to a motor control algorithm. According to one aspect, the design should have a low part count, low processor overhead, and implemented with standard machine processes in the field. A design is presented that uses one Hall sensor, a small, low power magnet, and a specially shaped flywheel (steel, iron). In this disclosure, the term “flywheel” is used interchangeably with the term “target” to mean a rotating object that is able to affect the transmission of a field from a field source to a field detector, such that as the object rotates, variations in one or more aspects of the shape, size and material composition of the rotating object produce measurable changes in the field as detected by the field detector or sensor that can be used to determine the angular position of the object.
The Hall sensor needs to be a linear or ratiometric type. This example uses the Optek OHS3151U. There are many low cost Hall sensors, and they range between $1˜$2 at 1000 pcs. The magnet needs to be not very strong, so that it won't disturb the rotation of the flywheel. A good candidate would be made of ferrite, and have a small disk or bar shape (<0.25″ diameter, <0.25″ thick). This example uses a small piece of a larger ferrite disk magnet.
The flywheel can be made of low cost sheet steel, or iron. Iron may be softer and easier to stamp. The flywheel shape is optimized for a linear voltage output from the sensor. In this example, the diameter ranges from 0.5″ to 0.3″ with a log taper (see
In the example discussed herein and shown in
In this example, the Hall sensor values are read with 12 bit ADC (Arduino) and 1 KHz sample rate.
V. Generating Multi-Frequency Vibrations with a Single LRA
We now describe methods and embodiments to transduce an electrical signal to produce mechanical vibrations of beat frequencies with a single linear resonant actuator (“LRA”). We also now describe multiple inventions and embodiments of using the inventive methods to implement arrays of beating LRAs building upon the previously described Synchronized Array of Vibration Actuators in a Network Topology (“SAVANT”) architecture.
For example, two similar LRAs rigidly attached so that the axes of their vibrating masses are collinear and driven with two sine waves having different yet similar frequencies near the resonant frequencies of the two LRAs will produce an output vibration having a beating waveform resulting from constructive and destructive interference. We have previously described this as temporal mode in our SAVANT architecture.
Although LRAs can be manufactured in a small package, in this scenario it is necessary for the LRAs to vibrate at a high frequency in order for a consumer to feel the vibration in a consumer device when worn in the pocket of a loose garment. For example, one suitable device is made by Samsung Electro-mechanics Company, Limited (“SEMCO”), which manufactures the DMJBRN1030BJ LRA, which is approximately 10 mm in diameter and 3 mm in height, and has a resonant frequency of approximately 205 Hz and can be driven with a 0-2.0 Vrms AC sine wave.
We have previously disclosed the utility of producing beats from arrays of two or more eccentric rotating mass vibration actuators (“ERMs”) and from arrays of two or more LRAs for use in haptic guidance applications.
Within this inventive disclosure we introduce a novel and useful means to drive a single LRA with a multi-frequency signal and produce beat patterns from the single LRA, an approach that is counter-intuitive to most engineers and yet has great utility since it allows a single component design in comparison to a conventional two component design. A lower parts count can result in a lower bill of materials, a smaller space requirement, and greater simplicity in the engineering design.
Furthermore, we show how multiple LRA can be spatially arranged into a SAVANT, and that each LRA in the SAVANT can be driven with a multi-frequency signal to produce beats that can emulate the rotating beat sensation of a Gemini Drive, which are two interleaved ERMs driven at slightly different frequencies.
Another advantage of the LRAs when generating spatial beats over ERMs is that ERMs in a Gemini Drive at different frequencies generate slightly different centripetal forces that never exactly cancel out. With LRAs generating spatial beats, the forces can exactly cancel out. Still another advantage is that LRAs can be driven open-loop while the ERMs in a Gemini Drive need to be controlled with a closed-loop.
The generation of beats from LRAs and ERMs is also useful to producing relaxing and pleasurable sensations, for example in personal massage or adult vibration devices. Beats also may have significant utility for generating features in seismic sources for oil exploration, providing a robust feature set that can be analyzed when the dataset from an array of seismic sensors is processed.
For now, we can think of the LRA as a narrow bandpass filter centered on the LRAs resonant frequency. We show in this inventive disclosure that multiple waves can interact with each other yet get through this filter to produce important vibrational patterns at amplitudes substantially close to the maximum amplitude available to the LRA.
We are innovating on an existing design by utilizing it in a non-standard fashion. LRAs are designed to be forced at a single frequency, the resonant frequency, but we have discovered utility in forcing a single LRA with a linear combination of a few different frequencies. Our result is unexpected because it is generally accepted that the frequency response of an LRA is too narrow to effectively utilize multiple input frequencies. By keeping the separation between frequencies relatively small we find we can include multiple frequencies in the forcing function and still see response amplitudes nearly identical to the maximum possible.
For each of the component sine waves, we can determine the frequency, the start-time, the end-time, the phase and the amplitude. Furthermore, these parameters can vary during the effect, such as a frequency sweep.
We can create LRA invariant sensations, since the same beat frequency can be produced on different LRAs having different resonant frequencies.
Also, multiple LRAs can be combined into a SAVANT, so that spatial beats can be generated, and ERMs can be emulated.
Power efficiency for actuators used in wearable devices is of paramount importance. For example, in a white paper published by Texas Instruments entitled “Haptic Energy Consumption” by Flora Wang, Application Report SLOA194—May 2014 (this white paper is entirely incorporated by reference within this disclosure), LRAs are considered the most suitable actuator for wearable devices. In this inventive disclosure, we add still another reason to choose LRAs for wearable devices, that is the capability to generate salient haptic events such as beats.
Vibration capabilities of almost all current consumer electronic devices are provided by one of three vibration solutions: eccentric rotating masses (“ERMs”); linear resonant actuators (“LRAs”) or piezoelectric actuators (“piezos”). Each of these vibration solutions have relative strengths and weaknesses compared to the others as well as well-accepted standard modes of operation.
For ERMs the standard mode of operation is to drive them with a constant input current so as to produce a constant rotational velocity of the moving mass. The force felt by the ERM depends on this rotational velocity. We have previously described novel ERM embodiments such as the Gemini Drive. In this embodiment two ERMs are interleaved, allowing them to produce multiple-frequency output patterns such as beat patterns.
Advantages of LRAs compared to ERMs and Piezos:
We model the response function of an LRA as that of a damped harmonic oscillator with a resonant angular frequency ω0, a mass m and a damping ratio ξ. Note that LRAs are usually labeled by their resonant frequency f0, where ω0=2πf0. Let us consider a simple sinusoidal driving force. The equation of motion for a single LRA will be the solution of the differential equation:
where ω and φ are characteristics of the driving force. If the LRA is starting from rest then the initial conditions are given by x(O)=0, x′(0)=0.
If we were to have 2 identical LRAs each driven by their own simple sinusoidal function then each LRA would be governed by its own equation:
and the total response system would be proportional to x(t)=x1(t)+x2(t). We can reduced the number of equations though be introducing a change of variables. Let
X(t)=x,(t)+X2(t) (Eq. 113)
which leads to
X′(t)=x,′(t)+x2′(t) (Eq. 114)
and
X″(t)=x,″(t)+x2″(t). (Eq. 115)
Summing the left-hand sides of Eq. 113 we have:
which we recognize as the response function for a single LRA whose position is given by X(t). On the right-hand side we are left with the sum of the individual forcing functions. When the number of forcing functions is greater than two, there is generically no simplification of the addition of multiple sinusoidal functions. When we restrict the inputs to be two sinusoidal functions with the same amplitude and phase, we can use a trigonometric identity to find:
This yields the equation of motion for our single LRA driven by two sinusoidal input functions. We consider this case simply for the ease of analytic construction-because we are dealing with linear equations, the concepts we develop herein are valid for any number of sinusoidal inputs with arbitrary amplitudes and relative phases. Please see the description of the SAVANT architecture herein for a more detailed derivation for N sinusoidal input functions.
The solution to this differential equation is given by the classic “beat pattern”. The composite steady-state motion of the oscillating mass in the LRA can be seen as the linear supersposition of two component motions. First the mass oscillates sinusoidally at the average angular frequency of the two inputs:
Second, this oscillation is modulated by a sinusoidal envelope given by a sinusoidal wave with angular frequency
This envelope modulates the amplitude of the inner oscillation between 0 and 1, resulting in smooth pulses. Due to the inner oscillations during each half-wavelength of the sinusoidal envelope, the perceived frequency between pulses is twice the modulating frequency and is called the beat frequency:
Thus we find the somewhat surprising result that a single linear oscillator such as an LRA can exhibit a beat pattern in response to being driven by the sum of two different sinusoidal functions. This result follows directly from the properties of linear systems, in particular the principle of superposition. The steady-state composite motion resulting from forcing by two input functions is just the sum of the motions resulting from each individual forcing function acting separately.
Equivalence of Beating ERMs and LRAs
If one has two coaxial ERMs with equal eccentricities, oriented such that the planes spanned by each eccentric rotating mass are sufficiently close to each other in space to be perceptually indistinguishable (as in a Gemini Drive where the two planes are identical) and the ERMs are rotating at different angular velocities, ω1 and ω2, and their relative phase is p, then the components of the forces produced by each ERM are given (in a Cartesian coordinate system spanning the plane perpendicular to the ERM axis of symmetry and centered on the centroid of the ERM motion) by the expressions:
FERM1=m1R1ω12{cos(ω1t), sin(ω1t)} (Eq. 119)
FERM2=m2R2ω22{cos(ω2t+ϕ), sin(ω2t+ϕ)} (Eq. 120)
Here each component is taken to be, for example, in the orthogonal X and Y directions. We note that for the Gemini Drive system, the eccentricities of the two ERMs are equal, meaning that m1R1=m2R2=m R. We will assume this to be true for this example system as well. Summing these two forces we find the resultant, composite force felt by the system to be:
FERM=mR{ω12 cos(ω1t)+ω22 cos(ω2t+ϕ),ω12 sin(ω1t)+ω22 sin(ω2t+ϕ)} (Eq. 121)
If we now consider two orthogonal LRAs, each pointing in e.g., the X and Y directions respectively, where each is driven by a composite sinusoidal input so as to produce a beat pattern in each LRA (possibly with a relative phase separation φ between the two sinusoidal inputs), then their respective forces (in a similar X-Y coordinate representation) are given by:
FLRA1={A11 cos(ω1t)+A12 cos(ω2t+ϕ),0} (Eq. 122)
FLRA2={0,A21 sin(ω1t)+A22 sin(ω2t+ϕ)} (Eq. 123)
The resultant composite force felt by these two LRAs is then given by:
FLRA={A11 cos(ω1t)+A12 cos(ω2t+ϕ),A21 sin(ω1t)A22 sin(ω2t+ϕ)} (Eq. 124)
We can see that these two forces FERM and FLRA will be equal under certain conditions, namely:
A11=m Rω12
A12=m Rω22
A21=m Rω12
A22=m R ω22 (Eq. 125)
Thus we claim that by driving two orthogonal LRAs are described above we can exactly emulate two beating ERMs, for example a Gemini Drive exhibiting a beat pattern. Please see the description of the Gemini Drive design as discussed herein for a more detailed explanation of a Gemini Drive. As a specific example, let us consider emulating two interleaved ERMs joined together as a Gemini Drive. These ERMs have the following characteristics:
m1=5.690322533 grams
m2=4.812397782 grams
R1=4.291464331 mm
R2=5.074239 mm
m1R1=24.41981618 grams·mm
m2R2=24.41937438 grams·mm (Eq. 126)
Will we consider the eccentricies to be equal to five significant digits. If we consider these ERMs to be driven at 100 Hz and 105 Hz then they will produce a beat pattern with a beat frequency of 5 Hz. We will assume that there is no relative phase between the two ERMs. In order to emulate this beating Gemini Drive, we would need to drive two orthogonal LRAs in such a manner that the total forces output by each LRA are given by:
Let LRA1 have a resonant frequency of Fr. Let us construct a multi-frequency composite signal with multiple sinusoidal wave function components having Fmin as the minimum frequency and Fmax as the maximum frequency. Let Fmax>0, Fmin>0, and Fmax−Fmin>0. Let Fmin and Fmax both be frequencies that produce signal gain within the LRA. We are interested in the frequency band within the difference between the maximum frequency, Fmax, and the minimum frequency, Fmin. Let 1<Fmax/Fmin<2. We can define this as the bandwidth ratio to ensure the waves beat.
The sensation of the beating of two ERMs for example in a Gemini Drive is perceived as a rotating, circular, modulation that is also very pleasant. Here we teach how this spatial beating can be emulated using multiple LRAs spatially arranged, each LRA driven by a multi-frequency composite signal of multiple component sinusoidal waveforms of different frequencies.
For a single LRA exhibiting a beating pattern, the LRA will create “pulses” of duration 1/Fb, where Fb is the beat frequency. We refer to this time duration as the “beat period”. If one has multiple LRAs exhibiting a beat pattern it is possible to set the initial conditions such that these beat pulses occur identically or it could be set up such that there is a phase difference between the beat pulses. This means that one beat pulse amplitude may be at maximum when, for example, the other one is at zero. If the beat pulses have equal beat periods then this relative phase will remain constant. We refer to this time separation between beat pulse maxima as the “beat phase”. If the beat periods are constant and equal then the beat phase will be modular, repeating every beat period.
Consider a series of identical LRAs situated in a linear configuration with the axis of vibration for each LRA pointing in the same direction, perpendicular to the line of the configuration. Each LRA is vibrated in such a fashion as to produce a beat pattern with a given beat frequency Fb. If the initial conditions are such that the beats are all in phase then the configuration of LRAs will pulsate in unison providing a linear surface exhibiting a uniform beat pattern. On the other hand it is possible to change the relative beat phase between any two LRAs to create different sensations, for example for haptic purposes.
For ease of consideration, let us number each of the N LRAs in the line 1, 2, 3, . . . , N. Let us vibrate each LRA with a beat pattern and set each even LRA to the same beat phase while setting the beat phase of each odd LRA such that they are completely out-of-phase from the even LRAs. In this scenario half of the LRAs will be at maximum amplitude while the other half are at zero. This may be a desirable effect, for example in haptic applications. It may also be desirable to have the beat phase between each adjacent LRA pair shifted slightly. This would produce the effect of having “beat waves”, or traveling beat pulses, moving along the linear configuration. This phenomenon is analogous to the phenomenon of soliton pulses traveling along a continuous oscillatory medium, such as a string. These beat waves could be trivially extended to other geometries such as beat waves moving along a circular configuration of LRAs or circular (spherical) beat wavefronts moving along a two-dimensional (three-dimensional) grid of LRAs.
LRAs are important actuators but they can be very challenging to run optimally or even near optimally.
As the frequency of the sine wave in the forcing function moves away from an LRA's resonant frequency, there is an associated drop in gain and a phase shift. We can calibrate the system and produce a lookup table to correct for these issues.
The approach that some semiconductor companies have taken is to continuously calibrate by monitoring the back-ERF of the LRA to determine its resonance frequency. This method is called “auto-resonance.” For example, Texas Instruments offers the DRV2603 Haptic Driver with Auto-Resonance Detection for Linear Resonance Actuators and the DRV2605 Haptic Driver for ERM and LRA with Built-In Library and Smart Loop Architecture.
The methods described in this inventive disclosure for producing beats and mixing frequencies can be implemented in a haptic driver chip, a specialized microprocessor, or other systems, in such implementations that are well understood by those generally skilled in these areas of expertise.
Another way to calibrate is to employ an external accelerometer and sweep each LRA through a frequency band, recording the amplitude gain and phase shift for each frequency.
Two sine waves, vibrating near the resonant frequency (for example at 149 Hz and 151 Hz respectively) with similar amplitudes produce a salient beating sensation. Having identical amplitudes produces 100% modulation (that is to say, the amplitude of the beats goes all the way down to zero), having non-identical amplitudes produces less than 100% modulation. Maximum gain is usually achieved when Fmin<Fr<Fmax. An example of two sine waves beating is illustrated in
Three equally spaced beating sine wave functions, for example 148 Hz, 150 Hz, 152 Hz, centered on the resonant frequency, in this example 150 Hz, produce more sharply defined beat pulses. This is because there are three beating patterns superimposed: 148 Hz beats with 150 Hz, 148 Hz beats with 152 Hz, and 150 Hz beats with 152 Hz. We call this composite waveform a superbeat, because it is the superposition of multiple beat patterns. An example of three sine waves beating and producing superbeats is illustrated in
More than two sine wave functions, for example 148 Hz, 149 Hz, and 152 Hz, near the resonant frequency, for example 150 Hz, when the sine waves phases and amplitudes are varied can produce interesting and discernible haptic textures. An example of three sine waves producing a haptic texture is illustrated in
In the related work associated with this inventive disclosure we have introduced and described our SAVANT framework. In the SAVANT framework we have shown that Fourier Synthesis can be performed with multiple LRAs, with each LRA producing a single harmonic and driven by a sinusoidal waveform. It may be useful, in some scenarios, to produce two harmonics on a single LRA, even though the amplitude gain from the LRA may be very low. This is done by forming a composite driving signal having the two harmonics, each adjusted for the associated amplitude gain and phase shift caused by the LRA. This would allow the production of asymmetric waveforms, for example, that we believe have utility for directional haptic cues. The amplitude gain of the composite output from the LRA having multiple harmonics, in this example scenario, may be increased by using an array of two or more LRAs to enable the SAVANT magnitude mode. The motivation to do this is because it may be more energy efficient or more optimal utilization of the LRAs to produce a multi-harmonic waveform in each LRA and then combine them using SAVANT magnitude mode rather than producing individual harmonics, one per LRA.
Although it is clearly a non-traditional use of LRAs to mix any combination of sinusoidal wave components that form beats, superbeats and Fourier Synthesis, these afford important opportunities to increase haptic cues and sensations with conventional, off-the-shelf, vibration actuators.
LRAs when driven off-resonance will produce lower amplitudes than those driven on-resonance. Normally this is a big stopping point for LRAs but not for us, because we are interested in haptic applications and we do not need a lot of amplitude get the skin's attention. We are passing information through temporal changes in the LRAs (the beat pattern, beat frequency, and so on) and not relying on the spatial changes produced by an LRA (the distance it moves your skin back and forth).
Advantages for driving an LRA with beats compared to normal LRA operation:
Beat patterns are produced from the combination of two vibration frequencies. In the case of the Gemini Drive, one ERM is driven at one frequency, (F0-Fb/2), and the other ERM is driven at (F0+Fb/2), where F0 is the “base frequency” and F is the “beat frequency”. The beat pattern consists of sinusoidal oscillations at the base frequency modulated by an envelope that oscillates at the beat frequency and it has a rotating circular spatial beat that is caused by the precession of the constructive interference of the two ERMs.
For practical haptic purposes, the user is unable to discern the base frequency because it is much higher than what the skin can perceive. Instead the user feels a “buzzing” vibration whose amplitude modulates sinusoidally at the beat frequency. When the beat frequency is chosen to be small (roughly less than 20 Hz) then users are better able to discern each pulse of the beat pattern (“beat pulse”) individually.
When the beat frequency is low and the user can discern each beat pulse individually, the time delay between beat pulses (the “beat period”, given by the inverse of the beat frequency) can be utilized in a fashion as to convey information through haptics. Using the beat period to convey information is a substantially different haptic display from the standard mode of operation because it relies on the user's ability to detect time intervals in roughly the 50 ms-1000 ms range rather than the roughly 5 ms-10 ms range. Moreover, it only requires the user to ascertain the existence of the vibrations, it does not require the user to make judgments about small amplitude changes in sustained vibratory impulses. This means that a vibration device need only produce a “just noticeable difference” (“JND”) on the skin. Since skin is extremely sensitive to the presence of vibration, producing a JND requires a minimal of energy input, thus allowing for great energy savings compared to standard modes of operation.
Many of the haptic effects described in the Haptic Energy Consumption reference are transient effects, since energy is a consideration when consumer electronics devices are powered from a replaceable or rechargeable battery. However, we have established that for some consumer applications that use vibration, sustained modulation such as beating, or smooth, non-jarring transient haptic effects are sometimes more desirable. Because they are more pleasant and do not demand attention, the user can maintain a state of relaxation or reverie. As taught herein, beating and variations of beating during the haptic effects can emulate such sensations as feeling a heartbeat, a familiar and pleasant haptic effect, which may achieve the ability to alert a person within their dream-state, while ensuring that they are not jarred out of the sleep-state.
The modulations are able to produce discernible rhythms using beats, varying the beat frequency and the number of beats, and the interval between beat groups. We can also vary the haptic texture and vary a roughness quality from rough to smooth by adding additional sine wave components such that no two sine waves have a harmonic relationship.
Lucid dreaming is a mode whereby one can have conscious awareness and achieve some conscious control while within a dreaming state. Some research has shown that vibrotactile stimulation can be used to alert a person that they are dreaming allowing them to achieve lucid dreaming. However, if the vibrotactile stimulation is unpleasant it can wake the person up out of the dream state.
Nocturnal enuresis, conventionally known as bedwetting, can be electronically detected with sensors and the person can be alerted through a wearable vibration device that generates a vibration alert than can be adjusted for the person's optimum haptic pattern, which may include using beats in a haptic effect. The wearable vibration device is preferably wireless.
Other medical conditions might relate to haptic alerts triggered by the detection of a person snoring, to aide in snoring behavior modification. Thus, more generally, if a physiological state can be discerned, an appropriate haptic effect can be displayed. The haptic display may be a wearable device, or alternatively it may be in a pillow or a pad placed under the person.
Vibration is often used for personal massage and adult vibration devices, and generating beats LRAs as shown in this inventive disclosure may both mitigate pain and produce pleasure and relaxation.
The beat frequency may be correlated with a real-world phenomenon such as a person's heart rate, based on a physiological measurement via a sensor or group of sensors. It may be that a person's heartbeat is scaled by a factor of ten, so that a heartbeat of 80 Hz is scaled to a beating frequency of 8 Hz, for example. A heartbeat may be modeled as a group of two beats followed by an time interval or period, and then the repetition of the group of two beats. The heartbeat rate could be represented as proportional to the reciprocal of that time interval.
Beats may be used to convey the occurrence of a telephone call, for example through a wearable electronic device that communicates with a cellular phone.
Beats may be used to convey the occurrence of an alarm to wake up for example. It is possible that the vibration cue may be provided to a person wearing a haptic display.
Beats may be used to convey that a person is near his or her subway train stop or other mass transit destination. It is possible that the vibration cue may be provided to a person wearing a haptic display.
Beats may be used to convey that a person driving an automobile or motor vehicle that there is a situation that requires immediate attention. It is possible that the vibration cue may be provided to a person wearing a haptic display, or alternatively in automobile equipment such as a steering wheel or driver's seat cushions.
Vibration pillows are sometimes used to help calm persons with Autism spectrum disorder. The haptic sensations afforded by beating increase the scope of vibration sensations available.
Vibrating plush toys are sometimes used to help children go to sleep. The haptic sensations afforded by beating, for example, emulating a heartbeat, may increase the effectiveness of the toys in assisting children to go to sleep.
Garments, including vests, shirts, pants, or wearable accessories such as a belt, a harness, an armband, a wristband, or watch that can produce haptic sensations including beating from LRAs may be used to signal the wearer of an event or the proximity of another person of interest, such as a potential boyfriend or girlfriend, in a dating scenario.
A physical space may be electronically defined, and haptic cues using beats from a single LRA or multiple LRAs may be used to convey the bounds of that space, including proximity to the bounds using, for example, beat frequency. This may be useful for helping children stay within a geofence, or alerting their parents or guardian if they have crossed through the geofence. This also may be useful for a surgeon to have haptic cues to intuitively define the boundaries of an area that he or she should not move his or her scalpel outside.
Psuedo-rumble is the use of beats, superbeats or spatial beats to convey low frequency rumble sensations on high frequency LRAs or ERMs used in mobile devices. It is well established that game controllers use low frequency ERMs, that generate large forces at low frequencies, such as 15 Hz-45 Hz, which are proven to be superb frequencies for improving the immersive experience of a video game. Mobile devices often rely on very small LRAs and ERMs and these need to vibrate at significantly higher frequencies in order to achieve the necessary vibration amplitudes to alert a user. By using beats, superbeats or spatial beats, we can emulate the low frequency forces even though we are using the high frequency, miniature vibration actuators.
The capability to amplitude modulate the sinusoidal response of an LRA driven at a frequency F0, especially if F0=Fr, opens the door to information transfer between two devices, for example a first device having an LRA and a second device having an accelerometer which can measure the output vibrations of the LRA and demodulate the information.
The frequency band bounded by the lowest frequency and the highest frequency in the LRA forcing function composed of sinusoidal wave components.
The ratio of the highest frequency and the lowest frequency in the LRA forcing function composed of sinusoidal wave components. The bandwidth ratio, Br, must be greater than 1 and less than 2 to ensure that the two frequencies beat, or 1<Br<2. This is because a ratio of one occurs if there is no difference between the frequencies, and a ratio of two occurs if the maximum frequency sinusoidal wave component is the first harmonic of the minimum sinusoidal wave frequency component. If harmonics are desired, than the bandwidth ratio does not need to have these upper and lower limits.
A beat that doesn't feel like it is moving, such as those generated by a single LRA. Smoother than a click.
The waveform resulting from the superposition of multiple beat patterns, especially if the each of the beat patterns has the same beat frequency and the same beat phase. This results in a beat haptic texture.
Beats that feel like they are traversing a spatial path, for example the circular beating sensation of a Gemini Drive, in contrast to a beat that doesn't feel like it is moving, such as a beat pulse.
VI. Differential Haptic Guidance for Personal Navigation
This portion of the disclosure describes multiple examples and embodiments relating to wearable devices (and also to implantable medical devices or IMDs and holdable devices such as mobile phones) such as wristbands, that can provide haptic guidance to a person for such example tasks as to: help one navigate one's body or body part from a first location to a second location; help a person maintain one's body or body part at a given location or within a defined spatial zone; or help a person navigate one's body or body part along a defined path, while avoiding obstacles; or assist one in stasis or motion maintain one's body in a fixed relation to other adjacent people or objects. Also, this portion of the disclosure describes how haptic feedback can convey proximity and range information using vibration beating sensations produced from a single LRA or a SAVANT.
This technology has broad industrial utility for guiding people using haptic stimuli for use as an assistive device when a person may have a vision deficit (such as blindness) or when a person prefers to use the haptic sensory modality instead or in addition to using a person's sensory modalities of vision and audition. While this disclosure describes embodiments of assistive and augmentative technology for modern humans (Homo sapiens sapiens), other embodiments of the invention can be built for individuals of species including: dogs (Canine lupus), cattle (Bos primigenius), horses (Equusferus caballus), sheep (Ovis aries), etc.
Various embodiments of the present disclosure are designed to be worn and used persistently, so that it may be used as an artificial sensory modality similar to the lateral line in aquatic invertebrates such as fish and sharks. To achieve this goal of persistence, various embodiments of the invention may include subsystems and methods to manage an “energy budget” (a process commonly known as “power management”) and an “attention budget” to prevent sensory overload (for the purposes of this inventive disclosure we shall call this process “attention budget management”).
Soon it will be commonplace to have the capability to continuously locate a person, or a device worn on a person, spatially, with great precision due to the rapid advances and deployment of wearable sensor technologies in consumer electronics and indoor positioning technology and associated indoor and outdoor location services.
This pervasive capability, combined with body-worn vibration or other tactile actuators, and guidance algorithms as disclosed herein this inventive disclosure will enable personal navigation by essentially “feeling” one's way through space to a given target destination, and many other practical applications.
Desirable qualities in such a system include a) intuitive haptic feedback to allow rapid and fluid movement along a good path to the target; b) low cost to manufacture; c) portable; d) low power consumption; and e) minimal impact on a person's attention since vibration can often dominate one's attention. It is desirable to use low cost, conventional, and widely available actuators, including Linear Resonant Actuators and Eccentric Rotating Masses, and various SAVANTs (described elsewhere) including a Gemini Drive or a miniature version of a Gemini Drive, known as a mini Gemini Drive (described below).
VI.1: Clicks, Bursts of Clicks, Continuous Streams of Clicks, Scalar Haptic Feedback Responses and Vector Haptic Feedback Responses
Guidance via haptic navigation will, in certain embodiments, comprise a continuous stream or series of discrete haptic feedback responses (“clicks”, e.g., produced by one or more beat patterns) that will guide the user. A click is defined to be a vibrational stimulus that is so short in duration it feels like an instantaneous haptic feedback response (“response”) from the guidance algorithm/process. It is a temporally discrete, spatially localized, momentary sensation resulting from either the impulse of a single actuator or the combined output of a group of actuators known as a SAVANT, which is described in more detail in the accompanying appendices. A click may be varied in amplitude, and duration, for example. A burst of clicks and a continuous stream of clicks can also be generated by producing beating vibration patterns as generated by a single vibration actuator or a SAVANT, as described elsewhere herein.
These clicks can also be organized into periodic collections of multiple clicks, which we denote as “bursts” of clicks. Bursts are defined to be short periods of multiple clicks in rapid succession. These clicks or bursts may come from a single vibration device (which we will call “scalar” responses) or from two (or more) nearby or paired vibration devices (which we will call “vector” responses). In certain examples, scalar responses will guide the user solely through a magnitude related to the response, either the magnitude of the vibration click or burst amplitude, the duration of the vibration burst or the frequency of clicks or bursts. Vector responses will rely on differences between the multiple vibration sources. For instance, the user might be guided by trying to match the frequency of clicks in vibration device A to those in vibration device B, the amplitude of vibrations in device A to those in device B or the duration of bursts from device A to those in device B. It is also possible that haptic guidance could incorporate matching multiple stimuli at once, for example the period between bursts could shorten while the amplitude of the clicks in the bursts increased. In addition to the characteristics of the bursts as a whole, the clicks comprising each burst may change to affect the feel or haptic timbre or texture of the bursts. This could comprise for example a series of bursts where each burst is comprised of 10 clicks of ascending amplitude. Another example would be a series of bursts of 10 clicks each, but the frequency of clicks within each burst is increasing. The rhythm and relative amplitudes of the clicks may vary during a burst to convey a unique pattern, such as a heartbeat. Then the absolute amplitude of that unique pattern may be varied across time or space, for example, to convey distance or orientation cues, as part of this haptic guidance invention.
For the purposes of energy conservation, attention conservation and stimulus differentiation, it is desirable in some embodiments to replace a fairly continuous stream of clicks with a series of periodic bursts. For brevity in the remainder of this discussion we will generally only refer to clicks though bursts of clicks may be substituted interchangeably.
VI.2: Click Gradients and Click Spaces
Regardless of how the vibrational cues are manifested, it is necessary to define an abstract space in which both the user and the target are embedded and a “click gradient” between the two. The click gradient is a topological construct that represents the variation of the salient vibration parameter (be it the amplitude or frequency of the clicks or the duration of a click burst) between the user and the target. The click gradient controls, for example, how the frequency of clicks changes as a user approaches the target. The click gradient between the user and the target is a one-dimensional object and it represents a line in the three-dimensional click representation of physical 3-space (we hereby refer to this three-dimensional space of all possible click gradients between any two physical points as the “click space”).
Obstacles and targets can be represented in the click space with the notion of an “energy function,” similar to how heights in a hilly landscape are differentiated by their gravitational potential energy (see
The topology of the click space does not need to be uniquely defined a priori and therefore must be determined by the guidance algorithm of the haptic navigational device. This means that there is freedom for the guidance algorithm designer to define the click gradients between, for example, the user and hard obstacles as they think would be best for navigational purposes. A selection of three possible click gradients between a user and an obstacle are shown in
VI.3: Use Cases
Once the click space is defined, the topology of the click space will translate into haptic feedback for the user which will guide them in the space. Each vibration actuator in the navigation device may have click series and bursts with various salient parameters, including: the amplitude of the clicks/bursts; the duration of a click, the duration of the bursts and the frequency of the clicks/bursts, and the rhythm of the clicks within a burst. Each of these parameters may vary in time and they will be determined as functions of any or all of the following: the position of the actuator; the position of the target; the positions of other actuators in the device and the velocity and/or acceleration of the user. The functions that prescribe the salient vibrational parameters are open to the guidance algorithm designer and different functions will result in different navigational experiences. Below are some examples of different usage scenarios.
VI.3.1: Use Case: Wrist Moving from Position 1 to Position 2 (Differential or Vector Response)
Consider a wrist-worn device with two vibration actuators A and B on opposite sides of the device, both attached to sensor arrays and computers capable of determining their positions in space and time and the positions of all other objects in the nearby area with sufficient accuracy. The device is to be used to navigate a user along a circuitous, curvy path from point 1 to point 2 while avoiding intermediary obstacles. To do this, each vibration actuator will emit click bursts of constant (equal) amplitude, with only the frequency of the clicks per burst varying as the user moves through space. If the user followed the path of least energy exactly they would feel bursts at a base rate of 10 clicks per burst (“cpb”) in both actuators. Deviating from this path will introduce a difference in the click rates between the two actuators that will be directed towards the path of least energy. For instance, if the user deviated to the left of this path, the click rate in the leftmost actuator would increase while the one on the right would stay at 10 cpb. The user would sense the difference in click rates and find their way back to the path of least energy by matching the vibrational stimuli. The obstacles will be represented at the maximum burst rate of 25 cpb, meaning that if the user is directly adjacent to an obstacle they feel 25 cpb in the actuator closest to the obstacle and 5 cpb in the actuator farthest away. As the user moved through the space the burst rates in each actuator would change accordingly and the user would guide themselves by dynamically equilibrating the click rates.
VI.3.2: Use Case: Cane or Walking Stick Moving from Position 1 to Position 2 (Scalar Response)
Consider situation similar to that above, but this time with a cylindrical device like a cane or walking stick that has a circular array of 12 actuators evenly spaced in a plane perpendicular to the axis of the cylinder (for purposes of reference the forward-most actuator will be designated 12, the rear-most will be designated 6 and the others will be designated around the circle like hours on a clock face). In this device the clicks will be used and the frequency of the clicks will be constant, but the amplitudes will change according to the user's position in space. Consider that the user starts out on the facing in the direction of the path between the user and the target. The 12 actuators will then begin to click at the base rate of 60 clicks per minute (“cpm”) with full amplitude. As the user moves forward, the path bends to the right. In order to guide the user towards this geodesic the 12 and 1 actuators will start clicking at half amplitude at the rate of 60 cpm, then the 1 actuator will click at full amplitude at 60 cpm, then 1 and 2 at half amplitude and so on. The direction of the vibrational cues will always point parallel to the path. As the user turns the orientation of the device the vibrational cues will react, always pointing towards the path. This is similar to how a compass needle always points north no matter how the user orients it.
VI.3.3: Use Case: Keeping Wrist in a Single Place or within a Zone
Rather than navigating from a starting point to an ending point, it may also be desirable to use haptic navigation to maintain a position in space. In this case the user's initial position will correspond to the target position, which will also correspond to the global energy minimum in the click space. Any deviation from this minimum will result in the ascent of a click gradient which will elicit a vibrational response. This response may come as, for example, an increase in the click frequency over the base rate. The response need not be radially symmetric around the energy minimum as one direction of motion away from the target point may elicit a weak response while another direction would elicit a strong response due to the presence of obstacles.
VI.3.4: Use Case: Wayfinding from Waypoint to Waypoint
It may also be desirable to navigate through a series of unrelated points (“wayfinding”). The paths between these points may be determined by the guidance algorithm designer and may, for example, be straight lines in physical space or curved lines determined for example by Bezier interpolation. See
VI.3.5: Use Case: Moving Target
It may be that the target position is dynamically changing in time. In that case the path to the target will also have to be updated. If the device is capable of knowing instantaneously the new position of the target then it could recompute the path dynamically. If the device cannot know the new target position it may be that the device would first guide the user to the original target position, acquire the new target position and then guide the user to that new target position. In this case the moving target problem reduces to a concatenated series of single target problems, similar to the case of linearly interpolated wayfinding as discussed above.
VI.3.6: Use Case: Constant Relative Position
A user may wish to always maintain a constant relative position to external objects, for instance a marching band member marching in formation. This usage case is similar to the usage case of keeping one's wrist in a defined position, but now the energy landscape is dynamically changing. In this scenario, the desired relative position would be considered the energy minimum and its position would have to be updated whenever the external elements changed their positions. Once it is updated, if it is found that the target position is no longer where the user's position is, then there will be a click gradient from the user to the target. This usage case is a combination of the maintaining constant position case and the moving target case.
VI.3.7: Use Case: A Stylus with a Tablet
Similarly a glove could be outfitted with mini Gemini Drives or other SAVANTs or actuators at the fingertips to allow a person to “feel space” and obtain haptic guidance according to the precepts of this inventive disclosure. Similarly other apparel such as running shoes, an armband, a legband, a hat, a vest, a halter, a belt or a visor that permit a constant relationship between an local haptic display such as an actuator or a proximal SAVANT may be used as part of a wearable haptic guidance system. Handlebar grips of a bicycle or a motorcycle, or a steering wheel grip, may be also useful for mounting the haptic display elements of a haptic guidance system that is non-wearable.
VI.4: Sensory Difference Thresholds and the JND and Differential Haptic Guidance
A central principle of this portion of the disclosure is to leverage human (or other species) abilities for comparing different stimuli, differentiated in time (sequential clicks or click bursts) or space (spatially distributed clicks on different parts on one's body) or combinations of time and space. Sensory difference thresholds and just noticeable differences (JNDs) are well known in the scientific literature related to the field of Experimental Psychology including Psychophysics.
VI.5: How to Generate a Click or a Series of Clicks
The following describes how to generate a click, a continuous series of clicks, or a burst of clicks using illustrative actuator types including: (a) a conventional LRA; b) a mini-Gemini Drive; c) a full-bandwidth haptic actuator such as a piezoelectric actuator; and d) a mini-solenoid with a spring return).
VI.5.a: Conventional LRA
Conventional LRAs have a narrow range of resonant frequencies over which they produce sizeable forces. A click can be generated by providing an amplitude modulated sine wave which rapidly increases then decreases. LRAs have moderately fast response times, and can move into and out of resonance fast enough to produce a click experience. A single click may be produced by taking a static LRA, instantaneously providing a sinusoid of desired amplitude for a minimum number of cycles to produce resonance or partial resonance, then dropping it to zero, at which point the LRA moves back into a static state (depending on the time scale). If the actuator resonates rapidly enough, this will be experienced as a single click. Repeating this process periodically at the desired click frequency will produce a series of clicks.
VI.5.b: Mini-Gemini Drive
A series of clicks can be produced with a mini-Gemini Drive in the following way. First, the Gemini is brought into spinning reserve, with the dual masses 180 degrees out of phase. This way there is no vibrational force. Then, the masses are briefly brought into phase, held there for a period of time, then brought back into spinning reserve (180 degrees out of phase). The amount of time required to generate a single click should be as brief as possible to generate the full desired amplitude then return to spinning reserve, but with the Gemini Drive any desired profile within bandwidth can be reproduced (for example sinusoidal, square, or spiked).
A series of clicks are produced by repeating the above procedure for a single click periodically at the click frequency. For example, if the click frequency is desired to be 5 Hz, then the period for the process should be ⅕ second. The amplitude is determined by how close the masses come to becoming completely in phase during the click procedure, as well as the base frequency. The velocity must not be so large that the motors cannot perform rapid accelerations, but must be large enough to produce desirable amplitudes. Similarly the phase change must not be too large or the click may not be experienced as sharp enough.
If the directly of the click matters, the Gemini Drive can be directed to bring the masses into and out of phase in the same portions of a rotation. For example, if the desired effect is to feel a force to the left, the Gemini Drive can bring the masses into phase (to whatever desired degree) only from 90-270 degrees of the rotation, and possibly a more narrow range, then when passing through the right half plane (from −90 to 90 degrees) the masses should be back to 180 degrees out of phase. Otherwise if the direction of the force is not specified, the timing would be controlled of when to generate a click but not the direction of the force vector. This would create a randomized force vector direction (but not amplitude or frequency). In the case of preventing accommodation (keeping the user attending correctly to the clicks, if desired), the randomized force vector may be useful as a feature.
VI.5.c: Full-Bandwidth Haptic Actuator (e.g., a Piezoelectric Actuator)
Producing a click with a piezoelectric actuator is a matter of generating a click profile, and providing this as a reference signal for the actuator to track. These actuators have extremely fast response times (though small travel, which is quite acceptable in this situation), can generate relatively large forces, and are in general well behaved. Therefore, once a single click profile is created, generating a series of clicks is a matter of repeating the reference profile periodically at the click frequency.
VI.5.d: Mini-Solenoid with Spring Return
This is one of the simplest methods of creating a series of clicks from a mechanistic standpoint, as a solenoid is a unidirectional device (without the spring return). So to generate a series of clicks with this device a brief current of sufficient time to generate a force would periodically be passed through the solenoid at the click frequency. The spring would return the solenoid to its resting position between clicks. In this case, the spring-mass system of the solenoid has a maximum bandwidth due to the time it takes for the spring to return the moving mass to its rest state. Thus the click (and corresponding click frequency, which should be lower than a single click frequency) must not be ‘faster’ than the bandwidth of this system.
Multiple clicks are generated as previously described in (b), by periodically repeating the process just described at the desired click frequency. It is possible some control may be implemented to minimize resonance due to the spring return by applying some force to decelerate the spring-mass system at just the right moment during the completion of a return cycle. This would serve to smooth the non-click part of the motion for the user, and avoid ‘ghost clicks’ that any resonance may generate as an experience.
VI.6: Determining Haptic Guidance Onset and Offset
Another way of conserving energy and attention is to only turn the haptic guidance system on when needed and to turn it off when not needed. The system could determine it was needed through context. A person could also make a gesture or press a button to turn it on. It could turn off when the person had reached the location point. It may also be desirable for the user to invoke a gesture or press a button to change the overall vibration response; for example shaking a wrist-worn device could increase or decrease the base rate of vibrations or tapping on the device could increase or decrease the difference in feedback magnitudes for navigation using differential stimuli.
Conversely, changes in frequency or amplitude could be used periodically to ‘shake’ a user out of a state of accommodation, where their sensory system had become adapted to the clicks and thus began to ignore cues. By periodically providing random shifts then returning to the base signal, the user's brain would not as easily accommodate. However, some accommodation may be desirable to make the system become integrated into the user's perceptions without demanding too much attention.
VI.7: Multimodal Applications
There are many forms of guidance based upon sensory stimuli which can be used for navigation. These include but are not limited to visual, auditory, or other forms of tactile stimuli (such as continuous forces). The human sensory system has a limited bandwidth per sensory modality, so combining multiple modalities may produce a system that can provide more information than a single modality alone. It can also be used to reinforce a single modality. For example, if a user is driving a car, and there is an augmented display system for obstacle avoidance or navigation, the user may be provided with some visual cues, or in an emergency, both visual and vibrational. If the user is in the middle of highly complex visual information such as a traffic jam, the use of visual and auditory cues may not be processed as quickly as vibrational cues.
One method of multimodal stimulation is to provide the multiple stimuli closely in time (temporally). What this does is help the user to fuse the information. In some cases, one modality can be used to prime a user to respond more rapidly to another modality. For example, to return to a navigation-based application, assume a person is driving, and approaching a turn, but there is too much auditory background noise to hear a spoken voice, and it may be dangerous for the user to look at the screen for visual cues. In this case, vibrational cues may be provided to the user through a wristband, seats, the steering wheel, or other means. A click burst begins at low amplitude, gradually increasing to cue the driver they have an upcoming turn. In this way, various stimuli can be used either together or as a panel of available cues to provide guidance to a user.
In some cases, immersive experience can create a stronger response to navigational cues. Augmented reality provides feedback on top of visual and auditory stimuli. With the addition of vibration to the group of cues, more deeply integrated and immersive experiences can be smoothly provided to a user.
VI.8: Navigation with Haptic Patterns
Perceptual haptic patterns can be varied spatially across distal actuators, such as one on the left, and one on the right. Clicks and click bursts are one type of haptic pattern, but there is an infinite set of possible patterns that could be used. Employing patterns which are innately meaningful, such as a heartbeat, can provide a stronger sense of urgency, or just help a user to relate to, recognize, and engage with the cue. Providing an easily recognized pattern will also assist a user in attending to haptic cues when in noisy or complex environments with a reduced attentional load. For example, consider a user navigational task where the goal is to balance a heartbeat pattern between left and right actuators worn on wristbands or built into a jacket's arms.
A simple heartbeat effect can be produced easily with, for example, a Gemini Drive with a strong perception of a heartbeat that can be repeated as necessary. Some subtle additions can be made to tune the effect, but the user's pattern recognition immediately fills in with the details, reducing the need to process more complex sensory input, and simplifying the code necessary to generate this effect. This meaningful pattern is very effective for haptic stereo panning cues, for example.
An example of providing differential haptic guidance with a haptic pattern such a heartbeat would be: a person is outfitted with one wearable haptic display on the left wrist and an identical haptic display on the right wrist; the guidance algorithm knows where each wrist is located and where the target location is; the guidance algorithm is able to command a heartbeat pattern to each wrist, and control each heartbeat pattern's magnitude. When the magnitude of the heartbeat pattern is identical on each wrist haptic display, the person knows he or she is on the right path. Once the person is on the right path, the person can determine the correct direction along the path to the target by having the magnitude increase towards the target, for example. This has a low cognitive load and leverages innate human abilities to compare different haptic stimuli.
VI.9: Minimizing Energy Consumption and Attention Consumption
As previously mentioned in this inventive disclosure, it is a key design objective to minimize energy consumption and also to minimize attention consumption, so as not to intrude on a person's attention space to the point of being annoying or counter-productive to one's tasks and priorities. Thus, the amplitude of the clicks may be varied from person to person, as part of a personal preference in a system menu or determined as an optimum performance parameter through a personal calibration. Alternatively, it may be varied according to the context, for example, a firefighter responding to a need to immediately exit a building may be provided an extremely elevated amplitude of click stimuli.
Beating is a sensation that that can be readily synchronized between different vibration devices of patterns, since it is produced through matching the difference between the component vibration frequencies across two or more vibration modules. Generally, it is easier to match the difference of the component frequencies across two distinct vibration modules, rather than to match the component frequencies across the two distinct vibration modules.
The precession of the beat crests in a pair of co-rotating ERMs, for example in a Gemini Drive, produces a slowly circular undulating sensation that rotates in the same direction as the two ERMs. Thus, two Gemini Drives can generate similar beating patterns that can synchronize their beats in beat frequency, and beat phase, even though the base frequencies are different. For example one Gemini Drive can generate a beat frequency of two Hertz with a base frequency of 30 Hz, and synchronize its beats with a second Gemini Drive having a beat frequency of two Hertz with a base frequency of 45 Hz. A single LRA can generate beat frequencies of two Hertz, and a pair of LRAs in a SAVANT can generate a circular beating pattern. Thus beating is a very desirable vibration pattern because it is able to convey perceptually salient across a wide variety of conventional vibration actuators such as ERMs and LRAs, and the amplitude of beat patterns can be increased by displaying a synchronized beating pattern simultaneously across multiple different SAVANTs or individual LRAs. Therefore there is great utility in haptic beating patterns for three reasons: 1) they easily convey perceptually discernible low frequency rate information even though their base frequencies are high; and 2) the exact same beating pattern can reproduced using across a diversity of vibration actuator types (for example, LRAs and ERMs) and geometric network topologies; and 3) multiple vibration modules can be readily configured to synchronize their beats, producing larger amplitude beat patterns, as a first example, or enabling a beat pattern to appear to move between spatially separated vibration modules, as a second example.
VII. Haptic Display Using Synthesized Elliptically Rotating Forces
In this section we describe the theory, along with novel, practical and useful embodiments of a haptic display using SAVANTs (Synchronized Arrays of Vibration Actuators in a Network Topology) and low-cost, off-the-shelf vibration actuators to produce haptic sensations and directional haptic cues based on contact forces produced by synthesizing elliptically rotating forces, using a new SAVANT actuator class we call an “elliptical drive.” SAVANTs were described and illustrated in detail above. We introduce several embodiments of haptic display using the elliptical drive. We also introduce a second new SAVANT actuator class that we call a “stiction” drive for locomotion and describe several embodiments of the stiction drive.
Ultrasonic motors are a type of piezoelectric-based motor that have found great success in high precision devices such as auto-focus camera lenses and surgical micro-walking machines. These motors generate motion from ultrasonic oscillations of piezoelectric material. Ultrasonic motors operate by generating a friction wave that produces motion on a movable element of the motor. The friction wave is produced by simultaneously rotating many small regions of a frictive surface in localized circular or elliptical paths. While these ultrasonic motors have important advantages including high speed, high torque, and precision motion, they generically require expensive materials that are difficult to handle and produce, and require high voltages. In this disclosure we describe a vibration device that also creates contact forces capable of providing an overall non-zero displacement using circular or elliptical motion of a frictive surface, however our device is created with combinations of low-cost, widely available actuator components such as linear resonant actuators (LRAs) and eccentric rotating masses (ERMs) within our framework of SAVANT (Synchronized Array of Vibration Actuators in a Network Topology). These low-cost actuators either naturally produce circularly rotating forces or produce linearly directed forces that can be combined with linear vector algebra to produce circularly or elliptically rotating forces. SAVANTs with conventional, low-cost, off-the-shelf vibration actuators are well suited to synthesize these elliptically rotating forces for the purpose of producing contact forces and haptic cues.
Haptic displays that may use the embodiments described herein include mobile phones, game controllers, and adult vibrator for personal pleasure. Other uses may include locomotion and materials handling.
With the framework of SAVANT, we can combine and synchronize the force vectors produced by actuators such as LRAs and ERMs to create resultant force vectors that rotate in a circular or elliptical path. As a circle is merely an ellipse with degenerate foci we shall henceforth only refer to circular or elliptical paths as elliptical paths. By changing the phase, amplitude and frequency of the component actuators we can apply arbitrary geometric transformations to these elliptical paths, effectively scaling, shearing, rotating, and reflecting them, or any combinations of those linear operations, while controlling their rotation frequency and phases. All that is necessary is that the vibrational axes of the component actuators span the space of interest: two non-collinear vibration axes to span a plane and three non-collinear and non-co-planar vibration axes to span a 3-volume. We call these elliptical paths “Force Ellipses.”
Generically, the devices we describe herein can produce non-zero average displacement by pairing elliptical forces with external forces such as friction, gravity or elastic forces, in a similar manner as ultrasonic motors. We refer to these configurations of low-cost actuators designed to produce non-zero average displacement via elliptically rotating resultant forces as “Elliptical Drives.” The external forces created by an Elliptical Drive can be utilized for many applications, including producing a haptic cue from lateral stretching of the skin and locomotion of an object comprising, among other things, an Elliptical Drive. Individual Elliptical Drives can be combined to create contact forces at multiple contact points for more sophisticated haptic cues, such as a wave.
We may wish to embed the SAVANTs in an elastic medium such as foam. (The elastic medium may exert restoring forces upon the SAVANT. This allows the SAVANTs to generate the force ellipse beneath the surface. It also partially decouples a given force ellipse from other force ellipses embedded in the device and other rigid parts of the device.
Generically Elliptical Drives will create non-zero average displacement by driving an object external to the comprising vibrational actuators. This object will generically have a frictive surface which will produce contact forces on external bodies. This object might be a simple rectangular block housing the battery and controllers for the vibration actuators or it could be a volume of viscoelastic (elastic material or viscoelastic) material protruding through an aperture of hard plastic. Regardless of the nature of the force-transmitting object, the principle is the same: During half of its rotation, the Elliptical Drive will push the object closer to the external contact surface and in one lateral direction; during the other half of its rotation, the Elliptical Drive will pull the object away from the external contact surface and pull it back in the opposite lateral direction so it will repeat the cycle starting from the same initial contact point when the Elliptical Drive has made a full rotation. In this manner the friction forces between the force-transmitting object and the external contact surface will continually provide unidirectional propulsion forces to either the force-transmitting object or the external contact surface. These forces will repeat at a frequency equal to the rotational frequency of the Elliptical Drive and their duration will be half of the period of the Elliptical Drive's rotation. The direction of the forces depends solely on the rotational direction of the Elliptical Drive and can be changed by reversing the direction of rotation.
In analogy with ultrasonic motors, we wish to create propulsive forces via the elliptical motion of a frictive surface. Rather than rely on deformations of piezoelectric materials though, we can achieve the same propulsive forces using low-cost, widely available vibration actuators such as linear resonant actuators (LRAs) and eccentric rotating masses (ERMs). In the simplest case we shall consider a single ERM providing the driving force and from there we shall discuss successively more intricate devices including more vibration actuators. We leverage the SAVANT framework to combine and synchronize the component actuators.
In all example embodiments we shall embed the vibration actuator in a viscoelastic material such as foam or silicone. This medium will transmit part of the elliptical force to a contact surface and shall suppress the remaining part of the elliptical force.
This embodiment shown in
The embodiment shown in
The embodiment shown in
In the embodiment of
Since linear resonant actuators are not readily available at this time in multiple resonances in harmonics of a frequency, for example a first harmonic of 100 Hz and a second harmonic of 200 Hz, as is necessary to produce locomotion by asymmetric lateral vibration, it is desirable to produce a SAVANT actuator class that uses arrays of LRAs operating at the same frequency, for example 150 Hz or 175 Hz.
A Stiction Drive can also be made from a SAVANT actuator class we call a “Gemini Drive,” which is a synchronized pair of interleaved eccentric rotating mass motors, operating to produce a rotatable linear axis of vibration, used for locomotion. The principle of using this type of SAVANT is described in the included reference, Synchronized Array of Vibration Actuators in a Network Topology.
Now we describe a device having two preferably orthogonal linear resonant actuators (LRAs) in a movable drive resting on a surface, or two interleaved counter-rotating eccentric rotating masses (ERMs). The two LRAs are rigidly or semi-rigidly coupled to a moveable platform or housing, and are driven by electronics as described elsewhere herein.
One LRA rests atop the housing with its axis of vibration oriented perpendicular to the ground. The second LRA is attached to the side of the housing and has its axis of vibration oriented parallel to the ground. See
The two LRAs can in general have different characteristics but without loss of generality let us assume they are both identical, having the same resonant frequency, gain and maximum force output. Let us also assume that the oscillations of the two LRAs are in phase. This means that the tip of the resultant force vector formed from the vector addition of the two LRA forces oscillates in a linear path that makes a 45 degree angle with both the surface and the surface normal.
When the resultant force vector (hereinafter referred to as the “resultant”) is pointed away from the ground, there will be a component that acts to lift up on the object and a component that acts to propel the object forward. The component that lifts up on the object effectively diminishes the normal force vector, which in turn reduces the frictional response felt on the object. When the resultant reverses direction and points inward towards the Earth, there is a component that pushes into the ground and a component that acts to propel the object backward. The component pushing into the ground effectively increases the normal force on the object and thus increases the frictional response force to the propulsion force.
A complete mathematical description of this device requires examining the equations of motion in both the direction perpendicular to the ground and the direction parallel to the ground. In the parallel direction (x), from ΣF=m a, we have that the sum of the force components acting on the whole device will provide the acceleration and therefore any resulting motion. Summing up the force components acting in this direction, we have the oscillatory propulsion force provided by the actuator in contact with the ground, AB sin(ωt) as well as the friction force, which is simply given by Ffric=μFN, where FN is the normal force.
In the perpendicular direction the sum of forces will equal the normal force, which determines the friction force felt by the bottom LRA. We will assume for our analysis here that the perpendicular oscillatory force is never enough to entirely counteract gravity, meaning that the device never jumps off the ground. If it leaves the ground then the analysis needs additional mechanics. Summing up the vertical forces we have the total weight of the two LRAs and the sinusoidal force produced by the upper LRA. Thus we have that FN=m g+AT sin(ωt+φ). Substituting this into our expression above (and replacing the acceleration a with differential notation for the position variable, x) we find:
m x″(t)=AB sin(ωt)−μ(m g+AT sin(ωt+φ))sgn(x′(t)),
where we have the amplitudes of the top and bottom LRAs as AT and AB respectively. Note the inclusion of the factor sgn(x′(t)). This ensures that the friction force is always pointing in the direction opposite the motion. The motion of the device thus follows from the numerical solution to this differential equation.
This asymmetry in the frictional response force creates an overall non-zero displacement for the object. If not for the friction force, the object would oscillate back-and-forth equally because the propulsion components are equal in both directions. In the presence of the normal-modulating vertical force components though, the friction response is always less in one direction than in the other, which provides an overall net force in one direction. The direction of the overall net force can be reversed by reversing the orientation of the resultant force—effectively changing the phase between the top and bottom LRAs from 0 degrees to 180 degrees.
This device as described can produce propulsion forces along a straight line. By combining multiple devices in a manner that spans multiple spatial dimensions we can produce propulsion forces in a plane. We could use a SAVANT actuator class which we call in this inventive disclosure a Gemini Drive, which is a synchronized pair of eccentric rotating masses e.g., as described elsewhere herein, preferably with interleaved masses. A Gemini Drive has a mode of operation to counter-rotate a pair of synchronized interleaved ERMs to produce linear vibration forces at an arbitrary orientation in a plane. The orientation of these linear forces can also be changed as desired during operation. By implementing a Stiction Drive based either on a synchronized pair of LRAs or on a Gemini Drive which is a synchronized pair of ERMs as described in this inventive disclosure and wholly included references, we produce a device that is capable of producing dynamically changing propulsive forces along its plane of motion. This could be used for instance as a mechanism of locomotion in a robotic device or, if the device is mechanically grounded, to move a carriage or stage.
Another proposed embodiment is a device that joins two orthogonal LRA pairs onto a flat, round stage that also may include such components as a microcontroller unit (MCU), cameras for sensing absolute position, a battery or batteries for power, a wireless transceiver for communicating with a host computer or other CoasterBots, and other sensors such as an Inertial Measurement Unit (IMU) for relative motion measurement, as illustrated in
The two orthogonal LRA pairs serving as stiction drives can be driven in four combinations: both forward; both backward; left one forward and right one backward; and left one backward and right one forward. When the drive pairs are driven both in the same direction they will produce a net propulsive force in that direction. When they are driven in opposite directions they will produce a net torque on the object resulting in either a clockwise or a counter-clockwise rotation. By dynamically changing each LRA's direction of propulsion during operation the device can move and maneuver in the plane via translations and rotations. We call this device a “Coaster Robot” or a “CoasterBot”.
VIII. Coherent Phase Switching and Modulation of a Linear Actuator Array
The SAVANT architecture is focused on enabling new and interesting haptic effects, and in general improving haptic system performance (response time, minimizing energy consumption, and expanding the range of achievable effects). The SAVANT architecture uses synchronized arrays of low-cost, readily available vibration actuators to emulate and outperform single actuator systems, bringing together sets of actuators to create desired control effects. In this part (part VIII), certain aspects of the technology are discussed involving coherent phase switching and modulation of a linear actuator array.
Input Waveform: We refer to an input waveform to mean a set of time-dependent values, either defined as a continuous function of time or in a sampled-time sense, that are used as the input to a component of the system (e.g. a reference command to track, or voltage input directly into an amplifier).
Input Waveform Representation: An input waveform representation is an explicit or abstract representation of an input waveform. For example, a waveform could be defined with explicit values at subsequent time points for a sampled-time system, or it could be represented as a mathematical function of time (possibly a piecewise function of time) that includes parameters or times for switching from one operating condition to another, or changing amplitudes, etc.
Computer: A computer is defined as the system used to perform computation, either for the purposes of precomputation (off-line, a priori determination of operating timings and simulation results) or for the purpose of computation to achieve the real-time control of a system (as an element of a controller). The computer may be implemented, for example, as a single or multi-core embedded processor, a microprocessor, an FPGA, a Digital Signal Processor (“DSP”), or any combination of these. The computer may be integrated into a specialized haptic driver/controller integrated circuit device which may directly connect to a SAVANT, providing both amplifiers for driving the SAVANT actuators, and signal conditioning and analysis capabilities for measuring and/or estimating the state of the SAVANT actuators.
Control Component Waveforms for Target SAVANT: The control component waveforms for a target SAVANT are the set of waveforms that correspond to the individual SAVANT component devices.
Target SAVANT Nominal Model: The target SAVANT nominal model is the specified model of a SAVANT, most likely based on general specifications such as those specified in a manufacturer datasheet. SAVANTs can be manufactured using mass production methods to these general specifications.
Target SAVANT Calibrations: The target SAVANT calibrations are the same or similar model form as the nominal model, but the parameters or model may be adjusted in order to better fit the behavior of an individual SAVANT or SAVANT component.
Performance-Timing Tables for a Target SAVANT: The performance-timing tables for a Target SAVANT are a tabular or memory-mapped representation of functions that relate the SAVANT switching and operational timing with performance metrics such as first peak time, first peak output force, energy consumption, or any other relevant performance metric. These are used in when decomposing and optimizing the Control Component Waveforms along with the Optimization Objectives. There are alternative ways to represent this information, including explicit analytical expressions that are solved for optimal values and derived from an analytical solution or simulation results, or curve/spline fits to the tabular data.
Optimization Objectives: Optimization objectives are those metrics or performance measures whose minimization or maximization through manipulation of system inputs is desired. Example optimization objectives include minimizing time and power consumption.
Optional Scaling Parameters: Optional scaling parameters are scaling factors with respect to time, frequency, or amplitude, that could be used to shape or stretch waveforms if needed for a given haptic display application.
Trigger or Scheduled Time to Start: The precomputed input to the system can be delayed to a specific event (a trigger) or scheduled to begin at a given time (schedule time to start).
Output Waveform: The output waveform is the combined output of the SAVANT or other haptic system. The waveform could be a position (of either the sled or the individual LRA masses), translational or angular acceleration of the sled, or a force output, torque output or other quantities whose time response is relevant to an application.
The nature of the vibration actuators and their network topology determines their capabilities. In part VIII, we focus on discussing an example SAVANT architecture comprised of two linear resonant actuators (LRAs), and using them for improved haptic waveform synthesis performance. Specifically, the manifestation discussed in this disclosure relates to adjacent LRAs, e.g. in a parallel arrangement or coaxially in a tandem arrangement. We demonstrate a feature of the SAVANT technology, that of “Spinning Reserve”, with the name inspired by energy storage in flywheels and developed in our prior work. This innovation, when applied to LRAs, involves storing energy in the mechanical inertia of the LRA via velocity and stiffness of the LRA via displacement and releasing it through modulation of the relative phase of the SAVANT LRA devices. In this disclosure document, we use the terminology “in-phase” when the two LRA devices output the same periodic waveform (in other words, the relative phase angle between the motions of the two LRAs is 0 degrees).
In addition, the term “anti-phase” means the two periodic waveform outputs of the LRAs are at a relative phase angle of 180 degrees. Moreover, the term “out-of-phase” means the two periodic waveform outputs of the LRAs are not in-phase (they could be anti-phase). Finally, within this disclosure document we use the term “coherent” to mean driving the LRAs at the same frequency and controlling the relative phase angle, either by “phase switching” (rapidly shifting between two different relative phase angles) or “phase modulation” (continuously varying the relative phase angle for a period of time). We define phase control as the act of and methods of manipulating the relative phase of either input or output signals in order to achieve desired outcomes. Although this inventive disclosure document is largely concerned with a coherent array of two linear resonant actuators for haptic applications, the concepts and analysis can be extended beyond two linear resonant actuators and for non-haptic applications, and having other dimensional scales than the examples herein by a person skilled in the art.
First, we present a single LRA model. To that model, we apply a straightforward feedback control, based on state feedback that achieves the desired phase control. We then present a linear (extensible to nonlinear) model that simulates a dual LRA system on a haptic sled, that takes into account items like coupling through the sled. This model is exercised using the Spinning Reserve approach to demonstrate an open-loop example of Spinning Reserve and its benefits for an LRA. Afterwards, the effect of closed-loop feedback control is shown, with an implementation.
Energy analysis is performed in order to show estimation of “energy consumed per event” under the schemes. Tradeoffs for closed-loop vs. open-loop are discussed.
Next, the performance of the resonator systems under Spinning Reserve is demonstrated with parameter variation in the resonators (the closed-loop system is able to compensate somewhat).
This section concludes with a discussion of practical implementation issues and suggestions, and the overall results are summarized.
A single LRA can be (roughly) modeled as a linear resonator, comprising a mechanical model and an electrical model, which are coupled through the magnetic force (proportional to the current by the force constant) and the back-EMF voltage (proportional to the velocity by the back-EMF constant).
In the context of this application, we define a resonator or resonant element of the system as an actuator with translational harmonic motion used in the SAVANT to produce the vibrational output. These actuators are distinguished by a frequency, multiple frequencies, or a wide frequency band in which they have resonant behavior. When excited with oscillatory inputs at these frequencies or in these frequency ranges, the system has an amplified response. Common examples of actuators that fall into these categories are single-frequency, narrow band linear resonant actuators (LRAs), that typically have one resonant frequency, dual- or multi-mode LRAs, which have multiple resonant frequencies, and wideband LRAs and voice coil actuators, which typically have a wide frequency band to which the system has an amplified response.
In equation form, for a single LRA, LRA1, the behavior can be described by the differential equations:
Here, m1 [unit: kg] is the resonator effective sprung mass, b1 [unit: N/(m/s)] is the effective damping, k1 [N/m] is the effective stiffness, and x1 [m] is the resonator position relative to its equilibrium starting position. Dots above variables indicate their time derivative
γ1 is the actuator force constant [N/A], and i1 is the current passing through the solenoid coil in Amperes. Vin is the input voltage [V] provided by the driver circuit, R1 is the coil resistance [Ohms], L1 is the coil inductance [H], and Γ1 is the back-EMF constant [V/(m/s)].
An alternative formulation (due to the equations being linear) is to use the traditional linear, time-invariant state-space form:
Here, x=[x1, {dot over (x)}1, i1]T, A, B, C, and D are matrices. u=Vin(t)·y is the system “output”. In order to actuate the system, one could simply drive the input voltage with a drive signal. This mode of operation is referred to as open-loop, as there is no feedback or decision-making being performed by the control system. The actuator is simply driven directly with a drive signal, Vin(t), and it is up to the haptics designer to figure out what this signal needs to be. This is a comparatively simple mode of operation.
Closed-loop control can be applied to such a resonator as well, provided that feedback on at least some of the states exist. Between back-EMF and current sensing, x1, {dot over (x)}1, and i1 can all be measured or estimated and used for control.
Assuming that they are available, pole-placement based control (or some other state-feedback method) can be used to determine what the control effort (input voltage) should be, using a linear control law, Vin=−Kx, where K is a gain matrix, and we recall that x is a state vector, e.g. x=[x1, {dot over (x)}1, i1]T. In this case, since there is a single input, K=[k11, k12, k13]. These can be used to assign the poles of the matrix (A-BK), which represents the closed-loop autonomous dynamics. In this section, we assume the LRA parameters to be as follows (estimated from the behavior of a real LRA).
The control method, depending on how the components of the matrix are chosen, can be very effective, as can be seen in
While the step response test is a useful one for characterizing the performance of a feedback system, a better test in this case is tracking of a sine wave undergoing a phase shift. The sine wave undergoing a phase shift is similar to the input waveform that needs to be tracked for the SAVANT technology. In the open-loop case, one cannot specify a state to track, but this can be done in the closed-loop case.
As shown in
Input filtering is important in these systems. An extremely sharp input has very high frequency content and can have very large derivatives (theoretically infinite). Since the control effort can be acting based on the derivative of the error in addition to the error, and the physical resonator cannot respond infinitely fast, the control input should be “smoothed” in some way (this may be imperceptible to the user, but important for the control system's operation).
Consider the effect of smoothing the phase input in the prior, single LRA example: using a hyperbolic tangent (tanh) function in order to build a smoothed version has lower input power spikes than a square wave input.
As can be seen in
The mechanical model, as shown in
The following table contains example parameters used in the dual-LRA model, and this parameter set is hereafter referred to as Case 1.
The dynamics can be derived and expressed as a set of equations, which are put in the state space matrix form as in Equation 203. In this case, the states are written as z1, z2, . . . , z8 for convenience in the state space notation, with z1=xs, z2={dot over (x)}s, z3=x1, z4={dot over (x)}1, z5=x2, z6={dot over (x)}2, z7=i1, and z8=i2.
Here, the 8 by 8, A matrix represents the overall autonomous system dynamics, and the B matrix (8 by 2) represents the way that the input voltages couple into the system behavior. Solving the equation ż=Az given some initial vector z0 would give the behavior of the system without any input. It is important to note that if other combinations of these states are required as inputs or outputs, that can possibly be arranged by linear or nonlinear transformation of these states. These states are a non-unique collection of all the information required to fully describe the behavior of the linearized system.
Here we undertake a brief study to understand how and when the concept of switching from anti-phase to in-phase motion can be used advantageously with an array of two LRAs, and what sort of advantage is possible to attain. We continue the use of the same parameters as before.
Can Spinning Reserve be used analogously in LRAs? The answer is yes, it can be used to improve the response, but it is more limited in scope than in the ERM case. This is because the physics of the processes between LRAs and ERMs have some qualitative differences, so that the analogy is not perfect. Below, we demonstrate simple models to show the difference. These models differ from the full, coupled system model as it serves simply to illustrate the key differences, and therefore does not consider coupling or the electrical dynamics as they are unimportant when it comes to these points.
Considering the ERM case:
If we assume for simplicity's sake that the y coordinate is constrained in a fixed position, e.g. y=0, then we can simply consider mt{umlaut over (x)}. In the equation, mt{umlaut over (x)}=m1{dot over (θ)}12 r1 cos θ1+m2{dot over (θ)}22r2 cos θ2, if we assume the two ERMs begin out-of-phase and assuming that m1{dot over (θ)}12r1=m2{dot over (θ)}22r2 to begin with, we note that the important part to determine what happens to the acceleration z is strictly a function of θ1 and θ2. We can either speed up one, slow down one, or do both to match the relative phase to what it needs to be to achieve the desired output amplitude. Assume then, that there is a controller designed to control the phase and position of the system. The time required to converge to a given phase is based on the characteristic equation of the closed-loop system and depends on the magnitude of the transient portion of the system behavior based on how far initial conditions are from the desired states. In other words, it takes more or less energy to make a desired change based on how far the states are from where the system starts start.
In the ERM system, the practical limit on how much energy can be stored in a spinning eccentric mass is based on the maximum achievable velocity—the inertia does not really limit how much energy can be put into the system, but instead effects the rate at which this can be done.
In addition, changing the phase can be done to respond quickly to haptic demands, and so ERM SAVANT systems can generate haptic output much, much faster than using a single ERM and spinning it up.
In the LRA case, the physics are qualitatively different, and therefore not perfectly analogous to ERMs. Consider the decoupled LRA system without electrical dynamics:
For the sled mass, the total force is transmitted to the mass through the springs and the damping terms.
Fout=b2{dot over (x)}2+k2x2+b1{dot over (x)}1+k1x1 (206)
In the ERM case, energy could be stored to increase the amplitude simply by increasing m1{dot over (θ)}12r1 and m2{dot over (θ)}22r2 via increasing {dot over (θ)}1 and {dot over (θ)}2. The energy cap in the ERM case would come from the motor damping and back-EMF constants limiting the final rotational velocity.
Consider what is needed to control a given trajectory with an input F1 for LRA1-taking the Laplace transform of both sides of the LRA1 equation of motion from Equation 205,
m1s2X1−m1sx1(t0)−m1{dot over (x)}1(t0)+b1sX1−b1x1(t0)+k1X1=L[F1] (207)
Here, X1 is the Laplace transform of x1 (and is a function of the Laplace variable s), L[F1] is the Laplace transform of F1, and x1(t0) and {dot over (x)}1(t0) are the initial position and velocity. Solving for X1,
This gives the open-loop response of the LRA's position to a given input force, F1. Note the term on the right-hand side (bolded). This is the component related to the state at which the control input is applied or changed. Clearly, then, the transient behavior of the system is dependent on the initial conditions. In the case of a system operating in Spinning Reserve, the initial condition will be the result of a sinusoidal trajectory:
x1(t0)=A sin(ωt0),{dot over (x)}1(t0)=Aω cos(ωt0) (209)
Or in other words, the initial conditions are constrained relative to one another by:
The frequency, ω, is based on the resonant frequency of the device and is the frequency that F1 will drive with is as well, is a constant. Letting t0=2πn/ω+ϕ0/ω, where n is an integer representing a number of elapsed cycles, and ϕ0 being a phase variable within 0≤ϕ0<2π, the problem is converted to x1(t0)=A sin(2πn+ϕ0) and {dot over (x)}1(t0)=Aω cos (2πn+ϕ0). In other words, the initial conditions are only a function of the phase that the sinusoidal functions are at when the system is switched, ϕ0, and the amplitude of oscillation A, since the resonant frequency of the LRA is a fixed parameter.
The energy analysis is performed by using outputs of the state space model. Since input current is computed for all time, and input voltage is known for all time, then the input power as a function of time can be calculated as Pj(t)=ij(t)Vin,j(t), for each LRA (j=1,2). Total power is then Ptotal (t)=P1(t)+P2(t) In this case, the absolute values of the current and voltage are used in order to give a worst-case scenario (no regeneration). In order to evaluate the energy per event (EPE), the power must be integrated over time, i.e.
EPE=∫t
In the case of a standard haptic event, starting from rest and ending at rest, tstart is well defined. tend is dependent on the ring-down time. In the case of a haptic event using Spinning Reserve, the start time should be when the spin-up starts and the end time should be when the ring-down completes. An important additional metric may be the maximum power required during generation of a haptic event (usually during the transient period at the beginning and end of the event) to ensure that the capabilities of the power delivery system are not exceeded.
The time spent starting up the reserve should be minimized but without impacting the performance.
In this discussion, the standard test case used for comparisons between the methods will be a 100 ms haptic event. An ideal event to be recreated using the LRA combination is defined as:
Here, t0=0.1 s and t1=0.2 s. A pattern of such events will also be considered, which is similar but a repeating pattern of such bursts. Some cases are shown with 50 ms events, with to =0.05 s and t1=0.1 s.
As discussed in the section describing Spinning Reserve, the initial conditions, set by the switching phase, play an important role in the performance improvement. An important metric in the performance evaluation of a haptic device is the rise time, computed in this work as the time it takes for the force output to reach a peak that exceeds 50% of the final maximum amplitude. The amplitude of this first peak above 50% is taken to measure the “quality” of the response. Depending on the definition of performance metrics, Spinning Reserve may, or may not help . . . in the case of the amplitude of the first peak, it does.
The input phase ϕ0 at which the system is switched was swept between trials in order to do a comparison between no Spinning Reserve startup of two LRAs vs. Spinning Reserve startup. The plot in
The relationship between when the input phase at which the system is switched and different performance metrics is determined through simulation of either the nominal model of the SAVANT, or a calibrated (more precise) model of a particular SAVANT based on system identification or estimation. The relationship is then codified in a Performance-Timing table, a tabular organization of values relating the input phase and performance metrics that can be used in selecting switching time to optimize performance for a given application, based on the priority of individual performance metrics such as output force, power consumption, etc. to the designer. This information can be stored in computer memory in a tabular form, as a look-up table, or alternatively could be represented as an analytical function, or a functional approximation to an analytical solution or simulated results—these more compact representations could be used more quickly to optimize in real-time if required. These representations could take the form of any analytical expression that defines a functional relationship between a timing parameter, system parameters, and the performance metric, though practical systems could use a piecewise polynomial fit, piecewise linear fit, piecewise exponential, or other similar functions due to their ease of implementation on a microcontroller and ease of curve-fitting.
In order to understand how the behavior changes with different LRA devices, another device's performance and parameters were estimated and input into the model. These parameters were estimated from approximating the behavior of a more “modern”, cutting-edge LRA. In this case, the set of LRA parameters will be referred to as Case 2, and change to:
The Case 2 parameters are meant to approximate the behavior of an actuator somewhat like one recently produced by high-end LRA manufacturers. As can be seen in the table, the damping terms are significantly lower, and the electrical resistance has decreased as well. This amounts to an increase in the energy storage per cycle for the LRA—it should lead to an overall more energy-efficient device. The smaller mass and higher stiffness also contribute to a higher resonant frequency. The forces generated by this system differ for the same input trajectories, but the scaling is linear, so from the perspective of determining which parameters are more critical for performance improvement, the absolute values are not important. For these LRAs, a similar performance analysis was conducted for open-loop and closed-loop Spinning Reserve. Results for the open-loop case are shown in
As in the single LRA case, input filtering has little effect on the output waveform. The simplest way to demonstrated this is by performing an open-loop simulation. The dual LRA model was exercised order to demonstrate this, as can be seen in
As in the single resonator case, the Spinning Reserve input can be smoothed without much noticeable effect (this will be more important in the closed-loop, rather than open-loop case). However, the behavior is shown for the open-loop case in
The performance can be further improved if closed-loop control is employed. Note that even for a single LRA this can be improved by using techniques to actively “brake” the system, but the ring-up cannot be improved much in this manner.
Open-loop control has the disadvantage of not being able to reliably cope with changes in parameters (damping in particular) over time, or mismatch and imbalance between resonators, without some sort of calibration or tuning that adds the possibility of error. This will be illustrated clearly below
Closed-loop control has shown benefits across many fields, and includes actuation, sensing, and decision making tied together in a feedback loop. This allows for rejection of noise and other disturbances (spurious inputs) and capability to compensate for changes in system behavior over time. Qualitatively (and quantitatively) this capability to reject unwanted dynamic behavior and keep the system operating in a bounded, deterministic way, is referred to as robustness.
In addition to imparting robustness, closed-loop systems can often afford higher performance than their passive and open-loop counterparts, but at the cost of some complexity (sensors, computation, actuation) and the associated increase in energy consumption. Despite the costs, in many cases (and we believe SAVANT to be one of these cases) the closed-loop system can lead to a better overall product.
The required sensors for closed-control of the SAVANT system are relatively low cost or free. Current sensing is built into many motor drive integrated circuits and is otherwise implemented at low cost with simple amplifier circuits. The sensing of velocity and position can be done using accelerometer or back-EMF feedback (or some combination of the two) and given certain subsets of required signals, the others can be estimated, aided by the use-case of the LRA system having discrete operating times.
In terms of computation, the algorithms presented here, even if estimation algorithms are added, can be performed in a computationally efficient manner on many low-cost, low-power, modern microcontroller platforms. In addition, there are a number of microcontroller manufacturers that provide options for acceleration of such control algorithms (such as Texas Instruments' C2000 series with Control Law Accelerator functionality).
The closed-loop control architecture uses a decoupled control topology. The individual resonators are controlled to track a given desired velocity or position profiles. In the subsequent discussion, the focus is on the position control, in motion that is nominally in-phase or 180 degrees out-of-phase. One possible architecture (explored in this work) is shown in
The controllers, individually, are of the same form as for the single LRA case, with K1=[k11, k12, k13] and K2=[k21, k22, k23]. They can be computed individually, if information on each resonator's parameters is available separately. If resonators are different, the gains to achieve the same or similar response will differ. GNU Octave offers, for example, the place( ) command which can be used to place the poles of the individual matrices, though this can also be done by hand or other algorithms.
In the implementation of the model and controller together, the individual controllers are joined in an overall matrix K, which is 8 by 8.
Nominally, if the two LRAs have the same behavior (same parameters) due to being the same make and model, the same values for the gains should work. For the parameters mentioned earlier in the table, assigning the individual loop poles to −900+/−900i, and −22000 (found by some trial and error) provided the performance that is discussed below, and did not require excessive actuation voltage when used with smoothed input functions. This resulted in gains of
k11=k21=3986.125,k12=k22=9.565,k13=k23=−19.78. (214)
The matrix K is multiplied by the state vector z, so the control input is u=−Kz+Nr (since we now wish to include a reference position input). The N matrix is required for scaling. It is assumed that the units in the state vector are those in the table ([m], [m/s], [A]). If other units are required for the application, a simple scaling will suffice to account for them.
Smoothing may be important in the closed-loop case due to energy consumption and actuator saturation (input spikes required). Because actuators have practical limits on the maximum outputs (e.g. the H-bridge or other amplifier used to drive the LRA have limits on voltage), the input voltage should be kept in the appropriate range. The input design can be smoothed in order to help with this. Alternatively, the aggressiveness (how large the gains in the K matrix are) can be tuned to limit the actuation value to operating ranges.
The unsmoothed inputs comprise two sine waves, initially out-of-phase, which each change their phase at a time of 0.1 seconds, with one increasing phase by π/2 and the other decreasing its phase by the same amount, for a total difference from the initial state of π. As the initial state comprised the two shifted by π, this aligns the phase and begins the haptic pulse. At a time of 0.2 seconds, the input is shifted back to the initial, out-of-phase case. The unsmoothed inputs, components of the vector r, are shown in Equation 206. Qualitatively, the goal is to produce an output waveform that looks like a sinusoidal carrier wave constrained by an envelope function (in the most aggressive case, the envelope function is a square-edged pulse, so that the output is zero until a triggering time, then immediately follows a sinusoidal waveform, and then immediately ends and becomes zero again. We will refer to this as a burst or haptic pulse.)
r1=p sin(ω0t+θ(t))
r2=−p sin(ω0t−θ(t)) (215)
Here, u(w) is the unit step function (valued 0 if w<0, and 1 otherwise). The smoothed inputs do the same, except they are smoothed with a hyperbolic tangent function, as in Equation 207.
r1=p sin(ω0t+θs(t))
r2=−p sin(ω0t−θs(t)) (216)
The reference inputs here differ from the inputs to the open-loop system, as here they are a position to be tracked, rather than an input voltage. In addition, a scaling term is required to multiply the reference by when feeding it into the system due to the structure of the controller. This scaling constant, Nj, can be computed as:
Nj=−(Cj(Aj−BjKj)−1Bj)−1, j=1,2. (217)
In the case of the decoupled control, this is computed individually for each LRA and then used to scale the two position inputs individually. When the parameters of the two LRAs are the same, N1=N2.
The spikes are artifacts of the effect of an instantaneous change in the reference input that the system cannot respond to instantaneously—thus there is a spike in the error value, and therefore a spike in the output, since the input voltage is a function of the error.
As has been shown in this section, the closed-loop system performs better in a dynamic sense than the open-loop one, at the expense of greater energy consumption. In addition, the closed-loop method can have a more symmetric response and rapid fall time compared to the open-loop system. This can be seen in
The energy use of the Case 2 SAVANT LRA system was evaluated in order to consider the possible energy consumption benefits of a SAVANT system. First, consider the case of a single pulse, applied at the resonant frequency of the LRA, lasting 100 ms. The SAVANT architecture operating in Spinning Reserve still has to put a similar amount of energy into the system to start and stop it, and has to run for longer overall in order to “spin up” and “spin down”. It is important to note that the SAVANT has the opportunity to rapidly stop the haptic output using a closed-loop shift to anti-phase, and then could “spin down” in the anti-phase condition in a normal, unpowered ring down, with low residual output vibration. This provides an opportunity for additional energy-consumption vs. performance tradeoffs.
However, when the isolation is a short period of time, the Spinning Reserve SAVANT has the potential to outperform a system not operating in Spinning Reserve. Consider the case of a pair of bursts, separated by a time period tsep. Such a pair can be seen in
For the case not operating in Spinning Reserve, it is obvious that no matter what the length of the time period tsep is, the energy use will be constant. The version operating in Spinning Reserve has the benefit of energy storage in the mechanical elements of the system, subject to losses in the damping and the electrical resistance of the coil. It is straightforward to consider that when time period tsep grows too large, the losses grow larger than the energy saved by continuing to operate the system. Reducing the damping in the system increases this length of time that energy can be stored and overall energy consumption for the multiple-pulse pattern stays lower.
Another important factor is the relationship between the electrical losses and mechanical losses. As long as mechanical losses stay the same, the worse the electrical losses are, the longer time period tsep is that Spinning Reserve is useful for storing energy. This could be taken to mean that, for example, Spinning Reserve has more benefit in LRAs with more coil resistance, all other things being held equal, so conceivably this approach could be used to reduce the cost of a device (thinner wire, etc.)
It is important to note that this analysis can help identify trends and guidelines for design, but in order to be able to clearly identify potential savings for a given practical system the real system parameters must be clearly identified and known.
Finally, the closed-loop system has another significant advantage—it should be more robust to parameter variation between the two resonators. Consider that all prior cases had both resonators exactly the same. Now, we study what happens when one resonator has slightly more mass or damping due to manufacturing differences.
There are a number of avenues related to control methods that should further improve performance. All of them hinge on the use of some sort of feedback to shape the input waveforms, either instantaneously, or over a period of time (over a number of haptic events), and they would allow the system to improve performance.
The first method would be implementation of iterative learning control (ILC), a technique that uses repetitive waveform actuations to learn how best to create a desired output. In order to do so, an output acceleration would need to be measured. This could be used to train the system to produce better and better input transients. The chief improvements that could be realized using this method would be in transient performance metrics (improving rise time, fall time, etc.) but it could also be used over time to adjust for device wear or slow changes in operating conditions. It may be able to improve compensation for actuator mismatch, as well. ILC has substantial processing power and memory requirements and this would have to be considered carefully in selecting the microcontroller. A suitable reference would be “Linear and Nonlinear Iterative Learning Control” by Xu and Tan, published by Springer in 2003, the entire disclosure of which is hereby incorporated by reference herein.
A second method that could also be employed is the technique of extremum seeking control, which could be used offline or during a periodic calibration to determine the optimal resonant frequency to drive the system at between the two resonators. Again, some feedback mechanism detecting the output of the system such as an accelerometer would be important. This method does not have a particularly large overhead with respect to computation power. A suitable reference for this approach is that of “Real-Time Optimization via Extremum Seeking Control” by Ariyur and Krstic, the entire disclosure of which is hereby incorporated by reference herein.
A third method for improving the control algorithm is to add adaptive control. This would mostly be useful to compensate for long term drift in the behavior of the system. The value of this is not clear as LRAs tend to have good MTTF and wear characteristics.
Finally, there could be improvements to the model, including the use of hardening spring behavior or the inclusion of other forces and nonlinearities. The value of these improvements is highly dependent on the particular LRAs chosen for a given application.
Another possible benefit of a 2-LRA SAVANT is the possibility of improvement in waveform reproduction for beating-type waveforms. Linear system theory (in particular, the idea of superposition) essentially means that given two identical LRAs, if the individual inputs are u1 (t) and u2(t), there is no output difference between letting u1(t)=2 sin(ω1t) and u2(t)=2 sin(ω2t), or letting u1(t)=sin(ω1t)+sin(ω2t) and u2 (t)=sin(ω1t)+sin(ω2t). There could be advantages to using two LRAs in order to have a lower driving voltage on each—this allows trading off drive current with drive voltage. This is highly situational based on the desired beating waveform. However, if there are two devices with different resonant frequencies, if the beating frequency is close to the resonant frequency difference, then for the same input amplitudes one could see higher efficiency. In this case, having mismatched LRAs could be an advantage for beating waveform reproduction.
From an energetic perspective, if the beating-type waveform is synthesized through altering the relative phase of the LRAs, there is a potential for energy savings for a similar output. This helps to justify further experimental study for beating-type waveform synthesis.
If we accept that the combination of closed-loop control and Spinning Reserve can provide maximal benefit and/or flexibility, an ideal dual LRA SAVANT device that is capable of being controlled to achieve “spinning reserve” can be described as including a number of “features”:
Mechanical Design Features:
Electrical Design Features:
Control Algorithm Features:
The electrical design features can be divided into three categories: sensing, actuation, and the microcontroller functions (ADC, computation, and output generation).
Back-EMF sensing is a well-understood technique for LRAs and other voice coil and solenoid-like actuators and with a well-designed actuation and analog-to-digital conversion stage connected to a microcontroller is essentially a sensorless technique. This has been shown to be useful by TI in their single LRA haptic driver product lines, but notably, some sort of calibration would need to be done. This could be partially done using an external accelerometer or one built into the product that essentially would calibrate the back-EMF constant and its relationship with the true velocity.
Alternatively (or additionally) other transduction methods for position sensing could be used, either with the addition of another sensor (IR phototransistor and LED pairs are a possible option) that are relatively low cost, or potentially a Hall effect sensor (with care in timing the measurement with PWM off time), but the effective resolution of such a sensing solution would need to sufficient. It is our suggestion that back-EMF is the most promising method of position measurement.
Current measurement may not be strictly necessary, in particular because the system pole (or time constant) related to the electrical subsystem in these systems is much faster than the mechanical subsystem, and the inductance is relatively small. If the back-EMF constant is well-characterized, the current could be estimated relatively easily as a function of the coil resistance, input voltage, and back-EMF constant multiplied by the measured velocity.
The alternative is just to measure the current directly, which can be done in a number of different ways, many of them under $1.00 in BOM cost (note: in 2017 dollars). Some H-bridge ICs also offer this built-in.
For actuation, the ideal case, mathematically, would be to drive linear amplifiers from DAC outputs on a microcontroller unit to drive the LRAs in a continuous way. However, this is usually an impractical option, as it has associated with it both relatively substantial dollar and electrical efficiency costs. As such, the state of the art is to use a relatively fast-switching PWM drive through an H-Bridge or other suitable amplifier stage to approximate an analog output. It is important that the PWM switching frequency be high relative to the resonant frequencies of the LRAs, and usually two orders of magnitude or more are safe (though one can do with less). For ˜200 Hz resonant frequency LRAs, a 40 kHz PWM frequency or higher should be considered. This is not a difficult specification to achieve. For example, the DRV8837 and DRV8838 H-bridge ICs from Texas Instruments are capable of PWM switching frequencies of 250 kHz (from the datasheet).
With respect to the microcontroller, there are a number of possible requirements. First, ideally, there would be at least 6 channels of ADC with a nominal rate of around 10 kHz to be used for the basic estimation algorithm and control computations. The processor needs to be able to do fixed or floating point computation to the tune of ˜1000 operations at that 10 kHz sampling rate, so a higher-performance Cortex M4 processor e.g. ST Microelectronics STM32F3 series or STM32F4 series or similar from another vendor, or a TI C2000 series chip running at 60-80 MHz should be sufficient. The C2000 series also has the advantage of being designed more specifically for real-time control and the Control Law Accelerator would be useful for this application. An FPGA-based solution could also be used. For example, the Intel (formerly Altera) MAX10 series has analog functionality appropriate, along with substantial signal processing resources for control applications.
If it is desired to implement learning for control adjustment of calibration, the amount of memory required should not be underestimated, as ILC and other machine-learning methods have substantial memory time-series retention requirements, and memory should be maximized (100 kB+). An adaptive control method would not require as much memory but would not provide the same benefits.
Most of these components are available in small, surface-mount packages. The DRV8837 IC is only 3 mm by 3 mm, for example, simple operational amplifiers are of a similar size, and so would be an accelerometer/IMU. The computation hardware could be slightly larger (7 mm by 7 mm or 12 mm by 12 mm). But it would not be difficult or a stretch to fit such functionality in a 1 inch by 1.5 inch board, with only single-sided population. Double-sided, careful, multilayer design could make it substantially smaller but may not be necessary in a prototyping phase.
In order to generate our understanding of the performance-timing relationship for phase switching, we need the nominal (or measured, or estimated) parameters for the LRAs that can be used to model their dynamic behavior. For a simple model, these parameters include the inductance and resistance of the LRA coil, the back-EMF constant and force constants associated with the LRAs, the moving mass, spring constant, the mechanical damping, and the desired control algorithm parameters (gains). For more advanced models, the parameters may become position or state dependent, or the behavior may need to be represented with nonlinear differential equations, or both. The parameters may be derived from other quantities, such as the quality factor and the resonant frequency of the system, which are common and well-understood methods of characterizing the behavior of resonant systems.
Alternatively, the parameters can be estimated through regression or other estimation algorithms and measurement devices such as current sensors, accelerometers, etc. and examining input-output relationships.
In section VIII, we have presented the development of a coupled LRA model that allows simulation of a dual LRA SAVANT system in a parallel adjacent arrangement or a coaxial, tandem arrangement. The coaxial, tandem arrangement is preferable, as the parallel adjacent arrangement may have some small resultant torques in addition to resultant forces, though this may be acceptable for some designs. For two different parameter cases (which approximate two different currently available LRA devices) we have characterized the behavior of such a SAVANT arrangement, and in particular have investigated the operation of the SAVANT in operating modes that of phase switching and phase modulation of the relative phase angle.
We investigated a number of concepts:
In the course of these investigations, there were some key findings that we wish to highlight. First, the Spinning Reserve approach is clearly applicable to LRA systems but is not completely analogous to that in ERMs. This changes the utility and usefulness in different scenarios.
The Spinning Reserve approach can be operated in either an open-loop or closed-loop mode with the potential for slight improvement in transient performance (a few percent up to ˜5% in terms of first peak amplitude and a small improvement, up to ˜1 ms or so for tested cases, in rise time). For both open-loop and closed-loop operation, input filtering or planning is important for retaining maximum benefit without incurring a large energy cost. For closed-loop systems the fastest rise time appears to be achieved with in-phase startup, and fastest fall time with a quick shift to anti-phase, with the shifting timed correctly. In addition to phase switching between in-phase and anti-phase, phase switching can be performed between any two different relative phase angles, including those which are out-of-phase. Finally, in addition to phase switching, the method of phase modulation enables a continuous change of the combined force outputs of the LRAs for a period of time.
The energetic cost benefit for a dual SAVANT system is more interesting. The analysis of LRAs operating even in closed-loop, with input filtering, indicates the potential for significant (15%+ in some cases) savings in energy consumption for a given haptic pulse pattern, depending on the actuator. This savings may be such a reasonable amount, or may be negligible, depending on the design of the input waveform, and timing in switching between in-phase and anti-phase operating modes. Careful design of the input and control algorithm is required but is achievable.
We now turn our attention to describing example systems which embody the principles and methods we have described thus far to implement control methods with a SAVANT.
Some example configurations and arrangements are illustrated in
For a pair of example embodiments, we begin with an Input Waveform Representation (see definitions) and we use this source to produce an Output Waveform (see definitions) on a Target SAVANT (see definitions supra).
In the first embodiment, a first process computes and stores a set of Control Waveform Components (see definitions), and a second process retrieves it from data storage and plays it back on the Target SAVANT. In the second embodiment, a single process computes a set of control waveform components and plays it back on the Target SAVANT, in real-time or near real-time, minimizing the time lag between the Input Waveform Representation and the Output Waveform.
The first embodiment is illustrated in
Many haptic effects vary the output in one or more ways, such as frequency, amplitude or duration based on a person's interactions with the device during the effect. Thus some haptic effects may have different parts, and it is helpful to consider them multipart interactive haptic effects.
The second embodiment is illustrated in
The system in
Advanced Technique 1: Overdriving the LRAs in a SAVANT
If the controller is required to produce a force output very quickly, when the SAVANT LRAs are not vibrating in spinning reserve at sufficient amplitude for a phase shift maneuver, the controller can overdrive the LRAs to rapidly achieve sufficient amplitude, and then use phase switching and phase modulation for the duration of the haptic effect. For pre-computed control waveforms, two variations or versions of a Control Component Waveform set can be pre-computed, for example: a first one starting from with the LRAs in spinning reserve; and a second one starting with LRAs that are at rest.
Advanced Technique 2: Using Spinning Reserve to “Cloak” Internal State Changes of the LRAs
Just as a person having an “invisibility cloak” might allow the person to disappear from one location and subsequently reappear at a completely different location, we can use spinning reserve to do something similar with haptic effects. With a single LRA, all its vibrations are always transmitted to the end user, thus if it changes frequency and amplitude, that is apparent to the user. In contrast, a SAVANT capable of spinning reserve can use spinning reserve to stop haptic output, and then change the frequencies and amplitudes of the SAVANT's LRAs. Then the SAVANT can exit spinning reserve and produce a very different haptic effect, without providing any undesired haptic cues or other haptic sensations to the user.
The phase switching and modulation techniques and methods we have taught here adds to our repertoire for controlling SAVANTs. This collection of methods is extensible to controlling SAVANTs comprised of more than two LRAs, and in other arrangements than a Dual LRA, including, but not limited to SAVANTs which have LRAs arranged in multiple directions in a array spanning, for example, the two dimensions of a plane, or three dimensions of physical space.
Some additional examples are also illustrated. For instance,
Various reference materials are mentioned herein, and are wholly incorporated by reference here. The reference materials include the following. The white paper from Immersion Corporation, entitled “Haptics in Touchscreen Hand-Held Devices,” dated April 2012. This white paper describes in Section 3.1 four types of actuators: Eccentric Rotating Mass Actuators (ERMs), Linear Resonant Actuators (LRAs), Piezo Modules, and Electro-Active Polymer Actuators (EAPs). The SAVANT architecture can be used with all of these types of actuators, and various instantiations of each. The monograph, “Engineering Haptic Devices: A Beginner's guide for Engineers,” Thorsten A. Kern, editor, published by Springer-Verlag, © 2009.
If there is a conflict or inconsistency between material in the instant specification and any discussion in the aforementioned references, then the specification dominates. This includes any conflicts or inconsistencies with regard to definitions, concepts, jargon, use of language, terminology or the like.
Each of the vibration devices described herein according to the present disclosure, including the SAVANT integrated modules, can be used as a haptic interface or to provide haptic output for a device. Such devices may include: a game controller, a motion game controller, a handheld game console, a remote control, a handheld portable computer, a navigation device, a handheld construction tool, a handheld surgical tool, a stylus, a plush toy, a pair of eyeglasses, a wristband, a wristwatch, a belt, an armband, a leg band, a mobile phone, a tablet computer, a device for aiding a vision-impaired person, a device for aiding a hearing-impaired person, and a device for augmenting reality with haptic feedback, a personal pleasure device for providing pleasurable haptic sensations, a vibration device used for singly or in a pair for conveying telepresence, a vehicle, a steering mechanism for a vehicle (e.g., a handlebar grip of a bicycle, a handlebar grip of a motorcycle, and a steering wheel grip), a seat for a vehicle, a touch panel, etc.
Although aspects of the disclosure have been described with reference to particular embodiments, it is to be understood that these embodiments are merely illustrative of the principles and applications of the present disclosure. It is therefore to be understood that numerous modifications may be made to the illustrative embodiments and that other arrangements may be devised without departing from the spirit and scope of the present disclosure as defined by the appended claims. By way of example only, it is possible to vary aspects of the embodiments herein to some degree while achieving the advantages of the SAVANT architecture, the MOHAWK Sensor System, Gemini modules and drives, differential haptic guidance and other benefits of the disclosure.
The present invention enjoys wide industrial applicability including, but not limited to, handheld or wearable devices providing haptic sensations or feedback to a user.
This application is a U.S. National Stage application under 35 U.S.C. § 371 of International Application No. PCT/US2018/059586, filed Nov. 7, 2018, which claims the benefit of the filing date of U.S. Provisional Patent Application No. 62/583,226, filed Nov. 8, 2017, the entire disclosures of which is hereby incorporated by reference herein. This application is related to U.S. patent application Ser. No. 14/773,119, filed Sep. 4, 2015, which is a national phase entry under 35 U.S.C. § 371 of International Application No. PCT/US2014/050724, filed Aug. 12, 2014, published in English, which claims the benefit of the filing date of U.S. Provisional Patent Application Nos. 61/865,380, filed Aug. 13, 2013 and entitled System and Methods for Position Measurement Using a Single Sensor, and 61/972,596, filed Mar. 31, 2014 and entitled Differential Haptic Guidance for Personal Navigation, the entire disclosures of which are expressly incorporated by reference. This application is also related to U.S. Provisional Patent Application No. 62/046,404, filed Sep. 5, 2014 and entitled System and Methods for Driving a Single LRA with a Multi-frequency Signal, the entire disclosure of which is expressly incorporated by reference. This application is related to U.S. Provisional Patent Application No. 61/844,100, filed Jul. 9, 2013 and entitled Synchronized Array of Vibration Actuators in an Integrated Module, the entire disclosure of which is hereby expressly incorporated by reference herein. This application is related to U.S. patent application Ser. No. 13/422,453, filed Mar. 16, 2012 and entitled ASYMMETRIC AND GENERAL VIBRATION WAVEFORMS FROM MULTIPLE SYNCHRONIZED VIBRATION ACTUATORS, which is a continuation-in-part of U.S. patent application Ser. No. 13/030,663, filed Feb. 18, 2011, and entitled SYNCHRONIZED VIBRATION DEVICE FOR HAPTIC FEEDBACK, which is a continuation of U.S. application Ser. No. 11/476,436, filed Jun. 27, 2006, issued on Apr. 5, 2011 as U.S. Pat. No. 7,919,945, which claims the benefit of the filing date of U.S. Provisional Patent Application No. 60/694,468 filed Jun. 27, 2005 and entitled SYNCHRONIZED VIBRATION DEVICE FOR HAPTIC FEEDBACK, the entire disclosures of which are hereby expressly incorporated by reference herein. This application is also related to U.S. Provisional Patent Application No. 61/453,739, filed Mar. 17, 2011 and entitled ASYMMETRIC AND GENERAL VIBRATION WAVEFORMS FROM MULTIPLE SYNCHRONIZED VIBRATION ACTUATORS, and of U.S. Provisional Patent Application No. 61/511,268, filed Jul. 25, 2011 and entitled ASYMMETRIC AND GENERAL VIBRATION WAVEFORMS FROM MULTIPLE SYNCHRONIZED VIBRATION ACTUATORS, the entire disclosures of which are hereby expressly incorporated by reference herein. And this application is also related to U.S. Provisional Patent Application No. 61/607,092, filed Mar. 6, 2012 and entitled SYNCHRONIZED ARRAY OF VIBRATION ACTUATORS IN A NETWORK TOPOLOGY, the entire disclosure of which is hereby expressly incorporated by reference herein.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/US2018/059586 | 11/7/2018 | WO | 00 |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO2019/094440 | 5/16/2019 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
6023116 | Kikuchi | Feb 2000 | A |
6641480 | Murzanski | Nov 2003 | B2 |
6864877 | Braun | Mar 2005 | B2 |
6883373 | Dyer | Apr 2005 | B2 |
7182691 | Schena | Feb 2007 | B1 |
7209118 | Shahoian | Apr 2007 | B2 |
7446752 | Goldenberg | Nov 2008 | B2 |
7919945 | Houston | Apr 2011 | B2 |
8981682 | Delson | Mar 2015 | B2 |
9358689 | Ramsay | Jun 2016 | B2 |
9792501 | Maheriya et al. | Oct 2017 | B1 |
20040147318 | Shahoian | Jul 2004 | A1 |
20060290662 | Houston | Dec 2006 | A1 |
20110109198 | Asada et al. | May 2011 | A1 |
20120232780 | Delson | Sep 2012 | A1 |
20150081110 | Houston et al. | Mar 2015 | A1 |
20150227204 | Gipson et al. | Aug 2015 | A1 |
20160284173 | Ramsay | Sep 2016 | A1 |
20160334872 | Kim et al. | Nov 2016 | A1 |
20170133966 | Khan et al. | May 2017 | A1 |
20190385420 | Khoshkava | Dec 2019 | A1 |
Number | Date | Country |
---|---|---|
20170015405 | Feb 2017 | KR |
WO-2013134388 | Sep 2013 | WO |
2017189928 | Nov 2017 | WO |
Entry |
---|
International Search Report and Written Opinion for Application No. PCT /US2018/059586 dated Mar. 11, 2019. |
Extended European Search Report for corresponding EP Patent Application No. 18875835.3 dated Jul. 13, 2021, 8 pp. |
Number | Date | Country | |
---|---|---|---|
20200356173 A1 | Nov 2020 | US |
Number | Date | Country | |
---|---|---|---|
62583226 | Nov 2017 | US |