Commit Graph

786 Commits

Author SHA1 Message Date
Jason Short 0ae82da0fd Fix for SIMPLE mode 2012-01-14 11:32:48 -08:00
Jason Short 72faa6525e Tweak to make circle mode scripting more accurate 2012-01-14 11:21:50 -08:00
Jason Short 89343ae306 adjusted GPS watch dog not to be so aggressive,
removed unneeded flag clearing
2012-01-14 11:20:40 -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 1843798697 Clarified the Increment for WP total 2012-01-14 11:20:40 -08:00
Jason Short f97d58c753 added notes, removed redundant save wp_total 2012-01-14 11:20:40 -08:00
Jason Short 7877a872d3 added update throttle cruise function 2012-01-13 16:48:05 -08:00
Jason Short 1269b07d9a Made RTL always the current Altitude 2012-01-13 16:47:38 -08:00
Jason Short ec9880f725 made resetting throttle cruise a function 2012-01-13 16:47:08 -08:00
Jason Short 6591089110 Disabled Ryans filter until we get real-world testing in. 2012-01-13 12:48:02 -08:00
Jason Short 8d909f6eed fixed GPS bug - moved to fast loop location 2012-01-13 12:47:22 -08:00
Jason Short c327a9f000 made landing shoot for below home by 2 meters to avoid bounce up. 2012-01-13 12:46:40 -08:00
Jason Short 7c475f178c tuned down Alt hold D gain 2012-01-13 09:36:51 -08:00
Jason Short 4eacc6f3eb re-enabled relay test 2012-01-13 08:55:02 -08:00
Jason Short ee7c948781 Added simple constrain for Alt d term 2012-01-13 08:49:55 -08:00
Jason Short b0810e054e moved GPS routines to 50hz loop to avoid delay. 2012-01-12 22:59:47 -08:00
Jason Short 648a404ee1 Version 2.2 2012-01-12 22:37:33 -08:00
Jason Short 91e05834c8 removed wind comp code,
Added Landing boost code
2012-01-12 22:28:58 -08:00
Jason Short 4459fc4e34 Added a small D term on alt hold 2012-01-12 22:28:58 -08:00
Jason Short 6b85adb460 Added Landing throttle control to force down the copter 2012-01-12 22:28:58 -08:00
Jason Short 154411c96c removed unused defines
lowered default Loiter gain
2012-01-12 22:28:58 -08:00
Jason Short 569ff5046f Added Ryan's GPS lag filter
Removed unused code
refined alt change
2012-01-12 22:28:58 -08:00
Jason Short a59c9ae22c added notes 2012-01-12 22:28:58 -08:00
Doug Weibel 9846822748 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 70b7951366 Eliminated second instance of APM2 #defines 2012-01-12 20:38:41 +00:00
Jason Short a7bce15365 R10 2012-01-11 22:41:51 -08:00
Jason Short 99ea69ef7b New Loiter control 2012-01-11 22:41:51 -08:00
Jason Short 257890d5be New Loiter Gains for new Loiter methods 2012-01-11 22:41:51 -08:00
Jason Short 98f637282b moved to verify_land 2012-01-11 22:41:51 -08:00
Jason Short 5e9db462f5 attempting to force down without using Manual boost. 2012-01-11 22:41:51 -08:00
Jason Short f35411ac45 R9 2012-01-10 23:46:08 -08:00
Jason Short 84e001594d comma 2012-01-10 23:45:33 -08:00
Jason Short 4b54887c6c Switched to set_next_WP for mode switches 2012-01-10 23:43:44 -08:00
Jason Short 6b836d1a09 Fixed Type Error 2012-01-10 23:43:44 -08:00
Jason Short c4476bdd80 Fixed type error 2012-01-10 23:43:44 -08:00
Jason Short 3e8ff39d4b Climb rate control 2012-01-10 23:43:44 -08:00
Jason Short a79d302b98 added set_new_altitude call() 2012-01-10 23:43:44 -08:00
Jason Short e102cb9e6a Added ending for auto landing 2012-01-10 23:42:27 -08:00
Jason Short 3a5ffc252d updated climb rate control
Land detector
2012-01-10 23:42:27 -08:00
Jason Short acd877abda added set_new_altitude call 2012-01-10 23:42:27 -08:00
Jason Short f36aba8af2 climb rate control 2012-01-10 23:42:26 -08:00
Jason Short 5a91396f63 Added climb rate control
removed unused vars
2012-01-10 23:42:26 -08:00
Jason Short dab4fb43d4 Added altitude change flags 2012-01-10 23:42:26 -08:00
Jason Short 351be7c305 Made timer unsigned 2012-01-10 23:42:26 -08:00
Jason Short 7b8767d846 Added comments 2012-01-10 23:42:26 -08:00
Jason Short b1e971ea18 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 5f55780b5e Added comments
moved out failsafe check. otherwise the reporting was erroneous.
2012-01-10 23:42:26 -08:00
Jason Short 92f7b22722 Moved failsafe check to more logical place 2012-01-10 23:42:26 -08:00
Jason Short cf92631d33 added #if to wind compensation code 2012-01-10 23:42:26 -08:00
Pat Hickey fc6321b7ca ArduCopter motors_y6: rewrite CH_ macros with MOT_ macros 2012-01-09 22:06:49 -08:00
Pat Hickey 927e60d85b ArduCopter motors_y6: rewrite loop in terms of motors 2012-01-09 22:06:49 -08:00
Pat Hickey ac7f6a5602 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 73610ddb6c ArduCopter motors_octa_quad: rewrite remainder from CH_ macros to MOT_ macros 2012-01-09 22:06:48 -08:00
Pat Hickey 7f4c994346 ArduCopter motors_octa_quad: rewrite loop in terms of motors 2012-01-09 22:05:01 -08:00
Pat Hickey e2be119433 ArduCopter motors_octa: rewrite remainder from CH_ macros to MOT_ macros 2012-01-09 21:57:02 -08:00
Pat Hickey 46b8037a73 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 79030a84b8 ArduCopter motors_hexa: rewrite remainder from CH_ macros to MOT_ macros. 2012-01-09 21:57:02 -08:00
Pat Hickey f7e14fff37 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 b907c1fd5c ArduCopter: add ch_of_mot lookup to motors.pde 2012-01-09 21:57:02 -08:00
Pat Hickey 7535c1c3fe ArduCopter test.pde: translate from CH_ to MOT_ notation 2012-01-09 21:57:02 -08:00
Pat Hickey 6a4442557c ArduCopter setup.pde: translate from CH_ to MOT_ notation 2012-01-09 21:57:02 -08:00
Pat Hickey 91bc2698a8 ArduCopter radio.pde: translate CH_ to MOT_ outputs 2012-01-09 21:57:02 -08:00
Pat Hickey 2f63c636ad Rename ArduCopter/config_motors.h to config_channels.h 2012-01-09 21:57:02 -08:00
Pat Hickey f5b6746ad7 ArduCopter: Change TRI_FRAME yaw servo output to CH_TRI_YAW define 2012-01-09 21:57:02 -08:00
Pat Hickey c105f64dca ArduCopter Camera.pde: changed from CH_n to CH_CAM_ notation. 2012-01-09 21:57:02 -08:00
Pat Hickey e0e430895e motors_quad: translate from CH_ to MOT_ notation. 2012-01-09 21:57:02 -08:00
Pat Hickey 0b40f55334 ArduCopter: include config_motors.h in sketch 2012-01-09 21:57:01 -08:00
Pat Hickey e5e8ed8a54 ArduCopter config_motors.h: stubs in for CH_CAM_PITCH and CH_CAM_ROLL 2012-01-09 21:57:01 -08:00
Pat Hickey 9eae2ec7fe ArduCopter config_motors.h: proper defs for APM1 MOT_[5..8] 2012-01-09 21:57:01 -08:00
Pat Hickey a30558e9b2 ArduCopter config.h: add standard ifndef/define header macro wrappers 2012-01-09 21:57:01 -08:00
Pat Hickey a7628b7f78 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 a19afd926a 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 78255b722e 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 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
analoguedevices d46f36e624 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 d45c0ce9f2 Added Acro to Rate_P 2012-01-08 14:52:10 -08:00
Randy Mackay 3dfa26920f ArduCopter - changed Sonar to use A1 (was AN4) 2012-01-08 17:48:30 +09:00
Jason Short f4b530ebb1 R8 2012-01-07 22:28:03 -08:00
Jason Short 48c211e055 Added finish to missions - auto-land or stabilize 2012-01-07 22:27:26 -08:00
Jason Short 9c8122e061 converted auto land to use the mission planner version
Removed gate that looked for already set control_mode. Wasn't compatible with failsafe
2012-01-07 22:27:26 -08:00
Jason Short 63be9c5f7b Moved wind comp into a define 2012-01-07 22:27:26 -08:00
Jason Short 06e032db68 Quad frame - X is default
added wind comp stability option to config - off by default
2012-01-07 22:27:26 -08:00
Jason Short 6678edf243 Auto-land updates - removed sonar option - not needed
updates from JLN
2012-01-07 22:27:26 -08:00
Jason Short 76dd79e7b5 Made RTL hold position until it reaches altitude 2012-01-07 22:27:26 -08:00
Jason Short dd42f06275 Cleanup 2012-01-07 22:27:26 -08:00
Jason Short faa9dd43cf scaled to 0-1023 2012-01-06 21:43:37 -08:00
Jason Short ee0551037e Revved to R7 2012-01-06 10:22:53 -08:00
Jason Short 98f9a5f237 Forced Faildafe throttle mode to throttle Auto 2012-01-06 10:21:50 -08:00
Jason Short 5b66a09688 Added check for armed motors in failsafe 2012-01-06 10:21:23 -08:00
Jason Short c9f60f239d Added Note 2012-01-06 10:20:59 -08:00
Jason Short 8f3c577e47 Made RTL go up 10m for failsafe 2012-01-06 10:20:48 -08:00
Jason Short 17873eb09c Changed default throttle type for failsafe to avoid checking
changed timer to 20 seconds.
2012-01-06 10:20:31 -08:00
Jason Short e116636fe9 Auto_land update 2012-01-05 21:57:34 -08:00
Jason Short e3c16fc1b1 Added auto_land to RTL 2012-01-05 21:15:12 -08:00
Jason Short 40ad164c8d Clears Auto_land timer 2012-01-05 21:15:12 -08:00
Jason Short 20661e5020 timer set to unsigned 2012-01-04 17:31:20 -08:00
Andrew Tridgell df81a9459a ACM: reset all I terms on gyro calibration 2012-01-05 10:15:14 +11:00
Andrew Tridgell 2913948520 ACM: fixed a warning
comment out some unused debug code
2012-01-05 10:14:53 +11:00
Andrew Tridgell c1c3115b42 ACM: fixed a alt hold bug
== instead of =
2012-01-05 10:14:30 +11:00
Andrew Tridgell 92f9c0b648 ACM: fixed a signed/unsigned warning 2012-01-05 10:14:12 +11:00
Andrew Tridgell 596a1f43f4 ACM-simple: don't use uninitialised simple trig values 2012-01-05 10:13:36 +11:00
Jason Short 3cf77729ef Disabled stable mode wind comp by default for release 2012-01-04 09:28:38 -08:00
Jason Short 28262dd825 Added Xplane output option 2012-01-04 09:28:38 -08:00
Jason Short 467ef66a77 Added home offset for altitude 2012-01-04 09:28:38 -08:00
Jason Short 40c649a27b Made landing disarm the motors 2012-01-04 09:28:38 -08:00
Jason Short ed1ff0b171 Upped Revision 2012-01-04 09:28:38 -08:00
Jason Short 76cfdca6cc Cleaned up and documented each global vavriable
Added Wind compensation for Stability
Acro mode fixes
2012-01-04 09:28:37 -08:00
Jason Short 2e83e42764 Added precalc for wind compensation when entering Stabilze mode 2012-01-04 09:28:37 -08:00
Jason Short e36d2f6e96 Added Wind compensation for Stabilize
moved speed calc to it's own function
decreased acceleration from WPs
2012-01-04 09:28:37 -08:00
Jason Short fe8c99c49b removed PM test field 1 - not needed 2012-01-04 09:28:37 -08:00
Jason Short a2c8f5af15 removed unused vars 2012-01-04 09:28:37 -08:00
Jason Short de6325fb8a removed unused vars 2012-01-04 09:28:37 -08:00
Jason Short cf9e744ed2 removed unused vars 2012-01-04 09:28:37 -08:00
Jason Short 8ed2d96396 removed unused var 2012-01-04 09:28:37 -08:00
Jason Short 59f22f0ca0 removed airspeed 2012-01-04 09:28:37 -08:00
Jason Short ecb3241489 calc_wind_compensation called when exiting AP modes
Rate I terms reset in Acro Mode switch
Limit of 1 m set to alt hold
Reset circle angle to 0 by default
Land got land_complete var set to false by default
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 b8c0bdb66f removed airspeed 2012-01-04 09:28:37 -08:00
Jason Short 92eece79a4 cleanup - removed unused functions, made pressure reading Float to avoid extra cast 2012-01-04 09:28:36 -08:00
Jason Short e1232e7b80 cosmetic 2012-01-04 09:28:36 -08:00
Jason Short e7b750074b Added takeoff state and ground state variable 2012-01-04 09:28:36 -08:00
Jason Short 37cda3c364 Cosmetic 2012-01-04 09:28:36 -08:00
Jason Short 2fc6a645b4 removed unused Airspeed config 2012-01-04 09:28:36 -08:00
Jason Short b28ae04e0d Removed unused options 2012-01-04 09:28:36 -08:00
Jason Short 6513b12eb2 Cosmetic 2012-01-04 09:28:36 -08:00
Jason Short 67bf991598 removed unused Airspeed config 2012-01-04 09:28:36 -08:00
Jason Short c7b5b747e8 change how Reset Nav params work - no longer clear I terms 2012-01-04 09:28:36 -08:00
Jason Short 580ad2c5ce Added JLN's landing patch, moved some variables local such as Jump counter 2012-01-04 09:28:36 -08:00
Jason Short c0c2ea4ebb removed unused functions 2012-01-04 09:28:36 -08:00
Andrew Tridgell ca39fc8b47 sitl: added build targets for different ACM frames 2012-01-04 21:45:46 +11:00
Andrew Tridgell 9d1c4ecfcd ACM: don't set defaults in APM_Config.h
defaults set here prevent Makefile overrides, which breaks autotest
for non-default frame types
2012-01-04 19:35:05 +11:00
Andrew Tridgell cdd5589498 I2c: default to 5ms timeout, and faster bus speed
we will slow down the speed when we get a failure
2012-01-04 16:36:47 +11:00
Jason Short 26d0bf93ff Added more constraints around velocity 2011-12-31 10:59:59 -08:00
Jason Short b3cea96970 Cosmetic 2011-12-31 10:54:31 -08:00
Jason Short 74b203c7f2 Lowered Yaw to prevent overshoot based on feedback 2011-12-31 10:10:45 -08:00
Jason Short ea832c0818 upped to r5 2011-12-31 10:05:13 -08:00
Jason Short 1ef7f9fe62 Loiter I reset 2011-12-31 09:45:25 -08:00
Jason Short 0ace8474d7 R4 2011-12-30 23:54:02 -08:00
Jason Short c6586810cf New Style WP navigation for high wind 2011-12-30 23:48:05 -08:00
Jason Short 2cb09f46e9 no longer calling reset_nav 2011-12-30 23:48:04 -08:00
Jason Short 6a8391f0a7 removing I term clearance 2011-12-30 23:48:04 -08:00
Jason Short 28984a72e4 no longer calling reset_nav 2011-12-30 23:48:04 -08:00
Jason Short 26267f75b2 Reverted to Crosstrack like in Arduplane, requires Degrees * 100 2011-12-30 23:48:04 -08:00
Jason Short dac29af7ab Sync with Arduplane 2011-12-30 23:48:04 -08:00
Jason Short c7f93f8718 Updated Configs based on field testing. 2011-12-30 23:48:04 -08:00
Jason Short 15a377d759 Added a default Yaw tracking setting
Added Nav_Bearing
2011-12-30 23:48:04 -08:00
Jason Short 84d3e3135f Added Nav_bearing, just like APlane
added fix for LOITER in missions so we don't Yaw in circles
2011-12-30 23:48:04 -08:00
Jason Short cf48091d00 removed old loiter method option 2011-12-30 23:48:04 -08:00
Randy Mackay 3cb74cb459 ArduCopter - init_compass - fixed HIL build issue 2011-12-31 12:29:54 +09:00