Commit Graph

1964 Commits

Author SHA1 Message Date
Jason Short 3ce867508b Attitude.pde: Toy mode logic 2012-06-29 21:20:27 -07:00
Jason Short 668135ea8b Arducopter.pde: Added Toy mode refinements 2012-06-29 21:20:27 -07:00
Jason Short 49401bffae Params: Added toy_yate_rate 2012-06-29 21:20:27 -07:00
Jason Short 5e4d28baf0 Added Toy mode to navigation 2012-06-29 21:20:27 -07:00
Jason Short e036bee424 Aeducopter.pde: Toy mode updates 2012-06-29 21:20:27 -07:00
Adam M Rivera 61baa666c4 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 55092c25a6 SITL: enable the SIM_* parameters in ArduCopter and ArduPlane 2012-06-29 15:10:52 +10:00
Adam M Rivera dadc7d5a7d 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 33440567e6 ACM: ArduCopter updates for new compass interface 2012-06-27 16:01:50 +10:00
Andrew Tridgell dae1a57dc5 ACM: adapt the ArduCopter code for new barometer interface 2012-06-27 16:01:50 +10:00
Andrew Tridgell b676caa626 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 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 c76ac4543b Added user editable define for Super simple radius 2012-06-26 10:38:46 -07:00
rmackay9 068fe64b9b 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 812bf7d874 Attitude.pde - Added small boost to alt hold for takeoff. 2012-06-25 23:12:19 -07:00
Jason Short 46fb3b783a GCS_Mavlink.pde : mav_nav only used in legacy Mavlink. 2012-06-25 23:08:25 -07:00
Jason Short cd93c40f09 Added Toy Mode control 2012-06-25 23:08:25 -07:00
Jason Short 807c4ced34 Added Toy Mode defines 2012-06-25 23:08:25 -07:00
Jason Short 80d15368bc 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 7f92d702ab commands.pde: fixed unit error for distance check 2012-06-25 23:06:28 -07:00
Jason Short a0dc1f7ab1 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 c71c503c84 GCS Mavlink.pde: change reference to nav_bearing to target_bearing. 2012-06-25 23:06:28 -07:00
Jason Short 53d2a46cd6 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 92d481c08c inertia.pde: WIP don't fly with inertia enabled until FN. 2012-06-25 23:06:28 -07:00
Jason Short 28829b0d60 Log.pde: removed nav_bearing reference and replaced with target_bearing ref 2012-06-25 23:06:28 -07:00
Andreas M. Antonopoulos bef005b5f2 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 1064dcbd34 Open up constraint on Rate Yaw Output for all copters. 2012-06-22 10:06:01 -04:00
Jason Short 7e0708ca36 Config.h - returned low to original 120 2012-06-20 15:22:35 -07:00
Jason Short 839b8865aa Parameters.h: throttle_min and throttle_max now have defaults from Config.h 2012-06-20 15:02:00 -07:00
Jason Short efdf0a7fc8 changed define to a param for throttle_min and throttle_max 2012-06-20 15:00:53 -07:00
Jason Short e8510faf5d changed define to param for throttle_min 2012-06-20 15:00:05 -07:00
Jason Short 6020f6d9fa Added throttle_min as a user definable param 2012-06-20 14:58:34 -07:00
Jason Short 4f18e7f80b lowered minimum throttle 2012-06-20 08:47:47 -07: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 39a253a273 decreased I term based on the tests last weekend in high winds 2012-06-20 08:47:47 -07:00
Jason Short 8b212d8baa 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 58379b928f MAVLink: make usage of MAVLink defines more consistent 2012-06-15 16:27:11 +10:00
rmackay9 c62cc4844e 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 e31a1d969f Inertial Nav disabled by default 2012-06-13 22:37:52 -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
Jason Short ff0659535e 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 e1acf21381 ArduCopter: updated firmware version to 2.6 Epsilon 2012-06-12 23:22:57 +09:00
rmackay9 c6f1d93849 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 f5a85d48a0 Added Angel's name to contrib list 2012-06-10 12:38:22 -07:00
Andrew Tridgell 940d994efb GPS: Use appropiate GPS_ENGINE settings in APM, ACM and rover 2012-06-10 16:36:18 +10:00
rmackay9 aeaebb21d5 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 a684bddbda 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 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
rmackay9 70b04d9427 ArduCopter: updated firmware description to 2.6 Gamma 2012-06-05 21:28:13 +09:00
Andrew Tridgell 8b258e23e7 ACM: prevent link flood with "Low Battery" warnings
thanks to Marco for noticing this
2012-06-05 11:31:40 +10:00
Michael Oborne 14be88dd55 AC: add hilstate message 2012-06-04 16:24:08 +08:00
Jason Short 71f80f3a77 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 1b9f75c844 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 7c63d2c17b ACM: MAVLINK10 uses HIL_STATE
thanks to Michael for noticing this
2012-06-04 13:31:07 +10:00
Andrew Tridgell e7cf643386 added mavlink09 targets
allows easier building with mavlink0.9
2012-06-04 13:14:52 +10:00
Andrew Tridgell 3f4e87cccc ACM: fixed HIL build for MAVLINK10 2012-06-04 13:14:52 +10:00
Michael Oborne 9303a89573 fix AC hil build 2012-06-04 11:12:52 +08:00
Michael Oborne a71ed6c5ce enable mavlink10 by default 2012-06-04 08:02:08 +08:00
Jason Short 15aea320cb Added note to remove this unused param 2012-06-03 11:13:50 -07:00
Jason Short 12ab875d58 using current PWM rather than a re-read of the PWM. 2012-06-03 11:13:50 -07:00
Jason Short 9ab06c5542 Moved PID logging counter into define 2012-06-03 11:13:50 -07:00
rmackay9 72d76558a7 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 fd6b21d0c7 ArduCopter: updated firmware version to 2.6Beta in preparation for beginning of testing 2012-06-03 17:02:35 +09:00
rmackay9 4544b37fec ArduCopter: updated firmware version to 2.6Beta in preparation for beginning of testing 2012-06-03 16:59:23 +09:00
rmackay9 dcdeae412e 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 2a216ce900 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 c2d14a5cad 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 5f058fb9b2 TradHeli: Incorporating Ext ESC Control 2012-05-30 21:50:25 -04:00
Robert Lefebvre 30e55533dc 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 dec6f0ca62 When RTLing, force home as the final location for loiter. 2012-05-30 11:06:41 -07:00
Jason Short bc578172a5 moved detector to run until the throttle is low, then stop running. 2012-05-30 09:44:59 -07:00
Jason Short f0456dc947 Missed a Semicolon 2012-05-30 09:36:16 -07:00
Jason Short 302c632205 Altered the ground detector logic to no continuously run when landed 2012-05-30 09:34:31 -07:00
Jason Short 22065e3f3f Broken timer - removed 2012-05-29 12:56:38 -07:00
Jason Short 0ce883b96a Removed unused variable 2012-05-29 12:43:23 -07:00
Jason Short 9310d613e1 Lowered I term - causes oscillations in SIM 2012-05-29 12:43:01 -07:00
Jason Short 2311d52d37 Renamed some variables to clarify functionality. 2012-05-29 12:42:37 -07:00
Jason Short 7c6f766251 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 f491f5e9ca Removed references to a takeoff timer 2012-05-29 11:28:40 -07:00
Jason Short 15774366ba Failsafe: Looking for takeoff_complete now vs unreliable GPS 2012-05-29 11:25:04 -07:00
Jason Short 08bf04dd08 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 09f4a16bfb changed the way takeoff complete is figured. Looking for high throttle. 2012-05-29 11:25:04 -07:00
Jason Short b8349f5486 Added note to functionality 2012-05-29 11:25:04 -07:00
Jason Short 9d92602188 changed WP radius to AP_Int16 2012-05-28 22:39:29 -07:00
Jason Short 5754f97433 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 7df1aa2914 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 d9457ecc38 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 66544a5db2 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 4e4ff84cf1 Updates to CopterLEDS
Creation of Nav Blink Function.
2012-05-22 09:58:37 -04:00
Andrew Tridgell 422dc82f32 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 1b9f34e4e0 Flip.pde: renamed dcm to ahrs 2012-05-21 12:58:51 -07:00
Jason Short 5407acdb4c 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 f6d8a18182 Added note 2012-05-21 09:58:23 -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
Jason Short 8d075015e1 added check for duplicate time-stamped GPS messages. 2012-05-18 09:54:18 -07:00
Jason Short 9732b7d2dc 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 7e190c6f5c 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 d1cd04486a 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 7f3e142fa8 Loiter Gains based on new SIM 2012-05-15 22:01:01 -07:00
Robert Lefebvre c5f7b2fff2 Fixed Syntax error. 2012-05-15 12:35:35 -04:00
Robert Lefebvre c8fb9a6635 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 a285e2779f CopterLEDS changes for APM2 2012-05-15 10:07:03 -04:00
rmackay9 357d6c2d9b 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 2f74004fcb ArduCopter: updated version to 2.5.5 2012-05-13 08:47:43 +09:00
rmackay9 af86ae8cbf ArduCopter: fixed compile error by declaring extern print_latlon 2012-04-30 21:44:27 +09:00
Andrew Tridgell 435a64b97e ACM: fixed HIL build 2012-04-30 22:42:17 +10:00
rmackay9 a1f5661161 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 56d3fa1601 Parameters.pde/AP_MotorsHeli: Updated comments to leverage the new value aliases 2012-04-28 20:50:41 -05:00
Adam M Rivera 40fdba441b Parameters.pde: Added value aliases to comments 2012-04-28 20:35:22 -05:00
Adam M Rivera 941cf6fa69 Parameters.pde: Added more parameter comments. 2012-04-28 12:14:17 -05:00
Andrew Tridgell 67afdc7485 autotest: fixes for MAVLink 1.0 in autotest 2012-04-27 15:15:53 +10:00
Adam M Rivera 239323eaa4 Parameters.pde/AP_MotorsHeli.cpp: Added comments from Roberts clone. 2012-04-26 18:26:14 -05:00
Adam M Rivera cb6f97fc7f Changed the marker for Group parameters to @Group. 2012-04-25 12:27:51 -05:00
Adam M Rivera 51bcc73c77 Parameters.pde: Added lib comments. 2012-04-25 11:23:46 -05:00
Adam M Rivera 9fb9231ec4 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 29fec278eb 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 acab9b7c2c Parameters.pde: Added new comment structure to a few parameters for testing. 2012-04-24 11:37:33 -05:00
Andrew Tridgell 4fee26437b MAVLink: make ACM build with MAVLink 1.0 possible in arduino GUI 2012-04-24 22:24:58 +10:00
Andrew Tridgell fe970221e2 ACM: added support for MAVLink 1.0 to ArduCopter
most operations should now work
2012-04-24 19:54:20 +10:00
Adam M Rivera b2a7227ae7 ArduCopter/Navigation: Updated code to reference the new g.retro_loiter param instead of the compile define. 2012-04-23 00:19:18 -05:00
Adam M Rivera 60c347e23b Parameters: Added g.retro_loiter which is configurable by the user via the MP. 2012-04-23 00:17:52 -05:00
Adam M Rivera 8e580729b7 config.h: Removed comment. 2012-04-23 00:16:41 -05:00
Adam M Rivera 97040a7b3a Merge branch 'master' of https://code.google.com/p/ardupilot-mega into auto-approach 2012-04-23 00:03:37 -05:00
Jason Short 9c19138fb8 Log.pde : Updated Flash Logging to log Floats properly vs scaled integers. 2012-04-21 15:25:53 -07:00
Jason Short e22832a832 Added a union for casting floats to ints and back when storing Floats to the DataFlash 2012-04-21 15:17:09 -07:00
rmackay9 090f5aaa6f ArduCopter - config.h - set standard RC_SPEED to 125 for helicopter frame 2012-04-21 23:46:36 +09:00
rmackay9 c993049c48 ArduCopter - combined CH6_DAMP and CH6_STABILIZE_KD tuning parameters to avoid confusion 2012-04-21 23:24:57 +09:00
rmackay9 533772339e ArduCopter - Attitude.pde - added logging of optical flow pid controller 2012-04-21 20:17:12 +09:00
rmackay9 3e95ade004 ArduCopter - changed optflow object to be APM2 version if necessary 2012-04-21 20:15:55 +09:00
rmackay9 919f004b27 ArduCopter - changed Optical Flow for APM2 to use A3 pin 2012-04-21 20:15:16 +09:00
Adam M Rivera 7d13371acf Merge branch 'master' of https://code.google.com/p/ardupilot-mega into auto-approach 2012-04-20 11:45:38 -05:00
rmackay9 f0a9209935 ArduCopter - regressed version back to 2.5.4 2012-04-20 21:58:32 +09:00
James Goppert 5390467f3d Worked on ArduCopter cmake options. 2012-04-19 16:05:08 -04:00
Adam M Rivera c233defbe6 Merge branch 'retro-loiter' of https://code.google.com/r/a432511-wip into auto-approach
Conflicts:
	Tools/ArdupilotMegaPlanner/Common.cs
2012-04-19 11:08:34 -05:00
Adam M Rivera 1676e09f12 navigation.pde: Put the new calc_GPS_velocity method in a compiler if that checks the new RETRO_LOITER_MODE config value (saves space and ensures its not being used unless retro loiter mode is enabled) 2012-04-19 10:21:04 -05:00
Adam M Rivera 24363ccb83 Merge branch 'master' of https://code.google.com/p/ardupilot-mega into retro-loiter 2012-04-19 10:17:36 -05:00
Adam M Rivera d29f1ef331 Loiter: Made the "retro loiter" routines configurable. Add RETRO_LOITER_MODE ENABLED to APM_Config.h to enable the older loiter shtuff. 2012-04-19 10:16:29 -05:00
Adam M Rivera a7bc3d2cc6 Arducopter.pde: Moved gps to 10hz. Changed calc_XY_velocity to calc_GPS_velocity. 2012-04-18 23:07:35 -05:00
Adam M Rivera d4a4641ae6 navigation.pde: Added calc_GPS_velocity. Added constraint to x/y error and x/y rate error. 2012-04-18 23:06:15 -05:00
James Goppert 53c143a575 Improved cmake options. 2012-04-18 23:15:29 -04:00
James Goppert 0e7e77760a Updated ArduPlane/ArduCopter cmake options. 2012-04-18 15:16:02 -04:00
Adam M Rivera a3842734a9 Planner/defines.h: Updated the enumeration value for APPROACH so as not to disturb the order of the universe. 2012-04-18 10:32:01 -05:00
James Goppert a9f0bd24d7 Switched to project specific cmake lists.
This is better since each project has very different options.
2012-04-17 23:07:20 -04:00
Adam M Rivera f6d81a16c2 ArduCopter: Added code to prevent mode from switching to APPROACH on every loiter. 2012-04-16 16:29:54 -05:00
Adam M Rivera 56a00fa1f7 ArduCopter: Changed millis compare to use new config value for approach delay. 2012-04-16 14:04:30 -05:00
Adam M Rivera 07e53fad18 commands_logic.pde: Added write to constrained value to EEPROM. 2012-04-16 14:03:33 -05:00
Adam M Rivera 7b277d7044 config.h: Added RTL_APPROACH_DELAY config value. 2012-04-16 14:00:08 -05:00
Adam M Rivera f9affb3295 Merge branch 'master' of https://code.google.com/p/ardupilot-mega into auto-approach
Conflicts:
	ArduCopter/Parameters.h
2012-04-16 10:23:01 -05:00
Adam M Rivera 0c3d6614cd system.pde: Updated param name to loiter_timer. 2012-04-16 10:12:30 -05:00
Adam M Rivera 3d024ba2dd commands_logic: Allowed for an approach alt as low as 1m. Added a check to make sure we are currently above our target approach alt. 2012-04-16 10:11:50 -05:00
Adam M Rivera 41702aca94 ArduCopter: Updated param name from auto_land_timer to loiter_timer, because it could really be used for more routines like auto-approach. Added timer before approach (20s). 2012-04-16 10:07:57 -05:00
Adam M Rivera a366bb2f81 Parameters: Changed rtl_approach_alt to float to support more granular altitudes 2012-04-16 10:06:29 -05:00
rmackay9 870b5e5f75 ArduCopter - CH6 Tuning - added AHRS_YAW_KP parameter as 30. Now you can easily set the amount that the mag is used to correct the gyro based yaw estimate in the DCM 2012-04-16 23:47:57 +09:00
Andrew Tridgell 95cb35c7bb AHRS: enable AHRS_ group in ArduCopter 2012-04-16 20:55:14 +10:00
Adam M Rivera 77d6f22864 ArduCopter, commands_logic: Updated logic to allow as low as 5m. 2012-04-15 19:50:05 -05:00
Adam M Rivera 2954bf6f76 ArduCopter: Added check to make sure user defined approach alt is at least 5. 2012-04-15 16:58:22 -05:00
Adam M Rivera cddcdb8be3 commands_logic: Added check to make sure the do_approach method is not being used to land. 2012-04-15 16:57:49 -05:00
Adam M Rivera a2b338c052 System: Added handler for the new APPROACH flight mode which will initiate an approach to a target alt as defined by the user. 2012-04-15 16:55:34 -05:00
Adam M Rivera a24b7bcf14 ArduCopter: Added check to g.rtl_approach_alt, which if greater than zero will initiate an approach to the target alt rather than land. 2012-04-15 16:54:43 -05:00
Adam M Rivera cfe3b58248 commands_logic: Added do_approach() to set the new target alt based on the user defined value. 2012-04-15 16:53:25 -05:00
Adam M Rivera 83fe6733d4 Defines: Added new control mode (APPROACH). 2012-04-15 16:52:32 -05:00
Adam M Rivera 7ba8c291bd Parameters: Added new APPROACH_ALT params (g.rtl_approach_alt) which stored the users desired target altitude after RTL is complete. 2012-04-15 16:51:41 -05:00
rmackay9 a71ed6abec ArduCopter - updated firmware version to "2.6 Beta" 2012-04-14 14:26:44 +09:00
rmackay9 24b81db20e ArduCopter - LEDS - main code to support COPTER_LEDS.
Code by Robert Lefebvre
2012-04-12 22:55:44 +09:00
rmackay9 c337df11c8 ArduCopter - LEDS - set new output pins to OUTPUT to support COPTER_LEDS.
Code by Robert Lefebvre
2012-04-12 22:55:40 +09:00
rmackay9 d70f5da5e0 ArduCopter - LEDS - define pins to be used for COPTER_LEDS.
Code by Robert Lefebvre
2012-04-12 22:55:36 +09:00
rmackay9 84b07b5e6a ArduCopter - LEDS - added new COPTER_LEDS definition
Code by Robert Lefebvre
2012-04-12 22:55:32 +09:00
rmackay9 0a3bc9a66a ArduCopter - LEDS - two new parameters to support COPTER_LEDS.
Code by Robert Lefebvre.
2012-04-12 22:55:28 +09:00
rmackay9 fad162989f ArduCopter - navigation.pde - added logging of Loiter PID controllers 2012-04-11 23:52:25 +09:00
rmackay9 f8210b164c ArduCopter - Parameters.h - changed initialisation order to remove compiler warning (have not changed enum values so shouldn't require eeprom format id update) 2012-04-09 17:37:06 +09:00
rmackay9 df85051574 ArduCopter - added dataflash logging of roll and pitch rate controllers 2012-04-08 10:19:20 +09:00
rmackay9 998058ec07 ArduCopter - removed unused motor pde files including heli.pde, motors_hexa.pde, motors_octa.pde, motors_octa_quad.pde, motors_tri.pde and motors_y6.pde 2012-04-04 23:06:12 +09:00
rmackay9 ad9a8acbab ArduCopter - test.pde - changed references "motor_armed" to "motors.armed()" as part of move to AP_Motors library.
Change to ESC initialisation calls to use motors.throttle_pass_through method of AP_Motors class.
2012-04-04 23:05:26 +09:00
rmackay9 1d086c83f0 ArduCopter - system.pde - changed references to "motor_armed" to "motors.armed()" as part of the move to use AP_Motors library. 2012-04-04 23:03:21 +09:00
rmackay9 4aa40bdf10 ArduCopter - setup.pde - changed cli for helicopter to call the new AP_Motors class's parameters instead of the global parameters.
changed init_esc to call the AP_Motor's class's "throttle_pass_through" function.
2012-04-04 23:02:29 +09:00
rmackay9 473126581d ArduCopter - radio.pde - changed motor initialisation to set update rate, frame orientation, min and max throttle to AP_Motors class.
Note: perhaps the motors speed at least should be moved to a parameter within the motors class.
output_min function greatly simplified as this is handled by the AP_Motors class.
2012-04-04 23:00:56 +09:00
rmackay9 905a445391 ArduCopter - motors.pde - changed references to "motor_armed" to "motors.armed()" because we've moved to using the AP_Motors class.
Simplified set_servos_4 function which was responsible for calling "output_motors_armed" or "output_motors_disarmed" as this determination as to whether the motors are armed or not is handled within the AP_Motors class.
2012-04-04 22:58:42 +09:00
rmackay9 aa54458dcf ArduCopter - leds.pde - changed refrences to "motor_armed" to "motors.armed()" 2012-04-04 22:57:50 +09:00
rmackay9 7df17e9b3b ArduCopter - removed references to MOT_1 etc as these are now within the AP_Motors class (i.e. MOT_1 has become AP_MOTORS_MOT_1) 2012-04-04 22:56:07 +09:00
rmackay9 ee308ea06c ArduCopter - increased firmware version to 118. Removed nearly all heli parameters as these are all created by the AP_MotorHeli class now.
Note: we cannot move the heli_servos to the AP_MotorHeli class yet because of a small issue in the parameters class.
2012-04-04 22:55:07 +09:00
rmackay9 8402a3d837 ArduCopter - Log.pde - changed MOT output to dataflash to take values from AP_Motors class's motor_out array instead of the global motor_out array. 2012-04-04 22:53:21 +09:00
rmackay9 e5710958bc ArduCopter - GCS_Mavlink.pde - changed output to ground station to use new AP_Motor's class motors array inplace of the global "motor_out" array. 2012-04-04 22:52:26 +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
rmackay9 54a0709759 ArduCopter - add includes for new AP_Motors classes.
Remove global motor_filtered and motor_out arrays.
Removed all global heli variables.
replace "motor_armed" with "motors.armed()"
removed output to rc_4 for tri because this is now handled by AP_MotorsTri class
2012-04-04 22:50:43 +09:00
Andrew Tridgell c0a54762c6 MAVLink: port the new adaptive flow control to ArduCopter
This allows for arbitrary stream rates, and supports flow control if
you are using a 3DR radio
2012-04-02 11:18:53 +10:00
rmackay9 75d7308fb4 ArduCopter - CH6 tuning - changed Roll/Pitch Rate D tuning to use the user supplied tuning range instead of the range / 100.
also changed heli_ext_gyro_gain to make it use the tuning range directly.
2012-03-31 09:28:25 +09:00
Andrew Tridgell e0bb7e2777 MAVLink: don't waste 100 bytes of bandwidth sending 1 byte of information
the GPS_STATUS message is a massive waste of bandwidth, but it is the
only message that tells us the number of visible satellites. So only
send it if that information changes.

This makes MAVLink work better at low baud rates
2012-03-30 17:46:20 +11:00
Andrew Tridgell 7634f541b9 ACM: use set_blocking_writes(false) when we arm motors 2012-03-30 17:46:20 +11:00
Andrew Tridgell b4107d35e8 MAVLink: raise the serial transmit buffer size to 256 bytes
the 128 byte serial transmit buffer was causing significant problems
with queueing of mavlink messages. With 256 bytes we can fit a lot
more messages out in each pass of the code, which makes telemetry more
efficient

As we discussed on the dev call, we now have enough free ram for this
to be worthwhile
2012-03-30 17:46:20 +11:00
Andrew Tridgell 0bc604f030 ACM: removed FORCE_AUTOMATIC_DECLINATION_UPDATE
we now have the EEPROM option COMPASS_AUTODEC instead
2012-03-30 14:25:27 +11:00
Adam M Rivera 51b70e4d36 ArduCopter: Changed implementation of configuration value for automatic declination. There is now a FORCE_AUTOMATIC_DECLINATION_UPDATE that when enabled will update the declination on every GPS 3D fix regardless of whether or not the user saved a value to the EEPROM. By default the declination will only be set by the automatic declination routine if the user has not saved a declination to the EEPROM. 2012-03-30 14:25:06 +11:00
rmackay9 0efb0e5b4d ArduCopter - added CH6_STABILIZE_KD tuning value 2012-03-29 21:09:41 +09:00
rmackay9 599cea21bb Added multiple new tuning parameters to the inflight channel 6 tuning feature:
#define CH6_YAW_KI 24
        #define CH6_ACRO_KP 25
        #define CH6_YAW_RATE_KD 26
        #define CH6_LOITER_KI 27
        #define CH6_LOITER_RATE_KI 28
2012-03-28 23:58:58 +09:00
Andrew Tridgell 34506b170f Mavlink: fixed warnings about limits on int32 values 2012-03-27 15:37:25 +11: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
Andrew Tridgell e956e21e7d ACM: enable the new compass offset nulling in ACM 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
rmackay9 67cf7b9eed ArduCopter - updated firmware version to 2.5.3 2012-03-25 09:13:51 +09:00
rmackay9 63b96c0153 ArduCopter - altitude hold - ensure throttle_avg is initialised from g.throttle_cruise parameter 2012-03-23 23:48:24 +09:00
rmackay9 89576a281a ArduCopter - updated to firmware version to 2.5.2 to avoid confusion with post 2.5.1 versions posted to downloads area 2012-03-23 23:12:49 +09:00
Robert Lefebvre 84d8414a2e Fix Auto_Trim to allow it to actually be called when setup on Ch7 pulldown menu in MP. 2012-03-23 09:17:58 -04:00
Jason Short e2560c5865 Throttle_hold was in APM_Config - which is ignored by the Mission planner Hex generator 2012-03-22 10:01:24 -07:00
rmackay9 ad4a2aa9f3 ArduCopter - motors_quad.pde - corrected test sequence for + configuration 2012-03-21 22:04:50 +09:00
rmackay9 66c4f752e3 ArduCopter - navigation - corrected comment in check_missed_wp function to clarify that you've passed the waypoint when the direction to the way point is more than 100 degrees off (not 10 degrees off) from your original bearing towards the waypoint 2012-03-20 17:11:22 +09:00
rmackay9 1dd554c333 ArduCopter - updated version to 2.5.1 2012-03-20 17:08:18 +09:00
rmackay9 0773a25b5d ArduCopter - increased default THROTTLE_CRUISE to 450 2012-03-20 16:34:07 +09:00
rmackay9 22315cd41a ArduCopter - Navigation.pde - corrected comment re wp_distance and get_distance to clarify that they are in cm (not meters!) 2012-03-20 16:13:38 +09:00
Andrew Tridgell 458d55e5bc MAVLink: constrain variable changes to the datatype range
if someone tries to set a AP_Int16 to a value of 300000, they now get
32767 instead of -27678
2012-03-19 17:29:02 +11:00
Andrew Tridgell 547b4ed55b AHRS: adapt ArduCopter for new AHRS framework 2012-03-19 17:29:02 +11:00
Jason Short c5344a2a85 ACM: Arducopter.pde - Added a constraint to the NO_NAV mode to be similar to the Loiter and rate nav modes. 2012-03-18 22:31:22 -07:00
Jason Short a0717f082e ACM: Attitude.pde - consolidated wind I term resets 2012-03-18 22:31:21 -07:00
Jason Short fe7ca98701 ACM: system.pde - removed reset_nav_I() to consolidate the wind control reset. 2012-03-18 22:31:21 -07:00
rmackay9 9841cb0335 ArduCopter - small change to ensure both roll and pitch commands are zero before switching out of loiter_override (loiter override becomes true when roll+pitch command is greater than 5 degrees and switches back to false when both become zero)
- remove incorrect comments about when loiter target position is reset.
2012-03-18 15:16:04 +09:00
rmackay9 dc92da818c ArduCopter - remove reference to AUTO_RESET_LOITER that is not used anymore 2012-03-18 14:53:19 +09:00
rmackay9 91b2b48fd8 ArduCopter - bug fix to calc_XY_velocity (was using uninitialised last_longitutde and last_latitude for speed calculations) 2012-03-18 12:11:12 +09:00
Jason Short 491af02d8a ACM: Lowered gains from flight tests today with 3DR Quad 2012-03-17 11:04:01 -07:00
Jason Short 427dacba70 ACM: Smoother Speed calcs 2012-03-16 14:10:19 -07:00
Jason Short 3038da1dc3 ACM: Softer Loiter Gains 2012-03-16 14:10:19 -07:00
Jason Short 48a0c9a818 ACM: Small fix to nav_throttle to prevent too fast of a landing. 2012-03-16 14:10:19 -07:00
Jason Short 6201bdb8a7 ACM: Fixed comment 2012-03-16 14:10:19 -07:00
Jason Short 1c0b28c956 Fixed Scaling bug in Sonar mixing 2012-03-16 14:10:19 -07:00
Jason Short 7153b94ade ACM: Disabled D term experiment for Loiter until more testing 2012-03-15 19:20:03 -07:00
Jason Short a52a14bf12 Tune down Loiter_P a hair 2012-03-15 19:17:27 -07:00
Robert Lefebvre be3fe36c52 Small fix on the Traditional Helicopter Collective-Yaw compensation calculation. 2012-03-15 20:14:18 -04:00
rmackay9 68e37774a6 ArduCopter - removed #define AUTOMATIC_DECLINATION ENABLED line to ensure users don't try and enable it because it needs a bit more work before it's ready for general use 2012-03-15 21:58:42 +09:00
analoguedevices 86eff20d5d Rev'ed version number to 2.5. Added more credits 2012-03-15 02:38:54 +00:00
Jason Short 6f8b97bf6a ACM: Added constraints for invalid climb rates. Robert Lefebvre had a bad sonar and very invalid rates crept into the system. 2012-03-13 21:31:16 -07:00
Jason Short 4315c06f34 Lowering the D filter for less latency and less oscillation. 2012-03-13 12:58:46 -07:00
Jason Short 48ba24a810 ACM: Loiter tuning updates, turned up I a bit, a higher I will work better if the system is well tuned. 2012-03-13 10:23:31 -07:00
Jason Short 468d9c4b4f ACM: Loiter D performance updates 2012-03-13 10:23:31 -07:00
Jason Short 7953808d14 ACM: Larger filter for Loiter D 2012-03-13 10:23:30 -07:00
Jason Short 7034b709d1 ACM: removing old define 2012-03-12 13:11:30 -07:00
Jason Short 73e2bd6cd8 ACM: Got the sign wrong. I'm using the derivative of the error now and not the sensor, so the sign was reversed. 2012-03-12 13:11:05 -07:00
Jason Short 0b51d9b8b0 ACM: Made Loiter_D 0 by default. Accidentally left it on by default. 2012-03-12 10:37:15 -07:00
Jason Short deed802d1a ACM: Broke out the D term for the PID loop to add custom filtering. The current AC_PID filtering wasn't working for this application and we needed more smoothing. Bad pitch oscillations were being transmitted to the copter. 2012-03-11 23:21:49 -07:00
Jason Short b3795f1c00 ACM: removed Filtering code for motors in Quad for testing 2012-03-11 23:21:49 -07:00
Jason Short a989b88680 ACM: made same as Loiter I 2012-03-11 23:21:49 -07:00
Jason Short 0d434ca92c ACM: Tuning based on flights today 2012-03-11 23:21:49 -07:00
Jason Short 0ab6b6e592 ACM: Rate_d filter for PID loop of Loiter. 2012-03-11 23:21:49 -07:00
Jason Short 77fe7de55d ACM: The I term in update_nav_wp with the no_nav condition was pulling from the wrong PID loop and was essentially 0 all the time. 2012-03-11 23:21:49 -07:00
rmackay9 a869a01294 ArduCopter - Log.pde - added wrap_360 to compass heading field of ATT message to resolve overflow problem that caused heading to appear as being off by 70 degrees 2012-03-12 12:09:04 +09:00
Andrew Tridgell 2a03a0584f AP_Declination: disable library when AUTOMATIC_DECLINATION is not ENABLED
unfortunately this library was causing avrdude to fail to load the hex
to my APM2. Until we work out why, it's disabled.
2012-03-11 21:46:41 +11:00
Adam M Rivera d3667faef4 AP_Declination: Added call to compass.set_initial_location if the compass is enabled when the 3D fix is obtained.
Signed-off-by: Andrew Tridgell <tridge@samba.org>
2012-03-11 20:59:47 +11:00
Adam M Rivera 2524f9c8df AP_Declination: Added new config value to allow the user to have the declination overwritten on every 3D fix.
Signed-off-by: Andrew Tridgell <tridge@samba.org>
2012-03-11 20:59:47 +11:00
Jason Short 62c2aa4924 ACM: Added Loiter D tuning 2012-03-10 14:17:57 -08:00
Jason Short cb8729109c ACM: Added Loiter_D for tuning as #23 2012-03-10 14:17:16 -08:00
Jason Short 0671bb9168 ACM: Firmware rev 2012-03-10 12:45:03 -08:00
Jason Short f9d0dc9daa ACM: disabled auto_calibration until more testing can be done 2012-03-10 12:44:49 -08:00
Jason Short 5ad7320505 ACM: changed alt hold initialization of altitude to be immediate 2012-03-10 12:44:18 -08:00
Jason Short 450f89ec5d ACM: Added note about scaling rates 2012-03-10 12:43:28 -08:00
Jason Short eb53200179 ACM: Altered the scaling speed for altitude changes for faster rises. 2012-03-10 12:43:01 -08:00
Jason Short 204f9957b0 ACM: Added force_new_altitude call to do immediate changes in altitude and no gradual changes. 2012-03-10 12:42:22 -08:00
Jason Short 83729d0f75 ACM: decreased rate P for alt hold to remove bumpy repsonse 2012-03-10 12:41:06 -08:00
Jason Short 220d5a1c6e ACM: Increased the altitude error P for smoother alt hold response 2012-03-10 12:40:44 -08:00
Jason Short 4b703e8842 decreased the loiter rate P for overshoot 2012-03-10 12:40:07 -08: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 29d6085bab added Force_new_altitude call for alt hold 2012-03-10 12:37:54 -08:00
Jason Short 4ba600c0c5 upped throttle manual boost to 225 2012-03-10 12:37:28 -08:00
rmackay9 afc4aceb32 ArduCopter - fixed small compile warning about unused x_iterm and y_iterm in navigation.pde 2012-03-11 01:27:58 +09:00
rmackay9 c7480f2281 ArduCopter - fix to dataflash logging of Mag heading 2012-03-11 01:27:29 +09:00
Andrew Tridgell d75e883fe8 GCS: get_integrator() is now get_gyro_drift() in DCM 2012-03-10 10:34:33 +11:00
Andrew Tridgell 9a06d35772 make 'ENABLE' and 'ENABLED' mean the same things
users get this wrong far too often!
2012-03-10 10:34:33 +11:00
Andrew Tridgell 828ad7625b ACM: removed the ADC filtering code 2012-03-10 10:34:32 +11:00
Andrew Tridgell 1016d3c95d ACM: removed quaternion special cases in CLI code 2012-03-10 10:34:31 +11:00
Andrew Tridgell 8393c0299b ACM: removed the DCM tuning overrides
not needed now that DCM scales with deltat
2012-03-10 10:34:31 +11:00
Andrew Tridgell 7291dfc25a ACM: removed the special case for quaternions in GCS code 2012-03-10 10:34:31 +11:00
Andrew Tridgell d6cfc51ae4 ACM: no need to fetch offsets at startup
AP_Param handles this
2012-03-10 10:34:31 +11:00
Andrew Tridgell ef771fecdc ACM: removed a lot of the special case code for quaternions 2012-03-10 10:34:31 +11:00
Andrew Tridgell 69c29d35ce ACM: change DCM loop to 100Hz
On my APM2 quad this seems to give better results
2012-03-10 10:34:31 +11:00
Andrew Tridgell 2596acc8eb ACM: removed incorrect mode definition 2012-03-10 10:34:30 +11:00
Andrew Tridgell 7a9b3d3388 Quaternion: show "Quaternion test" on startup if enabled 2012-03-10 10:34:29 +11:00
Andrew Tridgell 7e4c8592ff ACM: make it possible to build ArduCopter with quaternions 2012-03-10 10:34:29 +11:00
Andrew Tridgell 9bff4e2c4c ACM: only call the fast loop if the imu has new data
this prevents us spinning waiting for the sensors to gather some data
2012-03-10 10:34:29 +11:00
Andrew Tridgell 367947fd33 HWSTATUS: if we don't know the voltage, report it as zero
this will tell us if board_voltage() is really working
2012-03-10 10:34:28 +11:00
Andrew Tridgell 64cc04ae09 ACM: adjust yaw drift correction constants
this should give the compass a bit more authority
2012-03-10 10:34:28 +11:00
Andrew Tridgell a0ce202d87 ACM: added SIMSTATE, DCM and HWSTATUS messages to ACM 2012-03-10 10:34:27 +11:00
Jason Short 486c56ce41 Consolidated Barometer pressure sensing to a single filter based on Randy's new filter class. 2012-03-08 23:13:04 -08:00
Jason Short c8e9d57567 temp remove filter for quad motors during testing. It's unlikely this filter did anything at all to be honest. 2012-03-06 22:23:06 -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 c26eb6afcc ACM: Updated config values 2012-03-06 22:12:24 -08:00
rmackay9 8b256cf924 ArduCopter - fix for stability patch and motor filter meant to deal with engines tendency to speed up faster than they slow down 2012-03-06 23:20:30 +09:00
rmackay9 72a775cc2a ArduCopter - fixed typo in motor filtering for octa, octa_quad and y6 that is suppose to correct for props speeding up faster than they slow down. 2012-03-06 22:19:19 +09:00
rmackay9 706bea5992 ArduCopter - added OCTA_QUAD_FRAME to comments in APM_Configh.h to help user select frame when compiling with arduino 2012-03-06 22:15:02 +09:00
Jason Short 46d7da4d14 Added define for throttle range for altitude changes, updated it to 250 2012-03-05 22:12:53 -08:00
Robert Lefebvre a480b32400 Added support for TradHeli H1 swashplate type. Added new param heli_h1_swash_enabled.
Signed-off-by: Robert Lefebvre <robert.lefebvre@gmail.com>
2012-03-03 08:14:14 -05:00
Andrew Tridgell 0ff44563ec ACM: use g.rc_speed for all APM_RC.SetFastOutputChannels calls 2012-03-02 17:57:08 +11:00
Andrew Tridgell 0fc646d666 ACM: set default RC fast speed to 400Hz 2012-03-02 17:57:08 +11:00
Andrew Tridgell e213f6780e ACM: added RC_SPEED MAVLink parameter
this will set the speed for APM_RC.SetFastOutputChannels()
2012-03-02 17:57:08 +11:00
Andrew Tridgell f781bd735b ACM: fixed Parameters.h to avoid duplicate keys
unfortunately everyone needs to reload
2012-03-02 15:48:28 +11:00
Andrew Tridgell cb874d6097 ACM: added board_voltage() 2012-03-02 15:48:28 +11:00
Robert Lefebvre e49c2d2871 Rescale TradHeli roll_out and pitch_out into the min and max ranges to provide linear motion across the input range instead of stopping when the input hits the constrain value. These calculations are based on an assumption of the user specified roll_max and pitch_max coming into this equation at 4500 or less, and based on the original assumption of the total g.heli_servo_x.servo_out range being -4500 to 4500.
Signed-off-by: Robert Lefebvre <robert.lefebvre@gmail.com>
2012-03-01 22:04:50 -05:00
Jason Short 7c09e4a5e6 added stab_d gain scheduling - off by default 2012-02-28 20:16:40 -08:00
Jason Short a387956814 added stab_d gain scheduling 2012-02-28 20:16:40 -08:00
Jason Short ceef8070ac added stab_d gain scheduling 2012-02-28 20:16:40 -08:00
Jason Short b76c4ecb22 added stab_d gain scheduling 2012-02-28 20:16:40 -08:00
Jason Short efdf6ee79f added option for stab_d gain scheduling 2012-02-28 20:16:40 -08:00
Jason Short ca34d7b7c2 Added test for stab_d gain scheduling. 2012-02-28 20:16:40 -08:00
Pat Hickey 16ed16f403 Cleanup: rm ArduCopter/GCS_Mavlink\ copy.txt
* Not needed, but we can always checkout an old version if it is.

Hi Pat,
This may have been my WIP for the Mavlink 1.0 conversion. I tried to
give Tridge a head start on it. I've made small updates to it in
parallel to the current Mavlink. You can delete it as he would have used
it by now if he felt it was helpful.

Jason

On Feb 28, 2012, at 4:08 PM, Pat Hickey wrote:

It looks like this file was checked in by accident, possibly, but you've
made a few small changes to it since creating it.

Is it important? Should we get rid of it?

Git log of file below.

Thanks
Pat
...
2012-02-28 16:28:27 -08:00
Pat Hickey ff0fc26484 Cleanup: rename files with spaces in their names, replace with underscores
* Skipped /Tools/ArdupilotMegaPlanner/Resources/new...
  and /archive/Configurator/Source/Utilities/TDMS/G...
  because I don't want to mess with that.
2012-02-28 16:14:31 -08:00
Robert Lefebvre 76c3cd88f0 Added heli_collectiveFactor array
Signed-off-by: Robert Lefebvre <robert.lefebvre@gmail.com>
2012-02-28 10:49:28 -05: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
rmackay9 17d94b61ed ArduCopter - modified to work with new Filter library 2012-02-28 21:02:44 +09:00
Jason Short ba68d6d8a1 Set loiter rate enabled by default 2012-02-26 12:29:28 -08:00
Jason Short e06d8142c1 Added OPtion for non-rate based loiter 2012-02-26 11:33:37 -08:00
Jason Short 6e53949c2a removed Constraint that caused JLN's horizontal drift. 2012-02-26 11:33:37 -08:00
Jason Short 517172ba20 Added Loiter Rate Tuning 2012-02-26 11:33:37 -08:00
Jason Short 0ce0c7c262 Added Loiter_rate_tuning 2012-02-26 11:33:36 -08:00
Jason Short eac77504a3 Added more Logging for PIDs. 2012-02-26 11:33:36 -08:00
rmackay9 8193c786ef ArduCopter - added #include <Filter.h> to unbreak the build! 2012-02-26 17:05:41 +09:00
rmackay9 69132e0fe7 ArduCopter - change sonar to use new mode filter from Filter library 2012-02-26 15:35:14 +09:00
Jason Short f27e9f9ca1 added a simple rest of nav_throttle just in case 2012-02-25 13:31:21 -08:00
Jason Short cc5ab4aebf increased speed of alt hold I term based on Jani's Logs 2012-02-25 13:31:21 -08:00
Jason Short 1ce267f904 increased the rate error for more responsive alt hold 2012-02-25 13:31:21 -08:00
Jason Short a924c3685e Based on Jani's latest logs I've made two tweaks to alt hold.
The first is to remove the filter on the throttle output for alt_hold.

The second was to open up the constraint on climb rate. This is to deal with larger than expected disturbances causing altitude changes.
2012-02-25 13:31:21 -08:00
Andrew Tridgell e2bbc795ad ACM: use a NULL gps pointer in DCM init
current DCM API does need a GPS reference passed in, but it can be
NULL
2012-02-25 15:08:49 +11:00
Andrew Tridgell 0248b48d30 allow MAG_ENABLE to be changed in flight
this disables the compass in DCM if MAG_ENABLE is changed in
flight. Without this we would use a fixed yaw once the compass is
disabled

This also makes sure we don't pass the compass to DCM till we have
done a read. This ensures we have a good compass fix for the initial
DCM heading
2012-02-25 14:51:09 +11:00
Andrew Tridgell 864ed1a87f ACM: check the return of compass.init()
if the compass fails to initialise then don't pass it to DCM, or we
will get no yaw control. Report the init failure to the user.
2012-02-25 14:51:08 +11:00
Andrew Tridgell 698749dd92 ACM: don't pass a gps pointer to DCM
after discussion with Randy, we don't want ArduCopter to fall back to
GPS for yaw when the compass becomes unhealthy. So we shouldn't pass
the gps object to the DCM code at all.
2012-02-25 14:51:08 +11:00
Andrew Tridgell 690dc9052a GCS: force scalar type in copy_name()
this enables access to compass offsets over MAVLink
2012-02-25 11:37:20 +11:00
Andrew Tridgell 2e9105c68a AP_Param: added special handling for Vector3f
We would like to be able to use Vector3f as a parameter while exposing
the individual elements of the vector as MAVLink parameters. This
change to AP_Param makes that possible, by giving AP_Vector3f a dual
personality
2012-02-25 11:37:20 +11:00
Jason Short 1e254cbca0 Compass heading added to ATT log 2012-02-24 12:11:15 -08:00
rmackay9 57e5eee8c8 TradHeli - increase max yaw input to 45 degrees 2012-02-24 20:18:40 +09:00
Jason Short 385828824d updated Gains for Marco's loiter test 2012-02-23 22:03:26 -08:00
Jason Short 24345d4f43 Loiter updates 2012-02-23 22:03:26 -08:00
Andrew Tridgell 1cd3172954 ACM: ensure update_trig() doesn't cause NAN values for cos_roll/cos_pitch
the DCM matrix could have a value over 1.0 for c.x due to rounding
errors
2012-02-24 11:52:55 +11:00
Jason Short 364afe8da0 added a constraint to D term 2012-02-23 09:14:44 -08:00
Andrew Tridgell 95ef9206dc DCM: renorm_sqrt_count is now called renorm_range_count 2012-02-23 08:16:08 +11:00
Jason Short c7c16a5b0f Emile's Fixes 2012-02-22 10:27:34 -08:00
Jason Short 4483f19f85 Marco's Hexa Motors 2012-02-22 09:55:44 -08:00
Jason Short 242f54793c revved a version 2012-02-22 09:00:42 -08:00
Jason Short 729c824809 made timer unsigned 2012-02-21 21:49:03 -08:00
Jason Short 42b5d47f7b commented out control mode debug print 2012-02-21 21:48:07 -08:00
Jason Short 30efbae0e9 removed old comments 2012-02-19 14:21:27 -08:00
Jason Short 265c5255a3 Added slow_wp default in AP mode 2012-02-19 13:15:40 -08:00
Jason Short 336441b109 reset slow_WP option at mode switch 2012-02-19 13:13:42 -08:00
Jason Short 81a861c8ac Added slow wp option in calc_desired_speed 2012-02-19 13:13:21 -08:00
Jason Short 33d4d52a6b set Slow WP option for RTL in Auto mode 2012-02-19 13:12:23 -08:00
Jason Short cae49b3543 Added "slow WP" option for RTL. 2012-02-19 13:11:59 -08:00
Jason Short b54d08f410 Updated manual throttle control during throttle hold 2012-02-19 12:40:51 -08:00
Jason Short bcd5129f9b added workaround for resetting alt. 2012-02-19 12:40:08 -08:00
Jason Short fa32b084bd Added SW test for Manual Boost 2012-02-19 12:39:40 -08:00
Randy Mackay 9fabdb5797 TradHeli - change throttle range back to 0~1000 (was temporarily changed to be 1250~850 which limited the range of the swash plate's vertical movements) 2012-02-20 00:27:12 +09:00
Randy Mackay e146f225b1 ArduCopter - remove unnecessary block for next GPS value before saving home location 2012-02-19 15:38:40 +09:00
Andrew Tridgell df8a557630 AP_Param: update users of AP_Param for ParamToken 2012-02-19 17:05:28 +11:00
Andrew Tridgell 12327eb2a9 Heli: fixed some 'used before initialised' warnings 2012-02-19 16:34:43 +11:00
Jason Short 028de5d2c5 Axis lock beta (off by default) 2012-02-18 21:16:19 -08:00
Jason Short 885710fce6 updated max throttle define 2012-02-18 21:14:13 -08:00
Jason Short 05024cc06c Change 800 to a define 2012-02-18 21:13:28 -08:00
Jason Short 04b70ffdc2 added Axis_Lock params 2012-02-18 21:13:06 -08:00
Jason Short ff2b4ecb7a updated throttle range 2012-02-18 21:11:06 -08:00
Jason Short 1e37a0ec17 added a limit to range output 2012-02-18 21:08:17 -08:00
Jason Short 1b46daa12e some better defaults for JDrones 2012-02-18 14:23:21 -08:00
Randy Mackay b92d7aaad5 ArduCopter - fix for yaw control on Octa Quad Plus frame. 2012-02-18 22:04:09 +09:00
Randy Mackay 232359186e TradHeli - fixed small parameter bug affecting helis. The servo parameters were declared as GSCALAR instead of GGROUP in Parameters.pde.
also renamed heli parameters from _coll_ to the more descriptive _collective_
2012-02-18 20:57:51 +09:00
Randy Mackay b64c0da003 ArduCopter - updated version to 2.4 2012-02-18 18:44:29 +09:00
Andrew Tridgell 6929226b96 ACM: expanded EEPROM parameter area by 256 bytes 2012-02-18 10:51:57 +11:00
Andrew Tridgell 718a5b70e3 AP_Param: fixed saving of sensor calibration
this fixes the saving of the accel and gyro calibration to EEPROM,
which was initially broken by the AP_Param conversion
2012-02-18 10:51:57 +11:00
Jason Short b532cb91b1 added Rate_D tuning value 2012-02-17 15:23:59 -08:00
Jason Short 0075901f77 upped rate loop to 250hz 2012-02-17 15:23:59 -08:00
Jason Short 5218220f0f re-implemented WII Dampening filter for Marco. 2012-02-16 22:38:23 -08:00
Jason Short b052dab80d Adjusted gains to move closer to Marco's tests 2012-02-16 22:19:39 -08:00
Jason Short 17c6c7b294 added extra gain logging 2012-02-16 22:09:22 -08:00
Jason Short 908ca4e915 scaled X velocity 2012-02-16 22:09:22 -08:00
Jason Short bc1593e89c cast to float 2012-02-16 22:09:21 -08:00
Jason Short 632cc783a1 cast D term to float just in case 2012-02-16 22:09:21 -08:00
Jason Short 36a120d8df removed some unused vars,
formatting, made loop speed same as PIDT1 to eliminate variable.
2012-02-16 22:09:21 -08:00
Jason Short a43ee36bee CH 6 Range setup 2012-02-15 11:47:54 -08:00
Jason Short 3d63bb6cd4 Added acro_p to the params 2012-02-15 11:29:25 -08:00
Jason Short e8b6f5ecee allow auto-land if failsafe is triggered 2012-02-15 10:53:54 -08:00
Jason Short fabeccad4a Marco's updated Motor testing code 2012-02-15 10:49:35 -08:00
Jason Short 73591a0ca5 Added lengthy note about motor testing 2012-02-15 10:49:11 -08:00
Jason Short 9a3e862b55 added option in code for Loiter specific gains 2012-02-15 09:10:15 -08:00
Jason Short e249c8466d AP slew rate 2012-02-15 09:10:15 -08:00
Jason Short 21856e7696 new defaults for params 2012-02-15 09:10:15 -08:00
Jason Short fcb24ee17d Added Acro_P 2012-02-15 09:10:14 -08:00
Jason Short 574b86b02e synced params 2012-02-15 09:10:14 -08:00
Jason Short 91edeeeef2 added RTL_land_enabled
added auto_pilot slew rate
2012-02-15 09:10:14 -08:00
Jason Short aa0662008b Added new params for CH6 Tuning
moved enums to give more room for additional PIDs for Loiter
added new Acro_P gain
added auto_land_enabled option
added pi_loiter_lon and pi_loiter_lat for separate tuning of loiter
2012-02-15 09:10:14 -08:00
Jason Short 05abe44f32 Added range setting via a parameter for CH6 tuning 2012-02-15 09:10:14 -08:00
Jason Short c9b432955d removed unused Vars 2012-02-13 15:25:23 -08:00
Jason Short 4faba2048c Lowered for Jani 2012-02-13 15:25:23 -08:00
Andrew Tridgell ecdbfd257a token is 16 bits now 2012-02-13 16:22:53 +11:00
Andrew Tridgell d55a0c3a71 added AP_Param::show_all()
this moves the logic into common code
2012-02-13 16:22:52 +11:00
Andrew Tridgell 0f9adbdae0 token size for first()/next() is now 16 bits 2012-02-13 16:22:52 +11:00
Andrew Tridgell 617082769a go back to 1024 bytes for variables in EEPROM 2012-02-13 16:22:52 +11:00
Andrew Tridgell 0b3e3ec5c8 added group indexes to GCS_MAVLINK class 2012-02-13 16:22:52 +11:00
Andrew Tridgell d4305e0ae2 fixed apm2beta build with AP_Param 2012-02-13 16:22:52 +11:00
Andrew Tridgell 16417b651e the ACM parameters have a max size of 1114 bytes
to ensure that all parameters can be saved, expand parameter area by
256 bytes
2012-02-13 16:22:52 +11:00
Andrew Tridgell 3b4cae3cc3 adapted main ACM code for AP_Param 2012-02-13 16:22:52 +11:00
Andrew Tridgell c9c422539e update ACM MAVLink code for AP_Param 2012-02-13 16:22:52 +11:00
Andrew Tridgell a2d0900460 fixed warning in Log build 2012-02-13 16:22:52 +11:00
Andrew Tridgell bf1eb670e3 update main parameter code for AP_Param in ACM 2012-02-13 16:22:52 +11:00
Andrew Tridgell f1a41b041f log: fixed some integer size errors
need to be careful with the types passed to printf()
2012-02-12 20:38:37 +11:00
Pat Hickey 306a3bb4f9 Makefile: extra convenience target for apm2hexa 2012-02-11 16:05:51 -08:00
Pat Hickey 84dd0d2fda ArduCopter Hexa output_motor_test: individually select all 6 motors
* each of the 6 hexacopter motors can be selected individually
  by moving the joystick to extremes.

* previously, this was built from the quadcopter output_motor_test
  and some motors (left/right motors on +, front/back motors on X)
  were only selectable as pairs.
2012-02-11 16:05:51 -08:00
Pat Hickey 739317276d ArduCopter setup motors: print basic instructions. 2012-02-11 16:05:51 -08:00
Pat Hickey 6573cec611 ArduCopter APM_Config.h: add sample custom channel config
* uses new config variables introduced in 8a19543fd1e09621ba
2012-02-11 16:05:51 -08:00
Pat Hickey 470fd8788e ArduCopter Channel Config: config vars for user override of MOT_n mapping
* config variable CONFIG_CHANNELS has possible values
  CHANNEL_CONFIG_DEFAULT or CHANNEL_CONFIG_CUSTOM
* config_channels.h only provides APM1/APM2 mapping when
  CONFIG_CHANNELS == CHANNEL_CONFIG_DEFAULT
2012-02-11 16:05:51 -08:00
Jason Short 2c65fc9ddf Cosmetic tweaks for tuning 2012-02-11 15:29:11 -08:00
Jason Short 0a63f104ab Gain adjustments for 3d frame. 2012-02-11 15:29:11 -08:00
Jason Short 969ac70000 reset All for Auto takeoff 2012-02-10 22:54:29 -08:00
Jason Short b1d52da431 reset Rate_I for takeoff 2012-02-10 22:50:56 -08:00
Jason Short efce991bfb upped max target speed to center of loiter 2012-02-10 22:46:27 -08:00
Jason Short 8ae53bffd2 Made Yaw Hold universal for Acro 2012-02-10 22:32:55 -08:00
Jason Short dc15fe4c5d Moved to Rate_I by default for Jani to test 2012-02-10 22:32:55 -08:00
Jason Short c64d781dce get_acro_yaw added 2012-02-10 22:32:55 -08:00
Jason Short 19ab0f481e made Yaw work like Roll and Pitch 2012-02-10 22:32:55 -08:00
Jason Short 9f8d7d5076 Minimize the Yaw Deadzone 2012-02-10 22:32:55 -08:00
Jason Short 50aaa09348 Up Nav_Rate_P 2012-02-09 22:38:36 -08:00
Jason Short 62627e9b57 reverted to Save_WP now that CH7 triggering is fixed 2012-02-09 22:33:01 -08:00
Jason Short 3afaf2689c Fix for disabled CH7 value triggering WP saving 2012-02-09 22:32:04 -08:00
Jason Short 4313d19bc5 2.3.1v 2012-02-09 22:22:01 -08:00
Jason Short 71d57a5371 Enabled PWM test 2012-02-09 22:22:01 -08:00
Jason Short b315e23bbd Found missing Break in Switch statement. 2012-02-09 22:22:01 -08:00
Jason Short 2335b74bc3 faster FS timer 2012-02-09 22:22:00 -08:00
Jason Short c35ad2d493 Loiter update - removed compensation curve. Did some more math and its's not worth the effort, harder to tune. 2012-02-09 22:22:00 -08:00
Jason Short 6848dc17e5 Added safety to prevent shutdown of motors during Auto-land 2012-02-09 22:22:00 -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 fe7a0a97ab ArduCopter - CH7 - changed default to CH7_DO_NOTHING 2012-02-09 20:26:01 +09:00
levinemax 345a23273e Motor mix update for X8 (octo quad),
diagrams:
http://wiki.ardupilot-mega.googlecode.com/git/images/APM1/ACM-X8_APM14.jpg
http://wiki.ardupilot-mega.googlecode.com/git/images/APM2/FRAMES_X8.jpg
2012-02-09 03:57:40 +00:00
Randy Mackay 3517964e14 ArduCopter - Camera.pde - turn off camera pitch control (which uses channel 6) when channel 6 is being used for tuning. 2012-02-08 23:51:53 +09:00
Randy Mackay 70f91e3cc3 Arducopter - reduced rate of decent when landing using sonar 2012-02-08 22:46:32 +09:00
Randy Mackay f1a129c8ea ArduCopter - Log.pde - fixed Log_Read_Control_Tuning so that it doesn't read too many bytes. Also fixed up some comments 2012-02-05 16:56:51 +09:00
Randy Mackay 498970a948 TradHeli - tiny fix for yaw_offset. Yaw_offset is used to proactively counteract rotational force caused by changing the collective pitch (i.e. rapidly climbing or decending). There was a small bug for when the collective pitch is negative (i.e. powered decent) in which case the offset was in the incorrect direction. 2012-02-05 11:04:38 +09:00
Andrew Tridgell 1a861b3de5 allow for lower serial baud rates
not many people will use less than 9600 baud, except for those wanting
to test extreme range radios, which is what I'm trying to do :-)
2012-02-04 19:07:18 +11:00
Jason Short ef9418c2de fix issue with low throttle in air 2012-02-03 13:29:59 +00:00
Michael Oborne 151479f769 fix issue 502
to identify quad over mavlink
2012-02-03 06:53:08 +08:00
Pat Hickey dad4ee92e5 Revert all changes to ArduCopter Motors MOT mappings.
Revert "Arducopter Motors Octa: Change V frame MOT_ output ordering."

This reverts commit bdab02f408ddc5451fcb4c6390b2475d31ac657f.

Revert "hexa frame FRAME_CONFIG fixup"

This reverts commit d15e692df613cb728ec671a54dce166f6f1940a0.

Revert "Arducopter Motors Octa: revert OCTA_V_FRAME back to part of OCTA_FRAME"

This reverts commit cb0a8c62fbd07a8ae9dcb8d4fffce337ace1aa1c.

Revert "Arducopter Motors Hexa: Change ordering of MOT designations in Plus frame"

This reverts commit 120d7f9050d5ec9f8fbe02c0ed4f38621949f4ee.

Revert "Arducopter Motors Hexa: Revert HEXA_PLUS_ and HEXA_X_ to single HEXA_FRAME"

This reverts commit 7d65ec311fd2e1222a36d0b34c366e21f3869fcc.

Revert "Arducopter Frames: revert to old HEXA_FRAME and OCTA_FRAME defines."

This reverts commit 47c6e8662f4d5e8fb920f2049338541343d8d18e.

Revert "Add Max's changes for new MOT mappings. Defines new FRAME_CONFIG types."

This reverts commit 8259c90ec7cb29dedac19890cd9a4449b7399e36.
2012-02-01 10:14:46 -08:00
analoguedevices 3288b518c0 credits 2012-02-01 04:44:36 +00:00
analoguedevices 6dbcac855a Incremented version number to 2.3 2012-02-01 04:39:15 +00:00
Pat Hickey 36389cdbd8 ArduCopter Octa: fix yaw motors for Octa V.
* I based this off the APM1 Octa V diagram at
  http://code.google.com/p/arducopter/wiki/AC2_Multi
2012-01-31 19:37:49 -08:00
Pat Hickey 6a333b743a Arducopter Motors Octa: Change V frame MOT_ output ordering.
* I backed this out from Max's changes, but I'm not sure whether its correct.
2012-01-31 18:19:41 -08:00
Pat Hickey 7ca81bd2c9 hexa frame FRAME_CONFIG fixup 2012-01-31 18:19:41 -08:00
Pat Hickey a24f89fb6d Arducopter Motors Octa: revert OCTA_V_FRAME back to part of OCTA_FRAME 2012-01-31 18:19:41 -08:00
Pat Hickey 0735c2b62f Arducopter Motors Hexa: Change ordering of MOT designations in Plus frame
* This will change the output order for APM2, but not APM1.
2012-01-31 18:18:13 -08:00
Pat Hickey dbd1cc6a9f Arducopter Motors Hexa: Revert HEXA_PLUS_ and HEXA_X_ to single HEXA_FRAME 2012-01-31 18:18:13 -08:00
Pat Hickey b245265669 Arducopter Frames: revert to old HEXA_FRAME and OCTA_FRAME defines.
* HEXA_X_FRAME and HEXA_PLUS_FRAME merged back into HEXA_FRAME
* OCTA_V_FRAME merged back into OCTA_FRAME
2012-01-31 18:18:13 -08:00
Pat Hickey 0e9294538b Add Max's changes for new MOT mappings. Defines new FRAME_CONFIG types.
* HEXA_FRAME has been eliminated and changed to HEXA_X_FRAME and
  HEXA_PLUS_FRAME
* OCTA_FRAME stays the same name for X and +, but the V frame
  configuration requires new OCTA_V_FRAME name.
2012-01-31 18:18:13 -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 21bd48b6c3 Loiter PIDs 2012-01-30 21:13:03 -08:00
Jason Short 8aaf88e13b tweaks to Loiter 2012-01-30 21:13:03 -08:00
Jason Short 90099d4a42 ATT tuning update 2012-01-30 21:13:03 -08:00
Jason Short f225efef9f tuning 2012-01-30 21:13:03 -08:00
Jason Short 08a9249e2b cosmetic 2012-01-30 21:13:03 -08:00
Jason Short 5934b503b8 tuning fixes 2012-01-30 21:13:03 -08:00
Jason Short 31614c39dd Cosmetic 2012-01-30 21:13:03 -08:00
Jani Hirvinen 009e87105f Minor changes for PID for jDrones motors due latest changes on control laws. 2012-01-31 09:00:31 +07:00
Jason Short 23709bafef pid_nav_lat incorrectly labeled 2012-01-29 23:02:00 -08:00
Jason Short a3862ced62 cosmetic 2012-01-29 21:55:17 -08:00
Jason Short 46e08fb46a Added more attributions 2012-01-29 21:53:44 -08:00
Jason Short ae65a0f03f removed filter. Don't need it. 2012-01-29 17:10:52 -08:00
Jason Short bf2cc6072d limiting alt hold rate error to 1m/s 2012-01-29 17:08:34 -08:00
Jason Short 02aacc454b Lowering the throttle_P values by default 2012-01-29 16:27:13 -08:00
Jason Short 650c0ed3f1 made Loiter over ride exit dependent not on speed, but centered sticks. 2012-01-29 16:15:02 -08:00
Randy Mackay 693a2cfdcd 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 974c825f4a Optflow - minor fix to D term defaulting 2012-01-29 21:06:41 +09:00
Jason Short 67cd412105 Landing update for better baro landing 2012-01-28 22:35:57 -08:00
Jason Short 5ab37a346c reduce test.pde size for 1280 users 2012-01-28 22:16:24 -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
Jason Short 295631139a formatting 2012-01-28 21:19:46 -08:00
Jason Short d1fcebb5ca Cosmetic changes
GPS LED lock waits for home_is_set to be true
2012-01-28 21:19:46 -08:00
Jason Short 326a663c6b changed tuning range 2012-01-28 21:18:43 -08:00
Randy Mackay f3a95ff3cb 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 122623f64b OpticalFlow - added OF_LOITER flightmode 2012-01-28 09:27:16 +09:00
Pat Hickey 1dcd50e3be ArduCopter Tri: fix for enable_out of yaw servo, defined yaw servo for APM2 2012-01-27 07:39:01 -08:00
Randy Mackay 8dee001657 Sonar - changed default pin to A0 2012-01-26 22:50:48 +09:00
Pat Hickey 6c03307217 ArduCopter Heli: add motors_output_enable function 2012-01-25 22:41:09 -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
Randy Mackay 4434ddf389 Optical flow - updated standard frame rate to 2000hz and increased resolution to 1600cpi 2012-01-25 21:53:20 +09:00
Jason Short 25529dec69 added loiter_d to allow users to configure alternate Loiter alg 2012-01-22 14:19:27 -08:00
Jason Short 74daadb252 Revert "test to switch loiter controls"
This reverts commit 92270371d038f246d535f0ace9fc19272c44291d.
2012-01-22 14:19:27 -08:00
Jason Short 6476ba22f2 test to switch loiter controls 2012-01-22 12:28:34 -08:00
Pat Hickey 89e11afc09 ArduCopter: Call APM_RC.enable_out for camera channels in init_camera() 2012-01-22 12:03:11 -08:00
Pat Hickey 98a90d0352 ArduCopter: Call motors_output_enable at correct spot during init 2012-01-22 12:03:11 -08:00
Pat Hickey 04a3112f33 ArduCopter: Add implementation of motors_output_enable to each motors_ frame type 2012-01-22 12:03:11 -08:00
Jason Short dd1e08a7e0 Causes Aero_SIM to fail 2012-01-22 09:34:43 -08:00
Jason Short 1d9783652a added Beta 4 tag 2012-01-21 22:15:23 -08:00
Jason Short 60e3508f7c converted to cm
Signed-off-by: Jason Short <jasonshort@mac.com>
2012-01-21 22:14:08 -08:00
Jason Short aace39e65c 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 fffa1af3b3 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 f638a4b81d 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 2fa24e0557 added conversions of CM to M 2012-01-21 22:09:39 -08:00
Jason Short 7edd16e5fe 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 59d1f225d5 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 f3cc1121aa better default for speed governer 2012-01-21 22:05:48 -08:00
Jason Short 5cc19bbe7c slightly less filtering for less latency 2012-01-21 22:04:54 -08:00
Jason Short 9003b95499 Converted to cm for distance 2012-01-21 22:04:35 -08:00
Jason Short 8cb645f3c2 increasing the velocity near WP 2012-01-21 11:59:49 -08:00
Jason Short 1aa6d0ea08 limiting the pitch throttle compensation 2012-01-21 11:59:49 -08:00
Jason Short ab5716c42d Calc error for logs 2012-01-21 11:59:49 -08:00
Jason Short 7c25253422 Enabled auto throttle hold 2012-01-20 22:52:31 -08:00
Jason Short 7fb641ab77 added note 2012-01-20 22:52:31 -08:00
Jason Short fb72ecd4e4 formatting 2012-01-20 22:52:31 -08:00
Jason Short 127544b833 Added cast for comparison 2012-01-20 22:52:30 -08:00
Jason Short 42b1362bba cleanup 2012-01-20 22:52:30 -08:00
Jason Short 5ac26a5500 error on comparison operator 2012-01-20 22:52:30 -08:00
Jason Short 5180592913 Added Auto_land_timeout to params 2012-01-20 22:52:30 -08:00
Jason Short c190f83bb0 AutoLanding timeout for Mission Planner 2012-01-20 22:52:30 -08:00
Jason Short a22596fb33 Max throttle output was to high 2012-01-20 22:52:30 -08:00
Jason Short 19053bb725 Updated Firmware version 2012-01-20 22:52:30 -08:00
Jason Short f5fd3a0597 reset all I terms at Arming 2012-01-20 22:52:30 -08:00
Jason Short 287ffb5fb4 enabled Mavlink Land command 2012-01-20 22:52:30 -08:00
Jason Short 6784989e83 relocated reset_I term functions to central location 2012-01-20 22:52:30 -08:00
Jason Short d2c78d2b75 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 932869b686 renamed function 2012-01-20 22:52:30 -08:00
Jason Short 43365fe802 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 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 5141534ea9 B3 2012-01-20 22:52:29 -08:00
Jason Short db6db1ab91 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 6e94b21d67 Altitude no longer resets when moving loiter WP 2012-01-20 22:52:29 -08:00
Jason Short 85f10589b2 slowed down slightly 2012-01-20 22:52:29 -08:00
Jason Short 017364fc5b Lowered range to more sensible values 2012-01-20 22:52:29 -08:00
Jason Short 2831ff9148 Off by default 2012-01-20 22:52:29 -08:00
Michael Oborne 3142a75913 AC fix attitude level hil 2012-01-21 07:52:52 +08:00
Michael Oborne 95f58b0432 fix scale error 2012-01-21 06:33:18 +08:00
Michael Oborne 1bebb9452b AC sync battery code with arduplane 2012-01-21 06:29:09 +08:00
Michael Oborne 52a9bb3cd1 fix SITL attitude hil AC 2012-01-20 16:32:25 +08:00
Doug Weibel ed9f7cb1b6 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 0306bf97a0 Just a little more commenting work on global variables 2012-01-15 16:11:02 -07:00
Jason Short e2c2a453a8 APM2 Channel assignments 2012-01-15 10:24:16 -08:00
Jason Short 3ebed0b278 This allows users to test the Auto_throttle hold or cruise value 2012-01-14 11:43:52 -08:00
Jason Short 46ef246e67 b2 2012-01-14 11:37:00 -08:00
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
Jason Short 3ea49e1415 updated rev 2011-12-29 23:02:41 -08:00
Jason Short 21460a57ae Yaw Performance tweaks 2011-12-29 23:02:03 -08:00
Jason Short 95a70cf32e lowered to nav_lat and nav_lon int16
added a version that didn't have I term added to get a better indication of velocity estimation
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 17acbc4572 updated Loiter gains 2011-12-29 23:02:03 -08:00
Jason Short 53c09774e5 removed Rate_I from Loiter, lowing Rate_P from Loiter too. Too aggressive leads to rapid oscillations in air, and not around loiter position. 2011-12-29 23:02:03 -08:00
Jason Short 2c1fe93856 cosmetic 2011-12-29 23:02:03 -08:00
Jason Short 6f42442e57 Added 5 sec Takeoff Timer to clear i terms when lifting
Moved loiter relocation function to update_nav
moved User hooks to correct place
Added tuning for D term
2011-12-29 23:02:03 -08:00
Jason Short f41835d546 Added Stabilize_D parameter 2011-12-29 23:02:02 -08:00
Jason Short bb954bc479 Upped Yaw speed to deal with performance complaints
Added new Stabilize D term default of .25
2011-12-29 23:02:02 -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 fa49aa5eec Fixes for Smooth Loiter 2011-12-29 23:02:02 -08:00
Jason Short 4f60fa412c Set Define for Max throttle 2011-12-29 23:02:02 -08:00
Jason Short 8a921e869c Fixed a 1280 only test 2011-12-29 23:02:02 -08:00
Jason Short db96b9ec7a added define for Max throttle 2011-12-29 23:02:02 -08:00
Jason Short 244ca98264 Added Dampening term for tuning 2011-12-29 23:02:02 -08:00
Jason Short 7e1e1f84b3 updated Loiter PIDs 2011-12-29 23:02:02 -08:00
Jason Short 4b5437afe8 Enable Magnetometer by default 2011-12-29 23:02:02 -08:00
Jason Short 51e6170ecb Missing ; 2011-12-29 23:02:01 -08:00
Jason Short 4353f60f60 removed takeoff complete flag from missions, not used and would be useful elsewhere. 2011-12-29 23:02:01 -08:00
Jason Short fbb35928fe removed unused function
Simplified the baro init filter
2011-12-29 23:02:01 -08:00
Randy Mackay bbe6dea980 OptFlow - initial support for APM2 (there are still problems) including adding ability to set Chip Select pin.
Other unrelated changes are:
a) fixed typo in 'esitmate_velocity' to 'estimate_velocity'.
b) moved init_compass from system.pde to sensors.pde which seemed consistent with other sensors.
2011-12-30 12:06:31 +09:00
Andrew Tridgell 955dfe0226 ACM: check compass health before using it 2011-12-28 20:41:53 +11:00
Andrew Tridgell 03a16c6e45 ACM: use new I2C library 2011-12-28 20:41:53 +11:00
Andrew Tridgell 433df08cb3 ACM: enable compass by default on APM2 2011-12-28 20:30:35 +11:00
Andrew Tridgell 73e6d5ee11 ACM: update for DataFlash changes 2011-12-28 16:00:49 +11:00
Jason Short 234121f3c3 Fix for 11 channels of motors. 2011-12-26 14:39:01 -08:00
Andrew Tridgell 4fe527aefa ACM: use LED_OFF/LED_ON instead of LOW/HIGH 2011-12-26 19:32:53 +11:00
Andrew Tridgell 111d156a99 ACM: fixed HIL build again 2011-12-26 19:17:11 +11:00
Andrew Tridgell ab64a689c8 ACM-log: use DataFlash.df_NumLogs
this fixes the flash size on APM2
2011-12-26 19:17:11 +11:00
Randy Mackay 07041c2149 TradHeli - modified the default collective min/max values to restrict movement to about half the full range. 2011-12-26 16:59:01 +09:00
Jason Short 1afa25d9ef Tweaks to fix Loiter
Changed save location to int32
added some filtering and smoothing
2011-12-25 15:44:49 -08:00
Randy Mackay c24b5229e1 AP_GPS - updated MTK rate to 10Hz and fixed lat/lon printing inaccuracy in Arducopter logs and AP_TEST example sketch 2011-12-25 12:33:06 +09:00
Andrew Tridgell 0dadbf932a removed "Please run setup" loop from ArduCopter
Chris asked for this to be removed as it was really mucking up the
initial experience setting up ArduCopter via the planner
2011-12-24 18:12:51 +11:00
Jason Short cc4f5e7c74 disabled some tests with warnings 2011-12-23 18:54:38 -08:00
Jason Short 0491d4feca added define for optflow 2011-12-23 18:45:01 -08:00
Jason Short d7af42c925 Getting rid of Simple Logging 2011-12-23 18:44:30 -08:00
Jason Short 0f91fbcee5 Made WP radius 1 by default 2011-12-23 15:01:53 -08:00
Jason Short d9590a44d6 Fixed merge issues 2011-12-23 14:51:40 -08:00
Jason Short e5a3899b7f added ability to enter Loiter with only optflow available 2011-12-23 14:46:32 -08:00
Jason Short 73a73fbf35 moved some defines around 2011-12-23 14:46:32 -08:00
Jason Short 5518882c69 Fixed resolution issue with Xtrack
Added stub for loiter based on estimation
integrated fix for tracking GPS at slow speeds for loiter
2011-12-23 14:46:32 -08:00
Jason Short 2d46022a2b This is the test to deal with big props with lots of inertia. We use a low pass filter on positive acceleration. 2011-12-23 14:46:32 -08:00
Jason Short 58ad9faf6d initing z dampener at arming 2011-12-23 14:46:08 -08:00
Jason Short 5f03c62bd9 Too complicated 2011-12-23 14:46:08 -08:00
Jason Short be4b031c7d added back in the Disabled log - gave up on Log Simple idea 2011-12-23 14:45:56 -08:00
Jason Short ca8f71a705 used for testing 2011-12-23 14:42:50 -08:00
Jason Short a966a178f8 increased crosstrack thanks to float math fix
decreased loiter iterm, decreased throttle iterm based on simulator runs
2011-12-23 14:42:50 -08:00
Jason Short a284fc222c No longer blocking before initing home 2011-12-23 14:42:50 -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 62cb407558 Begin to better integrate OptFlow, added necessary globals for Loiter estimation 2011-12-23 14:42:50 -08:00
Jason Short 85b564c5eb removed some unneeded HIL #defines 2011-12-23 14:42:49 -08:00
Pat Hickey c40fccbc26 Log_simple uses identical implementation of do_erase_logs.
* fix build1280.ArduCopter
2011-12-22 13:31:28 -08:00
Pat Hickey f1624621b3 ArduCopter Logging: DISABLED means DISABLED again; CONFIG_LOGGING added
CONFIG_LOGGING selects LOGGING_SIMPLE and LOGGING_VERBOSE. Verbose
logging is the default, implemented in Log.pde. Simple logging is
optional, but the default for the 1280 build, implemented in
Log_simple.pde
2011-12-19 21:04:51 -08:00
Randy Mackay 310f072d50 Arducopter - added "//#define APM2_BETA_HARDWARE" to AP_Config.h for developer's who received early version of the board with the old barometer 2011-12-19 22:57:00 +09:00
Jani Hirvinen 106801a59c config settings for jD motors 2011-12-19 09:29:05 +07:00
Jason Short b53a6bd4b4 Hexa stability patch bug fix by borna.segulin 2011-12-18 16:38:07 -08:00
Jason Short 239eb53983 change Alpha name 2011-12-18 16:38:07 -08:00
Andrew Tridgell ad9c0533d8 ACM: run mavlink loop while erasing logs 2011-12-18 10:19:41 +11:00
Jason Short 8970948804 Sync logging 2011-12-16 22:02:41 -08:00
Jason Short 47e4c875e1 Cleanup
removed Iterm experiment - no noticeable effect in actual flight
2011-12-16 20:47:23 -08:00
Andrew Tridgell f6f808357c removed AperiodicProcess code
this code was never being used, and was more complex than it was
worth.
2011-12-17 07:29:09 +11:00
Jason Short 2fc25d963d renamed super simple, added framework for auto calc of throttle cruise 2011-12-15 20:51:41 -08:00
Jason Short 3019c35364 turned off iterm for traverse 2011-12-15 20:51:41 -08:00
Jason Short f11f2c6d97 added some more throttle imax range
renamed Super Simple
2011-12-15 20:51:41 -08:00
Jason Short 72605f846c renamed super simple 2011-12-15 20:51:41 -08:00
Jason Short 88b3708dcf added altitude to circle mission 2011-12-15 20:51:40 -08:00
Jason Short 0ba8a9f30b Allows user to specify just an altitude for Circle Mode 2011-12-15 20:51:40 -08:00
Jason Short 4e280bb0dc More power to descend 2011-12-15 20:51:40 -08:00
Jason Short 3446744ae9 Addition of nav mode that tries to maintain level 2011-12-14 22:08:42 -08:00
Jason Short 4d90058c90 dupe of landing logic for scripting 2011-12-14 22:08:41 -08:00
Jason Short f48e394511 made the last step of landing stop navigating so we can drop straight down. 2011-12-14 22:08:41 -08:00
Jason Short 1251e8105d Added failsafe check 2011-12-14 22:08:41 -08:00
Jason Short c6657f4a93 updated Loiter control to provide an alternative to GPS rate control for users with circling issues. Works in SIM, needs flight testing 2011-12-14 22:08:41 -08:00
Jason Short d2fd6c5ee5 added loiter control to reset nav 2011-12-14 22:08:41 -08:00
Jason Short 8691b10ee9 added failsafe check,
enable loiter repositioning
2011-12-14 22:08:41 -08:00
Doug Weibel 5d197ae337 Change logging to default on for 2560 2011-12-13 20:53:44 -07:00
Doug Weibel 8b78c4a4c5 Changes to logging file system to avoid problems with 0 and 1 page logs 2011-12-13 20:09:07 -07:00
Michael Oborne e20d3a3676 add method of detecting if motors are armed 2011-12-14 06:18:29 +08:00
Randy Mackay 7f64080877 Arducopter - Attitude.pde - fixed small bug in pitch stabilise 2011-12-13 22:10:51 +09:00
Andrew Tridgell 483bef35e5 IMU: update ACM and APM for flash_leds change in IMU init 2011-12-13 18:19:41 +11:00
Andrew Tridgell 888d6226b2 fixed two more CONFIG_HARDWARE #ifdef bugs 2011-12-13 17:05:48 +11:00
Jason Short edc3a731d4 Adjustments for High Wind enviroments 2011-12-12 17:47:45 -08:00
Jason Short ba8fc57bd8 Stability patch2 - Jose style. 2011-12-12 17:47:45 -08:00
Jason Short c9b317fc27 Gain updates 2011-12-12 17:47:45 -08:00
Jason Short f3e408e7e0 Added a simplified Log that is just GPS for my 1280 board 2011-12-12 17:47:45 -08:00
Jason Short e4559bbf5c Added param option for Simple mode reset 2011-12-12 17:47:45 -08:00
Jason Short d83ad1acd4 Upped the max pitch to deal with wind - based on T3 testing 2011-12-12 10:10:33 -08:00
Jason Short 6bc90d6289 Just upped the nav_imax value 2011-12-12 10:10:33 -08:00
Andrew Tridgell a22893124d fixed LOGGING_ENABLED default on ArduCopter 2011-12-12 23:40:43 +11:00
Andrew Tridgell 5760239670 quad: fixed the comments on the + motors 2011-12-12 21:01:58 +11:00
Andrew Tridgell d076fb54b5 fixed barometer detection on APM2 2011-12-12 15:45:36 +11:00
Andrew Tridgell f5e439554d fixed == that should be = 2011-12-12 15:19:50 +11:00
Andrew Tridgell 358dc91d41 fixed hil ArduCopter build 2011-12-12 15:14:55 +11:00
Andrew Tridgell 07dba4eff7 desktop: fixed Wire.begin() build problem 2011-12-12 15:14:55 +11:00
Andrew Tridgell 1b1c629167 added sitl build target 2011-12-12 15:14:55 +11:00
Andrew Tridgell 011110e1dd airspeed: use floating point values and better averaging in zero_airspeed()
this makes the calibration of airspeed a bit more accurate, and
prevents truncation of airspeed values
2011-12-12 15:14:55 +11:00
Pat Hickey a48c65b5b5 ArduCopter: update AP_Baro constructors & initializers 2011-12-11 15:21:10 -08:00
Pat Hickey f3ad7f3af8 Wire and SPI Init: move to sketch system.pde from libraries
* Wire.begin removed from AP_Baro_BMP085::init()
* SPI.begin  removed from AP_Baro_MS5611::init()
* SPI.begin  removed from AP_InertialSensor_MPU6000::hardware_init()

* Both Wire.begin and SPI.begin added very early in init_ardupilot in
  ArduCopter/system.pde and ArduPlane/system.pde
2011-12-11 15:21:10 -08:00
Pat Hickey 6dbd6b4181 ArduCopter: Get barometer data in terms of AP_Baro interface
* Major change: Log.pde Log_Write_Control_Tuning has changed significantly
* MS5611 has no concept of RawPres and _offset_press
* Log the get_pressure() instead. (If we don't trust the barometer, what's the point?)
2011-12-11 15:21:10 -08:00
Pat Hickey 39fe9075d9 ArduCopter Init: different call to barometer.init based on CONFIG_BARO
* BMP085 has two arguments, second varying on apm1/apm2
* ms5611 has no arguments
2011-12-11 15:21:10 -08:00
Pat Hickey b055aa6f81 ArduCopter: instantiate correct AP_Baro object based on CONFIG_BARO 2011-12-11 15:21:09 -08:00
Pat Hickey d7f77aec93 ArduCopter & ArduPlane: Added support for apm2beta build via APM2_BETA_HARDWARE define
* This enables the BMA085 driver for compatibility with beta boards.
* The CLI_SLIDER_ENABLED=DISABLED line does not need to be in the makefile.
  config.h takes care of this default.
2011-12-11 15:21:09 -08:00
Pat Hickey 62844d8ddc ArduCopter: added config.h and defines.h to support CONFIG_BARO 2011-12-11 15:21:09 -08:00
Pat Hickey de6507a47d ArduCopter: Rename APM_BMP085 classes to AP_Baro_BMP085 classes. 2011-12-11 15:21:09 -08:00
Pat Hickey 8d878a2cae ArduCopter CLI: Add imu.init before imu.init_accel for "level"
* Depending on when you entered the CLI, the imu might not be
  initialized yet, and init_accel would hang.
2011-12-11 15:19:46 -08:00
Pat Hickey 2e200834e1 ArduCopter: Revert "Switched to Gyro only startup"
This reverts commit f932f0a9f6a29e9c3193622109298c657ed5a908.

I fixed this bug in 734185599cd9d6a487c675460c09895172e012b0.

It is no longer valid to call IMU::init_gyro() before IMU::init().
2011-12-11 14:50:02 -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 e8e126a636 removed CLI switch by default, decreased Nav I 2011-12-11 09:53:44 -08:00
Jason Short c1aa015ef1 added debug prints, broke out Angle val to debug 2011-12-11 09:53:44 -08:00
Jason Short a685e5b575 fix for navigation scaleLongUp 2011-12-11 09:53:44 -08:00
Randy Mackay fe336fb749 ArduCopter - small fixes to fix HIL compile errors 2011-12-11 23:25:03 +09:00
Randy Mackay 67855b207d Arducopter, RangeFinder - added SONAR_TYPE parameter and properly support the XL (default), LV and long distance XL (aka XLL) sonar types 2011-12-11 16:40:59 +09:00
Jason Short f89fed02c3 made it so nav is called in Simple mode 2011-12-10 23:31:37 -08:00
Jason Short 4659a9ffce Adjust Simple mode on the fly. 2011-12-10 23:29:29 -08:00
Jason Short af0ae6a10f Set Nav_WP as home 2011-12-10 23:26:10 -08:00
Jason Short 1f3abcf048 eased up on the i term blocker 2011-12-10 23:25:52 -08:00
Jason Short 069bcbf5e6 Made landing slower 2011-12-10 19:33:19 -08:00
Jason Short 873daae095 Allows you to clear the stored mission when in Auto 2011-12-10 19:32:46 -08:00
Jason Short 29554b7d73 Will add a landing command to last WP if we are on the ground. 2011-12-10 19:29:42 -08:00
Jason Short 648ab5f4ae Switched to Gyro only startup 2011-12-10 15:13:20 -08:00
Jason Short f3ff7aa0a8 rework of inflight trim. 2011-12-10 15:05:53 -08:00