Robert Lefebvre
e8d619acad
ACM: Begin creation of TradHeli rate control.
...
May affect Multi-Rotors.
2012-11-26 21:02:41 -05:00
Robert Lefebvre
95eeda7cf7
ACM: TradHeli
...
Removing Angle Boost function.
Does not make sense for helis due to aerodynamics. Can cause more problems than it solves.
2012-11-26 18:58:21 -05:00
Robert Lefebvre
6ffc115236
Changes to get_throttle_rate()
...
Commented out a bit of code that is not used currently
Change the output constrains to #defines so they can be easily changed, particularly for use in TradHeli.
2012-11-21 17:11:38 -05:00
rmackay9
07a7a1acd8
ArduCopter: replaced digitalRead and digitalWrite with faster calls
...
improved performance logging to dataflash
2012-11-19 01:16:07 +09:00
Jason Short
5f57678a9c
ACM Nav_throttle- removed sign inversion
2012-11-16 17:38:57 -08:00
rmackay9
ac5dcc8d49
ArduCopter: remove last remanants of rate_d to resolve compiler warning of unused variables
2012-11-12 12:35:58 +09:00
Jason Short
69db678252
ACM: attitude.pde - adjusted the FF of the alt hold algorithm, the old way was pretty crap. increased the output range of rate controller.
2012-11-11 18:22:54 -08:00
Jason Short
5ad38a32bf
ACM : Attitude : added nav param reset
2012-11-09 22:15:15 -08:00
Jason Short
3c78c4a7a3
ACM : Attitude.pde added ap bitfield for failsafe bit
2012-11-09 22:15:15 -08:00
Jason Short
a42c6bb609
ACM : Attitude.pde removed stabilize D
2012-11-09 22:15:15 -08:00
rmackay9
14cbe37d3e
ArduCopter: remove unused get_stabilize_rate_yaw
2012-11-07 23:28:25 +09:00
rmackay9
1f801714e8
ArduCopter: incorporate new version of inertial navigation
...
Moved several navigation functions from ArduCopter.pde to navigation.pde
2012-11-07 19:21:31 +09:00
rmackay9
a1b4ec6d0e
ArduCopter: move to use new INS library instead of IMU library
2012-11-07 19:21:09 +09:00
Jason Short
8a8ed7a711
ACM : Formatting
2012-10-28 12:12:38 -07:00
rmackay9
4877348c49
ArduCopter: remove some unhelpful constraints on nav_lat and nav_lon.
...
Increase other constraints from 3200 to 32000. These constraints are there to ensure int32_t do not cause an overflow when added to an int16_t.
2012-10-24 22:04:35 +09:00
rmackay9
5e8043fd9c
ArduCopter: changed ACRO_ROLL_STABILIZE and ACRO_PITCH_STABILIZE to parameters
...
Changes on behalf of Leonard Hall
2012-10-23 21:30:50 +09:00
Jason Short
a0752dc7dc
ACM Acceleration management
...
removed unused waypoint_radius var
removed slow_wp
updated speed management system to maintain a constant acceleration or deceleration of 1m/s
changed version to 2.8.1a
2012-10-21 14:32:39 -07:00
rmackay9
583f2e49a3
ArduCopter: integrated Leonard Hall's improved ACRO mode
2012-10-18 23:24:34 +09:00
rmackay9
b944d9df26
ArduCopter: bug fix in earthframe->body frame translation.
...
Provided by Leonard Hall.
Also removed large unnecessary comments.
2012-10-17 19:15:25 +09:00
rmackay9
5fbe53a84d
ArduCopter: bug fix for get_yaw_rate_stabilized_ef
...
Provided by Leonard Hall
2012-10-17 10:18:24 +09:00
LeonardTHall
d7b7e1cefa
New Yaw controller using rate feed forward and stabilize.
...
Signed-off-by: LeonardTHall <LeonardTHall@gmail.com>
2012-10-15 11:37:49 +09:00
rmackay9
997fe85880
ArduCopter: fixed acro mode
...
Changes included:
Removing earth frame roll_rate_trim, pitch_rate_trim and yaw_rate_trim.
Switch ACRO mode to use YAW_ACRO instead of YAW_HOLD.
Changed YAW_ACRO to use stabilize yaw when axis_enabled.
Reset ACRO roll, pitch and yaw targets to current attitude when first entering ACRO.
2012-10-14 17:47:46 +09:00
rmackay9
2848bb8ee6
ArduCopter: freeze I terms if motor limits breached
2012-10-11 17:20:00 +09:00
rmackay9
7cf60e61b4
ArduCopter: bug fix in earth-frame to body-frame conversion for roll
2012-10-07 19:14:40 +09:00
rmackay9
05fd04134a
ArduCopter: fix heli build
2012-10-06 13:46:19 +09:00
rmackay9
e375a27058
ArduCopter: prioritise rate controllers, rate controller targets converted to body frame
2012-10-03 14:10:31 +09:00
rmackay9
361ff0c08f
ArduCopter: allow PID logging of throttle. Make get_angle_boost actually use parameter passed in.
2012-09-18 23:19:23 +09:00
uncrustify
f783ace0de
uncrustify ArduCopter/Attitude.pde
2012-08-21 19:19:50 -07:00
Jason Short
0a25a189eb
ACM | Attitude.pde - removed next_wp.alt reset.
2012-08-18 12:25:48 -07:00
Jason Short
bc631b656e
ACM: Added a more sane limit to Angle boost
2012-08-18 09:04:21 -07:00
rmackay9
87d5b5944d
ArduCopter: commented out get_acro_yaw2 function to reduce compiler warnings
2012-08-18 16:03:49 +09:00
rmackay9
92688a793a
ArduCopter: fixed compiler warning related to shadowing of control_roll and control_pitch in get_of_roll and get_of_pitch.
2012-08-18 11:48:12 +09:00
Jason Short
9cee1b2fa0
ACM : Upped Yaw Limit to 2200
2012-08-16 15:38:46 -07:00
rmackay9
36f947acb9
ArduCopter: changed all "int" to "int16_t" and a few "long"s to "int32_t".
...
Also moved "simple_counter" variable from global scope to the "update_simple_mode" function which is the only place that it's actually used.
2012-08-16 20:04:46 +09:00
rmackay9
a72bf6ef57
ArduCopter: replaced abs with labs as required in a few places.
...
Also fixed a small bug in the get_stabilize_pitch function in which it was using the roll (instead of pitch) to decide whether it should let the i term build-up or not.
2012-08-16 17:51:09 +09:00
Jason Short
3ad08b7ffc
ACM : Added larger WP radius for fast waypoints so we don't loose speed angling in on the WP at the last second.
2012-08-10 10:02:32 -07:00
Jason Short
132ac7d412
ACM : attitude.pde - removed unused function
2012-08-09 17:04:12 -07:00
Jason Short
5d756decd2
ACM : Attitude.pde
...
yaw limit, moved toy code out of att to it's own pre
2012-08-09 16:59:43 -07:00
Jason Short
8c47b0c087
ACM: Toy mode fix - Pitch flipped the sign on roll/Yaw coupling.
2012-07-30 15:43:05 -07:00
Jason Short
613849a8df
Arducopter: Force nav_yaw to match auto_yaw when starting a mission
2012-07-19 22:59:03 -07:00
Jason Short
610d1d1795
Arducopter: deprecated the get_nav_yaw_offset function.
...
Small Toy mode updates
2012-07-19 17:41:52 -07:00
Jason Short
aa645afe2b
Arducopter: Altitude change nav
...
Split altitude hold into two controls to parallel navigation.
2012-07-18 22:57:10 -07:00
Jason Short
584e7dcda4
Arducopter: Removed Yaw Limit for Quads
2012-07-14 14:06:34 -07:00
Jason Short
44b16b7b61
Arducopter: Temp reversion to old Yaw controller.
2012-07-14 12:26:13 -07:00
Robert Lefebvre
59e133235f
Implementing Yaw Fix. Tried to blend with Jason's changes.
2012-07-14 00:24:22 -04:00
Jason Short
6f9e2bf3a8
Arducopter: Toy mode update
...
Removed debugging printfs,
lowered roll response - was too high in test flights
made roll limit 2500 for testing
2012-07-11 17:46:06 -07:00
Jason Short
1feaaa4655
Arducopter: Toy mode refinements
2012-07-10 21:53:38 -07:00
Jason Short
226bba48a6
Toy Mode Yaw Rate fix
2012-07-09 13:13:32 -07:00
Jason Short
c62706ad06
Toy Mode: Yaw performance update.
2012-07-03 17:14:54 -07:00
Jason Short
16b25a26c2
Toy Mode: removed virtual WP, copter now just goes into auto_loiter when not holding the sticks.
2012-07-02 17:52:38 -07:00
Jason Short
e0b3309500
Yaw mode:
...
Improved hybrid Yaw mode:
- uses rate controller rather than as fast as possible
- waits 1.5 seconds before entering hold
- bounce free
2012-07-01 13:40:12 -07:00
Jason Short
3ce867508b
Attitude.pde: Toy mode logic
2012-06-29 21:20:27 -07:00
Jason Short
eeab4c5363
Attitude.pde: Turned off boost_p for nav_throttle based on Testing feedback from Marco.
2012-06-26 10:39:42 -07:00
Jason Short
812bf7d874
Attitude.pde - Added small boost to alt hold for takeoff.
2012-06-25 23:12:19 -07:00
Robert Lefebvre
1064dcbd34
Open up constraint on Rate Yaw Output for all copters.
2012-06-22 10:06:01 -04:00
Jason Short
27e0aee03f
Small fix to angle boost - increases by about 20% to deal with inefficiencies of non-downward thrust
2012-06-20 08:47:47 -07:00
Jason Short
c42f9ece43
Inertial Control
...
I added inertial navigation based on the simulator data. This is an option only available if you compile with Arduino and set
#define INERTIAL_NAV ENABLED
in the APM_Config.h file.
This has been tested for one real flight and did not crash my quad, but consider it very alpha. The quad may be unpredictable at first until the error correction fixes poorly calibrated accels. Be Careful.
Most of the real work is in the inertia file, but the error correction, new variable defines and calibration calls are sprinkled throughout.
The Log should record RAW messages with special debugging values.
2012-06-13 22:34:45 -07:00
rmackay9
65050775e1
ArduCopter: made Robert's new yaw method optional (off by default).
...
Add this line to APM_Config.h to enable Robert's yaw
#define ALTERNATIVE_YAW_MODE ENABLED
2012-06-13 21:50:16 +09:00
Robert Lefebvre
c5916a8b4d
Opening up the Yaw Rate constraint for Trad Heli.
2012-06-07 22:40:25 -04:00
Robert Lefebvre
e2496181ff
Yaw Fix
...
Modified Nav_Yaw controller to better track intended heading changes.
2012-06-07 17:15:33 -04:00
Jason Short
a9610a0761
Stabilization patches
...
removed Angle error limit for stabilization
constricted Iterm to +- 5° error and limited the implementation to when the quad is +- 5° from center
doubled the output limit for Rate controller.
increased default Rate_P gain to .18 with matching Rate_D of .004
Tested in the SIM and in backyard. dramatically increases performance and quad no longer overshoots and flips when pushed hard.
2012-06-05 16:41:44 -07:00
Jason Short
9ab06c5542
Moved PID logging counter into define
2012-06-03 11:13:50 -07:00
Jason Short
2311d52d37
Renamed some variables to clarify functionality.
2012-05-29 12:42:37 -07:00
Jason Short
1a5e2f4e37
Attitude.pde - Removed rate limit based on SIM flights. These should never have been in place and seriously detriment Acro flight.
2012-05-21 09:58:23 -07:00
rmackay9
533772339e
ArduCopter - Attitude.pde - added logging of optical flow pid controller
2012-04-21 20:17:12 +09:00
rmackay9
df85051574
ArduCopter - added dataflash logging of roll and pitch rate controllers
2012-04-08 10:19:20 +09:00
rmackay9
aa4085183c
ArduCopter - Attitude.pde - moved heli_get_angle_boost from heli.pde (which will be removed) to Attitude.pde. In fact we should combine heli_get_angle_boost and the regular get_angle_boost.
2012-04-04 22:51:39 +09:00
Andrew Tridgell
e0c9ab5a29
ACM: fixed heli build
2012-03-27 15:37:25 +11:00
Andrew Tridgell
47f9dfd125
ACM: fixed the build on the 1280
2012-03-27 15:37:24 +11:00
rmackay9
1f4cfb9333
ArduCopter - added PID log type. Implemented for Yaw stabilize and rate controllers.
2012-03-25 16:09:08 +09:00
Andrew Tridgell
547b4ed55b
AHRS: adapt ArduCopter for new AHRS framework
2012-03-19 17:29:02 +11:00
Jason Short
a0717f082e
ACM: Attitude.pde - consolidated wind I term resets
2012-03-18 22:31:21 -07: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
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
a387956814
added stab_d gain scheduling
2012-02-28 20:16:40 -08: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
Jason Short
1ce267f904
increased the rate error for more responsive alt hold
2012-02-25 13:31:21 -08:00
rmackay9
57e5eee8c8
TradHeli - increase max yaw input to 45 degrees
2012-02-24 20:18:40 +09:00
Jason Short
364afe8da0
added a constraint to D term
2012-02-23 09:14:44 -08:00
Jason Short
265c5255a3
Added slow_wp default in AP mode
2012-02-19 13:15:40 -08:00
Jason Short
5218220f0f
re-implemented WII Dampening filter for Marco.
2012-02-16 22:38:23 -08:00
Jason Short
632cc783a1
cast D term to float just in case
2012-02-16 22:09:21 -08:00
Jason Short
3d63bb6cd4
Added acro_p to the params
2012-02-15 11:29:25 -08:00
Jason Short
fcb24ee17d
Added Acro_P
2012-02-15 09:10:14 -08:00
Andrew Tridgell
3b4cae3cc3
adapted main ACM code for AP_Param
2012-02-13 16:22:52 +11:00
Jason Short
c64d781dce
get_acro_yaw added
2012-02-10 22:32:55 -08:00
Jason Short
f40d40b0f9
Acro fix - we had lost the scaling of Acro mode in 2.1. This restores that.
2012-02-09 22:22:00 -08:00
Randy Mackay
b851d39eaa
OptFlow - reenable OF_LOITER pid controller and reduce I term
2012-02-01 08:04:18 +09:00
Jason Short
bf2cc6072d
limiting alt hold rate error to 1m/s
2012-01-29 17:08:34 -08:00
Jason Short
7833cea9d4
2.2B6 - Please verify Heli still functions properly.
...
Added AC_PID lib
Updated landing code
bug fixes
2012-01-28 22:00:05 -08:00
Randy Mackay
2c906b7b27
OpticalFlow - replaced PI controller with PID controller.
...
Modified optical flow hold to use aggregated position instead of speed.
2012-01-25 21:55:14 +09:00
Jason Short
5cc19bbe7c
slightly less filtering for less latency
2012-01-21 22:04:54 -08:00
Jason Short
1aa6d0ea08
limiting the pitch throttle compensation
2012-01-21 11:59:49 -08:00
Jason Short
42b1362bba
cleanup
2012-01-20 22:52:30 -08:00
Jason Short
ed32ad30fd
Refined the D term for stabilize
...
moved all the rest_I terms from code into 1 central place
2012-01-20 22:52:29 -08:00
Jason Short
95ac9d163e
lowered Loiter I, commented out unused var
2012-01-14 11:20:40 -08:00
Jason Short
c02b403a06
temp removed alt D term until more testing
2012-01-14 11:20:40 -08:00
Jason Short
7c475f178c
tuned down Alt hold D gain
2012-01-13 09:36:51 -08:00
Jason Short
ee7c948781
Added simple constrain for Alt d term
2012-01-13 08:49:55 -08:00
Jason Short
4459fc4e34
Added a small D term on alt hold
2012-01-12 22:28:58 -08:00
Jason Short
f36aba8af2
climb rate control
2012-01-10 23:42:26 -08:00
Jason Short
7b8767d846
Added comments
2012-01-10 23:42:26 -08:00
Randy Mackay
f68d23d91e
ArduCopter - added ROLL_PITCH_STABLE_OF (i.e. Stabilised Roll/Pitch + adjustments based on optical flow)
...
Removed optical flow from regular loiter for now until it's tested.
2012-01-09 13:53:54 +09:00
Jason Short
8ed2d96396
removed unused var
2012-01-04 09:28:37 -08:00
Jason Short
4e0e783e7c
added Reset_Rate_I function
...
Removed I term from Throttle rate calc
Added some basic constrains to Acro
2012-01-04 09:28:37 -08:00
Jason Short
1ef7f9fe62
Loiter I reset
2011-12-31 09:45:25 -08:00
Jason Short
6a8391f0a7
removing I term clearance
2011-12-30 23:48:04 -08:00
Jason Short
21460a57ae
Yaw Performance tweaks
2011-12-29 23:02:03 -08:00
Jason Short
10abb7871e
removed loiter I from Reset Nav
2011-12-29 23:02:03 -08:00
Jason Short
d055763947
Added second order, filtered derivative in stabilize. Works much better than the non-filtered one I used to have.
2011-12-29 23:02:02 -08:00
Jason Short
79fff0f096
the second accel test is just for fun.
...
Filtered output for Nav_throttle
2011-12-23 14:42:50 -08:00
Jason Short
47e4c875e1
Cleanup
...
removed Iterm experiment - no noticeable effect in actual flight
2011-12-16 20:47:23 -08:00
Jason Short
3019c35364
turned off iterm for traverse
2011-12-15 20:51:41 -08:00
Jason Short
4e280bb0dc
More power to descend
2011-12-15 20:51:40 -08:00
Jason Short
d2fd6c5ee5
added loiter control to reset nav
2011-12-14 22:08:41 -08:00
Randy Mackay
7f64080877
Arducopter - Attitude.pde - fixed small bug in pitch stabilise
2011-12-13 22:10:51 +09:00
Jason Short
ba8fc57bd8
Stability patch2 - Jose style.
2011-12-12 17:47:45 -08:00
Jason Short
5d0e3664ad
Hack to prevent fly aways
...
Cleanup to remove SIMPLE mode switch note
2011-12-11 12:01:06 -08:00
Jason Short
1f3abcf048
eased up on the i term blocker
2011-12-10 23:25:52 -08:00
Randy Mackay
42421a09e2
TradHeli - Attitude.pde - made yaw contol use jason's stability patch
...
Quad - fixed small bug in pitch control (was using roll's stabilise controller)
2011-12-08 22:23:50 +09:00
Randy Mackay
68e6be5eeb
TradHeli - fixed roll/pitch so it's not scaled when throttle is scaled
2011-12-08 21:30:47 +09:00
Jason Short
6dfdd754ea
Stability patch updates,
...
Cleanup
2011-12-06 21:03:56 -08:00
Jason Short
e8a14c8d93
simple patch to improve alt hold based on stability patch
2011-12-04 21:32:33 -08:00
Jason Short
aad45c692f
Stability patch from 55
2011-12-03 17:54:38 -08:00
Jason Short
e4f2ad1809
remove PI_crosstrack
2011-11-19 13:58:53 -08:00
Jason Short
9e67c7efca
Added additional nav params to reset
2011-11-12 21:39:00 -08:00
Jason Short
79e30b5f21
removed debugging code
2011-11-08 14:41:46 -08:00
Jason Short
d375de8424
SIM test
2011-11-08 14:11:02 -08:00
Andrew Tridgell
28634f51b7
ArduCopter: use specific sized data types in a lot of places
...
this will make the Desktop build more consistent with the real AVR
build, and also with a future ARM build
2011-11-08 11:05:36 +11:00
Jason Short
6bf0c32173
Removed some old debug prints from motors.pde
...
added ability to not increment I term for traversals.
2011-11-07 14:32:39 -08:00
Jason Short
0446cae242
Alt hold fix
2011-11-07 12:00:37 -08:00
Jason Short
d1431f1070
default top_bottom ratio 1.0
2011-11-06 22:45:07 -08:00
Jason Short
c265555b69
Merge branch 'master' of https://code.google.com/p/ardupilot-mega
2011-11-04 21:42:10 -07:00
Jason Short
c8304114a3
renamed some command variables to align with Arduplane
...
reworked the arming code and moved the DCM gains out.
updated climb_rate to include sonar data.
2011-11-04 21:41:51 -07:00
unknown
12f5f3f96e
TradHeli - fix to allow tail servo to be reversed. Also increase max movement of tail servo to 45 degrees.
2011-11-05 12:31:30 +08:00
Jason Short
27fc6eea10
Z dampener
...
Integrated Aurelio R. Ramos' Z dampening code.
2011-11-01 21:18:47 -07:00
Jason Short
c402311077
removed accel.z references
2011-11-01 09:28:23 -07:00
Jason Short
48db60a4eb
Tweaks to alt hold
2011-11-01 09:25:23 -07:00
Jason Short
07daf34ccc
Added a slew rate to the alt change rate.
...
Added better reporting of throttle control
upped constraints for alt hold
Additional logging for CTUN lay hold
2011-10-28 21:29:10 -07:00
Jason Short
c6c7966205
Attitude
...
Made the Acro mode more NG like. Should be much more nimble!
Tweaked the Accel hold with sim tests. not flight tested or enabled by default.
added option to set scalar in angle boost
2011-10-27 12:31:46 -07:00
Michael Oborne
f9883bf382
fix make issue
2011-10-04 09:34:47 +08:00
Jason Short
b0bd9d1c44
Added second PI loop for alt hold.
...
Upped gains for default JDrones Frame
added gains for second PI loop for alt
removed some tests for 1280 space constraints
2011-10-02 11:36:23 -07:00
Jason Short
f89da12387
Minimized the accel_filtered vector to be faster and more accurate.
...
Made the Filter include the Accels and moved from 8 to 4 terms in the filter
2011-09-30 18:40:29 -07:00
Jason Short
de61e87128
Added ADC gyro Filtering for quads - this fixes a noise issue introduced into the controller
...
added Position mode
removed
Added back in the accelerometer experiment
Added filter_result boolean to enable filter on the fly
2011-09-29 23:27:23 -07:00
Jason Short
c209d6e6dd
2.0.46 -Not flight tested!
...
restored 42 alt hold code
removed throttle timer, replaced with safer constant
increased alt control range
reformatted nav_rate calls
removed unused simple mode defines
set alt hold home to 10m
tuned down rateP to .13 from .14 for broader application.
2011-09-27 09:35:05 -07:00
Jason Short
b2a2221474
Fixed issue with Simple mode changes.
...
Reverted to simpler, safer timer code for throttle hold
2011-09-25 14:16:35 -07:00
Jason Short
bb8f97ec0b
Better throttle boost value
2011-09-24 21:55:54 -07:00
Jason Short
a8befb189c
Fixed throttle_boost
2011-09-23 15:34:18 -07:00