Paul Riseborough
379506b718
ArduCopter: Don't request EKF yaw reset unless innovations are large
...
This prevents unwanted resets if GPS fails.
2020-10-30 14:45:40 +09:00
Randy Mackay
248d80eb37
Copter: integrate ahrs::get_variances change
...
offset is no longer returned
2020-10-21 08:58:45 +09:00
Randy Mackay
77ff169757
Copter: minor comment fix
2020-04-24 18:18:05 +09:00
Randy Mackay
6c48a9c305
Copter: use AHRS::get_primary_core_index instead of EKF2 equivalent
2020-04-24 18:18:05 +09:00
Randy Mackay
ddaa5dee86
Copter: use static assert to simplify use of EKF_CHECK_ITERATIONS_MAX
2020-04-24 09:43:23 +10:00
Paul Riseborough
8ce97af40e
ArduCopter: Preserve original check criteria
2020-04-24 09:43:23 +10:00
Paul Riseborough
36031c01a9
ArduCopter: rework ekf check to use separate yaw reset request
...
ArduCopter: Request lane or yaw reset switch sooner
ArduCopter: rework ekf check to use separate yaw reset request
ArduCopter: Rework EKF failsafe
During flight operations it is the deviation in position of the vehicle that matters during most scenarios.
t patch ensures that an EKF fail-safe will be triggered when the position inconsistency exceeds check limits in addition to either a bad mag or velocity innovation.
This will stop velocity noise triggering an early fail-safe when electromagnetic interference is present.
2020-04-24 09:43:23 +10:00
Andrew Tridgell
1222aa2c43
Copter: make EKF mag variance check use max
...
this makes it consistent with logged value
2020-04-06 17:30:29 +10:00
Randy Mackay
b2a298fa5f
Copter: update vibration failsafe comments
2020-03-02 15:12:57 +09:00
Peter Barker
e3dd0d33e7
Copter: allow NavEKFs to be compiled out
2020-01-21 11:53:18 +11:00
Peter Barker
45dc4cf25c
Copter: EKF objects have moved into AP_AHRS_NavEKF
2020-01-21 11:53:18 +11:00
Peter Barker
d652bd4455
Copter: correct compilation when optical flow is disabled
2019-11-06 16:36:35 +11:00
Peter Barker
e6c6189fe5
Copter: cope with change in namespace of LogEvent enum
...
Also move Acro Trainer types into an enum class as the global defines
interfere with the Event names.
Also eliminate the Log_Write_Event wrappers.
2019-11-05 08:19:26 +08:00
Michael du Breuil
b42b1c08c4
Copter: Support new AP_Vehicle::set_mode
2019-10-25 08:48:22 +08:00
Peter Barker
198c93e479
Copter: correct use of nanf
2019-10-18 13:52:07 +09:00
Randy Mackay
7b0da89708
Copter: add vibration check
2019-10-18 11:15:25 +09:00
chobits
5a0fe4e322
Copter: do not speed up EKF failsafe if optflow works
2019-10-04 11:15:38 +09:00
Peter Barker
b4537bebd8
Copter: move control_mode_t into being Mode::Number enum class
...
Fixes this compiler error:
In file included from ../../ArduCopter/sensors.cpp:1:
In file included from ../../ArduCopter/Copter.h:195:
../../ArduCopter/mode.h:1291:9: fatal error: declaration shadows a variable in the global namespace [-Wshadow]
AUTO, // after A and B defined, pilot toggle the switch from one side to the other, vehicle flies autonomously
^
../../ArduCopter/defines.h:38:5: note: previous declaration is here
AUTO = 3, // fully automatic waypoint control using mission commands
^
1 error generated.
2019-09-13 13:12:08 +09:00
Andrew Tridgell
7c44ad04b6
Copter: check for EKF lane switch to avoid EKF failsafe
...
this fixes an issue with mismatch between the EKF lane switch
threshold and the copter EKF failsafe threshold
2019-06-12 09:52:20 +10:00
Tom Pittenger
7824b64ad6
Copter: rename dataflash to logger
2019-03-28 16:40:57 +11:00
Peter Barker
c7e21d95ef
Copter: move Log_Write_Error into library
2019-03-27 12:36:40 +11:00
Patrick José Pereira
33764d6c3b
Copter: Fix typo
...
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2019-03-26 15:39:23 +11:00
Randy Mackay
467e8481fb
Copter: minor formatting fix to ekf failsafe check
2019-03-15 15:44:01 +09:00
chobits
6bee4216c0
Copter: speed up EKF failsafe by checking if velocity innovations > 2x FS_EKF_THRESH
2019-03-15 15:36:13 +09:00
Peter Barker
70d159cb38
Copter: raise EKF failure even if USB is connected
...
This will let EKF go bad if your PixHawk is connected to your laptop.
This doesn't seem to be a problem for the other vehicles.
This also allows the EKF to go bad in-flight if you happen to have
connected (against AP's recommendations) your companion computer to your
flight controller via USB. Since people do this, it is better to have
the checks than not.
2018-06-26 10:07:55 +10:00
Randy Mackay
6f138ddcfa
Copter: ekf failsafe first enforces landing with no GPS
...
thanks to khancyr for spotting this
2018-05-10 08:59:37 +09:00
Leonard Hall
656892cd88
Copter: ekf failsafe disabled for acro and stabilize
...
Also restructure to combine ekf_over_threshold and ekf_check_position_problem
2018-05-10 08:59:37 +09:00
Leonard Hall
a727305a59
Copter: integrate attitude control EKF inertial-frame-reset
2018-03-16 13:50:57 +09:00
murata
c13d6580ae
Copter: delete \n from the log using gcs().send_text
2018-02-02 09:38:39 +09:00
Randy Mackay
2d23e1f7c7
Copter: rename flightmode_ objects to mode_
2017-12-12 10:39:26 +09:00
Peter Barker
ef1489e87a
Copter: eliminate mode_requires_gps
2017-12-06 08:24:24 +09:00
Peter Barker
3b1ca99b95
Copter: FlightMode - convert LAND flight mode
2017-12-06 08:24:24 +09:00
Peter Barker
45d056fcf0
Copter: ekf position checks are done before we call failsafe_ekf_event
2017-09-19 12:44:43 +01:00
Peter Barker
d5caff3f1b
Copter: do not enter ekf-failsafe based on position if pos not needed
2017-09-19 12:44:43 +01:00
Peter Barker
ff82f23cf6
Copter: factor out a ekf_check_position_problem method
2017-09-19 12:44:43 +01:00
Peter Barker
84a873a520
Copter: remove redundant check; we will never failsafe_ekf_event if disarmed
...
See line 37
2017-09-19 12:44:43 +01:00
Peter Barker
f60389d4aa
Copter: use send_text method on the GCS singleton
2017-07-09 17:17:29 -04:00
Randy Mackay
2e56e10d9c
Copter: ekf check adds position variance check
...
two of three of compass, velocity and position variances being high will trigger the ekf failsafe
2017-07-08 08:39:43 +09:00
Andrew Tridgell
0f6d0c5ba9
Copter: combined tri, single, coax and multicopter into a single build
...
this allows copter to be just 2 builds, one for heli, and one for
everything else
2017-01-12 17:39:37 +11:00
Mathieu OTHACEHE
152edf7189
Global: remove mode line from headers
...
Using a global .dir-locals.el file is a better alternative than
reincluding the same emacs header in every file of the project.
2016-10-24 09:42:01 -02:00
Randy Mackay
26c3295042
Copter: ignore first ekf core switch
...
The ekf core is initialised to -1 but after initialisation changes to zero. Ignore this first change.
2016-10-13 15:20:16 +09:00
murata
f3a035694a
Copter: fix ekf check to always call mode_requires_gps
2016-10-12 10:16:55 +09:00
Randy Mackay
263f685683
Copter: ekf failsafe can trigger in LAND
...
Thanks to John Ingersoll for the report and detailed fix
Resolves issue #4827
2016-10-10 17:36:36 +09:00
Randy Mackay
d74ae535d1
Copter: log EKF lane switch
2016-10-10 16:40:08 +09:00
Randy Mackay
35864c6226
Copter: move check_ekf_reset to ekf_check.cpp
...
No functional change
2016-10-10 16:40:08 +09:00
mirkix
e3934fac80
ArduCopter: Delete (wrong) filename out of header
2016-07-25 17:13:41 -03:00
Jonathan Challinger
1356deab8b
Copter: add control_mode_reason
2016-04-14 12:24:04 +09:00
Caio Marcelo de Oliveira Filho
c7acc46d09
Copter: use millis/micros/panic functions
2015-11-20 12:26:31 +09:00
Lucas De Marchi
84da1f5039
Rename gcs_send_text_P to gcs_send_text
2015-10-30 14:35:07 +09:00
Lucas De Marchi
2c38e31c93
Remove use of PSTR
...
The PSTR is already define as a NOP for all supported platforms. It's
only needed for AVR so here we remove all the uses throughout the
codebase.
This was automated with a simple python script so it also converts
places which spans to multiple lines, removing the matching parentheses.
AVR-specific places were not changed.
2015-10-30 14:35:04 +09:00