Randy Mackay
8bb536b366
Copter: 3.4-rc2 release notes
2016-08-08 11:24:43 +09:00
Leonard Hall
3349e24492
Copter: fix autotune unit conversions for step sizes
2016-08-08 11:24:42 +09:00
Randy Mackay
5255f55cc3
Copter: add comments to RTL's compute return target
2016-08-06 14:01:39 +09:00
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
dgrat
41661f815f
AP_Math: Replace the pythagorous* functions with a variadic template
...
The new function can deal with a variable number of function parameters.
Additionally, I renamed the functions to norm(), because this is the
standard name used in several other projects.
2016-05-10 11:41:26 -03:00
dgrat
76362caee0
AP_Math: Replace wrap_* functions with template versions
2016-05-10 11:41:26 -03:00
skyscraper
4980c8bc94
ArduCopter: RC_Channel refactor
...
More fixing up of RC_Channel change direct access to data members
to access via member functions.
2016-05-10 16:21:16 +10:00
skyscraper
49d3410896
ArduCopter: fixup RC_Channel data member accesses to function calls
2016-05-10 16:21:16 +10:00
skyscraper
6f200fa923
ArduCopter: 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
3c9b063eb1
Copter: removed unnecessary libs
...
now in common
2016-05-10 14:13:35 +10:00
Andrew Tridgell
111eb2ccc1
Copter: use DataFlash::log_while_disarmed()
2016-05-09 12:05:52 +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
Andrew Tridgell
874fae931f
Copter: fix for changed API
2016-05-07 18:27:22 +10:00
Andrew Tridgell
9da3b8db60
Copter: only log baro, gps and mag if ekf not logging them
2016-05-07 18:27:19 +10:00
Andrew Tridgell
b235304235
Copter: reduce IMU logging to 25Hz
...
leave more room for IMT logging needed for Replay
2016-05-07 18:27:17 +10:00
Randy Mackay
a5c55c3fbd
Copter: fix get_non_takeoff_throttle
...
The throttle_mid parameter (for historic reason) is interpreted as a value that includes throttle_min. This means we must subtract the throttle_min value from it when converting it to a throttle in the 0 to 1 range.
2016-05-07 12:21:41 +09:00
Randy Mackay
2eb0484142
Copter: rename Loiter states and swap order within select statement
2016-05-07 10:08:34 +09:00
Randy Mackay
1c4db779a1
Copter: Loiter stabilizes roll and pitch while landed
2016-05-07 10:08:32 +09:00
Randy Mackay
9c12b64ba5
Copter: rename AltHold states and swap order within select statement
...
No functional change
2016-05-07 10:08:30 +09:00
Randy Mackay
932cd907d4
Copter: AltHold stabilizes roll and pitch while landed
2016-05-07 10:08:28 +09:00
Randy Mackay
3ead74c4be
Copter: remove zero-throttle check from AltHold takeoff state
...
Hard to imagine a reason why we would want to turn off stabilization during takeoff
2016-05-07 10:08:26 +09: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
352e103f1a
ArduCopter: 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
Allan Matthew
d6012c535e
Copter: remove unused dt passed to precland
2016-05-06 11:04:45 +09:00
skyscraper
6bcd9e6f65
Copter::pre_arm_rc_checks: fix logic checking that throttle min and max are configured
2016-05-06 10:56:38 +09:00
Allan Matthew
7960e3bb8f
Copter: pass DISTANCE_SENSOR messages to rangefinders
...
This allows the MAVLink range finder driver to intercept distance measurements
2016-05-04 12:10:58 +09:00
Michael du Breuil
e7974702d4
Copter: Ignore POSITION_TARGET_GLOBAL_INT
2016-05-01 07:38:24 +10:00
Michael Oborne
5848d8a5e6
ArduCopter: support MAVLINK_MSG_ID_MISSION_ITEM_INT
2016-05-01 07:13:46 +10:00
Andrew Tridgell
54d1cc7e50
Copter: only save offsets for Compass::LEARN_EKF
...
this means by default that one flight one affect the next one, which
makes it more robust in case of a bad flight
2016-04-30 16:43:14 +10:00
Michael du Breuil
c97888f524
Copter: Remove support for CONDITION_CHANGE_ALT
2016-04-30 10:56:07 +09:00
Randy Mackay
d455e2a33f
Copter: fix auto-circle comment
2016-04-30 10:33:01 +09:00
Randy Mackay
a6b6fb2473
Copter: fix TERRAIN_FOLLOW parameter description
...
Thanks OXINARF
2016-04-30 10:33:01 +09:00
Randy Mackay
3d31c3b936
Copter: log error if circle does not initialise correctly
2016-04-30 10:33:01 +09:00
Randy Mackay
caf6bbc2e0
Copter: rename set_alt to set_alt_cm in control_rtl
2016-04-30 10:33:01 +09:00
Randy Mackay
fac7b7c566
Copter: rename set_alt to set_alt_cm in control_guided
2016-04-30 10:33:01 +09:00
Randy Mackay
f8f6c135e9
Copter: rename set_alt to set_alt_cm in control_auto
2016-04-30 10:33:01 +09:00
Randy Mackay
d92154a44e
Copter: rename set_alt to set_alt_cm in commands_logic
2016-04-30 10:33:01 +09:00
Randy Mackay
cd97aa97a3
Copter: provide terrain reference to AC_WPNav
2016-04-30 10:33:01 +09:00
Randy Mackay
cac79f297e
Copter: guided can trigger terrain failsafe
2016-04-30 10:33:01 +09:00
Randy Mackay
9100cf605a
Copter: auto can trigger terrain failsafe
2016-04-30 10:33:01 +09:00
Randy Mackay
43d14defd4
Copter: RTL handles terrain data failure
2016-04-30 10:33:01 +09:00
Randy Mackay
47658fe964
Copter: add terrain failsafe
2016-04-30 10:33:01 +09:00
Randy Mackay
8e43be1511
Copter: fixes to allow compiling without terrain support
2016-04-30 10:33:01 +09:00
Randy Mackay
74e02d2c82
Copter: rename TERRAIN_USE to TERRAIN_FOLLOW
...
This matches plane's parameter name
2016-04-30 10:33:01 +09:00
Randy Mackay
13c26eab67
Copter: update current_loc at 400hz
2016-04-30 10:33:01 +09:00
Randy Mackay
f45c69e7ad
Copter: log terrain altitude in CTUN message
2016-04-30 10:33:01 +09:00
Randy Mackay
25c676c3b4
Copter: report terrain capability to GCS
2016-04-30 10:33:01 +09:00
Randy Mackay
ddffbe27aa
Copter: add terrain pre-arm check
2016-04-30 10:33:01 +09:00
Randy Mackay
91f6c7b503
Copter: add TERRAIN_USE parameter
...
Also add terrain.cpp to hold terrain_update and terrain_logging functions
2016-04-30 10:33:01 +09:00
Randy Mackay
267c1c3934
Copter: guided mode handles terrain alt
2016-04-30 10:33:01 +09:00
Randy Mackay
e8b14e59fc
Copter: spline mission commands handle terrain altitudes
2016-04-30 10:33:01 +09:00
Randy Mackay
81d244c9bd
Copter: do-circle accept terrain altitude
2016-04-30 10:33:01 +09:00
Randy Mackay
70630e9774
Copter: auto loiter handles terrain
2016-04-30 10:33:01 +09:00
Randy Mackay
4892446c55
Copter: do-loiter accepts terrain altitudes
2016-04-30 10:33:01 +09:00
Randy Mackay
27517004c0
Copter: slow to land-speed 10m above terrain
2016-04-30 10:33:01 +09:00
Randy Mackay
39dc2d7176
Copter: while landing use land-speed from 10m above home
...
Previously vehicle was switching to land-speed at 10m above the origin
2016-04-30 10:33:01 +09:00
Randy Mackay
ffd86744ce
Copter: do-land accepts terrain
2016-04-30 10:33:01 +09:00
Randy Mackay
352b6ae82a
Copter: RTL supports terrain altitudes
2016-04-30 10:33:01 +09:00
Randy Mackay
06ee6a7bd4
Copter: auto takeoff accepts abs and terrain alts
2016-04-30 10:33:01 +09:00
Randy Mackay
9449776e3c
Copter: straight line waypoints accept terrain
...
auto_wp_start calls AC_WPNav's new set_wp_destination which accepts a
Location class allow altitude to be set as above-terrain or even an
absolute altitude
2016-04-30 10:33:01 +09:00
Randy Mackay
2134e8bfb9
Copter: add terrain and navigation dataflash error codes
2016-04-30 10:33:01 +09:00
Randy Mackay
84fd8da944
Copter: current_loc to Location class
2016-04-30 10:33:01 +09:00
Niti Rohilla
867360c350
ArduCopter : Updated handle_guided_request() to report error.
2016-04-29 12:39:28 -03:00
Tom Pittenger
afb3e94fe6
Revert "Copter: clipped param cmd float to zero"
...
This reverts commit 9b6de75203
.
2016-04-23 23:51:41 -07:00
Tom Pittenger
9b6de75203
Copter: clipped param cmd float to zero
2016-04-23 23:45:54 -07:00
Randy Mackay
472f54ce45
Copter: initialise compass_mot interference_pct variable
...
resolves a compiler warning
2016-04-23 23:06:28 -07:00
Randy Mackay
da443417f1
Copter: remove unnecessary abs
2016-04-23 23:06:19 -07:00
Luis Vale Gonçalves
4e594287eb
Revising ardupilot.com to .org
...
Revising ardupilot.com to .org
2016-04-23 22:49:39 -07:00
Randy Mackay
699816400e
Copter: ack DO_MOUNT_CONTROL messages
2016-04-22 21:30:49 +09:00
Randy Mackay
762c9ed4b0
Copter: remove unused FS_CLOSE_TO_HOME definition
2016-04-22 21:30:44 +09:00
Randy Mackay
554affeaf5
Copter: fix scheduler comment
2016-04-22 21:30:39 +09:00
Andrew Tridgell
a39a4a6243
Copter: mark a few more log messages as critical
2016-04-21 17:05:17 +10:00
Andrew Tridgell
f32b7684a0
Copter: removed unused startup log message
2016-04-21 17:05:17 +10:00
Andrew Tridgell
5149a49daa
Copter: added logging of dropped log messages in PM message
2016-04-21 17:05:17 +10:00
Jonathan Challinger
c9b1b02b8e
Copter: loop through compasses and save offsets
2016-04-21 09:53:03 +10:00
Lucas De Marchi
a310d3735e
ArduCopter: fix handling of SET_HOME_POSITION
...
Location.altitude is stored in cm.
2016-04-18 13:07:45 +10:00
Randy Mackay
55ffee25b1
Copter: remove unnecessary control_mode_t casts
...
Thanks @OXINARF
2016-04-14 12:24:04 +09:00
Jonathan Challinger
8f41215569
Copter: fix warning
2016-04-14 12:24:04 +09:00
Jonathan Challinger
2a36c32cf3
Copter: add prev_control_mode and prev_control_reason
2016-04-14 12:24:04 +09:00
Jonathan Challinger
8ded496f8b
Copter: log mode change reason
2016-04-14 12:24:04 +09:00
Jonathan Challinger
1356deab8b
Copter: add control_mode_reason
2016-04-14 12:24:04 +09:00
Jonathan Challinger
6b5ba86f21
Copter: simplify GCS failsafe
2016-04-14 12:24:04 +09:00
Jonathan Challinger
a0ce8af633
Copter: use enum type for control_mode
2016-04-14 12:24:04 +09:00
Lucas De Marchi
6eac84812c
ArduCopter: remove readme file
...
The readme file in root directory is already sufficient.
2016-04-09 08:32:22 -07:00
Ricardo de Almeida Gonzaga
5bd034a5a8
Global: start using cmath instead of math.h
2016-04-05 21:06:19 -07:00
Andrew Tridgell
c035ade402
Copter: removed slow_start() from throw mode
2016-04-01 11:59:30 +09:00
Randy Mackay
5090e6f4fb
Copter: init G_Dt with MAIN_LOOP_SECONDS definition
2016-04-01 11:59:30 +09:00
Leonard Hall
a9cda8b384
Copter: add convert_pid_parameters to ease migration to new PID gains
2016-04-01 11:59:30 +09:00
Randy Mackay
479a789325
Copter: remove call to attitude_control.set_dt
...
This is now passed into the constructor
2016-04-01 11:59:30 +09:00
Randy Mackay
c352e1bedf
Copter: fix attitude control parameter declaration
2016-04-01 11:59:30 +09:00
Randy Mackay
1f20a5ef69
Copter: access angle and rate PIDs through attitude controller
2016-04-01 11:59:30 +09:00
Randy Mackay
bde498375c
Copter: remove attitude PIDs
...
These are now part of AC_AttitudeControl
2016-04-01 11:59:30 +09:00
Randy Mackay
ef5dbae707
Copter: remove setting of heli_servo_rsc pwm range
...
This object is not used
2016-04-01 11:59:30 +09:00
Randy Mackay
1f37f5a0e7
Copter: remove tradheli swash, yaw and rsc servos
...
These are all created within the AP_MotorsSingle class now except for servo_rsc which was unused
2016-04-01 11:59:30 +09:00
Randy Mackay
d2a42a7a0e
Copter: remove heli_radio_passthrough
...
Replaced with set_radio_passthrough which can be used for all frames
2016-04-01 11:59:30 +09:00
Randy Mackay
ce1fb7fb06
Copter: passthrough pilot input to motors to allow wiggling servos
2016-04-01 11:59:30 +09:00
Randy Mackay
0abea7af68
Copter: remove slow_start from stabilizing
2016-04-01 11:59:30 +09:00
Randy Mackay
1c98cd9d52
Copter: remove slow_start from althold
2016-04-01 11:59:30 +09:00
Randy Mackay
f6c26ad285
Copter: remove slow start from acro
2016-04-01 11:59:30 +09:00
Randy Mackay
3c3b74adc8
Copter: remove slow_start from takeoff
2016-04-01 11:59:30 +09:00
Randy Mackay
8180fad4b4
Copter: tradheli sends radio passthrough in 0 to 1 range
2016-04-01 11:59:30 +09:00
Randy Mackay
f0575de776
Copter: tradheli logs rotors speed in 0 to 1 range
2016-04-01 11:59:30 +09:00
Randy Mackay
3eaf7a4582
Copter: set tradheli rotor speed using 0 to 1 range
2016-04-01 11:59:30 +09:00
Randy Mackay
7fc37e7801
Copter: set tradheli external gyro gain in 0 to 1 range
2016-04-01 11:59:30 +09:00
Leonard Hall
be7ad2d83a
Copter: loiter uses AP_Motors set_desired_spool_state
2016-04-01 11:59:30 +09:00
Randy Mackay
02ac2d0e4e
Copter: land uses AP_Motors set_desired_spool_state
2016-04-01 11:59:30 +09:00
Randy Mackay
94b35d659e
Copter: guided uses AP_Motors set_desired_spool_state
2016-04-01 11:59:30 +09:00
Randy Mackay
4deb6fd39d
Copter: flip uses AP_Motors set_desired_spool_state
2016-04-01 11:59:30 +09:00
Randy Mackay
f91874afad
Copter: drift uses AP_Motors set_desired_spool_state
2016-04-01 11:59:30 +09:00
Randy Mackay
83ae78b38e
Copter: circle uses AP_Motors set_desired_spool_state
2016-04-01 11:59:30 +09:00
Randy Mackay
10f8e36f9b
Copter: brake uses AP_Motors set_desired_spool_state
2016-04-01 11:59:30 +09:00
Randy Mackay
965f3827b4
Copter: poshold uses AP_Motors set_desired_spool_state
2016-04-01 11:59:30 +09:00
Randy Mackay
478b9af0f3
Copter: autotune uses AP_Motors set_desired_spool_state
2016-04-01 11:59:30 +09:00
Randy Mackay
4f192d0bc7
Copter: auto uses AP_Motors set_desired_spool_state
2016-04-01 11:59:30 +09:00
Randy Mackay
a927db3e6a
Copter: rtl uses AP_Motors set_desired_spool_state
2016-04-01 11:59:30 +09:00
Randy Mackay
d37f70f767
Copter: sport uses AP_Motors set_desired_spool_state
2016-04-01 11:59:30 +09:00
Randy Mackay
f6a6b360a8
Copter: stabilize uses AP_Motors set_desired_spool_state
2016-04-01 11:59:30 +09:00
Leonard Hall
d2642065dd
Copter: althold uses AP_Motors set_desired_spool_state
2016-04-01 11:59:30 +09:00
Randy Mackay
668561ff0e
Copter: acro uses AP_Motors set_desired_spool_state
2016-04-01 11:59:30 +09:00
Leonard Hall
6c40d6f774
Copter: remove single frame's servo objects
2016-04-01 11:59:30 +09:00
Leonard Hall
8d0a6765f1
Copter: removed unnecessary #define for motor declaration
2016-04-01 11:59:30 +09:00
Leonard Hall
44180e44df
Copter: remove coax servo objects
...
servos moved to AP_MotorsCoax class
2016-04-01 11:59:30 +09:00
Leonard Hall
5dde87734c
Copter: heli acro, stabilize use pilot throttle as float
2016-04-01 11:59:30 +09:00
Leonard Hall
07b311f6a8
Copter: brake sets desired spool state
2016-04-01 11:59:30 +09:00
Leonard Hall
7366bc8a56
Copter: pos_hold uses 0 to 1 throttle and sets motor spool state
2016-04-01 11:59:30 +09:00
Leonard Hall
80a11e4d3d
Copter: autotune uses throttle in 0 to 1 range and sets motor spool state
2016-04-01 11:59:30 +09:00
Leonard Hall
068fc7feac
Copter: flip uses 0 to 1 throttle and sets motor spool state
2016-04-01 11:59:30 +09:00
Leonard Hall
8a49745e96
Copter: sport uses throttle in 0 to 1 range and sets motor spool state
2016-04-01 11:59:30 +09:00
Leonard Hall
263052da21
Copter: drift uses 0 to 1 throttle and sets motor spool state
2016-04-01 11:59:30 +09:00
Leonard Hall
100fcf799e
Copter: land sets desired spool state
2016-04-01 11:59:30 +09:00
Leonard Hall
f71157c508
Copter: circle sets desired spool state
2016-04-01 11:59:30 +09:00
Leonard Hall
cce426dcb8
Copter: rtl uses throttle in 0 to 1 range and sets motor spool state
2016-04-01 11:59:30 +09:00
Leonard Hall
f8d03b58d1
Copter: loiter uses 0 to 1 throttle and sets motor spool state
2016-04-01 11:59:30 +09:00
Leonard Hall
42f5de44d4
Copter: guided sets desired spool state
2016-04-01 11:59:30 +09:00
Leonard Hall
f221d4d757
Copter: auto sets desired spool state
2016-04-01 11:59:30 +09:00
Leonard Hall
70433d25e3
Copter: althold uses 0 to 1 throttle range and spool logic
...
stabilizes even while landed
sets desired motor spool state
check for spool up before takeoff
2016-04-01 11:59:30 +09:00
Leonard Hall
2180514dde
Copter: acro uses 0 to 1 throttle and sets desired spool state
2016-04-01 11:59:30 +09:00
Leonard Hall
f56ff4d564
Copter: stabilize uses 0 to 1 throttle and sets motor spool state
2016-04-01 11:59:30 +09:00
Leonard Hall
76a8de8a53
Copter: CTUN logs throttle_in, angle boost in 0 to 1 range
2016-04-01 11:59:30 +09:00
Leonard Hall
7bcdc76655
Copter: get_pilot_desired_climb_rate accepts control_in as 0 to 1000
...
Previously the input was expected to be throttle_min (i.e. 130) to 1000
2016-04-01 11:59:30 +09:00
Leonard Hall
20debc962a
Copter: update get_throttle_pre_takeoff for 0 to 1 range
2016-04-01 11:59:30 +09:00
Leonard Hall
37e6977813
Copter: update get_non_takeoff_throttle for 0 to 1 range
2016-04-01 11:59:30 +09:00
Leonard Hall
74983669be
Copter: set_accel_throttle_I_from_pilot_throttle uses 0 to 1 range
2016-04-01 11:59:30 +09:00
Leonard Hall
c3403a128c
Copter: throttle passed to compass in 0 to 1 range
2016-04-01 11:59:30 +09:00
Leonard Hall
a44f7f650b
Copter: throttle sent to GCS uses 0 to 1 range
...
This is probably not correct because we should be sending the throttle as a 0 to 1 number using the full possible output range. This uses the reduced range passed in when the copter is being stabilized (i.e. between throttle-min and throttle-max)
2016-04-01 11:59:30 +09:00
Leonard Hall
f8d7b677d4
Copter: update_thr_average uses 0 to 1 range
2016-04-01 11:59:30 +09:00
Leonard Hall
fd2509f6ed
Copter: get_pilot_desired_throttle outputs in 0 to 1 range
2016-04-01 11:59:30 +09:00
Leonard Hall
e132ea34d9
Copter: g.rc_3.control_in range 0 to 1000
...
Previously the range was throttle_min (normally 130) to 1000 but we can remove this awkward range and use 0 to 1000 now that the attitude controller and motor library inputs are in the 0 to 1 range.
2016-04-01 11:59:30 +09:00
Leonard Hall
a00a9601a4
Copter: AP_MotorsCoax now uses 4 servos
2016-04-01 11:59:30 +09:00
Leonard Hall
a0409e4f9e
TradHeli: dynamic flight check uses throttle in 0 to 1 range
2016-04-01 11:59:30 +09:00
Andrew Tridgell
f19922fec5
Copter: added LAND_SPEED_HIGH parameter
...
this is the descent rate for the first part of a landing. Separating
this from WPNAV_SPEED_DN allows for independent tuning of fast fwd
flight from landings
2016-03-30 15:54:20 +11:00