Commit Graph
18241 Commits
Author SHA1 Message Date
Konrad a92e7a8796 missionResult: remove unnecessary constants and rename instance_count to mission_update_counter 2023-11-24 08:11:41 +01:00
Beat Küng 7afa011741 mavlink_mission: publish mission after updating dataman
This avoids a potential race condition when dataman also updates dataman
as a result of the publication.
2023-11-24 08:10:07 +01:00
Beat Küng 93cae5f9d7 mission: fix comparison logic for saving mission state 2023-11-24 08:10:07 +01:00
Matthias Grob 8271faedeb control_mode: reorder modes according to controller cascade 2023-11-23 20:35:48 +01:00
Matthias Grob 6e31638817 control_mode: add allocation to orbit mode to not crash 2023-11-23 20:35:48 +01:00
Silvan Fuhrer a99a7d2abd vtol: always check for EKF2 resets, not just when QC is checked
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2023-11-23 13:54:07 +01:00
Silvan Fuhrer eae939d86c vtol_type: transition altitude loss quad-chute: handle z resets
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2023-11-23 13:54:07 +01:00
Beniamino Pozzan 742d237ae3 [uxrce_dds] add vehicle_thrust_setpoint, vehicle_torque_setpoint
actuator_motors and actuator_servos subscribers for offboard control

Being subscribers, this does not increase the computational load
over the uxrce_dds brigde

Signed-off-by: Beniamino Pozzan <beniamino.pozzan@gmail.com>
2023-11-22 22:14:50 -05:00
Beniamino Pozzan 1c8f31f339 [offboard] add thrust and torque control mode
New thrust and torque control mode added which replaces the previous
actuator mode,
in this mode the rate controllers are disables, the control allocator
is enabled and the used externally provices
vehicle_thrust_setpoints and vehicle_torque_setpoints.

New direct_actuator mode
In direct_actuator mode the control allocator module does not publish
actuator_motors and actuator_servos messages which must instead be
provided extrernally by the user.

Removed old direct mode.

Signed-off-by: Beniamino Pozzan <beniamino.pozzan@gmail.com>
2023-11-22 22:14:50 -05:00
Jacob Dahl 6cc38776c8 src/modules/uxrce_dds_client: set system clock from agent CLOCK_REALTIME (#22290)
* Added parameter UXRCE_DDS_SYNCC to enable system clock synchronization. Refactored and cleaned up. Only set system time if it's off by more than 5 seconds (same as mavlink and gps).
2023-11-22 22:06:11 -05:00
Silvan Fuhrer e280a6c6e6 Navigator: Geofence: always run geofence_breach_check(), not only only on pos update
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2023-11-22 21:45:02 -05:00
Silvan Fuhrer ade68aa563 Navigator: Geofence: stay in GF breached mode when in Loiter due to breach
Only re-evaluate if no longer in GF when flight mode is changed or
Loiter position was changed (eg through goto).

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2023-11-22 21:45:02 -05:00
Silvan Fuhrer f2aabe968e Geofence: add checks for custom GF validity when uploading it
- check if Home would breach it (we do not want to upload GF that
do not allow to return to Home)
- check if the current vehicle position isn't contained in the GF
if armed (as then it would immediately trigger)

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2023-11-22 21:45:02 -05:00
Silvan Fuhrer 2865bbb8ab Geofence: rework messaging and notification
- do reporting of breaching in-air only in geofenceCheck
- remove geofence_violation_reason_t
- replace geofence_breached field in GeofenceResult.msg with 3 fields
(one for each GF type: max dist, max alt, custom geofence)
- the warning message after breaching a GF is only done by Commander,
and it's specific to the GF type failure

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2023-11-22 21:45:02 -05:00
Silvan Fuhrer 3c194d552a Geofence: rework the way to check all GF at once
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2023-11-22 21:45:02 -05:00
Silvan Fuhrer a41f24a2e2 geofence_result.msg: rename premove unused field home_required
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2023-11-22 21:45:02 -05:00
Silvan Fuhrer b178c943a6 GeofenceBreachAvoidance: remove unused variables and methods
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2023-11-22 21:45:02 -05:00
Silvan Fuhrer c0f26c8fbd mission_feasibility_checker.h: remove unused Geofence class
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2023-11-22 21:45:02 -05:00
Silvan Fuhrer 563bfbf6e7 Geofence: remove GF_COUNT
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2023-11-22 21:45:02 -05:00
Silvan Fuhrer fd709e05b0 Geofence: remove GF_ALTMODE
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2023-11-22 21:45:02 -05:00
Silvan Fuhrer f3eacb4844 Geofence: fix status print
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2023-11-22 21:45:02 -05:00
Silvan Fuhrer f8f4ea2fee MissionFeasibilityCheck: rename checkGeofence to checkMissionAgainstGeofence()
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2023-11-22 21:45:02 -05:00
Julian Oes 976cd67f71 logger: increase default GPS rate
Signed-off-by: Julian Oes <julian@oes.ch>
2023-11-22 21:30:31 -05:00
GuillaumeLaine ab867b963c dds_topics: Adds missing data reader 2023-11-22 10:42:05 +00:00
GuillaumeLaine f3e85219a3 dds_topics: Adds handling for empty yaml fields 2023-11-22 10:42:05 +00:00
GuillaumeLaine 85c75aedd1 dds_topics: Adds multi publication to subscribed dds topics 2023-11-22 10:42:05 +00:00
bresch e568b4a1d7 replay: increase buffer size
required to parse larger topics
2023-11-21 21:56:34 -05:00
bresch 6320ca64a9 ekf2-terr: allow range fusion before takeoff 2023-11-21 21:56:34 -05:00
bresch 0f3378e194 ekf2: fix terrain range finder logging 2023-11-21 21:56:34 -05:00
bresch 1c3a1183c8 ekf2-flow: refactor control logic
Use flow rates instead of integrals in backend. This allows us to delay
the data to the mitpoint integration time and simplifies the code in
general.
Gyro compensation can still be done in EKF2 if needed, but the
flow module normally already appends the correct gyro data to the flow
message.
2023-11-21 21:56:34 -05:00
Roman BapstandThomas Stastny dd2322d622 Added PerformanceModel for fixed wing (#22091)
* created a Performance Model for fixed wing vehicle
- added compensation for maximum climbrate, minimum sinkrate, minimum airspeed and trim airspeed based on weight ratio and air density
- added atmosphere lib to standard atmosphere calculations


---------

Signed-off-by: RomanBapst <bapstroman@gmail.com>
Co-authored-by: Thomas Stastny <thomas.stastny@auterion.com>
2023-11-21 17:13:50 +01:00
Silvan Fuhrer 70cd224236 EKF2 params: remove wrong horizontal keyword and gps-->GNSS
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2023-11-21 15:23:33 +01:00
bresch c7672fc68c ekf2-params: delta vel/ang -> accel/gyro 2023-11-20 20:10:16 -05:00
Matthias Grob 9bed8f48c7 Remove LNDMC_ALT_MAX
This should be replaced with the maximum geofence
altitude GF_MAX_VER_DIST. I'm not aware anyone is using
this functionality as is.
2023-11-20 14:52:35 +01:00
PX4 BuildBot fd4d635035 Update submodule mavlink to latest Sun Nov 19 12:39:21 UTC 2023
- mavlink in PX4/Firmware (e819620173822548d05b6f309c615b48eda9261c): https://github.com/mavlink/mavlink/commit/81524c2b34aa08768f13091b1d94c421e64f96c3
    - mavlink current upstream: https://github.com/mavlink/mavlink/commit/70181c42fc63306ba3512666e1a8b7b782416806
    - Changes: https://github.com/mavlink/mavlink/compare/81524c2b34aa08768f13091b1d94c421e64f96c3...70181c42fc63306ba3512666e1a8b7b782416806

    70181c42 2023-10-12 Hamish Willee - MAV_CMD_DO_SET_ROI_WPNEXT_OFFSET - set units to deg
f484eaf8 2023-10-11 Hamish Willee - Update test_and_deploy.yml - drop node 12 (#2041)
44197849 2023-10-11 tom - Cleanup of typos and inconsistencies in common.xml (#2044)
b295e70e 2023-09-28 Hamish Willee - Update ardupilotmega.xml - delete SPEED_TYPE (#2042)
e8d796a4 2023-09-27 Hamish Willee - SPEED_TYPE enum for MAV_CMD_DO_CHANGE_SPEED (#2039)
c313a2f3 2023-09-23 Asif Khan - common:  Add camera instance field to MAV_CMD_IMAGE_START/STOP_CAPTURE (#2024)
cad18c56 2023-09-20 Marcin - Add VELOCITY_LIMITS msg (#2015)
2023-11-19 11:51:35 -05:00
Braden Wagstaff 35e13a908e DDS Add battery_status publisher 2023-11-18 11:06:02 +00:00
alexklimaj 42d70808e9 uxrce add manual control input subscriber 2023-11-18 11:06:02 +00:00
PX4 BuildBot ae89c30a18 boards: update all NuttX defconfigs 2023-11-17 09:15:14 -05:00
Matthias Grob ead16d0e6c Commander: add parameter to disallow disarming in manual thrust modes 2023-11-17 09:53:56 +01:00
Matthias Grob 78987f6016 ManualControl: introduce stick gesture for killing 2023-11-17 09:53:56 +01:00
bresch 2110eae25d atune: initialize filter if not already initialized 2023-11-16 23:14:17 -05:00
Daniel Agar 62027b0965 ekf2: remove EKF2_HGT_MODE VerifyParams() transition helpers
- in theory these are helpful to ensure EKF2_HGT_MODE configuration is
   consistent with the relevant aid source (GPS, baro, etc), but it can
   be a little awkward with users having to fight manual parameter
   changes in the right order
2023-11-16 15:02:43 -05:00
Daniel Agar 3b2d766573 ekf2: purge remaining EKF2_AID_MASK references 2023-11-16 09:36:58 +01:00
Yannick Fuhrer d609e41413 flightmodes: flag advanced modes accordingly 2023-11-15 13:18:58 +01:00
Beat Küng d12a7dd11d uxrce_dds_client: run session until we do not get data anymore
Otherwise there can be significant delay for received data
2023-11-15 13:18:58 +01:00
Beat Küng fb7e973dfd commander: allow external modes to be assigned to RC
Stores a hash of the mode name so that the same mode is always assigned
to the same index independent from registration order.
2023-11-15 13:18:58 +01:00
Beat Küng 22acb08406 uorb: add message format compatibility check
This can be used by DDS/ROS 2 to check for matching message definitions.
2023-11-15 13:18:58 +01:00
Matthias Grob 0dcecf0666 FlightModeManager: avoid internal flight task running concurrently with external mode 2023-11-15 13:18:58 +01:00
Beat Küng bb900264e0 commander+mavlink: implement MAVLink standard modes 2023-11-15 13:18:58 +01:00
Beat Küng b46e1d744b commander: add config overrides 2023-11-15 13:18:58 +01:00