GPS receivers (without DGPS or WAAS corrections) do not provide accurate altitude information. In order to maintain accurate altitude, a pitot-static may be used.Is there anyone in this DIY Drones network who used a pilot-static sensor suite for his/her Ardupiloted UAV?
You don't really need to debate the theory on this. Just look at our Sparkfun results or fly ArduPilot 2.1 yourself. GPS altitude data and a pitot tube in the nose of an aircraft with a pusher prop works well enough. Average your GPS altitude data and you'll be fine.
For aircraft lacking a nose mounted engine, a pitot placed at the tip of the nose will provide accurate measurements. Otherwise, it needs to located at least couple of inches away from the fuselage (more at higher speeds), to avoid errors due to boundary layer and/or localized turbulence. It should also be outside of the propeller wake, which for many smaller UAVs suggests placement near a wing tip.
As indicated, GPS receivers, even the latest ones equipped with WAAS or another error-correcting SBAS (satellite based augmentation system) will still have short-term altitude noise ranging into the low 10s of meters (with occasional larger transients). This will be a particular problem with consumer-grade receivers, most of which are optimized for car and walking use, and are biased toward smoothing horizontal position fixes at the expense of altitude accuracy. Some receivers (like u-blox) allow selection of aircraft dynamics, resulting in more reliable 3D positioning. Some (like u-blox, again) also output vertical (and N/S, E/W) velocity data, which typically is much more stable than can be obtained by integration of GPS altitude (this is reportedly because velocity is calculated directly from the Doppler shifts associated with the satellite frequencies, but I've never been able to verify this). One might be able to use the velocity data for short-term altitude adjustments, and filter the GPS altitude data over longer term (30+ seconds?) to obtain a reasonable altitude hold capability, but I've never tried it.
My experience with GPS altitude information is really bad! (I've tried a couple of different GPS receiver from SparfFun. -I do not use DGPS corrections.).
As a function of Position Dilution of Precision (PDOP) (See also Fig.4.44), which is a function of relative position of GPS satellites at a given time, my GPS altitude readings significantly fluctuates (around +/- 5 to 40meters) over time.
I do believe that air-data system (pitot/static system) can provide more accurate altitude information (and airspeed as bonus). I have looked at the image that Chris Anderson referenced in his comment. The tube on that image is very close to the surface of the airplane. Hence, in its current form it probably not indicate correct air speed. Pitot tube should be away from the fuselage surface (See also Section 4.11 and Section 4.23)
I agree that gps technology and accuracy is improving, but I still see quite a bit of altitude variability and wandering with a sirf III gps I've been playing with here. What's a few meters? When I just let my gps sit and watch it for a while I can see it wander around +/- 25 meters. Also, when I've plotted gps altitude versus pressure altitude, I see that the pressure sensor does a much nicer job of capturing the subtle altitude variations, and often the gps altitude solution sticks at particular place for a second or two or three and then jumps. Also when comparing the general shape of the pressure altitude plot versus gps altitude plot, the gps altitude seems to be quite laggy. I'm no gps expert, and I haven't tried this test on more than the one gps unit I had flying at the same time as a pressure sensor, so I can't say my results are universal. However, if you have a pressure sensor it's not hard to collect the two data streams and plot them against each other.
In my experience I could never derive a useful rate of climb from the gps altitude. It's tough with pressure data because it's so noisy, but if you heavily filter it, you can get a useful rate of climb, but it does lag a bit ... but so do real world altimeters.
I think pressure sensors are very valuable for precise altitude hold, but that's just my opinion and a person could certainly build a very workable system around a gps only altitude solution.
First, modern GPS modeule (which do have WAAS) are actually quite accurate for altitude (+- a few meters). What we use pitot tubes and differential pressure sensors for is airspeed. See this, for example.
Comments
Chris, can you please give us the link to see the logs of your Sparkfun results?
As indicated, GPS receivers, even the latest ones equipped with WAAS or another error-correcting SBAS (satellite based augmentation system) will still have short-term altitude noise ranging into the low 10s of meters (with occasional larger transients). This will be a particular problem with consumer-grade receivers, most of which are optimized for car and walking use, and are biased toward smoothing horizontal position fixes at the expense of altitude accuracy. Some receivers (like u-blox) allow selection of aircraft dynamics, resulting in more reliable 3D positioning. Some (like u-blox, again) also output vertical (and N/S, E/W) velocity data, which typically is much more stable than can be obtained by integration of GPS altitude (this is reportedly because velocity is calculated directly from the Doppler shifts associated with the satellite frequencies, but I've never been able to verify this). One might be able to use the velocity data for short-term altitude adjustments, and filter the GPS altitude data over longer term (30+ seconds?) to obtain a reasonable altitude hold capability, but I've never tried it.
As a function of Position Dilution of Precision (PDOP) (See also Fig.4.44), which is a function of relative position of GPS satellites at a given time, my GPS altitude readings significantly fluctuates (around +/- 5 to 40meters) over time.
I do believe that air-data system (pitot/static system) can provide more accurate altitude information (and airspeed as bonus). I have looked at the image that Chris Anderson referenced in his comment. The tube on that image is very close to the surface of the airplane. Hence, in its current form it probably not indicate correct air speed. Pitot tube should be away from the fuselage surface (See also Section 4.11 and Section 4.23)
In my experience I could never derive a useful rate of climb from the gps altitude. It's tough with pressure data because it's so noisy, but if you heavily filter it, you can get a useful rate of climb, but it does lag a bit ... but so do real world altimeters.
I think pressure sensors are very valuable for precise altitude hold, but that's just my opinion and a person could certainly build a very workable system around a gps only altitude solution.