Commit Graph

22222 Commits

Author SHA1 Message Date
Randy Mackay
aff854f485 AC_AttitudeControl: update param ranges 2020-02-26 08:02:27 +09:00
Randy Mackay
6297306492 AP_LandingGear: add OPTIONS param to auto deploy and retract 2020-02-26 08:01:00 +09:00
Randy Mackay
cc33c8d116 AP_Scripting: make bindings 2020-02-25 19:55:54 +09:00
Randy Mackay
c0bc696b86 AP_Scripting: add arming-check-batt-temp example script 2020-02-25 19:55:54 +09:00
Randy Mackay
ccaa74655c AP_Scripting: support external authorisation for arming 2020-02-25 19:55:54 +09:00
Randy Mackay
05a8e34d5c AP_Arming: support auxiliary authorisation 2020-02-25 19:55:54 +09:00
Randy Mackay
2ee5f9dcc5 AP_Logger: ARM msg logs ArmChecks as uint32_t 2020-02-25 19:55:54 +09:00
Randy Mackay
df8bf27a7f AP_Arming: get_enabled_checks returns uint32_t 2020-02-25 19:55:54 +09:00
Randy Mackay
8ad9a49900 AP_Mount: ignore rc trim when calculating desired mount angles 2020-02-25 17:38:24 +09:00
Randy Mackay
cd38940ecf RC_Channel: formatting fixes 2020-02-25 17:38:24 +09:00
Randy Mackay
77d5165c01 RC_Channel: add norm_input_ignore_trim
same as norm_input but ignores the trim value
2020-02-25 17:38:24 +09:00
Andrew Tridgell
8f83bf5e80 AP_Compass: fixed in-flight learning for all compasses
after recent changes only first compass was learnt

See
https://discuss.ardupilot.org/t/break-in-latest-master-in-flight-compass-calibration/52602
2020-02-25 12:40:27 +11:00
Peter Barker
727c12c388 GCS_MAVLink: move initialisation of serial and gcs to AP_Vehicle 2020-02-25 11:50:55 +11:00
Peter Barker
2ede027635 AP_Vehicle: move initialisation of serial and gcs to AP_Vehicle 2020-02-25 11:50:55 +11:00
Peter Barker
2b7af4d70b AP_Vehicle: fold init_vehicle back into AP_Vehicle init method 2020-02-25 11:47:52 +11:00
Peter Barker
a7c493d037 AP_BoardConfig: fold init_vehicle back into AP_Vehicle init method 2020-02-25 11:47:52 +11:00
Peter Hall
0ca6b7cf77 AP_HAL_ChibiOS: retry neopixel until successful send 2020-02-25 11:15:55 +11:00
Peter Barker
e2c9f6a8a1 GCS_MAVLink: add flags to MAV dataflash log
holds various pieces of simple information about a link
2020-02-25 10:59:22 +11:00
Peter Barker
10c9bc3659 AP_Logger: add flags to MAV dataflash log
holds various pieces of simple information about a link
2020-02-25 10:59:22 +11:00
Gone4Dirt
d813a70c8d AP_Mission: Added force resume for when MIS_RESTART=1 2020-02-25 10:05:12 +11:00
Andy Piper
3b25a8ae2e AP_GyroFFT: adjust default FFT lengths for boards that can cope and are likely to have BMI088 2020-02-25 08:35:09 +11:00
Andy Piper
509341957f AP_HAL: check for div0 in quinn's estimator 2020-02-25 08:35:09 +11:00
Andy Piper
507bd9eea9 AP_InertialSensor: add in user-specified background noise when there is no rpm noise 2020-02-25 08:35:09 +11:00
Andrew Tridgell
41b74ec014 HAL_ChibiOS: use DNA by default for all AP_Periph builds
this makes multiple sensors of the same type on the bus easier
2020-02-22 12:28:16 +11:00
Andrew Tridgell
6139860a64 HAL_ChibiOS: use default USB IDs for fmuv3 2020-02-22 12:17:05 +11:00
Peter Barker
4d0c61970d ArduSub: log disarm method 2020-02-22 12:16:29 +11:00
Peter Barker
347f64264d RC_Channel: log disarm method 2020-02-22 12:16:29 +11:00
Peter Barker
f8f4ed7ee0 GCS_MAVLink: log disarm method 2020-02-22 12:16:29 +11:00
Peter Barker
1e82ae4676 AP_Scripting: log disarm method 2020-02-22 12:16:29 +11:00
Peter Barker
7b9cdd6d06 AP_Arming: log disarm method 2020-02-22 12:16:29 +11:00
Andy Piper
41b41c05f3 AP_InertialSensor: scale SITL motor noise by SIM_VIB_MOT_MULT 2020-02-22 11:15:37 +11:00
Andy Piper
2033cf3b4a SITL: add SIM_VIB_MOT_MULT to allow motor noise to have a different amplitude to the fixed frequency noise 2020-02-22 11:15:37 +11:00
Andy Piper
c0c61660b0 SITL: quadplane updates 2020-02-22 11:15:37 +11:00
Andy Piper
dcdd1707f7 AP_HAL_SITL: make throttle comply with quadplane dynamics 2020-02-22 11:15:37 +11:00
Andy Piper
0e9b2a26c5 AP_InertialSensor: SITL the raw sample rate is not the same as the sensor rate
use regulated time for frequency noise to avoid spurious harmonics
SITL sensors must be true separate instances
don't compile in FFT structures if DSP disabled
2020-02-22 11:15:37 +11:00
Andy Piper
a16bb2f188 AP_Scheduler: allow registration of tasks at loop rate 2020-02-22 11:15:37 +11:00
Andy Piper
7663c67eec AP_Arming: gyrofft arming checks 2020-02-22 11:15:37 +11:00
Andy Piper
6613d4da3d AP_Vehicle: add FFT configuration and initialization
add arming checks to validate FFT performance
allow gyros to be sampled at either the fastloop rate or gyro rate.
add gyro and parameter update loops for GyroFFT
add GYRO_FFT aux function
save FFT results on disarm
2020-02-22 11:15:37 +11:00
Andy Piper
4c1816a983 Copter: port betaflight in-flight fft analysis to arducopter and expose as a log message
add harmonic notch tracking mode
call AP_GyroFFT::update_freq_hover() from update_throttle_hover()
move gyrofft configuration and control to AP_Vehicle
move fft logging to fft library
2020-02-22 11:15:37 +11:00
Andy Piper
6f5b991f28 Filter: add harmonic notch dynamic tracking mode
move definition of HNF_MAX_HARMONICS
2020-02-22 11:15:37 +11:00
Andy Piper
127a0e9b41 AP_HAL_Linux: add in empty dsp driver 2020-02-22 11:15:37 +11:00
Andy Piper
7d36bc4422 AP_GyroFFT: new FFT library for motor peak analysis using HAL DSP abstraction
add dynamic gyro windows
control inclusion based on HAL_WITH_DSP and GYROFFT_ENABLED
target appropriate ARM cpus
constrain window sizes to be achievable
improve FFT signal accuracy through configurable window overlap and quinn's estimator
calculate energy weighted center frequency
add support for learning hover frequency and throttle reference
calculate power spectrum rather than amplitude
record noise as a per-bin power spectrum
calculate true SNR per-bin and use that to determine there is a signal
add user config for SNR signal level
constrain frequency scanning to MAXHZ
calculate and learn the peak bandwidth at the configured attenuation
allow enabling/disabling dynamically through rc function
MAXHZ should be below Nyquist
Incorporate full range of MAXHZ to MINHZ
update FFT analysis in a separate thread
allocate memory in a specific region
constrain window size by CPU class
do not allocate any resources when not enabled
Prevent self-check and analysis interfering with each other
put configuration and initialization to AP_Vehicle
add logging
fix significant issues with threading, locking and sample buffer access
use both calculated noise peaks together with the harmonic notch configuration to detemine which peak represents the fundamental harmonic that should be tracked
record harmonic fit
add CMSIS 5 libraries and headers
allow larger FFT lengths on Linux and SITL
2020-02-22 11:15:37 +11:00
Andy Piper
7571b4d95c AP_HAL_SITL: SITL version of DSP implementation 2020-02-22 11:15:37 +11:00
Andy Piper
495a89459f AP_HAL_Empty: empty implementation of HAL FFT 2020-02-22 11:15:37 +11:00
Andy Piper
3d0cf7e12a AP_HAL_ChibiOS: hardware M4-Cortex and M7-Cortex (and H7) implementation of HAL FFT abstraction
implements an FFT engine based on the betaflight feature using ARM hardware accelerated CMSIS library
make the FFT feature optional
add dynamic gyro windows
add quinns and candans estimators and record in DSP state
disable DSP for boards with limited flash
calculate power spectrum rather than amplitude
start/analyse version of analysis to support threading
allocate memory in a specific region
constrain window size by CPU class
control inclusion of DSP based on board size
2020-02-22 11:15:37 +11:00
Andy Piper
f4a99a1589 AP_HAL: hardware abstraction for FFT.
control inclusion of FFT based on HAL_WITH_DSP and HAL_GYROFFT_ENABLED. target appropriate ARM cpus
define hanning window and quinn's estimator
start/analyse version of FFT to support threading
allocate memory in a specific region
calculate frequency and noise bandwidth of two noisiest peaks
control inclusion of DSP based on board size
2020-02-22 11:15:37 +11:00
Andy Piper
3d9776dd6d AP_InertialSensor: expose statically filtered gyro values for FFT analysis and allow sampling to gyro window for FFT analysis.
FFT windows can be dynamically allocated
add harmonic notch dynamic tracking mode
unwind gyro window allocation in the case of failure
allow access to harmonic notch harmonics
2020-02-22 11:15:37 +11:00
bnsgeyer
593ff6818d AC_WPNAV:make speed changes during missions obey WPNAV_ACCEL
Includes commits by rmackay9
AC_WPNav: fixup max speed acceleration
AC_WPNav: simplify the initialisation of poscontrol's max speed
          Changed at Leonard's request to keep things simpler
2020-02-22 08:53:41 +09:00
Randy Mackay
fc2e15651e AC_PosControl: allow smaller changes in max speed and accel
also small changes in max speed for z-axis
2020-02-22 08:53:41 +09:00
ashvath100
1c77df9169 SITL: Rename morse-rover to morse-skid 2020-02-21 08:23:54 +09:00