bresch
5d33971712
SIH: refactor MC ground contact
2024-11-29 14:21:29 +01:00
bresch
9b172d36a2
matrix: allow casting float<->double
2024-11-29 14:21:29 +01:00
Marco Hauswirth and bresch
5d7b734bc9
SIH: ellipsoidal earth model
...
SIH: use projection functions and constants from geo lib
SIH: remove unnecessary member variable
SIH: clarify names of rotation matrices and frames
SIH: do not store DCM corresponding to quaternion attitude
Using DCM is more efficient when more than 1 rotation needs to be done,
which is not the case here.
SIH: don't store local variable as member
SIH: use Wgs84 constants everywhere
SIH: do not store delta_quaternion
Converting an AxisAngle to a Quaternion uses the exponenial
SIH: organise ECEF member variables
SIH: add earth spin rate to gyro data
Co-authored-by: bresch <brescianimathieu@gmail.com >
2024-11-29 14:21:29 +01:00
Matthias Grob
ce3fcd503f
navigator: unify timeout waiting for payload to execute mission item command
...
Used for winch, gripper, gimbal to reach the desired state before continuing the mission.
Ideally we'd have feedback from all these components and not just a feed-forward delay.
2024-11-28 20:23:36 +01:00
Matthias Grob
17c24bafbc
mission_block: simplify timeout check
2024-11-28 20:23:36 +01:00
Matthias Grob
ec1cf04bc9
mission_block: fix style, shorten debug message strings
2024-11-28 20:23:36 +01:00
Stefano Colli
8b3c78a0a4
Navigator: add optional delay after gimbal mission items
2024-11-28 20:23:36 +01:00
Julian Oes
def6ab5a6b
drivers: add SPA06
2024-11-28 12:18:44 +13:00
Julian Oes
f7b62961cb
drivers: Copy SPL06 to SPA06
2024-11-28 12:18:44 +13:00
Daniel Agar
990b067b25
uxrce_dds_client: update cmake requirements to match Micro-XRCE-DDS-Client submodule
2024-11-27 14:09:13 -08:00
bresch
8a9bac29a2
SIH-FW: allow pitching up during takeoff
...
Otherwise difficult to get lift
2024-11-27 11:14:56 -05:00
bresch
7236ef2d17
SIH-FW: fix aileron and elevator signs
...
This broken when changing from mixer files to the control allocation module.
2024-11-27 11:14:56 -05:00
bresch
1dad25b763
SIH: do not assume being a tailsitter when creating airspeed measurement
2024-11-27 11:14:56 -05:00
Matthias Grob and chfriedrich98
a280d67be8
PID: Fix test to respect integral updates being applied in the next iteration
...
Co-authored-by: chfriedrich98 <125505139+chfriedrich98@users.noreply.github.com >
2024-11-26 16:13:48 +01:00
Matthias Grob and chfriedrich98
f9bcbc31ae
PID: protect from division by zero because of dt
...
Co-authored-by: chfriedrich98 <125505139+chfriedrich98@users.noreply.github.com >
2024-11-26 16:13:48 +01:00
Matthias Grob
b89c53d28c
Replace old pid library with new one
2024-11-26 16:13:48 +01:00
Matthias Grob
e047972cde
Add new C++ PID library
2024-11-26 16:13:48 +01:00
Daniel Agar
e194a52907
ekf2: derivation.py remove sideslip small angle approximation
2024-11-25 08:53:57 +01:00
bresch
14fe6c2167
ekf2: resetHeightTo -> resetAltitudeTo
...
The vertical position state is now an altitude, not just a local height
2024-11-22 15:13:47 +01:00
bresch
93c690f133
ekf2: do not inline getPosition
2024-11-22 15:13:47 +01:00
bresch
a224d38e52
lla: move implementation to cpp file
...
This reduces flash usage
2024-11-22 15:13:47 +01:00
bresch
aeb182a8ed
ekf2: rename resetAltitudeTo to initialiseAltitudeTo
...
This is to better show that the altitude is also used to set the origin.
2024-11-22 15:13:47 +01:00
bresch
30d98885b7
update change indicator
2024-11-22 15:13:47 +01:00
bresch
814a2706f5
ekf2: compensate for coriolis and transport rate accelerations
2024-11-22 15:13:47 +01:00
bresch
842212df6c
ekf2: update earth rate also without GNSS
2024-11-22 15:13:47 +01:00
bresch
6becccb217
update change indicator
2024-11-22 15:13:47 +01:00
bresch
a492457322
ekf2-derivation: build state struct based on type
2024-11-22 15:13:47 +01:00
bresch
13c5bd4412
ekf-flow: do not reset position when resetting to flow
...
Flow only provides velocity information
2024-11-22 15:13:47 +01:00
bresch
b19a6ee3b5
ekf2: store position state as lat/lon/alt
...
The position error state is still defined in a body-fixed NED frame but the
position state itself is latitude-longitude-altitude.
2024-11-22 15:13:47 +01:00
Silvan Fuhrer
2f65644aeb
mixer module: remove unused functions
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-11-21 11:57:50 -05:00
Julian Oes
746e26bf9e
listener: clear screen on multiple output
...
I suggest to clear the screen when using the listener with -n.
This way the updates don't just scroll by which isn't legible but
instead stay in place and update, similar to the top command.
2024-11-21 11:56:23 -05:00
Beat Küng
8ccd43dc1b
refactor commander: remove unused argument is_armed in Report class
2024-11-21 14:16:22 +01:00
Beat Küng
be300b767d
commander: ensure health report is always sent out before failsafe notificaation
...
As the failsafe message can reference the health report, the health report
needs to be sent out first. This is generally the case, except there is a
rate limiter set to 2 seconds. So if the report changes quickly, it is
sent out delayed (potentially after the failsafe report).
2024-11-21 14:16:22 +01:00
Matthias Grob
044d13635d
Commander: Change user facing messages to "Remote ID" instead of "OpenDroneID"
...
Apprently users reference the system like that and OpenDroneID
might already be too technical, less understandable to some.
2024-11-21 11:38:23 +01:00
Claudio Chies
db13b9cb50
CollisionPrevention: Added Case where velocity gets reduced to zero if we are closer to the obstacle than the minimal distance
2024-11-21 11:36:03 +01:00
Matthias Grob
bbc59dcde7
CollisionPrevention: prevent illegal array index with malicious obstacle_dsitance message
2024-11-21 11:36:03 +01:00
Matthias Grob
1410325c62
CollisionPrevention: follow parameter variable naming convention
2024-11-21 11:36:03 +01:00
Matthias Grob
30eec33e09
CollisionPrevention: slightly simplify _transformSetpoint()
2024-11-21 11:36:03 +01:00
Matthias Grob
399a8ad5b7
CollisionPrevention: fix early return and use unified bin count + array size 72
2024-11-21 11:36:03 +01:00
Claudio Chies
f41a08aea8
CollisionPrevention: changed to resolution of 5 degrees, and adapted tests to reflect the change
...
rewrite of obstacle_distance merging methods, and fix of various issues
2024-11-21 11:36:03 +01:00
Matthias Grob
2ef2911c36
Remove FlightTaskManualPositionSmoothVel
...
The default implementation for multicopter Position mode is FlightTaskManualAcceleration.
The last missing piece was support for CollisionPrevention in this implementation.
2024-11-21 11:36:03 +01:00
Matthias Grob
b74dd57e7c
CollisionPrevention: restore rate limited warning for no data, minor cleanup
2024-11-21 11:36:03 +01:00
Matthias Grob
4c8c5fbb37
CollisionPrevention: only save quaternion and yaw on attitude update
2024-11-21 11:36:03 +01:00
Matthias Grob
001d722abd
CollisionPrevention: move main functions to the top in the order they get called
2024-11-21 11:36:03 +01:00
Matthias Grob
1fa76ac71d
CollisionPrevention: reduce internal array size, zero initialize what's possible
2024-11-21 11:36:03 +01:00
Matthias Grob
c879ca531d
CollisionPrevention: Clarify bin size definitions, move wrap functions into class
2024-11-21 11:36:03 +01:00
Matthias Grob
84dbbb4351
CollisionPrevention: clarify mode switch command to hold/loiter
2024-11-21 11:36:03 +01:00
Matthias Grob
50ee5bd1b4
CollisionPrevention: Sanitize input of _getObstacleDistance()
...
It could cause array out of bound problems before.
2024-11-21 11:36:03 +01:00
Matthias Grob
eb06ace8e4
CollisionPrevention: fix matrix namespace
...
don't use it in header such that clients are free to redefine the names
but include it in cpp files and make use of that.
2024-11-21 11:36:03 +01:00
Matthias Grob
079f3ca67c
StickAccelerationXY: Simplify collision prevention call
2024-11-21 11:36:03 +01:00