Closed SlipstreamFPV closed 5 years ago
https://github.com/ArduPilot/ardupilot/pull/9391
Differential spoilers and crow breaking recently made it into master, not sure if it will help in this case or not.
I think this should be broken down into separate issues. The current logic in master that will soon make its way out into stable releases for at least some of the mixing that you are asking about adding. I'm going to summarize the issues that you have brought up, but in my own words...
SERVOn_TRIM and RCn_TRIM has no effect on flap mid-point. It only respects SERVO and RC MIN and MAX values. Is this correct?
SERVOn_FUNCTION values 24 and 25 (Flaperon Left and Flaperon Right) do not function properly. I don't have experience with this, and I haven't heard any other complaints about it. Maybe you could provide some more information about exactly what you are trying to do so that we could help.
It's difficult to provide complex features like custom mixing that are still simple enough for novice users to understand. Parameters can be difficult to set up, and with hundreds of them in the list, it can be overwhelming fast.
Yeah, flaps ingore the trim position parameter, this is because they are set to a range output type rather than angle here
I think the idea is to stet the 'trim' using the flap parameters FLAP_1_PERCNT.. ect
Thanks for your responses.
Differential spoilers and crow braking is a start however there are many modes for gliding that would have to be added separatly if this is the approach. eg. Full wing reflex or camber, full wing aileron.
@Naterater
@IamPete1 Trying to trim flaps through the flap parameters doesn't work when you have two separate flap servo outputs (one for left, one for right) since both move when it's adjusted.
Since arduplane already has enough control to fly the plane I don't think it's an issue if more complex mixing is done in the radio rather than in the arduplane software. The only thing this would require is being able to set the output channel to something like:
Aileron (master) + Passthrough channel X (slave) = output pwm
or,
Flap (master) + Passthrough channel X (slave) = output pwm
Passthrough channel X values: 1000 = -500pwm 1500 = 0 2000 = +500pwm
That way arduplane can still control the plane and normal aileron or flap input would apply. Then an additional channel is added to that output allowing for reflex or camber to be set as well as full wing ailerons or any other mixes.
It might also be possible to add a mixing percentage limit between the master and the slave channel just like flaperons to prevent saturation of the control surface.
In addition to differential spoilers and crow braking in the latest master do flaps/auto_flaps continue to work like normal on the inside wing control surfaces?
There is no documentation for this yet but it looks at though flaps work as before and you get four new dspoiler outputs, that I guess are a combination of rudder ailerons and flaps. This is the place to find out more I guess. I suggest you flash latest and try setting them up, they may do most of what you want. Then we can look at any changes from there.
I think there are 2 parts to this discussion, and the first about mixing belongs here: https://github.com/ArduPilot/ardupilot/issues/6422
The second issue - flaps not having a trim value - could be an issue, but I don't think it's that critical. If you want to change this conversation to discuss that, we can change the title, but ultimately I recommend opening focused issues with specific issue titles (Plane: SERVOn_TRIM has no effect on flap mid-point). Make your case about wanting camber.
Why don't you operate with flaps at 25% at all times when using flaperons? That way you can have reflex when you go to 0% flaps and plenty of traditional flaps at 100% flaps? Anything more is very uncommon and not applicable to most aircraft or users.
Hello Naterater,
I'd like to add to the conversation from #8009 . The plane I was working on exceeds the assumptions you make; most properly designed full house wings will. For example, the flaps were centered around 2100uS and 950uS, which is below 25% or greater than 75% travel. This gives the flap servo maximum resolution and travel. I personally haven't seen people use more than a few % of reflex on the flap surfaces, so that is why the servo is so offset. No matter the way development goes, I'd like to avoid having any hard coded limits or assumptions for the new mixer. That seems to defeat the purpose.
Is it alright if I close this issue in favor of #6422 since this is about mixing in general? I think this conversation belongs over there, and I appreciate the comments you have left there @Ryanf55.
Yes of course. I'll follow 6422.
https://github.com/ArduPilot/ardupilot/pull/10614 has been merged so this is now possible
Feature request
Full servo control now that servo output is separate from RC Inputs.
Describe the solution you'd like
Making a full house glider or other complex setup work with Arduplane is almost impossible.
Now that we have separate servo output control it should be easy, however servo center points, servo reverse and servo endpoints are still not respected depending on which servo function you use. For example if flaps (Function 2) are set as the function and a mid point is set on the servo out function then this should be respected as the middle of the flap range when the flap input RC channel reaches the set trim value. This way if you're setting up to indepedant flap channels for each side of the wing you can set midpoints and endpoints that align.
Further to this, a slave input function would be another great addition. Some wing functions require aileron and flap input or reverse flap input. The falperon mixer is okay, however when you want to use two sets of flaperons or other complex setups like full wing camber it just doesn't cut it because you can't do multiple different setups in different directions. Each servo output should have it's own option for an aditional flap input channel.
Describe alternatives you've considered
Tried most things. Tell me if it works and I'm wrong!
Platform
[X] Plane