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
Andrew Tridgell
9c5647eef3
AP_NavEKF: stop log for gdb friendly playback
2014-02-15 05:28:08 +11:00
Andrew Tridgell
117b77460e
HAL_Linux: added stop_clock hack!
2014-02-15 05:28:08 +11:00
Andrew Tridgell
4adf6000f3
AP_NavEKF: only build on fast CPUs
2014-02-15 05:28:08 +11:00
Paul Riseborough
1647ba9bd0
AP_NavEKF: Reduced heading drift on ground
2014-02-15 05:28:08 +11:00
Paul Riseborough
63d8b1bb0b
AP_NavEKF: Scheduler Improvements
2014-02-15 05:28:07 +11:00
Andrew Tridgell
df42dd691c
AP_NavEKF: added perf counters on PX4
2014-02-15 05:28:07 +11:00
Andrew Tridgell
3d6cb9eade
AP_NavEKF: use float arrays when not doing bounds checking
...
g++ is doing a lousy job of inlining VectorN, so avoid it when we
don't need bounds checking for production code
2014-02-15 05:28:07 +11:00
Andrew Tridgell
c7533579ac
AP_AHRS: added get_airspeed() interface to AHRS
2014-02-15 05:28:07 +11:00
Andrew Tridgell
010250a966
AP_NavEKF: use quaternion normalize and cleanup sqrt calls
2014-02-15 05:28:07 +11:00
Paul Riseborough
406fb31a57
AP_NavEKF: Load levelling scheduler - first attempt
2014-02-15 05:28:07 +11:00
Andrew Tridgell
68283b7aa1
GCS_MAVLink: new ekf header
2014-02-15 05:28:07 +11:00
Andrew Tridgell
163cfd839d
AP_NavEKF: enable airspeed and fix getLLH()
2014-02-15 05:28:07 +11:00
Andrew Tridgell
b4153c4d32
GCS_MAVLink: added EKF message for debugging
2014-02-15 05:27:54 +11:00
Andrew Tridgell
4771a4fc77
AP_NavEKF: use radians values from AHRS directly
2014-02-15 05:27:53 +11:00
Paul Riseborough
6b798d2821
AP_NavEKF: first working GPS + Mag fusion
2014-02-15 05:27:53 +11:00
Paul Riseborough
bccadb6e25
AP_NavEKF: first working GPS fusion
2014-02-15 05:27:53 +11:00
Andrew Tridgell
90cd04def3
AP_NavEKF: fixed build for non-Linux
2014-02-15 05:27:53 +11:00
Andrew Tridgell
0b71618f4f
AP_NavEKF: use vectorN to make indexes safe
2014-02-15 05:27:53 +11:00
Andrew Tridgell
e972acbc9f
AP_NavEKF: removed delay callback
2014-02-15 05:27:53 +11:00
Andrew Tridgell
8f16647a0c
AP_NavEKF: added write_flot valgrind functions
2014-02-15 05:27:53 +11:00
Andrew Tridgell
a8ddd51355
AP_NavEKF: added pause to gnuplot scripts
2014-02-15 05:27:53 +11:00
Andrew Tridgell
4298625daf
AP_NavEKF: added convenient plotting scripts
2014-02-15 05:27:53 +11:00
Paul Riseborough
fca1090694
AP_NavEKF: debug updates
2014-02-15 05:27:53 +11:00
Andrew Tridgell
95f51123d7
AP_NavEKF: added plot.dat output
2014-02-15 05:27:53 +11:00
Andrew Tridgell
050b0fb9f1
AP_NavEKF: fixed compass declination, baro cal and time shift
...
now runs much faster
2014-02-15 05:27:53 +11:00
Andrew Tridgell
776cedf368
AP_NavEKF: try running EKF on log data
2014-02-15 05:27:52 +11:00
Andrew Tridgell
ffce1f64cc
AP_NavEKF: added euler angle functions
2014-02-15 05:27:52 +11:00
Andrew Tridgell
977ad4bbf6
AP_NavEKF: added dataflash log reader
...
this gives log playback into HIL
2014-02-15 05:27:52 +11:00
Andrew Tridgell
f3dfde2025
AP_NavEKF: initial test sketch for NavEKF
2014-02-15 05:27:52 +11:00
Paul Riseborough
361bb5b18f
AP_NavEKF: Updated comments in header file
2014-02-15 05:27:52 +11:00
Paul Riseborough
00df068967
AP_NavEKF: Explicitly defined numerical constants as single precision using f suffix
2014-02-15 05:27:52 +11:00
Andrew Tridgell
eb505eef91
AP_NavEKF: fixed build for APM environment
2014-02-15 05:27:52 +11:00
Paul Riseborough
0dd5463e77
AP_NavEKF : Changed file and variable names
2014-02-15 05:27:52 +11:00
Paul Riseborough
1e993d2ef5
AP_NavEKF: Added constructor for measurements
2014-02-15 05:27:52 +11:00
Paul Riseborough
4a7f81e50a
AP_NavEKF: Corrected height update timeout error
2014-02-15 05:27:51 +11:00
Paul Riseborough
0f3ebb8e31
AP_NavEKF: Updated measurement fusion control
2014-02-15 05:27:51 +11:00
Paul Riseborough
c557bd7df5
AP_NavEKF: Updated GPS input processing
2014-02-15 05:27:51 +11:00
Paul Riseborough
1d4b040c67
AP_NavEKF: Inertial Navigation Code - 24 State EKF
...
initial version converted from matlab
2014-02-15 05:27:51 +11:00
Andrew Tridgell
03cc777991
AP_Airspeed: added last_update_ms() interface
2014-02-15 05:27:51 +11:00
Andrew Tridgell
e7cf07dfb7
DataFlash: added Columns column to FMT
2014-02-15 05:27:51 +11:00
Andrew Tridgell
1e0f3f5398
AP_Math: make to_euler() const
2014-02-15 05:27:51 +11:00
Andrew Tridgell
90c41981ac
AP_Math: added quaternion normalization
2014-02-15 05:27:51 +11:00
Randy Mackay
9e31f0b985
AC_WPNav: use PosControl accessor
...
Saves 2bytes of RAM
2014-02-15 05:27:50 +11:00
Randy Mackay
78c12eaebf
AC_PosControl: get_pos_xy_kP accessor method
2014-02-15 05:27:50 +11:00
Randy Mackay
8d6eb1eceb
MotorsMatrix: motor_to_channel_map moved to progmem
2014-02-15 05:27:50 +11:00
Randy Mackay
134289af38
TradHeli: motor_to_channel_map moved to progmem
2014-02-15 05:27:50 +11:00
Randy Mackay
1bee56877c
CoaxCopter: motor_to_channel_map moved to progmem
2014-02-15 05:27:50 +11:00
Randy Mackay
3fad8e3630
SingleCopter: motor_to_channel_map moved to progmem
2014-02-15 05:27:50 +11:00
Randy Mackay
0edf039155
AP_MotorsTri: motor_to_channel_map moved to progmem
2014-02-15 05:27:50 +11:00
Randy Mackay
96d433c63e
AP_Motors: motor_to_channel_map moved to progmem
2014-02-15 05:27:50 +11:00
Randy Mackay
8baf5ebf4a
AC_AttControlHeli: use motor accessors to set roll, pitch, yaw, thr
2014-02-15 05:27:49 +11:00
Randy Mackay
f216cffb77
AC_AttControl: use motor accessors to set roll, pitch, yaw, thr
...
Saves 8bytes of RAM
2014-02-15 05:27:49 +11:00
Randy Mackay
415e48de19
TriCopter: use refs for all RC_Channels
2014-02-15 05:27:49 +11:00
Randy Mackay
01d30271d8
SingleCopter: use refs for all RC_Channels
2014-02-15 05:27:49 +11:00
Randy Mackay
18d3907928
TradHeli: use refs for all RC_Channels
2014-02-15 05:27:49 +11:00
Randy Mackay
cf1d6854b9
AP_MotorsMatrix: use ref for roll, pitch, yaw, thr channels
2014-02-15 05:27:49 +11:00
Randy Mackay
2f4fe3e192
AP_Motors: accessors to set roll, pitch, yaw, throttle
...
This saves 16bytes of RAM and slightly reduces the dependence upon the
RC_Channel class as the interface.
2014-02-15 05:27:49 +11:00
Randy Mackay
98224db1e4
AC_AttControl: Leaonard's rate feedforward
...
Also saves 24bytes of RAM
2014-02-15 05:27:49 +11:00
Randy Mackay
2c6470f87b
AP_MotorsMatrix: remove unused _num_motors
...
Saves 1 byte of RAM
2014-02-15 05:27:49 +11:00
Randy Mackay
32a0992985
MatrixMotors: motor_out array made local
2014-02-15 05:27:48 +11:00
Randy Mackay
2f3fc3a3ce
Single: remove use of motor_out array
...
Also allow fins to move when throttle at zero
2014-02-15 05:27:48 +11:00
Randy Mackay
a036009524
AP_MotorsTri: motor_out array made local
2014-02-15 05:27:48 +11:00
Randy Mackay
83321b8786
AP_Motors: remove motor_out array
...
Saves 16bytes of RAM
2014-02-15 05:27:48 +11:00
Randy Mackay
5f89e9e746
AC_AttControl: bug fix to yaw rate limit
2014-02-15 05:27:48 +11:00
Randy Mackay
d76180d605
AC_AttControl: use trig values from ahrs
2014-02-15 05:27:48 +11:00
Randy Mackay
8b8d6a8e01
AC_PosControl: use trig values from ahrs
2014-02-15 05:27:48 +11:00
Randy Mackay
598a1b1f43
AC_Circle: use trig values from ahrs
2014-02-15 05:27:48 +11:00
Randy Mackay
64cfcb2308
AC_WPNav: use trig values from ahrs
2014-02-15 05:27:48 +11:00
Randy Mackay
082c5021ee
AC_AttControlHeli: add comments
2014-02-15 05:27:47 +11:00
Randy Mackay
17177adccf
AC_Circle: remove debug comment
2014-02-15 05:27:46 +11:00
Randy Mackay
37cfbc9ad5
AP_Math: float versions of wrap_360 and wrap_180
2014-02-15 05:27:45 +11:00
Randy Mackay
a7504faa7d
TradHeli: empty angle_boost for trad heli
2014-02-15 05:27:44 +11:00
Randy Mackay
80ec61f217
TradHeli: make accessor methods const
2014-02-15 05:27:43 +11:00
Randy Mackay
48a0917670
Copter: make motors armed call const
2014-02-15 05:27:43 +11:00
Randy Mackay
eda376c7f6
AC_AttControl: init_targets() clears body frame angle errors
...
This should ensure that we don't get sudden jerks when entering acro
mode
2014-02-15 05:27:43 +11:00
Randy Mackay
2643ee9724
AC_AttControl_Heli: adjust for new slew_yaw param
2014-02-15 05:27:43 +11:00
Randy Mackay
2db24659d0
AC_AttControl: add slew_yaw
2014-02-15 05:27:42 +11:00
Randy Mackay
959f5ec3b2
AC_AttControl: tradheli add RATE_RP_MAX
2014-02-15 05:27:42 +11:00
Randy Mackay
2dae0d68c5
AC_AttControl: add RATE_RP_MAX, RATE_Y_MAX params
...
These replace the ANGLE_RATE_MAX parameter from the main code
2014-02-15 05:27:42 +11:00
Randy Mackay
c2efb91ece
AC_AttControl: trad heli angle boost
2014-02-15 05:27:42 +11:00
Randy Mackay
ebbff24a04
AC_AttControl: trad heli yaw
2014-02-15 05:27:42 +11:00
Randy Mackay
4f738ffdba
AC_AttControl: add trad heli support
2014-02-15 05:27:42 +11:00
Randy Mackay
551836c49d
AC_PosControl: make some methods const
2014-02-15 05:27:40 +11:00
Randy Mackay
a2b017abd2
AC_AttControl: add rateef_rpy
...
rateef_rpy takes earth frame rates and applies them to the earth frame
angle targets and then converts them to body frame rates
2014-02-15 05:27:40 +11:00
Randy Mackay
468be05867
AC_AttControl: make ahrs, ins objects const
2014-02-15 05:27:40 +11:00
Randy Mackay
864f64b61a
AC_Circle: circle control library
2014-02-15 05:27:40 +11:00
Randy Mackay
35ef9c73d1
AC_Sprayer: minor comment fix
2014-02-15 05:27:40 +11:00
Randy Mackay
4c02212404
AC_Fence: minor comment fix
2014-02-15 05:27:39 +11:00
Randy Mackay
d4e4620159
AC_WPNav: remove unused PID references
2014-02-15 05:27:39 +11:00
Randy Mackay
26b257c8ba
AC_AttControl: alternative get_stopping_point_z
2014-02-15 05:27:39 +11:00
Randy Mackay
fc427967ae
AC_WPNav: set wp origin to horiz and vert stopping point
...
Also bug fix to set pos_control's down speed as a negative number
2014-02-15 05:27:39 +11:00
Randy Mackay
1b8791a142
AC_PosControl: remove debug
2014-02-15 05:27:39 +11:00
Randy Mackay
4cd45e2edf
AC_WPNav: remove debug
2014-02-15 05:27:38 +11:00
Randy Mackay
4003b4da9b
AC_AttControl: leonard's body frame rate controller
2014-02-15 05:27:38 +11:00
Randy Mackay
171203370f
AC_PosControl: add accessor for speed_up and down
2014-02-15 05:27:37 +11:00
Randy Mackay
1596d83d02
AC_WPNav: move leashes to AC_PosControl
2014-02-15 05:27:37 +11:00
Randy Mackay
de34359808
AC_PosControl: recalculate leash when speed or accel modified
2014-02-15 05:27:37 +11:00
Randy Mackay
ba3ba9e157
AC_AttControl: bug fix for yaw target handling
2014-02-15 05:27:37 +11:00
Randy Mackay
0d4ba04e75
AC_WPNav: make advance_wp_target private
2014-02-15 05:27:37 +11:00
Randy Mackay
80ae3dca2e
AC_PosControl: remove debug
2014-02-15 05:27:36 +11:00
Randy Mackay
b9ae3ce2ff
AC_PosControl: fixed example sketch
2014-02-15 05:27:36 +11:00
Randy Mackay
0c8cbba644
AC_WPNav: remove xy pos controller
2014-02-15 05:27:36 +11:00
Randy Mackay
9fe4d883d0
AC_AttControl: accessor for lean angle max
2014-02-15 05:27:35 +11:00
Randy Mackay
bbcf8cc84c
AC_PosControl: add horizontal pos control
2014-02-15 05:27:35 +11:00
Randy Mackay
2984e492df
AC_WPNav: add reference to AC_PosControl
...
Also remove requirement to pass in inertial nav position and velocity to
init_loiter method
2014-02-15 05:27:35 +11:00
Randy Mackay
0e0a15f4a8
AC_AttControl: add high level angle controllers
2014-02-15 05:27:35 +11:00
Randy Mackay
3ce1c0a9d5
AC_PosControl: add get_alt_error method
2014-02-15 05:27:34 +11:00
Randy Mackay
a0298aee29
AP_Motors: expose throttle min and max
2014-02-15 05:27:34 +11:00
Randy Mackay
89b7e6b1c8
AC_AttControl: implement angle_boost
2014-02-15 05:27:34 +11:00
Randy Mackay
8988b48ad8
AC_PosControl: add init take-off
2014-02-15 05:27:34 +11:00
Randy Mackay
dcac124105
AC_PosControl: add throttle controller
2014-02-15 05:27:33 +11:00
Randy Mackay
05bb943a69
AC_AttControl: first draft of PosControl class
2014-02-15 05:27:33 +11:00
Randy Mackay
b7565affcd
INS: add support for 400hz for PX4
2014-02-15 05:27:33 +11:00
Randy Mackay
0521806cc6
AP_Vehicle: add multicopter parameters
2014-02-15 05:27:32 +11:00
Randy Mackay
715c8eaf02
AC_AttitudeControl: first draft of library
2014-02-15 05:27:32 +11:00
Andrew Tridgell
d853d65b84
AP_Airspeed: added ARSPD_TUBE_ORDER parameter
...
This allows for either order of tube connection by default, but the
order can be specified if need be
2014-02-15 05:12:15 +11:00
Andrew Tridgell
bea0a46410
AP_HAL: added servorail_voltage and power_status_flags() API on AnalogIn
2014-02-15 05:00:09 +11:00
Andrew Tridgell
ce43e674fe
DataFlash: added power status logging
2014-02-15 05:00:09 +11:00
Andrew Tridgell
87355127ca
GCS_MAVLink: added send_power_status()
2014-02-15 05:00:09 +11:00
Andrew Tridgell
8797f38038
GCS_MAVLink: regenerate MAVLink headers
2014-02-15 05:00:08 +11:00
Andrew Tridgell
0cbd5a2ef0
GCS_MAVLink: added POWER_STATUS message
2014-02-15 05:00:08 +11:00
Andrew Tridgell
63910bf8cd
DataFlash: work around a NuttX bug
...
the seek offset of files can get badly mucked up when it crosses
cluster boundaries. We need to fix this in NuttX, but meanwhile this
works around the bug. It seems that doing a lseek(fd, 0, SEEK_CUR)
fixes the seek offset in the file.
The bug seems to first happen at an offset of 315392. It also
doesn't happen every time - it is more likely to happen on the first
log download after booting
2014-02-15 05:00:08 +11:00
Andrew Tridgell
0aebc18b3f
GCS_MAVLink: return early from log send if no log data to send
2014-02-14 21:51:00 +11:00
Andrew Tridgell
1497c33178
GCS_MAVLink: run a bit faster on serial ports with flow control
...
with flow control we can afford to push the radio a bit harder
2014-02-14 21:51:00 +11:00
Andrew Tridgell
7c1b9b344f
AP_HAL: added get_flow_control() API
2014-02-14 21:51:00 +11:00
Andrew Tridgell
81c5edbdb5
GCS_MAVLink: fixed a log download bug for repeated downloads
...
we were not resetting the offset to 0 correctly
2014-02-14 21:50:59 +11:00
Andrew Tridgell
dcd7f9d26d
AP_Airspeed: use raw (signed) airspeed
...
this allows us to detect when the user has the ports the wrong way
around, and mark the sensor unhealthy
2014-02-14 21:50:59 +11:00
Andrew Tridgell
1849db7074
AP_HAL: added board_voltage AnalogIn method
...
this makes it easier to get the board voltage from any library,
without having to allocate another analog channel object
2014-02-14 21:25:38 +11:00
Andrew Tridgell
4e2e685d7a
HAL_PX4: better fix for IFLOW on all ports
...
the tcsetattr() call fails to apply the baudrate if the port has no
RTS pin and we ask for IFLOW. So just make a separate call.
2014-02-12 17:47:23 +11:00
Andrew Tridgell
b2cdd39a99
HAL_PX4: don't enable IFLOW on ports without flow control
...
this should have been harmless, but breaks the GPS on Pixhawk. This
disables it until we work out why.
2014-02-12 17:32:07 +11:00
Andrew Tridgell
35791e1f05
AP_Airspeed: fixed get_temperature on PX4
2014-02-12 13:46:15 +11:00
Andrew Tridgell
ccb7dc640d
AP_HAL: fixed a build warning
2014-02-12 10:51:58 +11:00
Andrew Tridgell
c93794999e
HAL_PX4: remove an old conditional define
2014-02-11 15:58:25 +11:00
Andrew Tridgell
8095eb0bee
AP_BoardConfig: added BRD_SAFETYENABLE option
...
this allows the safety switch to be disabled on startup
2014-02-11 15:58:25 +11:00
Andrew Tridgell
439a075b30
AP_HAL: added force_safety_off rcoutput function
...
this forces the safety switch off, enabling PWM on the IO board
2014-02-11 15:58:25 +11:00
Dan Neault
262d384025
Coax: Yaw fix
...
Was using _rc_yaw servo_out instead of pwm_out to modify motors.
Corrected and less touchy in Yaw
2014-02-11 11:05:02 +09:00
Andrew Tridgell
fce464597a
AP_BoardConfig: PX4v1 does not have hw flow control on UART5
2014-02-11 12:11:26 +11:00
Andrew Tridgell
1b5d5dd8c4
AP_BoardConfig: set flow control to AUTO by default
2014-02-11 12:11:26 +11:00
Andrew Tridgell
c5c1d1358a
HAL_PX4: added automatic hardware flow control detection
...
this allows us to detect if hardware flow control is not available and
automatically disable it
2014-02-11 12:11:26 +11:00
Randy Mackay
a0369b85d1
LowPassFilter: make methods non-virtual
...
No classes inherit from this class so no need for set_cutoff_frequency,
set_time_constant and reset(T) to be declared virtual. Saves 6 bytes of
RAM.
2014-02-10 20:47:05 +09:00
Randy Mackay
38222d65e9
DerivativeFilter: update and slope non-virtual
...
No classes inherit from DerivativeFilter so no need to be virtual.
Saves 4bytes of RAM.
2014-02-10 20:47:02 +09:00
Randy Mackay
4040be9990
FilterWithBuffer: make get_sample non-virtual
...
virtual added to apply() and reset() declaration inline with base class.
This should have no impact on memory usage or functionality
2014-02-10 20:47:00 +09:00
Randy Mackay
6cee33b6fd
AP_Curve: remove virtual from method declarations
2014-02-10 17:28:11 +09:00
Randy Mackay
4c38999ca6
Maxsonar Test: remove raw from output to user
2014-02-10 15:00:08 +09:00
Randy Mackay
e1fabadd3c
MaxsonarI2C: read method returns int16_t
2014-02-10 14:59:46 +09:00
Randy Mackay
ab22d11110
MaxsonarRFinder: convert_raw returns int16_t
2014-02-10 14:59:27 +09:00
Randy Mackay
32820b4260
PulsedLightRFinder: read method returns int16_t
2014-02-10 14:58:27 +09:00
Randy Mackay
bf3fa8b99b
RangeFinder: remove raw_value from SharpGP2Y
2014-02-10 14:57:17 +09:00
Randy Mackay
8d54e50897
RangeFinder: remove raw_value, orientation variables
...
This saves 10bytes of RAM
2014-02-10 14:56:52 +09:00
Randy Mackay
d19b566d97
OptFlow: remove unused variables
...
Saves 24bytes RAM by removing several static variables that were used
only for internal calculations
2014-02-10 13:53:49 +09:00
Andrew Tridgell
b907263685
AP_BoardConfig: added BRD_SER1_RTSCTS and BRD_SER2_RTSCTS
...
used to enable flow control on telemetry ports
2014-02-10 12:57:19 +11:00
Andrew Tridgell
3e637ac5d9
AP_HAL: added enable_flow_control() option in AP_HAL
2014-02-10 12:54:50 +11:00
Randy Mackay
c9415a08f1
AC_WPNav: use ahrs trig values
2014-02-08 18:16:47 +09:00
Randy Mackay
98d667c916
AHRS_HIL: call update_trig
2014-02-08 18:16:44 +09:00
Randy Mackay
6946d68318
AHRS_DCM: call update_trig
2014-02-08 18:16:42 +09:00
Randy Mackay
3dc6ea682c
AHRS: add update_trig
...
Calculates helper trig values including cos_roll, cos_pitch
2014-02-08 18:16:39 +09:00
Andrew Tridgell
a95a3142e0
AP_InertialSensor: use fixed size arrays
...
apparently helps SITL build on MacOS
2014-02-08 19:32:26 +11:00
Bill Bonney
82ea5926a8
OptFlow: update function added to fix compiler error
2014-02-08 11:53:04 +09:00
Randy Mackay
14409ee20f
Copter: disable aux channels used for motors
2014-02-07 22:04:27 +09:00
Randy Mackay
7c25247c87
Copter: disable aux channel 7 for SingleCopter
...
Move servo range setup to AP_MotorsSingle
2014-02-07 22:04:26 +09:00
Randy Mackay
9b594dc5e1
Copter: disable aux channel ch7 for Tri
2014-02-07 22:04:24 +09:00
Randy Mackay
1426078cdb
TradHeli: disable aux channels 7 and 8
2014-02-07 22:04:23 +09:00
Paul Riseborough
bc311542ab
AP_TECS : Fixed bug preventing accel launch detection when not using AS sensor
2014-02-07 19:20:54 +11:00
Dneault
5213ec4aa6
Coax: servos to ch1, ch2, motors to ch3, ch4
2014-02-07 12:36:19 +09:00
Randy Mackay
f60d94c4ab
Coax: remove unused servo3, servo4
...
Removed commented out code
2014-02-07 12:36:06 +09:00
Dneault
f48e106271
Copter: add coax heli support
...
Motors should be attached to RCOutputs 1 and 2, Flaps should be connected
to RC outputs 3 and 4
2014-02-07 12:36:04 +09:00
Andrew Tridgell
00d2d5946c
RC_Channel: added disable_aux_channel()
...
this will be used by copter to ensure motor channels are not enabled
for aux functions
2014-02-06 21:30:55 +11:00
Andrew Tridgell
b4208c7fc0
RC_Channel: added flaperon1 and flaperon2 function outputs
2014-02-06 12:35:32 +11:00
Andrew Tridgell
698736b66d
RC_Channel: simplify the setup of aux channels
...
avoid the nasty mess of #if lines, as the info is in the constructor
anyway
2014-02-06 10:17:16 +11:00
Andrew Tridgell
264c092aa6
AP_ServoRelayEvents: fixed disabling repeated events on set_servo()
2014-02-06 10:03:26 +11:00
Randy Mackay
a963ec7e3b
AP_Math: bug fix to wrap_360 and wrap_180
...
angles above 720deg and below 3200deg might not have been properly
wrapped.
wrap_360_cd could return 36000 when really this should be wrapped back
to zero.
2014-02-03 12:56:56 +09:00
Andrew Tridgell
688f61c087
AP_Param: expose check_var_info() as a public symbol
2014-01-31 13:07:41 +11:00
Andrew Tridgell
c0e548fc60
AP_Notify: fixed example build
2014-01-30 13:33:59 +11:00
Andrew Tridgell
93070a673e
AP_Math: fixed example build
2014-01-30 13:33:46 +11:00
Andrew Tridgell
045efdb084
AP_InertialSensor: fixed example builds
2014-01-30 13:33:38 +11:00
Andrew Tridgell
a339ec25c8
AP_Airspeed: fixed example build
2014-01-30 13:33:29 +11:00
Andrew Tridgell
cf1f05a198
AP_Airspeed: expose get_temperature()
2014-01-28 10:35:35 +11:00
Andrew Tridgell
fc3ed61e67
DataFlash: added baro dataflash logging
2014-01-28 10:35:18 +11:00
Andrew Tridgell
8f3071b1b8
AP_Arming: more detail in ARMING_CHECK docs
2014-01-25 22:22:50 +11:00
Andrew Tridgell
23d8bfa976
AP_Notify: reduce the latency in the main task of LED updates
...
the ioctl now gets called in a IO timer callback
2014-01-24 10:40:39 +11:00
Andrew Tridgell
0d174db05b
AP_Math: added equality operator for VectorN
2014-01-24 10:37:08 +11:00
Andrew Tridgell
aae0e3c0e5
AP_Arming: allow checking of pre-arm without reporting
...
useful for updating AP_Notify LEDs
2014-01-23 21:39:55 +11:00
Andrew Tridgell
330a4649fd
AP_Notify: fixed LED colour for no-GPS and armed
2014-01-23 21:39:31 +11:00
Andrew Tridgell
58d3729d16
AP_InertialSensor: fixed default health functions
...
this fixes INS on APM1. Thanks to Mike McCauley for noticing this!
2014-01-22 22:08:28 +11:00
Andrew Tridgell
54562b0b9a
AP_Compass: prevent bad initial values from affecting HMC5883 calibration
...
the first couple of values after we enter strap mode may be low, but
just above our 0.7 threshold. We now discard the first two values to
prevent these affecting the average.
Also added some commented out debug code and a comment on the scaling
of the calibration code
2014-01-22 17:15:34 +11:00
Andrew Tridgell
67aab44566
AP_ServoRelayEvents: library for handling servo and relay events
2014-01-20 17:06:29 +11:00
Andrew Tridgell
4aa901f203
AP_Relay: added enabled() API
2014-01-20 17:06:29 +11:00
Andrew Tridgell
55b604b147
AP_Camera: updates for relay API change
2014-01-20 17:06:29 +11:00
Andrew Tridgell
e42ba853ec
AP_Relay: enable up to 4 relay pins
2014-01-20 17:06:29 +11:00
Andrew Tridgell
b5822cd549
AP_BoardConfig: board specific config library
...
used to control board specific parameters, such as PWM output count
2014-01-20 17:06:28 +11:00
Andrew Tridgell
99b41f110f
HAL_PX4: enable the FMU PWM pins to be used as GPIO when needed
2014-01-20 17:06:28 +11:00
Paul Riseborough
f2c2811ef3
AP_AHRS & AP_Math: fixed bug in use of AHRS_TRIM parameters
2014-01-19 07:19:43 +11:00
Don Gagne
68b3b31499
Param doc typo
2014-01-18 10:18:58 +09:00