Commit Graph

305 Commits

Author SHA1 Message Date
Tom Pittenger fc50f145ce Revert "ArduPlane: Convert references to AP_Airspeed. Added automatic migration of ARSPD_FBW_MIN and ARSPD_FBW_MAX (plane parameter) to ARSPD_FBW_MIN and ARSPD_FBW_MAX (library parameter)."
This reverts commit da1b18d918.
2016-08-07 17:54:24 -07:00
AndersonRayner da1b18d918 ArduPlane: Convert references to AP_Airspeed. Added automatic migration of ARSPD_FBW_MIN and ARSPD_FBW_MAX (plane parameter) to ARSPD_FBW_MIN and ARSPD_FBW_MAX (library parameter). 2016-08-04 10:09:04 -07:00
Andrew Tridgell 327a057ee0 Plane: added internal combustion engine support
this allows for automatic engine start and restart
2016-07-25 10:06:03 +10:00
Andrew Tridgell 3f0a8d1761 Plane: added AP_Button support for plane
this also adds the g2 parameter table
2016-07-22 15:01:20 +10:00
Andrew Tridgell 1256c2f351 Plane: changed for AP_Vehicle API change 2016-06-24 11:39:23 +10:00
E Thomas 7d824247af Differential spoilers support, elevon offset
Fixed differential spoilers support, added elevon offset
See PR #2935
2016-06-06 21:55:50 -07:00
Andrew Tridgell 191d6df0ea Plane: 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
Tom Pittenger 6746b4227a Plane: handle large negative baro offsets (corner case) to self-trigger a land-abort go-around
new param: LAND_ABORT_DEG
@Description: This parameter is used when using a rangefinder during landing for altitude correction from baro drift (RNGFND_LANDING=1) and the altitude correction indicates your altitude is higher than the intended slope path. Steeper slopes can result in crashes so this allows the option to remember the baro offset and self-abort the landing and come around for a another landing with the correct baro offset applied for a perfect slope. An auto-abort go-around will only happen once, next attempt will not auto-abort again. This operation happens entirely automatically in AUTO mode. This value is the delta degrees threshold to trigger the go-around. Example: if set to 5 deg and the mission planned slope is 15 deg then if the new slope is 21 then it will go-around. Set to 0 to disable. Requires LAND_SLOPE_RCALC > 0.
2016-05-17 15:41:09 -07:00
Tom Pittenger 034cd2413e Plane: re-calc landing glide slope to gracefully handle baro offset during long flights
New param: LAND_SLOPE_RCALC
@Description: This parameter is used when using a rangefinder during landing for altitude correction from baro drift (RNGFND_LANDING=1) and the altitude correction indicates your altitude is lower than the intended slope path. This value is the threshold of the correction to re-calculate the landing approach slope. Set to zero to keep the original slope all the way down and any detected baro drift will be corrected by pitching/throttling up to snap back to resume the original slope path. Otherwise, when a rangefinder altitude correction exceeds this threshold it will trigger a slope re-calculate to give a shallower slope. This also smoothes out the approach when flying over objects such as trees. Recommend a value of 2m.

default value is 2 (so, enabled by default)
2016-05-17 15:39:04 -07:00
Tom Pittenger 2ba9a04bf5 Plane: smooth-out the end of takeoff pitch by reducing takeoff pitch min via TKOFF_PLIM_SEC
@Description: This parameter reduces the pitch minimum limit of an auto-takeoff just a few seconds before it reaches the target altitude. This reduces overshoot by allowing the flight controller to start leveling off a few seconds before reaching the target height. When set to zero, the mission pitch min is enforced all the way to and through the target altitude, otherwise the pitch min slowly reduces to zero in the final segment. This is the pitch_min, not the demand. The flight controller should still be commanding to gain altitude to finish the takeoff but with this param it is not forcing it higher than it wants to be. (+1 squashed commits)
2016-04-21 22:54:17 -07:00
Andrew Tridgell 27fb35253c Plane: added in-flight transmitter tuning 2016-04-16 20:26:43 +10:00
Andrew Tridgell 3a242ee4a9 Plane: support up to 16 output channels
the extra channels can be used via SBUS output
2016-04-14 08:05:06 +10:00
Andrew Tridgell dd6c4d6225 Plane: fixed up parameters for quadplane
this fixes quadplane parameters for the new AP_Motors code
2016-04-01 16:17:07 +11:00
Lucas De Marchi e01d49ff53 ArduPlane: replace header guard with pragma once 2016-03-16 18:40:45 +11:00
Tom Pittenger 75be40ea59 Plane: add LAND_THR_SLEW 2016-03-02 10:54:19 -08:00
Tom Pittenger 0b26a34f22 Plane: new param LAND_THEN_NEUTRL
// @Description: When enabled, after an autoland and auto-disarm via LAND_DISARMDELAY happens then set all servos to neutral. This is helpful when an aircraft has a rough landing upside down or a crazy angle causing the servos to strain.
2016-02-16 23:40:44 -08:00
Tom Pittenger 2e92089ce6 Plane: Reverse Thrust
Reverse thrust for controlled landings, even with much steeper approach slopes. This is achieved by allowing throttle demand to go negative to maintain a target airspeed. A Pre-Flare stage was added, triggered by an altitude, to allow for a slower airspeed just before land. That lower airspeed can be near stall.
new params LAND_PF_ALT, LAND_PF_SEC, LAND_PF_ARSPD, USE_REV_THRUST
2016-02-09 14:18:02 +11:00
Andrew Tridgell 125af1b856 Plane: added OVERRIDE_SAFETY parameter 2016-01-29 12:20:14 +11:00
Andrew Tridgell 23eef91c59 Plane: added parameter RTL_RADIUS
this allows the loiter radius for RTL to be controlled separately from
the radius for loiter (as requested by a user)
2016-01-19 15:04:30 +11:00
Andrew Tridgell 6468fc6d93 Plane: Initial implementation of quadplane
adds "HOVER" mode
2016-01-09 07:38:52 +11:00
Andrew Tridgell 7b6d862316 Plane: support up to 14 rc inputs for all boards 2016-01-04 08:22:35 +11:00
Tom Pittenger 7cde90553d Plane: new param CRASH_ACC_THRESH
@Description: X-Axis deceleration threshold to notify the crash detector that there was a possible impact which helps disarm the motor quickly after a crash. This value should be much higher than normal negative x-axis forces during normal flight, check flight log files to determine the average IMU.x values for your aircraft and motor type. Higher value means less sensative (triggers on higher impact). For electric planes that don't vibrate much during fight a value of 25 is good (that's about 2.5G). For petrol/nitro planes you'll want a higher value. Set to 0 to disable the collision detector.
2016-01-02 09:58:32 +11:00
pepevalbe 9743e32f70 Plane: added group parameter for AP_Notify library 2015-12-31 11:33:05 +09:00
Peter Barker 574f95bd76 Plane: support multiple simultaneous backends 2015-12-03 13:21:51 +11:00
Tom Pittenger eaad72c192 Plane: Add support for handing ADS-B traffic
- parse MAVLINK_MSG_ADSB_VEHICLE msg
- new 1Hz adsb_update task to compare list against for threat detection
- perform object avoidance via loiter or loiter_and_descend. More methods are welcome!
2015-11-23 19:45:40 +11:00
Lucas De Marchi d1be74c87e ArduPlane: remove checks for HAL_BOARD_APM2 and HAL_BOARD_APM1 2015-11-04 12:14:13 +11:00
Andrew Tridgell 5d1d54a8cb Plane: added CHUTE_CHAN parameter for manual release 2015-10-27 16:06:34 +11:00
Andrew Tridgell 9affddcaa3 Plane: initial support for AP_Parachute library 2015-10-27 16:06:34 +11:00
Andrew Tridgell 458e967d06 Plane: added RPM logging
useful for seeing if a petrol motor is still running
2015-09-24 20:58:18 +10:00
Andrew Tridgell 91f990af06 Plane: added EKF2 to parameters as EK2_* 2015-09-23 11:56:37 +10:00
Randy Mackay 6da53ae3b2 Plane: replace SKIP_GYRO_CAL with INS_GYR_CAL
Also calibrate gyros with accel cal and set trim
2015-09-21 17:06:43 +09:00
Tom Pittenger 25da4ec0ea Plane: added flight stage FLIGHT_LAND_ABORT and abort mechanism
- enabled via new param LAND_ABORT_THR default is 0 (disabled)
- Triggered via 95% throttle during landing, a landing abort will take place.
- This copies all takeoff params for right now, we can make this better later if needed
- added mission item command to NAV_LAND which is the abort takeoff altitude. If 0 then use last takeoff if available, else use 30m
- hold heading, just like takeoff, until altitude is reached
- pitch is constrained to takeoff pitch, or else 10deg if not available
- After abort altitude is reached, the normal landing restart happens (DO_LAND_START or decrement mission)
- restart landing by jumping to DO_LAND_START or decrement mission on mode change
2015-09-09 09:04:24 +10:00
Stewart Loving-Gibbard 722dd29370 Plane: 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
Tom Pittenger da8f4f9e95 Plane: reworked is_flying
add crash detection, allow disengage via param CRASH_DETECT
improved is_flying behavior
take off, landing and hard-landing improvements
add stillness check to is_flying and log it
minimum airspeed is determined ARSPD_FBW_MIN*0.75
2015-08-23 10:34:18 +10:00
Gustavo Jose de Sousa 93c80b03ae ArduPlane: 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
Andrew Tridgell 6c07795b63 Plane: added HIL_SUPPORT define
disable HIL support on APM2 to save flash space
2015-07-30 11:04:31 +10:00
Andrew Tridgell 2f5ade4810 Plane: use 16 bit mask for GCS_PID_MASK 2015-05-27 15:09:47 +10:00
Andrew Tridgell 09476bf9d3 Plane: added GCS_PID_MASK for realtime pid tuning 2015-05-27 14:28:46 +10:00
Randy Mackay 174c55b0af Plane: add support for 4th mavlink channel 2015-05-15 15:07:28 +09:00
Andrew Tridgell edec706c12 Plane: added RUDDER_ONLY parameter
this gives much easier setup for rudder only aircraft.
2015-04-20 09:09:23 +10:00
Michael du Breuil 78a3ce46b9 Plane: Use tecs to control the throttle during takeoff 2015-04-16 08:56:37 +10:00
Michael du Breuil 4b1d71e390 Plane: rebuild the glide slope if we are above it and already climbing
(controlled by GLIDE_SLOPE_THR)
2015-04-13 20:14:51 -07:00
Tom Pittenger 1b0ed277b3 Plane: Disarm On Land
After a landing has occur using a LAND waypoint, automatically disarm
after this many seconds have passed. Use 0 to not disarm.
2015-03-17 10:30:41 +11:00
Andrew Tridgell 1c1798fb11 Plane: support much smoother flare transitions
provide the height above the ground to TECS so it can make a smarter
pre-flare transition
2015-03-15 13:53:08 +11:00
Andrew Tridgell b0cdf8952b Plane: added HIL_MODE parameter
this allows for HIL with any firmware
2015-03-13 22:52:56 +11:00
Michael Day b02098e19e Plane: Make radio trim optional at ground start. 2015-03-13 13:11:44 +11:00
Tom Pittenger 420e9e0d2e Plane: added INITIAL_MODE which is the mode we boot up into.
This is useful when flying without a RX or if you have a RX that
outputs zeros without a detected Txmtr
2015-03-13 13:04:23 +11:00
Andrew Tridgell 16cdf64d63 Plane: added CLI_ENABLED option
this disables using CLI by default, even if compiled in. This is
needed to make standard firmwares work well with companion computers
where the CLI may cause startup issues
2015-03-09 17:58:37 +11:00
Andrew Tridgell bee703ab2a Plane: removed incorrect conditional on parameter enum 2015-02-21 20:23:22 +11:00
Randy Mackay 3a1465c9d1 Plane: integrate SerialManager
call SerialManager init_console on startup
use SerialManager's set_block_writes_all
2015-01-29 14:05:15 +11:00
Randy Mackay 681d28838f Plane: integrate mount frontend-backend restructure
initialise mount on startup
use mount.has_pan_control method
remove calls to unimplemented mount.configure_cmd
remove call to update_mount_type which is now handled by mount lib
2015-01-29 13:57:18 +11:00
priseborough 2500f7e9c2 Plane : Add data logging for optical flow use with EKF 2014-12-06 18:16:48 +11:00
Andrew Tridgell 135f9b2c54 Plane: added STALL_PREVENTION option
this will allow users to disable it if it proves to be a problem with
no airspeed sensor
2014-11-13 14:06:00 +11:00
Andrew Tridgell 913004beb0 Plane: added OVERRIDE_CHAN parameter
this allows both for testing PX4IO override on the ground, and for
forced manual override while flying, including re-arming after in-air
reboot
2014-11-07 10:39:07 +11:00
Michael Day be17bfd972 Plane: Added parameter RTL_AUTOLAND and implementation. 2014-10-20 08:36:20 +11:00
Andrew Tridgell 5af4cefff3 Plane: added FLAP_SLEWRATE parameter
makes for smoother transition of flaps
2014-08-29 20:31:03 +10:00
Andrew Tridgell f66039c9b4 Plane: added TKOFF_FLAP_PCNT and LAND_FLAP_PERCENT
easier control of flaps for takeoff and landing
2014-08-29 20:31:03 +10:00
Andrew Tridgell 988662027e Plane: moved LAND_PITCH_CD into TECS 2014-08-27 20:13:19 +10:00
Andrew Tridgell 50f492a69f Plane: added RNGFND_LANDING option
this allows the use of a rangefinder for landing flare and landing
approach
2014-08-27 17:14:19 +10:00
Andrew Tridgell f2f730ba9b Plane: added FBWA_TDRAG_CHAN parameter
this allows for testing taildragger takeoffs in FBWA mode
2014-08-24 19:39:51 +10:00
Andrew Tridgell 9184e47f84 Plane: added TERRAIN_LOOKAHD parameter
distance to look forward for terrain following
2014-08-07 09:31:03 +10:00
Andrew Tridgell 2a288824c0 Plane: make STAB_PITCH_DOWN in degrees
try to avoid new centi-degrees parameters
2014-08-06 17:59:18 +10:00
Andrew Tridgell 8610d9a8ea Plane: added GLIDE_SLOPE_MIN parameter
this is used to prevent slow glide slopes being used for small
altitude changes in missions. This allows more accurate tracking of
altitude with terrain changes
2014-08-04 21:02:13 +10:00
Andrew Tridgell b64ab07ca4 Plane: added STAB_PITCH_DN_CD parameter
this adds some down trim when at throttle levels below the trim
throttle in FBWA mode.

defaults to 200 centi-degrees. I may adjust based on flight tests
2014-08-03 17:17:20 +10:00
Matthias Badaire 57253fc2ee Rover: Add SERIAL2_PROTOCOL for GCS and FRSky telemtry
This allows selection of protocol type on telem2. The default is MAVLink, but can be selected as FrSky protocol
2014-07-29 17:08:20 -07:00
Andrew Tridgell b158b7e5a9 Plane: replace HAVE_AP_TERRAIN with AP_TERRAIN_AVAILABLE 2014-07-25 07:59:54 +10:00
Andrew Tridgell 3e320d71ab Plane: added TERRAIN_FOLLOW parameter
when enabled RTL, CRUISE and rally points will use terrain altitude
2014-07-24 21:50:19 +10:00
Andrew Tridgell 32bfeed169 Plane: incorporate terrain mavlink calls 2014-07-24 21:45:47 +10:00
Andrew Tridgell 28e1449e8d Plane: updates for new AP_RangeFinder API 2014-07-08 15:07:50 +10:00
Andrew Tridgell 055d8fe7aa Plane: added TKOFF_THR_MAX parameter 2014-05-24 22:19:50 +10:00
Andrew Tridgell d87619c2f1 Plane: added 4 new parameters to control takeoff
this gives flexible control for taildragger takeoff
2014-05-23 07:30:58 +10:00
Andrew Tridgell 94d528e548 Plane: changed baudrate parameters to 16 bit 2014-05-21 12:45:25 +10:00
Michael Day 568fc9e6c9 Plane: Now using AP_Rally library. 2014-04-19 09:16:05 +10:00
Andrew Tridgell d30c4ffe80 Plane: added AUTOTUNE_LEVEL parameter 2014-04-13 22:12:27 +10:00
Emile Castelnuovo a111d174c1 Plane: added VRBRAIN #defines and #includes 2014-04-08 16:19:20 +10:00
Andrew Tridgell e19341ca32 Plane: convert to new GPS driver API 2014-04-01 06:38:24 +11:00
Michael Day f921d4fbac Plane: FENCE_RET_RALLY param. Plane returns to rally point on breach. 2014-03-27 09:26:20 +11:00
Michael Day 25f23cf16c Plane: Sends MAV_SYS_STATUS_GEOFENCE and also allows GCS to enable/disable fence. 2014-03-27 09:26:20 +11:00
Andrew Tridgell ff70c87f0b Plane: support 14 RC channels on PX4 2014-03-25 14:47:05 +11:00
Randy Mackay fdaf3fc177 Plane: add AP_Mission object to parameter list 2014-03-19 12:10:54 +09:00
Randy Mackay a76e2ab02e Plane: reserve NavEKF slot in param list even when not used
Although this wasn't a problem immediatley, if someone had added a
parameter after k_param_NavEKF it's position in eeprom could have moved
as AP_AHRS_NAVEKF_AVAILABLE was enabled/disabled
2014-02-21 13:53:05 +09:00
Paul Riseborough 8c4b0b9be9 Plane : NavEKF Mavlink tunable parameter - first attempt 2014-02-15 05:48:22 +11:00
Andrew Tridgell c3b7e76c28 Plane: added flaperon support
this adds FLAPERON_OUTPUT and FLAP_IN_CHANNEL to allow both manual
and auto flap control for both normal flaps and flaperons
2014-02-06 12:38:59 +11:00
Andrew Tridgell 6cabca690e Plane: fixed RSSI_RANGE enum
many thanks to Valince for spotting this
2014-01-31 12:14:18 +11:00
Andrew Tridgell 3a986474e0 Plane: added RSSI_RANGE parameter 2014-01-30 11:29:35 +11:00
Andrew Tridgell d3adf4c32c Plane: enable AP_BoardConfig 2014-01-20 17:06:28 +11:00
Andrew Tridgell 874110b29d Plane: make LOG_BITMASK 32 bits 2014-01-14 13:06:52 +11:00
Michael Day c87d72353f Plane: Introducing FENCE_RETALT parameter. 2013-12-31 09:48:20 +11:00
Michael Day b0a0316dd6 Plane: Now using AP_Arming library. 2013-12-11 17:29:23 +11:00
Andrew Tridgell 5a0cb5dea4 Plane: added sonar logging to dataflash 2013-11-28 21:49:27 +11:00
Andrew Tridgell 8383abc1fe Plane: added SERIAL2_BAUD and rename SERIAL3_BAUD to SERIAL1_BAUD 2013-11-26 13:00:03 +11:00
Andrew Tridgell 2fa5e6310d Plane: added 3rd telemetry stream on platforms that have it
this generalises the gcs object usage
2013-11-23 19:29:22 +11:00
Andrew Tridgell 490a061c6f Plane: added HIL_ERR_LIMIT
this allows DCM to recover if HIL attitude drifts too far from true attitude
2013-11-23 18:50:57 +11:00
Andrew Tridgell 5bf1463e7a Plane: added RALLY_LIMIT_KM
this will prevent an embarressing use of a rally point from the wrong
airfield
2013-10-06 14:51:13 +11:00
Andrew Tridgell d275f50539 Plane: added GROUND_STEER_ALT and GROUND_STEER_DPS
this uses the new AP_SteerController steering controller developed for
the rover code to allow for ground steering of planes
2013-10-05 07:46:27 +10:00
Andrew Tridgell 081510d37a Plane: added ACRO_LOCKING parameter
this enables/disables the attitude locking in acro mode, allowing acro
to be a pure rate controller
2013-10-05 07:45:12 +10:00
Michael Day 497c95de8e Plane: Add support for rally points.
Added parameter RALLY_TOTAL.

Added handlers for new MAVLink messages RALLY_POINT and
RALLY_FETCH_POINT.

defines.h modified to make room in EEPROM to store rally points.

rally.pde added and is responsible for ensuring rally points get
stored in the correct spot in EEPROM.

Multiple Rally/RTL point support now done.  If rally points have
been defined, then when RTL mode is entered, the closest Rally
point is chosend and the plane loiters at that point.

Note only 10 rally points can be defined; this is to save space in
the APM's EEPROM.
2013-10-03 12:21:08 +10:00
Randy Mackay c64d444b5a Plane: integrate BattMonitor 2013-10-03 11:16:08 +09:00
Andrew Tridgell dd6a69f588 Plane: added WP_MAX_RADIUS parameter
useful when using AUTO_FBW_STEER for manual steering in competitions
2013-09-13 17:43:08 +10:00
Andrew Tridgell cc6acac1dd Plane: added AUTO_FBW_STEER option
this is an unusual option that gives FBWA flight control in AUTO
mode. It is being added to support use of APM in an aerial robotics
competition where students need to pilot the plane, but they still
need waypoint triggering of payloads
2013-09-13 14:38:09 +10:00
Andrew Tridgell accfd46633 Plane: update for new APM_Control API 2013-08-14 14:57:41 +10:00
Andrew Tridgell 233b033e8c Plane: removed old speed/altitude control algorithms
Use TECS only. This makes the code a lot simpler and easier to
properly document
2013-07-22 13:28:11 +10:00
Andrew Tridgell 74dabad1f3 Plane: added SKIP_GYRO_CAL parameter
useful for starting the sim at high altitudes, and for starting planes
without having to hold them still
2013-07-22 12:50:01 +10:00
Andrew Tridgell 608345415b Plane: pass aircraft parameters to attitude controllers
also cope with rename of airspeed min/max variables

Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
2013-07-18 14:53:37 +10:00
Andrew Tridgell f300df5fd1 Plane: added FS_LONG_TIMEOUT and FS_SHORT_TIMEOUT parameters
this is to address the issue raised here:

http://diydrones.com/forum/topics/ardupilot-circle-mode
2013-07-12 11:56:04 +10:00
Andrew Tridgell fc67f51901 Plane: added ACRO_ROLL_RATE and ACRO_PITCH_RATE parameters
default to 180 degrees/second, which seems reasonable
2013-07-11 09:10:41 +10:00
Andrew Tridgell a5bda3ffef Plane: changed to using a "aircraft parameters" structure
this structure can be passed to libraries to give them easy access to
critical user parameters
2013-07-04 16:56:57 +10:00
Paul Riseborough d62636d309 Plane: added new TECS altitude controller
Includes improvements to takeoff/launch detect logic to support hand
launching for X-8 flight
2013-07-04 16:56:57 +10:00
Andrew Tridgell 45f5d05bd2 Plane: enabled RELAY_* parameters 2013-06-25 12:44:26 +10:00
Andrew Tridgell 056e0ca40d Plane: APM2 doesn't have channel 9 PWM output 2013-06-24 13:06:54 +10:00
Andrew Tridgell 93cd0f9a31 Plane: switch to new AP_Scheduler
this gives us more accurate task scheduling in ArduPlane, plus better
monitoring of task timing (via SCHED_DEBUG)
2013-06-04 13:34:58 +10:00
Andrew Tridgell 27bc0cdc2c Plane: rename old channel_* globals
prevent the old "g." names from being used
2013-06-03 16:37:51 +10:00
Andrew Tridgell fb9bf21522 Plane: allow channel mapping of first 4 channels
this makes it easier to support DSM and SBUS radios
2013-06-03 16:23:48 +10:00
Andrew Tridgell cd55ed45e2 Plane: removed the old roll/pitch/yaw PID controllers
use the new controllers, with auto parameter conversion
2013-05-31 14:06:56 +10:00
Andrew Tridgell c81421e275 Plane: added MIXING_GAIN parameter
this allows for the full range of output on both channels, but can
saturate
2013-05-25 18:28:13 +10:00
Andrew Tridgell dd633fcf3f Plane: make voltage and battery capacity failsafe settable at runtime
this also fixes issue #292
2013-05-22 20:33:57 +10:00
Andrew Tridgell 4e2b88f6e6 Plane: added ATT_CONTROLLER option to select attitude controller
set to 1 for the new APM_Control library
2013-05-05 21:51:09 +10:00
Andrew Tridgell de3fcbc413 Plane: removed the MANUAL_LEVEL option
levelling on every startup is far too error prone. This was just
another parameter that everyone changed.
2013-04-29 14:19:53 +10:00
Andrew Tridgell 3d7a4d0e6e Plane: added ELEVON_OUTPUT option
this is like the vtail mixer, but for elevons
2013-04-29 12:13:59 +10:00
Andrew Tridgell 0b8c2da4df Plane: support 12 output channels on PX4 2013-04-25 20:10:53 +10:00
Andrew Tridgell 78538d0543 Plane: removed old HDNG2RLL PID control
not used with L1
2013-04-15 10:52:32 +10:00
priseborough 70a186464b Plane: added LEVEL_ROLL_LIMIT parameter
this replaces both TKOFF_HEAD_HOLD and RUDDER_STEER, allowing users to
instead select a roll limit for takeoff and landing
2013-04-12 21:59:52 +10:00
Andrew Tridgell 11eb0cfce1 Plane: update for new AP_Navigation controller class
this switches ArduPlane over to use the L1 navigation controller, via
a generic nav_controller object pointer.

Note that the nav_controller controls all types of navigation now,
including level flight and heading hold. This provides a cleaner
abstraction than the old method of special case navigation handling

Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
2013-04-12 12:48:09 +10:00
Andrew Tridgell 406921faf1 Plane: added VTAIL_OUTPUT option
this allows for software vtail mixing
2013-04-05 15:22:11 +11:00
Andrew Tridgell dfb14d760b Plane: added HIL_SERVOS option
this allows for real servo output in HIL
2013-03-30 14:38:43 +11:00
Andrew Tridgell 7db7d7db77 Plane: change FBWB altitude control algorithm
this makes FBWB much less sensitive to airframe tuning. When the
elevator stick first goes neutral it locks in the current altitude as
the target altitude. When the elevator stick is off neutral, it moves
the target altitude in proportion to the elevator, at a rate goverened
by the new FBWB_CLIMB_RATE parameter

This prevents the aircraft from slowly drifting in altitude in FBWB,
and gives a more intuitive control mechanism for altitude.

Thanks to Chris Miser from Falcon UAV for help in designing this
change
2013-03-28 10:27:25 +11:00
Andrew Tridgell f077f54e6a Plane: added TKOFF_HEAD_HOLD option
this allows control over whether ArduPlane tries to hold heading
during auto takeoff. For hand launches it can be better to hold the
wings level and not attempt to hold heading during takeoff to prevent
the possibility of a stall during the climb out.

Thanks to Chris Miser from Falcon UAV for the feedback that led to
this option.
2013-03-27 10:27:14 +11:00
Andrew Tridgell 0a385cc0ff Plane: added TKOFF_THR_MINACC option
this is used for triggering auto takeoff with a hand launched plane
2013-03-09 14:41:04 +11:00
Michael Warren 9697ff5d6d Plane: Added extra parameter to specify at what speed in auto-takeoff throttle should engage
This adds TKOFF_THR_MINSPD in m/s
2013-03-09 14:19:48 +11:00
Andrew Tridgell e0e22b63a7 Plane: removed INPUT_VOLTS parameter
no longer needed
2013-03-08 10:01:33 +11:00
Andrew Tridgell 86f667f6cc Plane: added new SERIAL0_BAUD parameter
this is useful on PX4
2013-01-13 07:39:40 +11:00
Andrew Tridgell b6295c12e1 Plane: fixes for new AP_Relay interface 2013-01-02 10:18:45 +11:00
Pat Hickey f8dec9ae4a ArduPlane: fixes to use CONFIG_HAL_BOARD instead of CONFIG_APM_HARDWARE 2012-12-20 14:51:37 +11:00
Andrew Tridgell 92cd631ce5 Plane: added THR_PASS_STAB parameter
this allows direct passthru of throttle in STABILIZE and FBWA, which
is useful for nitro planes wher you have a throttle cut switch that
drops the throttle below normal minimum.
2012-11-26 23:33:05 +11:00
Andrew Tridgell 8f108e2eb3 APM: added AMP_OFFSET option
thanks to Alexey Kozin!
2012-11-21 13:34:27 +11:00
Andrew Tridgell 3aeaf2ece6 APM: k_param_imu is now unused 2012-11-20 18:32:27 +11:00
rmackay9 d9b4407e64 AP_InertialSensor: changes after review with Tridge.
sanity checking added to accelerometer calibration routine.
user feedback is sent using gcs_send_text_fmt instead of Serial.printf.
moved ins parameters to new eeprom number to avoid conflicts with older parameters.
other small changes including renaming of functions and parameters.
2012-11-07 19:21:15 +09:00
Andrew Tridgell 8652bfee8d APM: added RSSI_PIN option for receiver RSSI
this allows you to configure the pin for receiver RSSI without
recompiling
2012-11-06 22:04:41 +11:00
Andrew Tridgell 07c291bb73 APM: fixed a comment typo 2012-10-16 17:21:04 +11:00
rmackay9 775489d658 ArduPlane: added BATT_VOLT_PIN and BATT_CURR_PIN parameters to allow support for new 3DR IV battery monitor 2012-10-13 20:51:41 +09:00
Andrew Tridgell 6bae5ecd51 APM: added THR_SUPP_MAN option
this allows for manual throttle control during auto throttle
suppression. This is useful for keeping a petrol engine idling before
takeoff
2012-09-22 20:17:06 +10:00
Andrew Tridgell cebb67e1df APM: removed the unused sonar code
when we start supporting a sonar we'll add a AP_Sonar library, like
AP_Airspeed
2012-09-19 19:35:22 +10:00
Andrew Tridgell 2324997e16 APM: added ALT_OFFSET parameter
useful to adjust for barometric pressure changes during a long flight
2012-09-19 16:23:25 +10:00
Andrew Tridgell 5c3595e0dc APM: fixed throttle nudging
The nudge value depended on RC3_TRIM, which is not a reliable
value. It tried to only take effect when the throttle stick was above
50%, but if RC3_TRIM was high for some reason (say 1500) then it would
actually depress the throttle by a large amount, which could cause the
plane to stall.

This also adds a boolean option THROTTLE_NUDGE to allow disabling of
throttle nudging
2012-09-09 19:39:04 +10:00
Andrew Tridgell 164c60d25f APM: added RUDDER_STEER option
when enabled, this uses only the rudder to steer during takeoff and
landing, using aileron only for levelling
2012-09-08 10:07:03 +10:00
Andrew Tridgell 96ea350143 APM: added XTRK_MIN_DIST option
this allows you to disable crosstrack correction on short legs
2012-09-08 10:06:44 +10:00
Andrew Tridgell f6c3197cd2 APM: added new TELEM_DELAY parameter
number of seconds to delay telemetry
2012-08-30 08:59:39 +10:00
Andrew Tridgell fce01464b1 APM: added ALT_CTRL_ALG parameter
this allows you to select different altitude control algorithms. The
current choices are for the default (automatic based on if airspeed is
available), or to force a non-airspeed algorithm

The idea is to make it possible to use airspeed for some things (like
wind speed, speed scaling) but not for alt control
2012-08-28 20:18:24 +10:00
Andrew Tridgell c9cf483822 APM: added XTRK_USE_WIND parameter
when enabled this will use the wind estimation code to adjust the
navigation bearing, allowing the navigation code to cope with much
higher levels of wind while using a compass
2012-08-25 17:49:26 +10:00
Andrew Tridgell d445482ace APM: added optional use of new APM_Control library
thanks to Jon Challinger for the new controllers!
2012-08-22 12:45:14 +10:00