How can I mix split rudders for my Canard?

I have a large Verieze style carnard ready to fly but need to mix for the split rudders used on this kind of aircraft.

The rudders, located on the winglets operate outboard only and used singly for yaw control or can be deployed together as a speed break.

Model is a Rokemodell speed canard as below picture



If you are willing to give-up the speed-brake functionality, you could just connect and configure them both as rudders.

I am not aware of any way to combine rudder functionality and speed-brake functionality. There seems to be a recent pull-request about this idea, but it needs someone with time to program it:

Yes I would be willing to give up the speed brake.
However the rudders as designed by Burt Rutan operate separately out on the wingtips.
Left yaw left rudder moves, right yaw right rudder moves.

Am I confusing myself about this or can Arduplane achieve this behavior?

If you want to preserve that behavior, I believe you could configure Ardupilot to do it.

Let’s pretend that each rudder takes a value from [-100 to +100] where -100 is full-left, 0 is centered, and +100 is full-right.

Configure both channels to the servos as rudders. Configure your left rudder’s MAX limit to be 0. Configure your right rudder’s MIN limit to be 0.

If I understand correctly, this should produce the desired rudder behavior. Let us know if you want more details, or run into problems?

Yes I follow your thinking - could well be an answer.
So each rudder will be on a different output from the pixhawk correct? What is the max limit parameter name to set on the servos?
Thanks so much for your help BTW.

You will be doing a unique application as I understand only 1 winglet will move to give desired rudder control.

In that case, you will need to set your SERVOn_TRIM equal to the MAX or MIN depending on the direction your servo moves. This will cause the rudder to stay still while the opposite rudder is engaged. This is basically what @hunt0r is saying.

Servo 4 = Control surface
1100PWM = Control surface straight
1900PWM = Control surface deployed to induce yaw

Set the following:
SERVO4_Function = Rudder
SERVO4_MIN = 1100
SERVO4_MAX = 1900
SERVO4_TRIM = 1100 (or maybe 1101 if you get errors)
SERVO4_REVERSED = 0 or 1 so that when the closest aileron moves upward in FBWA, the rudder deploys.

OK I can see the parameters for that in mission planner, thanks so much Nathan. Will be setting this up tomorrow and will definitely let you know how it goes.

Seems such a shame not to have speed breaks as B. Rutan intended. I’m wondering if a Taranis can be programmed to do that with Open TX? I dont mind if it is non autonomous behavior, just a manual deployment as system turns final approach.

Unfortunately if you set the servo function to rudder, it will not allow manual mixing to get both deployed at the same time. If you can find a developer to write that code, I can see it being useful though.

Yes I think I know what you mean…
Its probably just four lines of C++ some where in Arduplane!
But I’v always failed to compile the code even if I could find the relevant object.

Post your compiling problem to the developer sections of this forum and someone will look into it. We always appreciate additions to the code so that everyone can benefit!