Commit Graph

5088 Commits

Author SHA1 Message Date
Andrew Tridgell d9e8c34a89 GCS_MAVLink: allow for proxying of larger MAVLink messages on PX4
this makes it possible to deal with large MAVLink messages
2014-03-11 13:48:25 +11:00
Paul Riseborough 784034170d AP_NavEKF : increased useage of helper functions 2014-03-10 21:54:03 +11:00
Paul Riseborough 7b3130cfcc AP_NaVEKF : Enable operation without airspeed and compass 2014-03-10 21:53:09 +11:00
Paul Riseborough 3a5acb9cea AP_NavEKF : improved on-ground, in-air check and GPS yaw alignment 2014-03-10 14:07:34 +11:00
Paul Riseborough b47a11edf6 AP_NavEKF : improved static and on-ground mode selection logic 2014-03-10 04:39:59 +11:00
Paul Riseborough 15a44571c2 AP_NavEKF : enable operation without a compass for planes 2014-03-09 20:01:45 +11:00
Paul Riseborough 2019708056 AP_NavEKF : Make all compass use autodetect 2014-03-09 19:59:19 +11:00
Paul Riseborough e485b246e7 AP_NavEKF : update comments 2014-03-09 19:59:18 +11:00
Paul Riseborough c8bd415b00 AP_NavEKF : Add sideslip constraint to allow plane flight without magnetometer 2014-03-09 19:59:17 +11:00
Paul Riseborough 52fabc822f AP_NavEKF : Add low speed magnetometer calibration option 2014-03-09 19:59:16 +11:00
Paul Riseborough 88b0364fcd AP_TECS : Add protection for airspeed runaway due to pitch errors 2014-03-09 19:59:16 +11:00
priseborough 6ace31b6c1 AP_NavEKF : Fix bug that leaves height unconstrained in static mode 2014-03-09 19:27:21 +11:00
Mike McCauley c90d3ff59e Flymaple: RCOUtput disable_ch() now supports disabling outputs 2014-03-08 21:55:57 +11:00
Andrew Tridgell 794cc33e6a GPS: added set_secondary() function
for preventing notify updates for 2nd GPS
2014-03-08 21:47:49 +11:00
Paul Riseborough 94ff7522fc AP_NavEKF : Fix bug in initial East mag field state variance 2014-03-08 07:44:34 +11:00
Andrew Tridgell 63234d4c22 AP_Baro: fixed linux build of BMP085 driver 2014-03-07 09:33:43 +11:00
Randy Mackay 4cfe50b70c Notify: brighter RGB LED when on battery power 2014-03-05 21:38:29 +09:00
Randy Mackay 1c457d8448 Mount: add get_mode and set_mode_to_default methods 2014-03-05 16:01:11 +09:00
Andrew Tridgell dd502e98b4 RC_Channel: added support for separate wheel steering channels on planes 2014-03-05 12:57:50 +11:00
Andrew Tridgell a788405c8b RC_Channel: added percent_input() function
useful for plane flaps
2014-03-05 09:17:50 +11:00
Randy Mackay 25ee5d5dc8 AC_AttControl: smoothing_gain to angle_ef_roll_pitch_rate_ef_yaw_smooth
pair-programmed with lthall
2014-03-04 22:23:14 +09:00
lthall 15f88c2a2b AC_AttControl: Stabilize input shaping 2014-03-04 21:52:18 +09:00
Andrew Tridgell 5f85e7af6a HAL_PX4: switch to new serial port for 2nd GPS 2014-03-04 20:34:44 +11:00
Andrew Tridgell af2f72acb0 HAL_SITL: honor SIM_GPS2_ENABLE option 2014-03-03 07:07:29 +11:00
Andrew Tridgell 7a52938f68 SITL: added SIM_GPS2_ENABLE option 2014-03-03 07:07:09 +11:00
Mike McCauley be34e0358a RC_Channel: Removed duplicate defines from RC_Channel.h 2014-03-03 06:34:34 +11:00
Andrew Tridgell 449d09051e AP_NavEKF: cope with compass going offline while in flight 2014-03-02 14:32:10 +11:00
Andrew Tridgell 77f91e6250 AP_NavEKF: don't assume the number of gyros == number of accels 2014-03-02 13:53:19 +11:00
Paul Riseborough ebb3cc3348 AP_NavEKF : Use average of dual IMU gyro data when available 2014-03-02 13:28:44 +11:00
Paul Riseborough a39d00fc13 AP_NavEKF : Fix bug that prevents Zacc bias state variance being updated 2014-03-02 13:27:22 +11:00
Paul Riseborough 573b3210dd AP_NavEKF : Add div0 protection to the IMU1_weighting calc 2014-03-02 08:10:06 +11:00
Paul Riseborough bd152d332c AP_NavEKF : Add accel aliasing protection 2014-03-02 08:10:04 +11:00
Andrew Tridgell 853271dd37 Replay: moved replay tool into Tools/Replay 2014-03-01 14:30:55 +11:00
Andrew Tridgell 295cd9adba AP_NavEKF: give a sensible error for no such file on replay 2014-03-01 14:24:51 +11:00
Paul Riseborough 854f013146 AP_NavEKF : Fixes zero compass offsets on initialisation 2014-02-28 19:43:12 +11:00
Andrew Tridgell cc4c443b32 SITL: simulate dual accel/gyro 2014-02-28 17:30:38 +11:00
Jonathan Challinger e81d2e9584 AP_InertialSensor: Correct out-of-bounds array access that was causing SITL to crash 2014-02-28 17:25:54 +11:00
Andrew Tridgell 736201689b AP_NavEKF: only use the active accel from DCM if fly_forward is set 2014-02-27 17:40:13 +11:00
Andrew Tridgell aaaae9a222 AP_AHRS: added get_fly_forward() method
will be used to detect a copter
2014-02-27 17:39:49 +11:00
Paul Riseborough 62eff63267 AP_NavEKF : Increase the tuning range for magnetometer measurement noise 2014-02-27 17:20:38 +11:00
Andrew Tridgell 9a5ecc9541 AP_AHRS: use primary accel for accel_ef
Logs from Randy show that the copter INav code can't handle the
accelerometer sensor changing.
2014-02-27 16:28:37 +11:00
Andrew Tridgell 2c85a7ba56 AP_InertialSensor: expose get_primary_accel() for use in AHRS 2014-02-27 16:27:46 +11:00
Andrew Tridgell cf148fa76c AP_Compass: improved COMPASS_ORIENT and COMPASS_EXTERNAL for Pixhawk 2014-02-27 12:46:27 +11:00
Andrew Tridgell a9e683dada AP_NavEKF: use the accelerometer chosen by DCM for each step 2014-02-27 09:41:48 +11:00
Andrew Tridgell b53496d470 AP_AHRS: choose the best accelerometer at each drift correction step
this greatly reduces the impact of aliasing on accelerometers by
choosing the accelerometer that produces the smallest error term in
DCM. The difference can be quite dramatic on the Pixhawk.
2014-02-27 09:41:28 +11:00
Andrew Tridgell 0b45d2bc06 AP_AHRS: removed the AHRS_GPS_DELAY parameter
the best value has turned out to be 1, and tweaking it has not turned
out to be useful, so this simplifies the code in preparation for
adding the anti-aliasing handling with multiple accelerometers
2014-02-27 08:57:44 +11:00
Paul Riseborough 78a1cac560 AP_NavEKF : Improved heading and magnetic field state initialisation 2014-02-27 08:12:10 +11:00
Paul Riseborough d83b382e59 AP_NavEKF : Fix variance constraint bug
Constraining variances to a minimum value of 1e-9 was causing problems
with gyro bias and angular accuracy in noisy GPS environments.
Because the constraint is applied after every covariance prediction
and correction, a lower value of 0 is more appropriate.
2014-02-27 08:12:03 +11:00
Andrew Tridgell 8b59e564ba AP_NavEKF: improved replay timing 2014-02-27 08:11:04 +11:00
Andrew Tridgell 840f1b9a1e AP_InertialSensor: make HIL timing more accurate
needed for 400Hz replay
2014-02-27 08:10:42 +11:00
Andrew Tridgell 66f238c0da AP_NavEKF: support 400Hz replay from 50Hz logs 2014-02-26 19:34:01 +11:00
Andrew Tridgell 3fa2207a2d AP_HAL: allow for microsecond resolution in scheduler->stop_clock()
this makes 400Hz in the replay code possible
2014-02-26 19:33:39 +11:00
Andrew Tridgell 6fc5c12f1d AP_AHRS: remove unused variable 2014-02-26 10:28:12 +11:00
Andrew Tridgell 866e32f059 AP_Motors: removed unused variable 2014-02-26 09:40:39 +11:00
Andrew Tridgell e410733682 DataFlash: added GPS2 logging 2014-02-26 09:19:00 +11:00
Andrew Tridgell 0115b9fa07 HAL_SITL: support a 2nd GPS 2014-02-26 08:19:47 +11:00
Andrew Tridgell 836f473db2 HAL_FLYMAPLE: no uartE 2014-02-26 08:19:20 +11:00
Andrew Tridgell 58d5454d65 HAL_Empty: no uartE 2014-02-26 08:19:18 +11:00
Andrew Tridgell 6c74ca58c3 HAL_AVR: no uartE 2014-02-26 08:19:15 +11:00
Andrew Tridgell 4cb61f1f08 AP_HAL: support uartE 2014-02-26 08:18:20 +11:00
Andrew Tridgell bf2dd141e9 HAL_PX4: support uartE for 2nd GPS 2014-02-26 08:18:11 +11:00
Andrew Tridgell 63874dfffd AP_NavEKF: set fix type in GPS replay 2014-02-25 21:10:49 +11:00
Andrew Tridgell d7b2a09919 AP_GPS: added fix type to setHIL 2014-02-25 21:10:30 +11:00
Andrew Tridgell 09cce5d24e AP_NavEKF: fixed replay with current copter logs 2014-02-25 20:56:53 +11:00
Jonathan Challinger f321a5f241 AP_AHRS: Change airspeed_estimate to const in children of AP_AHRS
Allows roll/pitch controllers to use DCM's airspeed estimate. Thanks to Kevin Hester for assistance in finding this.
2014-02-25 18:49:16 +11:00
Paul Riseborough 72a91ccbca AP_NavEKF : Prevents aliasing triggering innovation consistency check failures 2014-02-25 15:55:44 +11:00
Andrew Tridgell 7a6f671659 AP_GPS: added have_vertical_velocity() function
for use by EKF
2014-02-24 18:24:10 +11:00
Andrew Tridgell a273951f70 HAL_Linux: added missing Util.cpp 2014-02-24 11:59:24 +11:00
Paul Riseborough 5db9a87d31 AP_NavEKF : fixed bug in velocity rate of change filter
This bug meant the velocity rate of change used to scale the GPS measurement variances was noisy and too small
2014-02-23 19:50:37 +11:00
Paul Riseborough 01c84c3f47 AP_NavEKF : fixed bug in height limit range 2014-02-23 19:50:36 +11:00
Paul Riseborough 36d619ec3a AP_NavEKF : Changed default IMU bias process noise to use smallest value 2014-02-23 19:50:36 +11:00
Paul Riseborough 89e0b48320 AP_NavEKF : Bug fix for height drift due to timer wrap-around 2014-02-23 19:50:35 +11:00
Paul Riseborough 939a32a7bb AP_NavEKF : Improved stability of Z accel bias 2014-02-23 19:50:34 +11:00
Paul Riseborough 9f3c19c03a AP_AHRS : change initialisation requirements for EKF and use dynamic method 2014-02-23 19:50:34 +11:00
Andrew Tridgell 6732d6c79b AP_InertialSensor: enable get_accel_count() and get_gyro_count() APIs for HIL 2014-02-23 19:10:07 +11:00
Andrew Tridgell 5d7346b5c2 HAL_SITL: fixed build with new HIL INS API 2014-02-23 19:09:41 +11:00
Andrew Tridgell ffbd655ba0 AP_NavEKF: support dual sensors in log replay, and fix flight altitude 2014-02-23 08:17:55 +11:00
Andrew Tridgell 707cc2b532 AP_NavEKF: allow log filename to be specified in replay 2014-02-23 08:17:01 +11:00
Andrew Tridgell 0e18079c47 AP_InertialSensor: allow HIL sensors to support multiple instances
this allows log replay to test both sets of sensors on a Pixhawk log
2014-02-23 08:16:33 +11:00
Andrew Tridgell 735c6449a1 AP_HAL: added support for commandline arguments
useful for log replay, specifying log file
2014-02-23 08:15:39 +11:00
Andrew Tridgell 4e56196655 AP_NavEKF: allow states to be accessed using names as well as a Vector22 2014-02-21 20:24:47 +11:00
Andrew Tridgell 009913ec60 AP_Math: make is_nan const for quaternion and add .zero() for vector2 2014-02-21 20:24:47 +11:00
Randy Mackay 33fe778cdd InertialSensor_PX4: resolve compiler warning 2014-02-21 13:53:34 +09:00
Randy Mackay 98bdbb7fed AC_WPNav: set loiter accel to 1/2 of speed
Bug fix from Leonard.
Also fixed some formatting.
2014-02-20 21:37:45 +09:00
Andrew Tridgell f222f2ef1e DataFlash: fixed logging on PX4v1
large writes break IO, a NuttX bug
2014-02-20 06:55:35 +11:00
Andrew Tridgell 20b0444c15 AP_NavEKF: remove sleep on init of EKF
this prevents HIL from locking up, and also prevents a possible 1s
delay in flight on EKF init
2014-02-19 22:04:12 +11:00
Andrew Tridgell b434c11215 AP_AHRS: removed empty file 2014-02-19 22:00:25 +11:00
Randy Mackay aa5ea23245 GCS_MAVLink: regenerate for COMPASSMOT_STATUS msg 2014-02-19 16:04:08 +11:00
Randy Mackay a7c25ec649 GCS_MALink: improved generate.sh failure msg 2014-02-19 16:04:05 +11:00
Andrew Tridgell 50cbc661ef GCS_MAVLink: added new COMPASSMOT_STATUS message 2014-02-19 16:03:57 +11:00
Andrew Tridgell c9d0c1face AP_NavEKF: use ahrs->get_armed() for static mode demanded 2014-02-19 10:52:57 +11:00
Andrew Tridgell 3b1f9a4bbf AP_AHRS: added get_armed() and set_armed() calls
will be used by NavEKF to determine static mode
2014-02-19 10:52:24 +11:00
Andrew Tridgell fe0cb23733 AP_InertialSensor: fixed HIL for 400Hz INS 2014-02-19 10:29:00 +11:00
Andrew Tridgell 536160a3fb AP_NavEKF: use AHRS get_correct_centrifugal() 2014-02-19 10:28:45 +11:00
Andrew Tridgell fad0b2b233 AP_AHRS: added get_correct_centrifugal()
used by NavEKF to force static mode
2014-02-19 10:28:14 +11:00
Andrew Tridgell 599c3a8abf AP_Math: added more operators to VectorN 2014-02-19 10:14:58 +11:00
Andrew Tridgell 869e41fd03 AP_NavEKF: fixed detection of airspeed sensor
the get_airspeed() AHRS call can change as the user enables/disables
the airspeed sensor, plus it only gets enabled after the NavEKF
constructor runs.
2014-02-19 09:22:45 +11:00
Paul Riseborough 1ade39977a AP_NavEKF : covariance prediction cleanup 2014-02-19 09:22:45 +11:00
Paul Riseborough 8daca145d0 AP_NavEKF : useAirspeed set automatically 2014-02-19 09:22:45 +11:00
Paul Riseborough 6fbada26d3 AP_NavEKF : Improvements to staticMode robustness 2014-02-19 09:22:45 +11:00
Mike McCauley bd768a0c0c AP_HAL_FLYMAPLE RCOutput.cpp: enable_ch no longer resets servo
FLYMAPLERCOutput::enable_ch incorrectly reset the servo to 0, which caused
servo twitching once per second when RC_Channel_aux::enable_aux_servos
enabled each channel.
2014-02-18 09:25:08 +11:00
Andrew Tridgell ad4db4de6c AP_Airspeed: added setHIL() method
useful for log playback
2014-02-18 09:25:08 +11:00
Andrew Tridgell e11ada7bf0 RC_Channel: fixed comment on enable_aux_servos()
thanks to Mike McCauley for spotting
2014-02-18 09:25:07 +11:00
Andrew Tridgell b2bd81f262 AP_Baro: added alternative setHIL interface
uses pressure and temperature for better log replay
2014-02-18 09:25:07 +11:00
Andrew Tridgell 5bf170c440 AP_NavEKF: fixed log replay code
also added BARO and ARSP messages
2014-02-18 09:25:07 +11:00
jschall 024855014f AC_PosControl: update _pos_error if it is being limited
This fixes a bug that causes 10hz throttle noise.
2014-02-17 22:33:06 +09:00
Andrew Tridgell 9cf70fe3f7 AP_HAL: another broken example build
this one an internal compiler error
2014-02-17 12:42:13 +11:00
Mike McCauley 4f9f87a8c6 AP_HAL_FLYMAPLE: Add notes to FlymaplePortingNotes.txt re GPS selection. 2014-02-17 05:56:37 +11:00
Mike McCauley 54a0b04c12 AP_HAL_FLYMAPLE: RCInput detects stale input readings better. Update test
code.
2014-02-17 05:56:37 +11:00
Mike McCauley f1533aa350 AP_HAL_FLYAPLE: update documentation in FlymaplePortingNotes.txt 2014-02-17 05:56:37 +11:00
Mike McCauley 81791bdc43 AP_HAL_FLYMAPLE: Added documentation about alternative orientations to FlymaplePortingNotes.txt 2014-02-17 05:56:37 +11:00
Mike McCauley 95bea052d2 AP_HAL_FLYMAPLE: update documentation in FlymaplePortingNotes.txt 2014-02-17 05:56:37 +11:00
Mike McCauley 2c94a40310 AP_InertialSensor: AP_InertialSensor_Flymaple Remove unnecessary
comment
2014-02-17 05:56:37 +11:00
Mike McCauley dd6abb49a9 AP_InertialSensor: AP_InertialSensor_Flymaple::healthy() was required after
all.
2014-02-17 05:56:37 +11:00
Mike McCauley 0a43cf8c5c AP_InertialSensor: AP_InertialSensor_Flymaple removed redundant definition of
healthy().
2014-02-17 05:56:37 +11:00
Mike McCauley f7279aa13f AP_InertialSensor: AP_InertialSensor_Flymaple implement get_gyro_health
and get_accel_health.
2014-02-17 05:56:37 +11:00
Mike McCauley 4dc33c8de8 AP_HAL_FLYMAPLE: updated FlymaplePortingNotes.txt 2014-02-17 05:56:37 +11:00
Randy Mackay d277b6cabd AC_AttControl: fix @Units parameter descriptions 2014-02-16 22:36:59 +09:00
Paul Riseborough 7a82746fcc AP_NavEKF : fixed bug in pos and vel reset when in static mode 2014-02-16 22:35:19 +11:00
Paul Riseborough 275ef86f86 AP_NavEKF : Position and Velocity reset bugfix 2014-02-16 21:05:37 +11:00
Paul Riseborough b22dc706b2 AP_NavEKF : staticMode bugfix and robustness improvements 2014-02-16 21:04:55 +11:00
Paul Riseborough 2926602718 AP_NavEKF : Cleaned up InitialiseFilterDynamic 2014-02-16 21:04:51 +11:00
Paul Riseborough 404fbafe26 AP_NavEKF : Changed timout behaviour to only reset PosVel states 2014-02-16 21:04:46 +11:00
Andrew Tridgell 856dfd0ee6 AC_AttitudeControl: fixed example build 2014-02-16 18:43:15 +11:00
Andrew Tridgell ee37bc3d27 AP_AHRS: ensure we have HAL_CPU_CLASS available 2014-02-16 17:57:09 +11:00
Randy Mackay 6af705d455 AC_Circle: bug fix for pos target when radius is zero 2014-02-16 13:46:38 +11:00
Randy Mackay 9130c88f15 AC_PosControl: throttle rate to simple P controller 2014-02-16 13:35:44 +11:00
Randy Mackay a021d0ca31 AHRS: fix compiler warning 2014-02-16 13:35:37 +11:00
Randy Mackay 34b62fc078 AC_AttControlHeli: add ACCEL_RP_MAX, ACCEL_Y_MAX 2014-02-16 13:35:26 +11:00
lthall b8d9bdb794 AC_AttControl: accel limit for roll, pitch yaw rates 2014-02-16 13:35:23 +11:00
Andrew Tridgell 189d635493 AP_Compass: constrain compass offsets to +/- 2000
this is prompted by a user log showing NaN compass offsets, resulting
in a crash. The patch ensures we never end up with NaN offsets, and
also constrains the offsets to a reasonable limit
2014-02-16 13:33:41 +11:00
Andrew Tridgell 6618bdae67 DataFlash: periodically use lseek to avoid NuttX seek bug 2014-02-16 13:21:35 +11:00
Andrew Tridgell 9bb8f73d56 Compass: split compass learning out to its own C++ file 2014-02-16 13:21:06 +11:00
Andrew Tridgell 24e1070eb2 AP_NavEKF: initialise quaternion from rotation matrix 2014-02-15 12:21:11 +11:00
Andrew Tridgell 2df314799e AP_Math: added tests for quaternion to/from rotation matrix 2014-02-15 12:20:51 +11:00
Andrew Tridgell 689f230d40 AP_Math: added quaternion.from_rotation_matrix() 2014-02-15 12:20:31 +11:00
Andrew Tridgell c6b24c521b AP_NavEKF: force healthy false when initialising
this prevents us feeding off our own values when booting

Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
2014-02-15 09:25:40 +11:00
Andrew Tridgell be33a9634e AP_AHRS: move using_EKF to .cpp to make it easier in gdb 2014-02-15 09:25:40 +11:00
Andrew Tridgell eedd88c2ec AP_AHRS: give zero lat/lng and baro alt if no position yet in DCM 2014-02-15 09:25:40 +11:00
Andrew Tridgell 4d3f714a5d AP_Notify: fixed example build 2014-02-15 06:40:39 +11:00
Andrew Tridgell 830afefcef AP_HAL: fixed example build 2014-02-15 06:40:29 +11:00
Andrew Tridgell 3af38a778d AP_Baro: fixed example build 2014-02-15 06:40:15 +11:00
Andrew Tridgell 8201f9c928 AP_NavEKF: don't build example 2014-02-15 06:40:06 +11:00
Andrew Tridgell c1dff6aa65 AP_Math: fixed example build 2014-02-15 06:39:43 +11:00
Andrew Tridgell f9d0747750 AP_InertialSensor: fixed example build 2014-02-15 06:39:35 +11:00
Randy Mackay 5bdc564191 AP_AHRS: fix example sketch 2014-02-15 06:09:08 +11:00
Randy Mackay c18b3f6094 AP_Airspeed: fix example sketch 2014-02-15 06:09:08 +11:00
Randy Mackay bb715424ee Baro: fix BMP085 example sketch 2014-02-15 06:09:08 +11:00
Randy Mackay d761ddd4af AP_Motors: fix example sketch 2014-02-15 06:09:08 +11:00
Randy Mackay ae59bef6d1 AC_INav: fix example sketch 2014-02-15 06:09:08 +11:00
Randy Mackay 42d9225fbe HAL_AVR: ArduCopterLibs to use AC_P library 2014-02-15 06:09:08 +11:00
Randy Mackay bf3effcd10 AC_WPNav: fix example sketch 2014-02-15 06:09:08 +11:00
Randy Mackay 889ee1bfef AC_Sprayer: fix example sketch 2014-02-15 06:09:08 +11:00
Randy Mackay 4484a4232a AC_Fence: fix example sketch 2014-02-15 06:09:08 +11:00
Randy Mackay c35bd84e21 AC_AttControl: fix example sketch 2014-02-15 06:09:08 +11:00
Randy Mackay 451910fc94 AC_AttControlHeli: replace APM_PI with AC_P 2014-02-15 06:09:08 +11:00
Randy Mackay ff9f4fe6e7 AC_AttControl: replace APM_PI with AC_P 2014-02-15 06:09:08 +11:00
Randy Mackay 94fb9c4274 AC_PosControl: replace APM_PI with AC_P 2014-02-15 06:09:08 +11:00
Randy Mackay fbf8106280 AC_Circle: remove AC_PID include
This is no longer required with introduction of PosControl lib
2014-02-15 06:09:08 +11:00
Randy Mackay e86a21a254 AC_WPNav: remove AC_PID include
This is no longer required with introduction of PosControl lib
2014-02-15 06:09:08 +11:00
Randy Mackay 8fae75ee87 AC_PID: add AC_P controller
Used for stabilize angle controllers, alt hold and loiter
2014-02-15 06:09:08 +11:00
Randy Mackay fbc5af2705 AC_PID: results returned as float 2014-02-15 06:09:08 +11:00
Randy Mackay a6ad51b38f AC_AttControl: rename most methods 2014-02-15 06:09:08 +11:00
lthall 65c2fc0cc6 AC_AttControl: ACRO fixes 2014-02-15 06:09:08 +11:00
Andrew Tridgell 0bbe038587 GCS_MAVLink: re-generate MAVLink headers 2014-02-15 05:48:24 +11:00
Andrew Tridgell 801ceacaf2 AP_AHRS: re-run update_trig() after EKF AHRS update 2014-02-15 05:48:24 +11:00
Andrew Tridgell a88212eb7a AP_InertialNav: fixed EKF version for new AHRS API 2014-02-15 05:48:24 +11:00
Andrew Tridgell a7a44a9a5c AP_NavEKF: fixed init order warning 2014-02-15 05:48:24 +11:00
Andrew Tridgell 9b8311580b AP_TECS: update for AHRS API change 2014-02-15 05:48:24 +11:00
Andrew Tridgell 25ef0d5a7b AP_AHRS: don't allow get_velocity_NED() and get_relative_position_NED() without EKF
this avoids some linking issues, plus the functions are inaccurate
without EKF
2014-02-15 05:48:24 +11:00
Andrew Tridgell 6964529124 AP_Baro: _calculate can be private 2014-02-15 05:48:24 +11:00
Andrew Tridgell c62ccce9d8 AP_AHRS: make estimate_wind() public
this avoids it linking into copter
2014-02-15 05:48:24 +11:00
Paul Riseborough b56c8211c9 AP_NavEKF: Reduced number of Mavlink tuneable parameters 2014-02-15 05:48:23 +11:00
Paul Riseborough c20fac1269 AP_NavEKF: Updated comments for private functions 2014-02-15 05:48:23 +11:00
Paul Riseborough deb64c4cbd AP_NavEKF: Pos Vel reset after long GPS timeout 2014-02-15 05:48:23 +11:00
Paul Riseborough 7ac0172db1 AP_NavEKF: removed repeated intialisation 2014-02-15 05:48:23 +11:00
Paul Riseborough 28fb5e364b AP_NavEKF: Fixed bug in pos/vel/hgt reset on timout 2014-02-15 05:48:23 +11:00
Paul Riseborough f74cce8b4e AP_NavEKF : Removed double to float conversions 2014-02-15 05:48:23 +11:00
Paul Riseborough 80f6dba694 AP_NavEKF: Improved control of fusion update intervals 2014-02-15 05:48:23 +11:00
Paul Riseborough 13b9daeff5 AP_NavEKF: Added constraints to Mavlink tuneable parameters 2014-02-15 05:48:23 +11:00
Paul Riseborough b123e1bb16 AP_NavEKF: Improved in-air reset behaviour 2014-02-15 05:48:22 +11:00
Paul Riseborough 1651980b9f AP_NavEKF: Improved behaviour following loss and regaining of GPS 2014-02-15 05:48:22 +11:00
Paul Riseborough 14eb63e7c9 AP_NavEKF: Made most tuning parameters Mavlink adustable 2014-02-15 05:48:22 +11:00
Andrew Tridgell f800f5592d AP_NavEKF: fixup parameter handling 2014-02-15 05:48:22 +11:00
Andrew Tridgell f09ae0c2d0 AP_AHRS: expose get_NavEKF as non-const
better than having two methods
2014-02-15 05:48:22 +11:00
Paul Riseborough f0f76920fa AP_NavEKF : Mavlink tunable parameter - first attempt 2014-02-15 05:48:22 +11:00
Paul Riseborough 128f71157d AP_NavEKF: Fixed bug in pre GPS fix updates 2014-02-15 05:48:22 +11:00
Paul Riseborough 08267cea87 AP_AHRS: Scheduling for yaw gain to reduce atitude errors in turning flight 2014-02-15 05:48:22 +11:00
Paul Riseborough 357743ee2d AP_NavEKF: Adjusted tuning parameters for plane use 2014-02-15 05:48:22 +11:00
Paul Riseborough b4171853b1 AP_NavEKF: allow initialisation before GPS lock to aid indoor testing 2014-02-15 05:48:21 +11:00
Paul Riseborough 7fb60812c2 AP_NavEKF: Added pitch and roll inertial sensor to body trim adjustment 2014-02-15 05:48:21 +11:00
Paul Riseborough 9d375da550 AP_NavEKF: changed sqrt to sqrtf 2014-02-15 05:48:21 +11:00
Paul Riseborough 1f0b4b02d0 AP_NavEKF: fixed merge error that inverted static mode 2014-02-15 05:48:21 +11:00
Paul Riseborough 17e24521e8 DataFlash : Added logging of NavEKF innovations and variances 2014-02-15 05:48:21 +11:00
Paul Riseborough 9bbddb2f66 AP_TECS : Use NavEKF height and height rate data if available 2014-02-15 05:48:21 +11:00
Paul Riseborough 0599817aa9 AP_AHRS : EKF initialisation changed to use bootstrap method 2014-02-15 05:48:21 +11:00
Paul Riseborough 401e3aee43 AP_NavEKF : Changes to test harness to support accel bias states 2014-02-15 05:48:21 +11:00
Paul Riseborough 5219869389 AP_NavEKF : Added Z accel bias state and bootstrap initialisation method 2014-02-15 05:48:21 +11:00
Randy Mackay 301a04b74a AP_NavEKF: update params for copter 2014-02-15 05:48:21 +11:00
Randy Mackay f068d0ff7e AP_AHRS_NavEKF: expose non-const EKF for tuning 2014-02-15 05:48:20 +11:00
Randy Mackay 7c73020015 AP_NavEKF: make params public so they can be tuned 2014-02-15 05:48:20 +11:00
Randy Mackay 9f130b40a0 AP_AHRS_NavEKF: override set_correct_centrifugal 2014-02-15 05:48:20 +11:00
Randy Mackay 8f6fd86f69 AP_AHRS: make set_correct_centrifugal virtual 2014-02-15 05:48:20 +11:00
Paul Riseborough a87df0ad56 AP_AHRS : set NavEKF staticMode using call to set_correct_centrigual 2014-02-15 05:48:20 +11:00
Paul Riseborough 5c3dea28dc AP_NavEKF : Enable staticMode to be set externally 2014-02-15 05:48:20 +11:00
Andrew Tridgell 3617c65af7 AP_InertialSensor: make HIL treat time like PX4 does 2014-02-15 05:48:20 +11:00
Andrew Tridgell 77c4968342 AP_NavEKF: enable plotting in plot2.dat too 2014-02-15 05:48:20 +11:00
Andrew Tridgell ab2a5a0672 AP_NavEKF: enable some debug 2014-02-15 05:48:20 +11:00
Paul Riseborough 0d4d287215 AP_NavEKF: comment and parameter tweaks for ground testing 2014-02-15 05:48:20 +11:00
Paul Riseborough b6b0c2a489 AP_NavEKF: fixed bug in flag reset for hgt fusion 2014-02-15 05:48:19 +11:00
Paul Riseborough 2f3b2a7111 AP_NavEKF: second attempt at higher rate baro fusion 2014-02-15 05:48:19 +11:00
Paul Riseborough cdbc5a3f35 AP_NavEKF: added position observations to static mode 2014-02-15 05:48:19 +11:00
Paul Riseborough da2c341914 Revert "AP_NavEKF: Modifed Vel Pos fusion to fuse height data whenever baro reading has changed"
This reverts commit d1e1be192a0e7ab0771edc9f2c03547da25697cf.
2014-02-15 05:48:19 +11:00
Paul Riseborough 32cc427ff4 AP_NavEKF: Modifed Vel Pos fusion to fuse height data whenever baro reading has changed 2014-02-15 05:48:19 +11:00
Paul Riseborough 2998aa1a6a AP_NavEKF: Amended tuning parameter list, and changed from variance to noise definitions 2014-02-15 05:48:19 +11:00
Paul Riseborough f9aae1b90b AP_NavEKF: fixed bug in variance constraint code 2014-02-15 05:48:19 +11:00
Paul Riseborough 735c9684da AP_NavEKF: removed error in constructor comments 2014-02-15 05:48:19 +11:00
Paul Riseborough 8f999fe787 AP_NavEKF: Misc tuning adjustments for Plane testing 2014-02-15 05:48:19 +11:00
Paul Riseborough c87a5aaf34 AP_NavEKF: added PositionReset public function to fix pre-arm loss of solution 2014-02-15 05:48:19 +11:00
Paul Riseborough fec4fd463c AP_NavEKF: reduced On Ground yaw gyro bias drift variance scaler 2014-02-15 05:48:19 +11:00
Paul Riseborough 619fffec3e AP_NavEKF: added static mode for pre-arm and bench testing 2014-02-15 05:48:18 +11:00
Paul Riseborough ab08a5c7d6 AP_AHRS : altered NavEKF set home to reset position instead of reset filter 2014-02-15 05:48:18 +11:00
Paul Riseborough d0831c708d AP_NavEKF : Added position and height reset public method 2014-02-15 05:48:18 +11:00
Andrew Tridgell 1b1f9e41ab AP_NavEKF: improved playback initialisation 2014-02-15 05:48:18 +11:00
Andrew Tridgell d9ef45234b AP_NavEKF: useful plotting function 2014-02-15 05:48:18 +11:00
Andrew Tridgell 0816642436 AP_NavEKF: handle intertial nav 2014-02-15 05:48:18 +11:00
Andrew Tridgell 77c6e3206a AP_NavEKF: some debug code 2014-02-15 05:48:18 +11:00
Andrew Tridgell 2cd781997f AP_Baro: changed HIL driver to use floats and better handle starup 2014-02-15 05:48:18 +11:00
Andrew Tridgell c995f994c5 AP_InertialNav: make some functions protected 2014-02-15 05:48:18 +11:00
Andrew Tridgell c33da7b3a2 AP_NavEKF: fixed log playback for copter 2014-02-15 05:48:18 +11:00
Andrew Tridgell 78ff078988 HAL_Linux: fixed stopped clock delay 2014-02-15 05:48:18 +11:00
Andrew Tridgell 9b53db66cb AP_NavEKF: tweak parameters based on randys copter log 2014-02-15 05:48:18 +11:00
Andrew Tridgell 9e3bf685c2 SITL: use sinf() and cosf()
for some strange reason the double precision functions can crash
2014-02-15 05:48:17 +11:00
Andrew Tridgell bb0eed5c14 SITL: prevent initialisation error 2014-02-15 05:48:17 +11:00
Andrew Tridgell 574946f0aa AP_AHRS: start EKF 5 seconds after getting GPS lock 2014-02-15 05:48:17 +11:00
Andrew Tridgell df271fbd59 AP_AHRS: fill in _dcm_matrix whenever EKF started
this ensures get_dcm_matrix() always returns valid data
2014-02-15 05:48:17 +11:00
Andrew Tridgell 4c42f53636 AP_NavEKF: use INS delta_time 2014-02-15 05:48:17 +11:00
Andrew Tridgell 5193ce90dc AP_NavEKF: copter specific dtIMUAvg 2014-02-15 05:48:17 +11:00
Andrew Tridgell ada7d4fb98 AP_AHRS: use the right DCM matrix when EKF not enabled 2014-02-15 05:48:17 +11:00
Andrew Tridgell a74fcc5a93 AP_AHRS: added set_ekf_use() 2014-02-15 05:48:17 +11:00
Andrew Tridgell 38ac8d404a SITL: fixed PX4 build 2014-02-15 05:48:17 +11:00
Andrew Tridgell fba0891617 SITL: fixed SIM df altitude 2014-02-15 05:48:17 +11:00
Paul Riseborough 8b1d056e07 AP_NavEKF: updated timeout for GPS retry and reduced onGround gyro bias noise multiplier 2014-02-15 05:48:16 +11:00
Paul Riseborough 7e026d41df AP_NavEKF: explicitly zeroed covariance matrix priro to setting initial values 2014-02-15 05:48:16 +11:00
Paul Riseborough 6e6e3d923e AP_NavEKF: improved covariance matrix numerical stability protection 2014-02-15 05:48:16 +11:00
Andrew Tridgell 45177df354 DataFlash: moved EKF logging to common code 2014-02-15 05:48:16 +11:00
Andrew Tridgell 9aea781248 GCS_MAVLink: moved send_ahrs2 to common code 2014-02-15 05:48:16 +11:00
Andrew Tridgell 66dbaa6657 AP_NavEKF: make health() API const 2014-02-15 05:48:16 +11:00
Andrew Tridgell 47f541e143 AP_InertialNav: implement InertialNav in terms of AHRS when available 2014-02-15 05:48:16 +11:00
Andrew Tridgell 5d43a1d704 AP_AHRS: added inertial nav interfaces to AHRS 2014-02-15 05:48:16 +11:00
Andrew Tridgell 658110dd8c AP_InertialNav: added AP_InertialNav_NavEKF wrapper class 2014-02-15 05:48:15 +11:00
Andrew Tridgell 99097d80a1 AP_InertialNav: use AHRS home location 2014-02-15 05:48:15 +11:00
Andrew Tridgell c493d980d8 AP_NavEKF: fixed check for airspeed sensor available 2014-02-15 05:48:15 +11:00
Andrew Tridgell 2dbfed19b8 AP_NavEKF: fixed airspeed estimate check 2014-02-15 05:48:15 +11:00
Paul Riseborough e69eea3086 AP_NavEKF: Bug fix in covariance error correction 2014-02-15 05:48:15 +11:00
Paul Riseborough 43dc9bc055 AP_NavEKF: Added improved covariance matrix error fix 2014-02-15 05:48:15 +11:00
Paul Riseborough 4a56ea84b5 AP_NavEKF: Removed accel bias states 2014-02-15 05:48:15 +11:00
Andrew Tridgell 093481786e AP_NavEKF: added SIM state to playback tool 2014-02-15 05:48:15 +11:00
Andrew Tridgell fcd9041e62 SITL: added dataflash logging 2014-02-15 05:48:14 +11:00
Andrew Tridgell d0a25b53f2 DataFlash: added logging of AHRS2 2014-02-15 05:48:09 +11:00
Andrew Tridgell 5578552574 AP_NavEKF: fixed example for new API 2014-02-15 05:29:48 +11:00
Andrew Tridgell 2acf1e7ce5 AP_NavEKF: allow filter to run as single or double precision
useful for checking if there are numerical precision issues
2014-02-15 05:29:48 +11:00
Paul Riseborough efd444b02e AP_NavEKF: covariance protection (not enabled) and tuning changes for stability 2014-02-15 05:29:48 +11:00
Paul Riseborough be9f276f45 AP_NavEKF: fixed compass offset sign error 2014-02-15 05:29:48 +11:00
Andrew Tridgell ee774f69d0 AP_NavEKF: fixed some time handling bugs
use get_delta_time() and removed broken time wrap code
2014-02-15 05:29:48 +11:00
Andrew Tridgell b1c5f23bbd AP_InertialSensor: make get_delta_time() const
allows use from AP_NavEKF
2014-02-15 05:29:47 +11:00
Andrew Tridgell 95c5aeaa43 AP_NavEKF: removed more unused variables 2014-02-15 05:29:47 +11:00
Andrew Tridgell a53fc0636a AP_NavEKF: zero more variables on filter re-init 2014-02-15 05:29:47 +11:00
Andrew Tridgell 392995ef84 AP_AHRS: make AHRS handle altitude
AHRS now holds the home position
2014-02-15 05:29:47 +11:00
Andrew Tridgell b9128a932f AP_L1_Control: no need to project position for lag
now handled by AHRS
2014-02-15 05:29:47 +11:00
Andrew Tridgell 91cbad52a1 AP_NavEKF: handle conversion of AHRS to handle altitude
fixed accuracy of position for cm level lat/lng
2014-02-15 05:29:47 +11:00
Andrew Tridgell 1e476e511a AP_AHRS: pass baro into AP_AHRS
first step in making AHRS handle altitude
2014-02-15 05:29:47 +11:00
Andrew Tridgell 6e5077b60b AP_AHRS: removed unused AP_AHRS_HIL 2014-02-15 05:29:46 +11:00
Andrew Tridgell 84c7b0d7fd AP_AHRS: check for NavEKF health 2014-02-15 05:29:46 +11:00
Andrew Tridgell 9ef71a9dec AP_NavEKF: added healthy() API 2014-02-15 05:29:46 +11:00
Andrew Tridgell cfc612b251 AP_InertialNav: use references to AHRS and baro 2014-02-15 05:29:45 +11:00
Andrew Tridgell 18aa08d5c3 GCS_MAVLink: added AHRS2 mavlink msg 2014-02-15 05:29:45 +11:00
Andrew Tridgell 154eb76f4f GCS_MAVLink: new MAVLink headers 2014-02-15 05:29:45 +11:00
Andrew Tridgell bfd48a95b7 AP_NavEKF: fixed example build 2014-02-15 05:29:45 +11:00
Andrew Tridgell b39a5062e9 AP_AHRS: use NavEKF for ground vector when available 2014-02-15 05:29:45 +11:00
Andrew Tridgell b6bc50051f AP_AHRS: allow reporting of secondary AHRS solution 2014-02-15 05:29:45 +11:00
Andrew Tridgell ea0f9392ef AP_NavEKF: don't report altitude yet, and removed debug code 2014-02-15 05:29:45 +11:00
Andrew Tridgell a1aebc0c15 GCS_MAVLink: update from upstream 2014-02-15 05:29:23 +11:00
Andrew Tridgell 0e10554dc0 GCS_MAVLink: rename EKF message to AHRS2 2014-02-15 05:28:10 +11:00
Andrew Tridgell 33673c954d AP_NavEKF: implemented getRotationBodyToNED() 2014-02-15 05:28:10 +11:00
Andrew Tridgell 8c5cde4efd AP_AHRS: allow NavEKF to be enabled at runtime with AHRS_EKF_USE=1 2014-02-15 05:28:10 +11:00
Andrew Tridgell 7ac78ff991 AP_AHRS: create AP_AHRS_NavEKF class
subclass of AP_AHRS_DCM, just a wrapper for now, will add EKF calls
next
2014-02-15 05:28:09 +11:00
Andrew Tridgell 2c86a490ed AP_NavEKF: make it possible for NavEKF to be a AHRS member
ready for AHRS integration
2014-02-15 05:28:09 +11:00
Paul Riseborough 6f31961fb5 AP_NavEKF: Added height rate adaptive wind speed process noise 2014-02-15 05:28:09 +11:00
Paul Riseborough de884dabab AP_NavEKF: brought some tuning parameters out to header 2014-02-15 05:28:09 +11:00
Paul Riseborough 3ee5ef852b AP_NavEKF : improved On Ground check 2014-02-15 05:28:09 +11:00
Paul Riseborough 8bc14d09b2 AP_NavEKF : remove onGround airspeed detect bug 2014-02-15 05:28:09 +11:00
Paul Riseborough a507fa7570 AP_NavEKF : remove debug code 2014-02-15 05:28:09 +11:00
Paul Riseborough 2f95685bfc Plane : EKF data logging fixes 2014-02-15 05:28:09 +11:00
Paul Riseborough 6b9733c013 AP_NavEKF : Additional flash logging 2014-02-15 05:28:09 +11:00
Paul Riseborough c28e89e4b7 AP_NavEKF: bug fixes for height fusion and covariance initialisation 2014-02-15 05:28:08 +11:00
Paul Riseborough aed6c79135 AP_NavEKF: Added gyro bias variance scale for on-ground 2014-02-15 05:28:08 +11:00
Paul Riseborough cb42e1e490 AP_NavEKF: Added public function to get NED position 2014-02-15 05:28:08 +11:00
Paul Riseborough 2c567cd721 AP_NavEKF: Added tuning parameter for onGround yaw gyro variance 2014-02-15 05:28:08 +11:00
Paul Riseborough 9515f6c745 AP_NavEKF: Cleaned up on-ground state and covariance update logic 2014-02-15 05:28:08 +11:00