small target silhouette Theory

A lot of this section is currently missing, including most of the figures.

Supersonic Shockwave (N-Waves)

Supersonic projectiles create waves known as N-waves, characterized by their N-like shape. These waves are generated continuously along the path of the projectile as long as it travels above the speed of sound (approximately 340 m/s in air). The frequency of N-waves at the source depends primarily on the speed of whatever is generating the waves (bullets, airplanes, etc) and, secondarily, its shape. As a projectile’s speed increases, the frequency of the N-waves increase (Figure ). Unlike most other waves, the frequency of N-waves decrease as the wave attenuates.

shadowgraph of a supersonic bullet showing the shockwave in flight
Shadowgraph of a supersonic bullet showing the shockwave in flight. Courtesy of NASA via Wikimedia Commons.

The initial change in pressure as the shockwave reaches a given point (commonly referred to as a “sonic boom”) contains the highest frequency waveform. The rapid rise in pressure produces a signal that is very recognizable and easy to identify electronically. Our target system relies on supersonic shockwaves to perform the TDOA analysis. Projectiles that are subsonic will not generate shockwaves suitable for triggering the target’s timing system and cannot be tracked.

Shockwave Detection

There are several ways to detect the arrival of a shockwave. The rapid rise in pressure creates a corresponding rise in voltage that can be analyzed to detect an event (the arrival of a shockwave).

Threshold Analysis

The simplest detection method involves simply using a threshold that, once crossed, triggers a detection event. This can be accomplished either in software (with the use of ADCs) or with an analog comparator. This method is not necessarily reliable, however, especially as the impact point gets significantly closer to one sensor than the other. Since acoustic energy dissipates fairly rapidly (inverse square law), the amplitude at one sensor may be significantly different than the amplitude at another, causing the triggering to happen at different locations on each waveform.

Delta Analysis

One method to improve trigger response and reliability is to analyze the change (delta) in amplitude. Instead of using an amplitude threshold, a delta threshold can detect an event much sooner and more consistently. Unfortunately, this requires use of ADCs which can greatly increase cost (and possibly complexity) since very high speed ADCs are required for high accuracy.

Zero-Crossing Detection

The most accurate way to compare the onset of two different waveforms turns out to be very simple. Zero-crossings occur while the waves are undergoing the greatest change and represent the most reliable point of comparison. They can be detected easily and consistently using either an ADC (with a corresponding software routine) or a simple comparator circuit (0 volt reference). Zero-crossing analysis is not useful on its own, however, since zero-crossings will occur erratically and continuously while the target is idle. Zero-crossing detection must be employed in a two-stage scheme where the crossings are analyzed following a separate trigger event, such as a voltage threshold.

A Complete Timing Scheme

The scheme that we employ is a two stage system. The first stage uses comparators to detect the onset of the shockwave. This stage is not used for timing. Instead, it triggers the second stage, a routine that sets the AVR microcontroller’s 16-bit timer up and connects the appropriate zero-crossing detector to a hardware pin (input capture unit, or ICP) on the microcontroller.

Since the AVR only has one pin that can start or stop the timer in hardware, a pair of AND gates is used to select which zero-crossing detector to use during each step of the timing process. Alternatively, the AND gates and use of ICP can be omitted and the timing accomplished entirely in software, but this introduces some variability (particularly with c programming) which may decrease accuracy. Though careful assembly programming could decrease this variability, a slight increase in hardware complexity may be a worthwhile trade for increased accuracy and c programming.

graph
			showing input from two microphones with threshold and zero-crossing
			analysis
Graph showing input from two microphones with threshold and zero-crossing analysis. Green dots mark the threshold trigger point and purple dots mark the subsequent zero-crossing points. Timing is performed between purple points.

TDOA Multilateration

Triangulation is a method by which the location of a third point is determined by referencing the location of two other points and the radii from the third point to these points. A system using TDOA, however, does not know the radii. Instead, it knows only the difference between them. Furthermore, the difference in distance must be computed based on the arrival difference and the speed of sound, which may or may not be known accurately. This means that traditional triangulation cannot be accomplished and the location cannot be determined using only two reference points.

Iteration

One method that can be used to determine the location of a point using TDOA is to calculate possible triangles that all have the same difference between two of the sides (with the third side laying between the two sensors). Iterating through various possible values in addition to this difference will produce an array of possible triangles that will fall along a parabola. Iterating through the possible values generated by a second pair of sensors (one sensor may be shared among the two pairs) will generate another parabola. These parabolas will intersect at the location of the impact.

graph showing
			TDOA from three microphones used to determine impact point
Graph showing TDOA from three microphones used to determine impact point.

The individual triangles are calculated using the Pythagorean Theorem and equations based on it. The first triangle to evaluate is essentially flat, lying along the side connecting the two sensors. The triangles are determined by iterating through values that are added to one radius. This generates a series of possible radii (one side of each possible triangle). The other radius (the third side of each triangle) is computed by taking the first radius and adding the known difference. One of the X and Y coordinates is then calculated using a triangulation equation (Equation ) and then the other can be computed using the Pythagorean Theorem.

Determining Propagation Speed

The speed of sound in atmosphere is based primarily on temperature and, to a much lesser extent, pressure, humidity, and other factors. The speed can be calculated based on accurate weather measurements and known data. However, even with careful considerations, this speed is likely to be off and is likely to change during a shooting session. If highly accurate detection is desired, the propagation speed becomes very important. Fortunately, the speed can be determined by using data from the target timers

Three sensors and two timers are needed, at minimum, to produce an impact location. If additional sensors and timers are used, more impact locations can be generated. Three sensors and three timers can generate two impact locations, while four sensors and six timers can generate five impact locations. All of these impact locations should be the same (within some margin of error), but if an invalid propagation speed is used to make these calculations, there will be some (potentially large) deviation.

The array of calculated impact locations could be averaged to create a single location that may be fairly accurate. Even better, the propagation speed can be tuned to a value with which the calculated points best converge. These calculations can be done rapidly enough that the target can essentially be ‘calibrated’ with every impact and the propagation speed measured experimentally with a high degree of accuracy.

Target Sound Isolation

Depending on how the target will be used, it becomes important that the target provides noise isolation. Noise isolation may be required because of ambient noise (i.e. wind), noise from multiple targets, and/or rapid fire. Without isolation, the microphones used to detect impacts will be susceptible to noise generated by adjacent targets. In rapid fire situations, successive shots from a single shooter could be fired off faster than the time it takes for the shockwave to completely dissipate as it echoes through the surroundings.

Care must be taken to isolate the microphones from the target structure and external noise. Foam can be used to isolate the target from the frame, but some sort of material (e.g. rubber sheet) needs to be used to create a hollow chamber that the shockwave can travel in towards the microphones while isolating external noise.

Even in situations where sound isolation may not be required, it is still critical that sound does not travel through the target frame. Since the target frame is likely to conduct sound much more quickly than air, acoustic energy will reach one part of the frame and then travel to the microphones very rapidly. This can easily make accurate measurements impossible.