Commit Graph

334 Commits

Author SHA1 Message Date
rmackay9 ac8af9a53f ArduCopter: Leonard Hall's changes to alt hold including adding low pass filter to climb rate
get_throttle_rate_stabilized changed to simply update the target altitude instead of talking directly to the rate controller.
get_throttle_althold changed to use sqrt of distance when calculating the desired rate towards the target altitude.
added reset of accel based throttle PID's I term.
unrelated small bug fix from Randy to allow CH6 tuning of throttle rate D term.
2013-01-02 09:19:17 +11:00
rmackay9 f4c50353b9 ArduCopter: allow tuning of the Throttle Rate D term 2013-01-02 09:16:48 +11:00
rmackay9 7ea34d4fb7 ArduCopter: updated accel based throttle to use ahrs's get_accel_ef method
Also removed slow low pass filter meant to correct for accelerometer calibration.  This is no longer required now that we have the improved calibration method.
2013-01-02 09:11:25 +11:00
Pat Hickey 7af03127f6 ArduCopter: more work 2012-12-20 14:52:28 +11:00
rmackay9 af77425636 ArduCopter: fix Failed to Init Optflow message at startup 2012-12-11 00:09:45 +09:00
rmackay9 2f1b2b70e6 ArduCopter: added ACRO_TRAINER parameter to allow enabling/disabling the acro training function which will bring the roll back to within +- 45 degrees 2012-12-10 22:27:46 +09:00
rmackay9 154e3c33f7 ArduCopter, AP_InertialNav: consolidated ThirdOrderComplementaryFilter into AP_InertialNav to save about 200bytes of RAM 2012-12-10 00:43:11 +09:00
Robert Lefebvre 0eb57bf93d ACM: TradHeli
Fix to make update_throttle_cruise work with stab_throttle scaling.
2012-12-08 15:12:39 -05:00
Robert Lefebvre 1b97a92098 ACM: Code Cleanup 2012-12-08 14:49:38 -05:00
rmackay9 9dd978576b ArduCopter: auto yaw changes to allow pilot override of yaw during missions
Added set_yaw_mode to better control of yaw controller changes and variable initialisation.
Replaced AUTO_YAW mode with separate yaw controllers YAW_LOOK_AT_NEXT_WP, YAW_LOOK_AT_LOCATION, YAW_LOOK_AT_HEADING.
Pilot manual override of yaw causes yaw to change to YAW_HOLD (i.e. manual yaw) until next waypoint is reached.
Added get_yaw_slew function to control how quickly autopilot turns copter
Changed YAW_LOOK_AHEAD to use GPS heading and moved to new get_look_ahead_yaw function in Attitude.pde
Renamed variables: target_bearing->wp_bearing, original_target_bearing->original_wp_bearing.
Removed auto_yaw_tracking and auto_yaw variables and update_auto_yaw function as they are no longer needed.
Simplified MAV_CMD_CONDITION_YAW handling (do_yaw).  We lose ability to control direction of turn and ability to do long panorama shots but it now works between waypoints and save 20bytes.
2012-12-08 14:23:32 +09:00
rmackay9 2dd4694eef ArduCopter: adjusted pid_throttle_accel dt to 0.01 (100hz) 2012-12-06 10:32:12 +09:00
rmackay9 39d524212f ArduCopter: allow accel based throttle controller to be enabled/disabled with the new THR_ACC_ENABLE parameter.
When disabled the original velocity based throttle controller is used.
2012-12-06 10:31:57 +09:00
rmackay9 a5bb54e36e ArduCopter: RTL clean-up and slightly improved landing sensor
Consolidated RTL state to be captured by rtl_state variable.
Combined update_RTL_Nav and verify_RTL functions which performed the same function but one was for missions, the other for the RTL flight mode.
Renamed some RTL parameters and global variables to have RTL at the front.
Landing detector now checks accel-throttle's I term and/or a very low throttle value
2012-12-06 10:31:52 +09:00
rmackay9 072ffec493 ArduCopter: allow INERTIAL_NAV to be enabled separately for horizontal and vertical position 2012-12-06 10:31:41 +09:00
rmackay9 bdb47c449a ArduCopter: pass linear altitude error to throttle rate controllers.
Previously the requested rate used the square root of the altitude error.

Scale pilot's desired vertical rate and acceleration based on ACCELERATION_MAX_Z and VELOCITY_MAX_Z #defines
2012-12-06 10:31:31 +09:00
rmackay9 7b4ed2d227 ArduCopter: restored landing detector to landing throttle mode.
Added LAND_SPEED parameter to control the rate of descent for the last 10m of a landing.
Added CH6 tuning for accel based throttle controller.
2012-12-06 10:31:20 +09:00
rmackay9 a94826f182 ArduCopter: add set_throttle_mode to better control initialisation of variables 2012-12-06 10:31:04 +09:00
rmackay9 1036b35128 ArduCopter: added back in angle boost and recombined for heli and multicopter 2012-12-06 10:30:55 +09:00
rmackay9 3cbef57c64 ArduCopter: first merge of leonard's accel based altitude controller plus other changes from Randy
Changes include:
New low-level get_throttle_accel function takes target acceleration and compares vs earth-frame Z accelerometer values to produce output to motors.
Higher level throttle controllers modified to call new get_throttle_accel controller
Throttle_rate_stabilized controller added which maintains a desired climb/descent rate
Throttle_land controller added - descends using normal auto throttle controller to 10m then descends at 50cm/s
Multiple throttle modes added including landing mode
Land flight mode no longer needs GPS
Throttle cruise maintenance moved to update_throttle_cruise function
2012-12-06 10:30:49 +09:00
Robert Lefebvre 1d589c0b7d ACM: TradHeli
Fixes for Attitude rate controllers.
2012-12-04 14:42:04 -05:00
Robert Lefebvre 07d7d90882 ACM: TradHeli
Bringing in Low Pass Filter for Rate Controllers
2012-11-26 21:51:23 -05:00
Robert Lefebvre 3f0e8dd358 ACM: TradHeli
Bringing in Low Pas Filter
Commented out because it does not build.
Needs updates to Low Pass Filter Lib
2012-11-26 21:21:12 -05:00
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
Jason Short 2ae163ef75 Trying to make Alt hold more aggressively change altitudes. 2011-09-23 13:58:39 -07:00
Jason Short 25b0a3c43b 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
Jason Short 991279851a Refined Throttle Timer reset
Reduced Loiter I gain to decrease overshoot.
2011-09-22 17:38:39 -07:00
Jason Short 078f64e276 Fixed Throttle integrator bug. Time was not being reset causing a big drop in throttle control. 2011-09-22 12:28:46 -07:00
Jason Short a012e7981a removed debug statements 2011-09-21 22:34:27 -07:00
Jason Short c91ad14e18 Fixed Timer overflow for throttle PI loop.
Moved look at home to update_nav where it belongs
2011-09-21 22:31:12 -07:00
Jason Short b2b28cc90c Converted Millis to Micros
added navigation check to return a failed navigation
2011-09-19 22:24:57 -07:00
Jason Short bf94ba551e changed PI Library to take Float for DeltaTime
Changed timing to be more accurate in main loop. Still need to switch to micros(). Left that for Tridge. This gets rid of six floating point calcs *250. Nice!
2011-09-19 14:02:42 -07:00
Jason Short d29cfbcee3 Integration of optical flow
bug fixes for new Simple mode
increased Baro filter by 2 fields
2011-09-15 23:33:00 -07:00
Jason Short 1ce2308d11 Removed Simple Mode
Added Simple option to mode switch positions
removed unused OptFlow code
added reset lat and lon error
removed unused init_auto
Fixed log formatting
Added simple mode bitmask
removed pitchmax
added CLI setup for enabling Simple mode to any switch position
2011-09-14 13:58:18 -07:00
Jason Short 02bfd43390 Fixes Alt hold mistake
Moves tuning into runtime definable param
Added more IMax to throttle

Signed-off-by: Jason Short <jasonshort@gmail.com>
2011-09-10 15:16:51 -07:00
Andrew Tridgell 1456a2a912 renamed top level directories
ArduCopterMega -> ArduCopter
added archives directory for old code
2011-09-09 11:27:41 +10:00