Commit Graph

160 Commits

Author SHA1 Message Date
Jason Short
57e4fabb57 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
91cde15c27 Attitude.pde - Added small boost to alt hold for takeoff. 2012-06-25 23:12:19 -07:00
Robert Lefebvre
7eae382a22 Open up constraint on Rate Yaw Output for all copters. 2012-06-22 10:06:01 -04:00
Jason Short
0ccf5724aa 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
6dc1e02f76 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
3618ac62e0 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
3e6f37d540 Opening up the Yaw Rate constraint for Trad Heli. 2012-06-07 22:40:25 -04:00
Robert Lefebvre
1b789b7928 Yaw Fix
Modified Nav_Yaw controller to better track intended heading changes.
2012-06-07 17:15:33 -04:00
Jason Short
71111a5816 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
5ce93faf51 Moved PID logging counter into define 2012-06-03 11:13:50 -07:00
Jason Short
2ae5d50261 Renamed some variables to clarify functionality. 2012-05-29 12:42:37 -07:00
Jason Short
6c999b5d54 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
bd8534ef14 ArduCopter - Attitude.pde - added logging of optical flow pid controller 2012-04-21 20:17:12 +09:00
rmackay9
c7edd7857c ArduCopter - added dataflash logging of roll and pitch rate controllers 2012-04-08 10:19:20 +09:00
rmackay9
23c3f25654 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
409c147ce3 ACM: fixed heli build 2012-03-27 15:37:25 +11:00
Andrew Tridgell
5d7c571fb1 ACM: fixed the build on the 1280 2012-03-27 15:37:24 +11:00
rmackay9
441413f1c6 ArduCopter - added PID log type. Implemented for Yaw stabilize and rate controllers. 2012-03-25 16:09:08 +09:00
Andrew Tridgell
690ad58a64 AHRS: adapt ArduCopter for new AHRS framework 2012-03-19 17:29:02 +11:00
Jason Short
722a4d01e8 ACM: Attitude.pde - consolidated wind I term resets 2012-03-18 22:31:21 -07: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
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
27f6afd178 added stab_d gain scheduling 2012-02-28 20:16:40 -08: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
Jason Short
a3f65b4a23 increased the rate error for more responsive alt hold 2012-02-25 13:31:21 -08:00
rmackay9
ab0e1d7632 TradHeli - increase max yaw input to 45 degrees 2012-02-24 20:18:40 +09:00
Jason Short
b1340bbf80 added a constraint to D term 2012-02-23 09:14:44 -08:00
Jason Short
70d7a1f5d0 Added slow_wp default in AP mode 2012-02-19 13:15:40 -08:00
Jason Short
03aa28224b re-implemented WII Dampening filter for Marco. 2012-02-16 22:38:23 -08:00
Jason Short
6913400221 cast D term to float just in case 2012-02-16 22:09:21 -08:00
Jason Short
bb4c02fbff Added acro_p to the params 2012-02-15 11:29:25 -08:00
Jason Short
11d1973abd Added Acro_P 2012-02-15 09:10:14 -08:00
Andrew Tridgell
1af6f08b1c adapted main ACM code for AP_Param 2012-02-13 16:22:52 +11:00
Jason Short
4f44ccc182 get_acro_yaw added 2012-02-10 22:32:55 -08:00
Jason Short
f3547a04a5 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
1a1f6cac5d OptFlow - reenable OF_LOITER pid controller and reduce I term 2012-02-01 08:04:18 +09:00
Jason Short
c855c81d2a limiting alt hold rate error to 1m/s 2012-01-29 17:08:34 -08:00
Jason Short
0213f4dd88 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
2f84b54bbb 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
02d6adb21f slightly less filtering for less latency 2012-01-21 22:04:54 -08:00
Jason Short
8f86caa3ff limiting the pitch throttle compensation 2012-01-21 11:59:49 -08:00
Jason Short
525f7cd40f cleanup 2012-01-20 22:52:30 -08:00
Jason Short
d991a22453 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
11e1df497d lowered Loiter I, commented out unused var 2012-01-14 11:20:40 -08:00
Jason Short
f25d741f62 temp removed alt D term until more testing 2012-01-14 11:20:40 -08:00
Jason Short
9a0539f39e tuned down Alt hold D gain 2012-01-13 09:36:51 -08:00
Jason Short
09c4bbe46e Added simple constrain for Alt d term 2012-01-13 08:49:55 -08:00
Jason Short
5418d330f6 Added a small D term on alt hold 2012-01-12 22:28:58 -08:00
Jason Short
581657ab7a climb rate control 2012-01-10 23:42:26 -08:00
Jason Short
9d1b1dba77 Added comments 2012-01-10 23:42:26 -08:00
Randy Mackay
7b9701fdd5 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
3d7f3f6b77 removed unused var 2012-01-04 09:28:37 -08:00
Jason Short
e6887aa3ec 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
e17c8705ba Loiter I reset 2011-12-31 09:45:25 -08:00
Jason Short
170a646ecf removing I term clearance 2011-12-30 23:48:04 -08:00
Jason Short
8fc73844ee Yaw Performance tweaks 2011-12-29 23:02:03 -08:00
Jason Short
89c705c8b9 removed loiter I from Reset Nav 2011-12-29 23:02:03 -08:00
Jason Short
83d52899b0 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
dc2103d67f the second accel test is just for fun.
Filtered output for Nav_throttle
2011-12-23 14:42:50 -08:00
Jason Short
ed818e4ccf Cleanup
removed Iterm experiment - no noticeable effect in actual flight
2011-12-16 20:47:23 -08:00
Jason Short
2b5c039eae turned off iterm for traverse 2011-12-15 20:51:41 -08:00
Jason Short
05e921f5d0 More power to descend 2011-12-15 20:51:40 -08:00
Jason Short
d5666f287c added loiter control to reset nav 2011-12-14 22:08:41 -08:00
Randy Mackay
68d1fa6ec7 Arducopter - Attitude.pde - fixed small bug in pitch stabilise 2011-12-13 22:10:51 +09:00
Jason Short
424a11d269 Stability patch2 - Jose style. 2011-12-12 17:47:45 -08:00
Jason Short
4efbae4a1c Hack to prevent fly aways
Cleanup to remove SIMPLE mode switch note
2011-12-11 12:01:06 -08:00
Jason Short
64cb2a54cf eased up on the i term blocker 2011-12-10 23:25:52 -08:00
Randy Mackay
ced26d7ba2 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
ee8986c463 TradHeli - fixed roll/pitch so it's not scaled when throttle is scaled 2011-12-08 21:30:47 +09:00
Jason Short
e3700365d4 Stability patch updates,
Cleanup
2011-12-06 21:03:56 -08:00
Jason Short
55b2e5339a simple patch to improve alt hold based on stability patch 2011-12-04 21:32:33 -08:00
Jason Short
be3dba817b Stability patch from 55 2011-12-03 17:54:38 -08:00
Jason Short
a661311f60 remove PI_crosstrack 2011-11-19 13:58:53 -08:00
Jason Short
043c3197da Added additional nav params to reset 2011-11-12 21:39:00 -08:00
Jason Short
ccc2746a22 removed debugging code 2011-11-08 14:41:46 -08:00
Jason Short
c7eb695b4a SIM test 2011-11-08 14:11:02 -08:00
Andrew Tridgell
87d5581046 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
34a53f6f7d 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
6d0a32cc65 Alt hold fix 2011-11-07 12:00:37 -08:00
Jason Short
7bf8ef98f5 default top_bottom ratio 1.0 2011-11-06 22:45:07 -08:00
Jason Short
37883a93f6 Merge branch 'master' of https://code.google.com/p/ardupilot-mega 2011-11-04 21:42:10 -07:00
Jason Short
80c7e135d5 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
3df9a03e02 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
7b88499579 Z dampener
Integrated Aurelio R. Ramos' Z dampening code.
2011-11-01 21:18:47 -07:00
Jason Short
561a5a740b removed accel.z references 2011-11-01 09:28:23 -07:00
Jason Short
09fa260883 Tweaks to alt hold 2011-11-01 09:25:23 -07:00
Jason Short
a88424b152 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
81083ddecf 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
1a715706a6 fix make issue 2011-10-04 09:34:47 +08:00
Jason Short
7e81756ccd 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
9a4bd31a8b 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
df1a39f650 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
d0405b0a0a 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
059551de48 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
bdf6471587 Better throttle boost value 2011-09-24 21:55:54 -07:00
Jason Short
0540331426 Fixed throttle_boost 2011-09-23 15:34:18 -07:00
Jason Short
0f5c74f03a Trying to make Alt hold more aggressively change altitudes. 2011-09-23 13:58:39 -07:00
Jason Short
f65390920a Added a default, but low throttle cruise value
Added a clear integrator for Rate I to prevent tip ups at launch.
2011-09-22 23:10:55 -07:00