The biggest wins are in improving the waveform from this one (called "continuous wave" or CW in the radar/sonar literature) to one with more bandwidth. One option is to sweep the frequency continuously (FMCW) or with breaks. Another option is to switch from this continuous noise to pulses of noise, just turning the sound on and off. Pulsing like this increases bandwidth (because the "turning on and off" introduces higher-bandwidth edges) very simply. Modulating the frequency during the pulse helps more, creating a wolf-whistle like "chirp".
Doing the signal processing for these alternative waveforms is a little bit trickier than the technique this page uses. It can be done in the time domain with correlation, or in the frequency domain with the the FFT and simple multiplication.
You can get ranging information if you use a generating polynomial to spread the transmitted signal into noise and then change it rather often and correlate past transmitted data with whats received. This probably makes a lot more sense if you already understand what I'm talking about. By example:
Your generating polynomial for psuedorandom noise says 2,42,9,73,1
You transmit 20000+2 Hz 20000+42 Hz you get the idea.
So you transmitted a 2, 42, 9, 73, 1 signal. OK.
Now reflecting back are multiple faint signals saying 2, 42, 9, 73, 1 at different delays shifted in time because the objects are different distance away...
Why this helps is you only get one range data point when you send a beep or a CW signal, but now you get a discrete range data point every time your generating polynomial switches freq, which is probably pretty often.
Also its basically unjam able unless the thing trying to jam you happens to know your generating polynomial. Of course you can use something cryptographically more advanced as a random number generator. We are now entering deep (classified?) radar and ECM and EECM stuff. This rabbit hole goes down quite a bit further of course. Cool eh?
If you're willing to sit on a desk chair and be pushed around with your laptop at a constant speed, maybe you could make a synthetic aperture sonar. Maybe. That would be impressive.
I doubt that this particular technique is classified, it is fairly well known and dates back to the early days of EW. One interesting angle is that the basic technique (frequency hopping) was invented by a famous actress and a composer (http://en.wikipedia.org/wiki/Hedy_Lamarr#Frequency-hopping_s...).
Also, piezoelectric transducers can have a somewhat limited frequency range.
I've actually been looking into making some high quality sonar equipment from scratch, but getting good datasheets on ultrasonic transducers has been a royal pain in the butt.
Maybe my dog is broken :(
However it makes me crazy... I hear that noise clear as a bell and I'm 42. Wikipedia says that human hearing typically goes up to 20kHz. (http://en.wikipedia.org/wiki/Hearing_range#Humans)
So maybe you want to go high enough that a much lower % of the population will go bonkers?
But hey, this is an excellent project! Love it.
One could also use a pseudo-random code instead of a steady signal to further distinguish the signal from the noise (in the style of GPS).