diff --git a/ROMFS/px4fmu_common/init.d/airframes/13014_vtol_babyshark b/ROMFS/px4fmu_common/init.d/airframes/13014_vtol_babyshark index 5302163f7c..9f9f9faf87 100644 --- a/ROMFS/px4fmu_common/init.d/airframes/13014_vtol_babyshark +++ b/ROMFS/px4fmu_common/init.d/airframes/13014_vtol_babyshark @@ -111,7 +111,7 @@ param set-default CA_ROTOR4_AX 1.0 param set-default CA_ROTOR4_AZ 0.0 param set-default CA_SV_CS_COUNT 3 -param set-default CA_SV_CS0_TYPE 12 #custom type as combined aileron +param set-default CA_SV_CS0_TYPE 15 param set-default CA_SV_CS0_TRQ_R 1.0 param set-default CA_SV_CS1_TRQ_P 0.5000 param set-default CA_SV_CS1_TRQ_R 0.0000 diff --git a/src/modules/control_allocator/ActuatorEffectiveness/ActuatorEffectivenessControlSurfaces.cpp b/src/modules/control_allocator/ActuatorEffectiveness/ActuatorEffectivenessControlSurfaces.cpp index 95bf818320..27288299b6 100644 --- a/src/modules/control_allocator/ActuatorEffectiveness/ActuatorEffectivenessControlSurfaces.cpp +++ b/src/modules/control_allocator/ActuatorEffectiveness/ActuatorEffectivenessControlSurfaces.cpp @@ -120,6 +120,15 @@ void ActuatorEffectivenessControlSurfaces::updateParams() case Type::Custom: break; + + case Type::LeftATail: + break; + + case Type::RightATail: + break; + + case Type::SingleChannelAileron: + break; } } } diff --git a/src/modules/control_allocator/ActuatorEffectiveness/ActuatorEffectivenessControlSurfaces.hpp b/src/modules/control_allocator/ActuatorEffectiveness/ActuatorEffectivenessControlSurfaces.hpp index 4bc34bab9b..efb51e0d6e 100644 --- a/src/modules/control_allocator/ActuatorEffectiveness/ActuatorEffectivenessControlSurfaces.hpp +++ b/src/modules/control_allocator/ActuatorEffectiveness/ActuatorEffectivenessControlSurfaces.hpp @@ -57,6 +57,9 @@ public: RightFlaps = 10, Airbrakes = 11, Custom = 12, + LeftATail = 13, + RightATail = 14, + SingleChannelAileron = 15, }; struct Params { diff --git a/src/modules/control_allocator/module.yaml b/src/modules/control_allocator/module.yaml index dde56ad67f..1df4ae649c 100644 --- a/src/modules/control_allocator/module.yaml +++ b/src/modules/control_allocator/module.yaml @@ -270,6 +270,7 @@ parameters: 12: Custom 13: Left A-tail 14: Right A-tail + 15: Single Channel Aileron num_instances: *max_num_servos instance_start: 0 default: 0 @@ -539,6 +540,10 @@ mixer: - { 'hidden': True, 'default': 0.0 } # roll - { 'min': 0.0, 'max': 1.0, 'default': 0.5 } # pitch - { 'min': 0.0, 'max': 1.0, 'default': 0.5 } # yaw + 15: # Single Channel Aileron + - { 'min': 0.0, 'max': 1.0, 'default': 1.0 } # roll + - { 'hidden': True, 'default': 0.0 } # pitch + - { 'hidden': True, 'default': 0.0 } # yaw - select_identifier: 'servo-type-tailsitter' # restrict torque based on servo type for tailsitters apply_identifiers: ['servo-torque-roll-tailsitter', 'servo-torque-pitch-tailsitter', 'servo-torque-yaw-tailsitter']