Mid-air haptic generation analytic techniques
Mid-air ultrasonic haptic devices operate by manipulating an acoustic field to produce a haptic effect on a user. Addressing mid-air haptic devices which abstracts the most basic acoustic fundamental from that of a point to a “primitive” provides tools to adjust shape, location, and amplitude. A primitive can be designed to provide a haptic effect at the location targeted, removing the requirement of the designer needing to understand methods to create a haptic sensation. Further, a control scheme for a set of dynamic acoustic phased-array solvers is presented which enables a distributed system to compensate for unwanted time-of-flight artifacts at low cost. This is achieved by recursively subdividing the system into subtrees of phased-array nodes whose output can be estimated and the desired field drive distributed amongst the nodes. Timings of the desired field drive requests submitted to individual phased-array node inputs are then modified to compensate for the differences between wave coalescence/convergence and wave emission times, the time-of-flight, resulting in a more accurate acoustic field.
1 . A device comprising:
first acoustic transducer and a second acoustic transducers for creating an acoustic field; and
circuitry configured to:
receive a primitive based on a spatiotemporal modulation circle for manipulating the acoustic field using the first acoustic transducer and the second acoustic transducer, wherein the primitive comprises:
at least one coordinate locations with associated amplitude,
at least one transform, and
at least one acoustic solver.
2 . The device of claim 1 , wherein the primitive comprises an amplitude modulation point.
3 . The device of claim 1 , wherein the primitive comprises a set of sequential points that draw a circle.
4 . The device of claim 1 , wherein the at least one transform comprises animation transforms and stored transforms.
5 . The device of claim 4 , wherein the animation transforms are applied to their associated base transform at regular intervals.
6 . The device of claim 5 , wherein the animation transforms comprise affine transforms.
7 . The device of claim 4 , wherein the at least one transform generates outputs in 3 dimensions.
8 . The device of claim 1 , further comprising a ring buffer for a queue that maps onto behavior of the plurality of acoustic transducers along a timeline when a user is actively streaming data to the device, thereby creating past states.
9 . The device of claim 8 , further comprising future states defining future behavior of the device that are added incrementally to the ring buffer at a write index.
10 . The device of claim 9 , further comprising present states created by interpolated the future states with past states.
11 . The device of claim 1 , further comprising a ring buffer for a queue that maps onto behavior of the plurality of acoustic transducers along a timeline, thereby creating past states.
12 . The device of claim 11 , further comprising new state data generated by extrapolating desired future behavior of the device from the past states.
13 . The device of claim 12 , wherein the new state data is extrapolated when a user is not actively streaming data to the device.
14 . A method comprising:
receiving a primitive based on a spatiotemporal modulation circle, wherein the primitive comprises at least one coordinate location with associated amplitude; at least one transform; and
at least one acoustic solver; and
driving a first acoustic transducer and a second acoustic transducer according to the primitive to generate an acoustic field.
15 . The method of claim 14 , wherein the primitive comprises a set of sequential points that draw a circle.
16 . The method of claim 14 , wherein the at least one transform comprises animation transforms and stored transforms.
17 . The method of claim 16 , wherein the animation transforms are applied to their associated base transform at regular intervals.
18 . The method of claim 16 , wherein the animation transforms comprise affine transforms.
19 . The method of claim 16 , wherein the at least one transform generates outputs in 3 dimensions.
20 . The method of claim 14 , further comprising a ring buffer for a queue that maps onto behavior of the plurality of acoustic transducers along a timeline when a user is actively streaming data to a device, thereby creating past states.