Can an ultrasonic sensor detect a bullet in flight?

I'm thinking about an inexpensive automatic scoring target. I've thought through several methods of locating a bullet in flight, but all require very high precision, extremely high speed, expensive components and/or wasted expendables. I don't know much about ultrasonic range sensors beyond the general concept, so I thought I'd ask to see if it is worth pursuing.

Can an ultrasonic sensor detect the passage of a bullet? Can it detect the distance to or location of the bullet in a plane? If it can't detect the location of the bullet, it might still be useful if it can detect a bullet passing somewhere in a window to trigger other parts of the system.

The minimum requirements to be useful are to detect a large caliber bullet (0.45" diam, 0.6" length / 11.5mm, 15mm) traveling at subsonic speed (850fps / 260m/s) with an accuracy of 0.5" (12.5mm) within a 12x12" (30cm) window. Of course it would be better to improve the accuracy and be able to detect smaller & faster bullets in a larger window, but the minimum requirements would be suitable for training.

At 850 fps a bullet 0.6" long passes through a plane in about 60uS. Does the speed or time of passage affect what frequency is needed?

I assume that since the bullet is travelling at about 75% of speed of sound that it is not feasible to detect the bullet passage from the front or rear. Please correct me if I am wrong.

If it is possible to detect the distance to the bullet, I would need 3 or more sensors to triangulate on the position. I assume they can be run at different frequencies, but that would require some serious filtering. Is there a common way this is done?

Triangulation using (possibly ultrasonic) microphones would be more feasible - the amplitude of the sound waves created by the bullet should dwarf anything an ultrasound sensor would be putting out. sound travels 1/2" in about 35us so that's the granularity of timing information. However I don't know if this is really feasible at all - a supersonic bullet would be easier as shock wave has well defined start. Relative sound amplitude will give some information too.

A grid of foil strips would be reliably cut by a passing bullet - but wouldn't be reusable.

An array of light beam sensors would work if they have a fast enough response

Check this thread -,52583.0.html -

Can you assume that a subsonic bullet has a uniform shock wave as it passes?

If so, microphones should be able to detect that wave. I would first look at the waveform out of two identical microphones on a dual-trace oscilloscope as a bullet passes about 6 inches from each mike. Then fire a shot much closer to one microphone than the other, and see if you have a reasonable signal difference to work with..

CAUTION: "Terry is full of Stories" WARNING:

Years ago, the professional sharpshooter at Winchesters in New Haven named Jack Lacey shot a Necco candy wafer out of my fingers at 50 feet. Wow. About 60 years ago.. I THINK I could hear the bullet pass before the sound of the gun. Very possibly my young imagination.

Needless to say, that probably doesn't happen any more. I was captain of the Rifle Team and I used to drive with my model 52 Winchester in the back seat and carry it into high school.

Ancient History 8)

Most target pistol bullets are subsonic, so detecting the ‘sonic boom’ isn’t feasible. I hadn’t thought about detecting a shock wave from a subsonic bullet. I’m not terribly optimistic about it, but it’s worth a try.

Most commercial electronic scoring targets use a plastic film and detect the sound of the bullet breaking the film. There are microphones in each corner and triangulate from the time difference between the 4 signals just like the referenced thread is trying to do. It works well, but after each shot the film has to advance so there is a clean spot for the next shot to hit. Needless to say they go through a lot of the film, which has to be bought, changed and disposed. I am hoping to achieve it without expendables & waste.

I’ve done quite a bit of thinking and modelling of light curtains. I have no doubt it would work, but the simplest solution I’ve come up with would need many photo-diodes and (probably) an FPGA or high power micro to deal with the large number of IO pins and speed required.

Terry - I’m not sure whether to be impressed or horrified at the thought of holding a necco wafer and letting someone (even a great sharpshooter) shoot it :relaxed:

What resolution over what size do you need? So, how many X How many Y?

Phototransistors are cheap. Like 10 cents.

WhatIf?? - you illuminate a row of phototransistors with 2 or 3 MR16 type halogen lamps, thru a slit to control the illumination falling on them. - Each phototransistor is wired from +5V with a pulldown resistor to Gnd. When all are illuminated, all outputs are HIGH. - Each phototransistor goes to an input on a 74HC165 (See: - Scroll down) - Each phototransistor also drives an 8-input NAND gate (74LS30) When any phototransistor goes LOW, the gate pulses Parallel Load on the 74HC165. - You clock out the data serially to Arduino. The bit for the trigger phototransistor is the only one LOW.

You could expand this to two axes, and expand the 8 X or Y to 16.

2 or 3 dollars in parts, Some circuit board or drilled plastic strip, plus the illumination and the bullet shields for the hardware. Cat5 cable to the firing position and the Arduino: +5, Gnd, Clock, Data, Bullet detected. (Illumination power separate)..

Maybe the phototransistors aren't fast enough? 60 uS seems OK.


Phototransistors would be fast enough for large slow bullets. I'm leaning to photodiodes which are faster and cost about the same.

If there is a single light source it would have to be set pretty far back or the detectors would need to extend beyond the window to have full coverage. The system will need to fit in one shooting lane (about 3-4') and I won't be able to leave it set up, so it needs to be semi-portable.

Single source would simplify the system. I've been assuming I would need multiple sources and switch them in sequence reading all the detectors in each state. I dismissed a single source early in my thought process, but I think I'll go back and look again.

It would be tremendously simpler if I could reliably trigger the the system and latch the detectors, which leads back to my original question about US sensors or other methods of detecting a the passage of a bullet.

Thanks for the ideas. If nothing else it makes me question some of my assumptions.

Something to look into might be a high-speed linear CCD or CMOS array; they do make 2D versions (which are used in high-speed digital video cameras; that is, those kinds of video cameras that can "shoot" many thousands of frames per second); two of those (one each for X and Y positioning) oriented at right angles to each other, along with IR illumination -might- be fast enough to "catch" the bullet as it passes. Whether such sensors exist, how easy they are to interface with, and whether the Arduino is fast enough to clock the data out - all completely unknown...

It would be tremendously simpler if I could reliably trigger the the system and latch the detectors

…that was sort of my idea that whenever ANY photo(whatever) detector was triggered it would latch ALL of them into the 74LS165 register. Then you can clock that data out later.

I've never tried it, but how about some of those Doppler radar modules? If they get a big enough return off an object that size, I'd imagine they could be made very insensitive to other influences, because very few objects in the environment are going to produce Doppler frequencies that high; simply high-pass filter the AF output.

We used to sell a couple of brands of chronometers in the gun shop where I used to work. The "cheap" one, had 2 "gates" a foot apart, as the round passed through it broke a strip of foil. Only problem with that one was with a REALLY high speed round, 220 Swift, 22-250 or 17, the projectile would often disintegrate striking one or the other foil strip. That unit was AUS$800, back in the '80's.

The other unit used 2 light gates a foot apart. It was a little better, but not by much. It cost AUS$1800!!!!

I have seen "modern" units that use 2 magnetic gates that I'll assume exploit eddy currents as the spinning projectile goes through them.

Back in ye olde times, they used to work out impact velocity by hitting a known mass of lead and measuring how far it moved, either with a pendulum or the lead block simply got pushed back.

You need to decide if you want to measure muzzle velocity or impact velocity.

In the back section of the RCBS reloading guide there is a whole section devoted to calculating bullet drop, impact velocity and windage. These equations all take into account projectile profile, muzzle velocity, air temperature, humidity, barometric pressure and firing angle.

For a given projectile weight the profile be it, spire point, round nosed, hollow point, boat tail or combinations of each will make a HUGE difference. My favourite 303 British loads, 180gr round nosed and 165gr spire points have around the same CEP. But only because I spent ages at the range experimenting with different powders and loads. I mainly did that so I could use both rounds with the same sight settings.

Now that I have digital accelerometers I've been wondering if I could mount one on my rifle a measure how much recoil acceleration there is to calculate muzzle velocity. You'd have to bench fire, which is no big deal, but it would give you a ball park figure.

Thanks AWOL. That's an interesting idea. I've not considered radar, because I thought it would be too expensive, but I just did a quick search and found some inexpensive units. I'm not sure if the off-the-shelf units will fit the bill, but it's another approach I'll consider.

Thanks cyberteque. I have an inexpensive chronometer for speed, which uses optical sensors. The electronics detect the slight reduction in light when the bullet passes over it. I hadn't thought about using that (or the same method) as a trigger for the system. Good idea.

Thanks cr0sh. I looked into linear CCD arrays early on and set them aside due to cost, speed and size. I don't remember all the details, but the longest ones were only a few inches with far more resolution than I need. I suppose I could use a lens, but I think it will be easier to space individual detectors out over a longer length. I'll keep it in mind if I run into trouble and have to find another way. Plus, I'm sure they're getting cheaper all the time.

Thanks terryking228. Your questions / suggestions have spurred a re-thinking of the project. I think I can do it with one continuous source (LED, Halogen etc) and a reasonable number of detectors on the opposite side (multiplied times 4 sides). I'll have to do some cypherin' and tinkerin' to see if I need to latch the signals or if I can read them fast enough, but that is straightforward enough.

Any more ideas, thoughts or questions, please keep 'em coming.


I work with same type of problems – look at dose link:

My problem is how I can detect a raising ramp from multiple microphones. Reading in loop is not exact.

Would have been better to continue with your original thread and just link to this four-year old thread if needed. Re-asking your question here could be considered a cross-post, which is frowned upon...

But, back to your interesting problem: you might get a better response if you post a figure showing one or more clear samples of the waveform that is produced when a bullet passes by a microphone and when the sound of the shot reaches the microphone (as DrDiettrich mentions in post #18 of your original thread). Exactly what does this "rising waveform" that you are trying to detect look like (in terms of voltage vs time)?

PS: and, out of curiosity, what microphones are you using?