Two Airspeed Problems – GPS Difference & Sensor Error on Every Flight

Hi everyone,

I’m having two issues related to airspeed.

First, even in low-wind conditions, there’s always a 10 m/s difference between GPS speed and airspeed. GPS speed is consistently higher. We’re using a CUAV airspeed sensor with a Pitot tube. Is it normal to have such a large difference?

Second, I get the error message [Airspeed sensor failure disabling] on every flight. Could this be a software issue? Or is it more likely a problem with the sensor itself?

Thanks in advance for any help!

In order to give you a valid answer you need to tell us two things.

a) Have you ever performed Pitot calibration? What is the value of ARSPD_RATIO?

b) At the time of connecting the battery, was the pitot properly covered?

These two questions are determinant in the quality of the Pitot readings.

Regarding the second, Ardupilot has a series of mechanisms to detect possible erroneous Pitot readings and disregard them so as not to compromise safety. As long as the first part is not solved, there is no point in paying attention to the second part.

Thank you so much for your response!

First, regarding question (a):
Yes, we did the Pitot calibration through Preflight Calibration.
The photo below shows the ARSPD_RATIO value you asked about.

As for question (b):
We didn’t cover the Pitot tube when connecting the battery. Also, during the Pitot calibration, we didn’t use a cover either—we just wrapped the Pitot tube with our hand while calibrating.

I might not know enough about this area… would you be able to help me out a bit more?

You have not calibrated anything because Pitot calibration is done in flight.

And the value you indicate for ARSPD_RATIO,2 is the default value due to the lack of calibration.

Thanks a lot for your help.

We ran the Pitot_Calibration today using the method you explained, and got an ARSPD_RATIO of around 2.8. The results were really good. First, the difference between GPS speed and airspeed was within 5 m/s, and the [Airspeed sensor failure disabling] error message didn’t show up at all. Also, the aircraft flew at the cruising speed we had set during AUTO flight, and the DO_CHANGESPEED command worked perfectly, both for speeding up and slowing down.

If it’s okay, I have one more question.

Thanks to the link you shared, I now understand Preflight_Calibration much better. But I’m still not quite sure about ARSPD_OFFSET. From what I read, it seems like ARSPD_OFFSET can change every time the battery is connected, which is why it says to always cover the pitot tube when powering up. But in our case, we didn’t use a cover—mainly because I couldn’t convince my teammates that it was necessary.

Before the first flight, we did the Preflight_Calibration by covering the pitot tube with our hand, and the ARSPD_OFFSET was around 28. After that flight, we unplugged the battery. Then, for the second flight, we didn’t do another Preflight_Calibration, and the ARSPD_OFFSET showed around 18. Both flights went very well.

That said, I’m still wondering—does a difference of about 10 in ARSPD_OFFSET between flights have any negative impact on the aircraft? I want to understand this better so I can help my team see why covering the pitot tube might actually be important.

There is a parameter to disable calibration during boot and IIRC now you can also require manual calibration prior to arming.

First of all, I am pleased that the results obtained are satisfactory. As you have seen, following the procedures is the way to achieve good results.

Regarding ARSPD_OFFSET as you say it is a value that is adjusted at each power up. I will try to explain the reason. A Pitot device seeks to obtain the air velocity based on the relative difference between two pressures. One of these pressures called static pressure is obtained from the side orifices of the Pitot and the other, called dynamic pressure, from the central orifice.

Theoretically, the static pressure is constant and equal to the atmospheric pressure. While the dynamic pressure is affected by the speed at which the aircraft is traveling.

As the atmospheric pressure changes over time at the moment of connecting the battery the measurement of the present atmospheric pressure is made. That is the reason for ARSPD_OFFSET.

And here it must be kept in mind that the more inaccurate this reading is the worse results the Pitot will get. That is the reason for covering the Pitot with “something” that simply prevents any air flow from falsifying the results. It is not a matter of preventing pressure but of preventing air currents. You can use a pen casing, a 3D printed Pitot cover, an inflating balloon… I recommend you to do so because not doing so will not bring you any good.

And I take this opportunity to explain ARSPD_RATIO. As I told you the side orifices are for static pressure and theoretically no air flow should affect them. As this is impossible (although it is controllable) is why this parameter arises; its acceptable operating range is 1.5 to 3. Outside these values it is assumed that your readings are not good enough.

How to improve this value? Three tips.

The first is (assuming your aircraft flies longitudinally without vices) a good longitudinal alignment of the Pitot.

The second. If your aircraft for its cruise speed (the most used) in altitude control modes flies with a certain positive pitch (usually between 1° to 4°) place your Pitot with the same incidence but negative. So that the Pitot most of the time is aligned with the forward direction. And these angles are measured with respect to the flight controller.

These first two tips seek to minimize the influence of the air flow in the side holes.

The third one. The Pitot must be out of any air turbulence (it must face “clean” air). It should not be behind the propeller or close to any surface of the aircraft (I would recommend a minimum of 4cm to any surface).

2 Likes

ARSPD_OFFSET is for compensating sensor drift not atmospheric pressure, it drifts with sensor temperature including temperature gradient across the sensor casing and time. IIRC MS sensors are known for being susceptible to differential heating.

Thanks everyone for your help.

After I explained the airflow and thermal detection issue you mentioned earlier to my team members, they finally agreed with what I had been saying. We’ve now decided to either use a Pitot tube cover or perform a Preflight Calibration before every flight from now on.

Thanks again for your support.