Commit Graph

1344 Commits

Author SHA1 Message Date
Jason Short 69fe7feb54 Params
Added Tilt_Compensation to Params,
deprecated RTL_Land_Enabeled
RTL_Approach_alt is not int16_t, -1 means do noting. 0 means land, >1 means hover to that altitude after timeout.
2012-07-03 17:33:03 -07:00
Jason Short 207497a840 Arducopter.pde:
Added note about -1 to disable feature
Set RTL_Atl by default after reaching home in case we're at the wrong alt.
increased speed of Yaw rotation for WPs
2012-07-03 17:21:46 -07:00
Jason Short 8a2df85ee8 commands_logic: Removed some old unused code 2012-07-03 17:19:19 -07:00
Jason Short 4a2e9b692d Config: increased WP distance to 2m but default, removed alt hold D: causing issues with APM1 noise. 2012-07-03 17:18:33 -07:00
Jason Short 2bc77c1020 Log.pde: formatting 2012-07-03 17:16:26 -07:00
Jason Short c20c04ed24 removed GPS ground speed calc - was causing some funny business during the transition. 2012-07-03 17:16:14 -07:00
Jason Short b2d932136a Toy Mode: Yaw performance update. 2012-07-03 17:14:54 -07:00
Jason Short 50d1ff56c5 Config.h : shortening the landing time to 10s 2012-07-02 17:52:38 -07:00
Jason Short 88428743b2 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 0aabd4efe2 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 bea1ab8810 System.pde - RTL
removed Approach mode, fixed RTL to loiter until desired altitude is reached
2012-07-01 13:40:12 -07:00
Jason Short 44e12c6d2d Parameters
removed unused parameters for retro loiter
2012-07-01 13:40:12 -07:00
Jason Short 42a321b76c GCS_Mavlink.pde
removed Approach define
2012-07-01 13:40:11 -07:00
Jason Short 95e1f05f82 defines.h
removed Approach mode enumeration
2012-07-01 13:40:11 -07:00
Jason Short 3fb268da96 read_control_switch
Removed Prev_WP reference. unneeded.
2012-07-01 13:40:11 -07:00
Jason Short 99d6a45948 Config.h
Removed Approach delay redundancy - using land timer instead
Removed Retro loiter mode param
2012-07-01 13:40:11 -07:00
Jason Short 059fea36aa RTL: Commands.pde
When we are out of commands we land or Loiter at the RTL_Approach_altitude.
2012-07-01 13:40:11 -07:00
Jason Short 9cd9dd168e RTL: Commands.pde
Removed do_approach function - now redundant
2012-07-01 13:40:11 -07:00
Jason Short e5fbcb629d Arducopter.pde_RTL:
added a new RTL function that goes into Loiter, first, checks if we have reached RTL_Altitude, then enters WP mode to come home.
Removes Approach mode. Uses Auto_Approach value to decide if we should land or descend to a certain altitude
2012-07-01 13:40:11 -07:00
Jason Short 8c8f44e6f7 Arducopter: enabled RTL_altitude, renamed function to be more accurate 2012-07-01 13:40:11 -07:00
Jason Short b199fb22a2 Added code for self centering throttle - disabled by default. 2012-07-01 13:40:11 -07:00
Andrew Tridgell e791cad9ef AnalogSource: convert analogRead() calls to the new API
this should give us much better analog values, plus save a bunch of
CPU time
2012-07-01 15:01:05 +10:00
rmackay9 9624f8c179 ArduCopter: updated STABILIZE_ROLL_I to 0.01 (was 0.1) as instructed by Marco 2012-06-30 19:26:14 +09:00
Jason Short 60cdbe771c Circle_WP distance check fix 2012-06-29 21:20:28 -07:00
Jason Short d448ea23e6 Commands.pde: increased bad WP distance check 2012-06-29 21:20:28 -07:00
Jason Short d893cde785 navigation.pde : Added a drag/velocity prediction filter for improved I term wind correction. 2012-06-29 21:20:28 -07:00
Jason Short 59181eab3d System.pde: Toy mode details for set_mode() 2012-06-29 21:20:28 -07:00
Jason Short 7178da3538 GCS_Mavlink: added notes to #if malink10 2012-06-29 21:20:28 -07:00
Jason Short 49243bc206 defines.h: Toy Mode defines for flight modes 2012-06-29 21:20:28 -07:00
Jason Short 40e0d88d12 Config.h: Optimizing Nav gains 2012-06-29 21:20:28 -07:00
Jason Short bcf6c03157 Attitude.pde: Toy mode logic 2012-06-29 21:20:27 -07:00
Jason Short 146a4b021f Arducopter.pde: Added Toy mode refinements 2012-06-29 21:20:27 -07:00
Jason Short eb06320559 Params: Added toy_yate_rate 2012-06-29 21:20:27 -07:00
Jason Short 57b75736ce Added Toy mode to navigation 2012-06-29 21:20:27 -07:00
Jason Short c830ab6ded Aeducopter.pde: Toy mode updates 2012-06-29 21:20:27 -07:00
Adam M Rivera d399143498 commands_process.pde: Bug fix 427. By default, the copter would land after an AUTO mission. Updated to check for valid approach altitude at end of mission. 2012-06-29 21:41:56 -05:00
Andrew Tridgell 1cb96e14a9 SITL: enable the SIM_* parameters in ArduCopter and ArduPlane 2012-06-29 15:10:52 +10:00
Adam M Rivera 44ce8fc4bc ArduCopter: Loiter Timer should have been set when the approach altitude was set. Previously, land had to be enabled before auto approach would work. 2012-06-28 20:34:53 -05:00
Andrew Tridgell 7883c4a545 ACM: ArduCopter updates for new compass interface 2012-06-27 16:01:50 +10:00
Andrew Tridgell 7eb150a2f0 ACM: adapt the ArduCopter code for new barometer interface 2012-06-27 16:01:50 +10:00
Andrew Tridgell d71e82191f ACM: enable GPS in AHRS for ArduCopter
this is an experiment in centripetal correction for multicopters
2012-06-27 16:01:49 +10:00
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 3fcd3100cc Added user editable define for Super simple radius 2012-06-26 10:38:46 -07:00
rmackay9 c034e38cbd ArduCopter HIL: changed calls to setHIL to send in time as a uint32_t (it was a float) 2012-06-26 22:50:17 +09:00
Jason Short 91cde15c27 Attitude.pde - Added small boost to alt hold for takeoff. 2012-06-25 23:12:19 -07:00
Jason Short 711bbeb6f3 GCS_Mavlink.pde : mav_nav only used in legacy Mavlink. 2012-06-25 23:08:25 -07:00
Jason Short 4a85c40f03 Added Toy Mode control 2012-06-25 23:08:25 -07:00
Jason Short 03879d9113 Added Toy Mode defines 2012-06-25 23:08:25 -07:00
Jason Short 4872880134 Arducopter.pde : Added Approach mode, added "Toy" mode fun code I'm playing with.
Added landing code to make landing happen closer to home loc
Added check for distance to Loiter WP before overriding a new Loiter position.
Moved calc_loiter_pitch_roll() to 50 hz.
removed the nav_bearing var - not used with new crosstrack.
2012-06-25 23:08:25 -07:00
Jason Short efc74a87aa commands.pde: fixed unit error for distance check 2012-06-25 23:06:28 -07:00
Jason Short 7a5347fb1f Config.h : New Gains based on testing, new Crosstrack gain. from 1.0 to .2 because of new algorithm 2012-06-25 23:06:28 -07:00
Jason Short 81c684664b GCS Mavlink.pde: change reference to nav_bearing to target_bearing. 2012-06-25 23:06:28 -07:00
Jason Short 50b3ef66a7 Navigation.pde : removed old cross tracking from Arduplane. Added new 2D cross tracking. Added use of GPS velocity when above 1.5m/s 2012-06-25 23:06:28 -07:00
Jason Short 2fdbbb87f2 inertia.pde: WIP don't fly with inertia enabled until FN. 2012-06-25 23:06:28 -07:00
Jason Short 900f169c44 Log.pde: removed nav_bearing reference and replaced with target_bearing ref 2012-06-25 23:06:28 -07:00
Andreas M. Antonopoulos 678b12af25 AC2.6: Fix battery calculation and scaling bug for MAV1.0, now same as ArduPlane
http://code.google.com/p/arducopter/issues/detail?id=430
2012-06-24 17:01:25 -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 014f0f9a99 Config.h - returned low to original 120 2012-06-20 15:22:35 -07:00
Jason Short 95f3041d25 Parameters.h: throttle_min and throttle_max now have defaults from Config.h 2012-06-20 15:02:00 -07:00
Jason Short b8016dfe48 changed define to a param for throttle_min and throttle_max 2012-06-20 15:00:53 -07:00
Jason Short ef847eecbb changed define to param for throttle_min 2012-06-20 15:00:05 -07:00
Jason Short 8ef60f2d75 Added throttle_min as a user definable param 2012-06-20 14:58:34 -07:00
Jason Short 25a67c9953 lowered minimum throttle 2012-06-20 08:47:47 -07: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 d7fab41234 decreased I term based on the tests last weekend in high winds 2012-06-20 08:47:47 -07:00
Jason Short a0978e06e5 Adjustments to the Inertial_nav
lowered Rate_I and Rate_P to be less jumpy. raised throttle_p
added a clear to rate when entering loiter
moved the raw reporting
2012-06-20 08:47:47 -07:00
Andrew Tridgell 5525180814 MAVLink: make usage of MAVLink defines more consistent 2012-06-15 16:27:11 +10:00
rmackay9 6b16ca190f ArduCopter: updated firmware to simply 2.6 (i.e. removed Epsilon) ahead of the release 2012-06-15 00:42:59 +09:00
Jason Short e261c62e6b Inertial Nav disabled by default 2012-06-13 22:37:52 -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
Jason Short ee78818f5a Raised the Max throttle to 1000, min to 200. Worked good in SIM with Tridge's motor safety patch. 2012-06-12 13:58:49 -07:00
rmackay9 c9093a1609 ArduCopter: updated firmware version to 2.6 Epsilon 2012-06-12 23:22:57 +09:00
rmackay9 1b9ed1444e ArduCopter: updated standard loiter pids.
Loiter_P (speed from distance to target) = 0.2 (was 0.35)
Loiter_Rate_P (lean angle from desired acceleration) = 2.4 (was 2.5)
Loiter_Rate_I = unchanged at 0.08
Loiter_Rate_D = 0.40 (was 0.45)
2012-06-12 20:56:31 +09:00
Jason Short ebff84d41e Added Angel's name to contrib list 2012-06-10 12:38:22 -07:00
Andrew Tridgell 8f1121c980 GPS: Use appropiate GPS_ENGINE settings in APM, ACM and rover 2012-06-10 16:36:18 +10:00
rmackay9 df72f70aba ArduCopter: updated firmware version to 2.6 Delta ahead of the next round of testing (and hopefully soon a release) 2012-06-08 21:54:09 +09:00
Andrew Tridgell bfb2c1ee87 GPS: open the GPS serial port with a 256 byte buffer
the UBLOX needs more than 128 bytes for reliable parsing
2012-06-08 16:42:03 +10: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
rmackay9 cad76d4e0f ArduCopter: updated firmware description to 2.6 Gamma 2012-06-05 21:28:13 +09:00
Andrew Tridgell af1573ad30 ACM: prevent link flood with "Low Battery" warnings
thanks to Marco for noticing this
2012-06-05 11:31:40 +10:00
Michael Oborne 1423810247 AC: add hilstate message 2012-06-04 16:24:08 +08:00
Jason Short 9cadd8c1db Bug fix: When adjusting altitude, RTL then land will fail unless this var is reset to false. 2012-06-03 22:25:27 -07:00
Jason Short 60c89ee117 Updates to Flip:
Ability to abort flip mode if things go wrong
init function to re-enter flip mode if aborted
2012-06-03 22:15:19 -07:00
Andrew Tridgell 13ae16e0c5 ACM: MAVLINK10 uses HIL_STATE
thanks to Michael for noticing this
2012-06-04 13:31:07 +10:00
Andrew Tridgell 8d28cb51fc added mavlink09 targets
allows easier building with mavlink0.9
2012-06-04 13:14:52 +10:00
Andrew Tridgell 0721089acd ACM: fixed HIL build for MAVLINK10 2012-06-04 13:14:52 +10:00
Michael Oborne 45c3c101fe fix AC hil build 2012-06-04 11:12:52 +08:00
Michael Oborne 7d2532450a enable mavlink10 by default 2012-06-04 08:02:08 +08:00
Jason Short f2edc87797 Added note to remove this unused param 2012-06-03 11:13:50 -07:00
Jason Short 9723e52a01 using current PWM rather than a re-read of the PWM. 2012-06-03 11:13:50 -07:00
Jason Short 5ce93faf51 Moved PID logging counter into define 2012-06-03 11:13:50 -07:00
rmackay9 826cffe688 ArduCopter: Ensure update_GPS does nothing when gps is disabled.
This fixes a bug in which an APM without a GPS would not work because it would constantly scan for a valid GPS long after it should have given up and moved on.
2012-06-03 23:48:45 +09:00
rmackay9 68de4e0259 ArduCopter: updated firmware version to 2.6Beta in preparation for beginning of testing 2012-06-03 17:02:35 +09:00
rmackay9 09695602d2 ArduCopter: updated firmware version to 2.6Beta in preparation for beginning of testing 2012-06-03 16:59:23 +09:00
rmackay9 8f8e91a620 ArduCopter: Another attempt at fixing the lat/lon printing bug in which small negative lattitudes or longitudes were appearing as positives.
Fixed in both ArduCopter Log.pde and the GPS Auto test sketch
2012-06-03 16:58:19 +09:00
rmackay9 df3fb5c041 ArduCopter: fixed print_latlon bug in which it would print negative lat/lon numbers incorrectly (i.e. -1234567890 would be printed as -124.xxx). 2012-06-02 12:51:12 +09:00
Jason Short 477aa6e47a RC_Channel fix for throttle output.
throttle was outputting incorrectly and allowing the user to max out the throttle leaving nothing for attitude control
2012-05-31 14:59:03 -07:00
Robert Lefebvre bafb478924 TradHeli: Incorporating Ext ESC Control 2012-05-30 21:50:25 -04:00
Robert Lefebvre 3df1aac936 Change to increase Parameter space as we have run out.
This will decrease the max number of waypoints from 186
to 169.
2012-05-30 20:41:53 -04:00
Jason Short abb426aec3 When RTLing, force home as the final location for loiter. 2012-05-30 11:06:41 -07:00
Jason Short 5b31f3ba27 moved detector to run until the throttle is low, then stop running. 2012-05-30 09:44:59 -07:00
Jason Short 42032f9845 Missed a Semicolon 2012-05-30 09:36:16 -07:00
Jason Short e6ee50f53d Altered the ground detector logic to no continuously run when landed 2012-05-30 09:34:31 -07:00
Jason Short c45209eaff Broken timer - removed 2012-05-29 12:56:38 -07:00
Jason Short 93d7712c9a Removed unused variable 2012-05-29 12:43:23 -07:00
Jason Short 9ea54b3171 Lowered I term - causes oscillations in SIM 2012-05-29 12:43:01 -07:00
Jason Short 2ae5d50261 Renamed some variables to clarify functionality. 2012-05-29 12:42:37 -07:00
Jason Short 33d1b5a137 Speed up automatic disarming to 25 seconds for safety.
renamed AUTO_ARMING_DELAY to AUTO_DISARMING_DELAY
2012-05-29 12:41:35 -07:00
Jason Short 3ba6e1db7a Removed references to a takeoff timer 2012-05-29 11:28:40 -07:00
Jason Short c523a9822b Failsafe: Looking for takeoff_complete now vs unreliable GPS 2012-05-29 11:25:04 -07:00
Jason Short 394f8c6eb0 pulling throttle low in flight turns out to be more common than thought. Removed clearing of takeoff_complete flag. This is still cleared during disarm which is automatic after 30 seconds of no throttle. 2012-05-29 11:25:04 -07:00
Jason Short a3a90287f4 changed the way takeoff complete is figured. Looking for high throttle. 2012-05-29 11:25:04 -07:00
Jason Short 72758ff3ab Added note to functionality 2012-05-29 11:25:04 -07:00
Jason Short 996cfc5c96 changed WP radius to AP_Int16 2012-05-28 22:39:29 -07:00
Jason Short 4ed48510dc reversed circle_WP calculation so the next_WP refers to the destination around the circle and circle_WP refers to the center. The intent is to make it easier to see via ground station. 2012-05-27 09:21:20 -07:00
Jason Short e2086decc6 Arducopter.pde : setting rtl_approach_alt above 1 would force auto landing even if auto-landing was disabled. 2012-05-23 22:00:56 -07:00
Andrew Tridgell 1fc8347af3 MAVLink: send time of GPS fix accurately
when we send a GPS_RAW message, set the usec field to the time we got
the fix from the GPS, not the current time. This makes it possible for
aerial photo processing to be more accurate, as the usec field with
more accurately reflect the planes position/time pair
2012-05-23 17:33:33 +10:00
Andrew Tridgell 5b5d43f5d0 Log: don't print '+' while erasing logs
we no longer do page based erase, so printing a + every 128 pages
makes no sense
2012-05-22 20:10:29 -07:00
Robert Lefebvre df4246597f Updates to CopterLEDS
Creation of Nav Blink Function.
2012-05-22 09:58:37 -04:00
Andrew Tridgell 27e7d425af MAVLink: allow parameter fetch during mavlink_delay()
this allows the planner to fully connect to the APM with MAVLink while
doing a DataFlash erase
2012-05-22 16:13:35 +10:00
Jason Short 198da9c5e6 Flip.pde: renamed dcm to ahrs 2012-05-21 12:58:51 -07:00
Jason Short f55da34496 Some bug fixes to Auto-flip. I ran this code through the sim and found these flaws. 2012-05-21 11:07:41 -07:00
Jason Short 99dee97385 Added note 2012-05-21 09:58:23 -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
Jason Short f8ceec2b4b added check for duplicate time-stamped GPS messages. 2012-05-18 09:54:18 -07:00
Jason Short 95076bf08e navigation.pde:
removed unneeded WP_Distance check
remove unneeded return for Navigate
removed unneeded rate_D calcs
removed unused functions
2012-05-17 11:05:05 -07:00
Jason Short be71cbfcc8 Arducopter.pde :
removed unneeded d_rate_filters
updated Nav routine to handle faster GPS updates
moved calc_XY_velocity to GPS read
added check for duplicate GPS reads
2012-05-17 11:05:05 -07:00
Jason Short 7278e8d1e5 removed retro loiter code since Angel has a branch now.
shrank speed filter to avoid latency
removed unused forward estimator code

placed code for switchover to gps.groundspeed at 1.5m/s

added clamp for D term when below .5m/s to eliminate noise

added hybrid I-term based on speed error and position

changes Loiter D term to use position rather than acceleration to avoid noise
2012-05-15 22:14:23 -07:00
Jason Short cb68adfff2 Loiter Gains based on new SIM 2012-05-15 22:01:01 -07:00
Robert Lefebvre 17a1b6d672 Fixed Syntax error. 2012-05-15 12:35:35 -04:00
Robert Lefebvre a9349a6e87 More CopterLEDS changes.
Merged CopterLEDS and Piezo functions to eliminate pin conflict on APM2.  Created new Parameter bit to turn piezo function on and off from MP. Moved GPS and Aux pin assignments to allow commonality between APM1 and 2.  Set LED_Mode parameter default to 9 in order to make CopterLEDS completely backwards compatible with old Motor LEDS and Piezo code.  Legacy users should see no difference.
2012-05-15 12:00:21 -04:00
Robert Lefebvre 9e73dc4bd8 CopterLEDS changes for APM2 2012-05-15 10:07:03 -04:00
rmackay9 eaeaa3811a ArduCopter: bug fix for reversing tri servo
Extended AP_MotorsTri class to take in pointer to rc_tail servo (rc_7) and we use this servo's REV parameter to determine whether to reverse the output to the tail servo or not
2012-05-13 12:36:46 +09:00
rmackay9 47ea92aa7f ArduCopter: updated version to 2.5.5 2012-05-13 08:47:43 +09:00
rmackay9 ee20f887b5 ArduCopter: fixed compile error by declaring extern print_latlon 2012-04-30 21:44:27 +09:00
Andrew Tridgell 94b763fa1e ACM: fixed HIL build 2012-04-30 22:42:17 +10:00
rmackay9 ed9c59879f ArduCopter: restored gps test in CLI
Added check so not enabled when using 1280.  Also fixed comments in other tests to explain the check for the 1280.
2012-04-30 17:29:50 +09:00
Adam M Rivera 292f9699fa Parameters.pde/AP_MotorsHeli: Updated comments to leverage the new value aliases 2012-04-28 20:50:41 -05:00
Adam M Rivera 2a85a64b6e Parameters.pde: Added value aliases to comments 2012-04-28 20:35:22 -05:00
Adam M Rivera c03f1d04ea Parameters.pde: Added more parameter comments. 2012-04-28 12:14:17 -05:00
Andrew Tridgell 8134c9a883 autotest: fixes for MAVLink 1.0 in autotest 2012-04-27 15:15:53 +10:00
Adam M Rivera 21886104a6 Parameters.pde/AP_MotorsHeli.cpp: Added comments from Roberts clone. 2012-04-26 18:26:14 -05:00
Adam M Rivera 09ffc69d93 Changed the marker for Group parameters to @Group. 2012-04-25 12:27:51 -05:00
Adam M Rivera 0132392e36 Parameters.pde: Added lib comments. 2012-04-25 11:23:46 -05:00
Adam M Rivera 74789273b7 Merge branch 'master' of https://code.google.com/p/ardupilot-mega into param-suffix 2012-04-24 14:11:54 -05:00
Adam M Rivera f70a4e61ea Parameters.pde: Updated comment schema to include the parameter name which becomes the XML node that contains the meta data. 2012-04-24 13:11:16 -05:00
Adam M Rivera 8c607d93fc Parameters.pde: Added new comment structure to a few parameters for testing. 2012-04-24 11:37:33 -05:00