Jason Short
427dacba70
ACM: Smoother Speed calcs
2012-03-16 14:10:19 -07:00
Jason Short
3038da1dc3
ACM: Softer Loiter Gains
2012-03-16 14:10:19 -07:00
Jason Short
48a0c9a818
ACM: Small fix to nav_throttle to prevent too fast of a landing.
2012-03-16 14:10:19 -07:00
Jason Short
6201bdb8a7
ACM: Fixed comment
2012-03-16 14:10:19 -07:00
Jason Short
1c0b28c956
Fixed Scaling bug in Sonar mixing
2012-03-16 14:10:19 -07:00
Jason Short
7153b94ade
ACM: Disabled D term experiment for Loiter until more testing
2012-03-15 19:20:03 -07:00
Jason Short
a52a14bf12
Tune down Loiter_P a hair
2012-03-15 19:17:27 -07:00
Robert Lefebvre
be3fe36c52
Small fix on the Traditional Helicopter Collective-Yaw compensation calculation.
2012-03-15 20:14:18 -04:00
rmackay9
68e37774a6
ArduCopter - removed #define AUTOMATIC_DECLINATION ENABLED line to ensure users don't try and enable it because it needs a bit more work before it's ready for general use
2012-03-15 21:58:42 +09:00
analoguedevices
86eff20d5d
Rev'ed version number to 2.5. Added more credits
2012-03-15 02:38:54 +00:00
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
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
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
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
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
Jason Short
62c2aa4924
ACM: Added Loiter D tuning
2012-03-10 14:17:57 -08:00
Jason Short
cb8729109c
ACM: Added Loiter_D for tuning as #23
2012-03-10 14:17:16 -08:00
Jason Short
0671bb9168
ACM: Firmware rev
2012-03-10 12:45:03 -08:00
Jason Short
f9d0dc9daa
ACM: disabled auto_calibration until more testing can be done
2012-03-10 12:44:49 -08:00
Jason Short
5ad7320505
ACM: changed alt hold initialization of altitude to be immediate
2012-03-10 12:44:18 -08:00
Jason Short
450f89ec5d
ACM: Added note about scaling rates
2012-03-10 12:43:28 -08:00
Jason Short
eb53200179
ACM: Altered the scaling speed for altitude changes for faster rises.
2012-03-10 12:43:01 -08:00
Jason Short
204f9957b0
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
83729d0f75
ACM: decreased rate P for alt hold to remove bumpy repsonse
2012-03-10 12:41:06 -08:00
Jason Short
220d5a1c6e
ACM: Increased the altitude error P for smoother alt hold response
2012-03-10 12:40:44 -08:00
Jason Short
4b703e8842
decreased the loiter rate P for overshoot
2012-03-10 12:40:07 -08:00
Jason Short
fc32da0d2e
ACM: increased the available rate error constrain, it was too low
2012-03-10 12:39:16 -08:00
Jason Short
bd4835a1b2
ACM: removed the experiment for rate error.
2012-03-10 12:38:29 -08:00
Jason Short
29d6085bab
added Force_new_altitude call for alt hold
2012-03-10 12:37:54 -08:00
Jason Short
4ba600c0c5
upped throttle manual boost to 225
2012-03-10 12:37:28 -08:00
rmackay9
afc4aceb32
ArduCopter - fixed small compile warning about unused x_iterm and y_iterm in navigation.pde
2012-03-11 01:27:58 +09:00
rmackay9
c7480f2281
ArduCopter - fix to dataflash logging of Mag heading
2012-03-11 01:27:29 +09:00
Andrew Tridgell
d75e883fe8
GCS: get_integrator() is now get_gyro_drift() in DCM
2012-03-10 10:34:33 +11:00
Andrew Tridgell
9a06d35772
make 'ENABLE' and 'ENABLED' mean the same things
...
users get this wrong far too often!
2012-03-10 10:34:33 +11:00
Andrew Tridgell
828ad7625b
ACM: removed the ADC filtering code
2012-03-10 10:34:32 +11:00
Andrew Tridgell
1016d3c95d
ACM: removed quaternion special cases in CLI code
2012-03-10 10:34:31 +11:00
Andrew Tridgell
8393c0299b
ACM: removed the DCM tuning overrides
...
not needed now that DCM scales with deltat
2012-03-10 10:34:31 +11:00
Andrew Tridgell
7291dfc25a
ACM: removed the special case for quaternions in GCS code
2012-03-10 10:34:31 +11:00
Andrew Tridgell
d6cfc51ae4
ACM: no need to fetch offsets at startup
...
AP_Param handles this
2012-03-10 10:34:31 +11:00
Andrew Tridgell
ef771fecdc
ACM: removed a lot of the special case code for quaternions
2012-03-10 10:34:31 +11:00
Andrew Tridgell
69c29d35ce
ACM: change DCM loop to 100Hz
...
On my APM2 quad this seems to give better results
2012-03-10 10:34:31 +11:00
Andrew Tridgell
2596acc8eb
ACM: removed incorrect mode definition
2012-03-10 10:34:30 +11:00
Andrew Tridgell
7a9b3d3388
Quaternion: show "Quaternion test" on startup if enabled
2012-03-10 10:34:29 +11:00
Andrew Tridgell
7e4c8592ff
ACM: make it possible to build ArduCopter with quaternions
2012-03-10 10:34:29 +11:00
Andrew Tridgell
9bff4e2c4c
ACM: only call the fast loop if the imu has new data
...
this prevents us spinning waiting for the sensors to gather some data
2012-03-10 10:34:29 +11:00
Andrew Tridgell
367947fd33
HWSTATUS: if we don't know the voltage, report it as zero
...
this will tell us if board_voltage() is really working
2012-03-10 10:34:28 +11:00
Andrew Tridgell
64cc04ae09
ACM: adjust yaw drift correction constants
...
this should give the compass a bit more authority
2012-03-10 10:34:28 +11:00
Andrew Tridgell
a0ce202d87
ACM: added SIMSTATE, DCM and HWSTATUS messages to ACM
2012-03-10 10:34:27 +11:00
Jason Short
486c56ce41
Consolidated Barometer pressure sensing to a single filter based on Randy's new filter class.
2012-03-08 23:13:04 -08:00
Jason Short
c8e9d57567
temp remove filter for quad motors during testing. It's unlikely this filter did anything at all to be honest.
2012-03-06 22:23:06 -08:00
Jason Short
730476fdfd
ACM -
...
Implemented automatic ranging of Alt Hold gains. Works well in simulator and testing.
- alt hold estimation moved to 50 hz
- simple fixed observer calc for smooth and accurate climb rates useful for derivative calcs
- auto-reset of the I term by moving I value into throttle value. This recalcs the gain every 20seconds for battery drainage compensation in long flights.
- remove filtering for Nav_throttle
- added a way to lower the gain on nav_throttle for descents by / climb_rate error by 2 - seems to work OK and keeps copter from dropping like a rock when the Baro drifts quickly lower.
- removed old throttle hold set point code
- made throttle override for alt hold +- 200 vs 250
2012-03-06 22:22:14 -08:00
Jason Short
c26eb6afcc
ACM: Updated config values
2012-03-06 22:12:24 -08:00
rmackay9
8b256cf924
ArduCopter - fix for stability patch and motor filter meant to deal with engines tendency to speed up faster than they slow down
2012-03-06 23:20:30 +09:00
rmackay9
72a775cc2a
ArduCopter - fixed typo in motor filtering for octa, octa_quad and y6 that is suppose to correct for props speeding up faster than they slow down.
2012-03-06 22:19:19 +09:00
rmackay9
706bea5992
ArduCopter - added OCTA_QUAD_FRAME to comments in APM_Configh.h to help user select frame when compiling with arduino
2012-03-06 22:15:02 +09:00
Jason Short
46d7da4d14
Added define for throttle range for altitude changes, updated it to 250
2012-03-05 22:12:53 -08:00
Robert Lefebvre
a480b32400
Added support for TradHeli H1 swashplate type. Added new param heli_h1_swash_enabled.
...
Signed-off-by: Robert Lefebvre <robert.lefebvre@gmail.com>
2012-03-03 08:14:14 -05:00
Andrew Tridgell
0ff44563ec
ACM: use g.rc_speed for all APM_RC.SetFastOutputChannels calls
2012-03-02 17:57:08 +11:00
Andrew Tridgell
0fc646d666
ACM: set default RC fast speed to 400Hz
2012-03-02 17:57:08 +11:00
Andrew Tridgell
e213f6780e
ACM: added RC_SPEED MAVLink parameter
...
this will set the speed for APM_RC.SetFastOutputChannels()
2012-03-02 17:57:08 +11:00
Andrew Tridgell
f781bd735b
ACM: fixed Parameters.h to avoid duplicate keys
...
unfortunately everyone needs to reload
2012-03-02 15:48:28 +11:00
Andrew Tridgell
cb874d6097
ACM: added board_voltage()
2012-03-02 15:48:28 +11:00
Robert Lefebvre
e49c2d2871
Rescale TradHeli roll_out and pitch_out into the min and max ranges to provide linear motion across the input range instead of stopping when the input hits the constrain value. These calculations are based on an assumption of the user specified roll_max and pitch_max coming into this equation at 4500 or less, and based on the original assumption of the total g.heli_servo_x.servo_out range being -4500 to 4500.
...
Signed-off-by: Robert Lefebvre <robert.lefebvre@gmail.com>
2012-03-01 22:04:50 -05:00
Jason Short
7c09e4a5e6
added stab_d gain scheduling - off by default
2012-02-28 20:16:40 -08:00
Jason Short
a387956814
added stab_d gain scheduling
2012-02-28 20:16:40 -08:00
Jason Short
ceef8070ac
added stab_d gain scheduling
2012-02-28 20:16:40 -08:00
Jason Short
b76c4ecb22
added stab_d gain scheduling
2012-02-28 20:16:40 -08:00
Jason Short
efdf6ee79f
added option for stab_d gain scheduling
2012-02-28 20:16:40 -08:00
Jason Short
ca34d7b7c2
Added test for stab_d gain scheduling.
2012-02-28 20:16:40 -08:00
Pat Hickey
16ed16f403
Cleanup: rm ArduCopter/GCS_Mavlink\ copy.txt
...
* Not needed, but we can always checkout an old version if it is.
Hi Pat,
This may have been my WIP for the Mavlink 1.0 conversion. I tried to
give Tridge a head start on it. I've made small updates to it in
parallel to the current Mavlink. You can delete it as he would have used
it by now if he felt it was helpful.
Jason
On Feb 28, 2012, at 4:08 PM, Pat Hickey wrote:
It looks like this file was checked in by accident, possibly, but you've
made a few small changes to it since creating it.
Is it important? Should we get rid of it?
Git log of file below.
Thanks
Pat
...
2012-02-28 16:28:27 -08:00
Pat Hickey
ff0fc26484
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
76c3cd88f0
Added heli_collectiveFactor array
...
Signed-off-by: Robert Lefebvre <robert.lefebvre@gmail.com>
2012-02-28 10:49:28 -05:00
rmackay9
744e5b8c60
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
4a0989f95d
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
17d94b61ed
ArduCopter - modified to work with new Filter library
2012-02-28 21:02:44 +09:00
Jason Short
ba68d6d8a1
Set loiter rate enabled by default
2012-02-26 12:29:28 -08:00
Jason Short
e06d8142c1
Added OPtion for non-rate based loiter
2012-02-26 11:33:37 -08:00
Jason Short
6e53949c2a
removed Constraint that caused JLN's horizontal drift.
2012-02-26 11:33:37 -08:00
Jason Short
517172ba20
Added Loiter Rate Tuning
2012-02-26 11:33:37 -08:00
Jason Short
0ce0c7c262
Added Loiter_rate_tuning
2012-02-26 11:33:36 -08:00
Jason Short
eac77504a3
Added more Logging for PIDs.
2012-02-26 11:33:36 -08:00
rmackay9
8193c786ef
ArduCopter - added #include <Filter.h> to unbreak the build!
2012-02-26 17:05:41 +09:00
rmackay9
69132e0fe7
ArduCopter - change sonar to use new mode filter from Filter library
2012-02-26 15:35:14 +09:00
Jason Short
f27e9f9ca1
added a simple rest of nav_throttle just in case
2012-02-25 13:31:21 -08:00
Jason Short
cc5ab4aebf
increased speed of alt hold I term based on Jani's Logs
2012-02-25 13:31:21 -08:00
Jason Short
1ce267f904
increased the rate error for more responsive alt hold
2012-02-25 13:31:21 -08:00
Jason Short
a924c3685e
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
e2bbc795ad
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
0248b48d30
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
864ed1a87f
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
Andrew Tridgell
698749dd92
ACM: don't pass a gps pointer to DCM
...
after discussion with Randy, we don't want ArduCopter to fall back to
GPS for yaw when the compass becomes unhealthy. So we shouldn't pass
the gps object to the DCM code at all.
2012-02-25 14:51:08 +11:00
Andrew Tridgell
690dc9052a
GCS: force scalar type in copy_name()
...
this enables access to compass offsets over MAVLink
2012-02-25 11:37:20 +11:00
Andrew Tridgell
2e9105c68a
AP_Param: added special handling for Vector3f
...
We would like to be able to use Vector3f as a parameter while exposing
the individual elements of the vector as MAVLink parameters. This
change to AP_Param makes that possible, by giving AP_Vector3f a dual
personality
2012-02-25 11:37:20 +11:00
Jason Short
1e254cbca0
Compass heading added to ATT log
2012-02-24 12:11:15 -08:00
rmackay9
57e5eee8c8
TradHeli - increase max yaw input to 45 degrees
2012-02-24 20:18:40 +09:00
Jason Short
385828824d
updated Gains for Marco's loiter test
2012-02-23 22:03:26 -08:00
Jason Short
24345d4f43
Loiter updates
2012-02-23 22:03:26 -08:00
Andrew Tridgell
1cd3172954
ACM: ensure update_trig() doesn't cause NAN values for cos_roll/cos_pitch
...
the DCM matrix could have a value over 1.0 for c.x due to rounding
errors
2012-02-24 11:52:55 +11:00
Jason Short
364afe8da0
added a constraint to D term
2012-02-23 09:14:44 -08:00
Andrew Tridgell
95ef9206dc
DCM: renorm_sqrt_count is now called renorm_range_count
2012-02-23 08:16:08 +11:00
Jason Short
c7c16a5b0f
Emile's Fixes
2012-02-22 10:27:34 -08:00
Jason Short
4483f19f85
Marco's Hexa Motors
2012-02-22 09:55:44 -08:00
Jason Short
242f54793c
revved a version
2012-02-22 09:00:42 -08:00
Jason Short
729c824809
made timer unsigned
2012-02-21 21:49:03 -08:00
Jason Short
42b5d47f7b
commented out control mode debug print
2012-02-21 21:48:07 -08:00
Jason Short
30efbae0e9
removed old comments
2012-02-19 14:21:27 -08:00
Jason Short
265c5255a3
Added slow_wp default in AP mode
2012-02-19 13:15:40 -08:00
Jason Short
336441b109
reset slow_WP option at mode switch
2012-02-19 13:13:42 -08:00
Jason Short
81a861c8ac
Added slow wp option in calc_desired_speed
2012-02-19 13:13:21 -08:00
Jason Short
33d4d52a6b
set Slow WP option for RTL in Auto mode
2012-02-19 13:12:23 -08:00
Jason Short
cae49b3543
Added "slow WP" option for RTL.
2012-02-19 13:11:59 -08:00
Jason Short
b54d08f410
Updated manual throttle control during throttle hold
2012-02-19 12:40:51 -08:00
Jason Short
bcd5129f9b
added workaround for resetting alt.
2012-02-19 12:40:08 -08:00
Jason Short
fa32b084bd
Added SW test for Manual Boost
2012-02-19 12:39:40 -08:00
Randy Mackay
9fabdb5797
TradHeli - change throttle range back to 0~1000 (was temporarily changed to be 1250~850 which limited the range of the swash plate's vertical movements)
2012-02-20 00:27:12 +09:00
Randy Mackay
e146f225b1
ArduCopter - remove unnecessary block for next GPS value before saving home location
2012-02-19 15:38:40 +09:00
Andrew Tridgell
df8a557630
AP_Param: update users of AP_Param for ParamToken
2012-02-19 17:05:28 +11:00
Andrew Tridgell
12327eb2a9
Heli: fixed some 'used before initialised' warnings
2012-02-19 16:34:43 +11:00
Jason Short
028de5d2c5
Axis lock beta (off by default)
2012-02-18 21:16:19 -08:00
Jason Short
885710fce6
updated max throttle define
2012-02-18 21:14:13 -08:00
Jason Short
05024cc06c
Change 800 to a define
2012-02-18 21:13:28 -08:00
Jason Short
04b70ffdc2
added Axis_Lock params
2012-02-18 21:13:06 -08:00
Jason Short
ff2b4ecb7a
updated throttle range
2012-02-18 21:11:06 -08:00
Jason Short
1e37a0ec17
added a limit to range output
2012-02-18 21:08:17 -08:00
Jason Short
1b46daa12e
some better defaults for JDrones
2012-02-18 14:23:21 -08:00
Randy Mackay
b92d7aaad5
ArduCopter - fix for yaw control on Octa Quad Plus frame.
2012-02-18 22:04:09 +09:00
Randy Mackay
232359186e
TradHeli - fixed small parameter bug affecting helis. The servo parameters were declared as GSCALAR instead of GGROUP in Parameters.pde.
...
also renamed heli parameters from _coll_ to the more descriptive _collective_
2012-02-18 20:57:51 +09:00
Randy Mackay
b64c0da003
ArduCopter - updated version to 2.4
2012-02-18 18:44:29 +09:00
Andrew Tridgell
6929226b96
ACM: expanded EEPROM parameter area by 256 bytes
2012-02-18 10:51:57 +11:00
Andrew Tridgell
718a5b70e3
AP_Param: fixed saving of sensor calibration
...
this fixes the saving of the accel and gyro calibration to EEPROM,
which was initially broken by the AP_Param conversion
2012-02-18 10:51:57 +11:00
Jason Short
b532cb91b1
added Rate_D tuning value
2012-02-17 15:23:59 -08:00
Jason Short
0075901f77
upped rate loop to 250hz
2012-02-17 15:23:59 -08:00
Jason Short
5218220f0f
re-implemented WII Dampening filter for Marco.
2012-02-16 22:38:23 -08:00
Jason Short
b052dab80d
Adjusted gains to move closer to Marco's tests
2012-02-16 22:19:39 -08:00
Jason Short
17c6c7b294
added extra gain logging
2012-02-16 22:09:22 -08:00
Jason Short
908ca4e915
scaled X velocity
2012-02-16 22:09:22 -08:00
Jason Short
bc1593e89c
cast to float
2012-02-16 22:09:21 -08:00