SYSTEM AND METHOD FOR ULTRASOUND DISTANCE DETECTION
A method of ultrasound distance detection includes identifying an ultrasound echo from an object and determining a distance between a mobile platform and the object based upon the ultrasound echo. Identifying the ultrasound echo includes dividing a sonic waveform received by the mobile platform into packets, filtering the packets using at least a threshold packet bandwidth to identify one or more candidate packets that are not noise, and identifying the ultrasound echo from the one or more candidate packets. The threshold packet bandwidth is multiple of an average width of previously known echoes.
This application is a continuation of application Ser. No. 15/169,449, filed on May 31, 2016, which is a continuation of PCT Patent Application No. PCT/CN2015/083638, filed on Jul. 9, 2015, the entire contents of both of which are incorporated herein by reference.
COPYRIGHT NOTICEA portion of the disclosure of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever.
FIELDThe disclosed embodiments relate generally to ultrasound distance detection and more particularly, but not exclusively, to systems and methods for ultrasound distance detection on a mobile platform.
BACKGROUNDUltrasound is a useful technique for ranging, or the measurement of distance to an object of interest, and is especially important for environmental sensing on mobile platforms. Ultrasound distance detection involves an ultrasound wave that is transmitted from an ultrasound source to the object of interest. The ultrasound wave reflects from the object of interest and is transmitted back to the ultrasound source. Since sound has a relatively constant velocity, a travel time for the ultrasound pulse to reflect from the object of interest and return to the ultrasound source is directly proportional to the distance between the source and the object. Thus, by measuring the travel time of the ultrasound pulse, the distance can be determined.
Since distance detection requires accurate identification of a reflected ultrasound wave (or “echo”), the presence of background noise can lead to misidentification of the echo and faulty distance detection. The problem of background noise is especially acute for mobile platforms that rely on mechanical motion—for example, propellers on unmanned aerial vehicles (UAVs)—for movement, since such mechanical motions can cause strong high-frequency sounds that are detected with the echo. Resulting waveforms received by the ultrasound transceiver can therefore be difficult to de-convolute. Existing techniques for noise reduction often fail under such circumstances.
In view of the foregoing, there is a need for systems and methods that more robustly separate signal from noise for ultrasound distance detection.
It should be noted that the figures are not drawn to scale and that elements of similar structures or functions are generally represented by like reference numerals for illustrative purposes throughout the figures. It also should be noted that the figures are only intended to facilitate the description of the embodiments. The figures do not illustrate every aspect of the described embodiments and do not limit the scope of the present disclosure.
DETAILED DESCRIPTION OF THE EMBODIMENTSThe present disclosure sets forth systems and methods for reducing noise in distance detection using ultrasound, overcoming the disadvantages of prior systems and methods.
Turning now to
Exemplary mobile platforms 200 include, but are not limited to, bicycles, automobiles, trucks, ships, boats, trains, helicopters, aircraft, various hybrids thereof, and the like. In some embodiments, the mobile platform 200 is an unmanned aerial vehicle (UAV). Colloquially referred to as “drones,” UAVs are aircraft without a human pilot onboard the vehicle whose flight is controlled autonomously or by a remote pilot (or sometimes both). UAVs are now finding increased usage in civilian applications involving various aerial operations, such as data-gathering or delivery. The present control systems and methods are suitable for many types of UAVs including, without limitation, quadcopters (also referred to a quadrotor helicopters or quad rotors), single rotor, dual rotor, trirotor, hexarotor, and octorotor rotorcraft UAVs, fixed wing UAVs, and hybrid rotorcraft-fixed wing UAVs. In some embodiments, the dynamic model 260 can be customized to the type and/or model of the mobile platform 200. For example, quadcopter UAVs have significant lateral and vertical movement, and the dynamic model 260 of the quadcopter UAVs can reflect such movement properties. In the embodiments, the UAV can include the ultrasound distance-detection system 100 or components thereof.
Turning now to
As shown in
As shown in
The ultrasound distance-detection system 100 can include one or more input/output devices 140. Exemplary input/output devices 140 can include buttons, a keyboard, a keypad, a trackball, displays, and/or a monitor.
Turning now to
The ultrasound receiver 160 functions similarly to the ultrasound transmitter 150 but in reverse, converting received ultrasound echoes into an electrical signals or other form of energy. Once converted into an electrical signal, information regarding the received ultrasound signal embedded in the electrical signal can be communicated to the processor 120 (shown in
The frequency of emitted and received ultrasound depends on the desired range of detection because the frequency is inversely proportional to the distance that can be sensed using the ultrasound. In some embodiments, the ultrasound transmitter 150 can operate at a frequency between 20 kHz and 200 kHz—for example, between 25 kHz and 150 kHz, 50 kHz and 100 kHz, 60 kHz and 80 kHz, or about 75 kHz. In some embodiments where ultrasound is used for short-range distance-detection applications, the frequency can exceed 200 kHz, and may be as high as 300 kHz, 400 kHz, 500 kHz, 1 MHz, or even higher. The frequency or frequency range of the ultrasound transmitter 150 can advantageously be tuned to the desired detection range. Furthermore, the frequency of the ultrasound transmitter 150 can be adjusted depending on an acoustic reflectivity of the object of interest 250, an angle of the surface of the object of interest 250 relative to the incident ultrasound pulse, and/or other factors that affect the transmission and reflection of ultrasound.
As shown in
However, the difficulty with this approach to distance detection is that the relevant ultrasound echo 302 can be hard to distinguish from noise 303 as illustrated in
Turning now to
Turning now to
As depicted in
Turning now to
At 602, the packets 550 of the waveform 500 can be filtered by width, which takes units of time. A threshold width can be established, and packets 550 having a width exceeding the threshold can be disregarded as noise. The threshold value can be a predetermined value and/or can be dynamically determined based, for example, on prior known echoes 302. In some embodiments, the threshold value can be determined as a multiple of an average (for example, a running average) width of previously known echoes 302. The multiple used for the threshold can be, for example, 1, 1.2, 1.5, 1.8, 2.0, 3.0, 4.0, or greater. As an illustrative example, if the average width of an echo packet is 0.1 milliseconds and the threshold multiple is 2.0, then all packets having a width of 0.2 milliseconds or more will be discarded as noise as a result of applying a width filter.
At 603, the packets 550 can be filtered using an amplitude threshold (or, equivalently, a height threshold). Any packets 550 having an amplitude that is less than the amplitude threshold can be disregarded as noise. The threshold value can be a predetermined value and/or can be dynamically determined based on prior known echoes 302. In some embodiments, the threshold value can be determined as a fraction of an average (for example, a running average) amplitude of previously known echoes 302. The fraction used for the amplitude threshold can be, for example, 0.3, 0.5, 0.7, 0.8, or greater.
Here, the order in which the width filter at 602 and the amplitude filter at 603 are applied is flexible and can be configured as needed. In some embodiments, the width filter is applied prior to the amplitude filter. In other embodiments, the amplitude filter is applied prior to the width filter. In some embodiments, the filters are not applied sequentially, but considered together. For example, a tall packet 550A can have a less restrictive criterion for width selection; whereas, a short packet 550B can have a more restrictive criterion for width selection. Similarly, a narrow packet 550C can have a less restrictive criterion for height selection, whereas a wide packet 550D can have more restrictive criterion for height selection. In some embodiments, an area (which accounts for height and width) of the packet 550 can be a factor in the filter process. For example, packets 550 having an area that is less than a predetermined threshold value can be discarded as noise.
Turning now to
Filtering by width and/or amplitude can be applied prior to the filtering of the waveform 500 using motion estimation, as a form of pre-processing of the waveform 500. Alternatively and/or additionally, the filtering by width and/or amplitude can be performed after filtering of the waveform 500 using motion estimation. Stated somewhat differently, the filtering of the method 600 can be applied as pre-processing, post-processing, or both.
Turning now to
Turning now to
Accordingly, at 901, an aftershock waveform 910 can be determined. The ultrasound transmitter 150 can be operated under reduced echo and/or reduced noise conditions (for example, in a large sound-proof room). Under such conditions, the waveform 500 received by the ultrasound receiver 160 can be a good estimate for the aftershock waveform 910. The aftershock waveform 910, as estimated, can be recorded and stored in a memory 130. In some embodiments, the timing of the aftershock waveform 910 relative to a corresponding emission of the ultrasound wave 310 can be recorded and stored in the memory 130.
At 902, at the time of operation of the ultrasound distance-detection system 100, the aftershock waveform 910 can be retrieved from the memory 130 and subtracted from the waveform 500 received by the ultrasound receiver 160. Subtracting the aftershock waveform 910 is, in some embodiments, based on the timing of the aftershock waveform 910. For example, if the aftershock waveform 910 is recorded at 10 milliseconds after generation of the initial ultrasound wave, then the aftershock waveform 910 can be subtracted from subsequently received waveforms 500 at 10 milliseconds, as well.
The method 900 for aftershock waveform removal can be applied prior to the filtering of the waveform 500 using a dynamic model 260, as form of pre-processing of the waveform 500. Alternatively and/or additionally, the aftershock waveform removal steps can be performed after filtering of the waveform 500 using a dynamic model 260. Stated somewhat differently, the dead zone removal steps of method 900 can be applied as pre-processing, post-processing, or both.
Turning now to
In some embodiments, motion estimation can be performed using a dynamic model 260 (shown in
{dot over (x)}(t)=f(x(t),u(t))+w(t) Equation (1)
where x(t) represents the state of the mobile platform 200 at time t, {dot over (x)}(t) represents the change in the state x(t) at time t (in other words, the derivative of x(t) at time t), u(t) represents the control inputs into the mobile platform 200 at time t, and w(t) represents the noise at time t. Here, the state x(t) can be a collection of variables that describe the present location, velocity, or other conditions of the mobile platform 200 at time t, and can be represented as a vector of arbitrary length. In some embodiments, the state x(t) can include variables that represent the position of the mobile platform 200 (for example, x, y, and z coordinates in a Cartesian coordinate space), as well as variables that represent the instantaneous change in the position (for example, velocities components {dot over (x)}, {dot over (y)}, ż). Similarly, u(t) and w(t) can be collections of variables that represent the control inputs and noise, respectively, and can be represented as vectors of arbitrary length. In some embodiments, the control inputs u(t) can be represented by a 3, 4, or 5-dimensional vector. In some embodiments, the noise w(t) can be represented by a 3, 4, or 5-dimensional vector.
Under certain circumstances in which the control inputs u(t) and the noise w(t) are unknown or difficult to ascertain, the dynamic model 260 shown in Equation (1) can be reduced to a linear dynamic model 260—that is, a dynamic model 260 in which the change in state is a linear function of the current state and inputs. In other embodiments, the dynamic model 260 can be a non-linear dynamic model 260. In certain embodiments, a simplifying assumption can be made that u(t)=0 (that is, no control inputs are given) and that w(t) is white noise having an average value of 0 and a variance of var(w). That is, the dynamic model 260 can be a fixed-speed dynamic model 260. In other embodiments, the dynamic model 260 can be a variable-speed dynamic model 260. A further simplifying assumption can be made in certain embodiments that the mobile platform 200 is limited to motion on an x-y plane, and that motion in the z-axis is negligible. That is, the dynamic model 260 can be a planar dynamic model 260. In other embodiments, the dynamic model 260 can be a non-planar dynamic model 260.
For a planar dynamic model 260, the state of the mobile platform 200 can be represented as a five-dimensional vector, as follows:
=[x,{dot over (x)},y,{dot over (y)},z] Equation (2)
Under these assumptions, the relationship between the state of the mobile platform 200 between times k and k+1 can be presented as follows:
k+1=Fk+Gk Equation (3)
where F is a 5×5 matrix represented as F=diag[F2, F2, 1], where
and G=diag[G2,G2,T], where G2=[T2/2, T]′, and T is the time elapsed between times k and k+1. As a non-limiting example, time k can represent a time at which an ultrasound wave 301 (shown in
Using one or more of the dynamic models 260 illustrated above, the state of the mobile platform 200 at the time k+1 can be found. Where the linear model shown in Equation (3) is applied, wk has an average value of zero and a variance of var(wk), and it follows that k+1 has an average value of Fk and a variance of var(Gwk).
In other embodiments, other dynamic models 260 can be used to determine a state of the mobile platform 200. For example, the dynamic model 260 can be a variable-speed dynamic model 260 that accounts for a known acceleration of the mobile platform 200. The acceleration of the mobile platform 200 can be, for example, provided by an inertial measurement unit (IMU) aboard the mobile platform 200. In some embodiments, the dynamic model 260 can account for noise distributions that are not white noise distributions.
At 1102, once an average value and variance of the state k+1 is determined using the dynamic model 260, a set of constraints on the timing of the echo 302 can be determined using the predicted location of the mobile platform 200. This determination can be made, for example, based on the known speed of ultrasound and coordinates of the spatial region in which the mobile platform 200 can occupy at time k+1. Finally, at 1103, an echo 302 is found within the constraints. If more than one peak remains within the constraints, other filters (for example, as described above in the methods 600 and 800) can be used to isolate the echo 302.
The setting of constraints on the timing of the echo 302 (shown in
The disclosed embodiments are susceptible to various modifications and alternative forms, and specific examples thereof have been shown by way of example in the drawings and are herein described in detail. It should be understood, however, that the disclosed embodiments are not to be limited to the particular forms or methods disclosed, but to the contrary, the disclosed embodiments are to cover all modifications, equivalents, and alternatives.
Claims
1. A method of ultrasound distance detection comprising:
- identifying an ultrasound echo from an object by: dividing a sonic waveform received by a mobile platform into packets; filtering the packets using at least a threshold packet bandwidth to identify one or more candidate packets that are not noise, the threshold packet bandwidth being multiple of an average width of previously known echoes; and identifying the ultrasound echo from the one or more candidate packets; and
- determining a distance between the mobile platform and the object based upon the ultrasound echo.
2. The method of claim 1, wherein filtering the packets comprises filtering the packets using the threshold packet bandwidth and a threshold packet amplitude to identify the one or more candidate packets, the threshold packet amplitude being a fraction of an average amplitude of the previously known echoes.
3. The method of claim 1, wherein dividing the sonic waveform into the packets comprises dividing the sonic waveform into time intervals, the time intervals corresponding to the packets.
4. The method of claim 3, wherein each of the time intervals has a duration based upon a frequency of the sonic waveform.
5. The method of claim 3, wherein at least two of the time intervals have different durations.
6. The method of claim 3, wherein the time intervals have a same duration.
7. The method of claim 1, wherein dividing the sonic waveform into the packets comprises using a peak selection technique to select the packets based on peaks in the sonic waveform.
8. The method of claim 1, wherein filtering the packets further comprises discarding one of the packets that has an area less than a predetermined threshold value as noise.
9. The method of claim 1, further comprising, before identifying the ultrasound echo:
- determining an aftershock waveform; and
- subtracting the aftershock waveform from the sonic waveform.
10. The method of claim 9, wherein determining the aftershock waveform comprises receiving an ultrasound waveform under reduced echo and/or reduced noise conditions and determining the aftershock waveform based on the received ultrasound waveform.
11. The method of claim 9, wherein:
- determining the aftershock waveform comprises determining a timing of the aftershock waveform relative to a corresponding ultrasound emission, and
- subtracting the aftershock waveform comprises subtracting the aftershock waveform according to the timing.
12. The method of claim 1, wherein identifying the ultrasound echo from the one or more candidate packets comprises identifying the ultrasound echo by motion estimation of the mobile platform.
13. The method of claim 12, wherein the motion estimation comprises predicting a location of the mobile platform according to a dynamic model.
14. The method of claim 13, wherein the dynamic model is a linear dynamic model.
15. The method of claim 13, wherein the dynamic model is a non-linear dynamic model.
16. The method of claim 13, wherein the dynamic model is a fixed-speed dynamic model, a planar dynamic model, or a non-planar dynamic model.
17. The method of claim 13, wherein the motion estimation further comprises identifying the ultrasound echo according to the predicted location of the mobile platform.
18. The method of claim 17, wherein identifying the ultrasound echo according to the predicted location of the mobile platform comprises:
- estimating, based on the dynamic model and using a state of the mobile platform at a time when an ultrasound wave is emitted from the mobile platform, a state of the mobile platform at a time when the ultrasound echo is expected to be received by the mobile platform;
- predicting the location of the mobile platform at the time when the ultrasound echo is expected to be received by the mobile platform based on an average value and a variance of the state of the mobile platform at the time when the ultrasound echo of the ultrasound wave is expected to be received by the mobile platform;
- determining a set of timing constraints on a timing of the ultrasound echo being received by the mobile platform using the predicted location of the mobile platform; and
- identifying the ultrasound echo from at least one of the one or more candidate packets that is within the set of timing constraints.
19. A mobile platform comprising:
- an ultrasound receiver configured to receive an ultrasound echo from an object; and
- a processor configured to: identify the ultrasound echo by: dividing a sonic waveform received by the ultrasound receiver into packets; filtering the packets using at least a threshold packet bandwidth to identify one or more candidate packets that are not noise, the threshold packet bandwidth being multiple of an average width of previously known echoes; and identifying the ultrasound echo from the one or more candidate packets; and determine a distance between the mobile platform and the object based upon the ultrasound echo.
20. A non-transitory computer-readable medium storing instructions that, when executed by a processor, cause the processor to:
- identify an ultrasound echo from an object by: dividing a sonic waveform received by a mobile platform into packets; filtering the packets using at least a threshold packet bandwidth to identify one or more candidate packets that are not noise, the threshold packet bandwidth being multiple of an average width of previously known echoes; and identifying the ultrasound echo from the one or more candidate packets; and
- determine a distance between the mobile platform and the object based upon the ultrasound echo.
Type: Application
Filed: Jan 16, 2019
Publication Date: May 16, 2019
Inventors: Jiebin XIE (Shenzhen), Litian ZHANG (Shenzhen), Wei REN (Shenzhen)
Application Number: 16/249,678