Andrew Tridgell
3d0516fd57
Plane: added Q_ASSIST_ANGLE
...
this automatically provides quadplane assistance if the angular error
is over the given value for 1 second while flying faster than
Q_ASSIST_SPEED
2016-08-30 08:35:18 +10:00
Andrew Tridgell
33f17588b2
Plane: added auto fence enable on VTOL takeoff
...
fixes issue#724
2016-08-29 18:04:42 +10:00
Andrew Tridgell
c81d8364ac
Plane: check for safety switch state in quadplane motor output
...
get_soft_armed() will be false if safety on
2016-08-29 17:55:35 +10:00
Randy Mackay
d3f8b1b846
Plane: TELEM_DELAY parameter range to 30sec
...
No functional change
2016-08-29 15:29:18 +09:00
Andrew Tridgell
a0fb426a34
Plane: fixes for Fraky_Telem API changes
2016-08-25 10:16:20 +10:00
Andrew Tridgell
a5f20d8c44
Plane: fix for AP_FrSky_Telem API change
2016-08-25 10:16:19 +10:00
floaledm
43006a31a3
Plane: compatibility with revised AP_Frsky_Telem class
2016-08-25 10:16:18 +10:00
floaledm
71921f3aa4
Plane: removed frsky_telemetry_send scheduled task
2016-08-25 10:16:17 +10:00
murata
e6bef2526c
Plane: By multiple bit synthetic, can this method once access.
2016-08-24 11:27:27 -03:00
murata
0e17cff099
Plane: if statements is simple.
2016-08-24 11:26:28 -03:00
Gustavo Jose de Sousa
b8e518a533
waf: use ap_library tool
...
That way we avoid recompiling source files that don't depend on vehicles.
Change notes:
- UTILITY_SOURCE_EXTS: moved to ap_library
- Task generators indexes: ap_library handles that now and in a better way
- Use of AP_STLIB_FEATURES: it doesn't make sense anymore, since the stlib
taskgen has empty source list
- Flags and defines: passed down to ap_library through AP_LIBRARIES_OBJECTS_KW
- Set use='mavlink' in AP_LIBRARIES_OBJECTS_KW instead of calls to
bld.ap_stlib().
2016-08-24 10:46:23 -03:00
Andrew Tridgell
d26af6c25b
Plane: change is_flying() groundspeed threshold to 1.5m/s
2016-08-23 12:50:41 +10:00
Andrew Tridgell
cbbc4d6774
Plane: don't flare due to crash detection unless crash detection enabled
...
this fixes the issue in this bug report:
http://discuss.ardupilot.org/t/auto-landing-bug-crash-with-3d-video-and-logs-ardupilot-3-6-0
2016-08-23 12:19:03 +10:00
Tom Pittenger
2da33e41e9
Plane: add Avoid_ADSB support to plane
2016-08-17 22:38:54 -07:00
Tom Pittenger
b187e1f9a6
Plane: add reason to set_mode()
2016-08-17 22:38:54 -07:00
Tom Pittenger
285e41bac6
Plane: add avoidance_adsb framework for object avoidance
2016-08-17 22:38:54 -07:00
Tom Pittenger
399fa195bb
Plane: add comment to FLTMODE param to include AVOID_ADSB
2016-08-17 22:38:54 -07:00
Tom Pittenger
ca32bcc58d
Plane: add new flight mode AVOID_ADSB to mimic GUIDED
2016-08-17 22:38:54 -07:00
Tom Pittenger
c4460a285c
Plane: remove adsb sensor library based avoidance
...
adsb based avoidance has been moved to AP_Avoidance library
2016-08-17 22:38:54 -07:00
Tom Pittenger
8b021c2498
Plane: pre-arm check includes adsb failsafe
2016-08-17 22:38:54 -07:00
Tom Pittenger
fa326de7fa
Plane: add adsb to failsafe structure and report in heartbeat to GCS
2016-08-17 22:38:54 -07:00
Tom Pittenger
b564616db0
Plane: GCS_MAVLink passes packets to AP_Avoidance
...
This allows treating GLOBAL_POSITION_INT packets from other vehicles in the same way as ADSB packets
2016-08-17 22:38:54 -07:00
Tom Pittenger
46ec812d6c
Plane: add AP_Avoidance to build
2016-08-17 22:38:54 -07:00
Tom Pittenger
7445fac577
Plane: move mavlink msg handling into library
2016-08-16 16:33:36 -07:00
Andrew Tridgell
d482c7f4b7
Plane: decode correct ADSB packet
2016-08-16 16:33:36 -07:00
Andrew Tridgell
c4c7a3051a
Plane: added support for secondary throttles
2016-08-16 16:14:48 +10:00
Andrew Tridgell
7ce7eb5a60
Plane: added Q modes to parameter docs
2016-08-16 13:15:41 +10:00
Andrew Tridgell
b29b609bcc
Plane: added AFS support for quadplanes
2016-08-16 12:56:12 +10:00
Andrew Tridgell
adb5a3ee1f
Plane: re-work AFS for new AP_AdvancedFailsafe API
2016-08-16 12:55:51 +10:00
Andrew Tridgell
5d6dfd927b
Plane: changes for AP_AdvancedFailsafe naming
2016-08-16 12:55:50 +10:00
Andrew Tridgell
b357a254f6
Plane: use force_safety_no_wait() when re-enabling safety off in mixer
2016-08-16 12:53:34 +10:00
Andrew Tridgell
31fb4cc427
Plane: force trims for VTOL motors
2016-08-16 12:53:34 +10:00
Andrew Tridgell
76b6cbbda1
Plane: prevent motor startup on reboot in quadplanes
...
we need to prevent RC overrides within px4io from running
2016-08-16 12:53:34 +10:00
Peter Barker
cb7686001f
Plane: add dataflash as a bit for the mavlink SYS_STATUS message
2016-08-11 17:48:44 -03:00
Andrew Tridgell
82382a7e9c
Plane: changed startup order
...
this allows BoardConfig to report errors in a way that allows for
BRD_TYPE to be changed by the user
2016-08-10 19:54:01 +10:00
Tom Pittenger
e0136dc545
Plane: remove AP_Vehicle::FixedWing dependency in ap_airspeed
2016-08-08 00:02:42 -07:00
Tom Pittenger
f85fc7c1dc
Plane: pass in max airspeed via function call instead of using aparm
2016-08-08 00:02:42 -07:00
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
Tom Pittenger
8dad05d12e
Revert "Airspeed: store reference in libraries and populate it"
...
This reverts commit c090ba2257
.
2016-08-07 17:54:24 -07:00
Tom Pittenger
5fd3c79202
Plane: Fix typos
2016-08-04 11:42:41 -07:00
Ricardo de Almeida Gonzaga
7a9fe95ccb
ArduPlane: Fix typos
2016-08-04 11:41:18 -07:00
Tom Pittenger
c090ba2257
Airspeed: store reference in libraries and populate it
...
- also had to move the initial definition in plane.h so it happened before the others.
2016-08-04 11:06:44 -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
63317e9430
Plane: added throttle suppression for quadplanes
...
this tries to prevent motor start when on ground. Motors instead go
into spin_when_armed state
2016-08-04 09:43:40 -07:00
Gustavo Jose de Sousa
f2dec971e7
waf: add "ap_" prefix to keywords "libraries" and "vehicle"
...
As an effort to keep things specific to ardupilot API in the build system
consistent and easy way to identify.
2016-08-01 22:04:16 -03:00
Tom Pittenger
f90957e7ed
Plane: remove all threat logic in adsb lib in favor of avoidance lib
2016-08-01 15:27:41 -07:00
mirkix
5f5c200625
ArduPlane: Fix filename in header
2016-07-28 18:24:24 -03:00
Lucas De Marchi
c27ebd10c2
ArduPlane: Remove i2c lockup count
...
This was returned only for a single bus and on all supported platforms
this is hardcoded to 0.
2016-07-28 18:03:09 -03:00
Andrew Tridgell
388b7ad6bd
Plane: fixed is_flying_vtol() for non-quadplane
2016-07-27 07:43:16 +10:00
Andrew Tridgell
f65b46385c
Plane: added engine cut on land final in quadplane
2016-07-25 15:46:17 +10:00
Andrew Tridgell
37f71bc6d6
AP_Mission: support DO_ENGINE_CONTROL
2016-07-25 10:06:03 +10: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
02babb71b3
ArduPlane: adjust for 16 channels in SERVO_OUTPUT_RAW
2016-07-25 10:06:02 +10:00
Andrew Tridgell
9602d208a2
Plane: fixed disarm by rudder in quadplane
2016-07-25 06:08:36 +10:00
Tom Pittenger
3f195df9f0
Plane: handle ADSB-Out packets
2016-07-22 13:38:58 -07:00
Tom Pittenger
5c3cca7911
Plane: handle incoming ADSB transceiver packet
2016-07-22 12:20:39 -07: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
7b147e3941
Plane: handle PLAY_TUNE message
2016-07-22 15:00:17 +10:00
Grant Morphett
b8011fd46c
Rover|Plane: Just fixing a spelling mistake.
2016-07-22 08:23:07 +10:00
Tom Pittenger
3177dc2f31
Plane: ADSB service needs to run at 10Hz for dynamic ADSB data
2016-07-20 22:46:51 -07:00
Tom Pittenger
ab38b12f2c
Plane: adsb specific status updates
2016-07-20 22:40:14 -07:00
Tom Pittenger
26efd90603
Plane: allow landing height adjustment on wp before land (aka approach wp)
2016-07-20 22:29:31 -07:00
Andrew Tridgell
4da3236c07
Plane: separate out landing height adjustment from barometer changes
...
this stores a landing height adjustment for an aborted landing
without adjusting barometer readings, applying them only on landing
2016-07-20 22:04:21 -07:00
Andrew Tridgell
9e812d3bda
Plane: don't auto-update home and baro on large height change
...
if we land at a remote location with a different height we should not
update baro and home. This also prevents us updating baro and home if
we disarm in flight
2016-07-20 13:22:00 +10:00
Andrew Tridgell
569cc1c108
Plane: support the LED_CONTROL MAVLink message
2016-07-19 13:37:14 +10:00
Tom Pittenger
601ab9dad0
Plane: remove GCS send_statustext spam
...
Plane: remove GCS send_statustext spam when recalculating glide slope
2016-07-18 18:56:59 -07:00
Allan Matthew
c479fcab39
Plane: support GPS_INPUT mavlink message
2016-07-12 15:35:09 +09:00
Tom Pittenger
7751bee3be
Revert "Plane: coverity scan - variables not initialized in constructor"
...
This reverts commit 9b807fa8a5
.
2016-07-11 22:02:30 -07:00
Andrew Tridgell
e8976d3a89
Plane: check for optflow enable in more places
2016-07-12 09:05:52 +10:00
mirkix
d018a32545
Plane: Only init optflow when enabled by parameter
2016-07-12 09:00:46 +10:00
Andrew Tridgell
c926d7d41f
Plane: fixed typo in quadplane landing detector
...
thanks to Paul for spotting this!
2016-07-08 18:38:43 +10:00
Andrew Tridgell
b6f58bdd98
Plane: don't give tuning errors when VTOL inactive
2016-07-06 14:41:49 +10:00
Tom Pittenger
9b807fa8a5
Plane: coverity scan - variables not initialized in constructor
2016-07-05 13:31:51 -07:00
Andrew Tridgell
96d785f1c6
Plane: added auto_navigation_mode flag
...
this fixes a problem where modes like loiter and auto would allow for
rudder stick mixing even with STICK_MIXING=0
2016-07-05 12:52:13 +10:00
Randy Mackay
2484486999
Plane: log rally points on startup
2016-07-04 11:17:15 +09:00
Tom Pittenger
0597dbd033
Plane: allow SET_ATTITUDE_TARGET to set rpy and throttle
2016-07-01 08:28:53 -07:00
Tom Pittenger
85afd9e245
Plane: remove guided roll flag, handle it with timer=0
2016-06-30 07:48:37 -07:00
Michael Day
8ac433f991
Plane: Can now command roll from a companion computer.
2016-06-30 10:27:44 -04:00
Andrew Tridgell
ec367d4a09
Plane: re-order channel initialisation
...
this fixes a problem with spurious throttle output during board
startup. Many thanks to Marco for finding this!
2016-06-30 16:48:30 +10:00
Andrew Tridgell
8fd31111ad
Plane: fixed waf build with tricopter quadplane
2016-06-30 14:16:52 +10:00
Andrew Tridgell
bf2e30f858
Plane: removed demo_servos()
...
this really didn't help much and slows down startup
2016-06-27 10:19:26 +10:00
Andrew Tridgell
66e43bf6a2
Plane: start with low integrator on back quadplane transition
...
When changing to alt_hold controller in quadplane with significant
airspeed set the initial integrator to minus the hover throttle to
allow the accel controller to climb slowly
2016-06-27 10:18:20 +10:00
Leonard Hall
f1bca63094
Plane: consolidate input_euler_angle calls to use smoothing gain
2016-06-24 17:17:19 +09:00
Andrew Tridgell
1256c2f351
Plane: changed for AP_Vehicle API change
2016-06-24 11:39:23 +10:00
Tom Pittenger
d2365c25c6
Plane: increase update_waypoint() distance threshold during update_loiter()
...
- outside this radius of a loiter waypoint is where crosstracking is available
2016-06-23 12:43:03 -07:00
Andrew Tridgell
f514e76f52
Plane: reset ground_start_count if we lose 3D fix
...
thanks to Michael for this suggestion
2016-06-22 21:25:11 +10:00
Randy Mackay
82bd847e11
Plane: add AC_Avoidance, AC_Fence to build
2016-06-22 11:38:15 +09:00
Randy Mackay
9201a57c83
QuadPlane: include AC_Avoidance, AC_Fence
...
This is required because of AC_WPNav's use of the new avoidance library to stop at the fence
2016-06-22 11:38:15 +09:00
Tom Pittenger
9b973fb899
Plane: add ADSB_streamrate
2016-06-19 11:24:31 -07:00
Randy Mackay
ef1385c9ed
QuadPlane: add comment that eeprom 28 and 41 were used for THR_MIN, MID
2016-06-18 11:55:49 +09:00
Randy Mackay
413f82bac1
Plane: remove unused definitions
2016-06-18 11:55:49 +09:00
Randy Mackay
b456a38432
QuadPlane: remove throttle_mid
...
motor's hover throttle is automatically updated
2016-06-18 11:55:49 +09:00
Randy Mackay
2523ba892b
QuadPlane: set attitude vs throttle priority in attitude controller
2016-06-18 11:55:49 +09:00
Randy Mackay
f2b0f09d6f
QuadPlane: remove THR_MIN
2016-06-18 11:55:49 +09:00
Tom Pittenger
f05c698176
Plane: fix compile error for RANGEFINDER_ENABLED
...
Plane: #define check for rangefinder enabled in relative_ground_altitude()
2016-06-16 14:19:10 -07:00
Andrew Tridgell
40db90cebe
Plane: limit roll and pitch to Q_ANGLE_MAX in Q modes
...
planes often have large LIM_ROLL_CD
2016-06-16 22:00:04 +10:00
Andrew Tridgell
b1b73e2d99
Plane: improved quadplane landing detector
...
look for no vertical position change for 5s as well as low motors
2016-06-16 18:17:56 +10:00
Tom Pittenger
773962940c
Plane: quadplane for fwd_throttle integrator inhibit reverse thrust and allow min>0 for petrol
2016-06-13 14:31:50 -07:00
Tom Pittenger
b6196dfa92
Plane: compiler warning in print: float to double promotion
2016-06-13 14:03:40 -07:00
Andrew Tridgell
107691b7a7
Plane: fixed initial descent rate in quadplane auto land
2016-06-11 14:37:44 +10:00
Andrew Tridgell
f8e0e91cbd
Plane: prepare for 3.6.0
2016-06-11 09:20:05 +10:00
Andrew Tridgell
eb8cd13a50
Plane: update release notes for 3.6.0
2016-06-11 09:19:13 +10:00
Andrew Tridgell
e05c7b3367
Plane: check if terrain following is enabled in AGL calculation
2016-06-10 17:48:32 +10:00
Andrew Tridgell
19834c12e2
Plane: log start of quadplane transition
2016-06-10 17:48:32 +10:00
Andrew Tridgell
8156b3f7de
Plane: fixed quadplane landing transition altitude
2016-06-10 17:48:32 +10:00
Andrew Tridgell
07564aa03f
Plane: fixed an attitude control bug in quadplane transition
...
The motors would briefly spike at the end of the transition which
could cause a major pitch deviation
2016-06-10 17:48:32 +10:00
Tom Pittenger
69f29b51d1
Plane: new param Q_VFWD_ALT to disable VFWD motor below this altitude. Also uses rangefinder
2016-06-10 17:48:31 +10:00
Andrew Tridgell
021aebeac0
Plane: check for high ratio of rmsD to rmsP in tuning
2016-06-10 17:48:31 +10:00
Tom Pittenger
65e0e31a7a
Plane: parachute low-alt check should not require auto mode to ever be set
2016-06-08 08:15:11 -07:00
Tom Pittenger
204abfd45e
Plane: set heartbeat.system_status to Critical for low-battery failsafe events
2016-06-07 17:14:51 -07:00
Tom Pittenger
263931b4b1
Plane: allow manual parachute releases on the ground
2016-06-07 09:02:09 -07:00
Tom Pittenger
ef3d17cc4c
Plane: parachute code can not rely on is_flying() because it is unreliable in a stalled aircraft
2016-06-07 09:01:29 -07:00
Tom Pittenger
3140ce6ab6
Plane: change MAVLINK_MSG_ID_SET_POSITION_TARGET_GLOBAL_INT gcs msg to remove abbreviations. Hope it fits!
2016-06-07 08:28:35 -07:00
Tom Pittenger
bd270720da
Plane: whitespace formatting
2016-06-07 08:27:40 -07:00
Michael Day
429e348824
Plane: Can now change current WP alt via mavlink.
...
Uses the mavlink msg SET_POSITION_TARGET_GLOBAL_INT
2016-06-07 08:16:39 -07:00
Tom Pittenger
01e636065d
Plane: non-functional: mostly whitespace and removed extra set result statement
2016-06-07 08:11:05 -07:00
Michael Day
2c0f0a04d8
Plane: Only allow speed changes in GUIDED and AUTO modes.
2016-06-07 08:22:44 -04:00
Michael Day
cdeef9d692
Plane: Fence breaches can go to RTL mode with new FENCE_ACTION setting.
2016-06-07 15:46:52 +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
Michael du Breuil
037a7980d6
Plane: fix calculation of override PWM
2016-06-06 16:23:43 -07:00
Tom Pittenger
ee29f38cdf
Plane: moved takeoff flap check to NORMAL checks.
...
TODP: add new flight stage FLIGHT_PRE_TAKEOFF to put this sort of thing into
2016-06-06 14:51:24 -07:00
Samuel Rosenstein
296b279f0d
Plane: fixed issue with preflight flaps. Flaps now go down in preflight mode
2016-06-06 14:18:44 -07:00
Michael du Breuil
41bb237799
Plane: remove throttle surpressed message
2016-06-06 15:24:18 +10:00
Andrew Tridgell
5a544002cb
Plane: fixed memory leak in mixer setup
2016-06-06 15:21:17 +10:00
Michael du Breuil
bb9086b87f
Plane: setup mixer in the one second loop when disarmed
2016-06-06 15:17:37 +10:00
Michael du Breuil
fc3ab7b691
Plane: rename var to avoid a var with the name of a c++ keyword
2016-06-06 15:17:15 +10:00
Andrew Tridgell
c54d553df1
Plane: prevent continually loading the mixer
2016-06-06 15:14:28 +10:00
Michael du Breuil
7f73da535a
Plane: if setting a mixer fails then clear the last crc so that it will be attempted again
2016-06-06 07:50:43 +10:00
Andrew Tridgell
eae2bf54ca
Plane: fixed gcc 6.1 build error
2016-06-06 07:43:45 +10:00
Andrew Tridgell
8d3a58f0a2
Plane: allow tuning of more parameter sets
2016-06-04 19:20:31 +10:00
Andrew Tridgell
835235127c
Plane: prevent divide by zero in SITL
...
harmless on PX4
2016-06-04 19:20:18 +10:00
Tom Pittenger
b9cee76bbe
Plane: fix quadplane integrator to always clip to at least 0 to throttle_max
2016-06-03 23:46:18 -07:00
Tom Pittenger
82763ec8a9
Plane quadplane to use relative_ground_altitude() to take advantage of rangefinder easier
2016-06-03 23:44:21 -07:00
Tom Pittenger
f3ceee5389
Plane: use relative_ground_altitude
2016-06-03 23:43:54 -07:00
Tom Pittenger
b3f182157c
Plane: take advantage of rangefinder support in relative_ground_altitude()
2016-06-03 23:43:43 -07:00
Andrew Tridgell
77b7852ff0
Plane: adjust recommend ranges for quadplane Q_VFWD_GAIN and Q_WVANE_GAIN
2016-06-04 11:04:15 +10:00
Tom Pittenger
a596aa5907
Plane: do not log CURR.Throttle because it's already logged elsewhere
2016-06-02 16:59:13 -07:00
Tom Pittenger
f83a6ca1ff
Plane: fixed variable misspelling
2016-06-02 15:10:51 -07:00
Andrew Tridgell
978a89efa6
Plane: added new ESC calibration method
2016-06-02 18:10:37 +10:00
Andrew Tridgell
860587ece7
Plane: disable parachute checks when min alt is zero
2016-06-02 18:07:16 +10:00
Peter Barker
ee5290c178
Plane: avoid switch statement for enabling fence if no fence present
2016-06-02 14:37:21 +10:00
Tom Pittenger
954c987075
Plane: do not parse GEOFENCE packets when geofence is disabled via compile option
2016-06-01 17:38:52 -07:00
Tom Pittenger
af1407a155
Plane: disable parachute code when not enabled via compile option
2016-06-01 17:38:51 -07:00
Tom Pittenger
ea9e39212f
Plane: use new check_latlng helper
2016-06-01 17:38:51 -07:00
Andrew Tridgell
da5ce37bbc
Plane: fixed gain on -ve stick mixing past 50%
...
fixed a sign error in calculating gain on -ve stick mixing beyond 50%
input
thanks to Doug Weibel for a log that showed this effect
2016-06-02 08:07:55 +10:00
Andrew Tridgell
b17c800f44
Plane: use axis specific tuning controller error
...
this gives user feedback on the axis they are tuning
2016-06-01 17:19:33 +10:00
Tom Pittenger
a80a87eb09
Plane: simplify TECS prep logic by utilizing auto_state.land_in_progress
2016-05-31 09:46:52 -07:00
Tom Pittenger
4db5b80b37
Plane: add flag for auto_state.land_in_progress
2016-05-31 09:46:51 -07:00
Tom Pittenger
4ebaab86ec
Plane: override is_flying for quadplane
2016-05-31 09:46:50 -07:00
Peter Barker
28361afc2a
Plane: move telemetry_delayed up into base class
2016-05-31 08:46:09 +10:00
Peter Barker
9ee62aac30
Plane: move adjust_rate_for_stream up
2016-05-29 19:38:50 +10:00
Peter Barker
af5a52e2aa
Plane: subclass GCS_MAVLink in place of defining its functions for it
2016-05-29 16:21:21 +10:00
Andrew Tridgell
f96836ab9a
Plane: prevent a discrepancy between EKF origin and home for altitude
2016-05-29 15:47:26 +10:00
Andrew Tridgell
ba3576f027
Plane: added tuning error reporting for quadplanes
2016-05-28 17:33:30 +10:00
Andrew Tridgell
b56d784ae4
Plane: limit to zero pitch in quadplane on initial transition
2016-05-28 15:08:46 +10:00
Andrew Tridgell
20cf326093
Plane: lower throttle threshold for quadplane is_flying
2016-05-28 07:10:13 +10:00
Tom Pittenger
e3930b45df
Plane: force the safety_state immediately because we want it to be in effect while we make mixer changes
2016-05-27 21:34:40 +10:00
Tom Pittenger
4785650c95
Plane: remove redundant calls to safety_state
2016-05-27 21:34:40 +10:00
Andrew Tridgell
9933069679
Plane: fixed motor test by percentage in quadplane
2016-05-27 11:53:20 +10: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
Andrew Tridgell
6e4c0dd3d7
Plane: allow non-blocking calibrations while armed
2016-05-24 17:10:41 +10:00
Andrew Tridgell
0f50f483b8
Plane: update for new airspeed calibration
2016-05-24 17:00:56 +10:00
Andrew Tridgell
d3494d1369
Plane: don't stall EKF during baro cal
2016-05-24 17:00:56 +10:00
Andrew Tridgell
5b4bbf08fd
Plane: use send_heartbeat wrapper
2016-05-21 15:25:18 +10:00
Andrew Tridgell
4a7dea0c5b
Plane: simplify UART setup
2016-05-21 15:25:16 +10:00
Andrew Tridgell
9f47e6417b
Plane: always build with MAVLink2 headers
2016-05-21 15:25:16 +10:00
Andrew Tridgell
309dbef2ec
Plane: fixed mavlink1 dependency on px4
2016-05-21 15:25:15 +10:00
Andrew Tridgell
eee06da1b5
Plane: use HAVE_PAYLOAD_SPACE()
2016-05-21 15:25:14 +10:00
Andrew Tridgell
be14714fa4
ArduPlane: update signing timestamp on GPS lock
2016-05-21 15:25:13 +10:00
Andrew Tridgell
a103e70460
ArduPlane: handle SETUP_SIGNING message
2016-05-21 15:25:13 +10:00
Andrew Tridgell
b7fe96188d
Plane: raise range of THR_FS_VALUE
...
need to cope with reversed throttle
2016-05-21 07:39:02 +10:00
Andrew Tridgell
e0a9a8196c
Plane: fixed throttle failsafe with THR_PASS_STAB=1
...
this prevents using pass-thru throttle when in throttle failsafe
2016-05-21 07:39:02 +10:00
Don Gagne
151686ce9d
ArduPlane: SET_SENSORS_OFFSETS support for third compass
2016-05-19 18:51:17 -03:00
Tom Pittenger
36a1054f77
Plane: remove Tom Pittenger as an author since he's now listed as a lead
2016-05-17 19:16:02 -07:00
Tom Pittenger
c9167f89eb
Plane: add Tom Pittenger as co-lead developer
2016-05-17 19:03:38 -07:00
Tom Pittenger
30c5c9eb5d
Plane: log SONR.DistCM in cm as SONR.Dist as meters
2016-05-17 18:59:37 -07:00
Tom Pittenger
00863623d7
Plane: SONR logging, remove BaroAlt,GSpd,Thr
2016-05-17 18:59:22 -07:00
Tom Pittenger
b2fb2f3949
Plane: optimize millis() calls by reusing result
2016-05-17 18:59:03 -07:00
Tom Pittenger
1a066cadd2
Plane: fixed float->double print warning
2016-05-17 15:57:26 -07: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
a1c4103cef
Plane: print to GCS the newly calculated glide slope angle
2016-05-17 15:39:05 -07:00
Tom Pittenger
f048aafb76
Plane: store auto land slope
...
- also changed order of landing slope calc but is functionally the same
2016-05-17 15:39:05 -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
4a6dd5a781
Plane: reset baro drift when setting home while disarmed
2016-05-17 15:32:42 -07:00
Andrew Tridgell
e3b2e90a27
Plane: cleanup unnecessarily complex gcs[] usage
2016-05-17 08:27:39 +10:00
dgrat
48c243bed0
ArduPlane: Do not use is_zero() for non-float types
2016-05-16 19:08:35 -03:00
Tom Pittenger
7af888633d
Plane: 3of3 add loiter_xtrack option flag for post-loiter navigation
...
0 to crosstrack from center of waypoint, 1 to crosstrack from tangent exit location
2016-05-16 11:50:54 -07:00
Tom Pittenger
78d6291e2c
Plane: corrected land abort gcs msg
2016-05-13 17:22:13 -07:00
Tom Pittenger
6c0579a895
Plane: for better helical landings allow for instant approach stage if previous nav cmd was LOITER_TO_ALT
2016-05-13 17:22:07 -07:00
Tom Pittenger
ba5b4e694c
Plane: log NTUN:ArspdErr airspeed error (in meters)
2016-05-13 17:22:01 -07:00
Tom Pittenger
1551b9d881
Plane: remove redundant logging in NTUN
2016-05-13 17:22:00 -07:00
Tom Pittenger
8a58f5a5eb
Plane: convert airspeed_error_cmd to airspeed_error (in meters)
2016-05-13 17:21:59 -07:00
Tom Pittenger
25dfb583d5
Plane: adjust target_airspeed with and without airspeed sensor (pitot)
2016-05-13 17:14:47 -07:00
Andrew Tridgell
2a0476483b
Plane: make takeoff less noisy with zero timeout
2016-05-14 08:26:10 +10:00
Andrew Tridgell
574ba71ef3
Plane: update for AP_TECS API change
2016-05-14 08:26:10 +10:00
Ricardo de Almeida Gonzaga
1fad971851
ArduPlane: Fix typos
2016-05-13 19:20:07 -03:00
Michael du Breuil
7142bacfaa
Plane: improve user friendliness of throttle fs msg
2016-05-11 09:00:55 -07:00
Andrew Tridgell
12e0012b16
Plane: allow for NAV_LOITER_UNLIM and NAV_LOITER_TIME in quadplane
2016-05-11 15:57:41 +10:00
Andrew Tridgell
3fc43b94f9
Plane: separate out auto and guided VTOL states
...
this prevents a switch to AUTO from using VTOL mode incorrectly
2016-05-11 15:14:43 +10:00
Andrew Tridgell
bcc64e0b4a
Plane: fixed tiltrotor build failure
...
mixup with merge of RC_Channel changes
2016-05-11 09:25:43 +10:00
Andrew Tridgell
691d4b6ca7
Plane: added local reached_loiter_target()
...
this distinguishes between VTOL and fixed wing loiter targets
2016-05-11 05:55:26 +10:00
Andrew Tridgell
52ea443d65
Plane: added Q_THR_MIN
2016-05-11 05:55:26 +10:00
Andrew Tridgell
a61d608915
Plane: fixed numerical error if starting VTOL landing at destination
2016-05-11 05:55:25 +10:00
Andrew Tridgell
357ed1f4b9
Plane: enable weathervaning in GUIDED and TAKEOFF quadplane modes
2016-05-11 05:55:25 +10:00
Andrew Tridgell
6b358a5618
Plane: added Q_GUIDED_MODE parameter
...
this allows you to do hybrid VTOL and fixed wing guided mode
2016-05-11 05:55:25 +10:00
Andrew Tridgell
3bd5b42c69
Plane: refactor quadplane land controller as general VTOL position controller
2016-05-11 05:55:25 +10:00
Andrew Tridgell
6fdaaa7d98
Plane: new tilt compensation method
2016-05-11 05:55:25 +10:00
Andrew Tridgell
46bf2b83f5
Plane: use equal thrust in tiltrotors when over Q_TILT_MAX
2016-05-11 05:55:24 +10:00
Andrew Tridgell
eab42c5740
Plane: fixed attitude logging with fast logging off
2016-05-11 05:55:24 +10:00
Andrew Tridgell
bbb5f68bb7
Plane: added initial support for tiltrotors and tiltwings
2016-05-11 05:55:23 +10:00
Andrew Tridgell
89a2a92885
Plane: support better build time selection of multicopter frame type
...
makes it possible to do "make sitl-tri"
2016-05-11 05:55:22 +10:00
dgrat
76362caee0
AP_Math: Replace wrap_* functions with template versions
2016-05-10 11:41:26 -03:00
skyscraper
4d769497c9
ArduPlane: RC_Channel refactor
...
Fix white space after function name
2016-05-10 16:21:17 +10:00
skyscraper
e9e2f9020d
ArduPlane: RC_Channel refactor, reimplement stick_mix_channels
...
reimplement the new overload of Plane::stick_mix_channel so
that it calls the existing overload
2016-05-10 16:21:17 +10:00
skyscraper
7f29903287
ArduPlane: Fix up after refactoring RC_Channel class
...
Further to refactor of RC_Channel class which included
adding get_xx set_xx methods, change reads and writes to the public members
to calls to get and set functionsss
old public member(int16_t) get function -> int16_t set function (int16_t)
(expression where c is an object of type RC_Channel)
c.radio_in c.get_radio_in() c.set_radio_in(v)
c.control_in c.get_control_in() c.set_control_in(v)
c.servo_out c.get_servo_out() c.set_servo_out(v)
c.pwm_out c.get_pwm_out() // use existing
c.radio_out c.get_radio_out() c.set_radio_out(v)
c.radio_max c.get_radio_max() c.set_radio_max(v)
c.radio_min c.get_radio_min() c.set_radio_min(v)
c.radio_trim c.get_radio_trim() c.set_radio_trim(v);
c.min_max_configured() // return true if min and max are configured
Because data members of RC_Channels are now private and so cannot be written directly
some overloads are provided in the Plane classes to provide the old functionality
new overload Plane::stick_mix_channel(RC_Channel *channel)
which forwards to the previously existing
void stick_mix_channel(RC_Channel *channel, int16_t &servo_out);
new overload Plane::channel_output_mixer(Rc_Channel* , RC_Channel*)const
which forwards to
(uint8_t mixing_type, int16_t & chan1, int16_t & chan2)const;
Rename functions
RC_Channel_aux::set_radio_trim(Aux_servo_function_t function)
to RC_Channel_aux::set_trim_to_radio_in_for(Aux_servo_function_t function)
RC_Channel_aux::set_servo_out(Aux_servo_function_t function, int16_t value)
to RC_Channel_aux::set_servo_out_for(Aux_servo_function_t function, int16_t value)
Rationale:
RC_Channel is a complicated class, which combines
several functionalities dealing with stick inputs
in pwm and logical units, logical and actual actuator
outputs, unit conversion etc, etc
The intent of this PR is to clarify existing use of
the class. At the basic level it should now be possible
to grep all places where private variable is set by
searching for the set_xx function.
(The wider purpose is to provide a more generic and
logically simpler method of output mixing. This is a small step)
2016-05-10 16:21:16 +10:00
Andrew Tridgell
9f84a22d22
Plane: removed unnecessary libs
...
now in common
2016-05-10 14:13:39 +10:00
Andrew Tridgell
dcb24f2bc1
Plane: use DataFlash::log_while_disarmed()
2016-05-09 12:05:25 +10:00
Andrew Tridgell
51877a20d6
Plane: added some more tuning sets
2016-05-08 18:45:42 +10:00
Andrew Tridgell
35ef20b23a
Plane: use separate definition for TUNE_PARM
...
this allows the parameter docs to be separated
2016-05-08 18:35:26 +10:00
Andrew Tridgell
7a8bf033e1
Plane: allow for tuning of single parameters
2016-05-08 14:47:51 +10:00
Leandro Pereira
f23bd7e09d
GCS_MAVLink: Use a single stream_trigger() implementation
...
This has no side effects, but since all implementations were basically
the same, move the implementation to GCS_Common and the only part that
adjusts the rate based on which which stream to each individual
GCS_MAVLINK implementation.
2016-05-07 23:49:35 -03:00
Lucas De Marchi
0eab8847f2
ArduPlane: remove mention to .pde files
...
We don't support them anymore.
2016-05-07 22:55:48 -03:00
Andrew Tridgell
db5f50e08e
Plane: convert tuning to use AP_Tuning library
2016-05-07 18:34:15 +10:00
Andrew Tridgell
3853aa0fe3
Plane: fix for changed API
2016-05-07 18:27:22 +10:00
Andrew Tridgell
cbbf26a1f6
Plane: removed Log_Write_IMUDT
2016-05-07 18:27:20 +10:00
Andrew Tridgell
3bbc6353d8
Plane: use have_ekf_logging()
2016-05-07 18:27:20 +10:00
Andrew Tridgell
2a7edfd3d1
Plane: fixed setting of failsafe for motors in quadplane
2016-05-07 07:25:33 +10:00
Michael Day
b096e1404d
Plane: Add MAVLink message handler for CMD_DO_CHANGE_SPEED
2016-05-06 11:59:45 -07:00
Lucas De Marchi
fea084a596
Global: use ap_version.h
...
This header is used by waf to contain the generated version macros,
particularly using the git hash. For waf it's better to be in a separate
header since it then can keep track of changes on it a trigger
recompilation.
For the make build system, a dummy ap_version.h file has been added in
the missing/ folder so both implementations can co-exist.
2016-05-06 13:11:28 -03:00
Lucas De Marchi
baa287e5e5
ArduPlane: use separate header for version macro
...
Having the version macro in the config.h and consequently in the main
vehicle header means that whenever the version changes we need to
compiler the whole vehicle again. This would not be so bad if we weren't
also appending the git hash in the version. In this case, whenever we
commit to the repository we would need to recompile everything.
Move to a separate header that is include only by its users. Then
instead of compiling everything we will compile just a few files.
2016-05-06 13:11:28 -03:00
Rimvydas Naktinis
3c00324fd2
Plane: Parachute uses altitude above ground (not home) to check suitability for deployment.
2016-05-05 09:02:25 -07:00
Rimvydas Naktinis
9fdf39baf0
Plane: Added a method that returns current altitude relative to terrain, if available, or home otherwise.
2016-05-05 09:02:20 -07:00
Allan Matthew
25c8027606
Plane: handle new MAVLink rangefinder input
2016-05-04 08:40:34 -07:00
Michael du Breuil
0fcfcdc169
Plane: Broadcast POSITION_TARGET_GLOBAL_INT as part of the EXTENDED_STATUS stream
2016-05-01 07:38:23 +10:00
Michael Oborne
cd56061b24
ArduPlane: support MAVLINK_MSG_ID_MISSION_ITEM_INT
2016-05-01 07:13:46 +10:00
Andrew Tridgell
226e6f1d6c
Plane: only save compass offsets when disarmed and learning enabled
2016-04-30 16:43:14 +10:00
Andrew Tridgell
dfa86cff63
Plane: update release notes for 3.6.0beta1
2016-04-30 14:34:47 +10:00
Andrew Tridgell
a99616bd10
Plane: prepare for 3.6.0beta1 release
2016-04-30 14:34:47 +10:00
Andrew Tridgell
3a35f8f528
Plane: update release notes for 3.5.3
2016-04-30 14:34:47 +10:00
Andrew Tridgell
abfcf89f5e
Plane: reduced the rate of EKF and attitude logging to 25Hz
...
this will reduce the log file size while not appreciably reducing the
ability to analyse logs
2016-04-30 14:34:47 +10:00
Andrew Tridgell
0fd044c1f7
Plane: added Q_RTL_MODE parameter
...
used to switch to VTOL landing on RTL
2016-04-30 14:34:47 +10:00
Andrew Tridgell
66d3668ac4
Plane: rapid climb in QRTL if below target altitude
2016-04-30 14:34:47 +10:00
Andrew Tridgell
4666b25258
Plane: initial implementation of QRTL for quadplane RTL
2016-04-30 14:34:47 +10:00
Andrew Tridgell
460885c478
Plane: refactored quadplane landing controller
...
allow use in other than AUTO mode
2016-04-30 14:34:46 +10:00
Michael du Breuil
de1e299754
Plane: Remove support for CONDITION_CHANGE_ALT
2016-04-30 10:56:05 +09:00
Niti Rohilla
a03941ba02
ArduPlane : Updated handle_guided_request() to report error.
2016-04-29 12:39:28 -03:00
Michael du Breuil
731c68f273
Plane: Change mode to RTL on end of mission rather then staying in auto
...
Deleted commands_process as it had 2 lines of useful code left, and was cleaner to move the remaining two lines into the caller case
2016-04-29 13:12:18 +10:00
Andrew Tridgell
ab5ca53e2f
Plane: lower default VTOL ANGLE_MAX to 30 degrees
...
we don't really want a quadplane at 45 degrees or the wing drag gets
far too high
2016-04-29 10:23:26 +10:00
Andrew Tridgell
19a1edcd2b
Plane: lower default velocity controller gains for quadplanes
...
we're getting too many XY velocity controller oscillations. Better to
start with smaller gains
2016-04-29 10:02:45 +10:00
Andrew Tridgell
6f4d66f346
Plane: support building quadplane with forced motors class
2016-04-28 22:40:45 +10:00