Commit Graph

4782 Commits

Author SHA1 Message Date
Randy Mackay
68d3655195 Copter: fix rtl's use of rally point alt
Thanks to OXINARF for spotting this
2016-08-06 14:01:38 +09:00
Randy Mackay
57977e2d76 Copter: ensure RTL to rally point does not breach the altitude fence
Previously we added the rally-point altitude to the calculated return altitude on the final line of this function meaning the fence's altitude check was not performed on the final value.  This change adds the rally-point altitude as the first step so it is included before the fence altitude check.
This change also converts the return alt to an alt-above-home so that it can correctly be compared to the fence (previously a terrain-altitude might have been compared to an alt-above home)
2016-08-06 14:01:31 +09:00
Francisco Ferreira
43ad1f372d Copter: change function from computing return altitude to computing return target
Also fix altitude for rally points
2016-08-06 13:50:53 +09:00
Francisco Ferreira
e732cda577 Copter: when calculating RTL return alt use rtl_path directly
At the same time, fix bug: check return point for terrain and not origin twice
2016-08-06 13:50:50 +09:00
Randy Mackay
5b5385715e Copter: manual modes set_land_complete to false 2016-08-05 13:36:39 +09:00
Randy Mackay
c3d71f733c Copter: remove get_takeoff_trigger_throttle
get_pilot_desired_climbrate can be used instead.
2016-08-05 12:40:37 +09:00
Randy Mackay
ac4f36a992 Copter: remove LAND_REQUIRE_MIN_THROTTLE_TO_DISARM feature
This definition has been false for over a year and we have not heard of any users wanting to delay the disarming until the pilot's throttle goes to zero.  Removing this feature removes a small bit of complexity from the code.
2016-08-05 12:40:37 +09:00
Randy Mackay
d1e257d5b6 Copter: remove unused get_throttle_pre_takeoff 2016-08-05 12:40:37 +09:00
Randy Mackay
cb5d3238cb Copter: poshold provides throttle feedback from mid-stick when landed 2016-08-05 12:40:37 +09:00
Randy Mackay
6d9d3c1458 Copter: autotune provides throttle feedback from mid-stick when landed 2016-08-05 12:40:37 +09:00
Randy Mackay
88da5bd453 Copter: sport mode restructured to match althold and feedback from mid-stick
This modifies sport mode to be structured like althold and loiter flight modes so that ongoing maintenance of the modes is hopefully easier.
Also changes throttle feedback to occur from mid-stick
2016-08-05 12:40:37 +09:00
Randy Mackay
53f0216269 Copter: sport - fix call to relax_alt_hold_controller 2016-08-05 12:40:37 +09:00
Randy Mackay
5061b29031 Copter: poshold - fix call to relax_alt_hold_controller 2016-08-05 12:40:37 +09:00
Randy Mackay
aa4661835e Copter: brake - fix call to relax_alt_hold_controller 2016-08-05 12:40:37 +09:00
Leonard Hall
5b277f4fb5 Copter: autotune - fix call to relax_alt_hold_controllers 2016-08-05 12:40:37 +09:00
Leonard Hall
205bac91a1 Copter: loiter spin-up to throttle min (and remove a state) 2016-08-05 12:40:37 +09:00
Leonard Hall
d9deab9e8e Copter: AltHold pilot feedback only spins up to min throttle 2016-08-05 12:40:37 +09:00
Leonard Hall
22422bd7b3 Copter: autotune bug fix to autotune_updating_p_up_d_down
This resolves an issue in which the D term could be reduced far lower than
it should have been.
2016-08-04 21:46:30 +09:00
Jonathan Challinger
80f3541933 Copter: add configurable arming delay 2016-08-04 15:19:22 +09:00
Jonathan Challinger
4a6cc75ebb Copter: whitespace change 2016-08-04 15:17:38 +09:00
Randy Mackay
595aea236a Copter: consolidate throw mode state into structure 2016-08-02 20:25:52 +09:00
Randy Mackay
381397c7bd Copter: set throw mode stage on init 2016-08-02 20:25:52 +09:00
Randy Mackay
807e930251 Copter: throw uses motor spooling instead of interlock 2016-08-02 20:25:52 +09:00
Randy Mackay
f4f13bbe6b Copter: add throw mode logging 2016-08-02 20:25:52 +09:00
Randy Mackay
8c5c8eec44 Copter: minor throw mode comment fix
No functional change
2016-08-02 20:25:52 +09:00
Randy Mackay
8e58ea9277 Copter: add throw mode defines for required speed
No functional change
2016-08-02 20:25:52 +09:00
chambana
25940c8e0f Copter: add THROW_TYPE and allow dropping vehicle to trigger motors 2016-08-02 20:25:52 +09:00
Randy Mackay
f0f87a2f0c Copter: add throw_nextmode
vehicle switches to mode specified in THROW_NEXTMODE parameter after the
throw is completed.
2016-08-02 20:25:52 +09:00
Randy Mackay
64ac18da6c Copter: move throw state into structure
This makes it easier to add more state which is required for the follow throw_nextmode change
2016-08-02 20:25:52 +09:00
Randy Mackay
40db19549e Copter: allow taking off in Guided mode's attitude control sub mode 2016-08-02 18:26:05 +09:00
Randy Mackay
4e92f08bf1 Copter: only accept attitude targets in Guided mode 2016-08-02 18:26:04 +09:00
Randy Mackay
1161417d7f Copter: add GUIDED_NOGPS flight mode
This mode is a cut down version of Guided mode that only accepts attitude commands.
This mode does not require a GPS lock
2016-08-02 18:25:59 +09: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
Jonathan Challinger
2c41459fe9 Copter: loosen accelerometer consistency check in z-axis 2016-07-29 14:08:14 +09:00
murata
b1f204e2a6 Copter: use constrain_float for target_roll assignment 2016-07-29 13:35:27 +09:00
Lucas De Marchi
c0b49f6aeb ArduCopter: 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
mirkix
e3934fac80 ArduCopter: Delete (wrong) filename out of header 2016-07-25 17:13:41 -03:00
Randy Mackay
49674abb21 Copter: guided mode's velocity controller stops before fence 2016-07-25 20:24:37 +09:00
Randy Mackay
7a6e0a981b Copter: simplify guided mode's velocity controller's accel limit calcs 2016-07-25 20:24:37 +09:00
Randy Mackay
dc52f3b2df Copter: guided mode applies acceleration limits to velocity controller 2016-07-25 20:24:37 +09:00
Randy Mackay
866487608e Copter: rename guided mode's posvel controller target variables
We will re-use these targets for the guided velocity controller
2016-07-25 20:24:37 +09:00
Randy Mackay
6118bf1b14 Copter: remove adsb sensor library based avoidance
adsb based avoidance has been moved to AP_Avoidance library
2016-07-25 20:24:37 +09:00
Randy Mackay
d50987f976 Copter: avoidance_adsb implements copter avoidance using ADSB 2016-07-25 20:24:37 +09:00
Randy Mackay
df55704875 Copter: pre-arm check includes adsb failsafe 2016-07-25 20:24:37 +09:00
Randy Mackay
68899ed921 Copter: add adsb to failsafe structure and report in heartbeat to GCS 2016-07-25 20:24:37 +09:00
Randy Mackay
f4db4bdb08 Copter: 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-07-25 20:24:37 +09:00
Randy Mackay
61844b3062 Copter: add AP_Avoidance to build 2016-07-25 20:24:37 +09:00
Andrew Tridgell
387da40fc5 ArduCopter: adjust for 16 channels in SERVO_OUTPUT_RAW 2016-07-25 10:06:02 +10:00
Tom Pittenger
07a838937e Copter: handle ADSB-Out packets 2016-07-22 13:38:37 -07:00
Andrew Tridgell
cb5ca713a9 Copter: added AP_Button support 2016-07-22 15:01:20 +10:00
Andrew Tridgell
e943a48eba Copter: added PLAY_TUNE message 2016-07-22 15:00:17 +10:00
Francisco Ferreira
90a4b36263 Copter: remove pre-arm check for rally points 2016-07-22 09:00:23 +09:00
Francisco Ferreira
25fefe77b7 Copter: add AP_Rally_Copter
override default is_valid method so we can check if rally point is inside the fence, if it isn't we ignore it
2016-07-22 09:00:18 +09:00
Tom Pittenger
d136737c87 Copter: add ADSB-out support for copter 2016-07-20 22:46:54 -07:00
Randy Mackay
8681911a0b Copter: small fix to precision land descent rate 2016-07-12 18:40:25 +09:00
Jonathan Challinger
a4827aff53 Copter: slow down precision landing descent based on position error 2016-07-12 18:40:25 +09:00
Jonathan Challinger
e22220ab62 Copter: refactor landing to reduce duplication, use vertical vel ff 2016-07-12 18:40:25 +09:00
Jonathan Challinger
e311139a21 Copter: use terrain alt for precland if rangefinder is unavailable 2016-07-12 18:40:25 +09:00
Jonathan Challinger
0f4367744f Copter: update precland at 400hz, log at 25hz 2016-07-12 18:40:25 +09:00
Allan Matthew
860773260f Copter: support GPS_INPUT mavlink message 2016-07-12 15:34:51 +09:00
Andrew Tridgell
3a8ed06267 Copter: added TKOFF_NAV_ALT parameter
this adds TKOFF_NAV_ALT which controls the altitude above takeoff that
navigation can begin. It is meant for unstable vehicles such as helis
to prevent blade strike during initial takeoff.

This also adds a new parameter class ParametersG2 which can hold 64
parameters. This is to avoid running out of parameters in the first
256 block
2016-07-07 14:21:47 +09:00
Randy Mackay
877a144dea Copter: pre-arm check that rally points are within fence 2016-07-04 18:25:03 +09:00
Randy Mackay
2647bed484 Copter: guided mode uses modified check_destination_within_fence 2016-07-04 18:25:03 +09:00
Jonathan Challinger
91a5b26725 Copter: use simplified precland interface 2016-07-04 16:57:06 +09:00
Derek Ma
7fddf20f0b Copter: enable precision landing in auto mode 2016-07-04 16:57:06 +09:00
Randy Mackay
543d5701e7 Copter: remove unused log_write_startup 2016-07-04 11:17:16 +09:00
Randy Mackay
5d5a85c38e Copter: log rally points on startup 2016-07-04 11:17:14 +09:00
Andrew Tridgell
6737bc21b9 Copter: fixed typo 2016-07-01 15:34:48 +10:00
Andrew Tridgell
b5ccd458d3 Copter: added 10Hz logging of controller RMS values
as discussed with Leonard
2016-06-29 14:43:44 +10:00
Randy Mackay
7edb6e76f0 Copter: set terrain capabilities only if terrain code is compiled in
Thanks to OXINARF for finding this
2016-06-27 17:11:06 +09:00
Randy Mackay
52d81f630f Copter: pass polygon fence mavlink messages to fence 2016-06-25 15:55:55 +09:00
Randy Mackay
b61ae1a4a1 Copter: log EKF yaw reset event 2016-06-24 18:12:30 +09:00
Leonard Hall
07cadc7ddd Copter: rename limit_angle_to_rate_request to use_input_shaping 2016-06-24 17:17:18 +09:00
Leonard Hall
3b7658c502 Copter: land and crash detector use thrust angle error
The thrust angle error is the difference between our desired thrust vector
and the actual thrust vector

Also some changes to use definitions in place of constants in the checks
2016-06-24 17:17:18 +09:00
Leonard Hall
7d54c268f6 Copter: consolidate input_euler_angle calls to use smoothing gain
Previously we had _smooth and non-smooth methods in the attitude
controller but as part of the move to quaternions these have been replaced
by a single call which always takes a smoothing gain
2016-06-24 17:17:17 +09:00
Leonard Hall
75c4367cfc Copter: Change fabs to fabsf 2016-06-24 15:03:14 +09:00
Peter Barker
043b1d321d Copter: remove paths for documenation for non-multi frame
Our current documentation system only emits one XML document (apm.pdef.xml)
for ArduCopter.

Since there is a conflict between parameters in the MOT_ namespace in Copter,
we only emit the documentation for the first parameter defining the MOT_ namespace.

This patch removes the documentation lines for frame types other than multicopter, meaning the documentation will reflect mutlictopter usage - the most common case.

These lines will need to be reinstated when we change the way we produce the xml documentation.
2016-06-24 09:55:28 +09:00
Peter Barker
7742503ef3 Copter: include AC_AttitudeControl parameter documentation 2016-06-24 09:55:26 +09:00
Daniel Ricketts
87be8daf0e Copter: integrate AC_Avoidance library 2016-06-22 11:38:15 +09:00
Daniel Ricketts
5022a45495 Copter: add AC_Avoidance to build 2016-06-22 11:38:15 +09:00
Tom Pittenger
66d4caeeb0 Copter: add ADSB_streamrate 2016-06-19 11:24:33 -07:00
Leonard Hall
9864750336 Copter: rename CTUN desired_velocity to target_velocity
No functional change
2016-06-18 11:55:49 +09:00
Randy Mackay
a614a17b3a Copter: log hover throttle in CTUN message 2016-06-18 11:55:49 +09:00
Randy Mackay
901e8cc23f Copter: convert THR_MIN to MOT_SPIN_MIN, THR_MID to MOT_THST_HOVER 2016-06-18 11:55:49 +09:00
Leonard Hall
48eb4cf674 Copter: remove THR_MID 2016-06-18 11:55:49 +09:00
Leonard Hall
e9d8a28ec0 Copter: AP_Motor's throttle_hover replaces throttle_average 2016-06-18 11:55:49 +09:00
Leonard Hall
dec9323127 Copter: remove THR_MIN
Equivalent is AP_Motors SPIN_MIN
2016-06-18 11:55:49 +09:00
Randy Mackay
6a1bdebf25 Copter: remove THR_MAX definition for changing throttle input range
We do not support changing the throttle input range from it's expected 0 ~ 1000
2016-06-18 11:55:49 +09:00
Leonard Hall
e08e112c6d Copter: land detector sets att vs thr priority in att controllers 2016-06-18 11:55:49 +09:00
Andrew Tridgell
86d8450666 Copter: use loop rate for copter
this allows for SCHED_LOOP_RATE below 400 in SITL for copter
2016-06-17 15:01:18 +10:00
Peter Barker
1fc4063117 Copter: correct TERRAIN_FOLLOW parameter comments 2016-06-08 17:35:20 +09:00
Andrew Tridgell
55ad1548e4 Copter: fixed heli rotor speed control from AP_Motors refactor 2016-06-04 16:22:19 +10:00
Tom Pittenger
a96abde4bf Copter: do not log CURR.Throttle because it's already logged elsewhere 2016-06-02 16:59:11 -07:00
Tom Pittenger
b433250da5 Copter: sanity check gps latlng 2016-06-01 17:38:50 -07:00
Randy Mackay
2815af81ad Copter: rename RTL_CONE_SLOPE_DEFAULT definition
Also tiny formatting fix
2016-05-31 12:20:21 +09:00
Peter Barker
e977d85e0c Copter: move telemetry_delayed up into base class 2016-05-31 08:46:09 +10:00
Peter Barker
3cf174c343 Copter: move adjust_rate_for_stream up 2016-05-29 19:38:49 +10:00
Peter Barker
bb19c57615 Copter: subclass GCS_MAVLink in place of defining its functions for it 2016-05-29 16:21:21 +10:00
Randy Mackay
5fb6e4edae Copter: 3.4-rc1 release notes 2016-05-28 15:45:32 +09:00
Randy Mackay
be3b1cb6ab Copter: convert STB_ params to ATC_ANG_ 2016-05-28 15:45:30 +09:00
Andrew Tridgell
53fc095d4c Copter: fixed motor test build on heli
pwm percent makes no sense
2016-05-26 15:05:52 +10:00
Andrew Tridgell
c605f09859 Copter: fixed motor test with percentage
use motors min/max pwm, not throttle channel range
2016-05-26 14:34:27 +10:00
Andrew Tridgell
146a59eed3 Copter: fixed ESC calibration on PixRacer
we need to set the ESC scaling before we go into the calibration loop
or the outputs will never arm
2016-05-25 19:35:17 +10:00
Andrew Tridgell
045e3c179a Copter: 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
Randy Mackay
cb9ca94dd1 Copter: remove unused pv_location_to_vector_with_default 2016-05-25 16:19:42 +09:00
Randy Mackay
390d06a400 Copter: add and use FLIP_COMPLETE mode reason
No need to use the original reason we entered flip mode as the reason we are exiting flip.  Instead we can use a new reason called FLIP_COMPLETE
2016-05-25 16:15:34 +09:00
Andrew Tridgell
7e1ef905d3 Copter: removed 30ms delay on arming
this is the last of the delays that can cause the EKF to get unhappy
on arming in copter. The comment says it is waiting for RC input, but
I don't think that makes any sense any more.
2016-05-24 15:42:53 +10:00
Randy Mackay
c9284e5f64 Copter: fix flip after throttle changed to 0 to 1 range 2016-05-24 11:31:40 +09:00
Randy Mackay
f28666e7cd Copter: pass throttle for esc calibration in 0 to 1 range 2016-05-24 10:00:25 +09:00
Lucas De Marchi
33f5fc5f38 ArduCopter: remove support for flymaple 2016-05-23 21:49:45 -03:00
Andrew Tridgell
a922b98ac0 Copter: use send_heartbeat wrapper 2016-05-21 15:25:18 +10:00
Andrew Tridgell
8913dc32b0 Copter: simplify UART setup 2016-05-21 15:25:16 +10:00
Andrew Tridgell
31866c66d8 Copter: always build with MAVLink2 headers 2016-05-21 15:25:15 +10:00
Andrew Tridgell
57870cccb9 ArduCopter: update signing timestamp on GPS lock 2016-05-21 15:25:13 +10:00
Andrew Tridgell
b85f129cc5 ArduCopter: handle SETUP_SIGNING message 2016-05-21 15:25:12 +10:00
Randy Mackay
5461002eea Copter: read rangefinder at 20hz 2016-05-21 10:36:53 +09:00
Randy Mackay
e6b3638d84 Copter: minor change to land mode's logic to use rangefinder
No functional change
2016-05-21 10:36:53 +09:00
Randy Mackay
8171532dc5 Copter: allow rangefinder to be disabled from definition 2016-05-21 10:36:53 +09:00
Randy Mackay
e489c3184c Copter: rangefinder.enabled false if no range finders are configured 2016-05-21 10:36:53 +09:00
Randy Mackay
59070653cc Copter: provide filtered range finder altitude to AC_WPNav 2016-05-21 10:36:53 +09:00
Randy Mackay
e18bf3af56 Copter: remove unused definitions 2016-05-21 10:36:53 +09:00
Randy Mackay
5ac13c0355 Copter: move rangefinder variables into structure
moved in rangefinder_alt, rangefinder_alt_health and rangefinder_enabled
2016-05-21 10:36:53 +09:00
Randy Mackay
70463dc572 Copter: auto_spline_start handles triggers terrain failsafe
Also immediately exit auto_wp_start on terrain failsafe
2016-05-21 10:36:53 +09:00
Randy Mackay
3688636736 Copter: RTL ignores terrain during terrain failsafe 2016-05-21 10:36:53 +09:00
Randy Mackay
273b9acad8 Copter: prearm check that RTL_ALT is below rangefinder max alt
Only applies where terrain following is enabled and a range finder is connected
2016-05-21 10:36:53 +09:00
Randy Mackay
c7f80324fa Copter: tilt correct rangefinder 2016-05-21 10:36:53 +09:00
Randy Mackay
ba38b0234f Copter: use rangefinder class's valid_range_count
Also read_rangefinder directly updates rangefinder_alt variable instead of returning distance
No functional change
2016-05-21 10:36:53 +09:00
Randy Mackay
949d5f7109 Copter: add rangefinder_alt_ok
Reduces some duplicate code,no functional change.
2016-05-21 10:36:53 +09:00
Randy Mackay
7689315ba2 Copter: rename sonar to rangefinder 2016-05-21 10:36:53 +09:00
Randy Mackay
028946ae9e Copter: rename CONFIG_SONAR to RANGEFINDER_ENABLE 2016-05-21 10:36:53 +09:00
Randy Mackay
e0bf08abe0 Copter: fixes to guided mode target check is within fence
guided altitude targets are converted to alt-above-home
remove unnecessary fence_status local variable from guided_set_destination methods
log failures to set guided target under a new failure code: ERROR_CODE_DEST_OUTSIDE_FENCE (5)
rename pv_get_home_destination_distance_mc to pv_distance_to_home_cm
2016-05-21 09:56:12 +09:00
Saloni Jain
bc22419286 Copter : Modified set_guided_destination() to reject requests for guided waypoints outside the fence. 2016-05-21 09:56:12 +09:00
Don Gagne
97d361333d ArduCopter: SET_SENSORS_OFFSETS support for third compass 2016-05-19 18:51:17 -03:00
Randy Mackay
a9d16f3373 Copter: move auto's take-off check to beginning of auto_init
This ensures there are no side-effects of a failed switch to AUTO like stopping the vehicle or affecting the yaw mode
2016-05-19 19:43:24 +09:00
Niti Rohilla
26e41fee7a Copter: prevent Auto tipovers caused by missing takeoff command 2016-05-19 19:43:19 +09:00
Randy Mackay
793e3da904 Copter: rename variables used for NAV_DELAY command 2016-05-19 16:16:03 +09:00
Niti Rohilla
55f66b7696 Copter: Add support for MAV_CMD_NAV_DELAY 2016-05-19 16:16:02 +09:00
Andrew Tridgell
e4948544e7 Copter: cleanup unnecessarily complex gcs[] usage 2016-05-17 08:27:35 +10:00
dgrat
3bc97ae356 ArduCopter: Do not use is_zero() for non-float types
This function makes only sense for floating point types. However this
function was also used for ints.
2016-05-16 19:08:35 -03:00
Ricardo de Almeida Gonzaga
ce241dd97a ArduCopter: Fix typos 2016-05-13 19:20:07 -03:00
Francisco Ferreira
8fb318a6e1 Copter: fix do_loiter when executed in same location 2016-05-13 12:20:22 +09:00
Francisco Ferreira
8ce8551669 Copter: fix detection of 0 values for lat, lng and alt in waypoints 2016-05-13 12:20:20 +09:00
Randy Mackay
0732ad3957 Copter: add comments to set_land_complete 2016-05-13 12:01:38 +09:00
Jonathan Challinger
747344a8ba Copter: add disarm on land detect option to PILOT_THR_BHV 2016-05-13 11:57:48 +09:00
Randy Mackay
cfb2a6b2f9 Copter: update brake-timeout to work with master
We added mode-change reasons since PR was submitted
2016-05-13 11:42:25 +09:00
Randy Mackay
0a2336a5a8 Copter: update solo-buttons to work with master
Change was due to addition of reason codes since PR was first submitted
2016-05-13 11:42:25 +09:00
Jonathan Challinger
67cd2bae08 Copter: implement SOLO_BTN commands 2016-05-13 11:42:25 +09:00
Jonathan Challinger
c99cac773b Copter: add brake_timeout_to_loiter_ms 2016-05-13 11:42:25 +09:00
Andrew Tridgell
bd3a58a727 Copter: fixed drift mode
the throttle assistance gain also needs to be scaled by 1000x for new throttle range
2016-05-13 08:48:55 +10:00
Andrew Tridgell
75d76ac3bd Copter: fixed scaling of old heli parms 2016-05-12 17:34:36 +10:00