Shop OBEX P1 Docs P2 Docs Learn Events
Radio-activated, voice-output anemometer — Parallax Forums

Radio-activated, voice-output anemometer

Phil Pilgrim (PhiPi)Phil Pilgrim (PhiPi) Posts: 23,514
edited 2009-05-21 16:02 in Propeller 1
A friend of mine is into paragliding. He's been pestering me for quite some time now to build an anemometer that could be set up in the landing zone and queried by radio to obtain the current windspeed. (Apparently this is important information to ensure a safe landing.) This is a perfect project for the Propeller! I had all the parts necessary to do it, I was between work projects, and today was his birthday. So what better time to "just do it" than the present — well, starting last Saturday, anyway.

Normally, I would post something like this in the "Finished Projects" forum, but I don't have complete enough documentation for it to qualify there; hence my posting of it here — more of a teaser than anything, I suppose. The project is based around an early-version prototype of a Propeller-based board I designed awhile back and which, hopefully, will appear on the market before summer's end. (The production version has a different pinout and some additional features, which partly explains the dearth of documentation.) The board was designed with audio and video processing in mind, with an eye on two-way radio communication. To the board are connected a Hall-effect sensor-based anemometer that I salvaged from scrap and an FRS radio provided a year or so ago by my hopeful friend. The electronics are housed in a waterproof plastic enclosure and run on four NiMH rechargeable batteries (photos below).

I discovered late in the design phase that the Hall-effect sensor (AS41) had a voltage/temperature sensitivity, wherein it would Smile out at low temps if the voltage was too low. I had mounted the anemometer to my car to calibrate the windspeed and couldn't figure out why the stated speed would plummet when I tested it at 40 mph. 'Turns out the windchill shut down the sensor, which was running on 3.3V. After boosting its operating voltage to the batteries' 4.8V, the temperature dependency went away. But I've had to add a 4.2V voltage detector, so the Propeller can report a low-battery condition instead of a possibly too-low windspeed. 'Better safe than sorry!

In operation the anemometer works as follows:

1. The person aloft presses the "call" button on his radio. This sends a warbling telephone-like ringing sound over the air.

2. The Propeller is listening on its radio for the call sound, which consists of alternating 500Hz and 750Hz tones.

3. Once it detects enough of these tones, it listens for futher traffic on the channel, requiring at least one full second of continuous silence before transmitting.

4. To transmit, it enables the radio's push-to-talk (PTT) circuit by pulling the radio's microphone input to ground through a 2.2K resistor.

5. Then, using my "talker" object and Chip's "vocaltract" object, it transmits, by simulated voice, the two-minute boxcar-averaged windspeed, along with the recent high five-second gust speed.

6. Then it disengages the PTT and waits for the next "ring".

One cog (Spin) is dedicated to counting pulses from the anemometer. I had hoped to use a Propeller counter for this, but I discovered some glitches on the low-to-high transition, which caused the counter to count too many edges. Adding a second magnet with opposing polarity seems to have cured the glitches, but I'd already written the debouncing code, so I just kept it (birthdays being an absolute deadline and all, with me running out of time).

Another cog (Spin) is dedicated to reading the pulse counts and maintaining the average and gust speeds.

The main cog (Spin) handles the ring detection, obtains the windpseeds and outputs them in a very robotic voice via the talker object: "Windspeed is <digit><digit>, gusting to <digit><digit>." The talker object calls Chip's voicebox object which uses another cog (Assembler). If the battery is low, it just says, "Low battery."

I have no idea yet what the range or battery life will be. I guess I'll find out soon enough. If the batteries run down too quickly, I'll have to do some reprogramming to eliminate a cog or two, perhaps, or get it to work with a lower clock speed. But, for the time being, my friend is ecstatic with the unit and vowed to set it up in his backyard and check it all night long, which I'm sure his loving wife will enjoy with equal enthusiasm.

-Phil

Post Edited (Phil Pilgrim (PhiPi)) : 5/21/2009 8:28:46 AM GMT
538 x 800 - 55K
755 x 765 - 70K

Comments

  • RossHRossH Posts: 5,350
    edited 2009-05-21 07:54
    Very impressive Phil.

    Can you make one that detects some of the hot air that blows around these forums?

    Ross.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Catalina - a FREE C compiler for the Propeller - see Catalina
  • TubularTubular Posts: 4,622
    edited 2009-05-21 11:21
    Very neat, Phil.

    Well spotted on the wind-chill, thats exactly the kind of "non-datasheet" quirk that could soak up many frustrated hours (if I were chasing it anyway)

    tubular
  • ElectricAyeElectricAye Posts: 4,561
    edited 2009-05-21 15:42
    Nice Job!

    You ought to have it sing Happy Birthday when he first opens it up and gives it a whirl. tongue.gif
  • RaymanRayman Posts: 13,904
    edited 2009-05-21 16:02
    Nice! I didn't know about your talker object... Before my time, I guess!

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    My Prop Info&Apps: ·http://www.rayslogic.com/propeller/propeller.htm
Sign In or Register to comment.