Commit Graph

357 Commits

Author SHA1 Message Date
night-ghost adcc309f15 Copter: allow AP_Stats to be optional 2018-03-02 07:23:35 +11:00
Peter Barker b8e1f03599 Copter: add define for disabling beacon 2018-02-27 07:43:13 +09:00
Peter Barker 9b440d6b25 Copter: add option to disable SmartRTL mode
Saves 5.5k of Flash
2018-02-27 07:43:13 +09:00
murata c31c2a4cf1 Copter: optionalize the winch 2018-02-12 12:16:57 +09:00
Andrew Tridgell 0ed75052f8 Copter: enable parameters inside mode objects
this adds FHLD_* parameters for FlowHold mode. It is a large patch as
it needs to disentagle the mode class to enable it to be used in
Parameters.h
2018-02-08 17:36:33 +11:00
Andrew Tridgell af4f0c29ba Copter: enable TMODE (ToyMode) support
this is for the skyviper button based transmitter control
2018-02-08 17:36:33 +11:00
Andrew Tridgell 15166eff2e Copter: enable temperature calibration library 2018-02-08 17:36:33 +11:00
Andrew Tridgell 89674482a7 Copter: added FLTMODE_CH parameter
this allows for the flight mode to be on any RC channel, or no channel
at all to disable RC flight modes
2018-01-27 12:01:35 +09:00
Pierre Kancir cfc69214e6 Copter: add LAND_ALT_LOW parameter 2018-01-24 21:14:35 +09:00
Randy Mackay 8d6f8e4d9c Copter: move pos-control pids to pos-control library 2018-01-23 12:00:43 +09:00
Randy Mackay 6546ccbb3f Copter: velocity pi moved to position control library 2018-01-23 12:00:43 +09:00
Peter Barker 996115c0d3 Copter: eliminate MAIN_LOOP_SECONDS macro 2018-01-20 15:35:58 +11:00
ChrisBird caaeae3d0a Copter: Separate max ascent and descent speeds
Added equivalent parameters to WPNAV_SPEED_UP and WPNAV_SPEED_DN

New parameters named:
PILOT_SPEED_UP (technically renamed PILOT_VELZ_MAX)
PILOT_SPEED_DN

Removed parameter PILOT_VELZ_MAX (technically renamed to PILOT_SPEED_UP).

Flight Modes impacted:
ALTHOLD
AUTOTUNE
CIRCLE
LOITER
POSHOLD
SPORT
TAKEOFF

Update a section in GUIDED mode but I don't think it is ever used but update just in case.

It will use the PILOT_SPEED_UP for ascending max velocity.  For down it will check if
it is 0, if so then it will PILOT_SPEED_UP instead, if non zero it will use PILOT_SPEED_DN.
This retains current behavior and gives the flexibility to change it if desired.
2017-11-09 09:03:54 +09:00
Randy Mackay 787954fa37 Copter: integrate winch library
fixes after peer review:
rename winch-disable to winch-relaxed
add DO_WINCH to do-verify
winch release-length accepts rate
2017-10-27 09:20:38 +09:00
squilter 4b57a4a231 Copter: rename SafeRTL to SmartRTL 2017-09-09 14:05:41 +09:00
squilter ba0e08552f Copter: add SafeRTL flight mode 2017-09-09 14:05:41 +09:00
Peter Barker c6b9c84d1f Copter: remove CLI 2017-08-14 10:23:50 +09:00
Eugene Shamaev 24c390ade0 ArduCopter: move of CAN parameters into separate group 2017-07-03 11:44:32 +01:00
Randy Mackay 713c08672f Copter: integrate AP_VisualOdom 2017-04-19 11:04:40 +09:00
Peter Barker bd6ffc025e Copter: start conversion to AP_Arming_Copter 2017-01-17 11:45:08 +09:00
Andrew Tridgell 5a87ae3f01 Copter: use new SRV_Channels API 2017-01-12 17:39:37 +11:00
Randy Mackay e32ddaa7fa Copter: reorder beacon and proximity declaration
resolves compiler warning
2017-01-04 19:58:53 +09:00
Randy Mackay 12d024e0c6 Copter: rename FRAME to FRAME_TYPE
This unifies the plane and copter parameter names
2016-12-31 10:55:23 +09:00
Randy Mackay 0ac00dbfd6 Copter: add FRAME_CLASS parameter 2016-12-31 10:55:23 +09:00
Andrew Tridgell c3b9dbf5c8 ArduCopter: Add EKF3 and remove EKF1 2016-12-19 08:07:09 +11:00
Randy Mackay 21c7ea1df7 Copter: integrate AP_Beacon 2016-11-30 17:56:55 +09:00
Peter Barker 236b8ab6b7 Copter: make EPM a subclass of AP_Gripper_Backend 2016-11-05 10:20:39 +09:00
Peter Barker 920868145c Copter: support for AP_Gripper 2016-11-05 10:20:33 +09:00
Peter Barker df07cb525a Copter: use AP_Stats to store statistics about vehicle 2016-10-29 14:53:25 +09:00
Mathieu OTHACEHE 152edf7189 Global: remove mode line from headers
Using a global .dir-locals.el file is a better alternative than
reincluding the same emacs header in every file of the project.
2016-10-24 09:42:01 -02:00
Andrew Tridgell 5a9276a5c4 Copter: added SYSID_ENFORCE parameter
allows enforcement of SYSID_MYGCS
2016-10-15 17:14:19 +11:00
Leonard Hall 5c47f3f9e5 Copter: add acro throttle and yaw expo and smoother manual pilot throttle 2016-10-15 11:27:53 +09:00
Randy Mackay 0aab175051 Copter: move proximity to g2 2016-10-14 14:02:29 +09:00
Randy Mackay fcc2a1b378 Copter: integrate AP_Proximity into main vehicle 2016-10-13 20:21:07 +09:00
Andrew Tridgell d0dd10aeea Copter: added DEV_OPTIONS parameter
this is for little used options to allow standard firmware builds to
enable those options for development purposes

First option is for MAVLink based ADSB avoidance
2016-09-12 16:24:34 +10:00
Andrew Tridgell f18e0dadc9 Copter: added optional AdvancedFailsafe for copter and heli 2016-08-25 14:14:18 +10:00
Andrew Tridgell 89c10a2db9 Copter: rename WP_TKOFF_NAV_ALT to WP_NAVALT_MIN
this is in preparation for using the same parameter for landing as
well
2016-08-16 11:26:56 +10:00
Randy Mackay 9842840346 Copter: GND_EFFECT_COMP parameter to enable ground effect compensation 2016-08-09 13:31:36 +09:00
chambana 25940c8e0f Copter: add THROW_TYPE and allow dropping vehicle to trigger motors 2016-08-02 20:25:52 +09:00
Randy Mackay f0f87a2f0c Copter: add throw_nextmode
vehicle switches to mode specified in THROW_NEXTMODE parameter after the
throw is completed.
2016-08-02 20:25:52 +09:00
Randy Mackay d50987f976 Copter: avoidance_adsb implements copter avoidance using ADSB 2016-07-25 20:24:37 +09:00
Andrew Tridgell cb5ca713a9 Copter: added AP_Button support 2016-07-22 15:01:20 +10:00
Andrew Tridgell 3a8ed06267 Copter: added TKOFF_NAV_ALT parameter
this adds TKOFF_NAV_ALT which controls the altitude above takeoff that
navigation can begin. It is meant for unstable vehicles such as helis
to prevent blade strike during initial takeoff.

This also adds a new parameter class ParametersG2 which can hold 64
parameters. This is to avoid running out of parameters in the first
256 block
2016-07-07 14:21:47 +09:00
Daniel Ricketts 87be8daf0e Copter: integrate AC_Avoidance library 2016-06-22 11:38:15 +09:00
Leonard Hall 48eb4cf674 Copter: remove THR_MID 2016-06-18 11:55:49 +09:00
Leonard Hall dec9323127 Copter: remove THR_MIN
Equivalent is AP_Motors SPIN_MIN
2016-06-18 11:55:49 +09:00
Andrew Tridgell 045e3c179a Copter: moved EKF2 to a new parameter index
the meanings of many of the parameters have changed. Best to use a new
index to prevent old parameters from causing crashes
2016-05-25 19:35:17 +10:00
Randy Mackay 7689315ba2 Copter: rename sonar to rangefinder 2016-05-21 10:36:53 +09:00
Randy Mackay 74e02d2c82 Copter: rename TERRAIN_USE to TERRAIN_FOLLOW
This matches plane's parameter name
2016-04-30 10:33:01 +09:00
Randy Mackay 91f6c7b503 Copter: add TERRAIN_USE parameter
Also add terrain.cpp to hold terrain_update and terrain_logging functions
2016-04-30 10:33:01 +09:00
Randy Mackay bde498375c Copter: remove attitude PIDs
These are now part of AC_AttitudeControl
2016-04-01 11:59:30 +09:00
Randy Mackay 1f37f5a0e7 Copter: remove tradheli swash, yaw and rsc servos
These are all created within the AP_MotorsSingle class now except for servo_rsc which was unused
2016-04-01 11:59:30 +09:00
Leonard Hall 6c40d6f774 Copter: remove single frame's servo objects 2016-04-01 11:59:30 +09:00
Leonard Hall 44180e44df Copter: remove coax servo objects
servos moved to AP_MotorsCoax class
2016-04-01 11:59:30 +09:00
Leonard Hall a00a9601a4 Copter: AP_MotorsCoax now uses 4 servos 2016-04-01 11:59:30 +09:00
Andrew Tridgell f19922fec5 Copter: added LAND_SPEED_HIGH parameter
this is the descent rate for the first part of a landing. Separating
this from WPNAV_SPEED_DN allows for independent tuning of fast fwd
flight from landings
2016-03-30 15:54:20 +11:00
Lucas De Marchi e88ba38595 ArduCopter: replace header guard with pragma once 2016-03-16 18:40:44 +11:00
Paul Riseborough a7b69366a1 Copter: Add flight mode for throw launch
The is commit adds a new flight mode called 'Throw' to Copter that enables the copter to be thrown into the air to start motors. This mode can only be netered when the copters EKF has a valid position estimate and goes through the following states

Throw_Disarmed - The copter is disarmed and motors are off.
Throw_Detecting - The copter is armed, but motors will not spin unless THROW_MOT_START has been set to 1. The copter is waiting to detect the throw. A throw with an upwards velocity of at least 50cm/s is required to trigger the detector.
Throw_Uprighting - The throw has been detected and the copter is being uprighted with 50% throttle to maximise control authority. This state transitions when the copter is within 30 degrees of level.
Throw_HgtStabilise - The copter is kept level and height is stabilised about the target height which is 3m above the height at which the throw release was detected. This state transitions when the height is no more than 0.5m below the demanded height.
Throw_PosHold - The horizontal motion is arrested and the copter is kept at a constant position and height.
2016-03-03 12:18:13 +09:00
Jonathan Challinger 3800c66f07 Copter: add RTL_CONE_SLOPE 2016-01-07 17:22:33 +09:00
Andrew Tridgell 5c94b61f49 Copter: support up to 14 input channels for all boards 2016-01-04 08:22:51 +11:00
Randy Mackay 1155b1f557 Copter: remove precision landing PI controller
This controller has been moved into the precision landing class
2015-12-31 15:30:36 +09:00
pepevalbe 3b3205304b Copter: added group parameter for AP_Notify library 2015-12-31 11:33:08 +09:00
Peter Barker f57d237181 Copter: support multiple simultaneous backends 2015-12-03 13:21:51 +11:00
Tom Pittenger 34d6d985e9 Copter: Add support for ADS-B 2015-11-27 15:02:15 +09:00
Jonathan Challinger 5086168b03 Copter: add RTL_SPEED parameter 2015-11-16 10:20:32 +09:00
Robert Lefebvre 5cc4f41d85 Copter: Helicopter: to use new Stab_Col and Acro_Col functions. 2015-11-12 19:37:23 +09:00
Robert Lefebvre 34fb600c4f Copter: Utilize Input Manager Class 2015-11-12 19:37:22 +09:00
Andrew Tridgell 053194fd51 Copter: added EK2_* parameters and EKF2 instance 2015-09-23 11:56:33 +10:00
Randy Mackay 7db77482f5 Copter: precision landing velocity PI object
Follow up changes required to actually use this PI during landing
2015-08-31 18:00:32 +09:00
Randy Mackay 26ded641db Copter: integrate Precision Landing lib 2015-08-31 18:00:28 +09:00
Robert Lefebvre 990761a13b Copter: Create new heli RSC RC Channel object. 2015-08-31 11:27:50 +09:00
Andrew Tridgell ff934d5bca Copter: added FS_CRASH_CHECK parameter
this allows automatic crash detection to be disabled
2015-08-31 12:15:46 +10:00
Andrew Tridgell 90909f2b4a Copter: added DISARM_DELAY parameter
this allows automatic disarming to be disabled, or set to a shorter or
longer time as appropriate for the user
2015-08-31 11:44:08 +10:00
Stewart Loving-Gibbard 7cb494d8e2 Copter: Moving to RSSI library for reading various kinds of RSSI, with the possibility of adding more.
* Retains ability to read from Analog Pin
* Adds ability to read RSSI from PWM channel value as is done in OpenLRSng, EazyUHF, and various other LRS.
* Handles any type of RSSI that provides RSSI values inverted - i.e. when the low value is the best signal and the high value is the worst signal.
* Has different key names from all existing RSSI parameters to provide for a clean break and easier distinguishing.
* Existing parameters are marked as obsolete
2015-08-29 08:05:59 +10:00
Randy Mackay a10a74d498 Copter: AUTOTUNE_MIN_D param to allow controlling minimum D 2015-08-23 14:56:39 +09:00
Andrew Tridgell 1fdf7ec83f Copter: added RPM sensor support
send result via MAVLink
2015-08-12 15:03:50 +10:00
Gustavo Jose de Sousa 4d4b856735 ArduCopter: standardize inclusion of libaries headers
This commit changes the way libraries headers are included in source files:

 - If the header is in the same directory the source belongs to, so the
 notation '#include ""' is used with the path relative to the directory
 containing the source.

 - If the header is outside the directory containing the source, then we use
 the notation '#include <>' with the path relative to libraries folder.

Some of the advantages of such approach:

 - Only one search path for libraries headers.

 - OSs like Windows may have a better lookup time.
2015-08-11 16:28:40 +10:00
Randy Mackay 063faa0383 Copter: add RTL_CLIMB_MIN
Vehicle climbs at least this many cm when entering RTL
2015-07-13 20:38:52 +09:00
Randy Mackay f93a259b04 Copter: add comment to Solo section in Parameters.h 2015-06-14 14:47:02 +09:00
Jonathan Challinger fd37a48f8e Copter: clean up Parameters.h comments a bit 2015-06-14 14:44:15 +09:00
Jonathan Challinger 035c0b567e Copter: reserve param indices that exist in Solo repo 2015-06-14 14:44:13 +09:00
Randy Mackay aa05325b54 Copter: add althold as ekf failsafe action 2015-06-10 12:06:08 +09:00
Randy Mackay 4408f01f39 Copter: rename ekf_check_thresh to fs_ekf_thresh 2015-06-10 12:06:06 +09:00
Andrew Tridgell 1792710f41 Copter: added a bit in LOG_BITMASK for PID logging 2015-05-27 15:09:47 +10:00
Andrew Tridgell 22524daf5f Copter: added GCS_PID_MASK for mavlink rate tuning 2015-05-27 14:28:46 +10:00
Robert Lefebvre 575a5ad619 Copter: Set better default Rate PIDs for TradHeli 2015-05-22 09:38:26 +09:00
Randy Mackay d8b7e4a199 Copter: add support for 4th mavlink channel 2015-05-15 15:07:27 +09:00
Jonathan Challinger 73d961cebc Copter: mavlink initiated takeoff in alt-hold modes
adds PILOT_TKOFF_ALT for target altitude above home in cm for pilot initiated takeoff
2015-05-01 12:56:18 +09:00
Jonathan Challinger b10cf0f38a Copter: pre-takeoff throttle for sprung throttle sticks
Adds PILOT_THR_BHV, PILOT_TKOFF_DZ parameters
2015-05-01 12:56:16 +09:00
Jonathan Challinger 91a03ae0e7 Copter: add PILOT_THR_FILT and call set_throttle_out functions with that value 2015-04-16 21:00:11 +09:00
Randy Mackay 74b98b89d0 Copter: remove dcm check 2015-03-27 00:04:37 -07:00
Robert Lefebvre a5af151a91 Copter: Initial expansion of Aux Switch to Ch7-12 2015-03-17 21:18:41 +09:00
Randy Mackay b10730f35c Copter: remove THR_MAX parameter 2015-03-16 14:49:34 +09:00
Randy Mackay fbfc94cf69 Copter: remove GPS glitch and failsafe
The EKF failsafe now captures all failures that could lead to a bad
position including GPS glitches and a bad compass meaning we do not need
this protection in the main flight code.
2015-03-13 16:40:46 +09:00
Randy Mackay 6f6847c025 Copter: use only InertialNav_EKF
remove calls to unsupported functions including ignore_next_error,
set_altitude, etc.
2015-03-13 16:40:37 +09:00
Randy Mackay d7f624be39 Copter: remove baro_glitch protection 2015-03-13 16:40:27 +09:00
Andrew Tridgell 3f906f6bd1 Copter: added CLI_ENABLED option 2015-03-09 17:58:37 +11:00
Leonard Hall d5bbe6de03 Copter: remove TRIM_THROTTLE
throttle_trim is replaced by throttle_average which is initialised to
the throttle_mid parameter value at startup
2015-03-06 14:02:19 +09:00
Leonard Hall c78480e14f Copter: rename loiter_pos to pos_xy
Also renamed throttle_rate to vel_z, throttle_accel to accel_z
2015-03-06 14:02:17 +09:00
Leonard Hall e232867661 Copter: move LOITER_RATE to 2-axis PI controller
Also rename LOITER_RATE to VEL_XY for parameters, definitions, variables
2015-03-06 14:02:15 +09:00