loading
Problem: So I’ve been taking walks with my dog, Marcus and my Arduino pedometer.
  https://www.instructables.com/id/Arduino-Pedometer/
Out here in the high desert in January, it gets cold and a little wind creates a cold wind chill factor. I’m a LAZY OLD GEEK and would like to know what the wind chill factor is.

Solution: I’ve always wanted to build a weather station so I decided to make an Arduino wind anemometer to measures wind speed and a thermometer. An instrument that measures wind speed is called an anemometer. Then the Arduino can calculate wind chill.

Wikipedia Definition: Wind chill (often popularly called the wind chill factor) is the felt air temperature on exposed skin due to wind. It measures the effect of wind on air temperature.

LAZY OLD GEEK ‘facts’: Any object, e.g., a car is not affected by wind chill. If the temperature is 10F, it doesn’t matter if the wind chill is 10F or -40F. Wind chill is the apparent temperature felt by humans and animals. Or I should say some animals. My dog, Marcus has a nice fur coat and is part husky. He doesn’t feel it. He doesn’t care if it’s -40F wind chill and seems to prefer it. Now, I, on the other hand won’t venture out if the wind chill is -40F. But if it’s -10F, I might wear my full face mask (see picture) and venture out. I don’t like to wear it because it’s uncomfortable after a while so it’s helpful to know what the wind chill is.

So that’s not a great reason to build a wind chill machine but I’ve always wanted a weather station and this is a good starting point. My weather station is designed for the U.S., so I use Fahrenheit and MPH.

Attention Readers: If you want to duplicate this project, you will need a laptop with a USB port and a motor vehicle to calibrate the wind speed. Another problem is finding the cups for the anemometer. Many Instructables readers seem to be good at improvising. Aluminum is preferred but plastic should work also. For the innovative readers, I’ve provided some hardware and software tips on how to design your own anemometer. For example, the software could be adapted to an LED or LCD display for a standalone instrument.
 

Step 1: Parts List

Here’s a list of the parts I used:

USB Freeduino kit (Arduino-clone) $22.50
AdaFruit DIY shield $6.00

PVC
1/2” right angle
1/2” T
10 feet 1/2” PVC
2” PVC end cap

Hardware
5-16 x 3” bolt
5-16 nuts and washers
8-32 x 4” bolts
8-32 nuts and lock washers

2 small magnets (10 for $1 at Harbor Freight)
1 Inline skate bearing(Size 608Z)($1.36@)
3 Aluminum balls SuperBubble, LemonHead
Honeywell SS461C Hall Effect IC($1.86 Digikey)
50 feet Telephone cable ($3.00 4 or 6 wire)
1 MCP9701 Temperature sensor($0.30 DigiKey)
2 telephone couplers ($1.00@ dollar store)

Prices US dollars February 2011
The total is about $15 plus Arduino stuff.

Tools:
Soldering tools
DMM Recommended
Drill/drill press
Socket wrenches
 

Step 2: Selecting Parts

Problem: For me, the hardest part was finding some cups to use to collect the wind.
Solution: One suggestion was plastic Easter eggs. Another was metal soup ladles. Plastic is fragile and deteriorates in heat. Soup ladles would be hard to work with. I looked around and asked around. My cousin came up with these aluminum balls that had LemonHead\AtomicFireball candy in them. They’re about 2.7” in diameter. Unfortunately, this may have been a Christmas thing. My cousin bought them at a Rite Aid. They’re made by ferrapan.com. You may have to find a substitute.

Problem: Next I wanted a bearing to make it spin easier.
Solution: One of the easiest to get bearings is for inline skates. The most common size is 608Z. One option is to search your local thrift stores to find a used pair of inline skates and pull out the bearings. I just bought mine from Amazon.com.

Problem: Being LAZY and not too mechanically inclined, I needed a way to attach the bearing.
Solution: One internet site used two skate bearing and scrapped out the insides of a ½” PVC ‘T’ for fit. I actually tried two bearing in a ‘T’ but decided there was too much friction so cut one off. Instead of having to scrape the insides I just took a bolt and some big washers and a bearing on one side of the T. Make sure the washers are bigger than the outside of the bearing. Roughly center the assembly, then tighten the nut to pull the bearing into the ‘T’ (See picture).

 

Step 3: Assembling the Anemometer

My design is based on a 2” PVC end cap. Some internet searching suggested that three cups worked better than four. Probably either would work okay but I decided on three.

Procedure:
The first step is to mark the end cap for drilling the center and the three arms, 120 degrees apart. And two holes, 180 degrees across for the two magnets.

I recently got a drill press from Harbor Freight.
Safety: When using a drill press, it is advisable to use safety goggles and clamp your work to the table.

I didn’t use the all of the following but think it would work pretty well.
Place the end cap on a piece of paper and drew around it (see picture). By taking the diameter and dividing by two you can find the center of the circle. Then I used a compass to mark out the 120 degree points and also straight across for the two magnets. Then I placed the end cap back on the paper and marked the bottom of the end cap with a Sharpie. Since I had a laser line, I traced the line up the end cap. I marked the arm points up about 1.4”. I clamped the end cap and drilled 5/32” holes for the arms.

Finding the center: I made a little V bracket (see picture). Put in a 5/16” drill bit since I used 5-16 /bolts. Place the paper template under the V bracket aligning the edge of the circle with the edges of the V bracket. Fold or cut to make it fit under the bolts. Adjust the V bracket and template so that the drill tip is over the center of the paper circle(see picture). Place the end cap in the V and marked the ‘center’ with a Sharpie. Now if you rotate the end cap, the center should stay directly under the drill bit. Keep fiddling with the bracket and the mark until the drill tip stays centered. Clamp and drill (see picture, the clamps are not shown). I assume the more mechanically adept readers have a better solution but this was adequate.
 

Step 4: Attaching the Cups

Procedure:
I used a blue cup that was a different color from two red ones. This is so it’s easier to see when the assembly makes one revolution. Using similar techniques from above, mark the cups 180 degrees across about ¼” from the rim for the mounting holes. Drill 5/32” holes. The metal around the hole may deform a little with the drill.
I couldn’t find 8-32 x 4” bolts so I bought a 12” piece of 8-32 threaded stock and cut it into three pieces. Using four 8-32 nuts and lock washers, attach the cups to the threaded stock. When you tighten it make sure the cups are still fairly round. With two more nuts and lock washers, attach the cups to the end cap. The holes are pretty snug, so you may actually have to screw the cup assembly into the end cap. You might want to use Loctite Threadlocker.

For easier testing and usage, I made an L assembly out of ½” PVC and glued it together. To attach the T, I didn’t glue it. I drilled a hole for an 8-32 bolt and nut so that the anemometer can be replaced easier (see picture).

Put a little oil on the bearing. Put the 5-16 x 3” bolt through the bottom of the PVC T and the bearing. Put on a small 5-16 washer and two 5-16 nuts. Tighten the lower nut so that the bolt is tight on the bearing. Hold that nut with a wrench and tighten the second nut to lock the two together. The bolt will have a little bit of play because of the bearing (see picture).
Add two more nuts and a washer to the bolt. Adjust to approximately where you want the cup assembly to ride.
Slip the cup assembly on the bolt and give it a spin. Make sure the cups and end cap clears the PVC T. When you’re happy with the height take off the cups and tighten the two nuts together so they won’t move. You can keep the bolt from turning by using a ½” socket with an extender sticking through the bottom of the T on the bolt.
 

Step 5: Hall-effect and Temperature Sensors

Theory of Operation:
I hadn’t used these Hall-effect sensors before so I had to do some experimenting. The Honeywell SS461C is a bipolar latching sensor. As many of you know magnets have a North and a South pole. The SS461 is connected to 5Vdc and ground and has a digital output. One magnet pole latches the output low and the other pole latches it back high. For this application, you don’t care which one is North and which is South, just as long as they alternate. One of the concerns is how close the magnet has to be to trigger the device. With the magnets, I have, it’s about ½”, but closer works fine.

Wiring SS461C: I used a short 4 wire telephone cable with a standard phone connector on the end. Connect the SS461C + pin to the red wire. Connect the – pin to the black wire. Connect the output to the green wire. If you don’t use phone connectors, just wire according to the schematic.

Wiring MCP9701 Temperature sensor: I placed this right below the SS461C. Connect the + pin to red wire of the same phone cable and the – pin to black wire. The output pin goes to the yellow wire. I then wrapped the connections with electrical tape and hot glued it. (See schematic)

Problem: So you may ask why did I put the sensors on a cable with a phone connector? The anemometer has to be calibrated. I calibrated it by setting it up in my car. Once calibrated, it will need to be setup outside of my house and connected to the Arduino inside the house. How do I accommodate these different configurations?
Solution: So I put a short phone cord with connector on the sensors and another one on the Arduino shield. Then I put phone couplers on both of these connectors and put a standard phone extension cable between. For the car calibration, I used a short six foot extension. For the house, I used a 50 foot extension with one connector passing through my exterior wall.

If you try this, four cautions:
1. Make sure the couplers and cables are four or six wires. There are some two wire cables that won’t work.
2. Be very careful that you use the same couplers for calibration and usage. Some couplers go straight through and some cross over pins. It really doesn’t matter which ones you use, just as long as you always use the same ones.
3. Make sure the two different extender cords work the same. All of the cords I have seen cross over where pin 1 on one end is not pin 1 on the other. I know this is complicated but there is an easy solution coming up.
4. Make sure the sensors are connected to the correct places on the shield. (See schematic) The four connectors on the outsides are the shield to Arduino connectors. I used an Adafruit DIY shield. The SS461C +, - and Output pins are connected as shown.
The red wire from the sensors needs to get to +5V on the shield, the black wire goes to a ground. The green wire from the SS461C hall-effect sensor output goes to Digital 4. The yellow wire from the MCP9701 temperature sensor output goes to Analog 2 on the Arduino/shield. On the shield connect a resistor (10K works) from 5Vdc to Digital 4. Also connect a 3.3K resistor between 3.3V and AREF (explained later).

Easy solution: Connect everything up without power to the Arduino with the short extender cable. Take your DMM, set it for ohms and measure from the +5 on the sensors to the +5 on the Arduino/shield, it should be shorted. Do the same for the grounds. Measure from the SS461C hall-effect sensor output to D4 on the shield and measure from the MCP9701 temperature sensor output to A4. These should all be shorted.
Then, switch the phone extender cable to the long one and repeat. If all are correct, then you are good to go.

If you have a DMM but don’t know how to use it, I wrote a little tutorial in:
https://www.instructables.com/id/Arudino-No-Blinky/

Attaching magnets:
The magnets I have are 5/16” diameter so I clamped and drilled two 5/16” holes in the end cap 180 degree apart about 0.7” up from the flat. Now if you take two magnets and they couple together, the two inner surfaces are opposite poles by the rule of opposites attract. One is North and one is South. It doesn’t matter which one is which. So if you separate the magnets and put them into the two holes so that one North and one South is facing inward, you are good to go. Mine fit pretty snugly but I added hot glue to hold them in. (I also filled some extra holes in my end cap with hot glue.
 

Step 6: Mounting the Switch and Temp Sensor

I carved a little block of wood to fit the curve of the 1/2” T about 0.3” deep. I hot-glued the block to the T near the bearing. I carved a little groove in the block for the sensors. Position the SS461C so that it’s even with where the magnets will pass but doesn’t touch. You can use the little wire wraps while you get it adjusted then I used a plastic tie wrap. (See picture)

Testing: Plug in the Arduino either to USB or a 5Vdc supply. If you have a DMM, attach it to ground and Digital 4. With the cup assembly on and spinning, the voltage should toggle from 5Vdc to 0V, once per revolution.

Problem: When I was testing the assembly, the Hall switch didn’t always work.
Solution: The Arduinos, Arduino clones and shields are made by different manufacturers of differing qualities. I tend to buy the cheapest, hence the Freeduino clone. All of these manufacturers use different quality and types of components. My AdaFruit shield pins didn’t seem to fit snugly in the Freeduino. This could be because of slightly different size pins and headers and/or the header pins wearing out from use. What I did was take a pair of needle nose pliers and slightly bend the shield pins a little this way and that so they made good contact with the Freeduino. This is not an ideal solution but adequate for my needs.

Step 7: Software Design and Calibration

Software Design:

The attached Arduino software(MTSAnemometer.zip) has to look for High/Low transitions on Digital 4, count them and then log it to the serial port of the computer. The software will determine how often to log data to the SD card. This software is set for 2 second samples. This can be changed by changing the value of SampInterval.

Here is the significant portions of the software loop.

// Wind calculator Look for High
if (digitalRead(WindPin)==HIGH)
{
  SeeHigh=true;
  digitalWrite(greenLEDpin, LOW);
}
  //Look for Low thus a High to Low transition
  else if (SeeHigh==true)
{
  //Increment counter
  CntRPM++;
  SeeHigh=false; //Start over
  digitalWrite(greenLEDpin,HIGH);
}


//After two seconds have elapsed
RPM=CntRPM*(60.0/SampInterval);

Code explanation: First I look for a high on the anemometer Digital 4 (Windpin). When it goes high, I set SeeHigh true. For troubleshooting purposes, I turn off a green LED. Then when Digital 4 goes low and SeeHigh has been set then I know that the anemometer had transitioned from high to low and one revolution (RPM) has occurred. So I increment the CntRPM and also turn on the green LED so that I can tell that it is working.
After two seconds have elapsed, I multiply CntRPM by 30 to get RPM (revolutions per minute).

Calibration procedure:

Problem: So how do you determine how anemometer RPM relates to MPH? There are several solutions depending on what equipment you have available. I will list three. All of these require that you have a way of displaying RPMs coming from the Arduino. My Arduino code will display data to a computer/laptop connected to the Arduino with USB. If you don’t have a laptop, one alternative would be to rewrite the code to display data on an LCD shield.

Hardware requirements: Your laptop will need a USB port or two. My old laptop only has only one USB 1.0 port but works fine with a USB hub.
Arduino Requirements: Install my Arduino code into the Arduino. Connect the Arduino to the laptop USB port.
Anemometer Setup: I stuck the anemometer assembly in the opened window of my car’s back seat door. The bottom of the PVC was pinched between the seat and the door. Or you might be able to put it in the door slot that you close the door with. My seats have overhead handles for all seats to help get in and out. I took a string, looped it around the handle and the PVC to keep the anemometer upright. If the PVC is touching some vulnerable part of the car, put something between like a soft cloth. Carefully close the window partially. (See picture) Plug the sensors into the Arduino.

Solution1: If you have a laptop and a car, run the software with serial terminal at 9600 baud. (See sample output screen)
Safety first: Ideally, this should be done with a second person to help. On a windless day, pick a straight, flat, deserted road and set cruise control for a known MPH. One typical problem is that most speedometers are off. You can check this by finding some highway mile markers and finding out how long it actually takes to go a mile at some supposed speed.
See what RPM on the Arduino serial terminal is. (The serial terminal also displays MPH and Twc but these values are based on my anemometer calibration.) Take the car’s known MPH and divide it by the RPM and plug it into the Arduino code. Here’s the Arduino code. Replace .054 with your calculation.

MPH=RPM*.054; //Calibration value

Solution2: If you have a laptop and a car and a standalone GPS, run the software with a serial terminal.
Safety first: Ideally, this should be done with a second person to help. On a windless day, pick a straight, flat, deserted road and set cruise control. Take the MPH from your GPS and divide it by the RPM and plug it into the Arduino code as above. By the way, you can also determine how far off your car speedometer is. If your GPS reads in knots per hour, multiply it by 1.151 to get MPH.

Solution3: I have a laptop and a car and a NMEA GPS that connects to my laptop USB. I connected the Arduino and the GPS to my laptop, and ran my VB Express software. See attached. This program should work with any Arduino and a USB NMEA-compatible GPS. Mine is a USGlobalSat BU-353.

To install my calibration software, copy cpublish.zip to a directory on the laptop, unzip it, make sure you have an Internet connection and run setup.
You’ll also have to install the USB driver for the GPS.
My program setup requires the USB/com port numbers for the GPS and the Arduino. These are listed under Device Manager, under Ports. My GPS is called Prolific. My Arduino comes up as USB Serial Port.
If you have some trouble, my GPS Instructable has some more tips.
https://www.instructables.com/id/GPS-for-Lazy-Old-Geeks/

Start my program (see picture), plug in the correct com port numbers. Click the UPDATE button. You should see the GPS data displaying and the Arduino data at the bottom.
Safety first: Ideally, this should be done with a second person to help. On a windless day, pick a straight, flat, deserted road and set cruise control. Now my program is automated so it gets the MPH (converted from NMEA knots per hour) from the GPS and the RPM from the Arduino. I actually, tried several different speeds. Write down the times when you were driving with cruise control set.

Go back to my program, click on File Save (ignore any messages). Type in a filename and note the file location. My program will save the data to a .CSV file so I plotted the data to an Excel chart (see picture). This shows a fairly linear relationship. Take a sample MPH from your GPS and divide it by the RPM and plug it into the Arduino code as above. I used this to determine the .054 multiplier shown in the program.
If you don’t have Excel, you can also use free Google Docs or Open Office. The plotted graph of some different MPHs looks pretty ragged but it is fairly linear. (see graph)

To verify your calibration, load the Arduino with your calibration and rerun the above tests. The Arduino MPH should be close to ‘actual’ MPH but will probably jump above and below it.
 

Step 8: Using MCP9701 Temperature Sensor

The MCP9701 puts out an analog voltage related to the temperature.
Problem: The maximum output voltage is 3.0 volts and the standard Arduino uses the 5 volt supply often from the computer/laptop USB. This voltage can vary causing the readings to vary.

Solution: To improve accuracy, I decided to use the 3.3Vdc from the Arduino connected to the Arduino AREF pin through a 3.3K resistor. The 3.3Vdc source is much more precise than the 5Vdc. For the techno-geeks, Internal resistance is 32K so AREF = 3.3/(32K/(32K+3.3K) =3.0 Vdc.
To use the AREF pin, the following line was added to the Arduino code.

analogReference(EXTERNAL);

Software Design:
Here is the essential code:

// Get temperature readings Average nsamps
for (byte j=0;j<nsamp;j++)
{
  ThermValue += analogRead(ThermPin);
}
  ThermValueAvg=ThermValue/nsamp;

  mVout=(float) ThermValueAvg*3000.0/1023.0; //3.0V = 3000mV
  //TempC=(mVout-400.0)/19.5; //Ta = (Vout-400mV)/19.5mV //Original
  TempC=(mVout-490.0)/19.5; //Ta = (Vout-400mV)/19.5mV //Modified
  TempF=TempC*(9.0/5.0)+32;

Code explanation: The analog 2 ThermPin is sampled ten times then averaged. The averaged analog count is converted to mVolts(mVout). The mVout is converted to TempC (Centigrade). The first TempC calculation is commented out. This is the suggested conversion. For the MCP9701 I was using, I found that this was off about 8 degrees, so I adjusted (trial and error) the formula to the second formula. You may want to adjust the 490 value, if you’re using an MCP9701 and find that it is not reporting the correct temperature. Then next line converts TempC to TempF (Fahrenheit).
 

Step 9: Wind Chill

There are a few variations on calculating Wind Chill. This is the one chosen by the National Weather Service.
http://en.wikipedia.org/wiki/Wind_chill

The equivalent formula in US customary units in computer terms:

Twc=35.74+0.6215*Tf-35.75MPH^0.16 +0.4275*Tf*MPH^0.16

Twc is wind chill in Fahrenheit
Tf is temperature in Fahrenheit
MPH is wind speed in MPH

Wind chill Temperature is only defined for temperatures at or below 10 °C (50 °F) and wind speeds above 4.8 kilometres per hour (3.0 mph).

So I incorporated all of this into the Arduino code:

if ((TempF <50.0) && (MPH > 3.0))
{
  Twc=35.74+0.6215*TempF-
      35.75*pow(MPH,0.16)+0.4275*TempF*pow(MPH,0.16);
}
else
{
  Twc=TempF;
}

 

Step 10: Using Anemometer

The Arduino can be connected with USB to a computer and the temp, wind speed and wind chill will be displayed on the serial monitor. So if you plugged in your calibration number and adjusted temperature offset if needed, then your wind speed and wind chill should be correct.

GEEK comments: The picture below shows the anemometer stuck in the fence. It’s about 50 feet from my house. This is not ideal. If the wind is coming from the west, my house will block the wind and skew the data. The ideal spot would be on my roof so the wind wouldn’t be blocked by any buildings. For now, I want to see how it works over some time. My next project will be to add a weather vane to indicate wind direction and it will likely be attached to the same pole.

One concern, I have is if the temperature sensor will be affected if it’s in the hot sun. I have another thermometer that is on the north side of my house always out of the sun so I can do some comparisons.
Also, I need to tie down the phone lines better and insulate the connectors from rain and snow. But then I am LAZY and it’s cold out there.

In the works, I am also writing a VB Express program to collect the data so that I can find highs and lows. I’ve already noticed that the data has anomalies such as temperatures that are way too high or low. Outside temperature does not have sudden jumps so there are some problems somewhere in the path. It could be hardware and/or software.

Conclusion: So as it is, this system gives me a pretty good indication of wind chill when we start our early morning walks and gives me a clue on how to dress and whether to go out now or wait for less wind chill.
 
<p>Shouldn't MPH or KPH be determined by taking the circumference of the outside of the cups - call CUPC and use below:</p><p>CUPC = pi * Diameter of circle (either inches or centimeters)</p><p>CUPC * RPM * 60 / (5280 * 12) or (1000) depending on whether you want MPH or KPH?</p><p>Why would the car calibration method be needed? Or is the above formulate not accurate?</p>
<p>I am not a physicist but I'm pretty sure that wouldn't work. As I see it some of the problems are that the wind is not blowing on the cup at right angles most of the time. Sometimes the wind is actually blowing on the back of the cups. So this suggests that the shape of the cups must also be a factor. </p><p>Also the length of the arms will make a difference. I am also pretty sure that the number of cups (2, 3, 4) makes a difference. </p><p>I tried to find some formulas for calculating this but what I did find, I couldn't understand.</p><p>Also, it seems like the rotational friction is a factor. If the friction was higher it would take higher speed wind to get it moving. </p><p>Anyway, that's why I used the car calibration.</p><p>LOG</p>
I realize the arm length will factor in, as that will determine the radius of the circle for computing the circumference.<br><br>The way I see it, the distance one ball will travel in one revolution would be the circumference of its circle, making it linear. If you know how many revolutions in one minute, you can calculate distance traveled x 60 to get the distance traveled in one hour then divide by 5280 to covert the number of miles per hour. If your circumference was in inches, then divide again by 12 for 12 inches in a foot.<br><br>Curious now, if you apply this to your model at a specific RPM will the above formula come close to your car calibration?<br><br>Rotational friction, guess you could calculate that based on a difference between the car calibration and the math formula, which expects no friction. But i would think it wouldn't make a big difference especially with the bearings.<br><br>One thing that is difficult is that counting the revs in one minute can be scewed in that the wind speed won't be the same for the whole minute. Kind of like looking at a heart monitor, it really only shows the pulse at that exact second, it bases it's rate on the previous beat and the current beat, as if it were like that for a minute. 60 divided by the Number of seconds between beats is what is displayed. <br><br>It might work since all three arms are the same angle of the circle, if you had a magnet on each of the arms, thus each revolution would trigger 3 hits on the Hall effect. Now take 60 / time in seconds between 2 hits / 3 since your now getting triggers from each arm this will give you an Estimated RPM based on the last partial revolution, which would show varying wind speeds better.<br><br>I'll be working on my model over the next couple months, so I'll have to update you on what I find using both calibration methods.
<p>Just wondering if you figured out the 3 magnet variation of your anemometer project. I am building one myself using the HDD drive motor as the bearing unit and I 3d printed a 3 cup anemometer thingy. I am still waiting on my hall effect sensor but thought I would ask before hand to see if you had any more input.</p>
<p>I don't think you need three magnets. You only need to count the revolutions of the anemometer and one magnet would be enough. I mostly used two magnets so that the weight was balanced.</p><p>LOG</p>
<p>I did a little more internet research and it seems some people agree with you. But I have one question which was better stated by someone else:</p><p>&quot; I would imagine that your anemometer will give significantly low values. Note that when the wind is pushing on one of the cups to make it rotate counterclockwise, say, then the wind is simultaneously pushing on a cup on the other side trying to make it rotate clockwise. The only reason the thing rotates is because the cup is more streamlined in one orientation compared to the other. Even without any friction in the system, I don't see how it would ever rotate at a speed such that the cups are moving at the wind speed.&quot;</p><p><a href="http://www.physicsforums.com/showthread.php?t=653605" rel="nofollow">http://www.physicsforums.com/showthread.php?t=6536...</a></p><p>As a theoretical example, if the cups were replaced with flat disks, the anemometer wouldn't move at all.</p><p>So in the cup design, how do you calculate in the wind force blowing on the rounded side of the cup??</p><p>Anyway, it might be fun to do some experimentation with this. Unfortunately, I'm too LAZY and OLD.</p><p>LOG </p>
<p>I thought about the opposite cup issue as well, which is why I think they go with cup shape, or at least sphere shape, which should be aerodynamic enough to have the air go around it , similar that bullets and such are that shape as well. But you think a pointed shape like a rocket would be best, but it might be a safety issue. That may also be a basis on why you read odd number of cups was better than even, so one cup is never 180 degrees from the other. I thought it was interesting that you wrote that, as when I was looking into wind turbines, I had read the same thing about even number of blades vs odd number; also read it didn't matter, but I don't think I've ever seen a fan with even number of blades. </p>
<p>.</p>
<p>What do you think about this idea:</p><p>I'm concerned about bearing friction in light wind. I am considering using an old computer fan brushless motor as the bearing system. It is almost frictionless after you get is past the very slight mag force. </p><p>I will probably remove the fan blades and mount some sort of plastic connector with super glue to accept the shaft to my wind prop. Key will be getting mount centered.</p><p>BTW: I bought a wind cup unit from a commercial marine parts department for $10. It already has the magnet mounted. </p>
<p>Would you mind sharing the source for your wind cup unit? 10 bucks sounds like a deal. What dimensions of the cups and radius?</p><p>Doug </p>
<p>I got these from my cousin but they were originally just containers for candy and I haven't seen any since. They're about 2.7&quot; diameter.</p><p>LOG</p>
<p>Sounds like a good idea. But I agree you may have problems getting it centered and balanced.</p><p>Good luck.</p>
<p>In your calibration code you're counting each time a magnet causes the sensor to go from high to low. Since there are 2 magnets why aren't you dividing the RPM count by 2? Seems like you're double counting for each revolution.</p>
<p>That is a good question. It's been a while so I had to review this Instructable. The Hall Effect I am using is a latching device and the magnets are opposite polarity. So one magnet sets the Hall Effect High and the second magnet sets the Hall Effect low. I only count the High to Low transition, so it only counts once per revolution.</p><p>LOG</p>
<p>Thanks for the Instructable! I am just starting to build my own weather station, and am using yours as the foundation. You mentioned difficulty in finding the cups. Well, after some searching online, I found the following:</p><p><a href="http://www.bakedeco.com/detail.asp?id=19654&categoryid=0#.VPNl7uH4b_x" rel="nofollow">http://www.bakedeco.com/detail.asp?id=19654&amp;catego...</a></p><p>It is a company that sells aluminum cake hemispheres in different sizes, and they are reasonably priced. Just bought 3 that are 2.75&quot; in diameter.</p>
<p>Nice find. They should work fine.</p><p>I'm still using my originals.</p><p>LOG</p>
I am new to arduino I designed anemometer cup wind vane &amp;tipping bucket.... for my project I have to get output in 16*2 LCD display can u send me complete arduino codings for it
Sorry, can't do that.<br><br>LOG
<p>If you mount it on your ROOF you will get misleading readings from it!</p><p>As the wind hits your house (Doesn't matter if flat roof or a sloped, worse on a sloped) the wind will accelerate due to hitting an immoveable object.</p><p>Best way is to mount at least 10 ft. higher than your roof and about 100 ft. from house OR mount 3 units and average the output from them.</p><p>Also if mounted high you will have very much different winds than at ground level.</p><p>A friend of mine living in NE AZ has a wind charger mounted at 30 ft. above ground, I have seen it screaming in a wind but not even a breeze at ground level, also I have seen it barely turning and you could hardly stand on the ground for the wind, and weirdest of all wind on ground coming from one direction and at 30 ft. from a completely different direction!</p>
<p>Thanks for the info. Since I'm Lazy and Old, all I care about is an approximate wind speed and and wind chill. Mostly what I use it for is to guess what I should wear when I walk my dog. </p><p>LOG</p>
<p>Can you send me arduino code for yours anemometer? I'm making my one weather station so that will help me a lot! Thanks!</p>
<p>The sketch is in Step 7:</p><p>MTSAnemometer.zip.</p><p>LOG</p>
<p>You didn't work in arduino? Sorry, I can't find code for this kind of anemometer.</p>
<p>You have to unzip the file. Then it has the PDE file which is an Arduino sketch.</p><p>LOG</p>
<p>Oh, I didn't see! Thank you very much! Can you just show me where did you put magnets? </p>
<p>Thank you very much for this instructable! I've had a ball incorporating your windspeed code into an anemometer setup I have created. The code helped me advance my knowledge of C programming for arduino also. Had fun setting up my Hall sensor too. Again - great job and thanks! </p>
<p>Glad it was helpful.</p><p>I started using the Arduino as I found it much easier to program than other microcontrollers plus there is so much support on the Internet. It's usually about the right level of difficulty for this OLD brain.</p><p>LOG</p>
<p>LZ,</p><p>How did you test the SS461C? Is it possible to attach to Arduino and pass a magnet by the chip to get some sort of reading?</p>
<p>Yes, it is. What I did was hook it up to 5V as shown in the schematic. Then I put a DMM on the output pin and watched the voltage. I passed a magnet close to the SS416C and the voltage dropped to around zero. Then I flipped the magnet over and passed it near the sensor and the voltage went back to 5V. </p><p>You can also do this with the Arduino but you'd have to write a sketch to display the output.</p><p>LOG</p>
<p>Very nice project! Just to be funny, and since you are the Lazy Old Geek, have you looked into acquiring a &quot;Weather Rock&quot; or the newer model &quot;Weather Cat&quot;? If I were to replicate this project, it would involve a dozen trips to the hardware store and 10x the money I really needed to spend. A weather rock will save you all that trouble. Cheers! :D</p>
<p>I'd never heard of Weather Rock. I like it. I couldn't find Weather Cat but maybe that's cause I'm a dog person.</p><p>I like the Weather Rock as it is scalable and portable so I could take it on dog walks. And it's so versatile, like tornado and earthquake warning.</p><p>LOG</p>
You can hang the Weather Cat outside your window or from a clothesline by its tail, so it's more convenient. ;-)
<p>Ah, makes sense.</p><p>LOG</p>
<p>LZ,</p><p>Do you have a more complete version of the &quot;sketch' you used with anemometer?</p><p>I'm totally new to programing.</p>
<p>If you want to get real accuracy in your anemometer read this and plug in all the data: </p><p><a href="http://www.ncbi.nlm.nih.gov/pmc/articles/PMC3386737/" rel="nofollow">http://www.ncbi.nlm.nih.gov/pmc/articles/PMC338673...</a></p><p>The math is mind numbing. In a nut shell I doubt that there is even 5% difference.</p><p>If I see small dogs and toupees flying by and my wind cups are a blur i will assume that the wind is blowing really really hard. </p><p>ken</p>
<p>You are right about the math but for me, also the physics terminology. So all I care about is if it's too cold for me to take my dog out for a walk and what I should wear. That has so many other subjective factors involved that wind speed is a minor factor.</p><p>By the way, I changed my temperature sensor to a DS18B20 as it seems to be calibrated over a wider range. Of course, right now I have three outdoor temperature sensors and they often vary 5-10 degrees.</p><p>LOG</p>
I trust they are all oral. :-)<br><br>Just made big change to my wind cups mount. I post photo when more complete.<br>kaw
<p>M---777</p><p>Greetings, </p><p>I'm working on building a anemometer much like the one you have built. The SS461C- DAMN it's small! </p><p>I'm thinking of isolating it in a piece of plastic tubing. At issue is how did you protect the leads from breaking? </p>
<p>You are right, they're really small. I don't remember how I did it but I think I used some electrical tape to insulate between leads and heat shrink tubing over the whole assembly. The leads are pretty firmly attached but if you're concerned, you could use hot glue or even epoxy, which I think is what most semiconductors use in their packaging. </p><p>LOG</p>
Ok, I can see if the winds are light it might be difficult but in regard to the friction if the motor you could use a small motor lets say out of a cd or DVD drive? Just thoughts here.
<p>I think cd/dvd motors are brushless. Apparently they have magnets in them so turning them with the wind should generate some voltage but I suspect it would be AC. It might be possible to make it work but it's beyond my expertise. </p><p>LOG</p>
I'm a newbie to Arduino but have always had an interest in electronics. Maybe this is a really dumb question but couldn't you also use a motor and measure the volts it generates and convert that into mph or in my case km/hr? Just working on my own weather station and am looking for ideas for an anemometer. <br><br>Thanks.
<p>A DC motor might work but I have my doubts. Two concerns I have is that you might need fairly large cups to overcome the friction of the motor. And it would be hard to measure small voltages when the wind is light. </p><p>LOG</p>
<p>Saved my frail by finding the Honeywell SS461C. I was toying with using discarded motor which added all kinds of new problems.</p><p>You've done a really good job of describing all steps in this project. </p><p>Thanks,</p><p>Ken Wood</p>
<p>Thanks,</p><p>LOG</p>
Thanks for the instructable. I'm working on a similar project, but instead of hall effect switches I'm using a home made optical encoder for the interrupt pulses, and my anemometer cups are bring printed on a makerbot by a friend. I'm going to have two 'wheels' one above the other, offest by 1/6th of a rotation and separated vertically by about 1.5 cup diameters. For the wind vane I'm also using a binary optical encoder to get 16 positions. For the wind vane I'm using the bearing from an old hard drive head assembly. The head assembly itself is going to support the bearing. and the anemometer bearing is the spindle bearing from the same HD.
Nice anemometer!<br>The way-too-high or -low temp readings you're getting might be from the sensor exposing to direct sunlight or too much wind. I've made dozens of thermometers using the LM35 series of Temperature sensors by National and I've noticed when the sun shines on the sensor, no matter how cold the air is, the reading goes up abnormally high. The same when the wind blows over the sensor. I've had readings of 50&deg;C in a fresh (16&deg;C) morning when the sun rises and reaches the sensor. Heat reflection also gives these readings. I had a sensor 2 yards from a sun-bathed wall and the thermometer went up to 36&deg;C in a 20&deg;C day. Sometimes the error is corrected encapsulating the sensor in white heat-shrink tubing. Maybe painting the sensor white works too.<br>Nice anemometer indeed!
Thanks. I've actually added two features to my weather station:<br>https://www.instructables.com/id/Arduino-Weather-Station-Part2/<br>https://www.instructables.com/id/Arduino-Weather-Station-Part3-Rain/<br><br>I don't think my readings are related to sun or wind. The ones I've noticed are just one sample where the one before and after seem to be okay so I suspect that it's either an intermittent connection or glitches in the serial communications. However since they don't happen very often and it's just for my personal use, I pretty much ignore them. <br><br>I usually leave it running 24/7. Occasionally, the Arduino stops communicating all together and I have to reset it. <br>And once, I had to replace the Atmega chip. I'm fairly certain it was lightning.<br><br>LOG
Cool project!
Thanks, I enjoyed making it.<br><br>Lazy Old Geek

About This Instructable

81,198views

140favorites

License:

Bio: Lazy Old Geek
More by msuzuki777:Senior Moments Weather Station 5 IP Time Clock Part 2 
Add instructable to: