Soaring/Gliding for Planes

Hi Bastian,

I have never used an airspeed indicator on any of my planes, which is exactly my point…

FBWA mode ( flying pitch and bank ) + Vertical speed readout from ArduPilot to Keep the plane centered in thermals = All that is needed.

No synthetic airspeed, nor any other things are needed. This would mean the feature would work for everyone, not just a handful of people that put a lot of time and effort into a bunch of needless setup and parameters.

Using this technique, I do flights that most soaring pilots only dream of. The frustrating thing is, my technique that works so well could very easily be programmed into ArduPilot. Samual had a huge gain in performance by taking one of my suggestions from last year, which is the " bank angle " setting. With some fairly simple programming, ArduPilot could and should far outperform what I do… Personally, I would love to see Samuel do this, as it would be quick and easy ! But it has been a year and Samuel still is on the wrong track. If we could get Samuel or someone to just take the right approach rather than working on a million complicated setup details. There is a saying for this trap that many programmers / engineers fall into:

" CAN NOT SEE THE FORREST FOR THE TREES "

Hi SonicDaHouseCat,

I really appreciate you taking the time for the help and make the detailed post. But this is exactly the kind of setup that we should NOT have to do…

What I use for soaring in FBWA mode is simple PITCH and BANK, then just use the Vertical speed readout from ArduPilot to keep the plane centered in the thermal. I do this with several different kinds of sailplanes, and also powered planes.

SOAR should have an option to do the same thing I do, it would work better and SOAR would be useful for everyone.

Hola Michael, gracias por sacarme de dudas, ahora estoy seguro que nunca probaste Soaring, con ARSPD mediante Pitot. Una lastima que sea así, porque no has comprobado como funciona Soaring, y por lo tanto no puedes hacer ninguna valoracion, ni comparacion.
Posiblemente mi opinión no te interesa, ni la mia ni la de nadie, pero no me importa, te la voy a decir de todas formas.
Yo si que me moleste en montar un tubo Pitot, y pude probar lo que hace Soaring, con sin Pitot, y como ya te comente, funciona y funciona muy bien.
Si lo que tu has probado, es solo Soarin sin montar Pitot, no me estraña que estes tan enfadado y frustado, porque realmente si no llevas Pitot, Ardupilot no funciona correctamente en Modos Auto, y por lo tanto sencillamente no funciona Soaring.
Tan solo se tiene la experiencia, de la deteccion de Termica y el inicio de centrado, pero fracasa en el intento.
Solo cuando se dispone de Pitot funciona correctamente.

Mi método de configuración es muy simple, tan solo he copiado valores por defecto, y he calculado el factor K, con las indicaciones del manual de Soaring.
Tan sólo con esos simples pasos, obtuvo unos resultados brillantes.

Michael,

100% agreed we have the same goal and I agree that testing is fundamental. Most testing has been with an airspeed sensor (that’s why it’s listed as required in the wiki) and I agree that lifting that restriction would open up new horizons. That’s why I want to access data from your amazing flights to improve it.

Therefore I really encourage you to put an SD card in your plane . . . this way we can identify what’s going on currently and test out new ideas. I do my own testing of course, but in different conditions and different aircraft that may not show the same results.

Hello friends of the Soaring.
There seems to be not much activity lately.
I have been assembling and fine-tuning a Multiplex Lentus model, since the ASW28 model, which I used for the Soaring Test, passed away.
I have already flown it and it really flies in a masterful way, I need to tune the C.G. a bit, but nevertheless, I have been able to see how the Soaring behaves with it.
The result on a very bad day at Termicas has been excellent, therefore I went home, with great satisfaction.

I notice by comparison with the ASW28, that being a model with much more mass, and that flies in Cruise, with a little more speed, the turns in the Thermal are of more radius.
It had a SOAR_THML_BANK = 35, and I have set it to 40 for the next Test. I hope that he will be able to close the turns in the Termica more.

Just one more thing.
I have been rereading everything commented, from the beginning, and I draw the conclusion, of what Ardupilot really does, with Soaring.
I am referring specifically to the detection and fixation maneuvers in the Termica.

I need you to confirm if I am correct.

Ardupilot detects, through the Vario, the presence of a descent, and fixes the GPS position on detection, then initiates a return maneuver in the direction of the detected GPS Point, and initiates a WP_LOITER_RAD, in my case 16 m.

On the other hand, he estimates the displacement of the thermal by the wind, with the help of the Pitot, and detects where the wind is blowing from, and how strong it is. With this data, it makes the GPS point of Termica’s detection move in that course, and at the speed it estimates it moves.
In this way the WP_LOITER_RAD moves with the wind, and the sailboat remains in the Thermal, as it moves.

Anyway, I think Soaring works and that it can give us a lot of satisfaction.

Happy flights to all.

Attached .bin of my last flight.

https://1drv.ms/u/s!ApA-NQi5IsByh3IoJ2mlhaGQ6Uai?e=WSAJTr

@Bastian Thanks for sharing your file. At the moment I thermal very happy with my 3,5 m. F5j Cirrus with a Matek 765 wing and ARSPD sensor. The software is performing great. Often 2+ hours flights on a single 200 meter start and flat terrain. Difficult to keep below the allowed 300m hight and within LOS. It took me quit some testing with the settings to get it working.
BUT:
I started about 2 years ago with a Radian Pro and never got it thermalling very well. Happily I started with the Cirrus!! But on returning to the Radian I compared the parameters through Compare Params in MP Full Parameter Tree. I also reread all the posts. Checked the soar parameters with the Spread sheet tool from @Samuel_Tabor (thanks for that). Not tried the MatLab tool from @sonicdahousecat, but will ask my son for help.
What also could help me and others as well are:

  1. A working .param set as a reference for several different gliders to compare just in case of difficulties.
  2. Or a table of specific soar parameters also for a range of gliders, so that I could quickly find a specific parameter for my plane by interpolating or eyeballing in the table. More or less like the standard settings for normal planes in the WIKI.

While learning I have some larger gliders waiting.

Hi Bastian, I’m happy you are enjoying your Lentus with the soaring feature.

I had a look at your posted log.
The bank angle is limited quite often by the stall prevention feature while circling:


I didn’t smooth the airspeed, that’s why it doesn’t fit exactly.

You can find the calculation for the roll limit here in the code:
ardupilot/Attitude.cpp at master · ArduPilot/ardupilot (github.com)

If I understand it correctly, the roll limit is calculated by the (simplified) equation:
image
We can rearrange equation to AIRSPEED_FBW_MIN:
image
And calculate AIRSPEED_FBW_MIN parameter to allow a bank angle of e.g. 45° at 12m/s:
image
You can try AIRSPEED_FBW_MIN = 10 instead of 11 or disable stall prevention to get tighter turns.

Hello Sonicdahousecat.
Thank you for your contribution, I am very interested.

The truth is that I have a problem that I don’t know how to solve.
I have the same configuration of Ailerons and Flaps, and the problem that I observe is that the SERVO TRIM AUTO = 1, produces a trim of the 2 Ailerons up about 5 mm, that is to say that instead of trimming with an elevator, it does with the ailerons.
I have tried various DSPOILER_OPTS settings, but I still have the same problem.

I need you to tell me what version of Ardupilot you are using, and if possible, put your .param.
I am running V4.1 Beta5, and I suspect that this has something to do with my problem.

I really think I have it easy, I use the same plane as you, a Lentus, just a little heavier, because it has the retractable train, and therefore, if I put the same version as you, and the same .param, it has it works just as well as you.

I have to make some small changes in your .param, because I carry another type of GPS, and another type of ARSPD, in addition to Telemetry, but that is all easy.

Thanks for everything, I wait for your news with anxiety, to see if I can solve this.

Greetings and happy flights.

I imagine that if I am flying in Termica very well, with the ailerons raised both, 5 mm, when I take them in place, everything will be much easier, and with much more performance.

@Bastian On both my Radian and Cirrus I am using the flaps on a direct channel. On the Radian using 1 channel and 2 channels used by the Cirrus. On the Tx set to the Tht stick for full deflection (+/- 80 deg. deflection) and mixed on a slider for reflex/normal/thermal. (-3 … +10 deg.) On the FC: Setup/Servo Output/RCIN5 and on Config/SERVOx_FUNCTION = 55. Not optimal, but surrended when programming the spoiler options. It worked but took much time to configure. Still working on that. The Cirrus is thermalling extremely well if switched to THERMAL mode, the Radian not, probably a faulty parameter. On both planes:
ARSPD_FBW_MIN = 9
SOAR_THML_BANK = 30
NAVL1_PERIOD = 17
Using ArduPlane V4.1.0beta5(b32e0ab8) and a MatekF765-Win.

Hi Bastian, I had a similar issue.

In my case, both flaps were trimmed up by about 5mm after a flight with SERVO_AUTO_TRIM enabled.

I had the impression that the ailerons were trimmed correctly and moved both flaps back down by exactly the same amount with SERVOx_TRIM so that I wouldn’t change the roll moment again.

Unfortunately I was not able to find the corresponding code. But I found this thread: SERVO_AUTO_TRIM both ailerons up

Maybe we can ask @iampete to take a look at the logs.

I’m running at the moment V4.1 Beta5 too.

Hello Hello sonicdahousecat.
Yes, it would be interesting to ask @iampete to take a look at the logs.
Pass me if you are so kind, the .param you currently use, in the Lentus.
Thanks.

Here is my actual param Lentus.param (22.2 KB)

1 Like

Thanks sonicdahousecat.
It is of great help for me, to be able to compare your .param with mine.
Greetings.

1 Like

Sonicdahousecat.
Check this parameter, RTL_RADIUS = 0.
I take it to 60, in your case with 0, if it ever comes home, it may end up screwing up.
Well there are always other securities, but I would put it at 60 m.
All the best.

Hi Bastian, RTL works fine for me. If RTL_RADIUS is zero then WP_LOITER_RAD is used.

The blue line is RTL mode.

@ Samuel_Tabor and other, I need some help to find the reason why my Radian crashed (flight #157) a few weeks ago. While my Cirrus is thermalling very well, the Radian never did. I did compare all the settings and could not find the reason.

I was flying in FBWB towards SOAR_ALT_CUTOFF when I suddenly decided to land. So I switched to MANUAL and suddenly it looked like the plane stalled and spiralled downwards without any reaction. So I switched to FBWA in the hope it would stabilize, but it did not. Halfway down I triggered the flaps , but nothing happened. The flaps are direct out on CH3 + CH4. SERVO3_FUNCTION = 55 (and 4) while flaps are on CH5. The AirSpeed (CTUN.AS) stayed roughly at 18 m/sec but varied as the plane spiralled. The POS.ALT line was not influenced by the flaps at all. It looked like the flaps did not function at all. Down from 180m. in 10 sec.

The Radian can be repaired, but is now to be replaced by an ArtHobby Silent. As I wanted to reuse the electronics the cause of failure it is important to me. Hardware failure or some overlooked setting?

I get an error uploading the .bin file.

Thanks for your hints.

Maarten.

Again error uploading. Is 41 MB too large??

Yes, is too big. Use https://www.transferxl.com/ or similar services to upload larger files and then link this here.