Commit Graph

4307 Commits

Author SHA1 Message Date
Jason Short 6f8b97bf6a ACM: Added constraints for invalid climb rates. Robert Lefebvre had a bad sonar and very invalid rates crept into the system. 2012-03-13 21:31:16 -07:00
Jason Short 4315c06f34 Lowering the D filter for less latency and less oscillation. 2012-03-13 12:58:46 -07:00
Jason Short 48ba24a810 ACM: Loiter tuning updates, turned up I a bit, a higher I will work better if the system is well tuned. 2012-03-13 10:23:31 -07:00
Jason Short 468d9c4b4f ACM: Loiter D performance updates 2012-03-13 10:23:31 -07:00
Jason Short 7953808d14 ACM: Larger filter for Loiter D 2012-03-13 10:23:30 -07:00
Hazy 39e825bb04 APM Planner
fix detection of CAPM board
2012-03-13 20:26:45 +08:00
Chris Anderson 59957e0c84 Merge branch 'master' of https://code.google.com/p/ardupilot-mega 2012-03-12 22:04:32 -07:00
Andrew Tridgell 00c1c6f108 Quaternion: credit Justin with the initial idea of using Madgwick
thanks Justin!
2012-03-13 13:27:45 +11:00
Michael Oborne 10da3db15c APM Planner 1.1.51
revert posible camera issue
fix apc220 units rts issue
fix bluetooth comport issue - re andrew
cleanup startup test
2012-03-13 07:15:08 +08:00
Jason Short 7034b709d1 ACM: removing old define 2012-03-12 13:11:30 -07:00
Jason Short 73e2bd6cd8 ACM: Got the sign wrong. I'm using the derivative of the error now and not the sensor, so the sign was reversed. 2012-03-12 13:11:05 -07:00
Jason Short 0b51d9b8b0 ACM: Made Loiter_D 0 by default. Accidentally left it on by default. 2012-03-12 10:37:15 -07:00
Andrew Tridgell 13dac4a93a DCM: adjust yaw kp constant down to 0.4
this makes the time constant for compass errors closely match the
timing of the older releases - about 10 seconds for a 1 radian change
in heading
2012-03-12 17:49:26 +11:00
Andrew Tridgell 7daaadf776 Compass: fixed the order of rotations in the compass driver
this should fix the massive heading issues that people have been
reporting. Please test!
2012-03-12 17:33:15 +11:00
Andrew Tridgell c08fd50542 AP_Declination: fixed build of test sketch 2012-03-12 17:33:15 +11:00
Jason Short deed802d1a ACM: Broke out the D term for the PID loop to add custom filtering. The current AC_PID filtering wasn't working for this application and we needed more smoothing. Bad pitch oscillations were being transmitted to the copter. 2012-03-11 23:21:49 -07:00
Jason Short b3795f1c00 ACM: removed Filtering code for motors in Quad for testing 2012-03-11 23:21:49 -07:00
Jason Short a989b88680 ACM: made same as Loiter I 2012-03-11 23:21:49 -07:00
Jason Short 0d434ca92c ACM: Tuning based on flights today 2012-03-11 23:21:49 -07:00
Jason Short 0ab6b6e592 ACM: Rate_d filter for PID loop of Loiter. 2012-03-11 23:21:49 -07:00
Jason Short 77fe7de55d ACM: The I term in update_nav_wp with the no_nav condition was pulling from the wrong PID loop and was essentially 0 all the time. 2012-03-11 23:21:49 -07:00
rmackay9 a869a01294 ArduCopter - Log.pde - added wrap_360 to compass heading field of ATT message to resolve overflow problem that caused heading to appear as being off by 70 degrees 2012-03-12 12:09:04 +09:00
Amilcar Lucas 6e9ffb4249 correct small typos in comments 2012-03-11 21:30:09 +01:00
Andrew Tridgell 2a03a0584f AP_Declination: disable library when AUTOMATIC_DECLINATION is not ENABLED
unfortunately this library was causing avrdude to fail to load the hex
to my APM2. Until we work out why, it's disabled.
2012-03-11 21:46:41 +11:00
Andrew Tridgell b337441ec5 SITL: added pgm_read_byte_far() 2012-03-11 20:59:47 +11:00
Andrew Tridgell c1b945018b AP_Declination: fixed usage of headers 2012-03-11 20:59:47 +11:00
Adam M Rivera b9be6ed290 AP_Declination: Updated comment.
Signed-off-by: Andrew Tridgell <tridge@samba.org>
2012-03-11 20:59:47 +11:00
Adam M Rivera d3667faef4 AP_Declination: Added call to compass.set_initial_location if the compass is enabled when the 3D fix is obtained.
Signed-off-by: Andrew Tridgell <tridge@samba.org>
2012-03-11 20:59:47 +11:00
Adam M Rivera 2524f9c8df 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 fe8c896d69 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 e08b50ee91 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 e22da153ec 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 d2a07b1603 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 d10c4b76ad Compass: removed an incorrect comment 2012-03-11 20:07:38 +11:00
Andrew Tridgell 0da64e98f8 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 0ec9857689 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 4bf28d499a Quaternion: update for new Quaternion interface 2012-03-11 15:37:07 +11:00
Andrew Tridgell e8f1c5742b DCM: update for new Matrix3f interface 2012-03-11 15:37:07 +11:00
Andrew Tridgell 4d3789d11c AP_Math: update the test suite 2012-03-11 15:37:07 +11:00
Andrew Tridgell 4422486d44 AP_Math: made rotation matrices more C++
thanks to Adam for the suggestion
2012-03-11 15:37:07 +11:00
Andrew Tridgell 5c6368bad3 AP_Math: allow null pointers in Quaternion::to_euler()
this matches the Matrix3f method
2012-03-11 15:37:07 +11:00
Andrew Tridgell 16c95236c0 Quaternion: use the new quaternion API 2012-03-11 15:37:07 +11:00
Andrew Tridgell 9f0cb78f08 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 9e30b5e4a5 I2C: fixed cr/lf mess 2012-03-11 15:37:07 +11:00
Andrew Tridgell 6021daf423 OpticalFlow: adapt optical flow library to new rotation system 2012-03-11 15:37:07 +11:00
Andrew Tridgell 2ab3d2c080 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 cb96dd975f Compass: update the compass driver to use the new vector.rotate() method 2012-03-11 15:37:07 +11:00
Andrew Tridgell 55aa43a70d Math: added a test suite for the new rotation methods 2012-03-11 15:37:07 +11:00
Andrew Tridgell 289c64c0b9 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 62c2aa4924 ACM: Added Loiter D tuning 2012-03-10 14:17:57 -08:00