Commit Graph

18600 Commits

Author SHA1 Message Date
Paul Riseborough 0c61e09b70 AP_NavEKF2: Critical big fix - states not initialised
The failure to initialise the magnetometer bias states to zero can result in a large jump in yaw gyro bias and heading when a heading reset is performed.
2015-10-15 09:52:55 +11:00
Paul Riseborough e3013b493b AP_NavEKF2: Critical bug fix - perf counter not initialised 2015-10-15 09:48:13 +11:00
Randy Mackay 9b80ab18ae Copter: position_ok when optical flow ok
Previously the GPS based absolute position was required
This allows using optical flow in all flight modes
2015-10-14 12:01:41 +09:00
Randy Mackay b068f51c45 SITL: update copter_optflow params
Allow sonar to become healthy even if reported alt is zero
switch off EKF's use of GPS
2015-10-14 12:01:38 +09:00
Peter Barker 82d36520ad LogAnalyzer: fix for 64-bit ints
Also, sqrt must come from math
Also, d indicates a double (a Python float)
2015-10-14 08:50:38 +09:00
Grant Morphett 4f01aaf5e3 AP_Arming: fixing up some ARMING_CHECK param doco 2015-10-13 19:53:55 +09:00
Peter Barker f49aedb639 LogAnalyzer: turn times from strings to ints before doing maths 2015-10-13 19:39:02 +09:00
Paul Riseborough 3479a0e209 AP_NavEKF: Prevent blocking of synthetic position fusion
Fixes a potential error where changes to timing and arrival rate of magnetometer and baro data could block the fusion of synthetic position and velocity measurements, allowing unrestrained tilt errors during operation without GPS or optical flow.
Fusion of synthetic position or velocity measurements is now timed to coincide with fusion of barometer observations.
If a new barometer observation has not arrived after 200 msec then the synthetic position or velocity is fused anyway so that fusion of synthetic position or velocity observations cannot occur any slower than 5 Hz
2015-10-13 14:05:36 +09:00
Paul Riseborough a895b16fa6 AP_NavEKF: Prevent GPS glitch activating EKF failsafe 2015-10-12 16:29:21 +09:00
Grant Morphett fd0a442c92 autotest: added a timeout check
There was 1 while loop in the arducopter.py autotest that didn't have
a timeout check and of course we tripped over it.
2015-10-12 14:20:52 +09:00
Grant Morphett 461eff25d5 Rover: Fixed a build issue on Windows with the new RPM library
The AP_RPM library needed to be added to make.inc for the sitl build
to work correctly on Windows.  Thanks to Zach for solving the issue
in this discussion
http://diydrones.com/group/ardurover-user-group/forum/topics/rover-sitl-build-failed?commentId=705844%3AComment%3A2109049&xg_source=msg_com_gr_forum
2015-10-11 16:00:58 +09:00
vooon f3cbbef418 Copter: fix guided attitude type_mask check 2015-10-10 22:04:51 +09:00
Randy Mackay a142688fea Copter: guided attitude timeout to 1sec
Also add set-attitude-target capabilities flag
Thanks to Fredia and Sebastian for noticing these issues!
2015-10-10 22:04:48 +09:00
Paul Riseborough a82c8b241f DataFlash: Update NKF4 data logging
Add roll/pitch error metric
Reduce normalised magnetometer vector with a vector length
2015-10-10 21:22:57 +09:00
Paul Riseborough 20a3f9782e AP_NavEKF2: Add full set of selectable pre-flight GPS checks 2015-10-10 21:22:53 +09:00
Paul Riseborough f451a81ef9 AP_NavEKF: Add missing GPs check report 2015-10-10 21:22:49 +09:00
Paul Riseborough a3a1dabb94 AP_NavEKF: Update GPS check description and default setting
Previous check default only checked the number of satellites and horizontal position accuracy.
Updated default value also checks HDoP and speed accuracy.
2015-10-10 21:21:25 +09:00
Paul Riseborough db4dfce7b1 AP_NavEKF2: Add fix status to GPS check report message 2015-10-10 14:49:07 +09:00
Paul Riseborough ef5049862a AP_NavEKF: Add fix status to GPS check report message 2015-10-10 14:49:05 +09:00
Paul Riseborough ba6387f206 DataFlash: Add logging of EKF GPS check status 2015-10-10 14:49:03 +09:00
Paul Riseborough 5177746c00 AP_NavEKF: Add reporting of GPS check status 2015-10-10 14:49:01 +09:00
Paul Riseborough 22920aafad AP_NavEKF2: Improve GPS status reporting 2015-10-10 14:48:59 +09:00
Paul Riseborough d0080b66cd AP_NavEKF: Define a structure for reporting of GPS checks 2015-10-10 14:48:56 +09:00
Paul Riseborough 1cb2220107 AP_NavEKF2: Critical Bugfix 2015-10-10 14:48:54 +09:00
Paul Riseborough f467a89fa3 AP_NavEKF2: Update comments for filter status output function 2015-10-10 14:48:52 +09:00
Paul Riseborough b142cc7fd2 AP_NavEKF2: Rename files and re-distribute content 2015-10-10 14:48:50 +09:00
Siddharth Bharat Purohit 1ce3276d74 AP_NavEKF2: split EKF control and output get functions from state specific libs 2015-10-10 14:48:48 +09:00
Siddharth Bharat Purohit 2e388fb2f9 AP_NavEKF2: split otp flow from PosVelNED 2015-10-10 14:48:46 +09:00
Siddharth Bharat Purohit 290ea0e1e8 AP_NavEKF2: split up EKF_core into different files 2015-10-10 14:48:44 +09:00
Caio Marcelo de Oliveira Filho b5abab9d37 AP_GPS_GSOF: minor tweak to avoid warning
Fixes the issue of three unused variables, two of which were used in a
commented Debug() call.

To keep the convenient debug message (and the variable names for the
data bytes), this patch uncomment the debug call but wrap the variables
and the debug call around an ifdef for the local symbol
gsof_DEBUGGING. So by turning it on, the debug will already be in place.

The Debug() call was modified to actually compile and include the third
variable in the output.
2015-10-10 14:34:54 +09:00
Caio Marcelo de Oliveira Filho 7c631d860f mk: fix list of warnings for board_native
When setting WARNFLAGCXX, the entry was missing a backslash character
and other entries were missing. It was also a duplicate, so removed it.
2015-10-10 14:34:52 +09:00
Randy Mackay e20038a453 Copter: support SET_ATTITUDE_TARGET in guided mode 2015-10-09 12:15:38 +09:00
Philippe Hamelin 3af95cc3da scripts: add catkin_pkg and python-empy to Ubuntu prerequisites 2015-10-08 15:30:10 +09:00
Mirko Denecke d93200f3b1 Linux_HAL_Essentials: Update README.md 2015-10-08 15:24:14 +09:00
Paul Riseborough 2b0434f089 AP_NavEKF: Improved detection of GPS glitch behaviour 2015-10-08 15:09:45 +09:00
Paul Riseborough d48d4ac950 AP_NavEKF: Add GPS glitching monitor to EKF status report 2015-10-08 15:09:43 +09:00
Paul Riseborough 8a9d9c04c5 AP_NavEKF: Add public function to declare GPS glitch 2015-10-08 15:09:40 +09:00
Paul Riseborough 21e4910149 AP_NavEKF: Allow user to select preflight GPS checks 2015-10-08 15:09:37 +09:00
Paul Riseborough cdae84aec1 AP_NavEKF: Additional pre-arm GPS quality checks 2015-10-08 15:09:34 +09:00
Leonard Hall 041dd3c855 Frame: new Bebop default parameters 2015-10-08 12:21:14 +09:00
Paul Riseborough 8a66c9c2ed AP_NavEKF: Critical Bugfix 2015-10-08 10:54:34 +09:00
Randy Mackay 825abdbedc Compass: example sketch displays in milligauss 2015-10-07 21:35:24 +09:00
Randy Mackay d3066fcdad GCS_MAVLink: send compass vector to GCS in milligauss 2015-10-07 21:35:21 +09:00
Randy Mackay e9254ca1a9 DataFlash: log compass as milligauss 2015-10-07 21:35:19 +09:00
Randy Mackay 2deaf5280e RangeFinder: add User to param descriptions
First sensor appears in standard list, second in advanced
2015-10-07 14:10:24 +09:00
Julien BERAUD b37c52f7a3 AP_InertialSensor_MPU6000: Add heat support
Send current tempertaure to the Heater so the control loop sets the correct
temperature to the imu
2015-10-06 15:21:39 +11:00
Julien BERAUD f231182cd9 AP_HAL: Add support for a Heater
Add heater class and non-pure virtual method to Util class in order to do
nothing in case the function is not implemented
2015-10-06 15:21:39 +11:00
Julien BERAUD ffbb892a01 AP_HAL_Linux: add support for a pwm heater
It uses a heating resistor controlled by a pwm.
By changing the duty cycle of the pwm, we can control the temperature.
A simple PI algorithm is used in order to get to the correct temperature
fast enough and without too much overshoot
It is implemented as a member of the Util class in order not to make to much
modification to the current codebase
2015-10-06 15:21:39 +11:00
Julien BERAUD 1aadcdf538 AP_InertialSensor_MPU6000: read temperature
Read temperature as part of the normal burst. This is not very costly since it
is part of the burst read in i2c and already read in spi.
It is meant to be used for imu heating.
The filter is set to 1Hz on temperature because of the inherent inertia of
heating systems.
2015-10-06 15:21:39 +11:00
Peter Barker af4ad01f23 DataFlash: make CAM a critical message 2015-10-06 15:20:08 +11:00