Could another mode similar to flaperons be added that would work on elevons, so that the inner elevons drop, and outer elevons go up to work as crow braking? maybe also controlled by rudder input to make one side at a time crow as well.
Suggested Solution
I'm not sure how similar code is for inav to ardupilot but i've managed to edit a mix in ardupilot code that might help explain a bit better.
/*
Differential spoilers are a type of elevon that is split on each
wing to give yaw control, mixed from rudder
`
void Plane::dspoiler_update(void)
{
// just check we have a left dspoiler, and if so calculate all outputs
if (!SRV_Channels::function_assigned(SRV_Channel::k_dspoilerLeft1)) {
return;
}
float elevon_left = SRV_Channels::get_output_scaled(SRV_Channel::k_elevon_left);
float elevon_right = SRV_Channels::get_output_scaled(SRV_Channel::k_elevon_right);
float rudder_rate = g.dspoiler_rud_rate 0.01f;
float rudder = SRV_Channels::get_output_scaled(SRV_Channel::k_rudder) rudder_rate;
float dspoiler1_left = elevon_left;
float dspoiler2_left = elevon_left;
float dspoiler1_right = elevon_right;
float dspoiler2_right = elevon_right;
RC_Channel *flapin = RC_Channels::rc_channel(g.flapin_channel-1);
int8_t flap_percent = flapin->percent_input();;
Current Behavior
Flying wing has two elevons per side
Desired Behavior
Could another mode similar to flaperons be added that would work on elevons, so that the inner elevons drop, and outer elevons go up to work as crow braking? maybe also controlled by rudder input to make one side at a time crow as well.
Suggested Solution
I'm not sure how similar code is for inav to ardupilot but i've managed to edit a mix in ardupilot code that might help explain a bit better. /* Differential spoilers are a type of elevon that is split on each wing to give yaw control, mixed from rudder
` void Plane::dspoiler_update(void) { // just check we have a left dspoiler, and if so calculate all outputs if (!SRV_Channels::function_assigned(SRV_Channel::k_dspoilerLeft1)) { return; } float elevon_left = SRV_Channels::get_output_scaled(SRV_Channel::k_elevon_left); float elevon_right = SRV_Channels::get_output_scaled(SRV_Channel::k_elevon_right); float rudder_rate = g.dspoiler_rud_rate 0.01f; float rudder = SRV_Channels::get_output_scaled(SRV_Channel::k_rudder) rudder_rate; float dspoiler1_left = elevon_left; float dspoiler2_left = elevon_left; float dspoiler1_right = elevon_right; float dspoiler2_right = elevon_right; RC_Channel *flapin = RC_Channels::rc_channel(g.flapin_channel-1); int8_t flap_percent = flapin->percent_input();;
} `
Who does this impact? Who is this for?
This would work for flying wings with two elevons per side such as the fx-79 buffalo
Additional context
here's a clip showing crow braking on a fx-79 https://www.youtube.com/watch?v=qQI_1P7voCg