Sign in, say "hi", ... and be welcomed.

Re: Thermal Snooper Question for Rick M.

Postby Rick Masters » Sat Sep 03, 2016 11:27 pm

From "Explorations with the Thermal Snooper" by Rick Masters Aug 1986 Soaring Magazine
https://web.archive.org/web/20110902024918/http://www.cometclones.com/illusion.htm

[I have set up a glider on Mazourka Peak north launch (9100 ft) in Owens Valley for my first flight with the Thermal Snooper.]

I clamped the Snooper to my instrument mount and turned it on. It's "beeps" and "boops" were easily discernible from the "chirps" and "buzzes" of my variometer. I assumed the Snooper would quiet down after the circuits normalized - but it didn't. That was my first surprise. Instead of remaining silent like my vario, the Snooper was giving me a running commentary about the quality of thermal cycles rolling through launch. When a freshening breeze began to tease the first flag 100 feet down the mountainside, it would begin to "beep" hesitantly. Then as the nearer flags became agitated, the "beeps" would increase excitedly. If the thermal was centered and all the flags stood out from the north, the Snooper would fall silent. But when the flags skewed off to the east or west as a thermal passed to the side, the Snooper would immediately follow its "beeps" with a series of low "boops." Fascinated, I stood at takeoff for 20 minutes. For each cycle that passed through, the Snooper gave an indication of it's size by the duration and frequency of it's "beeping." A few "beeps" meant a small, short-lived thermal. Many "beeps" told of the arrival of a large thermal. At some point during each thermal's passing, the Snooper would begin to "boop" - a few "boops" for small thermals, many "boops" for large thermals. It was obvious that these "boops" warned of the "downside" of the thermal's cycle. Years of observation have led me to attribute the majority of takeoff accidents in thermal conditions to pilots launching into the tail end, or down-side, of thermaI cycles. It took a lot of practice to read thermals accurately, and some pilots just never became adept at it. Now here I was with a tiny instrument clearly identifying both the up and down sides of each cycle! I was impressed. Even if the Thermal Snooper didn't do anything else, it promised to make mountain flying a lot safer.
Rick Masters
Contributor
Contributor
 
Posts: 3260
Joined: Fri Jul 15, 2011 5:11 am

Re: Thermal Snooper Question for Rick M.

Postby danstrider » Sun Sep 04, 2016 8:57 am

Rick,
Thanks for the copy/paste from your article. I was actually re-reading that document this morning when I saw notification of the two new posts. What I may try is to put the snooper on a tripod next to a streamer and fly a discus-launched glider around. The streamer gives me known indicators, and if I can mentally associate the snooper audio to the streamer, and then go find the thermal with the model, that's a great start to understanding.

Bob,
That code is for an Arduino, which is basically C code. The real magic is in the sensor itself, all done in analog-land.

Since I'm not a hang-glider pilot, it might make sense for me to build a little unit on par with the original snooper and have a couple of you active guys fly with the unit to report feedback. Since the processing for the audio is being done in digital land now, I could add a couple trim potentiometers so the pilot could dial around the sensitivity of the audio. Sounds like a fun little winter project. This is definitely reinventing the wheel that Alan and Rick already pioneered; perhaps now it will not be lost to history!

In the meantime, I'm going to figure out mounting this into an RC glider that I can fly locally. Having both a vario and the snooper audio running simultaneously might be a little confusing. Separately, I have another larger aircraft that can log the GPS position & time, vario signal, and this snooper reading for doing some more fine-grained post-processing on the computer. Hopefully the on-ground streamer test and the RC experimentation should already point to ways to interpret the data before getting to that point thought.

Dan
danstrider
User avatar
Contributor
Contributor
 
Posts: 12
Joined: Sun Dec 27, 2015 8:56 am

Re: Thermal Snooper Question for Rick M.

Postby Bill Cummings » Mon Sep 05, 2016 8:25 pm

Dan I posted a comment to your youtube post.
https://youtu.be/GHbBhHSSsBc
Bill Cummings
User avatar
Contributor
Contributor
 
Posts: 3359
Joined: Wed Jul 13, 2011 6:20 pm
Location: Las Cruces NM 88005 (Region 4)

Re: Thermal Snooper Question for Rick M.

Postby danstrider » Thu Sep 15, 2016 6:17 pm

Bill, I got your youtube comment. Heard that it's not sensitive enough yet.

I updated the Arduino audio code a bit to get some additional processing gain. It now does a running average on the temperature differential signal between beeps/boops. That allowed turning up the sensitivity without getting a ton of noise. I haven't shot another video, in lieu of something better...

The new snooper took a ride on a model sailplane alongside several other sensors. It was literally hanging outside a hatch unshielded from the sun, but it was quite overcast outside and didn't seem affected by the orientation. Despite the overcast, there was a huge thermal that intermittently sat on the middle of the field and the plane flew through it multiple times. In the two plots, whenever the plane went below an altitude of 150, the motor came on and held it to that altitude. Any climbs above that altitude came from thermal activity and the motor was off. On one plot, the raw temperature differential signal is shown. On the other is a processed snooper signal which needs more explanation.

The snooper signal is an implementation of how I think the original Snooper's audio works. The temperature differential signal is integrated. When it crosses a threshold, the integrator is reset and a beep or boop sound is made. If the threshold is crossed in the positive direction, that's a beep and refers to the temperature is warming. If the threshold is crossed in the negative direction, that's a boop and refers to the temperature cooling. In the plot, a beep is shown as a positive line. If there are a lot of positive lines together, that's representative of a lot of beep sounds. Theoretically, that probably means it's getting warmer and probably entering a thermal.

I don't really know what the point of this post is other than to share that the sensor has flown and show the snooper is now in digital processing land. I can plot the snooper versus the vario fairly easily next. It may be interesting to plot the snooper signal versus the GPS position as well to see if it shows flying into the thermal. Who knows??

Dan
Attachments
temperature differential.jpg
raw temperature differential signal
temperature differential.jpg (76.04 KiB) Viewed 6296 times
snooper plot.jpg
processed snooper, similar to the beep/boop audio signal
snooper plot.jpg (80.72 KiB) Viewed 6296 times
snooper.JPG
There it is hanging out of the hatch.
snooper.JPG (180.52 KiB) Viewed 6296 times
danstrider
User avatar
Contributor
Contributor
 
Posts: 12
Joined: Sun Dec 27, 2015 8:56 am

Re: Thermal Snooper Question for Rick M.

Postby Harry » Thu Sep 15, 2016 9:31 pm

Now here I was with a tiny instrument clearly identifying both the up and down sides of each cycle! I was impressed. Even if the Thermal Snooper didn't do anything else, it promised to make mountain flying a lot safer.


I'm beginning to believe that this is the best application of the thermal snooper.

I recently flew with my new Flytec vario with built in GPS. It plots and records many variables. One of its features is to track thermals. It has a pointer that indicates where one might be as it records lift and geographic location. In addition to that, the newest mylar gliders without king posts, are quite fast (maybe too fast) for the thermal snooper. While flying at Colorado Fly Week this month, I got to see just how fast the Atos and other newer wings really are. They are very fast compared to previous generations of dacron wings.

I've stopped working on my analog version of the snooper, but will continue this winter as the snow creeps in. Been too busy learning how to use my Flytec to be distracted by another instrument.

I did see the need for a launch site thermal detector as some of the thermal cycles were quite unpredictable.
The thermal snooper would be a nice tool for launch safety over anything else.
Harry Martin
Fear is not boring, the stupid shall be punished
Harry
User avatar
Contributor
Contributor
 
Posts: 68
Joined: Sun Jul 19, 2015 7:17 am
Location: Wild and windy Casper, Wyoming

Re: Thermal Snooper Question for Rick M.

Postby Rick Masters » Sat Sep 17, 2016 7:21 am

I'm beginning to believe that [sensing thermals at launch] is the best application of the thermal snooper.

If you try to "improve" on the Thermal Snooper by making it more sensitive than the original version, you will come to that conclusion.
More is not always better.
The best application for a properly designed Thermal Snooper is finding thermals in the air. I know that for a fact.

...the newest mylar gliders without king posts, are quite fast (maybe too fast) for the thermal snooper.

What happens if you slow them down? They explode?     :o    http://www.icd10data.com/ICD10CM/Codes/V00-Y99/V95-V97/V96-/V96.15XA
Rick Masters
Contributor
Contributor
 
Posts: 3260
Joined: Fri Jul 15, 2011 5:11 am

Re: Thermal Snooper Question for Rick M.

Postby danstrider » Sun Oct 16, 2016 9:24 am

I've been tooling around with the the digital processing for the new snooper. My quickie, first-cut averager didn't match super well with how the original Snooper processed the sensor signal into beeps. Now, a pair of low-pass filters reduces the initial sensitivity and provides some inertia to the measurement, and an integrator with upper and lower thresholds provides the beeper sensitivity.

I also came across an original Thermal Snooper (on loan, which I very much need to return to its owner). It is extremely informative to have the original for comparing the signal processing.

Here's a comparison video (https://www.youtube.com/watch?v=mdlbixVa0ss) between the original Thermal Snooper and the new sensor with improved digital filter gains. You have to listen closely to the sounds because it's the differences between the two beepers that is interesting. Rick, this should make you happy: overall, the responses are pretty close to the same now. I'm satisfied that the new instrument can effectively match the old.

Now (still?), the biggest question is how to interpret the beeps/boops in-flight. Rick's descriptions are certainly the starting point. I took 10hr of data of snooper and vario data this week for making some comparisons and trying to make those correlations. More to come after post-processing...

Dan


Updated code:
Code: Select all
/*
  Beeper/Booper for the thermal snooper.
  Dan Edwards, 2016-09-04
 
  2016-10-15:
  reworked the digital filtering to two low-pass filters and an integrator

  circuit:
  * 8-ohm speaker on digital pin 9
  * themal snooper on analog pin A0
*/

#define speakerPin 9    // pin number
#define snooperPin A0   // pin number

#define beepFreq 1200   // Hz
#define boopFreq 400    // Hz
#define durate 75       // miliseconds

#define dt_ms 25        // time between readings (approx)

#define averagerFast 100   // count of the averager: higher is more filtering but time lag
  // reduces the response time
#define averagerSlow 200   // count of the averager: higher is more filtering but time lag
  // gives some measurement inertia
#define thresh 100         // threshold for integrator: lower is more sensitive
  // sensitivity

void setup() {
  // sensor warm-up time
  delay(100);
 
  // wake-up tone
  tone(speakerPin, 900, 100);
  delay(durate+100);
  tone(speakerPin, 900, 100);
  delay(durate+100);
  tone(speakerPin, 1200, 100);
  delay(durate+100);
  tone(speakerPin, 400, 100);
  delay(500);
   
  // initialize serial communications for debugging
  Serial.begin(9600);
}

void loop() {
  static float avgReadingSlow = 512.0;  // for rolling averager
  static float avgReadingFast = 512.0;  // for rollinw averager
  static float filteredVal = 0.0;       // filtered value
  static float integVal = 0.0;          // for integrator

  // read the sensor
  int snooperReading = analogRead(snooperPin);

  // rolling average for smoothing and inertia
  avgReadingSlow = approxRollingAverage(avgReadingSlow, snooperReading, averagerSlow);
  avgReadingFast = approxRollingAverage(avgReadingFast, snooperReading, averagerFast);
 
  // remove bias
  filteredVal = avgReadingFast - avgReadingSlow;

  // integrate
  integVal += filteredVal; // integrate the filtered reading

  // print the sensor reading
  Serial.print(snooperReading);
  Serial.print("  ");
  Serial.print(avgReadingFast);
  Serial.print("  ");
  Serial.print(avgReadingSlow);
  Serial.print("  ");
  Serial.print(filteredVal);
  Serial.print("  ");
  Serial.println(integVal);

  // play tone: beep is rising temperature, boop is falling temperature
  if (integVal >= thresh) {
    Serial.println("BEEP");
    tone(speakerPin, boopFreq, durate); // beep
    integVal = 0.0; // reset
  } else if (integVal <= -thresh) {
    Serial.println("   boop");
    tone(speakerPin, beepFreq, durate); // boop
    integVal = 0.0; // reset
  }

  delay(dt_ms);
}

float approxRollingAverage(double avg, double input, int N) {
  avg -= avg / N;
  avg += input / N;
  return avg;
}
danstrider
User avatar
Contributor
Contributor
 
Posts: 12
Joined: Sun Dec 27, 2015 8:56 am

Re: Thermal Snooper Question for Rick M.

Postby Bill Cummings » Sun Oct 16, 2016 10:06 pm

Dan, My towing friend brought some history of HG and gave it to me to preserve and it included a 2x6" pamphlet by Rick Masters Titled "EXPLORATIONS with the THERMAL SNOOPER."
(Rick does you phone number still end in 25?)
You may have this info. from Rick already but I could mail it to you if not. (the print is so small I can't read it.)
You may not need the actual snooper any more due to the one you had on loan but I think I now
have a $25.00 price on the one here in Las Cruces, NM. It has the tweeter broke off. (It needs to be reattached.)
Let me know if you would like that deal to have one of your own.
Bill Cummings
User avatar
Contributor
Contributor
 
Posts: 3359
Joined: Wed Jul 13, 2011 6:20 pm
Location: Las Cruces NM 88005 (Region 4)

Re: Thermal Snooper Question for Rick M.

Postby Rick Masters » Wed Oct 19, 2016 10:33 am

Dan, I am really enjoying your progress.
Having a reference point that emulates the original Snooper response provides the ideal starting point for the test pilot to experiment and fine-tune your instrument in flight.
Rick Masters
Contributor
Contributor
 
Posts: 3260
Joined: Fri Jul 15, 2011 5:11 am

Re: Thermal Snooper Question for Rick M.

Postby danstrider » Sun Oct 30, 2016 7:07 pm

Hi Rick,
I'm glad you're enjoying. It feels wonderful to have this starting point now.

Hi Bill,
I'd be grateful to get ahold of that snooper for $25. Even currently broken, it's useful.

The Explorations document is back in this thread I believe in this post: http://ushawks.org/forum/viewtopic.php?f=2&t=789&start=30#p15172. Rick kindly sent me a soft-copy which I formatted and posted as a PDF. Hopefully the internet archive has grabbed it by now so it can't be lost!

I've started going through the saved data file and post-processing. First step was duplicating the filtering in Matlab rather than Arduino. That made the same snooper signal available for co-plotting alongside the netto vario. Understanding the snooper signal is a bit tricky. Plotting the beeps/boops along the vehicle's flight path isn't terribly descriptive, unlike the vario, but that is the right signal. Sometimes there are several beeps in a row and that appears to correlate with the vario rising. But not always. Often there is a series of boops after the series of beeps. But not always. It's going to take some thinking about this to figure out a heuristic to give reliable decisions. This is the fun part :-)

Dan
danstrider
User avatar
Contributor
Contributor
 
Posts: 12
Joined: Sun Dec 27, 2015 8:56 am

PreviousNext
Forum Statistics

Who is online

Users browsing this forum: No registered users and 30 guests

Options

Return to Hang Gliding General