Thomas Stastny
1ab9fb22ee
fw pos ctrl: fix state switching logic for takeoff and landing
2022-05-06 16:36:03 +02:00
Silvan Fuhrer
138772386f
FW Position control: explicitly set spoiler/flaps in every control mode
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-05-03 15:11:21 +02:00
Silvan Fuhrer
4b8f93de5c
FW: rework spoiler/flap control logic
...
- remove separate flaperon controls input to mixer instead enable spoiler support
- add slew rate limiting on both flap and spoiler controls
- add spoiler configuration for Landing and Descend
- add trimming from spoiler deflection
- FW Attitude control: remove FW_FLAPS_SCL param -->
The flap settings for takeoff and landing are now specified relative to full range.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-05-03 15:11:21 +02:00
JaeyoungLim
c6ab4c466e
Separate takeoff and landing to individual fixed wing states for FW pos control ( #19495 )
2022-04-26 10:24:36 +02:00
Matthias Grob
f892a624b7
FlightModeManager/FixedwingPositionControl: robustify vehicle command parameter casting
2022-04-13 12:23:27 +03:00
RomanBapst
ca657f36ef
FixedWingPositionControl: handle VEHICLE_CMD_DO_CHANGE_SPEED
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2022-04-13 12:23:27 +03:00
Daniel Agar
6135bb384b
cleanup module callback registration failed errors
2022-03-23 20:44:50 -04:00
Daniel Agar
f4c3084c26
init adjustments to ensure used topics are advertised early (primarily for logging)
...
- multi-EKF create each instance as soon as IMU & mag are advertised (before device id populated)
2022-03-23 16:51:16 -04:00
Jaeyoung-Lim
194a281fae
Project local coordinates for all fw landing states
2022-03-23 13:34:13 +01:00
Jaeyoung-Lim
cb81c6ac8c
Address review comments
2022-03-23 13:34:13 +01:00
Jaeyoung-Lim
71bfb9c0de
Convert NPFG to local coordinates
2022-03-23 13:34:13 +01:00
Jaeyoung Lim
28d34bf095
Convert L1 controller to local coordinates
2022-03-23 13:34:13 +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
81b08a0168
FW Pos C: set position_sp type to position during VTOL backtransition
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-02-09 11:39:47 -05:00
JaeyoungLim
f82c722653
Publish correct orbit status with goto ( #19102 )
...
For fixedwings, the orbit status was publishing zero radius when a goto waypoint was being passed.
This commit corrects this by passing the default loiter radius as the guidance logic was using
2022-02-03 10:16:39 +01:00
Jaeyoung Lim
2fc95bb369
Rebase fix
...
Use getnavspeed_2d for groundspeed
2022-02-02 17:16:19 +01:00
Jaeyoung Lim
3a9c5c3178
Use acceleration to pass path curvature
2022-02-02 17:16:19 +01:00
Jaeyoung Lim
e2741f988a
Add interface for passing path tangent and closest point directly
...
This commit adds an interface to pass the path tangent and closest point directly to NPFG using the offboard interface
2022-02-02 17:16:19 +01:00
Jukka Laitinen
138f584e70
fw_pos_control_l1: Add a missing dependency to motion_planning
...
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-01-27 12:42:40 -05:00
JaeyoungLim
0607982b23
Publish orbit status also when the waypoint is a loiter waypoint ( #19048 )
...
* Publish orbit status also when the waypoint is a loiter waypoint
* Remove redundant orbit status publishing
2022-01-21 09:13:03 +01:00
Jaeyoung Lim
0dea56f88b
Use current_sp for publishing orbit status
2022-01-19 12:00:03 -05:00
Jaeyoung-Lim
dec5e7e9c8
Publish orbit status whenever the vehicle is in loiter
...
This commit moves the publish orbit status to be published whenever the vehicle is considering a loiter setpoint
2022-01-19 12:00:03 -05:00
Silvan Fuhrer
632dfa55e6
FW Pos C: add option to disable airspeed setpoint via stick input
...
-rename FW_POSCTL_INV_ST to FW_POS_STK_CONF and make bitmask out of it:
- bit 0: alternative mapping (height rate on throttle stick, airspeed on pitch)
- bit 1: enable/disable airspeed setpoints via stick
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-01-19 10:13:07 +01:00
Thomas Stastny
13c36155ce
fw_pos_ctrl: allow npfg to operate without wind estimate, dont switch controllers
2022-01-14 22:05:53 +01:00
Thomas Stastny
082e320191
integrate optional NPFG library for wind-aware fixed-wing guidance
2022-01-14 22:05:53 +01:00
RomanBapst
34bb671a73
improve parameter descriptions for fw maximum/minimum roll/pitch angles
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2022-01-14 16:34:44 +03:00
RomanBapst
555ee371e8
FixedWingPositionControl: consistently use the same roll and pitch angle
...
limits for autonomous and semi-autonomous modes (altitude & position control)
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2022-01-14 16:34:44 +03:00
Thomas Stastny
f8c2ee73db
handle line segment termination in navigator
...
- if following line segment (fixed-wing position control) switch waypoint when in acceptance radius OR passed the second waypoint. this handles the case of being beyond the second waypoint but not within the acceptance radius without the need to fly back to the waypoint (e.g. after a loiter up to waypoint alt)
- sync navigator and fw pos ctrl waypoint acceptance altitude
2022-01-13 13:43:02 +01:00
Silvan Fuhrer
5d7ddf5734
FW Pos Control: use SlewRate library for airspeed setpoint
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-01-07 09:39:10 -05:00
Silvan Fuhrer
0a82025faf
FW Position Control: some airspeed setpoint handling adaptions
...
- introuce slew rate limiting of airspeed setpoint (with slew rate of 1 m/s/s)
- some refactoring and clean up
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-01-05 17:06:41 +01:00
Silvan Fuhrer
20a1e5f77c
FW Position Control: simplify underspeed disabling logic for tecs
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-01-05 17:06:41 +01:00
Jaeyoung-Lim
bdec85fdd0
Disable local vehicle setpoints while in transition
...
This commit adds disabling vehicle setpoints while in transition
2022-01-03 11:09:06 +01:00
Jaeyoung-Lim
4127dfa791
Log vehicle local position setpoints
...
This commit enables the local position setpoints to be logged by publishing vehicle_local_position_setpoint
2022-01-03 11:09:06 +01:00
Jaeyoung Lim
52418f13b0
Use groundspeed for navigate heading
2022-01-03 10:52:34 +01:00
Jaeyoung-Lim
e66e82228f
Add support for offboard velocity setpoints for fixedwing vehicles
...
This commit adds a velocity controller which the setpoint can be passed using offboard setpoints
2022-01-03 10:52:34 +01:00
Silvan Fuhrer
28e01c3510
FW Position controller: make loiter switching logic robust against pos_sp with loiter_rad=0
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-12-24 20:17:15 -05:00
Thomas Stastny
95222baa33
fix incorrect L1 period param documentation ( #18811 )
...
* fix incorrect L1 period param documentation
* reduce minimum L1 period
2021-12-08 16:42:50 +01:00
Matthias Grob
68e2940f58
math: support max of three values additional to min and use it everywhere
2021-12-07 21:06:51 +01:00
Thomas Debrunner
8db7a6225b
geo: Moved the map_projection_* functions and state into a self-contained C++ class
2021-12-06 14:30:14 +01: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
Jaeyoung-Lim
dd83ef1813
Fix fw position controller takeoff
...
This was introduced by a rebase
2021-11-09 10:30:28 -05:00
Matthias Grob
fabf865411
Use backwards compatible manual_control_setpoint instead of manual_control_input
2021-11-09 16:05:25 +01:00
Julian Oes
6a6b8d49fc
msg: re-use manual_control_input in setpoint
...
This way we avoid duplication between manual_control_input and
manual_control_setpoint.
2021-11-09 16:05:25 +01:00
JaeyoungLim
031f7f831b
Fixedwing Pos Control: Handle vehicle transition waypoints outside controllers ( #18503 )
...
* Handle VTOL transition waypoints outside FW auto control modes
2021-11-08 11:21:08 +01:00
Jaeyoung-Lim
6a2ebfc0cc
Handle setpoint types properly for fixedwing position control
...
Handle setpoint types properly for fixedwing position control
2021-11-07 19:21:00 -05:00
Silvan Fuhrer
dbd9b88bea
FW position controller: only allow switching to AUTO_ALTITDUE or AUTO_CLIMBRATE if pos_sp_curr_valid
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-11-07 23:31:21 +01:00
RomanBapst
924298e9c3
addressed review comments
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2021-11-05 18:04:33 +01:00
RomanBapst
6e75b7cffd
FixedWingPositionControl: push altitude setpoint locking into TECS
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2021-11-05 18:04:33 +01:00
Silvan Fuhrer
b77487d69c
Fixed-wing Position controller: add modes for auto altitude and auto descend
...
- bit of clean up
- add GPS failsafe mode auto_altitude, that will keep current altitude with a fixed-bank angle
for some time, then switches to auto_descend that will descend with constant sink rate
of 0.5m/s
- params controlling GPS failsafe are not FW params: NAV_GPSF_R --> FW_GPSF_R and
NAV_GPSF_LT --> FW_GPSF_LT
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-11-05 12:09:39 +03:00
Silvan Fuhrer
e715e6c245
Fixed-wing position control: set yaw_sp to yaw_current instead of nav_bearing when not controlled
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-10-27 14:35:00 +03:00