Daniel Agar
c8e59c4e39
parameter_update use uORB::Subscription consistently
2019-09-29 10:49:03 -04:00
Mark Sauder
60e5e0821a
land_detector: Add and max_altitude and timestamp validity checks to MulticopterLandDetector class. ( #12681 )
...
* Rename local camelCase vars to snake_case and control_mode -> vehicle_control_mode to match typdef with established class convention.
2019-09-02 00:30:46 -04:00
Beat Küng
f8e0441e7b
src/platforms/common: move to platforms/common
...
Script to update include paths:
for i in $(grep -rl 'include <px4_work_queue' src platforms); do sed -i 's/#include <px4_work_queue/#include <px4_platform_common\/px4_work_queue/' $i; done
2019-08-30 07:59:44 +02:00
Mark Sauder
c22ed9397e
land_detector: Implement ModuleParams inheritance in the FixedwingLandDetector class.
2019-06-28 10:26:59 -04:00
Mark Sauder
1466d11acc
land_detector: cleanup actuator_armed and battery_status naming
...
* Rename _arming -> _actuator_armed
* Rename _battery -> _battery_status in the MulticopterLandDetector class.
2019-06-27 12:02:14 -04:00
mcsauder
df662245a2
Standardize class member variable naming convention in the LandDetector class.
2019-06-26 14:06:56 -04:00
mcsauder
d7cfebe0a3
Add check_params(true) call to the LandDetector start() method. Break out _update_total_flight_time() method in the LandDetector class.
2019-06-26 09:23:02 +02:00
mcsauder
f783982edb
Revert changes to the check_params(const bool force) declaration/definition to match current PX4:master.
2019-06-26 09:23:02 +02:00
mcsauder
0ec7efcfc4
Delete _measure_interval and redundant parentheses in LandDetector.h.
2019-06-26 09:23:02 +02:00
mcsauder
faa3c3dc6f
Refactor the LandDetector class to
...
- Reduce duplicate code in LandDetector _check_params() method.
- Standardize naming cases.
- Implement DEFINE_PARAMETERS() macro.
2019-06-26 09:23:02 +02:00
Daniel Agar
106ee280c5
land_detector initiate cycle immediately
...
- fixes #12190
2019-06-15 21:30:09 -04:00
Daniel Agar
777b615cf9
land_detector move to PX4 WQ hp_default
2019-06-04 18:10:21 -04:00
Daniel Agar
53aa4130a8
land_detector move orb subscriptions to uORB::Subscription
2019-06-04 18:10:21 -04:00
Julian Oes
7b9562e3b1
hysteresis: move out of systemlib, move to gtest
...
This moves the hysteresis test out of the systemlib and makes it its own
small library. Since it still depends on hrt_absolute_time this does not
link yet. My attempt to get all link dependencies together failed.
2019-05-27 09:57:50 +02:00
Elia Tarasov
04a486f13d
enable ground effect zone when land detector is updated
2019-03-21 10:07:12 +01:00
Roman
ecc8a696d0
added ground effect reporting to land detector
...
Signed-off-by: Roman <bapstroman@gmail.com >
2019-03-21 10:07:12 +01:00
Beat Küng
465d399e8f
land_detector: move _parameterSub to the right place
2018-09-28 16:04:40 +02:00
Daniel Agar
ea3acb7121
cmake remove circular linking and reorganize
...
- px4_add_module now requires MAIN
- px4_add_library doesn't automatically link
2018-04-29 21:48:54 -04:00
Daniel Agar
ec57832a8f
FW land detector increase trigger time and cleanup ( #8486 )
2017-12-21 12:17:32 -05:00
Beat Küng
a0afc370d0
land detector: move arming state into base class & set param when disarming
...
Before that, different modules (ekf2, commander & land detector) changed
params upon different events:
- ekf2 & commander set params after disarm
- land detector set params on land detected
If the 2 events were several 100ms appart, it led to 2 param saves, and
the latter param set could have been blocked by an ongoing save. And if
the land detector was blocked, it could lead to mag timeouts.
This patch makes all modules use the same event, thus only a single param
save will happen.
If we want to have guarantees to never block, we should introduce a
param_try_set() API method.
2017-12-07 11:55:51 +00:00
Daniel Agar
6e402bd6f4
land detector uniform initialization cleanup
2017-08-31 22:49:44 -04:00
Daniel Agar
cb8cc9a795
land detector add cycle perf
2017-08-31 22:49:44 -04:00
Daniel Agar
90819b2852
land detector move hysteresis constants into FW and MC
2017-08-31 22:49:44 -04:00
Dennis Mannhart
f50052f290
landdetector mc: widen acceptance threshold after landing instead of arming
2017-08-15 10:30:29 +02:00
Dennis Mannhart
03d86054a4
landdetector: decrease land detection to 0.3
2017-08-01 19:31:34 +02:00
Dennis Mannhart
50ef2d0e52
landdetector: adjust time to 3 stage detection
2017-08-01 19:31:34 +02:00
Dennis Mannhart
97b5cc77b8
landdetector: reduce maybe_landed trigger time to 1s
2017-08-01 19:31:34 +02:00
Dennis Mannhart
f8e9f380d0
landdetector: add additional landdetection state
2017-08-01 19:31:34 +02:00
Beat Küng
8a83fb7dc2
land_detector: use ModuleBase & add module documentation
2017-07-14 11:57:11 +02:00
Lorenz Meier
5f135acf33
Land detector: Add mode for rovers
2017-04-02 21:52:18 +02:00
Dennis Mannhart
3d4e7819a0
landdetector: delete function update_alt_max
2017-02-27 22:54:19 +01:00
Dennis Mannhart
1774e01c00
rtl: keep rtl altitude below max altitude
...
land_detector: delete unused class enum
2017-02-27 22:54:19 +01:00
Dennis Mannhart
a1982e0392
land_detector: battery level status to adjust maximum altitude possible
2017-02-27 22:54:19 +01:00
Beat Küng
3dc6e7b574
LandDetector: use a 64bit counter for total system flight time
...
The previous 32bit counter wrapped in ~1.19h, this switches to 2 32bit
counters, wrapping in 584942 years.
2017-02-02 09:22:25 +01:00
Lorenz Meier
75132a50e6
Land detector: Measure total system flight time
...
This implementation is a baseline implementation and makes no attempt to be tamper-proof. A monotonic counter like the W25R64FV or a similar HW facility would be required to achieve this.
2017-01-29 15:48:34 +01:00
Dennis Mannhart
2f164602b4
LandDetector:
...
- constructor initalization fix
- set trigger time for ground contact hysteresis
- updated ground_contact_state logic
MulticopterLandDetector:
- added hysteresis for ground_contact
VtolLandDetector:
- get_ground_contact_state function that return the one form MultcopterLandDetector
FixedWingLandDetector:
- get_ground_contact_state with a return false: requires implementation
2017-01-28 16:23:04 +01:00
Lorenz Meier
9e9e0e23ad
Land detector: Detect ground contact separately
...
This allows to detect ground contact before concluding the system is landed. This allows to disable some parts of the horizontal control system and only control the vertical position to avoid tipping over.
;
2017-01-28 16:23:04 +01:00
Matthias Grob
b79e4ab506
land detector: reverted scientific notation unwanted doubles
2016-12-26 15:36:43 +01:00
Matthias Grob
808dedf441
land detector: small refactor while studying
2016-12-26 15:36:43 +01:00
Julian Oes
50cac88e5b
land_detector: big refactor, share update function
...
This is a big refactor and general cleanup of the land detector. The
main functional change is to share the hysteresis lib across all land
detectors.
2016-07-30 12:26:56 +02:00
Emmanuel Roussel
e6b3cf3ac9
Fix code style
...
(Ran AStyle)
2016-04-18 22:27:11 +02:00
Emmanuel Roussel
98d51179ad
Added time to trigger free-fall as a parameter
2016-04-18 22:27:11 +02:00
Emmanuel Roussel
78a99797fb
Implemented first try on multicopter free-fall detection
2016-04-18 22:27:11 +02:00
Emmanuel Roussel
35110a52f9
Added room in land_detector code for free-fall detection
2016-04-18 22:27:11 +02:00
Andreas Antener
3c4141ff50
increased time for less strict takeoff detection after arming
2015-12-28 15:21:50 +01:00
Lorenz Meier
fc29fed260
Land detector: Fix code style
2015-10-19 13:47:57 +02:00
Lorenz Meier
0318c1b330
Land detector: Run in work queue
2015-10-10 22:23:34 +02:00
Lorenz Meier
ea7ae7d019
Merged beta into master
2015-08-01 16:58:02 +02:00
Lorenz Meier
9f322a395e
Make land detector more robust during initial spool-up
2015-07-19 18:30:52 +02:00
Lorenz Meier
c9fefe236b
Merged release into master
2015-06-13 11:06:01 +02:00