Paul Riseborough
ff2782b790
AP_NavEKF2: Parameter changes to reduce noise on gyro bias estimates
2015-11-18 20:17:03 +09:00
Paul Riseborough
2193103586
AP_NavEKF: Reduce time to switch after an IMU fault
...
This revised threshold value is still double the maximum that has been observed in flight logs so far with healthy sensors
The previous value was too slow to switch for sudden IMU gyro faults
We can afford an ocasional false trigger becasue the front end will only select another instance if it is healthy and has lower errors
2015-11-18 20:17:00 +09:00
Paul Riseborough
20798316e1
AP_NavEKF2: fix bug in performance timer
2015-11-18 20:16:58 +09:00
Randy Mackay
b2b8dcb8ff
Copter: guided calls velocity controller at 400hz
...
velocity controller internally updates xy-axis at 50hz, z-axis at 400hz
2015-11-18 13:31:22 +09:00
Randy Mackay
c9340dbeb6
AC_PosControl: run velocity controller z-axis at 400hz
2015-11-18 13:31:21 +09:00
Randy Mackay
dbc8ce1d69
AC_PosControl: default z-axis controller to 400hz
...
No functional change as vehicle code always sets it explicitely
2015-11-18 13:31:20 +09:00
Randy Mackay
323a527734
AC_PosControl: velocity controller uses feed-forward althold
2015-11-18 13:31:19 +09:00
Randy Mackay
4b41710261
AC_AttControl: minor comment fix
2015-11-18 13:31:18 +09:00
Caio Marcelo de Oliveira Filho
a348424551
AP_HAL: remove unused function
...
This was used by APM1/2 that were removed.
2015-11-18 11:50:56 +09:00
Andrew Tridgell
5561efde2b
AP_NavEKF: we can assume get_sample_rate() returns a non-zero number
...
this fixes a build error with the previous patch
2015-11-18 11:48:50 +11:00
Paul Riseborough
e32e6cfa67
AP_NavEKF: Protect against bad delta time from the INS library
...
Prevent arithmetic divide by zero exceptions and handle invalid delta time in a consistent way by setting invalid times to the average.
2015-11-18 11:43:40 +11:00
Paul Riseborough
2fb5a4489b
AP_NavEKF2: Prevent airspeed faults from causing excessive loss of accuracy
2015-11-18 11:39:54 +11:00
Paul Riseborough
fc6978e4d9
AP_NavEKF2: Fix error in parameter documentations
2015-11-18 11:39:54 +11:00
Paul Riseborough
f9cadaf15c
AP_NavEKF2: Increase resolution of innovation consistency gate parameters
...
Also adds protection against setting the gate to a number that would casue numerical errors.
2015-11-18 11:39:53 +11:00
Andrew Tridgell
08ef00b431
AP_NavEKF2: fixed build with IMU_BUFFER_LENGTH change
2015-11-18 11:33:51 +11:00
Paul Riseborough
af3507ef3c
AP_NavEKF2: Stop bad INS velocity spoiling height reset
...
We should reset the velocity as well as the height if a reasonable reset value is available.
2015-11-18 11:18:50 +11:00
Paul Riseborough
97799ef0b3
AP_NavEKF2: Ensure that GPS origin is set before using data for height
2015-11-18 11:18:50 +11:00
Paul Riseborough
b8427e5d95
AP_NavEKF2: Only allow rangefinder height option during optical flow nav
2015-11-18 11:18:50 +11:00
Paul Riseborough
c9eea98142
AP_NavEKF2: Improve terrain height estimation
...
The ad-hoc scaling of error growth has been replaced with a consistent method that uses the main nav filters published vertical velocity uncertainty and the terrain gradient assumption.
2015-11-18 11:18:46 +11:00
Paul Riseborough
d820a538d5
AP_NavEKF2: Make magnetometer data available status global
...
This assists with debugging and makes it consistent with other measurements that are buffered
2015-11-18 11:18:46 +11:00
Paul Riseborough
04228e0b3b
AP_NavEKF2: Rework selection of height measurements for fusion
...
GPS height has been added as a measurement option along with range finder and baro
Selection of the height measurement source has been moved into a separate function
Each height source is assigned its own measurement noise
If GPS or baro alt is not able to be used, it reverts to baro
When baro is not being used, an offset is continually calculated which enables a switch to baro without a height step.
2015-11-18 11:18:42 +11:00
Paul Riseborough
80bc64ee7a
AP_NavEKF2: Update parameter documentation with GPS height source option
2015-11-18 11:18:18 +11:00
Paul Riseborough
4c72a14e22
AP_NavEKF2: Add function to LPF and spike filter baro data
2015-11-18 11:18:17 +11:00
Paul Riseborough
34311bedfa
AP_NavEKF2: Add data buffers for range finder data
2015-11-18 11:18:17 +11:00
Andrew Tridgell
104a0fcc6a
PX4Firmware: submodule update
2015-11-18 10:34:13 +11:00
Andrew Tridgell
99da195e37
AP_NavEKF2: make IMU buffer length depend on main loop rate
...
this fixes a problem with Replay and baro data
2015-11-18 10:20:39 +11:00
Randy Mackay
1b29a1af46
Copter: consolidate setting of using-iterlock state
2015-11-17 09:02:31 +09:00
Andrew Tridgell
4192c3d0ad
autotest: calibrate 2nd accel in SITL for rover
2015-11-17 08:56:48 +11:00
Andrew Tridgell
f36b2e415a
AP_InertialSensor: fixed flymaple build
2015-11-17 08:52:49 +11:00
Andrew Tridgell
32ed0d58f3
AP_InertialSensor: fixed filter setup on 2nd accel/gyro
2015-11-16 17:57:36 +11:00
Andrew Tridgell
0c92331762
Copter: fixed build for SITL changes
2015-11-16 17:57:36 +11:00
Andrew Tridgell
9108179322
Plane: fixed build for SITL changes
2015-11-16 17:57:36 +11:00
Andrew Tridgell
e1cb9beeef
SITL: expose update rate to HAL_SITL
...
and fixed dataflash reference loop
2015-11-16 17:57:36 +11:00
Andrew Tridgell
95ca0b39a8
HAL_SITL: moved virtual INS sensor to AP_InertialSensor_SITL
2015-11-16 17:57:35 +11:00
Andrew Tridgell
4a768d47f3
AP_InertialSensor: created a SITL specific backend
2015-11-16 17:57:35 +11:00
Andrew Tridgell
2675edcb96
HAL_SITL: removed unused variables
2015-11-16 17:57:35 +11:00
Andrew Tridgell
ccd915eb67
AP_InertialSensor: moved raw gyro and accel logging to common code
...
this brings raw logging to non-PX4 ports
2015-11-16 17:57:35 +11:00
Andrew Tridgell
75ea8f3dc0
AP_InertialSensor: removed "have sample" logic from drivers
...
the frontend has all the information it needs, so we can simplify the
drivers some more
2015-11-16 17:57:35 +11:00
Andrew Tridgell
0e4bab74ba
AP_InertialSensor: simplify sensor backends
...
use common code for filtering and update, allowing each sensor driver
to be simpler and more consistent
2015-11-16 17:57:35 +11:00
Randy Mackay
36c0beb918
GPS_UBlox: reorder init to resolve compiler warning
...
Also removed duplicate init of noReceivedHdop
2015-11-16 15:09:17 +09:00
Jonathan Challinger
5086168b03
Copter: add RTL_SPEED parameter
2015-11-16 10:20:32 +09:00
Paul Riseborough
9b82b2200c
AP_NavEKF2: Fix plane in-flight yaw reset
...
The copter method was being used for plane and the plane method was not being run due to the change in flight status not being detected.
The plane reset method did not trigger if the EKF had already dragged the velocity states along with the GPS or could align to an incorrect heading.
The method has been reworked so that it resets to the GPS course, but only if there are inconsistent angles and large innovations.
To stop a failed magnetometer causing a loss of yaw reference later in flight, if all available sensors have been tried in flight and timed out, then no further magnetoemter data will be used
2015-11-16 09:05:42 +11:00
Paul Riseborough
e8706db382
AP_NavEKF2: Update IMU tuning parameter limits
2015-11-16 09:05:42 +11:00
Paul Riseborough
0562529729
AP_NavEKF2: Tuning changes to make attitude less sensitive to GPS and compass errors
2015-11-16 09:05:42 +11:00
Andrew Tridgell
3549c717db
Filter: removed reference to old 'Desktop' build
2015-11-16 08:06:05 +11:00
Andrew Tridgell
8f4ce7f20b
build: removed all nocore.inoflag files
...
these were APM2 specific
2015-11-16 08:05:17 +11:00
Andrew Tridgell
1ffe899a18
PID: fixed example build
2015-11-16 08:04:44 +11:00
Andrew Tridgell
9ea99cba29
HAL_Linux: fixed example build
2015-11-16 08:04:35 +11:00
Andrew Tridgell
c81d4fa07b
AP_Declination: fixed example build
2015-11-16 07:59:18 +11:00
Andrew Tridgell
a9372ad5d7
Filter: fixed example builds
2015-11-16 07:58:55 +11:00