Silvan Fuhrer
8f2c84d36f
VTOL paras: add min of 0.1 to transition times
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-05-18 10:01:04 +02:00
Silvan Fuhrer
c29ca6c959
tailsitter: guard against division by 0
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-05-18 10:01:04 +02:00
Silvan Fuhrer
3cf07e1be5
VTOL: rename params _PTCH to _PITCH
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-05-18 10:01:04 +02:00
Silvan Fuhrer
7c5f0121a5
VTOL: remove some unsued variables
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-05-18 10:01:04 +02:00
Silvan Fuhrer
2b7efeacca
vtol_vehicle_status: replace several status bools by single vehicle_vtol_state
...
Replace vtol_in_rw_mode, vtol_in_trans_mode, in_transition_to_fw by vehicle_vtol_state.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-05-18 10:01:04 +02:00
Silvan Fuhrer
635f64a2e5
Commander: remove permanent stabilization option for fixed-wing flight
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-05-18 10:01:04 +02:00
Silvan Fuhrer
7292ce483c
VTOL: move to cpp params API
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-05-18 10:01:04 +02:00
Silvan Fuhrer
46179586fb
Control Allocation: Tiltrotor: pass only thrust magnitude instead of 3D thrust to allocator
...
Special case tiltrotor: instead of passing a 3D thrust vector (that would mostly have a x-component in FW, and z in
MC), pass the vector magnitude as z-component, plus the collective tilt. Passing 3D thrust plus tilt is not feasible as they
can't be allocated independently, and with the current controller it's not possible to have collective tilt calculated
by the allocator directly.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-05-11 10:19:37 +02:00
Silvan Fuhrer
089673ff35
only allow positive spoiler and flap controls
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-05-03 15:11:21 +02:00
Silvan Fuhrer
64ff31aa08
VTOL: add flap and spoiler support
...
- including slew rate limiting
- adds option to set spoiler setting during the Land phase (hover)
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-05-03 15:11:21 +02:00
Silvan Fuhrer
21a2892f47
use actuator_controls[8] for collective tilt for tiltrotor VTOL, instead of [4]
...
[4] is reserved for Flaps, so also having the tilt on it was preventing us from
using flaps on tiltrotors, and other ripple effects.
By using [8] the tilt is separated from all other channels - it requires to increase the size of
actuator_controls by 1 to 9.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-05-03 15:11:21 +02:00
Daniel Agar
6135bb384b
cleanup module callback registration failed errors
2022-03-23 20:44:50 -04:00
Konrad
e080fab8f6
Set up landing gear logic for tiltrotor and tailsitter VTOL. Gear is set down when in hover mode, esle gear is set up.
2022-03-21 09:30:04 +01:00
Konrad
d7de67844f
Set up landing gear logic for standard VTOL. Gear is set down when in hover mode, else gear is set up.
2022-03-21 09:30:04 +01:00
Roman Bapst
69560bd4f4
Compensate VTOL transition time for air density ( #19293 )
...
* vtol: compensate front transition minimum time and front transiton openloop time
for air density
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2022-03-09 08:41:30 -05:00
Beat Küng
76d8d8cae6
control_allocator: generic motor configuration for standard vtols
...
This adds the pusher/puller to the standard motors and makes the axis
configurable.
2022-02-25 08:30:58 +01:00
Jukka Laitinen
9449ed6e66
Add support for protected build in drivers, systemcmds and modules Kconfig
...
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-02-18 07:58:58 +01:00
Silvan Fuhrer
25f5152583
Tiltrotor: make sure tilt doesn't exceed the FW tilt angle
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-02-17 13:21:50 +01:00
Silvan Fuhrer
48be55dec8
Tiltrotor: disable tilt/thrust compensation when dynamic allocation is enabled
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-12-24 20:06:13 -05:00
Silvan Fuhrer
31d7328f4d
Tailsitter: invert roll (make it NED-correct) for filling vehicle_torque_setpoint
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-12-24 20:06:13 -05:00
Silvan Fuhrer
460a0df850
tiltrotor: fill out thrust_setpoint[0] also in hover, based on tilt and hover thrust
...
In the tiltrotor case, beside an F_z thrust setpoint also a F_x setpoint must be passed
to the allocator as the matrix has non-zero thrust-x effectiveness when tilts are applied.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-12-24 20:06:13 -05:00
Silvan Fuhrer
426aa76a59
CA/VTOL: change description of VT_ELEV_MC_LOCK as it applies to not just elevons
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-12-24 20:06:13 -05:00
Silvan Fuhrer
07306c4be3
control_allocator: add support for Tailsitter VTOL
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-12-24 20:06:13 -05:00
Silvan Fuhrer
0568cff299
control_allocator: handle thrust allocation for VTOL's properly
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-12-24 20:06:13 -05:00
Beat Küng
b5c2cdf6c4
vtol_att_control: do not manipulate PWM outputs if SYS_CTRL_ALLOC == 1
...
Not required anymore
2021-12-24 20:06:13 -05:00
Beat Küng
5da67e2e28
vtol_att_control: publish vehicle_thrust_setpoint & vehicle_torque_setpoint
2021-12-24 20:06:13 -05:00
Beat Küng
4ba84d56c9
logger: introduce optional topics
...
The current practice of adding topics to the default set isn't scalable,
as it affects all setups.
By making sure topics are advertised on init, logger can just discard
topics that don't exist. This does not work for all topics, so topics are
specifically marked as optional. It can be extended to more topics later
on though.
This reduces the list of topics by ~35 on a pixracer configured as quad,
and reduces RAM usage by ~1KB.
2021-11-15 09:02:03 -05:00
Matthias Grob
a349dae760
Use action_request to command RC VTOL transitions
2021-11-09 16:05:25 +01:00
Silvan Fuhrer
a66b0829b0
Standard VTOL: add airspeed to back transition logic and refactor it a bit
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-10-15 09:58:48 +02:00
Silvan Fuhrer
358c67226e
Tiltrotor: backtransition logic improvements
...
-use groundspeed in body x for exit condition
-use airspeed for speed exit condition if no valid groundspeed
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-10-15 09:58:48 +02:00
Silvan Fuhrer
cba80a6338
Tiltrotor: front transition: fade out yaw equally to roll
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-10-15 09:58:48 +02:00
Silvan Fuhrer
641383cbfb
VTOL backtransition improvements
...
* vtol_type: only allow positive pitch setpoints during backtransition
* vtol params: set default of VT_B_DEC_FF to 0, as for most frames a FF is not necessary
* Tiltrotor: fix throttle during first part of back transition
* Tiltrotor: only enable all motors in second phase of backtransition (tilting phase)
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-10-15 09:58:48 +02:00
Silvan Fuhrer
d39c32619e
Tiltrotor: add minimum throttle of 0.25 during front transition
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-10-15 09:58:48 +02:00
RomanBapst
f61853d428
vtol: implement throttle blending out and into transition
...
- blend into TECS throttle after front transition
- blend out of TECS throttle during backtransition
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2021-10-15 09:58:48 +02:00
RomanBapst
8dd76050e0
vtol: take fixed wing attitude setpoint during transition if altitude is
...
not controlled
- required as there is no flightask running if altitude is not controlled
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2021-10-15 09:58:48 +02:00
Silvan Fuhrer
801ef2d520
VTOL main: add local variable for int(vehicle_command.param1 + 0.5)
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-10-11 18:15:18 +02:00
Silvan Fuhrer
342e9900f8
vtol main: only guard against transition to FW in certain flight modes, never to MC
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-10-11 18:15:18 +02:00
Shubham Shah
47a72a6b7b
Update vtol_att_control_main.cpp
2021-10-09 19:39:43 -04:00
Shubham Shah
9fd19a2c83
Update standard.cpp
2021-10-09 19:39:43 -04:00
Shubham Shah
af34b21ba8
Update tiltrotor.cpp
2021-10-09 19:39:43 -04:00
Peter van der Perk
d5e3e9a7bc
[Kconfig] Decompose Kconfig, now each module has its own Kconfig
...
Which is better for versioning and decomposability
2021-10-07 10:09:01 -04:00
Silvan Fuhrer
a202bcbc73
VTOL: fix param description concerning VT_PITCH_MIN
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-10-07 09:22:59 -04:00
Silvan Fuhrer
1a4ce136f3
Tiltrotor: add hover tilt offset to pusher assist tilt
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-10-06 11:27:19 -04:00
Silvan Fuhrer
4e3fa7cf35
VTOL: rework forward actuation assist
...
-allow positive pitch offsets in hover
-add param for min pitch during LAND
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-10-06 11:27:19 -04:00
Silvan Fuhrer
f0de88fada
vtol_type: fix motor_state::VALUE
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-10-06 11:26:39 -04:00
Silvan Fuhrer
2dca51216c
vtol: change message for transition timeout warning
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-10-05 18:19:33 -04:00
Silvan Fuhrer
bdc57178d4
Tailsitter: add add transition timeout (abort transition after VT_TRANS_TMEOUT, Quadchute)
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-10-05 18:19:33 -04:00
Silvan Fuhrer
1a1bb2629d
tiltrotor: add transition timeout (abort transition after VT_TRANS_TIMEOUT, Quadchute)
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-10-05 18:19:33 -04:00
Beat Küng
f8dc915789
vtol_att_control: switch to events
2021-09-11 14:08:41 -04:00
xdwgood
c35293107d
tailsitter.cpp:If transition timeout,abort transition
2021-09-03 13:41:40 +02:00