Three-dimensional position calibration of audio sensors and actuators on a distributed computing platform
First Claim
Patent Images
1. A method comprising:
- an actuator of a first computing device generating an acoustic signal, wherein a time-varying delay occurs between when the first computing device issues a command to generate the acoustic signal and when the actuator generates the acoustic signal, the time-varying delay at least due to time-varying processor load of the first computing device;
transmitting, with the first computing device, a timestamp indicating when the first computing device issued the command to generate the acoustic signal;
a sensor of a second computing device receiving the acoustic signal;
generating an estimate of a time for the acoustic signal to travel from the actuator of the first computing device to the sensor of the second computing device based on the timestamp indicating when the first computing device issued the command to generate the acoustic signal, wherein the sensor of the second computing device and actuator of the first computing device are unsynchronized;
a third computing device computing, based on the time estimate of the time for the acoustic signal to travel from the actuator of the first computing device to the sensor of the second computing device, a physical location of at least one of a set including the sensor of the second computing device and the actuator of the first computing device, wherein computing the physical location of at least one of the set including the sensor of the second computing device and the actuator of the first computing device includes jointly estimating, using a nonlinear least squares (NLS) computation, (i) the physical location of the at least one of the set including the sensor of the second computing device and the actuator of the first computing device and (ii) the time-varying delay between when the first computing device issues the command to generate the acoustic signal and when the actuator generates the acoustic signal;
a sensor of a fourth computing device receiving the acoustic signal; and
generating a second an estimate of a time for the acoustic signal to travel from the actuator of the first computing device to the sensor of the fourth computing device based on the timestamp indicating when the first computing device issued the command to generate the acoustic signal, wherein the actuator of the first computing device and the sensor of the fourth computing device are unsynchronized; and
the third computing device computing, based on the second estimate of the time for the acoustic signal to travel from the actuator of the first computing device to the sensor of the fourth computing device, a physical location of at least one of a set including the sensor of the fourth computing device and the actuator of the first computing device, wherein computing the physical location of at least one of the set including the sensor of the fourth computing device and the actuator of the first computing device includes jointly estimating, using the NLS computation, (i) the physical location of the at least one of the set including the sensor of the fourth computing device and the actuator of the first computing device and (ii) the time-varying delay between when the first computing device issues the command to generate the acoustic signal and when the actuator generates the acoustic signal.
3 Assignments
0 Petitions
Accused Products
Abstract
A first computing device transmitting a wireless signal to a second and third computing devices, the signal requesting an actuator of the second computing device generate an acoustic signal to be received by a sensor of the third computing device, wherein the actuator and sensor are unsynchronized. The first computing device computes, based on an time estimate for the acoustic signal to travel from the actuator of the second computing device to the sensor of the third computing device, a physical location of the actuator of the second computing device and the sensor of the third computing device.
-
Citations
90 Claims
-
1. A method comprising:
-
an actuator of a first computing device generating an acoustic signal, wherein a time-varying delay occurs between when the first computing device issues a command to generate the acoustic signal and when the actuator generates the acoustic signal, the time-varying delay at least due to time-varying processor load of the first computing device; transmitting, with the first computing device, a timestamp indicating when the first computing device issued the command to generate the acoustic signal; a sensor of a second computing device receiving the acoustic signal; generating an estimate of a time for the acoustic signal to travel from the actuator of the first computing device to the sensor of the second computing device based on the timestamp indicating when the first computing device issued the command to generate the acoustic signal, wherein the sensor of the second computing device and actuator of the first computing device are unsynchronized; a third computing device computing, based on the time estimate of the time for the acoustic signal to travel from the actuator of the first computing device to the sensor of the second computing device, a physical location of at least one of a set including the sensor of the second computing device and the actuator of the first computing device, wherein computing the physical location of at least one of the set including the sensor of the second computing device and the actuator of the first computing device includes jointly estimating, using a nonlinear least squares (NLS) computation, (i) the physical location of the at least one of the set including the sensor of the second computing device and the actuator of the first computing device and (ii) the time-varying delay between when the first computing device issues the command to generate the acoustic signal and when the actuator generates the acoustic signal; a sensor of a fourth computing device receiving the acoustic signal; and generating a second an estimate of a time for the acoustic signal to travel from the actuator of the first computing device to the sensor of the fourth computing device based on the timestamp indicating when the first computing device issued the command to generate the acoustic signal, wherein the actuator of the first computing device and the sensor of the fourth computing device are unsynchronized; and the third computing device computing, based on the second estimate of the time for the acoustic signal to travel from the actuator of the first computing device to the sensor of the fourth computing device, a physical location of at least one of a set including the sensor of the fourth computing device and the actuator of the first computing device, wherein computing the physical location of at least one of the set including the sensor of the fourth computing device and the actuator of the first computing device includes jointly estimating, using the NLS computation, (i) the physical location of the at least one of the set including the sensor of the fourth computing device and the actuator of the first computing device and (ii) the time-varying delay between when the first computing device issues the command to generate the acoustic signal and when the actuator generates the acoustic signal. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method comprising:
-
a first computing device transmitting a wireless signal to a second computing device and a third computing devices device, the signal requesting an actuator of the second computing device generate an acoustic signal to be received by a sensor of the third computing device, wherein the actuator and sensor are unsynchronized at least due to a time-varying delay occurs between when the second computing device issues a command to generate the acoustic signal and when the actuator generates the acoustic signal, the time-varying delay at least due to time-varying processor load of the second computing device; and the first computing device computing, based on a time estimate for the acoustic signal to travel from the actuator of the second computing device to the sensor of the third computing device, a physical location of at least one of a set including the actuator of the second computing device and the sensor of the third computing device; wherein computing the physical location of at least one of the set including the actuator of the second computing device and the sensor of the third computing device includes jointly estimating, using a nonlinear least squares (NLS) computation, (i) the at least one of the set including the actuator of the second computing device and the sensor of the third computing device and (ii) the time-varying delay between when the second computing device issues the command to generate the acoustic signal and when the actuator generates the acoustic signal. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A non-transitory machine readable medium having stored thereon a set of instructions, which when executed, cause the machine to perform a method comprising of:
-
an actuator of a first computing device generating an acoustic signal, wherein a time-varying delay occurs between when the first computing device issues a command to generate the acoustic signal and when the actuator generates the acoustic signal, the time-varying delay at least due to time-varying processor load of the first computing device; transmitting, with the first computing device, a timestamp indicating when the first computing device issued the command to generate the acoustic signal; a sensor of a second computing device receiving the acoustic signal; generating an estimate of a time for the acoustic signal to travel from the actuator of the first computing device to the sensor of the second computing device based on the timestamp indicating when the first computing device issued the command to generate the acoustic signal, wherein the sensor of the second computing device and the actuator of the first computing device are unsynchronized; and a third computing device computing, based on the time estimate of the time for the acoustic signal to travel from the actuator of the first computing device to the sensor of the second computing device, a physical location of at least one of a set including the sensor of the second computing device and the actuator of the first computing device, wherein computing the physical location of at least one of the set including the sensor of the second computing device and the actuator of the first computing device includes jointly estimating, using a nonlinear least squares (NLS) computation, (i) the at least one of the set including the sensor of the second computing device and the actuator of the first computing device and (ii) the time-varying delay between when the first computing device issues the command to generate the acoustic signal and when the actuator generates the acoustic signal. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27, 28, 29)
-
-
30. A non-transitory machine readable medium having stored thereon a set of instructions, which when executed, cause the machine to perform a method comprising of:
-
a first computing device transmitting a wireless signal to a second computing device and a third computing devices device, the signal requesting an actuator of the second computing device generate an acoustic signal to be received by a sensor of the third computing device, wherein the actuator and sensor are unsynchronized at least due to a time-varying delay occurs between when the second computing device issues a command to generate the acoustic signal and when the actuator generates the acoustic signal, the time-varying delay at least due to time-varying processor load of the second computing device; and the first computing device computing, based on a time estimate for the acoustic signal to travel from the actuator of the second computing device to the sensor of the third computing device, a physical location of at least one of a set including the actuator of the second computing device and the sensor of the third computing device; wherein computing the physical location of at least one of the set including the actuator of the second computing device and the sensor of the third computing device includes jointly estimating, using a nonlinear least squares (NLS) computation, (i) the at least one of the set including the actuator of the second computing device and the sensor of the third computing device and (ii) the time-varying delay between when the second computing device issues the command to generate the acoustic signal and when the actuator generates the acoustic signal. - View Dependent Claims (31, 32, 33, 34, 35, 36, 37, 38, 39)
-
-
40. A method comprising:
-
causing an actuator of a first computing device to generate a first acoustic signal; receiving a first timestamp indicating when the first computing device issued a command to generate the first acoustic signal, wherein a first time-varying delay occurs between when the first computing device issues the command to generate the first acoustic signal and when the actuator of the first computing device generates the first acoustic signal, the first time-varying delay at least due to time-varying processor load of the first computing device; receiving a first time of arrival signal from a second computing device having a sensor, wherein the first time of arrival signal is indicative of a time for the first acoustic signal to travel from the actuator of the first computing device to the sensor of the second computing device, wherein the actuator of the first computing device and the sensor of the second computing device are unsynchronized at least due to the first time-varying delay; receiving a second time of arrival signal from a third computing device having a sensor, wherein the second time of arrival signal is indicative of a time for the first acoustic signal to travel from the actuator of the first computing device to the sensor of the third computing device, wherein the actuator of the first computing device and the sensor of the third computing device are unsynchronized at least due to the first time-varying delay; computing, based on i) the first time of arrival signal and ii) the first timestamp, at least one of a physical location of the sensor of the second computing device or a physical location of the actuator of the first computing device, wherein computing at least one of the physical location of the sensor of the second computing device or the physical location of the actuator of the first computing device includes jointly estimating, using a nonlinear least squares (NLS) computation, (i) the at least one of the physical location of the sensor of the second computing device or the physical location of the actuator of the first computing device and (ii) the first time-varying delay between when the first computing device issues the command to generate the first acoustic signal and when the actuator of the first computing device generates the first acoustic signal; and computing, based on i) the second time of arrival signal and ii) the first timestamp, at least one of a physical location of the sensor of the third computing device or the physical location of the actuator of the actuator of the first computing device, wherein computing at least one of the physical location of the sensor of the third computing device or the physical location of the actuator of the first computing device includes jointly estimating, using the NLS computation, (i) the at least one of the physical location of the sensor of the third computing device or the physical location of the actuator of the first computing device and (ii) the first time-varying delay between when the first computing device issues the command to generate the first acoustic signal and when the actuator of the first computing device generates the first acoustic signal. - View Dependent Claims (41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51)
-
-
52. A method comprising:
-
causing an actuator of a first computing device to generate a first acoustic signal, the first acoustic signal to be received by a sensor of a second computing device, wherein the actuator of the first computing device and the sensor of the second computing device are unsynchronized at least due to a first time-varying delay that occurs between when the first computing device issues a command to generate the first acoustic signal and when the actuator of the first computing device generates the first acoustic signal, the first time-varying delay at least due to time-varying processor load of the first computing device; computing at the third computing device, based on a time estimate for the first acoustic signal to travel from the actuator of the first computing device to the sensor of the second computing device, at least one of a physical location of the actuator of the first computing device or a physical location of the sensor of the second computing device, wherein computing at least one of the physical location of the actuator of the first computing device or the physical location of the sensor of the second computing device includes jointly estimating, using a nonlinear least squares (NLS) computation, (i) the at least one of the physical location of the actuator of the first computing device or the physical location of the sensor of the second computing device and (ii) the first time-varying delay between when the first computing device issues the command to generate the first acoustic signal and when the actuator of the first computing device generates the first acoustic signal; wherein the time estimate for the first acoustic signal to travel from the actuator of the first computing device to the sensor of the second computing device is based on (i) a first timestamp, transmitted by the first computing device, that indicates when the first computing device issues the command to generate the first acoustic signal, and (ii) a time when the second computing device receives the first acoustic signal. - View Dependent Claims (53, 54, 55, 56, 57, 58, 59)
-
-
60. A first computing device comprising:
-
a communication device; a processor configured to; cause an actuator of a second computing device to generate a first acoustic signal, wherein a first time-varying delay occurs between when the second computing device issues a command to generate the first acoustic signal and when the actuator of the second computing device generates the first acoustic signal, the first time-varying delay at least due to time-varying processor load of the second computing device, receive a first time of arrival signal from a third computing device having a sensor, wherein the first time of arrival signal is indicative of a time for the first acoustic signal to travel from the actuator of the second computing device to the sensor of the third computing device, wherein the actuator of the second computing device and the sensor of the third computing device are unsynchronized at least due to the first time-varying delay that occurs between when the second computing device issues the command to generate the first acoustic signal and when the actuator of the second computing device generates the first acoustic signal, receive a second time of arrival signal from a fourth computing device having a sensor, wherein the second time of arrival signal is indicative of a time for the first acoustic signal to travel from the actuator of the second computing device to the sensor of the fourth computing device, wherein the actuator of the second computing device and the sensor of the fourth computing device are unsynchronized at least due to the first time-varying delay that occurs between when the second computing device issues the command to generate the first acoustic signal and when the actuator of the second computing device generates the first acoustic signal, compute, based on i) the first time of arrival signal and ii) an estimate of a time at which the first acoustic signal is emitted from the actuator of the second computing device, at least one of a physical location of the actuator of the second computing device or a physical location of the sensor of the third computing device, wherein computing at least one of the physical location of the actuator of the second computing device or the physical location of the sensor of the third computing device includes jointly estimating, using a nonlinear least squares (NLS) computation, (i) the at least one of the physical location of the actuator of the second computing device or the physical location of the sensor of the third computing device and (ii) the first time-varying delay between when the second computing device issues the command to generate the first acoustic signal and when the actuator of the second computing device generates the first acoustic signal, and compute, based on i) the second time of arrival signal and ii) the estimate of the time at which the first acoustic signal is emitted from the actuator of the second computing device, at least one of the physical location of the actuator of the actuator of the second computing device or a physical location of the sensor of the fourth computing device, wherein computing at least one of the physical location of the actuator of the second computing device or the physical location of the sensor of the fourth computing device includes jointly estimating, using the NLS computation, (i) the at least one of the physical location of the actuator of the second computing device or the physical location of the sensor of the fourth computing device and (ii) the first time-varying delay between when the second computing device issues the command to generate the first acoustic signal and when the actuator of the second computing device generates the first acoustic signal. - View Dependent Claims (61, 62, 63, 64, 65, 66, 67, 68, 69, 70)
-
-
71. A first computing device comprising:
-
a communication device; a processor configured to; cause an actuator of a second computing device to generate a first acoustic signal, the first acoustic signal to be received by a sensor of a third computing device, wherein the actuator of the second computing device and the sensor of the third computing device are unsynchronized at least due to a first time-varying delay that occurs between when the second computing device issues a command to generate the first acoustic signal and when the actuator of the second computing device generates the first acoustic signal, the first time-varying delay at least due to time-varying processor load of the second computing device, and compute, based on a time estimate for the first acoustic signal to travel from the actuator of the second computing device to the sensor of the third computing device, at least one of a physical location of the actuator of the second computing device or a physical location of the sensor of the third computing device, wherein computing at least one of the physical location of the actuator of the second computing device or the physical location of the sensor of the third computing device includes jointly estimating, using a nonlinear least squares (NLS) computation, (i) the at least one of the physical location of the actuator of the second computing device or the physical location of the sensor of the third computing device and (ii) the first time-varying delay between when the second computing device issues the command to generate the first acoustic signal and when the actuator of the second computing device generates the first acoustic signal; wherein the time estimate for the first acoustic signal to travel from the actuator of the second computing device to the sensor of the third computing device is based on (i) a first timestamp, transmitted by the second computing device, that indicates when the second computing device issues the command to generate the first acoustic signal, and (ii) a time when the third computing device receives the first acoustic signal. - View Dependent Claims (72, 73, 74, 75, 76, 77, 78)
-
-
79. A system comprising:
-
a first computing device having an actuator, wherein the first computing device is configured to cause the actuator of the first computing device to generate a first acoustic signal, wherein a first time-varying delay occurs between when the first computing device issues a command to generate the first acoustic signal and when the actuator of the first computing device generates the first acoustic signal, the first time-varying delay at least due to time-varying processor load of the first computing device; a second computing device having a sensor; wherein the sensor of the second computing device and the actuator of the first computing device are unsynchronized at least due to the first time-varying delay that occurs between when the first computing device issues the command to generate the first acoustic signal and when the actuator of the first computing device generates the first acoustic signal; a third computing device; a fourth computing device having a sensor; wherein the sensor of the fourth computing device and the actuator of the first computing device are unsynchronized at least due to the first time-varying delay that occurs between when the first computing device issues the command to generate the first acoustic signal and when the actuator of the first computing device generates the first acoustic signal; wherein the third computing device is communicatively coupled to the first computing device, the second computing device and the fourth computing device; wherein the first computing device is configured to transmit a first timestamp that indicates when the first computing device issued the command to generate the first acoustic signal; wherein one of the second computing device or the third computing device is configured to generate, based on the first timestamp, a first time estimate for the first acoustic signal to travel from the actuator of the first computing device to the sensor of the second computing device; wherein the third computing device is configured to compute, based on the first time estimate, at least one of a physical location of the sensor of the second computing device or a physical location of the actuator of the first computing device, wherein computing at least one of the physical location of the sensor of the second computing device or the physical location of the actuator of the first computing device includes jointly estimating, using a nonlinear least squares (NLS) computation, (i) the at least one of the physical location of the sensor of the second computing device or the physical location of the actuator of the first computing device, and (ii) the first time-varying delay between when the first computing device issues the command to generate the first acoustic signal and when the actuator of the first computing device generates the first acoustic signal; wherein one of the fourth computing device or the third computing device is configured to generate, based on the first timestamp, a second time estimate for the first acoustic signal to travel from the actuator of the first computing device to the sensor of the fourth computing device; and wherein the third computing device is configured to compute, based on the second time estimate, at least one of a physical location of the sensor of the fourth computing device or the physical location of the actuator of the first computing device, wherein computing at least one of the physical location of the sensor of the fourth computing device or the physical location of the actuator of the first computing device includes jointly estimating, using the nonlinear least squares (NLS) computation, (i) the at least one of the physical location of the sensor of the fourth computing device or the physical location of the actuator of the first computing device, and (ii) the first time-varying delay between when the first computing device issues the command to generate the first acoustic signal and when the actuator of the first computing device generates the first acoustic signal. - View Dependent Claims (80, 81, 82, 83, 84, 85)
-
-
86. A first computing device comprising:
-
a wireless communication device; a processor configured to; cause the wireless communication device to transmit a wireless signal to a second computing device and a third computing device, the wireless signal requesting an actuator of the second computing device to generate a first acoustic signal to be received by a sensor of the third computing device, wherein the actuator of the second computing device and the sensor of the third computing device are unsynchronized at least due to a first time-varying delay that occurs between when the second computing device issues a command to generate the first acoustic signal and when the actuator of the second computing device generates the first acoustic signal, the first time-varying delay at least due to time-varying processor load of the second computing device, and compute, based on a time estimate for the first acoustic signal to travel from the actuator of the second computing device to the sensor of the third computing device, at least one of a physical location of the actuator of the second computing device or a physical location of the sensor of the third computing device, wherein computing at least one of the physical location of the actuator of the second computing device or the physical location of the sensor of the third computing device includes jointly estimating, using a nonlinear least squares (NLS) computation, (i) the at least one of the physical location of the actuator of the second computing device or the physical location of the sensor of the third computing device, and (ii) the first time-varying delay between when the second computing device issues the command to generate the first acoustic signal and when the actuator of the second computing device generates the first acoustic signal; wherein the time estimate for the first acoustic signal to travel from the actuator of the second computing device to the sensor of the third computing device is based on (i) a first timestamp that indicates when the second computing device issues the command to generate the first acoustic signal, and (ii) a time when the third computing device receives the first acoustic signal. - View Dependent Claims (87, 88, 89, 90)
-
Specification