Electronic Targets Matt Waterman Donato Salazar Dr. Abul Azad (Advisor) Tech 478 – Senior Design II
Electronic Targets
Matt Waterman
Donato Salazar
Dr. Abul Azad (Advisor)
Tech 478 – Senior Design II
The Project
An electronic target system that can be shot with a variety of projectiles, reporting the location of each impact to a computer next to the shooter
Introduction to Target Shooting
Target shooting is a popular sport in the US
Paper targets, stapled to cardboard or plastic signboard, are typically used
Impacts observed through:
Direct observation (close range or shot spotter downrange)
Optics (scope, binoculars, etc)
Target reaction (steel plates, clays)
Project Overview
Projectiles impact the target and a wave propagates outward from the impact point toward sensors mounted on the periphery of the target
The wave arrives at each sensor at a different time depending on the impact location
Project OverviewContinued
Electronics monitor the sensors and precisely measure the arrival times (TOA)
The arrival times are transmitted to a PC where the differences between the arrival times (TDOA) are used to calculate the impact location
ObjectivesTechnical
Design and build an electronic target system
Target itself
Electronics on target to detect impacts
Software on laptop displays impacts
Accurate to within 5 mm
Portable
ObjectivesAdditional
Components are cheap and easy to find
Design can be replicated by non-experts
Publish the research, designs, schematics, software, etc online
We plan to publish everything on our web site under the GNU (guh-new) general public license.
The GNU GPL license is the most widely used free software license.
Researchwikipedia.org
Triangulation
Multilateration
Wave propagation
Sonic boom
Buffer amplifier
Piezoelectric sensor
and many more
Wikipedia covers all of the topics used in this project.
This is a list of some of the key articles which are very detailed and were very helpful.
Nearly all of the information needed for this project can be found on wikipedia, usually written in a fairly easy-to-understand manner.
ResearchOther sources
General internet (via google)
Academic websites Dr. Bill Rison, New Mexico Tech – EE 389
Forums, blogs, tutorials
Journals and academic publications (via NIU library and google scholar)
Patents
Datasheets and manufacturer documents
Textbooks and class notes
Dr. Rison's ”Mathematical Engineering” course materials proved instrumental to us understanding some of the math behind multilateration.
Forums, blogs, and online tutorials proved very helpful when developing for the Atmel AVR microcontroller we used.
There are dozens, maybe hundreds of patents covering systems like this. Some provided some interesting hints, though most were not very useful.
Atmel produces great documentation for the AVR and its features.
We drew extensively from what we learned in class.
ResearchLive-fire testing
Measure and record supersonic shockwaves
Test:
Sensors
Target designs
Material durability
Acoustic isolation methods
Timing circuits
Live-fire testing was critical for developing the project, but was a big hindrance.
We could not get to the range as often as we would have liked, mostly due to distance and timing.
It was hard to deal with problems that would come up at the range, like malfunctioning circuits or targets not behaving as expected.
TheoryWave Propagation
May use supersonic (”soft” target) or impact shockwaves (”hard” target)
Both methods work the same way, but require slightly different target designs, sensors, and amplification/buffering
Target must provide uniform wave propagation
Soft target: air
Hard target: steel, plastic
Targets may use supersonic shockwaves in what we call soft, or hollow, targets, or impact shockwaves on hard targets.
Wood is not usually a suitable material for a hard target because waves do not propagate at the same rate in every direction.
TheoryWave Propagation – Supersonic Shockwave
Shockwave generated continuously at the front of the projectile
Propagates outward at the speed of sound
Arrives as an ”N-Wave”
Called an N-Wave because of the sharp rise and then decrease in pressure over the first period.
The initial period of the wave is affected by the speed and shape of the projectile. A projectile traveling twice as fast as a projectile of the same size and shape will produce an N-Wave period half the length. This isn't useful for impact location detection, but may be useful to a shooter.
TheoryWave Propagation – Impact Shockwave
Impact shockwave generated by the projectile hitting the target (it may or may not go through the target)
Shockwave generated is very similar to a supersonic shockwave
Target surface will propagate the energy much faster than air
Harder target surfaces will transmit farther, make larger targets
Targets may be designed for the projectile to hit and bounce off, like steel. Other targets may be designed for the projectile to travel through the target, like plastic signboard.
Steel can be used to make much larger targets than something like plastic signboard, but do you want a target that weighs hundreds of pounds?
1/2” steel plate weighs about 20 pounds per square foot. A 6 by 6 foot target–a common size–would weigh over 700 pounds.
TheoryMultilateration
Triangulation is easy
Unknown point can be calculated using distance, angles, or both, to two known points
D A=1P
√( x−x A)2+( y− yA)
2
The red dot represents the impact location on the target.
The green lines extend from the impact location to the sensors.
D sub A gives the distance from the impact to a point on the target.
P is the propagation speed.
Unfortunately, we do not know the distance from the impact to each sensor.
TheoryMultilateration
Multilateration is more difficult because only TDOA are known
d AB=t A−t B=1P
[√( x−x A)2+( y− yA)
2−√( x−xB)
2+( y− yB)
2]
Instead, since we only know the arrival times, we only know the difference between each distance.
The blue lines are all the same length and are not known.
In this situation, all we know is that the wave arrived at the bottom-right corner first, then arrived at the bottom-left a short time after, and so on.
D sub AB is the difference in distance between the arrival times at points A and B.
TheoryMultilateration
TDOA between top-left and bottom-left
Take the arrival time at the bottom-left corner and subtract it from the arrival time at the top-left corner, and you get...
TheoryMultilateration
Bottom radius is arbitrary (within a range)
Top is TDOA plus same arbitrary distance
...the orange line. Take an arbitrary length, out of a possible range, and use that as a radius from the bottom-left point.
The arbitrary length, purple, is basically a guess at the length of the blue lines.
Add the same length to the TDOA length and use them to form the hypotenuses of two triangles.
If you do this over and over again while changing the arbitrary length, you will get something like...
TheoryMultilateration
Calculate repeatedly and you get a curve that intersects the impact point
...this curve, which goes right through the impact point.
With triangulation, all you need is two reference points to find a third unknown point. With multilateration, two reference points will give you an indication of where the third point is, but there are an infinite number of possibilities.
But we have four points, so let's repeat this process.
TheoryMultilateration
Curves generated for each pair of sensors intersect at impact location
Here we have done it for 4 of the pairs–the edges of the target. You could also do it between diagonal pairs, but this is not shown.
Notice that all of these curves intersect at the impact location.
But how do you define these curves mathematically?
TheoryMultilateration – Hyperbolas
Each TDOA produces a hyperbola
1=(x−x0)
2
a2−
( y− y0)2
b2
It turns out that these curves are actually hyperbolas.
Here we've zoomed out on the same hyperbolas from before.
The blue and orange hyperbolas are generated from the vertical pairs of sensors, while the green and mustard ones are from the horizontal pairs.
They have many intersections, but since we know the order in which the signals arrived, some parts of the hyperbolas can be ignored. Also, the actual target face is limited in size.
This is the equation for the general form of the hyperbola. In order to use it, we need to figure out a and b and adjust the offsets–x naught and y naught.
TheoryMultilateration – Hyperbolas
1=(± y−
y AD2
)2
(PD AB
2)
2+
( x− xAB)2
(PD AB
2)
2
−(yAD2
)2
1=( y± y AD)
2
(PDBC
2)
2
−(xCD2
)2+
( x−xCD2
)2
(PDBC
2)
2
Once you've adjusted these things, you get the two forms you see here.
The top equation is for hyperbolas made using horizontal pairs of points and the bottom equation is for vertical pairs.
TheoryMultilateration - So how do we use TDOA?
Every two hyperbolas generate one possible impact location
Due to TOA and propagation speed error, the intersections are unlikely to coincide
Intersections averaged to produce the impact location
Standard deviation indicates the certainty
Propagation speed can be adjusted to minimize the deviation
TheoryMultilateration – How do we calculate intersections?
Two equations with two unknowns
Use triangulation equations and iterate through ”extra” values added to three radii until a valid point is found
Iterate through x or y values in the hyperbolas until the intersection is found
Substitute hyperbolic equations to obtain quartic equation and apply the quartic formula
We will explain how we did it later.
In case you're not familiar with the quartic formula, we'll give you a glimpse. It looks something like...
TheoryMultilateration – Quartic what?
...this. Actually, that's just part of it. Here's the whole thing...
TheoryMultilateration – Quartic Formula?
If you can't read it, don't worry about it. We didn't.
Actually, the quartic formula is very repetetive, so using it to solve quartic equations in software isn't hard at all.
The hard part is putting our hyperbola equations, with all their possible variations, together to get the quartic equations in the first place.
ImplementationTarget Design - Hard Target
Shockwave from impact propagates directly
Piezoelectric discs mounted in the corners
Plastic signboard, foam board, cardboard
Plastic/acrylic suitable for Airsoft (plastic BBs)
Steel
Shockwave from impact propagates directly to the piezoelectric discs mounted in the corners
If the design is meant to be consumable, it can be made of plastic signboard, foamboard, cardboard, or similar materials
If it's intended to resist impacts, acrylic will work for something like plastic Bbs
Steel can work for bullets, depending on what you're shooting at it, from how far, and the hardness of the steel. And how much you're willing to spend or carry.
ImplementationTarget Design - Soft (Hollow) Target
Supersonic shockwave from bullet propagates through air
Microphones in the corners, isolated from target frame
Wood frame with rubber face and rear
Design must provide noise isolation
ImplementationTarget Design - Soft Target – Microphone Isolation
Waves propagate more quickly in the frame
Microphone must be isolated from frame
Isolated from external noise
Isolated from external noise, like from wind, previous shots, or from shots on other targets
ImplementationTarget Design - Hard Target vs Soft Target
Hard Target
Sensors mounted directly to target
Very heavy if made of steel
Propagates quickly (less accuracy)
Buffers usually required
Soft Target
Sensors carefully isolated
Relatively light, even if large
Propagates slowly (greater accuracy)
Amplification usually required
ImplementationTarget Design – Target Materials
Usually consumable (i.e. the projectiles create holes that eat away at the target)
Some hard targets may be designed to not be consumable (e.g. steel)
Soft targets that must provide noise isolation should use a target face that minimizes the size of the holes
We tested numerous materials for hole size
At least some part of the target is usually going to be consumable and will have to be replaced.
Although some may be built to resist impacts
For soft targets that are supposed to suppress external noise, you want to use a material that can expand around the bullets as they go through, leaving smaller holes
We tested a number of materials, ranging greatly in price, trying to find something that works
ImplementationTarget Design – Target Materials – Hole Size
These are four of the materials we tested, and we'll pass around some samples.
The top-left sample is rubber roofing liner and is the cheapest material here. The holes are about half the diameter of the .22 caliber bullets we shot through them.
Each target was shot 30 times.
The bottom-right sample is silicon and is fairly pricey, but you can see the holes close up to almost nothing.
ImplementationTarget Design – Target Materials – Foam Board
Foam Board is a great choice for a hard target design
Polystyrene sandwiched between paper
Propagation isn't perfect
We have used Elmer's foam board and found it works very well.
It's essentially cardboard but with styrofoam in between the panels.
Since it's paper, wave propagation isn't perfect so accuracy will suffer. If you're building a target for a competition, you would probably use something else.
Obviously, it is destructable. The holes in this aren't much smaller than the bullets making them, so you can't hit the same spot many times in a row.
But it's very cheap, so you don't have to feel bad about replacing it. 8 dollars at Walmart gets you two 24x36” panels.
ImplementationTOA Detection – How do you detect wave arrival?
Threshold is the simplest: Wave reached a certain value, triggers an arrival
Implemented in:
Software with ADCs
Hardware with comparators
Now we're going to switch gears into the electronics side.
Time of arrival detection is the heart of the system, and we use some interesting techniques to time the shockwave arrivals.
The most obvious, but not necessarily best, way to figure out when a wave has arrived, is to use threshold detection.
Basically, when the wave reaches a certain level normally associated with its arrival, you trigger the timing system
This can be done with a software routine if you're sampling the sensors with an ADC, but usually you'll want to just use comparators.
ImplementationTOA Detection – Why is threshold detection bad?
If waves have different intensities, they will trigger at different times
Propagation follows inverse square law, so widely-varying intensities a given
But why is threshold detection not so good?
As the shockwave propagates outward, the intensity drops off fairly quickly, following the inverse square wave.
Depending on the impact location and several aspects of the hardware design, the waves may arrive at very different intensities and will trigger at different times.
In this illustration, the thickness of the red bars indicate the time between a zero-crossing and a trigger level being eached. The black lines are the trigger levels.
The difference in the thickness represents error.
ImplementationTOA Detection – Threshold with Zero-Detection
Zero-detection compares the signal to 0 v
Produces binary 1 when positive, 0 when negative
Combine with threshold-detection for accurate timing
It turns out we found a pretty elegant solution.
Zero-detection can be done in hardware with comparators to generate a high signal when the wave is positive, and a low signal when its negative.
When the signal goes from high to low or vice-versa, it has crossed zero.
Zero-crossing on its own isn't useful, though, because it's constantly bouncing back and forth because of noise.
But you can use threshold detection to figure out that a wave has arrived and then start looking at the zero detector.
ImplementationTOA Detection – Target Simulator
Hmmm
ImplementationTimer Circuit
This is what we've done on our circuit. We use two LM339 quad comparators to provide the eight comparators needed to run threshold-detection and zero-crossing detection on four channels.
LM339s are very cheap and easy to find. You can get them at Radio Shack. Performance is more than adequate for most needs.
In our system, we send the threshold trigger outputs directly to our Attiny
But we connect all of the zero-crossing detectors together with an OR gate and wire them up to a pin on the attiny capable of doing hardware timing.
The zero-detectors are sequentially enabled by the attiny when zero-crossings are pending.
ImplementationTimer Circuit
ImplementationTimer Circuit - Specifications
Olimex AVR board
Atmel ATtiny2313
20 MHz clock max
4 channels
2N5459 J-FET
LM339 comparators
RS232 output
AC/DC powered
ImplementationTimer Circuit – Embedded Software
AVRs are very fast (1 instruction per clock cycle)
Software written in C, compiles efficiently
Channel data (pins, TOA times) stored in a circular linked-list
Channels scanned for threshold triggering and removed from the list when triggered
Zero-detectors connected to ICP and enabled as needed
AVRs are RISC processors with instructions specifically designed for C. C compiles very efficiently with AVRs, though AVRs don't have hardware floating point capability so floating point numbers are usually avoided.
Our routine is built around a circular linked-list that holds data for each channel. A linked-list is a concept where you have data nodes and each node has a pointer connecting it to the next node.
When we're looking for an impact, the routine will loop through the list, removing channels from the list as they are triggered.
Zero detectors are enabled as needed and are connected to the input capture pin. The ICP can be set up to start and stop the timer in hardware or through interrupt routines.
ImplementationClient Software
Currently very basic
Written in C
Cross-platform compatible libraries used
Interfaces with the timer system through serial connection
Calculates several hyperbolic intersections, averages them, and computes standard deviation
ImplementationComputing Hyperbolic Intersections
Curves generated for each pair of sensors intersect at impact location
Results
It works
Current working model:
Foam board target (.45 x .45 m)
Piezo sensors
Using only threshold triggering (zero detection not yet programmed)
Accurate to 2 cm
We have not been able to build a successful soft target
ResultsDemonstration
CostOur Specific Implementation
Part Price
Olimex AVR Development Board $17
ATtiny2313 $2
2x LM339 (quad comparator) $5
7432 (quad OR gate)
MCP4131 (digital potentiometer) $2
2x Foam Board $8
Various resistors, capacitors $5
Total: $40
Future
Lots of shooting
Work on website: www.etarg.net
Continue to improve hardware and software
Get others involved
Conclusion
We have shown that:
The design principles are sound
It can be built on a tight budget
But we have lots left to improve
Electronic Targets
Matt Waterman
Donato Salazar
Dr. Abul Azad (Advisor)
Tech 478 – Senior Design II
The Project
An electronic target system that can be shot with a variety of projectiles, reporting the location of each impact to a computer next to the shooter
Introduction to Target Shooting
Target shooting is a popular sport in the US
Paper targets, stapled to cardboard or plastic signboard, are typically used
Impacts observed through:
Direct observation (close range or shot spotter downrange)
Optics (scope, binoculars, etc)
Target reaction (steel plates, clays)
Project Overview
Projectiles impact the target and a wave propagates outward from the impact point toward sensors mounted on the periphery of the target
The wave arrives at each sensor at a different time depending on the impact location
Project OverviewContinued
Electronics monitor the sensors and precisely measure the arrival times (TOA)
The arrival times are transmitted to a PC where the differences between the arrival times (TDOA) are used to calculate the impact location
ObjectivesTechnical
Design and build an electronic target system
Target itself
Electronics on target to detect impacts
Software on laptop displays impacts
Accurate to within 5 mm
Portable
ObjectivesAdditional
Components are cheap and easy to find
Design can be replicated by non-experts
Publish the research, designs, schematics, software, etc online
Researchwikipedia.org
Triangulation
Multilateration
Wave propagation
Sonic boom
Buffer amplifier
Piezoelectric sensor
and many more
ResearchOther sources
General internet (via google)
Academic websites Dr. Bill Rison, New Mexico Tech – EE 389
Forums, blogs, tutorials
Journals and academic publications (via NIU library and google scholar)
Patents
Datasheets and manufacturer documents
Textbooks and class notes
ResearchLive-fire testing
Measure and record supersonic shockwaves
Test:
Sensors
Target designs
Material durability
Acoustic isolation methods
Timing circuits
TheoryWave Propagation
May use supersonic (”soft” target) or impact shockwaves (”hard” target)
Both methods work the same way, but require slightly different target designs, sensors, and amplification/buffering
Target must provide uniform wave propagation
Soft target: air
Hard target: steel, plastic
TheoryWave Propagation – Supersonic Shockwave
Shockwave generated continuously at the front of the projectile
Propagates outward at the speed of sound
Arrives as an ”N-Wave”
TheoryWave Propagation – Impact Shockwave
Impact shockwave generated by the projectile hitting the target (it may or may not go through the target)
Shockwave generated is very similar to a supersonic shockwave
Target surface will propagate the energy much faster than air
Harder target surfaces will transmit farther, make larger targets
TheoryMultilateration
Triangulation is easy
Unknown point can be calculated using distance, angles, or both, to two known points
D A=1P
√( x−x A)2+( y− yA)
2
TheoryMultilateration
Multilateration is more difficult because only TDOA are known
d AB=t A−t B=1P
[√(x−x A)2+( y− yA)
2−√(x−xB)
2+( y− yB)
2]
TheoryMultilateration
TDOA between top-left and bottom-left
TheoryMultilateration
Bottom radius is arbitrary (within a range)
Top is TDOA plus same arbitrary distance
TheoryMultilateration
Calculate repeatedly and you get a curve that intersects the impact point
TheoryMultilateration
Curves generated for each pair of sensors intersect at impact location
TheoryMultilateration – Hyperbolas
Each TDOA produces a hyperbola
1=(x−x0)
2
a2−
( y− y0)2
b2
TheoryMultilateration – Hyperbolas
1=
(± y−y AD2
)2
(PDAB
2)
2+
(x− xAB)2
(PDAB
2)
2
−(yAD2
)2
1=( y± y AD)
2
(PDBC
2)
2
−(xCD2
)2+
(x−xCD2
)2
(PDBC
2)
2
TheoryMultilateration - So how do we use TDOA?
Every two hyperbolas generate one possible impact location
Due to TOA and propagation speed error, the intersections are unlikely to coincide
Intersections averaged to produce the impact location
Standard deviation indicates the certainty
Propagation speed can be adjusted to minimize the deviation
TheoryMultilateration – How do we calculate intersections?
Two equations with two unknowns
Use triangulation equations and iterate through ”extra” values added to three radii until a valid point is found
Iterate through x or y values in the hyperbolas until the intersection is found
Substitute hyperbolic equations to obtain quartic equation and apply the quartic formula
TheoryMultilateration – Quartic what?
TheoryMultilateration – Quartic Formula?
ImplementationTarget Design - Hard Target
Shockwave from impact propagates directly
Piezoelectric discs mounted in the corners
Plastic signboard, foam board, cardboard
Plastic/acrylic suitable for Airsoft (plastic BBs)
Steel
ImplementationTarget Design - Soft (Hollow) Target
Supersonic shockwave from bullet propagates through air
Microphones in the corners, isolated from target frame
Wood frame with rubber face and rear
Design must provide noise isolation
ImplementationTarget Design - Soft Target – Microphone Isolation
Waves propagate more quickly in the frame
Microphone must be isolated from frame
Isolated from external noise
ImplementationTarget Design - Hard Target vs Soft Target
Hard Target
Sensors mounted directly to target
Very heavy if made of steel
Propagates quickly (less accuracy)
Buffers usually required
Soft Target
Sensors carefully isolated
Relatively light, even if large
Propagates slowly (greater accuracy)
Amplification usually required
ImplementationTarget Design – Target Materials
Usually consumable (i.e. the projectiles create holes that eat away at the target)
Some hard targets may be designed to not be consumable (e.g. steel)
Soft targets that must provide noise isolation should use a target face that minimizes the size of the holes
We tested numerous materials for hole size
ImplementationTarget Design – Target Materials – Hole Size
ImplementationTarget Design – Target Materials – Foam Board
Foam Board is a great choice for a hard target design
Polystyrene sandwiched between paper
Propagation isn't perfect
ImplementationTOA Detection – How do you detect wave arrival?
Threshold is the simplest: Wave reached a certain value, triggers an arrival
Implemented in:
Software with ADCs
Hardware with comparators
ImplementationTOA Detection – Why is threshold detection bad?
If waves have different intensities, they will trigger at different times
Propagation follows inverse square law, so widely-varying intensities a given
ImplementationTOA Detection – Threshold with Zero-Detection
Zero-detection compares the signal to 0 v
Produces binary 1 when positive, 0 when negative
Combine with threshold-detection for accurate timing
ImplementationTOA Detection – Target Simulator
ImplementationTimer Circuit
ImplementationTimer Circuit
ImplementationTimer Circuit - Specifications
Olimex AVR board
Atmel ATtiny2313
20 MHz clock max
4 channels
2N5459 J-FET
LM339 comparators
RS232 output
AC/DC powered
ImplementationTimer Circuit – Embedded Software
AVRs are very fast (1 instruction per clock cycle)
Software written in C, compiles efficiently
Channel data (pins, TOA times) stored in a circular linked-list
Channels scanned for threshold triggering and removed from the list when triggered
Zero-detectors connected to ICP and enabled as needed
ImplementationClient Software
Currently very basic
Written in C
Cross-platform compatible libraries used
Interfaces with the timer system through serial connection
Calculates several hyperbolic intersections, averages them, and computes standard deviation
ImplementationComputing Hyperbolic Intersections
Curves generated for each pair of sensors intersect at impact location
Results
It works
Current working model:
Foam board target (.45 x .45 m)
Piezo sensors
Using only threshold triggering (zero detection not yet programmed)
Accurate to 2 cm
We have not been able to build a successful soft target
ResultsDemonstration
CostOur Specific Implementation
Part Price
Olimex AVR Development Board $17
ATtiny2313 $2
2x LM339 (quad comparator) $5
7432 (quad OR gate)
MCP4131 (digital potentiometer) $2
2x Foam Board $8
Various resistors, capacitors $5
Total: $40
Future
Lots of shooting
Work on website: www.etarg.net
Continue to improve hardware and software
Get others involved
Conclusion
We have shown that:
The design principles are sound
It can be built on a tight budget
But we have lots left to improve