Commit Graph

859 Commits

Author SHA1 Message Date
Jason Short d93e259289 Added more attributions 2012-01-29 21:53:44 -08:00
Jason Short 25c2c9b437 removed filter. Don't need it. 2012-01-29 17:10:52 -08:00
Jason Short c855c81d2a limiting alt hold rate error to 1m/s 2012-01-29 17:08:34 -08:00
Jason Short 370d633f51 Lowering the throttle_P values by default 2012-01-29 16:27:13 -08:00
Jason Short af0b0d5a7f made Loiter over ride exit dependent not on speed, but centered sticks. 2012-01-29 16:15:02 -08:00
Randy Mackay cff6799d18 TradHeli - fix to servo limits. They had been unnecessarily limited to the collective pitch's min and max but actually there are cases (for example when the swash is leaning over 45degrees) where one servo goes well beyond the collective pitch's min or max. 2012-01-29 21:14:37 +09:00
Randy Mackay 1cbbe7bc7d Optflow - minor fix to D term defaulting 2012-01-29 21:06:41 +09:00
Jason Short 2a8044c666 Landing update for better baro landing 2012-01-28 22:35:57 -08:00
Jason Short 9dd1730cce reduce test.pde size for 1280 users 2012-01-28 22:16:24 -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
Jason Short e94ac68e4d formatting 2012-01-28 21:19:46 -08:00
Jason Short 8fcb2931d7 Cosmetic changes
GPS LED lock waits for home_is_set to be true
2012-01-28 21:19:46 -08:00
Jason Short a685510c38 changed tuning range 2012-01-28 21:18:43 -08:00
Randy Mackay 000acac9f8 Arducopter - Tri - move yaw servo (channel7/motor7/CH_TRI_YAW) to mid point on startup 2012-01-28 10:13:58 +09:00
Randy Mackay 2db4d2bfe6 OpticalFlow - added OF_LOITER flightmode 2012-01-28 09:27:16 +09:00
Pat Hickey 38d83d6cf0 ArduCopter Tri: fix for enable_out of yaw servo, defined yaw servo for APM2 2012-01-27 07:39:01 -08:00
Randy Mackay f27b41179b Sonar - changed default pin to A0 2012-01-26 22:50:48 +09:00
Pat Hickey 70825e0e1c ArduCopter Heli: add motors_output_enable function 2012-01-25 22:41:09 -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
Randy Mackay cd21c5905b Optical flow - updated standard frame rate to 2000hz and increased resolution to 1600cpi 2012-01-25 21:53:20 +09:00
Jason Short 86c7742dc0 added loiter_d to allow users to configure alternate Loiter alg 2012-01-22 14:19:27 -08:00
Jason Short 32241319c1 Revert "test to switch loiter controls"
This reverts commit 92270371d038f246d535f0ace9fc19272c44291d.
2012-01-22 14:19:27 -08:00
Jason Short 04a2eee410 test to switch loiter controls 2012-01-22 12:28:34 -08:00
Pat Hickey 05246bf3b4 ArduCopter: Call APM_RC.enable_out for camera channels in init_camera() 2012-01-22 12:03:11 -08:00
Pat Hickey 368e736a61 ArduCopter: Call motors_output_enable at correct spot during init 2012-01-22 12:03:11 -08:00
Pat Hickey 2bd2e9c774 ArduCopter: Add implementation of motors_output_enable to each motors_ frame type 2012-01-22 12:03:11 -08:00
Jason Short acf43341da Causes Aero_SIM to fail 2012-01-22 09:34:43 -08:00
Jason Short 8c4b955282 added Beta 4 tag 2012-01-21 22:15:23 -08:00
Jason Short a213e05eb9 converted to cm
Signed-off-by: Jason Short <jasonshort@mac.com>
2012-01-21 22:14:08 -08:00
Jason Short 7616c3b5a1 Converted distance gains to CM
added loiter_d for rate control, equal to old Nav_P gain
2012-01-21 22:13:57 -08:00
Jason Short e1f7fa34ea Fixed speed governor which was letting speed get to 0.
added Loiter_d to replace Nav_P for rate control
wp_distance calc now returns CM
2012-01-21 22:12:57 -08:00
Jason Short 8bd6cabdf1 recording nav_bearing rather than target bearing
recording x and y speed rather than Iterms for nav since they are always 0 now
2012-01-21 22:10:28 -08:00
Jason Short 14a8d8a471 added conversions of CM to M 2012-01-21 22:09:39 -08:00
Jason Short a3daae1530 Added Loiter_D to replace Nav_P for better separation of loiter and navigation tuning.
Upped Nav_P defaults to 3 based on windy flight testing
Added minimum WP speed define of 1m/s
Upped loiter_I for better wind performance - was not seeing any overshoot in logs
Made Nav_I default of 0, since we are not using it in the code.
2012-01-21 22:09:13 -08:00
Jason Short 9ecd091f79 convert command into CM from M
Making Landing boost be one at minimum to trigger better navthrottle output
2012-01-21 22:06:35 -08:00
Jason Short 6377cf8549 better default for speed governer 2012-01-21 22:05:48 -08:00
Jason Short 02d6adb21f slightly less filtering for less latency 2012-01-21 22:04:54 -08:00
Jason Short 275815a7c9 Converted to cm for distance 2012-01-21 22:04:35 -08:00
Jason Short ab8bf0b560 increasing the velocity near WP 2012-01-21 11:59:49 -08:00
Jason Short 8f86caa3ff limiting the pitch throttle compensation 2012-01-21 11:59:49 -08:00
Jason Short fa06d4a2e3 Calc error for logs 2012-01-21 11:59:49 -08:00
Jason Short d444051eb3 Enabled auto throttle hold 2012-01-20 22:52:31 -08:00
Jason Short e9a4253cd1 added note 2012-01-20 22:52:31 -08:00
Jason Short 3921fb7880 formatting 2012-01-20 22:52:31 -08:00
Jason Short 2fa8a343ac Added cast for comparison 2012-01-20 22:52:30 -08:00
Jason Short 525f7cd40f cleanup 2012-01-20 22:52:30 -08:00
Jason Short a087d84734 error on comparison operator 2012-01-20 22:52:30 -08:00
Jason Short 84937b4f69 Added Auto_land_timeout to params 2012-01-20 22:52:30 -08:00
Jason Short bf8774c2f8 AutoLanding timeout for Mission Planner 2012-01-20 22:52:30 -08:00
Jason Short c5dd970026 Max throttle output was to high 2012-01-20 22:52:30 -08:00
Jason Short 99b71434da Updated Firmware version 2012-01-20 22:52:30 -08:00
Jason Short 9c912b2573 reset all I terms at Arming 2012-01-20 22:52:30 -08:00
Jason Short 63a1cf75df enabled Mavlink Land command 2012-01-20 22:52:30 -08:00
Jason Short 0475dbf8ae relocated reset_I term functions to central location 2012-01-20 22:52:30 -08:00
Jason Short f504c79fb0 Stab_D changes units with the new dampening controller updates
Stabilize roll is raised to .1 - Flies great, and avoids a slow oscillation that could be affecting loiter.
Loiter P lowered to 1.5 based on feedback
2012-01-20 22:52:30 -08:00
Jason Short 3a4a80c650 renamed function 2012-01-20 22:52:30 -08:00
Jason Short c2496948fb Verify land updates from JLN
Effectively a throttle control for landing that mimics a person lowering the throttle.
2012-01-20 22:52:29 -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 ba535ed956 B3 2012-01-20 22:52:29 -08:00
Jason Short 556d646cad set dampening range from 0 - .08 from 0 to .6. The new dampening code has changed units.
added the ability to force nav_throttle so we  don't get ground effects screwing up baro sensor.
Added more descriptive Rest_I functions
2012-01-20 22:52:29 -08:00
Jason Short 0f24860552 Altitude no longer resets when moving loiter WP 2012-01-20 22:52:29 -08:00
Jason Short 7468889bb7 slowed down slightly 2012-01-20 22:52:29 -08:00
Jason Short aa1f09af83 Lowered range to more sensible values 2012-01-20 22:52:29 -08:00
Jason Short 3797c25867 Off by default 2012-01-20 22:52:29 -08:00
Michael Oborne c2f3cf0cf5 AC fix attitude level hil 2012-01-21 07:52:52 +08:00
Michael Oborne b94c80059b fix scale error 2012-01-21 06:33:18 +08:00
Michael Oborne 3b93418d67 AC sync battery code with arduplane 2012-01-21 06:29:09 +08:00
Michael Oborne 7f272b4c4b fix SITL attitude hil AC 2012-01-20 16:32:25 +08:00
Doug Weibel 2ea9db84e0 Update battery monitoring code for ArduCopter
Fixes compatibility for APM2.  Also a significant update to the battery monitoring code:  We previously had monitoring modes for individual cell voltages for 3 and 4 cell lipos.  These have been removed as they were never really supported (the cell voltages were computed but were not reported or recorded anywhere).  Also, some clean-up/prep work was done for supporting monitoring 2 separate battery packs.  The CLI battery and current monitoring tests were consolidated into 1 test.
changed
2012-01-15 17:10:02 -07:00
Doug Weibel 17b3e514dc Just a little more commenting work on global variables 2012-01-15 16:11:02 -07:00
Jason Short f326a5a9ea APM2 Channel assignments 2012-01-15 10:24:16 -08:00
Jason Short 7e411f5fb6 This allows users to test the Auto_throttle hold or cruise value 2012-01-14 11:43:52 -08:00
Jason Short 3879e79898 b2 2012-01-14 11:37:00 -08:00
Jason Short cf51967bbb Fix for SIMPLE mode 2012-01-14 11:32:48 -08:00
Jason Short 6714ab49ad Tweak to make circle mode scripting more accurate 2012-01-14 11:21:50 -08:00
Jason Short e7ad08e209 adjusted GPS watch dog not to be so aggressive,
removed unneeded flag clearing
2012-01-14 11:20:40 -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 e6ec80bb21 Clarified the Increment for WP total 2012-01-14 11:20:40 -08:00
Jason Short 6d0329b08c added notes, removed redundant save wp_total 2012-01-14 11:20:40 -08:00
Jason Short 24b760d48f added update throttle cruise function 2012-01-13 16:48:05 -08:00
Jason Short 414a2581a0 Made RTL always the current Altitude 2012-01-13 16:47:38 -08:00
Jason Short c970ba4f93 made resetting throttle cruise a function 2012-01-13 16:47:08 -08:00
Jason Short 589f8bc557 Disabled Ryans filter until we get real-world testing in. 2012-01-13 12:48:02 -08:00
Jason Short 05dce91c24 fixed GPS bug - moved to fast loop location 2012-01-13 12:47:22 -08:00
Jason Short 8de6e0e223 made landing shoot for below home by 2 meters to avoid bounce up. 2012-01-13 12:46:40 -08:00
Jason Short 9a0539f39e tuned down Alt hold D gain 2012-01-13 09:36:51 -08:00
Jason Short 81413d2a76 re-enabled relay test 2012-01-13 08:55:02 -08:00
Jason Short 09c4bbe46e Added simple constrain for Alt d term 2012-01-13 08:49:55 -08:00
Jason Short b9419e0123 moved GPS routines to 50hz loop to avoid delay. 2012-01-12 22:59:47 -08:00
Jason Short b81f9a5d77 Version 2.2 2012-01-12 22:37:33 -08:00
Jason Short b884462ce3 removed wind comp code,
Added Landing boost code
2012-01-12 22:28:58 -08:00
Jason Short 5418d330f6 Added a small D term on alt hold 2012-01-12 22:28:58 -08:00
Jason Short 6d0f078fdd Added Landing throttle control to force down the copter 2012-01-12 22:28:58 -08:00
Jason Short b493cb1e55 removed unused defines
lowered default Loiter gain
2012-01-12 22:28:58 -08:00
Jason Short 8416de7e9c Added Ryan's GPS lag filter
Removed unused code
refined alt change
2012-01-12 22:28:58 -08:00
Jason Short 400d080d12 added notes 2012-01-12 22:28:58 -08:00
Doug Weibel 622217357c Bug fix for compass.
This is a fix for an interesting bug when a DCM matrix reset was added to the ground start.  This bug only showed up if (A) a ground start were performed after an air start or due to use of the "Calibrate Gryo" action, (B) if the current orientation were sufficiently different from 0/0/0, and (C.) if the particular magnetometer had sufficiently large offsets.  Why did resetting the DCM matrix to 0/0/0 pitch/roll/yaw at ground start cause a bug?  The magnetometer offset nulling determines the proper offsets for the magnetometer by comparing the observed change in the magnetic field vector with the expected change due to rotation as calculated from the rotation in the DCM matrix.  This comparison is made at 10Hz, and then filtered with a weight based on the amount of rotation to estimate the offsets. Normally it would take considerable time at normal in-flight rotation rates for the offset estimate to converge. 

If a DCM matrix reset occurs when the offset nulling algorithm is up and running, the algorithm sees the DCM reset as a instantaneous rotation, however the magnetic field vector did not change at all.  Under certain conditions the algorithm would interpret this as indicating that the offset(s) should be very large.  Since the "rotation" could also have been large the filter weighting would be large and it was possible for a large erroneous estimate of the offset(s) to be made based on this single (bad) data point.

To fix this bug methods were added to the compass object to start and stop the offset nulling algorithm.  Further, when the algorithm is started, it is set up to get fresh samples.  The DCM matrix reset method now calls these new methods to stop the offset nulling before resetting the matrix, and resume after the matrix has been reset.
2012-01-12 14:44:24 -07:00
analoguedevices c00bcc58d9 Eliminated second instance of APM2 #defines 2012-01-12 20:38:41 +00:00
Jason Short 33fe4db3fc R10 2012-01-11 22:41:51 -08:00
Jason Short 464038b3ea New Loiter control 2012-01-11 22:41:51 -08:00
Jason Short 2566f1fb95 New Loiter Gains for new Loiter methods 2012-01-11 22:41:51 -08:00
Jason Short 55cb0ad476 moved to verify_land 2012-01-11 22:41:51 -08:00
Jason Short 7978a2a21a attempting to force down without using Manual boost. 2012-01-11 22:41:51 -08:00
Jason Short db1fafaaec R9 2012-01-10 23:46:08 -08:00
Jason Short 22ebe00773 comma 2012-01-10 23:45:33 -08:00
Jason Short 7933492fec Switched to set_next_WP for mode switches 2012-01-10 23:43:44 -08:00
Jason Short 30f5ecda54 Fixed Type Error 2012-01-10 23:43:44 -08:00
Jason Short ed903c6cd3 Fixed type error 2012-01-10 23:43:44 -08:00
Jason Short 36516161b5 Climb rate control 2012-01-10 23:43:44 -08:00
Jason Short 78925d57c2 added set_new_altitude call() 2012-01-10 23:43:44 -08:00
Jason Short 0c9dc11ac1 Added ending for auto landing 2012-01-10 23:42:27 -08:00
Jason Short 7d4067a6ed updated climb rate control
Land detector
2012-01-10 23:42:27 -08:00
Jason Short f683371508 added set_new_altitude call 2012-01-10 23:42:27 -08:00
Jason Short 581657ab7a climb rate control 2012-01-10 23:42:26 -08:00
Jason Short 439c15f3fc Added climb rate control
removed unused vars
2012-01-10 23:42:26 -08:00
Jason Short c385db412e Added altitude change flags 2012-01-10 23:42:26 -08:00
Jason Short 9cbfcac802 Made timer unsigned 2012-01-10 23:42:26 -08:00
Jason Short 9d1b1dba77 Added comments 2012-01-10 23:42:26 -08:00
Jason Short 5b00928b15 added location error calc to get better data. Otherwise we'll be 1 GPS read off. 2012-01-10 23:42:26 -08:00
Jason Short 0744179970 Added comments
moved out failsafe check. otherwise the reporting was erroneous.
2012-01-10 23:42:26 -08:00
Jason Short 5d28e97339 Moved failsafe check to more logical place 2012-01-10 23:42:26 -08:00
Jason Short f240888b49 added #if to wind compensation code 2012-01-10 23:42:26 -08:00
Pat Hickey 7961021895 ArduCopter motors_y6: rewrite CH_ macros with MOT_ macros 2012-01-09 22:06:49 -08:00
Pat Hickey 397aef9c2a ArduCopter motors_y6: rewrite loop in terms of motors 2012-01-09 22:06:49 -08:00
Pat Hickey 2f11c3f17a ArduCopter motors_tri: rewrite CH_ macros with MOT_ macros
* Third Tricopter motor was on CH_4, so it is called MOT_4. This
  will be changed in a subsequent commit.
2012-01-09 22:06:49 -08:00
Pat Hickey 757471c3a3 ArduCopter motors_octa_quad: rewrite remainder from CH_ macros to MOT_ macros 2012-01-09 22:06:48 -08:00
Pat Hickey ee7356c1a7 ArduCopter motors_octa_quad: rewrite loop in terms of motors 2012-01-09 22:05:01 -08:00
Pat Hickey f8aa1456cc ArduCopter motors_octa: rewrite remainder from CH_ macros to MOT_ macros 2012-01-09 21:57:02 -08:00
Pat Hickey ad5c31cd38 ArduCopter motors_octa: rewrite janky loops to use ch_of_mot
* Previously the loop was written over channels, now it is over motors
* the correct channel for that motor is determined by ch_of_mot.
* ch_of_mot is defined correctly based on the config_channels macros.
2012-01-09 21:57:02 -08:00
Pat Hickey f055cbc720 ArduCopter motors_hexa: rewrite remainder from CH_ macros to MOT_ macros. 2012-01-09 21:57:02 -08:00
Pat Hickey 2cf935e2d2 ArduCopter motors_hexa: rewrite janky loops to use ch_of_mot
* Previously the loop was written over channels, now it is over motors
* the correct channel for that motor is determined by ch_of_mot.
* ch_of_mot is defined correctly based on the config_channels macros.
2012-01-09 21:57:02 -08:00
Pat Hickey b8b6e3c25b ArduCopter: add ch_of_mot lookup to motors.pde 2012-01-09 21:57:02 -08:00
Pat Hickey 87735fef24 ArduCopter test.pde: translate from CH_ to MOT_ notation 2012-01-09 21:57:02 -08:00
Pat Hickey 20b0e4cd33 ArduCopter setup.pde: translate from CH_ to MOT_ notation 2012-01-09 21:57:02 -08:00
Pat Hickey 38c2a052be ArduCopter radio.pde: translate CH_ to MOT_ outputs 2012-01-09 21:57:02 -08:00
Pat Hickey 8d4db05f50 Rename ArduCopter/config_motors.h to config_channels.h 2012-01-09 21:57:02 -08:00
Pat Hickey b22920c0ea ArduCopter: Change TRI_FRAME yaw servo output to CH_TRI_YAW define 2012-01-09 21:57:02 -08:00
Pat Hickey ccff9041f8 ArduCopter Camera.pde: changed from CH_n to CH_CAM_ notation. 2012-01-09 21:57:02 -08:00
Pat Hickey 8d595d7c53 motors_quad: translate from CH_ to MOT_ notation. 2012-01-09 21:57:02 -08:00
Pat Hickey 7b056f208d ArduCopter: include config_motors.h in sketch 2012-01-09 21:57:01 -08:00
Pat Hickey e969e0dc55 ArduCopter config_motors.h: stubs in for CH_CAM_PITCH and CH_CAM_ROLL 2012-01-09 21:57:01 -08:00
Pat Hickey eb345c009b ArduCopter config_motors.h: proper defs for APM1 MOT_[5..8] 2012-01-09 21:57:01 -08:00
Pat Hickey bcb43ec9b5 ArduCopter config.h: add standard ifndef/define header macro wrappers 2012-01-09 21:57:01 -08:00
Pat Hickey a1cc77f41e ArduCopter: add config_motors.h with MOT_n to CH_m mapping
* APM1 values are not valid, but hopefully APM2 will stay that way?
2012-01-09 21:57:01 -08:00
Pat Hickey d015e0d6d9 APM_RC & ArduCopter: Change interface to SetFastOutputChannels to use _BV
* Every use of MSK_CH_n changed to _BV(CH_n)
* Easier to read, and will allow CH_n to be parameterized without needing
  a separate macro expansion for the MSK value.
2012-01-09 21:57:01 -08:00
Jason Short ba72a98345 Slowed Auto Descent
Don't return true in Landing code to prevent flyways in Stabilize
2012-01-08 23:01:22 -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
analoguedevices 8b68da3105 Put in commented-out APM2 #defines, to save people the trouble of having to type them in themselves 2012-01-09 01:59:55 +00:00
Jason Short fda12c8902 Added Acro to Rate_P 2012-01-08 14:52:10 -08:00