Commit Graph

86 Commits

Author SHA1 Message Date
Andrew Tridgell 059c3769f3 Plane: cope with the changed semantics if airspeed.use() 2015-01-20 11:28:35 +11:00
Grant Morphett e122c0961e Plane: Arming updated to use RC channel objects not RC channels directly
The code had g.rc_3.control_in which would bypass the channel mapping and meant
arming could only occur if the throttle was always mapped to channel 3.
Updated to use the channel mapping object.
2015-01-08 11:55:19 +11:00
Andrew Tridgell 2f0bc1f202 Plane: setup pwm esc scaling 2014-11-26 11:14:44 +11:00
Evan Slatyer c4093b159f ArduPlane failsafes: remove rc_override_active
- rc_override_active is never set anywhere in the ArduPlane code; it's only used for Copter and Rover. Removing it significantly simplifies the failsafe code.
- modified code has been tested in SITL. Heartbeat and RC failures in AUTO, CRUISE, and RTL modes (covering the three cases in the failsafe check functions) have been simulated with FS_LONG_ACTN = 0, 1, and 2, FS_SHORT_ACTN = 0, 1, and 2, and FS_GCS_ENABL = 0, 1, and 2. In all cases the results are identical to those with the original code.
2014-11-14 11:35:27 +11:00
Andrew Tridgell 41100a13c3 Plane: setup failsafe trim values for if FMU firmware dies 2014-04-21 08:37:56 +10:00
Andrew Tridgell aabcc2bb35 Plane: fixed a bug in PWM based throttle failsafe
many thanks to Sam Tabor for finding this bug!
2014-04-10 07:43:48 +10:00
Andrew Tridgell 3c33eb3f09 Plane: use new channel output API 2014-04-03 12:19:11 +11:00
Andrew Tridgell ff70c87f0b Plane: support 14 RC channels on PX4 2014-03-25 14:47:05 +11:00
Andrew Tridgell 09ed8d5819 Plane: updates for new RCInput API 2014-03-25 14:47:05 +11:00
Andrew Tridgell 3a3397d926 Plane: fixup throttle trim on failsafe 2014-03-08 19:27:50 +11:00
Andrew Tridgell c9ebd6a175 Plane: improved RC failsafe handling
this forces all primary control inputs to the trim value on loss of RC
input, and reduces the timeout for loss of RC input to 1 second from 2
2014-03-08 16:20:54 +11:00
Andrew Tridgell 04f2c07b2b Plane: use new RC_Channels API 2014-02-06 10:17:16 +11:00
Andrew Tridgell 30a210cfa6 Plane: setup PWM to be used on throttle when safety is safe on PX4 2014-01-15 22:28:00 +11:00
Andrew Tridgell 89366a1ee1 Plane: fixed ARMING_REQUIRED=2 on APM2 to disable rc output on throttle 2013-12-20 11:59:45 +11:00
Andrew Tridgell a4af83d454 Plane: only allow right rudder for arming
copter users may try to use left rudder to ensure aircraft is
disarmed. Making left rudder arm could be dangerous
2013-12-20 09:43:04 +11:00
Andrew Tridgell 77c6e51887 Plane: allow throttle failsafe on no RC input
on PX4 we just stop getting input on loss of RC - we need to consider
this to be "throttle failsafe"
2013-12-20 09:43:04 +11:00
Andrew Tridgell 3508a14542 Plane: small arming tidyups 2013-12-11 17:29:26 +11:00
Michael Day b0a0316dd6 Plane: Now using AP_Arming library. 2013-12-11 17:29:23 +11:00
Andrew Tridgell 56f574684d Plane: fixed throttle failsafe with reversed throttle 2013-11-17 15:32:53 +11:00
Andrew Tridgell 035ac3800a Plane: use G_Dt for acro angle integration
also cleanup some other uses of performance timing
2013-10-12 13:30:27 +11:00
Andrew Tridgell 8a76d82de4 Plane: set failsafe_radio AP_Notify bits 2013-09-18 11:58:54 +10:00
Andrew Tridgell 43ffe91546 Plane: added FS_ACTION of 2 for glide
this allows people without specified settings in their receiver for
failsafe to choose FBWA zero throttle glide on throttle failsafe. That
can be a better choice when flying at a R/C club field
2013-09-15 15:05:39 +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 51b9cf3e76 Plane: move failsafe variables into a structure
this makes the logic a bit easier to follow
2013-07-22 12:50:00 +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 3ba713352f Plane: use update_aux() for setting up extra channels 2013-07-15 09:56:12 +10:00
Andrew Tridgell 399970e76f Plane: fixed default deadzone for the throttle channel
this is the 2nd half of the fix for issue #303
2013-07-13 13:19:25 +10:00
Randy Mackay 9df93881fb Plane: set_dead_zone renamed to set_default_dead_zone
Change in use of parameter means value passed in should be 1/2 what it
was previously
2013-07-12 11:44:18 +09: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 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
Andrew Tridgell 056e0ca40d Plane: APM2 doesn't have channel 9 PWM output 2013-06-24 13:06:54 +10:00
Andrew Tridgell 6bac13f9e2 Plane: fixed RCMAP_* to fix channel ranges for no-reboot changes 2013-06-03 21:20:39 +10:00
Andrew Tridgell 4c9bc30f58 Plane: make it possible to change control channel ordering without reboot
this makes configuration a bit easier
2013-06-03 16:42:38 +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 515d726ee0 Plane: use RC_Channel::rc_channel() instead of rc_ch[] 2013-06-03 16:23:48 +10:00
Andrew Tridgell 0b8c2da4df Plane: support 12 output channels on PX4 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 c47bc09a3c Plane: avoid doing radio trim if less than 20% of travel available
this prevents problems with awful trim on bootup due to RC TX being
off
2013-04-12 12:47:59 +10:00
Andrew Tridgell 5d54215221 Plane: use int16_t() not int() to ensure simulator matches AVR 2013-04-01 22:17:05 +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
Michael b9a5be6c8b Plane: added secondary elevator support 2013-02-05 08:57:58 +11:00
Andrew Tridgell 9178022a73 Plane: don't change trims if radio_in is zero 2013-01-25 20:44:36 +11:00
Andrew Tridgell 9058949558 Plane: fixed some warnings 2013-01-16 14:19:25 +11:00
Andrew Tridgell edad43611d Plane: reset last heartbeat time on startup completion
this gives more time for the GCS to send its first heartbeat
2012-12-26 08:46:36 +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
Pat Hickey f8dec9ae4a ArduPlane: fixes to use CONFIG_HAL_BOARD instead of CONFIG_APM_HARDWARE 2012-12-20 14:51:37 +11:00
Pat Hickey 92b0c302f2 ArduPlane: Ported to AP_HAL 2012-12-20 14:51:36 +11:00
Andrew Tridgell 84300c85d6 APM: make it possible to run the CLI on any serial port 2012-11-21 21:41:34 +11:00
Andrew Tridgell fcbd3a823b APM: added a new type of auxilary aileron, with rc input
a AileronWithInput assumes you have setup your RC transmitter to give
the right trim and input on the secondary aileron
2012-11-21 13:34:26 +11:00