Commit Graph

3694 Commits

Author SHA1 Message Date
Pat Hickey 42078f2794 AP_Param: Make nested group recursion disableable by macro
* Eliminates recursive calls inside AP_Param.
  This is important to Pat @ Galois, but not the project in general.
  Recursion depth on these functions is bounded structurally using
  existing nested group constructors (can't create loops in finite space)
  and checked at init time
2012-02-28 16:28:27 -08:00
Pat Hickey 00180e7084 Cleanup: rename files with spaces in their names, replace with underscores
* Skipped /Tools/ArdupilotMegaPlanner/Resources/new...
  and /archive/Configurator/Source/Utilities/TDMS/G...
  because I don't want to mess with that.
2012-02-28 16:14:31 -08:00
Robert Lefebvre b7ccfb0114 Added heli_collectiveFactor array
Signed-off-by: Robert Lefebvre <robert.lefebvre@gmail.com>
2012-02-28 10:49:28 -05:00
rmackay9 8da8ce5b58 ArduCopter - made rate controller filters globals to fix compiler error on Arduino 022 (Arduino 1.0 was fine) 2012-02-28 22:56:26 +09:00
rmackay9 082cc70f1c ArduCopter - Attitude.pde - updated get_rate_roll and get_rate_pitch to use new average filter.
modified all int to int16_t in Attitude.pde
2012-02-28 21:26:37 +09:00
rmackay9 630de04bd1 ArduPlane - updated to use new filter library 2012-02-28 21:03:04 +09:00
rmackay9 701a21ff2f ArduCopter - modified to work with new Filter library 2012-02-28 21:02:44 +09:00
rmackay9 400a4b0bdb AP_RangeFinder - changed example sketch to work with new Filter library 2012-02-28 21:02:10 +09:00
rmackay9 5b89c65d9c Filter - updated example sketch to use modified library 2012-02-28 21:01:35 +09:00
rmackay9 d17a015df1 Filter - added AverageFilter, removed SumFilter
added FilterWithBuffer to allow removal of malloc/free without losing ability to pass around filter objects
2012-02-28 21:01:11 +09:00
Andrew Tridgell 078268528e AP_Param: show numerical value in eeprom dump utility 2012-02-28 09:43:49 +11:00
Andrew Tridgell 701da6c30f AP_Param: fixed v.load() on a sub-element of a AP_Vector3f
this isn't actually used at the moment in APM, but we should get it
right in case someone does try to load a single element of a vector
2012-02-28 09:43:49 +11:00
Andrew Tridgell 34f1ebcfb4 SITL: simulate noise on each ADC channel separately
scale the noise based on the period of the motors
2012-02-28 09:43:49 +11:00
Andrew Tridgell 4cdc0a8c11 SITL: raise the ADC noise level to 8 bits when flying
this is about the level of noise of a aircraft that has a lot of
vibration
2012-02-28 09:43:49 +11:00
Andrew Tridgell b32701e008 IMU: removed unused accel_filtered code 2012-02-28 09:43:49 +11:00
Andrew Tridgell ac44b73951 AP_Param: fixed setting of CAM_P_G in ArduCopter
the variable CAM_P_G has the same prefix as the CAM_P group. We want
to allow for parameters having a common prefix with a group, so we
need to keep searching after we've found a group that matches the
prefix
2012-02-27 10:54:33 +11:00
Andrew Tridgell 7fe4a41c31 AP_Param: make the templating code a bit clearer
add comments on the arguments, and name them in a clearer way
2012-02-27 10:54:33 +11:00
Michael Oborne 6bd3aec55f APM Planner 1.1.43
Add logging system - re andrew radford
move libs
add tlog support to georef images.
experimental antenna tracking - pololu maestro
tweak "follow me" mode, better error checking
update dataflashlog format for ac2
lang change mod - re hazy
remove arduinocpp project
2012-02-27 07:13:23 +08:00
Jason Short f8e9fa8b61 Set loiter rate enabled by default 2012-02-26 12:29:28 -08:00
Jason Short bab1faf644 Added OPtion for non-rate based loiter 2012-02-26 11:33:37 -08:00
Jason Short 9a2be4701f removed Constraint that caused JLN's horizontal drift. 2012-02-26 11:33:37 -08:00
Jason Short 3ce1633157 Added Loiter Rate Tuning 2012-02-26 11:33:37 -08:00
Jason Short 1b7a038043 Added Loiter_rate_tuning 2012-02-26 11:33:36 -08:00
Jason Short 00d5ad9343 Added more Logging for PIDs. 2012-02-26 11:33:36 -08:00
Andrew Tridgell 5bf138fb38 DCM: fixed the sense of the compass GPS test in initial yaw
we were only disabling null offsets when we didn't have a compass,
which doesn't make much sense!
2012-02-26 22:24:45 +11:00
Hazy cf749ef29c Merge branch 'master' of https://code.google.com/p/ardupilot-mega 2012-02-26 19:16:25 +08:00
Hazy 43ed41ca5e APM Planner
fix CAPM update firmware error
2012-02-26 19:14:08 +08:00
rmackay9 747e045193 ModeFilter - corrected shadowed variable compiler warning for drop_high_sample 2012-02-26 17:57:28 +09:00
rmackay9 e01477a7a8 Filter - added AverageFilter - this will be used in place of SumFilter because it removes the possibility of overflows 2012-02-26 17:34:36 +09:00
rmackay9 b345529241 Filter - removed shadowing of variables in constructors for Filter, ModeFilter and SumFilter (sorry tridge!)
increased maximum sample buffer size from 6 to 10
2012-02-26 17:17:46 +09:00
rmackay9 4501c488b4 ArduPlane - added Filter.h to unbreak the build! 2012-02-26 17:05:56 +09:00
rmackay9 41ea8e3eff ArduCopter - added #include <Filter.h> to unbreak the build! 2012-02-26 17:05:41 +09:00
rmackay9 3f0d27ec87 ModeFilter - remove older ModeFilter library (new library is now in Filter directory) 2012-02-26 15:36:23 +09:00
rmackay9 6363da2829 ArduPlane - switch sonar to use new mode filter from filter library 2012-02-26 15:35:42 +09:00
rmackay9 add3133100 ArduCopter - change sonar to use new mode filter from Filter library 2012-02-26 15:35:14 +09:00
rmackay9 00a1b5cd53 AP_RangeFinder - cut over to use new ModeFilter from Filter library 2012-02-26 15:34:50 +09:00
rmackay9 ae8fd43335 Filter - first version of filter library include ModeFilter 2012-02-26 15:34:05 +09:00
rmackay9 f6f05755d9 AP_Mount - #include FastSerial first to allow it to compile under Arduino 1.0 2012-02-26 15:31:56 +09:00
Jason Short e4e8189448 added a simple rest of nav_throttle just in case 2012-02-25 13:31:21 -08:00
Jason Short cd55498a5c increased speed of alt hold I term based on Jani's Logs 2012-02-25 13:31:21 -08:00
Jason Short a3f65b4a23 increased the rate error for more responsive alt hold 2012-02-25 13:31:21 -08:00
Jason Short 68739f3cc4 Based on Jani's latest logs I've made two tweaks to alt hold.
The first is to remove the filter on the throttle output for alt_hold.

The second was to open up the constraint on climb rate. This is to deal with larger than expected disturbances causing altitude changes.
2012-02-25 13:31:21 -08:00
Andrew Tridgell bd2776aedd Compass: use constructor to set initial values for _learn and _use_for_yaw
this ensures they are set if you have MAG_ENABLE==0
2012-02-25 17:36:31 +11:00
Andrew Tridgell 56bb74ef36 DCM: disable compass null offsets when setting initial yaw
we need to ensure the compass null offsets code doesn't see a sudden
yaw change, or it will change the offsets by a large amount very
suddenly
2012-02-25 16:02:24 +11:00
Andrew Tridgell 6b265c5034 ACM: use a NULL gps pointer in DCM init
current DCM API does need a GPS reference passed in, but it can be
NULL
2012-02-25 15:08:49 +11:00
Andrew Tridgell f50f4357ca Compass: catch the case of a user enabling a compass mid-flight
if a compass has not been initialised at startup we can't enable it
mid-flight, as we don't have the orientation
2012-02-25 14:51:09 +11:00
Andrew Tridgell 3fe5b3151b allow MAG_ENABLE to be changed in flight
this disables the compass in DCM if MAG_ENABLE is changed in
flight. Without this we would use a fixed yaw once the compass is
disabled

This also makes sure we don't pass the compass to DCM till we have
done a read. This ensures we have a good compass fix for the initial
DCM heading
2012-02-25 14:51:09 +11:00
Andrew Tridgell 3abe035557 DCM: use the new use_for_yaw() compass method 2012-02-25 14:51:09 +11:00
Andrew Tridgell c3319afadd Compass: added COMPASS_LEARN and COMPASS_USE parameters
these allow you to control if the compass should be used for yaw and
if it should learn its offsets. This is useful for locking in compass
offsets once they are confirmed to be good, and for learning offsets
without using them in flights.

The default is to behave the same as previously, which is
COMPASS_LEARN=1 and COMPASS_USE=1
2012-02-25 14:51:08 +11:00
Andrew Tridgell d1f655beee ACM: check the return of compass.init()
if the compass fails to initialise then don't pass it to DCM, or we
will get no yaw control. Report the init failure to the user.
2012-02-25 14:51:08 +11:00