Konrad
c83fd11924
RTL: Always publish available approaches from home and rally points irrespective of rtly type
2025-03-07 09:01:19 +01:00
Konrad
613a4b682e
CI: add option to filter for boards in generate_board_targets
2024-11-04 09:46:49 -08:00
Konrad
e666b8ddfd
CI: make sure that the generate_board_targets includes all found targets
2024-11-04 09:46:49 -08:00
Konrad
daf604b361
mavlink_mission: handle concurrent mission count messages
2024-10-08 15:34:51 +02:00
Konrad
7ec4c1419c
mavlink_mission: only accept a mission request list on an ongoing transfer, when it is the same partner
2024-10-08 15:34:51 +02:00
Konrad
b51ad07ed0
mavlink_mission: do not send the mission count if a new mission is detected since a receiver can now check this by changing mission ids in the MISSION_CURRENT stream
2024-10-08 15:34:51 +02:00
Konrad
1c62dda057
mavlink_mission: make sure send mission item error ack is send to the right sysid/compid
2024-10-08 15:34:51 +02:00
Konrad
b1d52e20c6
mavlink_mission: guard incoming misison item to be from the current transfer partner
2024-10-08 15:34:51 +02:00
Konrad
c20c1f09a6
RTL_DIRECT: explicitely set force heading in loiter hold if needed
2024-09-23 11:02:02 +02:00
Konrad
02e50bb5dc
rtl_direct: loiter hold should track altitude as best effort but not enforce it
2024-09-23 11:02:02 +02:00
Konrad
82a7d0410c
DistanceSensorModeChangeRequest: renaming of variable
2024-09-16 09:11:23 +02:00
Konrad
aab2390e51
navigator: publish distance sensor mode change request when in RTL landing phase or during mission landing
2024-09-16 09:11:23 +02:00
Konrad
1755b8304e
RTL direct: Make sure the _rtl_state captures the current status and not the next one
2024-09-16 09:11:23 +02:00
Konrad
e6f07bde2a
lightware_laser: add option to listen to system to enable/disable distance sensor
2024-09-16 09:11:23 +02:00
Konrad
4713a6737e
TECS: ramp up fast descend over 2_s to ramp down the throttle command
2024-09-13 14:04:39 +02:00
Konrad
585c92796d
mission_base: do not make terrain avoidance check when mission is not run anymore
2024-09-13 13:59:24 +02:00
Konrad
80d4fad624
DistanceSensorCheck: do not raise a distance sensor failure if the SFXX_MODE is set to 2 and we are in a VTOL FX flight phase
2024-09-03 15:53:09 +02:00
Konrad
20b6f343a3
mission_base: make sure all mission_items during landing phase have yaw set to NaN
2024-08-22 12:58:44 +02:00
Konrad
664a0f2cda
HomePosition: Add minimum position change needed to be recognised as new home position
2024-05-21 09:11:56 +02:00
Konrad
17916b7fdc
uxcre_dds_client: use topic name as defined in the dds_topics.yaml to register stream
2024-05-15 11:07:01 -04:00
Konrad
6984e6da7f
TECS:use tas_setpoint instead of measured tas for specific kinetic energy calculation
2024-05-07 14:20:07 +02:00
Konrad
f56f4c7033
TECS: enable specific energy weights to have a value up to 2
2024-05-07 14:20:07 +02:00
Konrad
f8a20e1964
TECS: increase airspeed control limit for fast descend
2024-05-07 14:20:07 +02:00
Konrad
6a789b54c6
TECS: allow for fast descend up to maximum airspeed. Use pitch control loop to control max airspeed while giving minimal throttle.
2024-05-07 14:20:07 +02:00
Konrad
6a7555c005
mission_base: fix to set the end of mission item always, if the mission can't be properly loaded or started
2024-04-11 10:21:52 +02:00
Konrad
c5fde63440
mission: The mission check on activation should only be performed for a mission, not RTL.
...
We need to make sure that when the RTL is triggered, it should not reevaluate it, as when it was valid but evaluated to false on activation, it can't do a RTL.
2024-03-11 17:08:56 +01:00
Konrad
e9fda548fa
rtl_direct: Rtl estimate only needs valid destination, not home position
2024-03-11 14:04:02 +01:00
Konrad
91d1342f20
rtl_direct_mission: rtl_estimate for fixedwing land is diagonal
2024-03-11 14:04:02 +01:00
Konrad
89844625b4
rtl: reduce time estimate calculations
2024-03-11 14:04:02 +01:00
Konrad
fde71cd15e
rtl_direct_mission_land: add time estimation for RTL mission land
2024-03-11 14:04:02 +01:00
Konrad
14e4169473
rtl_direct: Move the time estimation calculation into a separate helper class
2024-03-11 14:04:02 +01:00
Konrad
04099ed483
mission_base: Force mission validity check on activation
2024-03-08 17:26:04 +01:00
Konrad
1aa26a5a91
missionFeasibilityChecker: Fix tests
2024-03-08 17:26:04 +01:00
Konrad
acd750e033
mission_base: Run feasibility checker only after first global position has been published
2024-03-08 17:26:04 +01:00
Konrad
6c6142ba79
MissionFeasibiltyChecker: Do not delete uorb data on reset.
2024-03-08 17:26:04 +01:00
Konrad
7fb584adbe
MissionResult uorb: fix wrong int types
2024-03-08 17:26:04 +01:00
Konrad
fb3aab1fb0
mission_base: check mission feasibility again, if geofence has changed.
2024-03-08 17:26:04 +01:00
Konrad
1b03ac4d2b
mission_base: Only run mission feasibility if the geofence module is ready
2024-03-08 17:26:04 +01:00
Konrad
815cea2abb
geofence: publish status of loaded geofence
2024-03-08 17:26:04 +01:00
Konrad
51321c605e
mission_base: clean up mission check evaluation
2024-03-08 17:26:04 +01:00
Konrad
a0ae073d8c
mission_base: Do not initialize mission from dataman. only listen on mission topic
2024-03-08 17:26:04 +01:00
Konrad
424c3cd2cb
FeasibilityChecker: Add new TakeoffLandAvailable option
...
ADd a new misison feasiblity checker option to check if a proper landing approach is defined when in air. There must be at least a mission landing or a VTOL approach defined in order for the mission to be accepted. Else, use the same logic as in MIS_TKO_LAND_REQ=4
2024-02-16 10:27:22 +01:00
Konrad
68100650da
RTL: publish a status message on currently chosen RTL point
2024-02-16 10:27:22 +01:00
Konrad
cb09dde606
FixedwingPositionControl: Used corrected npfg roll output in path mode
2024-02-13 17:17:44 +01:00
Konrad
1a1891073e
FixedwingPositionControl: Only warn user when roll is reduced for a longer period of time
2024-02-13 17:17:44 +01:00
Konrad
169d2dd286
mission_base: fix validity on abort landing
2024-01-30 11:25:37 -05:00
Konrad
0a153efb9d
mission_base: make sure to always update state on mission topic update
2024-01-30 11:25:37 -05:00
Konrad
97ce599b1f
mavlink_mission: publish mission topic at startup
2024-01-30 11:25:37 -05:00
Konrad
9fd137e88e
mavlink_mission: add alternating storage for geofence and safe points on upload
...
This way the old points are kept on an upload error.
2024-01-30 11:25:37 -05:00
Konrad
50f1abaef1
dataman: extend for double storage geofence and safe points
2024-01-30 11:25:37 -05:00
Konrad
dfa56d474a
mission: renaming dataman_id to mission_dataman_id
2024-01-30 11:25:37 -05:00
Konrad
cac858cb24
dataman: use correct size for dataman compat key
2024-01-30 11:25:37 -05:00
Konrad
df46ad7774
Dcm2: Use std::sin with overloaded types
2023-12-05 10:42:23 +01:00
Konrad
d1b8a2e8d5
fxedwingPositionControl: Add slew rate at the end for all mode instead inside each
2023-12-05 10:42:23 +01:00
Konrad
ae3aee3402
fw param: reduce default COM_VEL_FS_EVH to warn earlier when velocity uncertainty increases
2023-12-05 10:42:23 +01:00
Konrad
1d07697a9e
NPFG: Add fallback for corner cases
2023-12-05 10:42:23 +01:00
Konrad
42ce9eb692
mavlink_mission: Send MISSION_CURRENT periodically even when no mission is loaded.
2023-11-29 11:10:40 -05:00
Konrad
36f0c0f0bf
mavlink-mission: Add support for opaque ids and replace update counter with it
2023-11-29 11:10:40 -05:00
Konrad
120e7fea8b
mavlink: update submodule including opaque ID
2023-11-29 11:10:40 -05:00
Konrad
8a68a66203
figureEight: Rename relative position variable
2023-11-28 10:06:01 +01:00
Konrad
1e06ed2ed5
figureEight: Rework initialization
2023-11-28 10:06:01 +01:00
Konrad
a73409c015
FigureEight: Refactor initialization
2023-11-28 10:06:01 +01:00
Konrad
6a34b63b60
mission_base: perform mission_check_valid if mission, geofence ot homeposition have changed
2023-11-24 08:11:41 +01:00
Konrad
5e1f0b73ce
HomePosition: Add an instance counter
2023-11-24 08:11:41 +01:00
Konrad
3ac7ed6afa
mission_base: Do not reset mission on invalid mission upload
2023-11-24 08:11:41 +01:00
Konrad
a92e7a8796
missionResult: remove unnecessary constants and rename instance_count to mission_update_counter
2023-11-24 08:11:41 +01:00
Konrad
9387de8282
mavsdk figure 8 test: Increase time of timeout
2023-11-22 16:47:38 -05:00
Konrad
32127ca789
loiter: set loiter position to current position setpoint, if it is a loiter item
2023-11-13 12:43:58 +01:00
Konrad
44d1003f8e
rtl: Only use approaches for vtols in fixed wing mode
2023-11-12 15:41:28 +01:00
Konrad
72c6db6b23
vtol_rtl_test: explicitly disable RTL_FORCE_APPROACH for RTL direct Home testcase
2023-11-08 17:48:34 +01:00
Konrad
3d16383bb4
mavlink_tests: fix include directory to point to chosen mavlink dialect
2023-11-07 11:35:23 +01:00
Konrad
1089079a32
Figure_of_eight: Make configuration dependent on defined mavlink_message_id.
2023-10-31 15:57:59 -04:00
Konrad
e3473a0f90
mavsdk_tests: Add integration tests for figure of 8
2023-10-31 15:57:59 -04:00
Konrad
8edd7ce2c1
kconfig: Add option to enable figure of eight support
2023-10-31 15:57:59 -04:00
Konrad
e5e66370e7
FixedwingPositionControl: Add support for figure 8 loitering.
...
The command is sent by a dedicated mavlink command and forwarded to the fixed wing position controller.
The pattern is defined by the radius of the major axis, the radius of the minor axis and the orientation. The pattern is then defined by:
The upper part of the pattern consist of a clockwise circle with radius defined by the minor axis. The center of the circle is defined by the major axis minus the minor axis away from the pattern center.
The lower part of the pattern consist of a counter-clockwise circle with the same definitions as above.
In between, the circles are connected with straight lines in a cross configuration. The lines are always tangetial to the circles.
The orientation rotates the major axis around the NED down axis.
The loitering logic is defined inside its own class used by the fixed wing position control module. It defines which segment (one of the circles or lines) is active and uses the path controller (npfg or l1-control) to determine the desired roll angle.
A feedback mavlink message is send with the executed pattern parameters.
2023-10-31 15:57:59 -04:00
Konrad
2e850371c5
test_vtol_rtl: increase time to disarm to make tailsitter CI pass
2023-10-31 14:16:02 +01:00
Konrad
e4e2e6374a
fmu-v6x: enable vtol takeoff again
2023-10-31 14:16:02 +01:00
Konrad
654e885003
mavsdk: Add integration tests for RTL with approaches
2023-10-31 14:16:02 +01:00
Konrad
24f59dd465
autopilot_tester: Add mavlink passthrough to end custom commands
2023-10-31 14:16:02 +01:00
Konrad
a4d05085a7
Navigator: Don't switch to RTL if already in landing phase of mission.
2023-10-31 14:16:02 +01:00
Konrad
c1214c847f
rtl+mission: remove do_need_move_to_land and handleLanding duplicated code to reduce flash
2023-10-31 14:16:02 +01:00
Konrad
698c57c5f8
[RTL] Add VTOL land approach for home with designated loiter points in the RTL mode.
2023-10-31 14:16:02 +01:00
Konrad
e2cbf5be94
[RTL] Update MAVLINK Mission logic to send optional loiter points to mission rally points.
2023-10-31 14:16:02 +01:00
Konrad
ee5cfbb01c
px4_fmu-v5_stackcheck: Disable OSD driver to save flash
2023-09-29 14:25:03 +02:00
Konrad
2779a00ac8
VTOL TAKEOFF: Add Config to deactivate, and deactivate on all boards except fmu_v5x and sitl.
...
QGC does not support VTOL takeoff and thus this is used to safe flash space.
2023-09-29 14:25:03 +02:00
Konrad
4227e2b7e7
test_vtol_mission: Increase thresholds for tests to pass. Temporarily disable checks tracks fro reverse mission.
...
Current threshhold has no margins of errors with the set acceptance radius. Increase corridor radius by 5m.
Increase time to disarm for tailsitter test to pass.
Rverse mission needs check tracks test disabled since mavsdk does not really work with mission has reverse order.
2023-09-29 14:25:03 +02:00
Konrad
5c021d8fa4
RTL: Keep only the selected RTL type in memory.
2023-09-29 14:25:03 +02:00
Konrad
d4ea106f9e
RTL: When RTL_TYPE is set to 1 make sure to always use a mission landing/safepoint if available and not in RW mode.
2023-09-29 14:25:03 +02:00
Konrad
9a48d375ce
mavlink-mission: Calculate land_start and land item directly on mission upload.
2023-09-29 14:25:03 +02:00
Konrad
007ed11bbe
Mission+RTL: Refactoring mission and RTL to keep them separate. RTL does all its mission related computation in its own class.
...
Dataman: Add write function to dataman cache.
RTL and mission have a new common base class mission_base. Both inherit from them and mission, RTL mission, and rtl reverse mission inherit from them and implement their desired functionalities. This simplifies the logic in mission as well as make the logic in rtl mission reverse and mission more readable.
Rtl mission reverse now functional again for VTOL flying back the mission and transitioning to MC at the home position.
Dataman cache has new write functionality to write to dataman while updating write item in its cache if necessary.
Dataman cache is now only updated when the respective module is active. Leads to a higher computation time once on activation, but decreases unnecessary cache updates when inactive.
2023-09-29 14:25:03 +02:00
Konrad
679a532e61
failsafe: When rtl_time_estimate failsafe is triggered, only disable it when the user changes the mode, or it is disarmed.
2023-09-13 16:19:08 +02:00
Konrad
e4111a03bf
mavlink-mission: Initialize the safepoint and mission counter from the dataman state.
...
If at the last powercycle one mission was uploaded, the counter in dataman was 1. On the next powercycle the mavlink mission counter was reset to zero and on first mission upload updated to 1 again. Other modules check, if the mission was changed based on the counter, like the mission.cpp loaded the mission counter from the dataman. On a new mission, the comparison of the counters failed, because both were the same value even if the mission was completely different.
2023-07-27 07:21:29 +02:00
Konrad
aa2c47a56b
mission: On an updated mission, don't assume per default that the mission is not valid, use the state from the last mission validation.
2023-07-27 07:21:29 +02:00
Konrad
3303323971
mavlink stream: Heartbeat system status should neglect the actuator_armed.lockdown flag in HIL, since this is always enabled for HIL.
2023-06-16 14:21:32 +02:00
Konrad
7098970a38
Tools: extend documentation parser:
...
- Add the possibility in the parser to replace the defines made in the current file with their argument (includes are not supported)
- Add the possibility for the parser to parse int argument with bitwise shift operators
2023-03-06 18:34:01 -05:00
Konrad
b9f9f25b48
parameter_translation: Add parameter translation for renamed L1 parameters
2023-02-09 17:51:55 +01:00
Konrad
92277ebb96
FixedwingPositionControl: Explicitly set wind to zero when it is not valid.
2023-02-09 17:51:55 +01:00
Konrad
de4b139540
FwPosControl: Update behavior of navigating to a waypoint when the previous waypoint is not valid. Go along the line of the current aircraft position to the desired waypoint.
2023-02-09 17:51:55 +01:00
Konrad
d5025810b4
FixedWingPositionControl: remove get_nav_speed_2d function as npfg can handle this internally.
2023-02-09 17:51:55 +01:00
Konrad
6bdeb43e0d
fw_path_navigation: Remove explicit L1 mentioning.
2023-02-09 17:51:55 +01:00