Jason Short
1ecca36dd0
Fixed Scaling bug in Sonar mixing
2012-03-16 14:10:19 -07:00
Jason Short
0c6a87db3f
ACM: Disabled D term experiment for Loiter until more testing
2012-03-15 19:20:03 -07:00
Jason Short
ce14ef1b2b
Tune down Loiter_P a hair
2012-03-15 19:17:27 -07:00
Robert Lefebvre
0bc40f51fb
Small fix on the Traditional Helicopter Collective-Yaw compensation calculation.
2012-03-15 20:14:18 -04:00
rmackay9
eea8d67a1e
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
eb530a2045
Rev'ed version number to 2.5. Added more credits
2012-03-15 02:38:54 +00:00
Jason Short
59fb1f3542
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
50b4c07261
Lowering the D filter for less latency and less oscillation.
2012-03-13 12:58:46 -07:00
Jason Short
72d03a8046
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
0edc1020ac
ACM: Loiter D performance updates
2012-03-13 10:23:31 -07:00
Jason Short
6edad4d9ef
ACM: Larger filter for Loiter D
2012-03-13 10:23:30 -07:00
Jason Short
953b93293e
ACM: removing old define
2012-03-12 13:11:30 -07:00
Jason Short
580c5e109e
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
38153f15e0
ACM: Made Loiter_D 0 by default. Accidentally left it on by default.
2012-03-12 10:37:15 -07:00
Jason Short
56d2b9ef05
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
5c3cb1c5d0
ACM: removed Filtering code for motors in Quad for testing
2012-03-11 23:21:49 -07:00
Jason Short
d9ccd4f6bd
ACM: made same as Loiter I
2012-03-11 23:21:49 -07:00
Jason Short
e279106b44
ACM: Tuning based on flights today
2012-03-11 23:21:49 -07:00
Jason Short
38a60df189
ACM: Rate_d filter for PID loop of Loiter.
2012-03-11 23:21:49 -07:00
Jason Short
2ac29effe9
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
7cf635889d
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
1e47ab26f2
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
2e1cacd67f
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
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
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
f39d8dbde8
GCS: get_integrator() is now get_gyro_drift() in DCM
2012-03-10 10:34:33 +11:00
Andrew Tridgell
4f739ea28f
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
a874f920d5
ACM: removed the ADC filtering code
2012-03-10 10:34:32 +11:00
Andrew Tridgell
e2c525434a
ACM: removed quaternion special cases in CLI code
2012-03-10 10:34:31 +11:00
Andrew Tridgell
e870e7bd82
ACM: removed the DCM tuning overrides
...
not needed now that DCM scales with deltat
2012-03-10 10:34:31 +11:00
Andrew Tridgell
13bddf05b0
ACM: removed the special case for quaternions in GCS code
2012-03-10 10:34:31 +11:00
Andrew Tridgell
1547977e1b
ACM: no need to fetch offsets at startup
...
AP_Param handles this
2012-03-10 10:34:31 +11:00
Andrew Tridgell
34d25ab298
ACM: removed a lot of the special case code for quaternions
2012-03-10 10:34:31 +11:00
Andrew Tridgell
e780dd2b44
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
756a91a3ee
ACM: removed incorrect mode definition
2012-03-10 10:34:30 +11:00
Andrew Tridgell
04826065ef
Quaternion: show "Quaternion test" on startup if enabled
2012-03-10 10:34:29 +11:00
Andrew Tridgell
1591d41b33
ACM: make it possible to build ArduCopter with quaternions
2012-03-10 10:34:29 +11:00
Andrew Tridgell
bc81d8e6ac
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
a54d6f744e
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
9393b21a8d
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
b07a3eb966
ACM: added SIMSTATE, DCM and HWSTATUS messages to ACM
2012-03-10 10:34:27 +11:00
Jason Short
13e9608fb8
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
df812dd78a
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
43b3e1ccd1
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
5117ddff26
ACM: Updated config values
2012-03-06 22:12:24 -08:00
rmackay9
8717d7dd7c
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
8af43c4a19
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
29aea35eae
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
fe5612d38b
Added define for throttle range for altitude changes, updated it to 250
2012-03-05 22:12:53 -08:00
Robert Lefebvre
a7e0fc7774
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
3745dfd59f
ACM: use g.rc_speed for all APM_RC.SetFastOutputChannels calls
2012-03-02 17:57:08 +11:00
Andrew Tridgell
91c3f993b4
ACM: set default RC fast speed to 400Hz
2012-03-02 17:57:08 +11:00
Andrew Tridgell
bfca928211
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
1e2b57410c
ACM: fixed Parameters.h to avoid duplicate keys
...
unfortunately everyone needs to reload
2012-03-02 15:48:28 +11:00
Andrew Tridgell
fcb1b9ba95
ACM: added board_voltage()
2012-03-02 15:48:28 +11:00
Robert Lefebvre
c84d864cd6
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
4e2a54566b
added stab_d gain scheduling - off by default
2012-02-28 20:16:40 -08:00
Jason Short
27f6afd178
added stab_d gain scheduling
2012-02-28 20:16:40 -08:00
Jason Short
a096292edb
added stab_d gain scheduling
2012-02-28 20:16:40 -08:00
Jason Short
6ca8aeecf3
added stab_d gain scheduling
2012-02-28 20:16:40 -08:00
Jason Short
4b1d847a3a
added option for stab_d gain scheduling
2012-02-28 20:16:40 -08:00
Jason Short
4ef4a19f8e
Added test for stab_d gain scheduling.
2012-02-28 20:16:40 -08:00
Pat Hickey
ccb8c31966
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
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
701a21ff2f
ArduCopter - modified to work with new Filter library
2012-02-28 21:02:44 +09: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
rmackay9
41ea8e3eff
ArduCopter - added #include <Filter.h> to unbreak the build!
2012-02-26 17:05:41 +09:00
rmackay9
add3133100
ArduCopter - change sonar to use new mode filter from Filter library
2012-02-26 15:35:14 +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
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
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
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
Andrew Tridgell
ce5c7c2c85
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