Commit Graph

364 Commits

Author SHA1 Message Date
rmackay9
e1acf21381 ArduCopter: updated firmware version to 2.6 Epsilon 2012-06-12 23:22:57 +09:00
Jason Short
f5a85d48a0 Added Angel's name to contrib list 2012-06-10 12:38:22 -07: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
rmackay9
70b04d9427 ArduCopter: updated firmware description to 2.6 Gamma 2012-06-05 21:28:13 +09: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
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
Robert Lefebvre
5f058fb9b2 TradHeli: Incorporating Ext ESC Control 2012-05-30 21:50:25 -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
22065e3f3f Broken timer - removed 2012-05-29 12:56:38 -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
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
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
Robert Lefebvre
4e4ff84cf1 Updates to CopterLEDS
Creation of Nav Blink Function.
2012-05-22 09:58:37 -04:00
Jason Short
f6d8a18182 Added note 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
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
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
Andrew Tridgell
4fee26437b MAVLink: make ACM build with MAVLink 1.0 possible in arduino GUI 2012-04-24 22:24:58 +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
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
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
c993049c48 ArduCopter - combined CH6_DAMP and CH6_STABILIZE_KD tuning parameters to avoid confusion 2012-04-21 23:24:57 +09:00
rmackay9
3e95ade004 ArduCopter - changed optflow object to be APM2 version if necessary 2012-04-21 20:15:55 +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
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
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
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
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
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
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
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
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
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
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
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
e956e21e7d ACM: enable the new compass offset nulling in ACM 2012-03-27 15:37:24 +11: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
rmackay9
1dd554c333 ArduCopter - updated version to 2.5.1 2012-03-20 17:08:18 +09: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
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
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
1c0b28c956 Fixed Scaling bug in Sonar mixing 2012-03-16 14:10:19 -07: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
7953808d14 ACM: Larger filter for Loiter D 2012-03-13 10:23:30 -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
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
Jason Short
62c2aa4924 ACM: Added Loiter D tuning 2012-03-10 14:17:57 -08:00
Jason Short
0671bb9168 ACM: Firmware rev 2012-03-10 12:45:03 -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
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
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
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
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
46d7da4d14 Added define for throttle range for altitude changes, updated it to 250 2012-03-05 22:12:53 -08:00
Jason Short
ceef8070ac added stab_d gain scheduling 2012-02-28 20:16:40 -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
17d94b61ed ArduCopter - modified to work with new Filter library 2012-02-28 21:02:44 +09:00
Jason Short
517172ba20 Added Loiter Rate Tuning 2012-02-26 11:33:37 -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
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
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
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
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
30efbae0e9 removed old comments 2012-02-19 14:21:27 -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
Randy Mackay
e146f225b1 ArduCopter - remove unnecessary block for next GPS value before saving home location 2012-02-19 15:38:40 +09:00
Jason Short
028de5d2c5 Axis lock beta (off by default) 2012-02-18 21:16:19 -08:00