Andrew Tridgell
dbd47b2a30
Plane: make TECS the default speed/height controller
2013-07-15 11:12:24 +10:00
Andrew Tridgell
dc024d425a
Plane: re-do roll hanging in ACRO mode
...
this avoids the euler angle zeros of the previous method by using a
gyro integrator on the roll axis
Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
2013-07-13 21:45:58 +10:00
Andrew Tridgell
b37f79d307
Plane: update for new APM_Control API
2013-07-13 21:45:58 +10:00
Andrew Tridgell
113bc20f8a
Plane: added a new CRUISE flight mode
...
See
http://diydrones.com/group/apmusergroup/forum/topics/feature-request-hold-heading-mode
this fixes issue #438
2013-07-13 21:45:58 +10:00
Andrew Tridgell
cc57bfcf12
Plane: fixed handling of deadzone in ACRO mode
...
RC_Channel norm_input() does not take account of the dead zone
2013-07-12 17:54:51 +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
608007361b
Plane: added initial implementation of ACRO mode
...
rate based control with attitude locking
2013-07-11 09:10:41 +10:00
Andrew Tridgell
3c97fad2ec
Plane: changes for GPS field changes
2013-07-10 14:04:22 +10:00
Andrew Tridgell
7aa360b176
Plane: added relative_altitude helper functions
...
prevents some code duplication
2013-07-10 14:04:22 +10:00
Andrew Tridgell
1355b6d89d
Plane: break-up scheduling into smaller pieces
...
ensure mavlink sends don't push us over a scheduling boundary
2013-07-05 18:05:27 +10:00
Andrew Tridgell
d30dd7c3f1
Plane: only run TECS when in an auto-throttle mode
...
this prevents integrator buildup in user controlled modes
2013-07-05 14:55:22 +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
75ef7c26e1
Plane: update takeoff course when conditions met
...
This allows for change of heading before the final takeoff conditions
are met
thanks to Greg Fletcher for suggesting this
2013-07-01 17:05:13 +10:00
Andrew Tridgell
570ecea6c6
Plane: added secondary rudder support
2013-06-29 17:31:03 +10:00
Andrew Tridgell
056e0ca40d
Plane: APM2 doesn't have channel 9 PWM output
2013-06-24 13:06:54 +10:00
Andrew Tridgell
a1f64d606a
Plane: fixed remaining places where primary channel ordering was assumed
...
should now use rcmap for all inputs
2013-06-03 16:23:48 +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
bb3171ab5f
Plane: zero attitude integrators on the ground
2013-06-01 22:29:38 +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
eba7d6da9a
Plane: removed the old crash_timer code
...
This code is less relevent with the new L1 navigation, and could cause
issues with the pilot not having control after a long dive.
Thanks to Soren for pointing out the issues
See issue #305
2013-05-28 11:19:28 +10:00
Andrew Tridgell
767d9d0eb5
Plane: fixed stick mixing in AUTO modes
...
the mixing was asymmetric. Many thanks to Soren Kuula for noticing this!
2013-05-27 08:24:35 +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
6251d0510a
Plane: obey pitch trim and throttle pitch feed forward in new controllers
...
Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
2013-05-05 21:51:09 +10:00
Andrew Tridgell
11ad9d5a2d
Plane: auto-invert pitch control when upside down
...
this helps to recover when flying inverted, for example when in manual
and hitting the lower altitude geofence
2013-05-05 21:51:09 +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
Paul Riseborough
8c5b603848
Plane: use new APM_Control API
2013-05-05 21:51:08 +10:00
Andrew Tridgell
9584aa89d9
Plane: replaced constrain() with constrain_float()
2013-05-02 10:27:10 +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
4f225eff57
Plane: if airspeed enabled, require 5m/s to unsuppress throttle
2013-04-25 20:10:53 +10:00
Andrew Tridgell
8f091e70c8
Plane: move elevon variables into a structure
2013-04-15 14:53:56 +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
e58f49aeaf
Plane: copy rudder out in TRAINING mode
...
we were doing rudder mixing in training mode, which shouldn't be done
2013-04-05 19:38:43 +11:00
Andrew Tridgell
bd2b9fbe9d
Plane: simplify the VTail mixer to be more like a hardware mixer
...
this should make it easier to trim the vtail
2013-04-05 15:47:51 +11: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
683a2919d1
Plane: prevent stick mixing when throttle is below failsafe threshold
...
this fixes issue #40
2013-04-02 10:42:56 +11:00
Andrew Tridgell
2506c216dd
Plane: added a second type of stick mixing
...
this changes STICK_MIXING from a boolean to a tri-state. With
STICK_MIXING=1 it now uses FBW style mixing. With STICK_MIXING=2 it
uses the old style of direct stick mixing.
2013-04-02 08:52:56 +11:00
Andrew Tridgell
e390726bdd
Plane: prevent overflow on large PID gains
...
this uses get_pid_4500() to prevent overflow of servo_out on large PID gains
2013-04-01 22:17:04 +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
Randy Mackay
c2055557f5
Plane: add support for GPS fix type 2D
2013-03-27 11:41:51 +09:00
Andrew Tridgell
1d983b3f2e
Plane: fixed X accel triggering of auto
2013-03-22 11:53:45 +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
e93888dee9
Plane: make a throttle_cruise of 0 mean always zero throttle
...
this can be used for parachute landing missions
Thanks to Chris Miser for the suggestion
2013-03-09 13:48:39 +11:00
Michael
b9a5be6c8b
Plane: added secondary elevator support
2013-02-05 08:57:58 +11:00
Andrew Tridgell
9058949558
Plane: fixed some warnings
2013-01-16 14:19:25 +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
Andrew Tridgell
4cdb3cd390
Plane: use GRAVITY_MSS
2013-01-02 14:45:08 +11:00
Andrew Tridgell
feca411943
Plane: added new TRAINING mode
...
this mode gives manual control when the roll or pitch is within the
set limits (the same limits as FBW mode), and prevents the pilot from
flying beyond those limits, essentially a "attitude limited manual"
mode
2012-12-20 22:41:58 +11:00