Commit Graph

652 Commits

Author SHA1 Message Date
Craig Elder 07d43534c1 Copter: Change Radio Failsafe Timeout
Change Radio Failsafe Timeout from 2 seconds to 200ms
2014-07-16 19:41:43 -07:00
Craig Elder e85c9f078d Copter: Change Radio Failsafe Timeout
Change Radio Failsafe Timeout from 2 seconds to 200ms
2014-07-16 11:02:32 -07:00
Andrew Tridgell 49954a3a61 Copter: use sensors from board subtypes 2014-07-14 09:44:35 +10:00
Randy Mackay 65e5367619 Copter: rename hybrid to poshold 2014-07-11 14:09:01 +09:00
Jonathan Challinger 09a01a4668 Copter: Wait 4 seconds before beginning to land during failsafes 2014-07-06 20:25:04 +09:00
Jonathan Challinger 5b36e65cb9 Copter: Add parameter LAND_REPOSITION to enable/disable user input during auto-mode landings and descents 2014-07-06 19:20:25 +09:00
Randy Mackay fdc0ec837b Copter: add nav_guided suport to Auto mode 2014-07-06 17:00:31 +09:00
Randy Mackay db000f2287 Copter: remove setting rate and thr D term filters 2014-05-29 17:40:24 +09:00
Robert Lefebvre 5eb206e6bb Copter: Add 'handle' to allow #define updating of AC_PID filter rate for Throttle Accel. 2014-05-29 17:39:16 +09:00
Robert Lefebvre df1de4260d Copter: Set Rate PID D-term filter rates on initialization. 2014-05-29 17:39:12 +09:00
Randy Mackay 20719e23fd Copter: enable PARACHUTE and RALLY for all but APM 2014-05-27 14:43:33 +09:00
Randy Mackay ff1a58e078 Copter: increase LOITER_RATE_IMAX to 1000
This allows us to load up the I term with the vehicle's current
acceleration during mode transitions

pair programmed with Randy
2014-05-08 16:15:34 +09:00
Randy Mackay d857427444 Copter: disable RALLY points by default
This saves 2k of flash which allows the code to fix on the APM1/2
2014-04-30 21:46:21 +09:00
Randy Mackay a4c675c23e Copter: add PILOT_ACCEL_Z parameter
Allows configurable z-axis acceleration when pilot is controlling
altitude
2014-04-30 21:46:13 +09:00
Randy Mackay 19f1e7fec4 Copter: disable Parachute by default
This saves 1k of flash and we are desperately low on the APM1/APM2.
Hopefully we can find savings somewhere and re-enable it by default.
2014-04-24 19:02:32 +09:00
Randy Mackay 287af8f66e Copter: disable optical flow by default
We have run out of flash on the APM2, it was a choice between Hybrid
flight mode and OF_Loiter
2014-04-23 15:27:08 +09:00
Randy Mackay 55e7e1eb3e Copter: allow HYBRID to be disabled to save flash
Hybrid flight mode costs 4.5k of flash which currently puts us over the
limit for APM1 and APM2 unless optical flow or other features are
disabled
2014-04-23 15:27:05 +09:00
Ju1ien f8e8d4024d Copter: Hybrid's max brake angle to 30deg 2014-04-23 14:59:53 +09:00
Randy Mackay f467d7bc20 Copter: add Hybrid parameters 2014-04-23 14:59:25 +09:00
Randy Mackay 5fc071f5f9 Copter: restore SITL to run at 100hz 2014-04-21 21:46:22 +09:00
Randy Mackay 8ac14023b4 Copter: set main loop rate from CPU class
Previously this was determined by the board
2014-04-21 13:32:00 +09:00
Andrew Chapman fa3732ac6d Copter: integrate AP_Rally 2014-04-19 15:00:23 +09:00
Emile Castelnuovo 9e31f032c2 Copter: added VRBRAIN board #includes and #defines 2014-04-08 16:19:20 +10:00
Randy Mackay ff32b27272 Copter: integrate parachute lib 2014-04-07 13:36:44 +09:00
Andrew Tridgell 640b64f5e4 Copter: convert to new GPS API 2014-04-01 06:38:24 +11:00
Jonathan Challinger 2601ac9959 Copter: Remove 80m altitude limit on RTL 2014-03-31 20:34:19 +09:00
Andrew Tridgell 3de574e5dc Copter: disable GPS2 in HIL 2014-02-27 08:16:20 +11:00
Andrew Tridgell 37394b30ee Copter: added support for 2nd GPS 2014-02-26 09:40:29 +11:00
Randy Mackay 00913ffe1b Copter: throttle rate to simple P controller
Saves at least 15bytes of RAM
2014-02-16 13:35:40 +11:00
Randy Mackay aab9b30bf6 Copter: replace APM_PI with AC_P
Saves about 90bytes of RAM
2014-02-15 06:09:08 +11:00
Randy Mackay ea1158a9d5 Copter: remove unused config 2014-02-15 05:27:47 +11:00
Randy Mackay aec67cd3df Copter: integrate control_autotune 2014-02-15 05:27:44 +11:00
Randy Mackay ef666c73ab Copter: remove Position mode 2014-02-15 05:27:42 +11:00
Robert Lefebvre c561d6bb9e Small comment change. 2014-02-15 05:27:42 +11:00
Randy Mackay 2253cf9769 Copter: run main loop at 400hz for pixhawk 2014-02-15 05:27:33 +11:00
Andrew Tridgell 0a3476bbf1 Copter: change to new board_voltage() API 2014-02-14 21:50:59 +11:00
Randy Mackay dee5fb212a Copter: remove dup definition of FRAME_ORIENTATION
Ideally the frame orientation parameter should be moved to the motors
class
2014-01-21 21:44:17 +09:00
Randy Mackay a9f1a2ee5e Copter: disarm on land even if pilot throttle not zero
default behaviour remains as before, this is an compile time option only
2014-01-15 11:31:00 +09:00
Randy Mackay a3527ade61 Copter: move EARTH_FRAME definition to defines.h
defines.h is for defining enumerations and other unchanging values while
config.h is for changeable values like parameter defaults, enabling or
disabling sensors.
2014-01-14 21:53:13 +09:00
Randy Mackay 138c2803be Copter: combine NTUN and INAV dataflash msgs 2014-01-13 22:00:11 +09:00
Randy Mackay 5e0ddd299f Copter: disable OPTFLOW for SITL 2014-01-13 17:11:27 +09:00
Randy Mackay 61f319ce38 Copter: disable OPTFLOW for PX4/Pixhawk 2014-01-13 12:02:03 +09:00
Randy Mackay b3d20bb8aa TradHeli: Drift mode to use heli manual throttle 2014-01-10 11:06:06 +09:00
Robert Lefebvre 531a9f4f25 TradHeli: disable AutoTune for Tradheli compile
We need the flash space, and this probably won't work for tradheli anyway since tradheli needs most of the control from Feedforward rather than P term.  And D-term is very very bad.
2014-01-10 10:50:09 +09:00
Randy Mackay 9f2f44f0f6 Copter: integrate shrunken optflow 2014-01-09 12:31:53 +09:00
ctech4285 2b5d8aa5b7 Copter: integrate EPM library 2013-12-17 15:36:42 +09:00
Randy Mackay c7dc351609 Copter: remove unnecessary MPU6K filter definition
This should also help kick off the AC3.1 rebuild
2013-12-15 11:01:31 +09:00
Randy Mackay 2a61053634 Copter: reduce default logging for SITL 2013-12-12 22:19:12 +09:00
Randy Mackay 58788d2934 Copter: increasd default logging for PX4, Pixhawk 2013-12-05 16:04:52 +09:00
Randy Mackay 2ba233942d Copter: pre arm mag offset limit to 600 for PX4 2013-12-03 23:23:26 +09:00
Randy Mackay 0cda3c9a71 Copter: reduce SONAR_GAIN to 0.8 (was 2.0) 2013-12-01 16:25:47 +09:00
Robert Lefebvre dbbe0f960a Copter: remove LED_ON/OFF defines 2013-11-30 18:20:58 +09:00
Randy Mackay 59cea4b88c Copter: remove CopterLED from main code 2013-11-30 18:20:55 +09:00
Randy Mackay 10d6a9a34e Copter: replace Log_Write_Motors with Log_Write_RCOU 2013-11-27 20:18:18 +09:00
Randy Mackay af657d58b9 Copter: RCIN dataflash logging 2013-11-27 16:46:25 +09:00
Andrew Tridgell 9c812d5028 Copter: added SERIAL2_BAUD and rename SERIAL3_BAUD to SERIAL1_BAUD 2013-11-26 13:05:32 +11:00
Randy Mackay 87127f0ab8 Copter: allow battery failsafe to trigger RTL 2013-11-16 14:46:57 +09:00
Randy Mackay bc1e06757b Copter: allow GPS failsafe to trigger AltHold
FS_GPS_ENABLE parameter accepts two new options, 2=AltHold,
3=LandEvenFromStabilize.
If set to 3 the GPS failsafe will trigger and LAND even from manual
flight modes like Stabilize and ACRO.  This is useful for users who want
to ensure their copters can never stray outside the circular fence (the
fence only triggers when it knows it is outside the bounds, and it can't
know this if it has no GPS)
2013-11-16 13:55:59 +09:00
Randy Mackay 8c9ab50ba2 TradHeli: restore CC_COMP and PIRO_COMP 2013-11-15 22:58:43 +09:00
Randy Mackay 0f67e25d37 TradHeli: set throttle_min to zero by default 2013-11-15 22:58:38 +09:00
Randy Mackay c9c803ffd4 TradHeli: move STAB_COL_MIN to main parameter list 2013-11-15 22:58:32 +09:00
Randy Mackay 633e91b7d4 Copter: initialise roll, pitch, yaw modes to stabilize
This fixes a bug in which the stabilize throttle controller would be
non-tilt compensated until the user switched to another flight mode and
back again
2013-11-15 22:57:56 +09:00
Randy Mackay ae87759e6d TradHeli: add THROTTLE_MANUAL_HELI
Move check_dynamic_flight to run as scheduled task
2013-11-15 22:57:53 +09:00
Andrew Tridgell 6b1f59372c Copter: show git and firmware version in tlog 2013-11-09 10:09:20 +11:00
Randy Mackay 620109d894 Copter: formatting fix to config.h 2013-11-03 12:57:02 +09:00
Robert Lefebvre 8868af7c2f TradHeli: Change default Auto-Yaw to Yaw Look Ahead
This leads to smoother flight in Auto modes, particularly with fast waypoints.
2013-11-03 12:56:57 +09:00
Jason Short 520a535c21 Copter: TOY mode updates 2013-11-02 21:34:48 +09:00
Randy Mackay babc54ec60 Copter: default Ch7 to DO_NOTHING
Ch7/Ch8 Save_WP feature triggers when switch is brought high (instead of
low) to be consistent with other aux features
2013-11-01 11:42:33 +09:00
Randy Mackay 8386b658e9 Copter: add ANGLE_RATE_MAX param
Limits the maximum rotation rate requested by the angle controller which
is used in stabilize, loiter, rtl and auto flight modes
2013-10-29 11:27:05 +09:00
Randy Mackay 9df7185075 Copter: remove unused #defines from config.h 2013-10-28 12:37:41 +09:00
Randy Mackay f52c6add89 Copter: reenable optical flow by default
correct optflow test compile error
2013-10-23 20:42:03 +09:00
Randy Mackay 6b9b5c5617 Copter: pre-arm check speed is less than 50cm/s 2013-10-20 21:56:00 +09:00
Randy Mackay d2bbc06502 Copter: allow throttle deadband to be redefined in APM_Config.h 2013-10-13 20:41:11 +09:00
Randy Mackay 0e740bd4e1 Copter: enable AUTOTUNE for mission planner build 2013-10-13 11:57:50 +09:00
Randy Mackay 6876107a15 Copter: autotune disables rate output from stab controller 2013-10-13 11:56:01 +09:00
Randy Mackay 8d1085feea Copter: pre-arm expects mag len of 330 for APM1 (was 530) 2013-10-09 14:10:16 +09:00
Andrew Tridgell 6145924481 Copter: switch Linux to L3G4200D ins driver 2013-10-08 11:50:54 +11:00
Randy Mackay ba92c4891a Copter: make AutoTune a compile-time option 2013-10-04 15:50:50 +09:00
Randy Mackay dab4f032f9 Copter: integrate BattMonitor 2013-10-03 11:16:28 +09:00
Andrew Tridgell 3665bec26d Copter: fixed build for Linux 2013-09-28 22:04:16 +10:00
Randy Mackay a53d28e018 Copter: remove support for dmp ahrs 2013-09-27 10:42:49 +09:00
Andrew Tridgell 566eaf7d41 Copter: fixed flymaple build with copterleds 2013-09-27 10:32:22 +10:00
Andrew Tridgell a0b6481dfd Copter: removed SMACCM support 2013-09-26 22:38:31 +10:00
Randy Mackay 2c96ed3f22 Copter: disable optical flow
This at least allows ArduCopter to be compiled with arduino until we
find larger flash savings
2013-09-24 21:59:19 +09:00
Andrew Tridgell 3378c7901a Copter: added support for the flymaple board 2013-09-24 13:51:28 +10:00
Andrew Tridgell 91315715fe Copter: removed CONFIG_PUSHBUTTON
not used anywhere any more
2013-09-23 18:10:22 +10:00
Andrew Tridgell 754bdbd25f Copter: use new usb_connected() HAL function 2013-09-19 16:24:23 +10:00
Randy Mackay 65adb78f31 Copter: increase default battery capacity to 3500mAh 2013-09-15 11:54:07 +09:00
Randy Mackay 653a5036ae Copter: #define for initial altitude jump during take-off
Developers can add a line like to APM_Config.h to reduce the initial
jump when taking off in Loiter or AltHold flightmodes:
#define ALT_HOLD_TAKEOFF_JUMP 0
2013-09-12 22:31:42 +09:00
Randy Mackay e985253f1a Copter: integrate notify 2013-08-30 13:01:35 +10:00
Randy Mackay 7c78936bc5 Copter: land by default at end of RTL 2013-08-30 10:34:23 +09:00
Randy Mackay 81074ebb3c Copter: update Y6 defaults 2013-08-28 13:05:01 +09:00
Randy Mackay d8eb7fb82f Copter: remove x100 from IMAX definitions 2013-08-19 22:38:34 +09:00
Randy Mackay 2696e160e6 Copter: surface tracking improvement
Separate correction speeds for pilot input vs altitude-above-ground
errors to allow slower correction to sonar signals.
Change SONAR_GAIN parameter to be altitude error -> desired speed.  This
means it should be set 10x larger than before.
Replace hard-coded sonar cut-off percentage of 70% with
SONAR_RELIABLE_DISTANCE_PCT.
Reduce sonar cut-off percentage to 60%.
Add desired sonar altitude to dataflash log's CTUN message.
2013-08-19 09:52:59 +09:00
Randy Mackay d000967a76 Copter: pre-arm check for gps hdop < 2 2013-08-15 13:06:36 +09:00
Randy Mackay 6969ab573d Copter: configurable max lean angle
ANGLE_MAX parameter allows limiting the roll and pitch angles during
manual and auto flight modes to anywhere from 10 to 80 degrees
2013-08-11 12:53:22 +09:00
Randy Mackay 5049595a2c Copter: SPORT mode to use alt hold 2013-08-10 15:42:02 +09:00
Randy Mackay d0dc5813cf Copter: move CIRCLE_RADIUS definition 2013-08-07 14:03:28 +09:00
Randy Mackay 74fb500efe Copter: integrate AC_Sprayer 2013-08-05 21:12:23 +09:00
Randy Mackay 49dbdce89c Copter: split ACRO_P into ACRO_RP_P and ACRO_YAW_P 2013-08-05 21:05:00 +09:00
Randy Mackay 21e523b9ac Copter: Acro trainer separated into limited and leveled 2013-08-05 21:04:53 +09:00
Randy Mackay e32342163d Copter: rename ACRO variables 2013-08-05 21:04:50 +09:00
Randy Mackay 65276d360b Copter: SPORT to use YAW_HOLD 2013-08-05 21:04:44 +09:00
Randy Mackay 39ab4f62ef Copter: add SPORT mode 2013-08-05 21:04:41 +09:00
Randy Mackay 9672742b42 Copter: bug fix to look_ahead_yaw
Fix received from David Dewey
Was incorrectly using the direction instead of heading when deciding
whether to point forward or not.  Reduced YAW_LOOK_AHEAD_MIN_SPEED to
1m/s because bug meant it was nearly always pointing forward and 10m/s
(the old value) seemed too high
2013-08-01 14:12:55 +09:00
Leonard Hall 64ce9b017d Copter: Body frame ACRO upgrade 2013-07-11 17:53:25 +09:00
Randy Mackay ac5d925115 Copter: revert Loiter Pos P to 1.0 (was 0.8) 2013-07-11 12:20:31 +09:00
Randy Mackay 1590a5d58a Copter: increase Yaw Rate I 0.02 2013-07-11 12:20:29 +09:00
Randy Mackay d77f7bc803 Copter: default Loiter Pos P to 0.8 (was 0.2) 2013-07-11 08:13:17 +09:00
Andrew Tridgell c544a076ca Copter: enable camera logging by default
these messages only happen on user defined camera triggering, so
should be low rate
2013-07-10 12:24:02 +10:00
Randy Mackay 45f47de98d Copter: reduce default Loiter Pos P to 0.2 (was 1.0) 2013-07-07 16:00:09 -10:00
Randy Mackay 404cd5f3da Copter: rename g.pid_throttle to g.pid_throttle_rate
Small code clean-up to make throttle rate controller's pid more obvious
2013-06-30 00:04:21 -10:00
Robert Gayle 917edcab11 Copter: added FS_THR_ENABLED_ALWAYS_LAND (=3) option: don't attempt RTL, just land 2013-06-27 10:19:38 -10:00
Andrew Tridgell 76d1791073 Copter: CONFIG_RELAY is not used 2013-06-25 12:47:07 +10:00
Randy Mackay cd30103b76 Copter: increase default CIRCLE_RATE to 20deg/sec 2013-06-19 12:40:33 +09:00
Randy Mackay 069bd17928 Copter: reduce default AltHold P to 1.0 (was 2.0)
This helps reduce jumpiness due to althold feed forward
2013-06-16 15:32:25 +09:00
Randy Mackay 13c41e74f2 Copter: reduce pre-arm board voltage check to 4.3V 2013-06-02 20:47:58 +09:00
Olivier-ADLER 735406fa77 Copter : POSITION_HOLD mode -> allow user position control 2013-06-02 11:49:18 +09:00
Randy Mackay 1722e438d8 Copter: pass alt hold gain to WP_Nav library 2013-05-31 21:04:10 +09:00
Randy Mackay 1807840d4f Copter: fixed comments re mag field pre-arm check 2013-05-31 12:28:04 +09:00
Randy Mackay 7b50ecc73c Copter: pre-arm check for mag field length 2013-05-31 12:23:19 +09:00
Randy Mackay a1821c89e7 Copter: pre-arm check for board voltage < 5.8V 2013-05-31 11:31:27 +09:00
Randy Mackay c3d21a457f Copter: add pre-arm board voltage check
Copter will not arm unless board voltage is over 4.5V
2013-05-28 21:50:31 +09:00
Randy Mackay cdcf442f55 Copter: enable GPS failsafe by default 2013-05-27 11:25:37 +09:00
Randy Mackay 9fdab5e8fe Copter: remove unused AUTO_SLEW_RATE parameter 2013-05-17 16:09:17 +09:00
Randy Mackay 38239c652a Copter: ch8 aux switch
Ch8 can be used as an aux switch like ch7.  Has all the same options as
ch7 and there is a safety check to ensure both switches aren't set to
the same function so as to avoid interfering with each other
2013-05-17 14:42:28 +09:00
Randy Mackay 566daf883a Copter: remove unused MODE bit from LOG_BITMASK
We always log the mode so no need for this bit
2013-05-17 12:26:42 +09:00
Randy Mackay 1426f40319 Copter: remove unused JDrones motor PID overrides 2013-05-17 12:05:20 +09:00
Randy Mackay e843bf3dfd Copter: bug fix for POSITION mode throttle
Was using alt-hold throttle controller instead of manual throttle
controller
2013-05-14 11:56:09 +09:00
Randy Mackay a2e298bbfc Copter: change to default RTL yaw behaviour
We will not point the nose home for RTL but will point the nose for all
other waypoints
2013-05-14 11:52:39 +09:00
Andrew Tridgell 0d027b7a23 Copter: updates for new compass API 2013-05-02 12:48:14 +10:00
Randy Mackay bab9fa25e5 Copter: add GCS failsafe 2013-04-29 21:30:22 +09:00
Randy Mackay 58d1da2d80 Copter: integrate AC_Fence in place of limits
Lesser functionality than limits but saves more than 150 bytes and it
works
2013-04-27 11:14:07 +09:00
Randy Mackay 94d4ecef11 Copter: reduce throttle rate D to zero 2013-04-21 16:28:07 +09:00
Bill Bonney 36041bb9ff Copter: Enable CURRENT logging by default to dataflash 2013-04-21 07:25:34 +10:00
Randy Mackay 745df9b13c Copter: add SONAR_GAIN to tune reaction to sonar
Some users report the response to sonar is too violent, this allows that
reaction to be reduced
2013-04-20 15:58:36 +09:00
Randy Mackay a53e5f747b Copter: add fourth yaw behaviour, look-at-home
Added get_wp_yaw_mode to remove duplication of checks of the
WP_YAW_BEHAVIOR parameter
2013-04-20 15:36:24 +09:00
Randy Mackay 37abfdc65a Copter: make CIRCLE_RATE a tunable parameter
Also bug fix to check of how many time it has rotated during a loiter
turns mission command
2013-04-20 12:03:55 +09:00
Randy Mackay 18c1373847 Copter: remove unused AUTO_VELZ defaults
These have now moved to AC_WPNav
2013-04-18 14:57:08 +09:00
Randy Mackay 82989d85f2 Copter: remove unused #defines 2013-04-16 22:34:12 +09:00
Randy Mackay 0663da7c9e Copter: loiter rate IMAX to 4m/s/s and D to zero 2013-04-16 22:28:18 +09:00
Randy Mackay 629d23b7e2 Copter: remove WP_SPEED and WP_RADIUS parameters
AC_WPNav library has equivalent params with very similar names
2013-04-14 13:27:37 +09:00
Randy Mackay 366616e32c Copter: reduce default loiter PIDs 2013-04-14 10:39:28 +09:00
Randy Mackay 1516972eaa Copter: add panorama to CIRCLE mode
Yaw will slowly rotate if CIRCLE_RADIUS is set to zero
Circle center is projected forward CIRCLE_RADIUS from current position
and heading
2013-04-14 10:38:01 +09:00
Randy Mackay fc0c451b69 Copter: remove #ifdef checks for Atmega1280 2013-04-05 22:48:10 +09:00
Randy Mackay a9eb626cb8 Copter: update default Rate Yaw P to 0.20 (was 0.25) 2013-04-01 11:49:50 +09:00
Randy Mackay 36834e77b5 Copter: remove support for CLI Slider 2013-03-18 14:07:04 +09:00
Randy Mackay 597a4b912a Copter: fix to allow building HIL_MODE_SENSORS 2013-03-18 13:41:52 +09:00
Randy Mackay d1344e8c39 Copter: remove #define for CROSSTRACK_GAIN
Note: the cross track is still calculated inside the inertial nav based
loiter and wp controls but it's no longer requires a tunable parameter
2013-03-17 16:56:18 +09:00
Randy Mackay 1b6fcad90a Copter: remove tilt compensation parameter
Note: this idea of feed forward tilt compensation is being incorporated
into the inertial nav based loiter and wp controllers but does not
require a separate tunable parameter
2013-03-17 16:53:32 +09:00
Randy Mackay fdcb78ccf7 Copter: leonard's smoother alt-hold transition
Target altitude when entering alt-hold is based on a projection from
current alt and climb rate
2013-03-17 13:24:49 +09:00
Randy Mackay 150046f2b8 Copter: GPS Failsafe implemented
Switches to LAND mode 5 seconds after losing GPS if you're in a flight
mode that requires a GPS
2013-03-16 17:27:46 +09:00
Randy Mackay a73f50494c TradHeli: remove duplicate RC_FAST_SPEED definition 2013-03-04 23:45:23 +09:00
Randy Mackay 33bd984a91 Copter: remove unused input_voltage parameter 2013-03-03 23:23:54 +09:00
Randy Mackay d6ff5ae261 Copter: add roll-pitch slew for auto modes
Added reporting of roll, pitch inputs for ACRO, AUTO
2013-02-24 14:42:04 +09:00
Randy Mackay e297ba7d18 Copter: update default loiter gains for inertial nav 2013-02-24 14:42:00 +09:00
Randy Mackay cbde042ec5 Copter: remove non-inav loiter and wp controllers
lon_speed, lat_speed changed to float
do_takeoff, do_land now set roll-pitch, yaw and nav modes specifically
removed fast_corners functionality (may need to be reimplemented with
new inertial nav controllers)
2013-02-24 14:41:52 +09:00
Randy Mackay 609676e26c Copter: add logging of compass values
Removed rarely used ITERM because we didn't have enough bits in the log
mask
2013-02-24 14:41:48 +09:00
Randy Mackay 67c69a19ee Copter: remove baro-only alt hold
Saves 8 bytes of memory and more importantly simplifies the alt hold
calculations
2013-02-24 14:41:29 +09:00
Randy Mackay fcf102b2cf Copter: inertial nav waypoint controller
#define added to allow compile time selection of traditional or inav
based loiter and wp controllers
2013-02-24 14:41:09 +09:00
Randy Mackay 8e4c9518ea Copter: increase low voltage check to 10.5v
Change requested by Rob Lefebvre and Richie Wilson
2013-02-23 00:36:51 +09:00
Andrew Tridgell 4c7a1a1806 Copter: change PX4 main baud rate back to 115200
we now use USB console
2013-02-22 07:04:23 +11:00
Randy Mackay 06a71af12f Copter: THR_MID used to scale manual throttle 2013-02-01 22:37:16 +09:00
Randy Mackay ce370bab0c Copter: rename CUR and CURR to CURRENT for logging
Based on user complaint that enable/disable was using CUR while message
was appearing as CURR
2013-01-26 17:20:41 +09:00
Randy Mackay b74fe10aa9 Copter: set each flight mode's nav_mode
Allow ACRO flight mode's roll, pitch, yaw, throttle and nav mode to be
overwritten
2013-01-25 15:57:55 +09:00
Andrew Tridgell f303554259 Copter: run serial0 at 57600 on PX4 2013-01-22 09:50:22 +11:00
Robert Lefebvre dde713aaa5 Arducopter: Backing out my changes for a new Loiter Repositioning mode. Leonard and Jonathan's work will trump this. 2013-01-20 21:32:00 +09:00
Andrew Tridgell 580abf1106 Copter: fixed PX4 mag orientation 2013-01-17 17:23:34 +11:00
James Bielman 5631f865b2 Update floating point calculations to use floats instead of doubles.
- Allows use of hardware floating point on the Cortex-M4.
- Added "f" suffix to floating point literals.
- Call floating point versions of stdlib math functions.
2013-01-16 13:52:01 +11:00
Randy Mackay fef7569dee Copter: added experimental LOITER_REPOSITIONING #define to config.h
APM_Config.h should be used to overriding the standard parameters but
they still require a definition in config.h or they will be undefined
when built by the mission planner.
2013-01-14 13:34:14 +09:00
Randy Mackay 9ad6f711f8 ArduCopter: replace FS_THR_RTL_MIN_DISTANCE with wp_radius
This effectively means that an RTL kicked off by a failsafe will
immediately switch to LAND mode only if within 2 meters.  Previously the
radius was much wider (15m).
2013-01-13 20:00:47 +11:00
Randy Mackay 12f885c33c ArduCopter: disable ITERM logging by default
This message takes 1ms to write and we are running over our limits on
some loops.
2013-01-13 20:00:39 +11:00
rmackay9 21b6c78d12 ArduCopter: added get_throttle_althold_with_slew to allow slower altitude target changes
Improved surface tracking by using slewed althold controller
Reduced sonar mode filter to just 3 elements to reduce lag but at the possible consequence of allowing sonar noise to creep through for people with margin sonar set-ups.
2013-01-13 19:51:47 +11:00
Randy Mackay 87627d883b ArduCopter: use new logging method for remaining packet types
Additional changes include renaming RAW dataflash type to IMU
2013-01-13 00:17:44 +09:00
James Bielman 7827a4a54a ArduCopter: Add AP_HAL_SMACCM support.
- Added default configuration to "config.h".
- Added main function to run under FreeRTOS with HWF4.
2013-01-09 11:19:51 -08:00
James Bielman ab37f833db MS5611: Fix CONFIG_MS5611_SERIAL definitions.
- Make sure the values are defined as integers.  We were always using
  SPI rather than using I2C when desired.
2013-01-09 11:19:51 -08:00
Andrew Tridgell c48714be16 Copter: enabled PX4 sensors 2013-01-05 20:39:31 +11:00
James Bielman 264db3670e AP_Baro: Add CONFIG_MS5611_SERIAL option to choose between SPI and I2C.
- Update ArduCopter and ArduPlane modules to pass the correct serial
  driver to the MS5611 driver.
- Update barometer examples, assuming SPI.
2013-01-03 13:48:06 -08:00
Andrew Tridgell 94e3322e24 Copter: fixed build on px4 2013-01-02 22:09:02 +11:00
rmackay9 9b2956b377 ArduCopter: increase throttle rate P to 6.0 (was 1.0) and alt hold P to 2.0 (was 1.0) 2013-01-02 09:55:37 +11:00
rmackay9 d400e5040b ArduCopter: turn on INERTIAL_NAV_Z in the config.h file so that it takes effect when built for the mission planner 2013-01-02 09:55:37 +11:00
rmackay9 e850ab7ccd ArduCopter: add AUTO_VELZ_MIN, AUTO_VELZ_MAX and PILOT_VELZ_MAX to allow better control of climb/descent rate in auto and manual throttle modes 2013-01-02 09:24:31 +11:00
rmackay9 5526ca204c ArduCopter: on throttle failsafe, only initiate RTL if we are at least 15m from home 2013-01-02 09:22:51 +11:00
Robert Lefebvre 6e64b1b357 ACM: Precision Loiter RePositioning code.
Protected behind a #define
2013-01-02 09:19:39 +11:00
rmackay9 e6519330f4 ArduCopter: remove unused rc_override variables to save 21 bytes 2013-01-02 09:19:17 +11:00
rmackay9 34e18ae12a ArduCopter: increase accel based throttle PIDs and add D term to rate based throttle 2013-01-02 09:19:17 +11:00
Robert Lefebvre 9605bd8ee1 ACM: Trying to set a default MPU6K filter rate of 10Hz for TradHeli. Doesn't Work. 2013-01-02 09:14:55 +11:00
rmackay9 d8e3d5c10c ArduCopter: allow RTL's yaw mode to be overridden with a #define in APM_Config.h 2013-01-02 09:12:40 +11:00
rmackay9 50d46898fb ArduCopter: allow GUIDED mode roll-pitch, yaw and throttle control modes to be overridden 2013-01-02 09:12:17 +11:00
Andrew Tridgell 9e986801c9 Copter: fixed SITL for ArduCopter 2012-12-20 14:52:34 +11:00
Pat Hickey 5e63491994 ArduCopter: fix issues with HAL/HIL mixup and baro/compass instances 2012-12-20 14:52:29 +11:00
Pat Hickey d93d932831 ArduCopter: defines fixes
Conflicts:

	libraries/AP_Common/Arduino.mk
2012-12-20 14:52:28 +11:00
Pat Hickey 2aa4657315 ArduCopter: changes to use CONFIG_HIL_BOARD 2012-12-20 14:52:28 +11:00
rmackay9 2f748f8382 ArduCopter: renamed BATT_FAILSAFE to FS_BATT_ENABLE 2012-12-10 23:47:14 +09:00
rmackay9 d31efebd44 ArduCopter: rename throttle failsafe parameters.
Switch to LAND flight mode if throttle failsafe triggers and we do not have a GPS.
THR_FAILSAFE renamed to FS_THR_ENABLE.
THR_FS_VALUE renamed to FS_THR_VALUE.
THR_FS_ACTION removed (action is now controlled by setting FS_THR parameter).
2012-12-10 23:38:43 +09:00
rmackay9 2f1b2b70e6 ArduCopter: added ACRO_TRAINER parameter to allow enabling/disabling the acro training function which will bring the roll back to within +- 45 degrees 2012-12-10 22:27:46 +09:00
rmackay9 dadad8677e ArduCopter: added descriptions for most parameters that did not have them
Renamed loiter_radius to circle_radius to better reflect it's purpose.
Removed some unused parameters including WP_MODE, WP_MUST_INDEX, LOG_LASTFILE, AXIS_P
2012-12-10 21:45:57 +09:00
rmackay9 cfe2507c0b ArduCopter: reduce Rate Roll/Pitch P to 0.150 (was 0.175) and increase I to 0.1 (was 0.01) 2012-12-09 18:08:45 +09:00
Robert Lefebvre aa4d4f8c24 ACM: Adding Pre-Compiler Define for Stabilize Throttle Mode. 2012-12-08 20:41:05 -05:00
Robert Lefebvre 1b97a92098 ACM: Code Cleanup 2012-12-08 14:49:38 -05:00
rmackay9 f98a807d36 ArduCopter: remove debug related to yaw mode used for alt hold 2012-12-08 14:24:50 +09:00
rmackay9 9dd978576b ArduCopter: auto yaw changes to allow pilot override of yaw during missions
Added set_yaw_mode to better control of yaw controller changes and variable initialisation.
Replaced AUTO_YAW mode with separate yaw controllers YAW_LOOK_AT_NEXT_WP, YAW_LOOK_AT_LOCATION, YAW_LOOK_AT_HEADING.
Pilot manual override of yaw causes yaw to change to YAW_HOLD (i.e. manual yaw) until next waypoint is reached.
Added get_yaw_slew function to control how quickly autopilot turns copter
Changed YAW_LOOK_AHEAD to use GPS heading and moved to new get_look_ahead_yaw function in Attitude.pde
Renamed variables: target_bearing->wp_bearing, original_target_bearing->original_wp_bearing.
Removed auto_yaw_tracking and auto_yaw variables and update_auto_yaw function as they are no longer needed.
Simplified MAV_CMD_CONDITION_YAW handling (do_yaw).  We lose ability to control direction of turn and ability to do long panorama shots but it now works between waypoints and save 20bytes.
2012-12-08 14:23:32 +09:00
rmackay9 68ca123224 ArduCopter: remove some unused #defines 2012-12-07 15:17:35 +09:00
rmackay9 3a90fc77f9 ArduCopter: add dataflash logging of camera events 2012-12-07 00:57:08 +09:00
rmackay9 a5bb54e36e ArduCopter: RTL clean-up and slightly improved landing sensor
Consolidated RTL state to be captured by rtl_state variable.
Combined update_RTL_Nav and verify_RTL functions which performed the same function but one was for missions, the other for the RTL flight mode.
Renamed some RTL parameters and global variables to have RTL at the front.
Landing detector now checks accel-throttle's I term and/or a very low throttle value
2012-12-06 10:31:52 +09:00
rmackay9 072ffec493 ArduCopter: allow INERTIAL_NAV to be enabled separately for horizontal and vertical position 2012-12-06 10:31:41 +09:00
rmackay9 bdb47c449a ArduCopter: pass linear altitude error to throttle rate controllers.
Previously the requested rate used the square root of the altitude error.

Scale pilot's desired vertical rate and acceleration based on ACCELERATION_MAX_Z and VELOCITY_MAX_Z #defines
2012-12-06 10:31:31 +09:00
rmackay9 7b4ed2d227 ArduCopter: restored landing detector to landing throttle mode.
Added LAND_SPEED parameter to control the rate of descent for the last 10m of a landing.
Added CH6 tuning for accel based throttle controller.
2012-12-06 10:31:20 +09:00
rmackay9 560bb1d738 ArduCopter: removed unused AUTO_THROTTLE_HOLD #define 2012-12-06 10:31:15 +09:00
rmackay9 3cbef57c64 ArduCopter: first merge of leonard's accel based altitude controller plus other changes from Randy
Changes include:
New low-level get_throttle_accel function takes target acceleration and compares vs earth-frame Z accelerometer values to produce output to motors.
Higher level throttle controllers modified to call new get_throttle_accel controller
Throttle_rate_stabilized controller added which maintains a desired climb/descent rate
Throttle_land controller added - descends using normal auto throttle controller to 10m then descends at 50cm/s
Multiple throttle modes added including landing mode
Land flight mode no longer needs GPS
Throttle cruise maintenance moved to update_throttle_cruise function
2012-12-06 10:30:49 +09:00
Andrew Tridgell 6fbf5ec8f2 Copter: update ArduCopter for new ins interface 2012-11-30 07:15:18 +11:00
Robert Lefebvre 6b8c39dd10 ACM: Creating Yaw_Look_Ahead yaw mode.
This function is not fully tested yet.
2012-11-26 21:37:13 -05:00
Robert Lefebvre 6ffc115236 Changes to get_throttle_rate()
Commented out a bit of code that is not used currently
Change the output constrains to #defines so they can be easily changed, particularly for use in TradHeli.
2012-11-21 17:11:38 -05:00
Andrew Tridgell dafaa2efc8 SITL: disable optical flow on the desktop build
it doesn't work yet, as no sensor emulator is available
2012-11-19 09:04:03 +11:00
rmackay9 07a7a1acd8 ArduCopter: replaced digitalRead and digitalWrite with faster calls
improved performance logging to dataflash
2012-11-19 01:16:07 +09:00
rmackay9 e92b560df5 ArduCopter: low baterry failsafe 2012-11-15 23:35:41 +09:00
Jason Short 9735a0eff1 ACM: Allow for user defined roll and pitch input max 2012-11-11 18:00:10 -08:00
rmackay9 e212744f4c ArduCopter: failsafe improvements
resolves momentary throttle drop to zero before failsafe engages
resolves motor cut after 30seconds if flying in stabilize without GPS (now switches to ALT_HOLD with target altitude zero)
disables motors if throttle was zero before failsafe event
2012-11-11 22:11:12 +09:00
Jason Short 129ec35c35 ACM crosstrack min distance 2012-11-09 22:15:16 -08:00
Jason Short 4d7b9137fe ACM: Added max RTL altitude 2012-11-09 22:15:15 -08:00
rmackay9 1f801714e8 ArduCopter: incorporate new version of inertial navigation
Moved several navigation functions from ArduCopter.pde to navigation.pde
2012-11-07 19:21:31 +09:00
Jason Short 73bc90f9b8 ACM: config.h cleanup
Added LOG_ITERM default to enabled
2012-10-27 09:59:57 -07:00
rmackay9 5e8043fd9c ArduCopter: changed ACRO_ROLL_STABILIZE and ACRO_PITCH_STABILIZE to parameters
Changes on behalf of Leonard Hall
2012-10-23 21:30:50 +09:00
rmackay9 78316adf75 ArduCopter: replace Serial.print with Serial.print_P to save memory.
Includes replacing flight_mode_strings with print_flight_mode function.
SendDebug macro replaced with direct Serial.print_P calls.
2012-10-22 16:45:24 +09:00
Robert Lefebvre bfade7d0ed Fixed that last commit
#define Stupid_Mistake
2012-10-18 16:50:42 -04:00
Robert Lefebvre 592f4040fd Changed RLT Yaw Mode for TradHeli. Also a few comment cleanups. 2012-10-18 16:39:05 -04:00
rmackay9 583f2e49a3 ArduCopter: integrated Leonard Hall's improved ACRO mode 2012-10-18 23:24:34 +09:00
rmackay9 7d7de976c3 ArduCopter: reduced optical flow's I and IMAX terms 2012-10-17 17:47:43 +09:00
LeonardTHall d7b7e1cefa New Yaw controller using rate feed forward and stabilize.
Signed-off-by: LeonardTHall <LeonardTHall@gmail.com>
2012-10-15 11:37:49 +09:00
rmackay9 ee5dab9647 ArduCopter: enable ACRO mode's AXIS_LOCK by default 2012-10-14 19:50:45 +09:00
rmackay9 997fe85880 ArduCopter: fixed acro mode
Changes included:
Removing earth frame roll_rate_trim, pitch_rate_trim and yaw_rate_trim.
Switch ACRO mode to use YAW_ACRO instead of YAW_HOLD.
Changed YAW_ACRO to use stabilize yaw when axis_enabled.
Reset ACRO roll, pitch and yaw targets to current attitude when first entering ACRO.
2012-10-14 17:47:46 +09:00
rmackay9 4a41a3d210 ArduCopter: added BATT_VOLT_PIN and BATT_CURR_PIN parameters to allow support for new 3DR IV battery voltage and current monitor 2012-10-13 18:40:46 +09:00
Robert Lefebvre dae81d2068 Added #define for Tilt_Compensation.
Also added some detail to WP_Speed_Max parameter.
2012-10-12 14:51:31 -04:00
rmackay9 03933df5b7 ArduCopter: set default rate roll and pitch I terms to 0.010, and rate yaw to 0.015
Updated after discussing with Marco
2012-10-11 17:25:01 +09:00
rmackay9 35fa50234f ArduCopter: move I terms from stabilize to rate controllers 2012-10-11 17:20:05 +09:00
rmackay9 af1d6a9b82 ArduCopter: reduce Stabilize Yaw P term to 4.5 2012-10-03 14:19:49 +09:00
rmackay9 ea4f256f8e ArduCopter: BATT_PIN parameter added to allow you to select which pin is used for voltage and current measurements
To save a parameter, the current sensor pin is assumed to always be 1 higher than the voltage pin.
2012-10-02 22:16:19 +09:00
rmackay9 95763e610b ArduCopter: allow DMP to run in parallel with DCM
Parallel DMP can be enabled by #define SECONDARY_DMP_ENABLED in APM_Config.h
New DMP dataflash log type added to allow easy comparison with DCM
2012-09-30 00:25:40 +09:00
rmackay9 41fbb19cf5 AP_InertialSensor_MPU6000: replaced _cs_pin parameter with #define and saved 1 byte of memory
Updated ArduCopter, ArduPlane and example sketches in AP_InertialSensor, AP_IMU and AP_AHRS libraries because they no longer need to pass in cs_pin to the constructor
2012-09-28 19:21:59 +09:00
rmackay9 fff5d51694 ArduCopter: reduced Loiter Rate I to 0.04 (was 0.08) 2012-09-25 19:08:31 +09:00
rmackay9 a71aa21514 ArduCopter: increase default Loiter Rate P to 5.0 2012-09-25 12:19:44 +09:00
rmackay9 9e66b555cb ArduCopter: removed INSTANT_PWM from ArduCopter and AP_Motors library 2012-09-13 21:31:13 +09:00
rmackay9 42406c827a ArduCopter: added NUM_IMU_SAMPLES_FOR_XYZHZ definitions for MPU6000 and Oilpan to allow more syncing of the mainloop with the arrival of data from the IMU. 2012-09-10 11:37:48 +09:00
Craig Elder 274b2e2143 Arducopter: Release 2.7.2 2012-08-31 19:18:10 -07:00
Andrew Tridgell e8d928cca4 ACM: added TELEM_DELAY to ArduCopter 2012-08-30 09:03:01 +10:00
Craig Elder 4ad516c445 Arducopter: increased MAVLINK delay to 6s to reduce the chance of xBee bricking
Arduplane:  increased MAVLINK delay to 6s to reduce the chance of xBee bricking
Ardurover:  increased MAVLINK delay to 6s to reduce the chance of xBee bricking
2012-08-28 20:09:10 -07:00
rmackay9 2ad6dcb7c4 ArduCopter: increased Stabilize Roll and Pitch I term to 0.05 (was 0.01) based on feedback from Jason 2012-08-29 11:34:53 +09:00
rmackay9 b4b394e67e ArduCopter: reduced Rate Roll and Pitch PID values
RATE_ROLL_P, RATE_PITCH_P reduced to 0.165 (was 0.185)
RATE_ROLL_D, RATE_PITCH_D reduced to 0.004 (was 0.008)
2012-08-26 10:45:45 +09:00
uncrustify 429c41155c uncrustify ArduCopter/config.h 2012-08-21 19:19:50 -07:00
Andrew Tridgell 6d11940ada AHRS: removed Quaternion build support from APM/ACM/rover 2012-08-22 10:42:21 +10:00