Randy Mackay
2951fb50e9
InertialNav: fix example sketch
2014-07-29 11:51:49 +09:00
Randy Mackay
4db4471f49
INav_EKF: accept baro_glitch in constructor
...
Required so it can create an InertialNav object
2014-07-28 22:16:19 +09:00
Randy Mackay
322f527c4f
InertialNav: skip baro updates when glitching
...
Also resets inertial nav alt estimate once glitch clears
2014-07-28 22:16:19 +09:00
Andrew Tridgell
c1650eed7a
AP_InertialNav: fixed example build
2014-07-25 17:54:37 +10:00
Randy Mackay
6f60ce3d6e
Inav_EKF: init member and remove hal reference to reduce compiler warnings
2014-07-16 14:40:39 +09:00
Randy Mackay
e27ff75a71
AP_InertialNav: remove virtual qualifier from error_count
2014-07-16 14:38:50 +09:00
Randy Mackay
9e2cd93b2d
AP_InertialNav: init members to reduce compiler warnings
2014-07-16 14:38:46 +09:00
Randy Mackay
1e888e5c34
AP_InertialNav: append f to floating point constants
...
Reduces some compiler warnings
2014-07-16 14:38:43 +09:00
lthall
4072fcd99e
Inav: use horizontal body frame for accel corrections
2014-06-21 14:58:59 +09:00
Ju1ien
28ce66f314
INav: clear historic z-axis position estimate when set_altitude called
2014-06-06 18:42:42 +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
0e065e4894
AP_InertialNav: get_velocity_xy const
2014-04-21 21:59:38 +09:00
Randy Mackay
2ddc414f4d
InertialNav: replace safe_sqrt with pythagorous2
2014-04-01 20:43:53 +09:00
Andrew Tridgell
bc0c9ad6d5
AP_InertialNav: fixed example build
2014-04-01 06:38:25 +11:00
Andrew Tridgell
d04d33a02d
AP_InertialNav: convert to new GPS API
2014-04-01 06:38:24 +11:00
Andrew Tridgell
271ba3a6bc
AP_InertialNav: fixed example build
2014-03-24 12:03:47 +11:00
Andrew Tridgell
ba8c4b86a0
AP_InertialNav: fixed example build
2014-03-19 12:14:08 +09:00
Randy Mackay
ae59bef6d1
AC_INav: fix example sketch
2014-02-15 06:09:08 +11:00
Andrew Tridgell
a88212eb7a
AP_InertialNav: fixed EKF version for new AHRS API
2014-02-15 05:48:24 +11:00
Andrew Tridgell
c995f994c5
AP_InertialNav: make some functions protected
2014-02-15 05:48:18 +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
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
cfc612b251
AP_InertialNav: use references to AHRS and baro
2014-02-15 05:29:45 +11:00
Andrew Tridgell
4671aaa367
AP_InertialNav: fixed example build
2013-12-17 11:51:37 +11:00
Randy Mackay
dacca04b21
INav: record error_count when GPS msg is late
2013-11-21 17:02:02 +09:00
Randy Mackay
a147eeb1e3
INav: degrade pos error slowly on loss of GPS
...
When GPS message is late by 100ms or we are glitching, degrade the GPS
vs inertial nav position error to 10% over 2 seconds instead of
immediately setting it to zero. This avoids jumpy position estimates
when the GPS misses an update
2013-11-18 23:19:57 +09:00
Andrew Tridgell
55b7903456
AP_InertialNav: update for AHRS API changes
2013-11-04 21:21:42 +11:00
Jason Short
1c7d9f43c1
InertialNav: fix for get_velocity_xy
...
forgot to sq
2013-11-03 10:14:01 +09:00
Jason Short
2de6dbd3d8
InertialNav: added get_velocity_xy
2013-11-02 21:34:45 +09:00
Andrew Tridgell
c5b36ef3d2
AP_InertialNav: fixed example build
2013-10-27 22:11:59 +11:00
Randy Mackay
4348a272bf
AP_InertialNav: remove unused velocity fns
...
remove get_longitude_velocity and get_latitude_velocity
2013-10-27 13:41:55 +09:00
Randy Mackay
8fc16d5cdf
AP_InertialNav: add comments, make ahrs const from neurocopter
...
These fixes are provided by neurocopter but with my name because of
merge conflicts
_position and _velocity vectors added to save some floating point add
operations
unused reference to ins in constructor removed
2013-10-27 13:41:50 +09:00
Randy Mackay
e23135faa1
AP_InertialNav: bug fix for gps delay handling
2013-10-27 13:41:40 +09:00
Tobias
cfaaf4b1e7
AP_InertialNav: rename AP_Buffer functions, fix delay handling bug
...
The most recent value was used instead of the intended historical value
as indicated by the comment.
2013-10-27 13:41:38 +09:00
Tobias
6c825eace2
AP_InertialNav: move variable definitions to elide unused default
...
construction of objects (saves 106 bytes)
2013-10-27 13:41:32 +09:00
Tobias
c9f68fcd1b
AP_InertialNav: remove unused AP_InertialSensor pointer
2013-10-27 13:39:10 +09:00
Tobias
cbff58e2ed
AP_InertialNav: add comments, rename incorrectly named member,
...
initialize member, remove redundant assignment
adjustments to original commit by randy
2013-10-27 13:39:08 +09:00
Andrew Tridgell
19ba07a3f9
AP_InertialNav: updates for new GPS API
2013-10-24 14:22:47 +11:00
Randy Mackay
e5c5084e76
InertialNav: fix example sketch
2013-09-26 14:40:32 +09:00
Randy Mackay
262fcb301a
InertialNav: rename set_current_position to set_home_position
2013-09-24 21:41:19 +09:00
Randy Mackay
81dd4f8b0c
InertialNav: integrate GPS glitch detection
2013-09-24 21:41:13 +09:00
Andrew Tridgell
e1aa6e3ff1
libraries: fixed examples for no flash_leds() callback
2013-09-19 18:38:28 +10:00
Andrew Tridgell
c64950e4f5
AP_InertialNav: changed to AP_Vehicle.h
2013-09-13 11:45:10 +10:00
Andrew Tridgell
a2902d4a0f
AP_InertialNav: fixed example build
2013-08-30 13:01:38 +10:00
Andrew Tridgell
6b5ee80b70
AP_InertialNav: fix for new AP_Math API
...
Pair-Programmed-With: Brandon Jones <brnjones@gmail.com>
2013-08-05 10:24:06 +10:00
Andrew Tridgell
47450a9b40
AP_InertialNav: fixed example build
2013-07-15 14:10:40 +10:00
Andrew Tridgell
9da13f3775
AP_InertialNav: fixed indent-tabs-mode
2013-05-30 09:54:53 +10:00
Andrew Tridgell
c3738ed344
AP_InertialNav: fixed example build
2013-05-08 16:45:21 +10:00
Randy Mackay
30faf87715
InertialNav: use AP_Math's longitude_scale
2013-05-05 14:32:25 +09:00
Randy Mackay
c20eac7a70
AP_InertialNav: use standard LATLON_TO_CM, DEG_TO_RAD constants
2013-05-04 15:04:55 +09:00
Randy Mackay
8122a32114
InertialNav: reduce XY TC to 2.5 (was 3)
...
More objective testing is required to arrive at the ideal number but 2.5
seem better than 3.0 at reducing "toiletbowling" and anecdotal evidence
does not show much downside.
2013-04-30 12:52:28 +09:00
Andrew Tridgell
1849aca0e9
AP_InertialNav: optimise some multiplies
2013-04-22 13:26:49 +10:00
Andrew Tridgell
3d325043b0
AP_InertialNav: make some more functions const
2013-04-22 12:21:58 +10:00
Andrew Tridgell
08c57c2587
AP_InertialNav: reduce number of multiplies
2013-04-22 12:21:58 +10:00
Andrew Tridgell
0a25d6220a
AP_InertialNav: initialise _gps_last_time
...
found with valgrind
2013-04-17 23:02:13 +10:00
Andrew Tridgell
b69481f74d
AP_InertialNav: fixed build of example
2013-04-15 14:09:38 +10:00
Randy Mackay
fc972e2d42
InertialNav: add get_velocity method
2013-04-14 10:38:23 +09:00
Randy Mackay
cdb532a594
Copter: bug fix for loiter target
2013-04-11 18:24:20 +09:00
Randy Mackay
777c6a308e
AP_InertialNav: use shared GRAVITY_MSS constant
2013-04-05 11:48:41 +09:00
Randy Mackay
6816c45c39
InertialNav: reduce Z-axis time constant to 5
2013-04-01 11:51:12 +09:00
Randy Mackay
38e81adae0
InertialNav: remove unnecessary "virtual" from function definitions
...
This saves about 30bytes of RAM
2013-03-19 17:51:16 +09:00
Randy Mackay
c9571ad543
InertialNav: remove 3sec limit on position est after losing GPS
2013-03-16 18:15:59 +09:00
rmackay9
6f1035debc
InertialNav: added 300ms timeout after which error from gps heading will be set to zero
2013-01-22 18:37:54 +09:00
Jonathan Challinger
6565d83e73
InertialNav: Fixed signs, remove body-frame rotation, apply correction at 100hz.
2013-01-22 18:37:45 +09:00
James Bielman
5631f865b2
Update floating point calculations to use floats instead of doubles.
...
- Allows use of hardware floating point on the Cortex-M4.
- Added "f" suffix to floating point literals.
- Call floating point versions of stdlib math functions.
2013-01-16 13:52:01 +11:00
Randy Mackay
109b1069d8
AP_InertialNav: added constraint to how large local accelerometer offset corrections can become
2013-01-13 19:55:09 +11:00
James Bielman
264db3670e
AP_Baro: Add CONFIG_MS5611_SERIAL option to choose between SPI and I2C.
...
- Update ArduCopter and ArduPlane modules to pass the correct serial
driver to the MS5611 driver.
- Update barometer examples, assuming SPI.
2013-01-03 13:48:06 -08:00
rmackay9
55e6544e64
AP_InertialNav: added parameter descriptions
2013-01-02 16:17:00 +09:00
Andrew Tridgell
374af1cd14
build: change from Arduino.mk to apm.mk
2013-01-02 17:29:37 +11:00
rmackay9
92e271e517
AP_InertialNav: increase baro delay to 0.5 sec (was 0.2sec) to allow slower baro updates on APM1
2013-01-02 09:55:37 +11:00
rmackay9
af4d998697
AP_InertialNav: correct lat/lon to cm
2013-01-02 09:55:37 +11:00
rmackay9
37b56662bd
AP_InertialNav: Jason's bug fix to inertial nav velocity and position calculations
2013-01-02 09:19:39 +11:00
rmackay9
41cc1c74d8
AP_InertialNav: increase time constant for Z axis to 7 seconds
2013-01-02 09:19:17 +11:00
rmackay9
557f4e65de
AP_InertialNav: small performance improvement by replacing mul_transpose with direct multiplication of Z axis accel correction to specific elements of dcm
2013-01-02 09:12:40 +11:00
rmackay9
e9fa5dec0f
AP_InertialNav: make use of ahrs library's get_accel_ef method to save some cpu cycles
2013-01-02 09:11:25 +11:00
Andrew Tridgell
463a089e5c
InertialNav: fixed example build
2012-12-22 12:50:31 +11:00
Andrew Tridgell
a1187519a8
AP_HAL: use AP_HAL_BOARD_DRIVER in remaining test sketches
2012-12-20 14:52:37 +11:00
Pat Hickey
eb530b86e8
move Arduino.mk to /mk/Arduino.mk
2012-12-20 14:52:35 +11:00
Andrew Tridgell
7d27e420ae
AP_HAL: remove unnecessary Arduino.h includes
2012-12-20 14:52:30 +11:00
Andrew Tridgell
62e396167a
AP_InertialNav: updates for new AP_Param API
2012-12-20 14:51:39 +11:00
Pat Hickey
f935f1ae31
AP_InertialNav: did my best at a meaningful test sketch
...
* the existing test sketch was just the InertialSensor test
2012-12-20 14:51:30 +11:00
Pat Hickey
af4806666f
AP_InertialNav: ported to AP_HAL
2012-12-20 14:51:30 +11:00
rmackay9
6cf94e20e7
AP_InertialNav_test: small change to #include in example sketch
2012-12-10 00:49:09 +09:00
rmackay9
154e3c33f7
ArduCopter, AP_InertialNav: consolidated ThirdOrderComplementaryFilter into AP_InertialNav to save about 200bytes of RAM
2012-12-10 00:43:11 +09:00
rmackay9
35f94a6f71
AP_InertialNav: increase Z axis default time constant to 3.0 (was 1.5)
2012-12-07 12:57:12 +09:00
Andrew Tridgell
c7dd042909
InertialNav: update example for new interface
2012-11-30 07:15:19 +11:00
rmackay9
b13264c884
AP_InertialNav: reanme AP_InertialNav and ThirdOrderCompFilter classes to resolve desktop build compiler errors
2012-11-07 22:24:00 +09:00
rmackay9
61dd405910
AP_InertialNav: removed IMU.h to fix compiler error from example sketch
2012-11-07 19:48:13 +09:00
rmackay9
7f190b8494
AP_InertialNav: first implementation of inertial nav library
2012-11-07 19:20:49 +09:00