Commit Graph

4029 Commits

Author SHA1 Message Date
Adam M Rivera 566bbed7ad AP_Declination: Added new config value to allow the user to have the declination overwritten on every 3D fix.
Signed-off-by: Andrew Tridgell <tridge@samba.org>
2012-03-11 20:59:47 +11:00
Adam M Rivera c390db5d92 AP_Declination: Added method set_initial_location
This will set the declination based on lat/lon if the user has
not yet saved one to the EEPROM, OR if they have specified via the
config parameter that they want it to overwrite the declination every
3D fix.

Signed-off-by: Andrew Tridgell <tridge@samba.org>
2012-03-11 20:59:47 +11:00
Adam M Rivera 94d1c48544 AP_Declination: Increased range of supported latitude coordinates.
Fixed incorrect type usage to save stack space.

Signed-off-by: Andrew Tridgell <tridge@samba.org>
2012-03-11 20:59:47 +11:00
Adam M Rivera 1709403b87 Added AP_Declination test sketch. I will be improving the test sketch soon.
Signed-off-by: Andrew Tridgell <tridge@samba.org>
2012-03-11 20:59:47 +11:00
Adam M Rivera 3f28184cb0 Added AP_Declination library. It contains the lookup table (lat/lng -> declination) as well as a method that performs the lookup.
Signed-off-by: Andrew Tridgell <tridge@samba.org>
2012-03-11 20:59:47 +11:00
Andrew Tridgell d4aa0a4879 Compass: removed an incorrect comment 2012-03-11 20:07:38 +11:00
Andrew Tridgell a20f57c59e Compass: don't save the orientation to EEPROM
there is no point in saving this, the value is only configurable at
compile time for now, and is always set
2012-03-11 15:37:07 +11:00
Andrew Tridgell cc1961b1e8 Math: any euler angle with pitch > 90 is invalid
both DCM and quaternion always return pitch in the range -90 to 90
2012-03-11 15:37:07 +11:00
Andrew Tridgell 36e92bf4ba Quaternion: update for new Quaternion interface 2012-03-11 15:37:07 +11:00
Andrew Tridgell eea63ecd6e DCM: update for new Matrix3f interface 2012-03-11 15:37:07 +11:00
Andrew Tridgell 01535a7a21 AP_Math: update the test suite 2012-03-11 15:37:07 +11:00
Andrew Tridgell 6d08e38d5d AP_Math: made rotation matrices more C++
thanks to Adam for the suggestion
2012-03-11 15:37:07 +11:00
Andrew Tridgell 92ada85f49 AP_Math: allow null pointers in Quaternion::to_euler()
this matches the Matrix3f method
2012-03-11 15:37:07 +11:00
Andrew Tridgell 18fcb14335 Quaternion: use the new quaternion API 2012-03-11 15:37:07 +11:00
Andrew Tridgell a9b8c4dd82 AP_Math: re-work quaternion functions to be more C++ like
thanks to Adam for the suggestion!
2012-03-11 15:37:07 +11:00
Andrew Tridgell ea0fb311af I2C: fixed cr/lf mess 2012-03-11 15:37:07 +11:00
Andrew Tridgell 5203df2cf8 OpticalFlow: adapt optical flow library to new rotation system 2012-03-11 15:37:07 +11:00
Andrew Tridgell 7aa6ba2c86 OpticalFlow: fixed line endings
this library was a mixture of dos and unix line endings, which makes
for very messy editing
2012-03-11 15:37:07 +11:00
Andrew Tridgell 3c145ab61c Compass: update the compass driver to use the new vector.rotate() method 2012-03-11 15:37:07 +11:00
Andrew Tridgell 24a9fe8827 Math: added a test suite for the new rotation methods 2012-03-11 15:37:07 +11:00
Andrew Tridgell 85c3c1d2ea Math: added vector3.rotate() and matrix3.rotation() methods
these operate on a "enum Rotation" which defines a set of standard
rotations. These are much faster than our previous method, plus use
less memory
2012-03-11 15:37:07 +11:00
Jason Short 8b887b77bd ACM: Added Loiter D tuning 2012-03-10 14:17:57 -08:00
Jason Short 7b2b5e858e ACM: Added Loiter_D for tuning as #23 2012-03-10 14:17:16 -08:00
Jason Short 149a484984 ACM: Firmware rev 2012-03-10 12:45:03 -08:00
Jason Short a9e7194e3d ACM: disabled auto_calibration until more testing can be done 2012-03-10 12:44:49 -08:00
Jason Short 3c1f4b1ad7 ACM: changed alt hold initialization of altitude to be immediate 2012-03-10 12:44:18 -08:00
Jason Short 68d210660e ACM: Added note about scaling rates 2012-03-10 12:43:28 -08:00
Jason Short 4b75f74d2c ACM: Altered the scaling speed for altitude changes for faster rises. 2012-03-10 12:43:01 -08:00
Jason Short 874f5aaef6 ACM: Added force_new_altitude call to do immediate changes in altitude and no gradual changes. 2012-03-10 12:42:22 -08:00
Jason Short 9f47a79a3a ACM: decreased rate P for alt hold to remove bumpy repsonse 2012-03-10 12:41:06 -08:00
Jason Short 11e5f7d40f ACM: Increased the altitude error P for smoother alt hold response 2012-03-10 12:40:44 -08:00
Jason Short 20a3cfdcde decreased the loiter rate P for overshoot 2012-03-10 12:40:07 -08:00
Jason Short bb56cea1ac ACM: increased the available rate error constrain, it was too low 2012-03-10 12:39:16 -08:00
Jason Short 285f2dd791 ACM: removed the experiment for rate error. 2012-03-10 12:38:29 -08:00
Jason Short 0ccfdc664d added Force_new_altitude call for alt hold 2012-03-10 12:37:54 -08:00
Jason Short 037221cd02 upped throttle manual boost to 225 2012-03-10 12:37:28 -08:00
rmackay9 9986776e0d ArduCopter - fixed small compile warning about unused x_iterm and y_iterm in navigation.pde 2012-03-11 01:27:58 +09:00
rmackay9 a72b20f42d ArduCopter - fix to dataflash logging of Mag heading 2012-03-11 01:27:29 +09:00
Andrew Tridgell a30b03cd0a SITL: lower the noise and drift levels for general autotest usage 2012-03-10 10:34:34 +11:00
Andrew Tridgell 07e8360970 InertialSensor: fixed HIL build 2012-03-10 10:34:34 +11:00
Andrew Tridgell 6d06d9d070 MAVLink: bring the v1.0 MAVLink in sync with 0.9 2012-03-10 10:34:34 +11:00
Andrew Tridgell fed5426274 DCM: after some experimentation, raise the ki values a bit
this tracks the max gyro drift more accurately
2012-03-10 10:34:34 +11:00
Andrew Tridgell 89b4a9f4ed Quaternion: use gyro drift value from sensor driver 2012-03-10 10:34:34 +11:00
Andrew Tridgell fd74414884 Quaternion: go back to the full update_MARG()
the separate drift controller is too erratic on yaw hold to be usable
at the moment
2012-03-10 10:34:34 +11:00
Andrew Tridgell 1002bbcbfe SITL: cleanup the gyro drift calculations
use units that are more easily understood
2012-03-10 10:34:34 +11:00
Andrew Tridgell ad21913605 Quaternion: make the quaternion test more generic
works with DCM too
2012-03-10 10:34:33 +11:00
Andrew Tridgell a889135e78 Quaternion: update to get_gyro_drift() interface 2012-03-10 10:34:33 +11:00
Andrew Tridgell e0cc9c93a1 Quaternion: removed some unused variables 2012-03-10 10:34:33 +11:00
Andrew Tridgell f39d8dbde8 GCS: get_integrator() is now get_gyro_drift() in DCM 2012-03-10 10:34:33 +11:00
Andrew Tridgell b67b0afd10 DCM: separate out the omega_yaw_P from omega_P
this cleans up the separation of drift rates and proportional
correction from yaw source and accelerometers, allow the yaw
to run at a different rate to the accel correction
2012-03-10 10:34:33 +11:00