Copter Tailsitters

Also, I will add those in the wiki…but how does this work?
“The pitch angle limit is set by parameter :ref: Q_ANGLE_MAX<Q_ANGLE_MAX> (in centidegrees), and this also serves as the yaw rate limit if :ref: Q_TAILSIT_RLL_MX<Q_TAILSIT_RLL_MX> is zero.”
if its used as a roll rate limit, the units are degs/sec not centidegrees…dont understand how this actually works if Q_TAILSIT_RLL_MX is 0

That should start off with “The lean angle limit” since q_angle_max sets both roll and pitch angle limits, and it is the roll limit that is relevant here.

For the wonderfully convoluted logic involved see:


There’s some scaling going on to make this work right and it appears to be relevant only for the plane mode body-frame roll input option.

after investigation (by Tridge) it appears that a copter tailsitter in FW mode DOES use differential thrust for yaw from rudder inputs IF RUDD_DT_GAIN is non zero…also if the YAW Damper is active, it will also try to stabilize yaw if no aileron is being input, but its off by default and does not directly respond to rudder stick inputs…

PS this may only be in “latest” aka master, not in Stable

3 Likes

Hi,
You would be so kind to share your parameter file.
Thanks.

Hi @hwurzburg @Luar ,
I did a bench top test to check for yaw. The differential yaw seems to be working as the rc out signals respond to provide the yaw. But the strange thing is that the desired yaw doesn’t seem to change and remains zero. I guess it doesn’t matter as long as the yaw works. I’ll upload my parameter list and screenshot of the log file. i

n RCin4 is yaw input. Rcout9,10,11,12 are my motors. Thanks for your input. Can you explain how to auto tune a copter tailsitter without control surface for forward flight ? Is the process same as that of a normal quad plane ? Which motor parameters will change due to this tuning ? Tailsitter Proto 2 4.1 Dev Version.param (20.5 KB)

1 Like

desired yaw does not change since in FW the yaw inputs are open loop as there is no yaw stabilization loop (except for yaw dampening, if active…but that would not show either in desired yaw logging AFAIK)

2 Likes

Hello,
I compare them with mine and I inform you.
Thanks.

Hi @kd0aij, can you share the model files to run them on RF 9.5? The folder for SITL models doesn’t seem to have the Biwing configuration. Thanks.

The old link was broken due to some rearranging of files in the SITL repo (moved into the WIP directory):

thank you !! :slight_smile:

1 Like

Hi @kd0aij @hwurzburg
I tried using the model Biwing9_swapLR JWL-065 elevens disabled_AV.RFX with the biwing9.parm parameters in Realflight Sitl. There were a couple of issue that I faced.

  1. In Q_loiter mode, when I move my throttle stick above 50% , the biwing shoots up in the air and keeps climbing even when I reduce the throttle stick to 0. It’s as if the throttle reaches a maximum value and continues to climb. Same behaviour in Q_stabilize with one change. Making the throttle 0 kills the propellers and it falls. In short, throttle at 50% stick input doesn’t give a stable altitude.
  2. In Q modes the biwing is not able to yaw. Roll and pitch work just fine.

I had disabled the airspeed sensors as they giving faulty readings. Q_options was set to 128. Servo1,2,3,4 were set to 0(no control surfaces). Tailsit_motmx was set to 15. The forward flight modes seem to be working well with qassist. But I feel that throttle is maxing out at 50% throttle stick input. From 50%-100% stick inputs there is hardly any change in speed.

I hope you can help me with this. Thank you in advance.

Regards,
Raj Patel

I just tried the BiWing_JWL065 in RF8 with a recent version of master, and it flies as expected in FBWA, QHOVER and QACRO. See if that one works for you.
It’s unstable in QLOITER and the rudder stick has no effect; don’t know what’s going on there.
There have been a lot of changes to qloiter and speed scaling since I last worked on this, so there may have been some breaking changes for that mode. First step is getting a stable qhover though.

Hi @kd0aij,
I used the model you suggested with the biwing.Param file. It works great with the elevons enabled and qassist enabled. But when I make Servo1,2,3,4 outputs to 0 to disable the elevons , the transition happens and the vtol dips and crashes. I think the qassist is working but not that effectively . I wanted to know whether you have encountered this behaviour with the servos disabled. Any way to make the qassist more responsive ?

Thank you for your support.

Regards,
Raj Patel

Hello @Raj_Patel, from my experience of the biwing model when servo are disabled pitch and roll control is correct but yaw is very very weak. Motors must be tilted inward to make yaw control stronger. I think the RF8 biwing model has straight motors mount.

2 Likes

I just tried the tilted motor version of the BiWing on master with servo functions set to zero, and it flies OK, except sometimes all the control surfaces are full down, which means it doesn’t fly for long :slight_smile:
I just pushed motorTilt and motorTilt_noSurfaces versions of the BiWing up to my fork. The noSurfaces version has the servos disabled in RF so that they stay neutral at all times. That version flies better in FBWA with q_options set for assist and motorsOnly, but even with the 5 degree motor tilt it has almost no roll control. Not sure why that is since yaw control is OK in VTOL mode, but maybe the wings are overpowering the motor torque at higher airspeeds.

1 Like

Hi @losawing,
I agree that the original version of the biwing doesn’t have motor tilt for fw roll authority. It might be causing the control issue when elevons are disabled.

I’ll check out the new version and let you know. I think you are right when you say that the control surfaces are full deflected downwards when elevons are disabled. This is causing the biwing to pitch down. I was able to maintain steady flight when my pitch angle was 20deg+. The moment I came below 20deg it pitched down uncontrollably and I could not recover . So it seems that the control surfaces downward deflection might be the issue in the original biwing version when elevons are disabled with servo Params. I’ll check out the new biwing with neutral elevons. Thank you.

Regards,
Raj Patel

Hi @kd0aij @hwurzburg,
I just had a crash with the prototype of a biwing that I was building. I am sharing the video as well the log file. Basically, after arming when I raised my throttle stick a little in q_loiter, the biwing shot up in the air and went out of control and crashed. This can be seen clearly from the pwm spikes of the rcout of the motors. This is quite surprising as the pwm must reach somewhere near q_m_spin_min when my throttle is low. I am not able to understand as to what is causing these pwm surges. I would be grateful if you can find some solution to this. https://drive.google.com/file/d/1aAd8P-pw7rlZOhrmdyzUnZHRPtkoC-9m/view?usp=drivesdk

https://drive.google.com/file/d/1OORc1ZBPXgtwAKd25-xtSDtvB4CwEP0j/view?usp=drivesdk

https://drive.google.com/file/d/1Cvp5Q8QVdq6EsVK2tiydi6JS2TdZQzMJ/view?usp=drivesdk

Regards,
Raj Patel

you need to grant public access to those gdrive files.
Do qstabilize and qhover modes work properly?

Exactly as Mark says…if QSTAB works okay and QHOVER or QLOITER has uncontrolled altitude changes, first suspect is vibration, next is baro is exposed to light and/or prop wash…defaults for horiz and verti pos controllers are usually flyable in most configurations with the possible exception of QLOITER usually needing the basic roll/pitch/yaw axes being tuned pretty well in QSTAB in order to get the proper velocity controls, but thats horizontal, not vertical issues…but uncontrolled climbs in alt control modes are usually vibration, especially high freq vibrations being aliased…make sure FC is mounted with vib damping (3m foam adhesive squares or better yet ZEAL gel) and props are perfectly balanced…