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
Andrew Tridgell
9c0d984a4e
Plane: support forced motor class in quadplane
2016-04-28 22:37:24 +10:00
Andrew Tridgell
00c2b4b30f
Plane: reload airspeed after VTOL landing
2016-04-28 08:42:19 +10:00
Andrew Tridgell
1ebe0a2583
Plane: prevent a division by zero in takeoff code
2016-04-26 12:06:57 +10:00
Luis Vale Gonçalves
343b4cb81a
Revising ardupilot.com to .org
...
Revising ardupilot.com to .org
2016-04-23 22:49:41 -07:00
Luis Vale Gonçalves
73ac146b7e
Revising ardupilot.com to .org
...
Revising ardupilot.com to .org
2016-04-23 22:49:37 -07:00
Andrew Tridgell
38a7bfd81f
Plane: added Q_ENABLE=2 for starting AUTO in VTOL
2016-04-23 21:03:46 +10:00
Andrew Tridgell
0aa1ae048d
Plane: fixed is_flying() for VTOL flight
...
otherwise we may disarm mid-flight!
2016-04-23 21:03:46 +10:00
Andrew Tridgell
76400a9959
Plane: support DO_VTOL_TRANSITION as a mission item
2016-04-23 21:03:46 +10:00
Andrew Tridgell
07168c3db4
Plane: fixed places that assumed mission command IDs are 8 bit
2016-04-23 21:03:46 +10:00
James Stoyell
4e7e84fc99
Plane: Modified last_valid_rc_ms AFS failsafe input to work when standard failsafe is on
...
Ran into a bug on our physical plane where failsafe.last_valid_rc_ms was not recognizing that the transmitter had failed. This is likely due to how the standard failsafe works in receiving lower-than-possible throttle values. So in order to account for this, I added a new variable to the failsafe, AFS_last_valid_rc_ms, and I update it only if the ch3_failsafe (the throttle failsafe) is not on. If the throttle failsafe is on, that means that the plane has indeed lost transmitter input, so the AFS needs to recognize that.
2016-04-22 11:48:36 -07:00
Randy Mackay
4291139b6c
Plane: ack DO_MOUNT_CONTROL messages
2016-04-22 21:30:51 +09:00
Tom Pittenger
9aa25cb7a0
Plane: update flight stage on successful restart_landing_sequence()
2016-04-21 22:54:23 -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
Tom Pittenger
f12658dd20
Plane: more comments on landing flare
2016-04-21 21:31:01 -07:00
Tom Pittenger
fefcf39335
Plane: must be on land approach before flare alt/sec are used
2016-04-21 21:31:00 -07:00
Tom Pittenger
12663eaa48
Plane: simplify flare logic
2016-04-21 21:30:59 -07:00
Tom Pittenger
183369b92a
Plane: take advantage of L1 stale flag and correctly inhibit flight stage if not lined up on approach
2016-04-21 21:30:58 -07:00
Tom Pittenger
c5a3b1b134
Plane: non-functional change - change labels for approach flight stage criteria
2016-04-21 21:30:56 -07:00
Tom Pittenger
c238645e53
Plane: limit roll before calculating load factor
2016-04-21 21:30:56 -07:00
Tom Pittenger
aadd9a18ce
Plane: log L1 xtrack error integrator and remove extra yaw logging
2016-04-21 21:30:55 -07:00
Tom Pittenger
85913bd237
Plane: rely on flight stage to know if we're doing auto_land in TECS
2016-04-21 21:30:53 -07:00
Tom Pittenger
6a83ad419a
Plane: moved update_flight_stage() inside setup_glide_slope()
...
the glide_slope gets calculated every time there's a major event such as mission item change or wp_proportion change so its good to update the flight stage then too because.
also logging stage when stage changes, might as well get an extra data point in there when it's timely
2016-04-21 21:30:51 -07:00
Tom Pittenger
ec3e9014e4
Plane: move target land_airspeed logic to top layer
...
- this is to allow min groundspeed to be enforced which is otherwise lost when TECS assigns a target airspeed at the lower level
2016-04-21 21:30:50 -07:00
Andrew Tridgell
a549225e60
Plane: support Y6 frame class in quadplane
2016-04-22 10:28:16 +10:00
Rimvydas Naktinis
df922dacfa
Plane: Suppress throttle when parachute release initiated, not after release.
2016-04-21 09:53:22 -07:00
Andrew Tridgell
2a1985d0f9
Plane: fixed loiter radius at end of mission
2016-04-21 22:29:29 +10:00
Andrew Tridgell
de33779382
Plane: added Q_WVANE_MINROLL
...
this allows for some roll trim without weathervaning
2016-04-21 21:52:25 +10:00
Michael du Breuil
ef348473eb
Plane: Remove tecs_hgt_afe from the 50hz tecs update
2016-04-21 17:03:00 +10:00
Michael du Breuil
f5749b44cd
Plane: Move position update to 50hz loop rather then the 10hz
2016-04-21 16:53:20 +10:00
Andrew Tridgell
cf7b6123a9
Plane: log the number of lost log messages
2016-04-21 16:45:02 +10:00
Andrew Tridgell
8683616d8c
Plane: redo scheduler table and improve perf logging
...
The scheduler table was still setup for a worst case CPU of
AVR2560. Adjust times for the stm32 and improve perf logging
2016-04-21 16:45:02 +10:00
Andrew Tridgell
a7006a7784
Plane: refactor perf variables into a structure
2016-04-21 16:45:02 +10:00
Andrew Tridgell
d013878c17
Plane: improved speed limiting on landing approach in VTOL mode
2016-04-20 18:07:04 +10:00
Andrew Tridgell
d8b0d17fe4
Plane: added weathervaning to landing reposition
2016-04-20 17:12:59 +10:00
Andrew Tridgell
f34af03891
Plane: added Q_WVANE_GAIN
...
this controls weathervaning in VTOL modes. Defaults to off
2016-04-20 17:12:59 +10:00
Andrew Tridgell
e9e43dc016
Plane: added Q_VFWD_GAIN for forward motor in VTOL modes
...
this allows for velocity control using the forward motor in VTOL modes
2016-04-20 16:25:19 +10:00
Lucas De Marchi
0095f6168e
ArduPlane: fix handling of SET_HOME_POSITION
...
Location.altitude is stored in cm.
2016-04-18 13:07:45 +10:00
Michael du Breuil
c17ea21a97
Plane: Add support for DO_REPOSITION via COMMAND_INT
...
also allows guided to change loiter directions
2016-04-17 19:00:03 -07:00
Andrew Tridgell
62574b35b5
Plane: fixed negative loiter radius values
2016-04-18 09:33:20 +10:00
Andrew Tridgell
edd15f15c0
Plane: added some fixed wing in-flight transmitter tuning
2016-04-16 20:47:18 +10:00
Andrew Tridgell
27fb35253c
Plane: added in-flight transmitter tuning
2016-04-16 20:26:43 +10:00
Tom Pittenger
436062ef37
Plane: improved crash detection
...
- fixes bug where a bungee launch is configured but the aircraft gets bumped and triggers the prop to spin up. This will now detect that and "crash' and disable the motor
2016-04-14 22:34:46 -07:00
Grant Morphett
2887e48178
Plane: Fixed bug with landing flare for high values of LAND_FLARE_SEC
...
I had an issue in SITL where my plane would round the last WP staring
its landing approach and immediately limit the roll to 5degress even
before the plane had finished turning the corner so it would go WAY
off course. For a high value of LAND_FLARE_SEC (mine was 5) the math
works out the plane has landed if
height <= sink_rate * land_flare_sec
During the banking of the last corner the plane started to decend and
quickly set itself up for a 6.1m/s sink rate which is normal. It was
at 30 meters altitude. As you can see at this point the math thinks
the plane has landed so limits the roll. The solution was to ensure
the plane had covered at least 50% of the distance toward the final
waypoint before allowing a flare to happen. Note that LAND_FLARE_SEC
above 2 is considered very high and this normally wouldn't occur.
2016-04-15 13:02:11 +10:00
Andrew Tridgell
154fe15c67
Plane: fixed build warning
2016-04-15 09:22:41 +10:00
Tom Pittenger
ff57884eca
Plane: renamed variable, non-functional change
2016-04-14 13:18:35 -07: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
Michael du Breuil
78442b7e81
Plane: make the initialization of the gcs instances follow the define
2016-04-11 17:54:46 -07:00
Andrew Tridgell
06bcf0df4b
Plane: change default loop rate for quadplanes to 300Hz
2016-04-11 09:32:45 +10:00
Andrew Tridgell
1fe9582ac3
Plane: back to velocity controller for quadplane landing
...
now with much smoother attitude control thanks to some help from
Leonard
2016-04-10 22:01:19 +10:00
Andrew Tridgell
4a5c4a5189
Plane: not in vtol mode when quadplane not enabled
...
prevents logging error in auto if quadplane not enabled and running a
VTOL mission command
2016-04-10 22:01:18 +10:00
Ricardo de Almeida Gonzaga
5bd034a5a8
Global: start using cmath instead of math.h
2016-04-05 21:06:19 -07:00
Andrew Tridgell
97a7192f76
Plane: make it more obvious that AUTO_FBW_STEER is not for normal use
2016-04-06 07:58:23 +10:00
Andrew Tridgell
5f1ad68bd9
Plane: improved velocity controller for quadplane landing
2016-04-04 09:50:35 +10:00
Andrew Tridgell
8b30569ad1
Plane: setup quadplane earlier in startup
...
this ensures the GCS gets the full parameter list as the param count
will be set before mavlink starts
2016-04-03 06:49:38 +10:00
Andrew Tridgell
5cc4b20c73
Plane: smooth out final descent for landing
2016-04-02 22:45:51 +11:00
Andrew Tridgell
197cefaaa7
Plane: prevent large nose-down on start of velocity controller
2016-04-02 21:19:06 +11:00
Andrew Tridgell
ae51e51c6a
Plane: use velocity controller for initial quadplane landing
2016-04-02 20:54:01 +11:00
Andrew Tridgell
b1266603a6
Plane: setup immediate pitch limit on quadplane takeoff
...
this prevents a single loop with large pitch down demand
2016-04-02 19:53:48 +11:00
Andrew Tridgell
913cf9dd37
Plane: set min quad throttle to 10%
...
fixes spin when armed
2016-04-01 22:18:51 +11:00
Andrew Tridgell
7f85c14c96
Plane: fixed landing detector for new AP_Motors code
2016-04-01 21:54:32 +11:00
Andrew Tridgell
70679a06aa
Plane: fixed quadplane throttle control in AUTO
2016-04-01 17:29:51 +11:00
Andrew Tridgell
52cc369f15
Plane: fixed typo in AP_Motors conversion
2016-04-01 16:45:01 +11:00
Andrew Tridgell
e7f7afcc4d
Plane: added correct filter defaults
2016-04-01 16:44:49 +11:00
Andrew Tridgell
9cf909607f
Plane: setup reasonable quadplane defaults
2016-04-01 16:40:06 +11: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
Randy Mackay
b96ea15220
Plane: quadplane uses AC_AttitudeControl_Multi
2016-04-01 11:59:30 +09:00
Randy Mackay
41b584ac9e
Plane: fix quadplane qstabilize throttle input
2016-04-01 11:59:30 +09:00
Randy Mackay
52caed2573
Plane: QTUN df messages angle boost field as float
2016-04-01 11:59:30 +09:00
Randy Mackay
70f81ee338
Plane: remove multicopter PID parameters
...
These have been moved to the AC_AttitudeControl class
2016-04-01 11:59:30 +09:00
Randy Mackay
39f795d9fd
Plane: quadplane sets motors desired spool state
2016-04-01 11:59:30 +09:00
Andrew Tridgell
f73c8ab8ed
Plane: allow testing of all motors in sequence
...
this makes for an easier startup test for a quadplane, allowing a
single MAVLink command to test that all motors are working correctly
in the right sequence
2016-04-01 11:09:51 +11:00
Tom Pittenger
6718241dad
cleanup comments
2016-03-29 05:32:28 -07:00
Gustavo Jose de Sousa
a4c099feaa
waf: create program groups for main products
...
Currently we need to build a different binary for each type of copter frame.
This is a preparation for setting all those binaries to a group called
"copter". We create the groups for the rest of the main products for
consistency.
2016-03-26 15:43:08 -03:00
Andrew Tridgell
dc9d87fde3
Plane: prepare for 3.5.2 release
2016-03-26 14:52:17 +11:00
Andrew Tridgell
8a6e5ffe80
Plane: fixed bug in rangefinder landing
...
introduced with QLAND change
2016-03-26 10:06:07 +11:00
Andrew Tridgell
b47b558246
Plane: change code URL
2016-03-25 20:47:03 +11:00
Andrew Tridgell
4d7beab8cc
Plane: added QTUN logging for quadplane
2016-03-25 12:33:19 +11:00
Andrew Tridgell
0a199945a2
Plane: added copter RATE logging for quadplane
2016-03-25 12:13:59 +11:00
Andrew Tridgell
1fa075e7a8
Plane: change default quadplane gains
...
lower filter frequency, higher I gain for roll/pitch
2016-03-25 10:16:15 +11:00
Lucas De Marchi
f258b66627
ArduPlane: Update path locations for parameters
...
Thanks to Francisco Ferreira for noticing that.
2016-03-23 17:50:38 -03:00
Andrew Tridgell
0442c2c659
Plane: prepare for 3.5.1 release
2016-03-21 09:44:52 +11:00
Andrew Tridgell
f0eddd6366
Plane: ensure we always eventually capture a loiter
2016-03-18 13:47:45 +11:00
Andrew Tridgell
30ca9fbb01
Plane: cope with upgrade to shifted indexes for quadplane
2016-03-18 12:33:58 +11:00
Michael du Breuil
35bb6a634e
Plane: Make base_mode armed status depend upon the arming library, not soft armed
2016-03-17 15:16:17 +11:00
Don Gagne
cae7ea0d13
Add @Volatile, @ReadOnly support
2016-03-17 10:58:05 +11:00
Lucas De Marchi
e01d49ff53
ArduPlane: replace header guard with pragma once
2016-03-16 18:40:45 +11:00
Michael du Breuil
0117522998
Plane: Use arming voltage
2016-03-14 09:06:58 -07:00
Andrew Tridgell
89970e4eaa
Plane: support motor_test for quadplanes
2016-03-13 10:05:10 +11:00
Andrew Tridgell
d644474817
Plane: support octaquad planes
2016-03-13 10:04:25 +11:00
Andrew Tridgell
d7d528560d
Plane: don't start summing for loiter until we reach loiter circle
2016-03-10 15:43:28 +11:00
Tom Pittenger
f3638f421e
Plane: fix short loiters exiting early
2016-03-10 15:42:18 +11:00
Michael du Breuil
f60b3fd6c7
Plane: remove "Command recieved" statustext
2016-03-10 15:36:05 +11:00
Andrew Tridgell
f4ccf94dfc
Plane: added QLAND mode
...
for VTOL landing. Use for failsafe as well
2016-03-09 18:20:41 +11:00
Andrew Tridgell
927efa90f8
Plane: fixed log printing of Q modes
2016-03-09 17:29:13 +11:00
Don Gagne
1df7baa5c5
Plane: update quadplane param description increment
2016-03-08 09:27:56 +09:00
Tom Pittenger
ff249788bf
Plane: add a default Navigation option as explained in the param docs
2016-03-03 09:16:26 -08:00
Randy Mackay
f66d5f7a8c
Plane: use ahrs.get_origin instead of ekf.getOriginLLH
...
This ensures we get the origin from the active EKF
2016-03-03 16:20:59 +09:00
Tom Pittenger
75be40ea59
Plane: add LAND_THR_SLEW
2016-03-02 10:54:19 -08:00
Tom Pittenger
ed6aa4ed17
Plane: added throttle limiting via max power (current*voltage)
2016-03-02 10:20:44 -08:00
Tom Pittenger
bf5005103c
Plane: allow loiter waypoints to have a zero lat/lng or alt to mean use current
2016-03-02 08:49:11 -08:00
Tom Pittenger
be3941efdf
Plane: unify loiter mission items to require heading to next wp
...
- except loiter_unlimited because it never exits
2016-03-02 08:48:25 -08:00
Tom Pittenger
9e452838ab
Plane: loiter missions to default to loiter_radius if mission says 0 or 1.
...
- except loiter_unlim which uses RTL_loiter, although I'm not sure why.
2016-02-29 10:12:20 -08:00
Tom Pittenger
ed98617d42
Plane: utilize radius for loiter commands
2016-02-29 06:43:29 -08:00
Andrew Tridgell
f35d05e374
Plane: improved quadplane default gains
...
0.25 is better for an average quadplane for roll/pitch
0.5 is a bit high for accel-z, 0.3 is better
2016-02-29 21:46:27 +11:00
Andrew Tridgell
93ac82e1f6
Plane: write voltage/current much more frequently
2016-02-29 21:24:54 +11:00
Will Sackfield
fabe235130
ArduPlane: initialize the fail_test variable
...
* Clang complains if variables are not initialized
2016-02-29 14:14:37 +11:00
Will Sackfield
5f5035933f
ArduPlane: static cast to uint8 on initialization of struct
...
* clang requires that the casting be explicit
2016-02-29 14:14:37 +11:00
Andrew Tridgell
968f07f583
Plane: allow live quadplane PID tuning
2016-02-29 14:10:32 +11:00
Tom Pittenger
b8fc524954
Plane: enforce expected flight_stage in TECS
2016-02-25 06:37:24 -08:00
Tom Pittenger
993e5b438c
Plane: add to LAND_NEUTRL behavior
...
offer netrual vs disabled outputs
2016-02-25 05:51:44 -08:00
Tom Pittenger
6399d00950
Plane: convert to using static send_statustext
...
- no more MSG_STATUSTEXT
- TODO: replace calls to gcs_send_text and gcs_send_text_fmt to GCS_MAVLINK::send_statustext()
2016-02-24 09:18:06 +11:00
Andrew Tridgell
ad78a31255
Plane: move set_dataflash(0 for static logging
2016-02-24 09:18:05 +11:00
Tom Pittenger
881dabf048
Plane: add missionLoaded arming check fail for mis.len <= 1
2016-02-22 16:19:40 +11:00
Andrew Tridgell
1acf25b6e2
Plane: use set_dataflash()
...
give GCS_MAVLINK a dataflash object for logging text messages
2016-02-22 12:34:32 +11:00
Andrew Tridgell
b84b480086
Plane: added PID tuning for quadplane modes
2016-02-20 20:20:27 +11:00
Andrew Tridgell
e2abaefc44
Plane: check SCHED_LOOP_RATE for quadplane
2016-02-20 20:02:52 +11:00
Lucas De Marchi
0b22b520b8
ArduPlane: remove unused CMAKE define
...
This is a leftover from previos cmake build system.
2016-02-19 19:15:39 -02:00
Peter Barker
ca4017d093
Plane: defines.h should not use defines from config.h
...
config.h includes defines.h early, so defines in config.h are unavailable
2016-02-19 12:34:23 -02:00
Tom Pittenger
d0edfa5dfa
Plane: compile warning fix
...
/ardupilot/ArduPlane/quadplane.cpp:773:107: warning: implicit conversion from 'float' to 'double' when passing argument to function [-Wdouble-promotion]
2016-02-17 14:54:02 -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
Andrew Tridgell
8ecf54bf75
Plane: use throttle slew when in quadplane assisted flight
...
this prevents a sudden throttle change on a petrol motor when
transitioning
2016-02-13 11:38:33 +11:00
Tom Pittenger
a280396645
Plane: nonfunctional change, comment only. Units were in old in comment
2016-02-12 12:14:38 -08:00
Tom Pittenger
c837fbca2f
Plane: 3/3 new param TECS_LAND_SRC for Land Sink Rate Change
...
// @Description: When zero, the flare sink rate (TECS_LAND_SINK) is a fixed sink demand. With this enabled the flare sinkrate will increase/decrease the flare sink demand as you get further beyond the LAND waypoint. Has no effect before the waypoint. This value is added to TECS_LAND_SINK proportional to distance traveled after wp. With an increasing sink rate you can still land in a given distance if you're traveling too fast and cruise passed the land point. A positive value will force the plane to land sooner proportional to distance passed land point. A negative number will tell the plane to slowly climb allowing for a pitched-up stall landing. Recommend 0.2 as initial value.
2016-02-12 11:39:27 -08:00
Tom Pittenger
8ac6343730
Plane: removing mission_cmd in TECS and making it bool is_landing
...
this is reverse-thrust cleanup suggested by Tridge
2016-02-12 11:22:59 -08:00
Tom Pittenger
d04b5e735f
Plane: add SYS_STATUS reverse_motor
...
- helpful to tell GCS to interpret VFR_HUD as negative when bit is enabled
- throttle is sent as abs()
2016-02-11 18:46:01 +11:00
Tom Pittenger
fa53263ca9
Plane: make throttle_percentage() signed
2016-02-11 18:46:01 +11:00
Tom Pittenger
ebec68c55b
Plane: param desc to increase THR_MIN range to include negative thrust
2016-02-10 22:18:07 -08:00
Tom Pittenger
f369899509
Plane: restrict rudder arming where reverse_thrust is enabled and commanding negative
2016-02-10 22:18:06 -08:00
Tom Pittenger
a920b7322d
Plane: more desc for param USE_REV_THRUST
2016-02-10 22:04:50 -08:00
Tom Pittenger
046741d23b
Plane: abort landing at 90% throttle instead of 95%
2016-02-08 21:13:43 -08:00
Tom Pittenger
b098466e87
Plane: reduce redundant logging of STAT from 6 Hz to 5 Hz
...
- STAT log entry was being done every 5 Hz plus at 1 Hz. This removes the 1Hz.
2016-02-08 21:13:12 -08:00
Tom Pittenger
66fcd8f58a
Plane: run is_crashed at 5hz instead of 1hz
2016-02-08 21:13:04 -08:00
Andrew Tridgell
93185be1ff
Plane: reset land_pre_flare on mode change
2016-02-09 14:18:02 +11: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
Tom Pittenger
1cb094f12e
Plane: make throttle signed (pos and neg)
2016-02-09 14:18:02 +11:00
Tom Pittenger
b8d5369ebd
Plane: add flight stage LAND_PREFLARE
2016-02-09 14:18:02 +11:00
Andrew Tridgell
f8d8616598
Plane: support all types of multicopters in quadplane
...
adds Q_FRAME_CLASS for class of multicopter frame
2016-02-08 11:00:19 +11:00
Andrew Tridgell
eeda1b56de
Plane: don't do throttle nudge while in geofence failsafe
...
user stick inputs should not apply when outside fence
2016-02-08 10:59:37 +11:00
Tom Pittenger
9157f634eb
Plane: Add Tom Pittenger to authors list
2016-02-02 10:50:12 +09:00