Methods and systems for determining a depth of an object

A method comprising: providing an autonomous vehicle (AV) with a first estimated position of a target; directing the AV to travel toward the first estimated position at a constant velocity; receiving echo signals of transmitted sonar signals, the echo signals indicating a range and an azimuth of the target; determining a depth difference of the AV and the target based on the received echo signals, the depth difference being determined based on changes to the range and azimuth of the target over time; and in response to a depth difference existing, re-directing the AV toward a second estimated position of the target generated from the depth difference.

BACKGROUND

Unmanned underwater vehicles (UUVs), such as those used in Mine Countermeasures (MCM), employ sonar for target acquisition and guidance. Such UUVs are designed to be disposable and have a very low cost, given the nature of mission demands. To achieve such low cost, the UUVs generally only employ only a range and azimuth (or “bearing”) forward-looking sonar solution.

SUMMARY

In general overview, described is a system and technique to determine a depth difference from measurements by a two-dimension (2-D) sonar (e.g. from range and azimuth measurements). Such a system and technique find use, for example, in an autonomous vehicle (AV). For example, such a system and technique may be used to assist in navigating or otherwise directing an AV toward a target.

According to aspects of the disclosure, a method is provided comprising: providing an autonomous vehicle (AV) with a first estimated position of a target; directing the AV to travel toward the first estimated position at a constant velocity; receiving echo signals of transmitted sonar signals, the echo signals indicating a range and an azimuth of the target; determining a depth difference of the AV and the target based on the received echo signals, the depth difference being determined based on changes to the range and azimuth of the target over time; and in response to a depth difference existing, re-directing the AV toward a second estimated position of the target generated from the depth difference.

According to aspects of the disclosure, a method is provided comprising: (a) emitting a transmit signal from a vehicle traveling toward a first position at a constant velocity; (b) receiving a return signal; (c) determining whether a non-zero acceleration value exists between the vehicle and a stationary object by one or a combination of: a doppler measurement; or target range and azimuth measurements; and (d) in response to a non-zero acceleration value existing, re-directing the vehicle to travel toward a second position that is determined from the non-zero acceleration value.

According to aspects of the disclosure, an autonomous vehicle (AV) configured to move toward a target, the AV comprising: (a) means capable of storing a first estimated position of the target; (b) means for directing the AV to travel toward the first estimated position at a constant velocity; (c) means for transmitting a sonar signal; (d) means for receiving echo signals of transmitted sonar signals; (e) means for determining a depth difference between the AV and the target based on the received echo signals; (f) means, responsive to a depth difference existing, for determining a second estimated position of the target generated from the depth difference; and (g) means for re-directing the AV toward the second estimated position of the target.

According to aspects of the disclosure, a method is provided of propelling an autonomous vehicle (AV) toward a target, the method comprising: (a) directing the AV toward a first estimated target position at a constant velocity; (b) transmitting sonar signals toward the first estimated position; (c) receiving echo signals of the transmitted sonar signals; (d) determining a depth difference of the AV and the target based upon the received echo signals; (e) in response to a depth difference existing, determining a second estimated position of the target; and (f) re-directing the AV toward the second estimated target position determined using at least the depth difference.

According to aspects of the disclosure, a system is provided comprising: a transmitter configured to emit a signal from a vehicle traveling toward a first position at a constant velocity; a receiver configured to receive a return signal; a guidance control system processor configured to: determine whether a non-zero acceleration value exists between the vehicle and a stationary object by one or a combination of: a doppler measurement; or target range and azimuth measurements; and in response to a non-zero acceleration value existing, re-direct the vehicle to travel toward a second position that is determined from the non-zero acceleration value.

In one aspect, a method comprises providing an autonomous vehicle (AV) with a first estimated position of a target. The method further includes directing the AV to travel toward the first estimated position at a constant velocity. The method also includes receiving echo signals of transmitted sonar signals with the echo signals providing range and azimuth information. Further, the method includes determining a depth difference of the AV and the target based on the received echo signals and, in response to a depth difference existing, re-directing the AV toward a second estimated position of the target generated from the depth difference.

In embodiments, the method further includes obtaining the first estimated position of the target from a target hunting sonar system. The target can be a mine and the target hunting sonar system can be a mine hunting sonar system.

In additional embodiments, the method can include directing the AV to travel at a first depth based on the first estimated position and directing the AV to travel at a second depth in response to the second estimated position.

In embodiments, the method can comprise re-directing the AV by re-directing the AV to one of, a full-stop hover, a hover and pitch-up, a hover and pitch-down, a hover and move to a higher depth, and a hover and move to a lower depth.

In another aspect, a method comprises emitting a transmit signal from a vehicle traveling toward a first position at a constant velocity and receiving a return signal. The method further comprises determining whether a non-zero acceleration value exists between the vehicle and a stationary object by one or a combination of: a doppler measurement, or target range and azimuth measurements. In response to a non-zero acceleration value existing, the method comprises re-directing the vehicle to travel toward a second position that is determined from the non-zero acceleration value.

In embodiments, the first position is a pre-determined position obtained from a target hunting sonar system. The transmit signal can be a sonar signal and the return signal can be an echo of the transmitted sonar signal.

In additional embodiments, the method can further comprise controlling the vehicle to travel toward the first position at a first constant depth. In other examples, the method can comprise controlling the vehicle to travel toward the second position at a second constant depth.

In further embodiments, the method can comprise determining whether a non-zero acceleration exists by determining a depth difference between the vehicle and the stationary target.

In embodiments, the method can comprise re-directing the AV by re-directing the AV to one of, a full-stop hover, a hover and pitch-up, a hover and pitch-down, a hover and move to a higher depth, and a hover and move to a lower depth.

In yet another aspect, an autonomous vehicle (AV) configured to move toward a target comprises means capable of storing a first estimated position of the target; means for directing the AV to travel toward the first estimated position at a constant velocity; means for transmitting a sonar signal; means for receiving echo signals of transmitted sonar signals; means for determining a depth difference between the AV and the target based on the received echo signals; means, responsive to a depth difference existing, for determining a second estimated position of the target generated from the depth difference; and means for re-directing the AV toward the second estimated position of the target.

In another aspect, a method of directing an autonomous vehicle (AV) toward a target comprises directing the AV toward a first estimated target position at a constant velocity; emitting sonar signals via a two-dimensional (2-D) sonar toward the first estimated position; receiving two-dimensional (2-D) echo signals of the emitted sonar signals; determining a depth difference of the AV and the target based upon the received 2-D echo signals; in response to a depth difference existing, determining a second estimated position of the target; and re-directing the AV toward the second estimated target position determined using at least the depth difference.

In embodiments, the 2-D sonar provides range and azimuth measurements and determining a depth difference between the AV and the target comprises determining a depth difference between the AV and the target utilizing range and azimuth measurements.

In an additional aspect, a system comprises a transmitter configured to emit a signal from a vehicle traveling toward a first position at a constant velocity. The system also comprises a receiver configured to receive a return signal. The system further comprises a processor configured to determine whether a non-zero acceleration value exists between the vehicle and a stationary object by one or a combination of: changes in a plurality of doppler measurements over time, or changes in target range and azimuth measurements over time. In response to a non-zero acceleration value existing, the processor is further configured to re-direct the vehicle to travel toward a second position that is determined from the non-zero acceleration value. In embodiments, the system comprises means for storage of several measurements (e.g. Doppler measurements or range/azimuth measurements) and/or storage/filtering of such measurements over time. In embodiments, such means for storage may be provided as a memory.

In embodiments, the processor can be further configured to determine whether there exists a depth difference between the vehicle and the stationary target that would account for a measured non-zero acceleration when a relative velocity of an AV is controlled to be constant.

DETAILED DESCRIPTION

Referring toFIG.1, an autonomous vehicle (AV)10is traversing an environment100in search of a target14. In this example embodiment, the AV10is an underwater AV traversing a body of water100(e.g., an ocean) in search of a mine14. A skilled artisan understands that embodiments of the present disclosure can also be applied to land and air-based search systems using aerial AVs or terrestrial AVs. In some embodiments, the AV10may be an unmanned underwater vehicle (UUV).

In embodiments, the AV10can be equipped with a sonar system and a guidance control system (e.g., sonar system11and guidance control system54illustrated inFIG.2). The sonar system is configured to transmit and receive sonar signals to determine a location of the target14using one or more of the techniques described herein. The sonar system can comprise a 2-dimensional (2D) sonar that is configured to determine 2D location information (e.g., range and azimuth), but not depth difference between the AV10and the target14. The 2D sonar may be incapable of determining location information in three dimensions (e.g., range, azimuth, and elevation angle), as would be needed to fully localize the target14(e.g., to complete the spherical coordinates of the target14relative to the AV10).

In embodiments, the sonar system can be operatively coupled to a guidance control system (e.g., the guidance control system54ofFIG.2) that is configured to process the 2D location information to determine the depth difference between the AV10and the target14. In response to determining the 2D location information and the depth difference, the guidance control system can direct the AV10towards the target14as described in greater detail herein.

Referring toFIG.1A, the AV10can be tethered to a communication device12. In embodiments, the AV10can be physically or wirelessly tethered to the communication device12according to any known or yet to be known technique. The communication device12can be a buoy comprising circuitry configured to communicate with the AV10. In embodiments, the communication device12can be in communication with a command center (not shown) from which the communication device12receives signals for controlling the AV10. For example, the signals can include a predetermined estimate of a location of the target14such that the AV10can begin traversing towards the target14from an origin point such as a location of the communication device12or an initial location of the AV10. In embodiments, the AV10can be positioned to have an origin point that ensures the target14is either above or below the AV10. For example, the AV10can be positioned close to the ocean surface or the ocean floor.

Additionally, the signals can include, but are not limited to, location information, such as geodetic latitude and longitude from the Global Positioning System (GPS) satellites along with range and azimuth information between the communication device12and the AV10. In some implementations, by using the geodetic position of the communication device12and the range and azimuth from the AV10to the communication device12, the AV10can determine its own location relative to the known target14position until that time when the target14becomes within range of the sonar on the AV10. When the target14becomes within range of the sonar, detections by the sonar can be communicated from the AV10to overseeing operators at a command center for confirmation via the communication device12. Additionally, the AV10can send status information to the command center and receive mission abort commands from the command center via the communications device12.

Referring toFIG.1B, the AV10includes a target detection and guidance system (e.g., system13ofFIG.2) having 2D sonar (e.g., sonar11ofFIG.2) that is configured to transmit and receive sonar signals to determine a location of the target14. The 2D sonar can include a transmitter and receiver (e.g., transmitter34and receiver42ofFIG.2). The transmitter and receiver have an upper and lower sensor elevation range105a-b, which together define a field of view of the sonar. More particularly, the upper and lower sensor elevation range105a-bdescribe the space in which the target echo, which results from sonar acoustic signals transmitted by the transmitter (e.g., transmitter34inFIG.2), is likely to be strong enough to be detected over other signals in the background.

The sonar has a boresight110arepresenting the direction of greatest sensitivity. In some embodiments, the sonar may have a Mills Cross array configuration and the boresight110amay be perpendicular to the plane of the Mills Cross array. The boresight110ais the reference axis for the measurement of azimuth angles to the target14. In some embodiments, the azimuth angle to the target14can be measured using a beamforming process. Beamforming adjusts the signal phase at each element of the receiver array until a maximum target signal amplitude is achieved. In some embodiments, the beamforming process may adjust phases to provide a field of view +/−60 degrees off the boresight110a. In some embodiments, the sonar can achieve resolution in azimuth of less than one degree depending on the signal to noise ratio.

The 2D sonar can measure range and azimuth of the target14on a local level plane112. The azimuth angle111is defined as the angle between the boresight110aand a line110bon the local level plane112that extends from the AV10to the target14(i.e., to the position the target14would be in on the local level plane112if it were projected to the same depth as the AV10).

Using the 2D location information obtained from the sonar, the AV10determines a depth of the target14by assuming the target14is stationary and by analyzing azimuth angle111of the target, the range115of the target (also referred to as the “true range” or R), and change of range over time (“range rate”). In embodiments, the AV10travels at a constant depth and velocity (as indicated by vector125) such that range rate measurements can exhibit acceleration of the AV10even though the AV10travels at the constant depth125. The range rate measurements can exhibit acceleration because the components of relative velocity which are constant in three dimensions are projected into the local level plane112where the change in the line of sight between the AV10and the target14is not fully measured by the sonar, due to the sonar being unable to measure the difference in depth120between the AV and the target. In response to determining range rate, the AV10determines a depth difference120between the AV10and the target14. Once the AV10determines the depth difference120, the AV10determines a direction of depth difference120(i.e., up or down). In embodiments, the direction of depth difference120can be suggested by operational biases, such as an operational mode of the AV10(e.g., shallow search of near-surface mines suggests moving the vehicle down and deep search for volume mines suggests moving the vehicle up), or a pitch of the AV10(because target signal strength can change depending upon the pitch of an AV).

FIG.2shows an illustrative target detection and guidance system13that may be provided on an AV. The system13comprises a 2D sonar system11, navigation sensors64, a guidance control system54, and a memory56. In some embodiments, the sonar13may include a waveform generator30including circuitry adapted to generate a waveform32ahaving a carrier (center) frequency in the high kilohertz range (500-900 KHz), a bandwidth between 9 and 100 KHz and a time duration of a few milliseconds e.g. in the range of 3-10 milliseconds). However, it will be understood that the present disclosure is not limited to any specific type of sonar system. A sonar transmitter34is adapted to receive the waveform32aand to transmit a sound signal194into water in accordance with the waveform32a. The sonar transmitter34can include a power amplifier36configured to receive the waveform32a. The power amplifier36is coupled to one or more transmitting elements40that are adapted to generate the sound signal194. As illustrated inFIG.3, in some embodiments, the transmitting elements40can be arranged in a Mills Cross array configuration, which allows the transmitting elements to be beamformed to achieve fine azimuthal measurements (seePrinciples of Underwater Sound, Revised Edition, McGraw-Hill, 1975). In other embodiments, the transmitting elements40can be arranged in a transmitting sonar array (not shown), and the sound signal194is a beamformed sound signal.

The sonar system11also includes a sonar receiver42adapted to receive a sound signal198associated with the transmitted sound signal194and to generate a conditioned signal50in accordance with the received sound signal198. The received sound signal198may be generated by an echo of the transmitted sound signal194from a target14(e.g., a mine).

The sonar receiver42can include one or more receiving elements48adapted to receive the sound signal198. In some embodiments, the receiving elements48are arranged in a receiving sonar array (e.g., as illustrated inFIG.3). The receiving elements48can be coupled to a provide and electronic signals46representative of the sound signal198to a signal conditioning module44adapted to provide a variety of functions, which can include, but which are not limited to, amplification, time varying gain, carrier demodulation, bandpass filtering, and beamforming, and adapted to generate a conditioned signal50in conjunction therewith.

The sonar system11can also include one or more processors adapted to process the conditioned signal50. In the embodiment ofFIG.2, the sonar includes a correlation processor212, a detection processor216, a localization processor220, and a classification processor222. In some embodiments, one or more of the processors212,216,220,222can be omitted or combined with one or more of the other processors.

The correlation processor212may be coupled to receive the conditioned signal50and to provide, as output, a correlation signal214, which can be coupled to one or more of the other processors, as shown. The correlation processor212is adapted to correlate the received waveform208with one or more versions32bof the waveform32a. In some embodiments, the one or more versions32bof the waveform32acan represent a plurality of anticipated Doppler shifts of the received sound signal198, in accordance with a relative movement between the sonar system11and the target14. The correlation processor212provides a correlated waveform214accordingly.

The detection processor216is adapted to detect the target14from the correlated waveform214using estimates of signal energy versus noise energy derived from the correlated waveform214as a function of time and using thresholds based on pre-established noise models and a constant false alarm rate (CFAR) criteria. A detection signal218is provided, which is indicative of a detection of the target14.

The classification processor222is adapted to receive the detection signal218and the correlated waveform214and is also adapted to provide, as output, a classification signal226that is indicative of a type of the target14.

The localization processor220is adapted to receive the detection signal218and the correlated waveform214, and to provide a localization signal224that is indicative of a localization of the detected target14in range, depth, azimuth angle, and/or depression angle. The localization processor220may also be coupled to receive the classification signal226and adapted to use signal226to generate localization signal224. For example, localization processor220can use the type of target14, as determined by the classification processor222, to more accurately locate the target14. In some embodiments, the localization processor220can use the classification signal226to eliminate false target contacts determined by detection processor216.

The guidance control system54may be configured to hold vehicle depth and velocity constant during initial search and then to steer towards the target once depth difference and direction are determined. Guidance control system54can receive and process the localization signal224to steer the AV10towards the target14. Accordingly, the guidance control system54includes circuitry configured to send control signals to one or more of the AV's propulsion elements (not shown) to steer the AV10. The one or more propulsion elements can include any known mechanical element (e.g., one or more propellers) that enables the AV10to traverse a body of water (e.g., the ocean100ofFIG.1). Various propulsion elements and related techniques that may be employed are described in U.S. Pat. No. 9,174,713 which is herein incorporated by reference in its entirety. As shown inFIG.2, in some embodiments guidance control system54may also be coupled to receive information from navigation sensors64.

At any convenient time, such as the start of a mission, the AV10can receive an initial estimate of the target's location. The AV10can receive the initial estimate, for example, via a communications interface80. The communications interface80is configured to communicatively couple with a communications device (e.g., the communications device12ofFIG.1A). For example, the communications interface80can be a wireless transceiver that enables the AV10to engage in bi-directional communications with the communication device. In other examples, the communications interface80is configured to couple to a physical tether that is connected to the communications device to enable in bi-directional communications with the communication device via the tether.

Guidance control system54can include target depth processor55that receives, as input, localized/relative location information of the target14and calculates a depth difference of the target using the techniques disclosed herein. In some embodiments, target depth processor55implements a depth difference function in hardware, software, or a combination thereof. An illustrative implementation of a target depth processor55is shown inFIG.2Band discussed in detail below in conjunction therewith. The guidance control system54can maintain a constant velocity and depth of the AV during an initial search. Then, after the target's depth difference is determined, the guidance control system54can use the 3D location of the target (i.e., range, azimuth, and depth) to home in on it.

The guidance control system54stores the initial estimate of the target's location (e.g., depth) in a memory56(which may or may not be provided as part of the sonar11). The initial estimate can be in a format such as geodetic latitude, longitude and height above the World Geodetic System 1984 (WGS 84) reference ellipsoid (note that negative height above the ellipsoid is depth in the ocean). Other formats may, of course, also be used. Using the initial estimate, the AV10traverses the body of water as discussed in greater detail herein.

In an embodiment, the guidance control system54may receive from the communications device12an indication of the location of the target14, while the target14is located outside of the detection range of the AV's10sonar. At first, the guidance control system54may use GPS data relayed by the communications device12to navigate the AV10towards the target14. Once the AV10is close enough to detect the target14by sonar, the range and azimuth sonar measurements can support terminal homing. However, without depth difference measurements, the AV10may swim past the target14without being on a shot line for firing its neutralizing charge. To avoid bypassing of the target14, the guidance control system54may calculate or otherwise determine using the techniques described herein, depth difference estimates based upon the range and azimuth sonar measurements. The determined depth difference estimates may be used for terminal guidance towards the target14.

For example, the guidance control system54establishes a local coordinate system such as a coordinate system that uses local north, east, down (NED) coordinates. The guidance control system54also establishes an initial position of the AV10within the coordinate system. In some embodiments, the AV10is positioned at a coordinate system origin, for example, (0, 0, 0) in NED. Based on the position of the AV10in NED, the guidance control system54translates the initial estimate of the target's location from the first format to a second format such as a coordinate in NED with respect to the AV10. For discussion purposes, the target's location (‘T’) can be estimated to be T=(667.654, 420.0, 250) in NED.

In response to determining the target's location in NED, the guidance control system54controls the AV10to move toward the target14with a constant velocity (‘V’) and a constant depth. Thus, at any time (‘t’), a position of the AV10can be defined as S(t)=(x0, y0, z0)+Vt, where (x0, y0, z0) is a starting position of the AV10(e.g., (0, 0, 0) in NED). Additionally, a line of sight (‘L’) between the AV10and the target14is defined as L(t)=T−S(t)=L(0)−Vt, where L(t) is the line of sight at time ‘t’, T is the target's location, L(0) is the line of sight at time ‘0’. In embodiments, it is assumed that the sonar is moving toward the target from an initially long range and thus, an angle between L(0) and V is small.

As the AV10travels towards the target, the sonar processor52, at periodic times (‘t’), measures the range, R(t), and the relative azimuth, β(t), from the AV10to the target14. The sonar processor52can include logic and/or an ASIC (application-specific integrated circuit) to calculate range R as a function of time t (denoted R(t)) according to the following equation:

T is the location of the target;

V is the velocity of the AV as it moves toward a target;

Vt is the change in position of the AV over a duration of time t;

xois a first coordinate of an initial (or starting) position of an AV;

xTis a first coordinate of a target position;

vxis the velocity in the X direction of the AV on a Cartesian coordinate system as the AV moves toward a target;

y0is a second coordinate of an initial (or starting) position of an AV;

yTis a second coordinate of a target position;

vyis the velocity in the Y direction of the AV on a Cartesian coordinate system as the AV moves toward a target;

zois a third coordinate of an initial (or starting) position of an AV;

zTis a third coordinate of a target position (It should be noted that zTis not determined by sonar measurement and that, in the processing approach described, a plurality of hypotheses may be used whereby R(t) is filtered for each hypothesis); and

L(t) is a line of sight between the AV and target at time t.

Additionally, the sonar processor52can include logic and/or an ASIC to calculate β(t) according to the following equation:

In response to determining the relative azimuth, the sonar processor52can include logic and/or an ASIC to calculate true azimuth (i.e., azimuth (a)) by adding the AV's course over ground, ξ, to the relative azimuth according to the following equation:

α(t) is a true azimuth position (i.e., the angle from North to the target location with vertex at the sonar) of an AV at time t;

β(t) is a relative azimuth (i.e., the angle from the sonar velocity vector to the target) from the AV to the target at time t; and

ξ is the AV's course over ground.

Upon determining true azimuth, the sonar processor52provides the localization signal224, which includes the range, relative azimuth, and true azimuth calculations to the guidance control system54. Using the localization signal224, the guidance control system54determines range rate, {dot over (R)}(t), according to the following equation:

{dot over (R)}(t) is the range rate;

‘θ’ is the cone angle between the velocity of the AV10and the initial line of sight to target14; and

∥V∥ is the velocity of the AV (i.e. the norm of the AV velocity).

Using the range rate, the guidance control system54, using target depth processor55, determines a depth difference (also denoted herein as |dz|) between the AV10and the target14. In embodiments, the AV10can have an initial position with a long range from the target14. In such instances, the range rate can be a poor discriminant of depth difference because the cone angle ‘θ’ is very small for all reasonable values of the depth difference. In some embodiments, the guidance control system54can generate a graph, similar to graph200depicted inFIG.2A, showing how target range can vary over time under a plurality of initial hypotheses of depth difference between an AV traveling with constant velocity and a stationary target.

RegardingFIG.2A, the graph200includes a plurality of curves, such as curves205,225, and235. Each curve inFIG.2Adepicts how sonar range measurements would change with time if the actual depth of the target14differed from the depth of the AV10by an assumed amount. The multiplicity of curves reflects the multiple hypotheses for the depth difference of the target14. The lower curve225depicts the range over time if the depth difference is relatively small (e.g., zero or close to zero). The upper curve205depicts the range over time if the depth difference is relatively large. The dotted curve230represents the actual range measurements which are used to select a depth difference estimate based on the best fit of the measurements to one of the curves in the collection. InFIG.2A, the horizontal axis215represents time (e.g. in seconds) and the vertical axis210represents range (e.g. in meters).

The guidance control system54generates curves205by hypothesizing different depths spaced at, e.g., 10 units apart. In this illustrated example, the measurements225align with the additional curves205at a depth difference, |dz|, of50. The dotted curve230of actual range measurements over time is best fitting to the fifth curve up from bottom. With spacing of 10 units per hypothesis, the depth difference, |dz|, is close to 50. Note that in the present example, the curves205,225, and230indicate that the target14is at an azimuth off of the direction of travel. In particular, if the target were on the vehicle's course and at the same depth, curve225would have a minimum value at 0 (because the minimum of curve225corresponds to the closest point of approach when the vehicle and target are at the same depth, i.e. |dz|=0). Such positioning of the target14would require the AV10to change its depth, and also turn, in order to intercept the target14.

Referring back toFIG.2, once the depth difference is determined, the guidance control system54determines a direction of the depth difference (i.e., whether the target14is above or below the AV10). In embodiments, a true starting depth of the AV10can be close to the surface of the body of water or close to a floor of the body of water to ensure that the target14is either below or above the AV10. In other embodiments, the guidance control system54may determine the direction of the depth based on the pitch of the AV. For example, if the AV10pitches up and the target signal is stronger, the AV guidance will travel up to the depth of the target. Otherwise, the AV100will travel down to the target.

FIG.2Bshows an example of a target depth processor55, according to some embodiments. The processor55can process 2D sonar measurements, compensated for vehicle motion by navigation sensors and converted to 3-dimensional Cartesian coordinates, under a plurality of depth difference hypotheses. Under each of these hypotheses a noise reduction (Kalman) filter may be applied. A depth selection logic can select the hypothesis of depth difference that minimizes the filter residual (difference between expected values and sensor measurements).

The illustrative target depth processor55may include a multi-model filter, here comprised of one or more filters84. The multiple models correspond to distinct depth difference assumptions. Depth Selection Logic74eliminates the filters with larger “residual.” The filters84also remove noise that may be introduced by sensors such as a sonar11or a navigation sensor64. The sensors11,64can introduce noise due to variations in the environment, including temperature effects on the speed of sound, quantization noise on measurements, and numerical noise in algorithms implemented by a digital computer.

In embodiments, the target depth processor55includes a coordinate conversion processor94that receives navigation information from the navigation sensor64and sonar information from the sonar system11. The navigation information can include a velocity and position of the AV10and the sonar information can include a localization of the target14in range, and in azimuth angle. Notably, the sonar system11is provided as a two-dimensional sensor which does not measure depth or elevation angle directly. However, as discussed above, the sonar system11may derive or otherwise determine an estimate of the depth difference based upon two-dimensional measurements. For example, a depth difference may be determined based upon range and azimuth angle measurements and/or range and azimuth measurements.

Using the navigation information and the sonar information, the coordinate conversion processor94generates several hypotheses of a depth of the target and corresponding presumed fixed positions of the target in NED. Each of the depth hypotheses can be integer multiples of a desired depth resolution, with a number of hypotheses selected to cover a likely depth error in a given location of the target14.

In embodiments, each of the hypothesized depths is provided to the multi-model filter, which in this example, is comprised of Kalman filters84. In other words, a Kalman filter is run for each of the hypothesis. Each Kalman filter84generates a state mean vector, Xi(n), and covariance matrix, Pi(n) after each measurement of the sensors11,64.

Using the generated state mean vectors and covariance matrix, a depth selection logic processor74coupled to the filters84determines a magnitude of difference between the hypothesized target location and filtered states according to the equation:
Residual(i)=∥Ti−Xi(n)∥,
In which

i is an index representing the filter that is being processed

Residual(i) is a magnitude of difference between the hypothesized target location and filtered states;

n is the time index of the filter output;

Tiis the hypothetical target location used in the ithfilter

Xi(n) is the ithfilter state mean vector after the nthiteration of the filter

The depth difference is determined to be the value of (N−1)|dz|, where ‘N’ is an index of a minimum Residual, and |dz| is the amount of depth difference used to change from one hypothesis to the next.

The multi-model Kalman filter is thus configured to find a best fit of range and azimuth measurements to one of a plurality of hypothesis curves, each of the hypothesis curves being configured to model changes in sonar range measurements that are expected to occur for a given depth difference between an AV and a target. That is, Kalman filtering is used in both target tracking and motion model selection by filtering for state estimation (e.g. velocity or acceleration states) of states that are not sensed directly.

Using the depth difference, the guidance control system54(FIG.2) steers the AV10towards the target14. In embodiments, the guidance control system54steers the AV10towards the target14to neutralize the target14where the target14is an enemy mine or other enemy threat. For example, the guidance control system54can cause the AV10to perform one or more of the following navigation tasks: a full-stop hover, a hover and pitch-up, a hover and pitch-down, a hover and move to a higher depth, and a hover and move to a lower depth. Once the AV10is in close proximity to the target14, the guidance control system54can cause the AV10to detonate to destroy the target14.

It should be appreciated that in some embodiments, some or all of the target depth processor55may be provided as part of a guidance control system (e.g. guidance control system54ofFIG.2) while in other embodiments, some or all of the target depth processor55may be provided as part of a sonar (e.g. sonar11).

FIG.3shows an example of device300for obtaining 2D sonar measurements. The illustrative device300may be positioned, for example, at the “nose” of an AV (e.g., AV10ofFIG.1). The device300can include (or “house”) a sonar array40,48in addition to transmitter34and receiver42electronics located immediately behind the array40,48. In this example, the array40,48is arranged in a Mills Cross array configuration suitable for accurate range and azimuth measurements on a target. The device300may be provided as a compact package appropriate for disposable applications, such as Mine Countermeasures (MCM) vehicles.

The above-described systems and methods can be implemented in digital electronic circuitry, in computer hardware, firmware, and/or software. The implementation can be as a computer program product. The implementation can, for example, be in a machine-readable storage device, for execution by, or to control the operation of, data processing apparatus. The implementation can, for example, be a programmable processor, a computer, and/or multiple computers.

Processes can be performed by one or more programmable processors executing a computer program to perform functions of the embodiments described herein by operating on input data and generating output. Processes can also be performed by an apparatus can be implemented as special purpose logic circuitry. The circuitry can, for example, be an FPGA (field programmable gate array) and/or an ASIC (application-specific integrated circuit). Subroutines and software agents can refer to portions of the computer program, the processor, the special circuitry, software, and/or hardware that implement that functionality.

To provide for interaction with a user, the above described techniques can be implemented on a computer having a display device. The display device can, for example, a liquid crystal display (LCD) monitor. The interaction with a user can, for example, be a display of information to the user and a keyboard and a pointing device (e.g., a mouse or a trackball) by which the user can provide input to the computer (e.g., interact with a user interface element). Other kinds of devices can be used to provide for interaction with a user. Other devices can, for example, be feedback provided to the user in any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback). Input from the user can, for example, be received in any form, including acoustic, speech, and/or tactile input.

Packet-based networks can include, for example, the Internet, a carrier internet protocol (IP) network (e.g., local area network (LAN), wide area network (WAN), campus area network (CAN), metropolitan area network (MAN), home area network (HAN)), a private IP network, an IP private branch exchange (IPBX), a wireless network (e.g., radio access network (RAN), 802.11 network, 802.16 network, general packet radio service (GPRS) network, HiperLAN), and/or other packet-based networks. Circuit-based networks can include, for example, the public switched telephone network (PSTN), a private branch exchange (PBX), a wireless network (e.g., RAN, Bluetooth, code-division multiple access (CDMA) network, time division multiple access (TDMA) network, global system for mobile communications (GSM) network), and/or other circuit-based networks.

The transmitting device can include, for example, a computer, a computer with a browser device, a telephone, an IP phone, a mobile device (e.g., cellular phone, personal digital assistant (PDA) device, laptop computer, electronic mail device), and/or other communication devices. The browser device includes, for example, a computer (e.g., desktop computer, laptop computer) with a world wide web browser (e.g., Microsoft® Internet Explorer® available from Microsoft Corporation, Mozilla® Firefox available from Mozilla Corporation). The mobile computing device includes, for example, a Blackberry®.