Andrew Tridgell
b99ae63cbb
HAL_Linux: more generic fix for scheduler issues in example sketches
...
this ensures drivers can run
2014-05-16 22:40:38 +10:00
Andrew Tridgell
30f5e2c37f
AP_GPS: work around scheduling issue in example code
2014-05-16 22:35:32 +10:00
priseborough
e40e50e2e1
AP_NavEKF: Prevent start-up transients re-tripping divergence test
2014-05-16 22:05:22 +10:00
Andrew Tridgell
73976e2ca4
AP_GPS: fixed example build
2014-05-16 22:05:04 +10:00
Andrew Tridgell
8533aecf18
AP_InertialSensor: fixed example build
2014-05-16 21:24:25 +10:00
priseborough
a19015ed61
AP_NavEKF: Scale divergence check with covariance
...
This provides consistent behaviour for a range of gyro bias process
noise settings and automatically adjusts sensitivity as filter learns bias
2014-05-16 21:24:25 +10:00
priseborough
0337d44b2e
AP_NavEKF: Fix bug causing immediate clearing of diverged status on reset
2014-05-16 21:24:04 +10:00
priseborough
d150904dc6
AP_NavEKF: Increase gyro bias process noise
...
This is required to stop the bias estimate from becoming too static
towards the end of longer flights.
2014-05-16 21:24:04 +10:00
Andrew Tridgell
49e7ee9ba7
GCS_MAVLink: added setup_uart() method
...
this provides a common way of dealing with UART setup for a GCS
instance. It includes code to cope with SiK radios stuck in bootloader
mode.
2014-05-16 11:44:33 +10:00
Andrew Tridgell
b3c1e515dc
AP_AHRS: when no accel info available in buffer use current value
...
this prevents an initialisation error, and is reasonable in flight too
Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
2014-05-15 22:19:54 +10:00
Andrew Tridgell
315290029a
AP_AHRS: fixed check of accel sensor health
...
we need to check health of each accelerometer separately
2014-05-15 22:18:56 +10:00
Andrew Tridgell
5edf4ba596
AP_NavEKF: fixed up handling of bitfields in faultStatus
...
Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
2014-05-15 21:42:39 +10:00
Andrew Tridgell
79edc4b467
GCS_MAVLink: re-generate with addition of MAV_SYS_STATUS_AHRS
2014-05-15 21:14:21 +10:00
Andrew Tridgell
ccebeba5a5
GCS_MAVLink: added MAV_SYS_STATUS_AHRS
...
will be used to indicate AHRS health
2014-05-15 21:14:21 +10:00
priseborough
f01cc78d37
DataFlash: Add EKF fault status logging
2014-05-15 21:14:21 +10:00
priseborough
ce8e1daa16
AP_NavEKF: Improved divergence detection and reset
...
Divergence is now detected by looking for very large changes in the gyro
bias. This will cause the filter to be reset and declared unhealthy for
10 seconds.
Don't reset filterDiverged status immediately during reset
Set filterDiverged true if covariance blows up
Add fault status reporting
2014-05-15 21:14:21 +10:00
Andrew Tridgell
5d2d6e0063
GCS_MAVLink: regenerated MAVLink headers
2014-05-15 21:14:21 +10:00
Andrew Tridgell
983ac9cbf4
GCS_MAVLink: merge in latest upstream XML changes
2014-05-15 21:14:21 +10:00
Andrew Tridgell
1a05c27bbb
AP_AHRS: added healthy() function
...
this will be used to report when the AHRS subsystem becomes unhealthy
2014-05-15 21:14:21 +10:00
Andrew Tridgell
086142580a
AP_InertialSensor: added VibTest sketch
...
logs all accel data at high rate to SD card
2014-05-15 21:14:21 +10:00
Jonathan Challinger
e883b889b6
SITL: Add compassmot interference
2014-05-15 21:14:20 +10:00
Randy Mackay
4ebde25a26
AP_Relay: add -1:Disabled to list of param values
2014-05-15 17:13:37 +09:00
Randy Mackay
5d20594fa4
AC_WPNav: bug fix for loiter and waypoint update rate
...
Thanks to EmileC for spotting this
2014-05-12 20:13:46 +09:00
Andrew Tridgell
85ebe81ed3
AP_NavEKF: fixed logic for divergence test
...
Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
2014-05-11 18:00:38 +10:00
priseborough
40dc0e56fe
AP_NavEKF: Add protection for badly conditioned innovation variances
2014-05-11 18:00:38 +10:00
priseborough
925c5751bd
AP_NavEKF: Add ability to inhibit in-flight mag cal and clean up moding
...
This will enable in-flight magnetometer calibration to be inhibited unconditionally,
This is required for long balloon carriage flights where ground speed can be high
enough to put it into in-air state, but with very poor observability of magnetic field
states causing bad state estimates and heading offsets to develop over time.
The covariance matrix no longer has rows and columns artificially zeroed when in static
mode. Instead booleans indicating whether wind or magentic field state estimation is
active are used to:
a) Set the process noise on these states to zero to stop their variances from increasing
unchecked when not being updated, and
b) Turn off updates for these states when measurement fusion is being performed.
This reduces the likelihood of a badly conditioned covariance matrix forming
during static mode operation.
A filter divergence check has also been added that will declare the filter unhealthy if
position, velocity and magnetic field observations are all failing their innovation
consistency checks. This unhealthy status will persist for 10 seconds after the
condition clears.
AP_NavEKF: Remove unnecessary zeroing of wind covariances
2014-05-11 18:00:38 +10:00
priseborough
3026ccee13
AP_NavEKF: Use baro data during launch transients whilst in static mode
...
Baro data can be used as it will still be valid during the launch and
is not a synthesised measurement.
2014-05-11 18:00:38 +10:00
Randy Mackay
05f5164dfa
Mission: rename AUTORESET to RESTART
2014-05-09 11:31:37 +09:00
Hug0
6b0d5f9770
AP_InertialNav: fix pos error degradation rate
...
degrate position_error to 10% over 2 seconds (assumes 5hz update rate)
must be *0.7943 instead of 0.7934
2014-05-08 23:09:39 +09:00
Randy Mackay
badc127c34
AC_WPNav: fix example sketch
2014-05-08 16:25:13 +09:00
Randy Mackay
9b6a4e0fc7
AC_Sprayer: fix example sketch
2014-05-08 16:25:11 +09:00
lthall
9ab9eaec25
AC_WPNav: Loiter jerk default to 10m/s/s/s
...
Pair programmed with Randy
2014-05-08 16:16:05 +09:00
Randy Mackay
1cb297580f
Copter: reduce Circle init twitch by using stopping point
2014-05-08 16:15:57 +09:00
Randy Mackay
091ff91a70
WPNav: add wp_and_spline_init to set speeds an init pos controller
2014-05-08 16:15:50 +09:00
Randy Mackay
c13db680b7
AC_PosControl: remove reset_I_xy
...
lean_angles_to_accel is now used to load the position rate I terms based
on vehicle's initial roll and pitch angle
2014-05-08 16:15:48 +09:00
Randy Mackay
cd8b1f278c
AC_PosControl: remove unused _cos_yaw variable
...
Also removed _sin_yaw, _cos_pitch, _step saving a total of 17bytes of
RAM
Also made get_speed_up, get_speed_down, lean_angles_to_accel functions
const
2014-05-08 16:15:46 +09:00
Randy Mackay
48ec0caf75
AC_WPNav: run navigation at 10hz in SITL
2014-05-08 16:15:44 +09:00
Randy Mackay
0819e05896
AC_PosControl: lean_angles_to_accel added for smooth initialisation
...
init_xy_controller also added to capture initialisation all in one place
2014-05-08 16:15:41 +09:00
lthall
b38c484874
AC_WPNav: add LOIT_JERK parameter
...
Limit accel output from loiter controller.
Call new pos_control.init_xy_controller when loiter starts
Remove sudden stop when pilot requested acceleration is zero
Pair programmed with Randy
2014-05-08 16:15:38 +09:00
Randy Mackay
71fae1e6f2
AC_AttControl: lean_angle_max accessor fn const
2014-05-08 16:15:36 +09:00
Randy Mackay
fd9f8f571f
AC_WPNav: replace inav, ahrs pointers with references
2014-05-08 16:15:26 +09:00
lthall
21c93e48ab
AC_PosControl: include vel error when get_stopping_point_z
...
Pair programmed with Randy
2014-05-08 16:15:24 +09:00
Randy Mackay
a1f1dd8059
AC_PosControl: add is_active_z method
...
Consolidated z-axis timeout checks to save 4bytes of RAM
Added POS_CONTROL_ACTIVE_TIMEOUT_MS to make timeout consistent
2014-05-08 16:15:22 +09:00
Andrew Tridgell
74227cd7f0
AP_HAL: prevent some FastDelegate warnings
2014-05-08 11:11:03 +10:00
Andrew Tridgell
a295760e56
AP_Rally: fixed indentation
...
previous indentation confused emacs24
2014-05-08 11:01:52 +10:00
Andrew Tridgell
4efcae46ab
SITL: cope with more rubbish startup values from JSBSim
2014-05-04 17:30:10 +10:00
Andrew Tridgell
320834a5e7
HAL_PX4: read from FRAM in 128 byte chunks (2nd try)
...
this time without the amazingly silly bug
2014-05-02 22:12:45 +10:00
Andrew Tridgell
db6b96caa0
Revert "HAL_PX4: read from FRAM in 128 byte chunks"
...
This reverts commit a92366c455
.
This commit may be associated with FRAM corruption on Pixhawk. Revert
until we understand why
2014-05-02 21:52:26 +10:00
Andrew Tridgell
a92366c455
HAL_PX4: read from FRAM in 128 byte chunks
...
this fixes FRAM read on Roberts Pixhawk. We don't know why yet.
2014-05-02 12:24:54 +10:00
Randy Mackay
937e9ea687
AC_PosControl: add set_target_to_stopping_point_xy method
...
Fixed bug in get_stopping_point_xy in which it would update Z-axis
target if vehicle was moving less than 10cm/s horizontally
2014-04-30 21:46:20 +09:00
Randy Mackay
7dd366d84e
AC_WPNav: init_loiter sets speed, accel before calcing stopping distance
...
The stopping distance depends upon the speed and acceleration so these
must be updated first
2014-04-30 21:46:18 +09:00
Randy Mackay
0103ae2eb0
AC_WPNav: add WPNAV_ACCEL_Z
...
Allows configurable z-axis acceleration during missions
2014-04-30 21:46:12 +09:00
Randy Mackay
9f63de9b59
AC_PosControl: set_speed_z accepts positive descent speeds
2014-04-30 21:46:09 +09:00
Randy Mackay
510c9920a6
AC_WPNav: rename get_horizontal_velocity to get_speed_xy
...
This new method name is consistent with the equivalent in the
AC_PosControl class
2014-04-30 21:46:06 +09:00
Andrew Tridgell
eb1fb63e57
APM_Control: added logging of parameter changes in AUTOTUNE
...
this will make it easier to analyse logs
2014-04-30 22:22:13 +10:00
Andrew Tridgell
871d0c0e44
APM_Control: moved the log structure to ArduPlane core
...
this allows it to work with old style .log files
2014-04-30 21:22:28 +10:00
Andrew Tridgell
4f250579db
DataFlash: added LOG_ATRP_MSG define
2014-04-30 21:22:28 +10:00
priseborough
114bd56e2a
AP_NavEKF: Fix display names in parameter list
2014-04-30 06:35:41 +10:00
Randy Mackay
5cc26569fc
AP_Motors: fix example sketch
2014-04-29 20:46:34 +09:00
priseborough
5fefce5899
AP_NavEKF: Synthetic sideslip fusion numerical error protections
2014-04-29 17:26:45 +10:00
Jonathan Challinger
0bb7b8e938
AP_GPS: Fix bug that causes permanent lag if we miss a message
2014-04-29 15:35:46 +10:00
Randy Mackay
2be99d7a92
TriCopter: output_test for individual motors
...
Based on original work by Nils Hogberg
2014-04-29 11:41:16 +09:00
Randy Mackay
07766e55f9
SingleCopter: output_test for individual motors
...
Based on original work by Nils Hogberg
2014-04-29 11:41:14 +09:00
Randy Mackay
3610cfe24c
TradHeli: output_test for individual motors
...
Based on original work by Nils Hogberg
2014-04-29 11:41:13 +09:00
Randy Mackay
8f74f5b3b0
CoaxCopter: output_test for individual motors
...
Based on original work by Nils Hogberg
2014-04-29 11:41:12 +09:00
Randy Mackay
d63d82ec17
MotorMatrix: output_test for individual motors
...
Based on original work by Nils Hogberg
2014-04-29 11:41:10 +09:00
Vizual54
11d02ea5d2
AP_Motors: output_test for individual motors
...
Modified and integrated by Randy Mackay
2014-04-29 11:36:58 +09:00
Randy Mackay
6517638670
GCS_MAVLink: generate after adding DO_MOTOR_TEST
2014-04-29 11:23:07 +09:00
Randy Mackay
28846c6c99
GCS_MAVLink: add DO_MOTOR_TEST message
2014-04-29 11:23:04 +09:00
Andrew Tridgell
818e500509
AP_Mission: improve the AP_Mission docs
...
DisplayName isn't a description
2014-04-29 11:46:06 +10:00
Andrew Chapman
782fbe1ec5
AP_Mission: added reset() function
2014-04-29 11:46:06 +10:00
Andrew Chapman
a80e72ff82
AP_Mission: added MIS_AUTORESTART parameter
...
- added MIS_AUTORESTART parameter, defaults to 0
- added start_or_resume() function to either start or resume a mission
based on that parameter value
2014-04-29 11:46:06 +10:00
Andrew Tridgell
cf9b67d8fc
GCS_MAVLink: prevent uninitialised bytes being written to a serial port
2014-04-27 15:34:30 +10:00
Randy Mackay
e855cfec02
AC_Fence: add 10sec manual recovery
...
This resolves issue #461 by giving the pilot a minimum of 10 seconds to
attempt to manually recover before the autopilot will attempt to retake
control to bring the copter home or land.
2014-04-27 11:11:07 +09:00
Randy Mackay
db51d37071
AC_WPNav: add clear_pilot_desired_acceleration
...
This allows quickly clearing out the pilot desired acceleration for
loiter contoller.
2014-04-25 14:45:14 +09:00
Randy Mackay
06bef6e3b8
Parachute: clear release time when enabled
...
This resolves an issue in which the parachute could be suddenly released
when the user enabled the parachute. The sequence that could have
caused this bad behaviour were (1) the parachute is triggered (2) the
user disables the parachute in the 0.5sec between the trigger and the
actual release, (3) the user re-enables the parachute and the old
release time from (1) is used.
2014-04-24 19:22:11 +09:00
Randy Mackay
ad99918fee
AC_WPNav: recalc leash lengths if set_horizontal_velocity is called
...
Resolves bug in which do-set-speed allowed reducing the speed during the
mission but not increasing it.
Slow down distance is also recalculated.
Unnecessary call to calc_wp_leash_length removed from
set_spline_origin_and_destination.
2014-04-24 13:16:08 +09:00
Randy Mackay
46fba47c8e
AC_WPNav: slow target point's speed near destination
2014-04-24 13:16:00 +09:00
priseborough
ecc8e45eda
AP_NavEKF: Fix bug in position reset logic
2014-04-23 18:16:02 +10:00
Andrew Tridgell
b0fd94f18e
AP_GPS: initialise a variable in uBlox driver
2014-04-23 18:15:53 +10:00
Randy Mackay
7c02a02bd8
AC_WPNav: reset_I flag moved to position controller
2014-04-23 15:00:14 +09:00
Randy Mackay
098f8169b0
AC_PosControl: add keep_xy_I_terms method
...
Stops horizontal PID's I terms from being reset when the controller is
next updated
2014-04-23 15:00:12 +09:00
Randy Mackay
4d5b73b968
AC_WPNav: add reset_I to set_loiter_target
2014-04-23 15:00:07 +09:00
Ju1ien
6c71569775
AC_PosControl: update_xy_controller allows not resetting I term
2014-04-23 14:59:49 +09:00
Ju1ien
5d0476e522
AC_WPNav: add reset_I to init_loiter_target
2014-04-23 14:59:47 +09:00
Randy Mackay
09a35cf90f
AC_PosControl: bugfix for freezing I-term build-up
2014-04-23 11:33:53 +09:00
Randy Mackay
559a258ede
AC_WPNav: bug fix to limit target point from moving beyond leash
...
Also pull Z-axis acceleration from position controller instead of using
#define
2014-04-22 23:05:11 +09:00
Randy Mackay
9c6995d8bb
AC_PosControl: add get_accel_z method
2014-04-22 23:05:08 +09:00
Randy Mackay
e565ee6d33
AC_PosControl: stop I term build-up when motors at max
2014-04-22 23:05:06 +09:00
Andrew Tridgell
e10542dcae
AP_Mission: added get_current_nav_index() function
...
this will return 0 when there is no current command, which is what is
expected in MAVLink when there is no mission
(it prevents the text to speech announcing "65 thousand 6 hundred and
thirty five", which is quite annoying!)
2014-04-22 11:40:18 +10:00
Michael Day
96173bfb8a
AP_Rally: Added one getter method and made a utility method public.
2014-04-22 11:40:18 +10:00
Randy Mackay
0e065e4894
AP_InertialNav: get_velocity_xy const
2014-04-21 21:59:38 +09:00
Randy Mackay
6f6c9e2585
AC_PosControl: bug fix to vertical speed limit
...
Vehicle was not reaching target climb or descent rate because of
incorrectly defaulted acceleration
2014-04-21 21:36:02 +09:00
Andrew Tridgell
25667a11a0
AP_NavEKF: use AHRS vehicle class for sideslip calculation
...
Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
2014-04-21 18:13:12 +10:00
Andrew Tridgell
5acd17b843
AP_NavEKF: cleanup some build warnings
...
Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
2014-04-21 18:13:12 +10:00
Andrew Tridgell
c8c6e05a4a
AP_AHRS: added vehicle class to AHRS
...
used by EKF to control use of get_fly_forward()
2014-04-21 18:13:12 +10:00
priseborough
bd28cdbdcf
AP_NavEKF: Improved magnetometer consistency checks
...
A magnetometer axis that fails the innovation consistency check will cause
all axes not to be used. If this condition continues for 10 seconds, a
magnetometer timeout condition will be declared. When the timeout has
occurred, if it is not a fly forward vehicle, then individual channels
will be used again, but with a reduced weighting.
2014-04-21 16:31:31 +10:00
Randy Mackay
648787a6c8
AC_WPNav: rename some definitions
2014-04-21 15:06:29 +09:00
Randy Mackay
2167dd7d3e
AC_WPNav: update target speed immediately
2014-04-21 14:51:26 +09:00
Andrew Tridgell
05bffb5915
HAL_SITL: enable use of SIM_FLOAT_EXCEPT parameter
2014-04-21 15:37:08 +10:00