Commit Graph

136 Commits

Author SHA1 Message Date
Leonard Hall 0f9fcb8c2e Copter: Guided Angle init Z controller on time out 2021-07-10 20:25:05 +09:00
Leonard Hall feae762e64 Copter: additional yaw modes and fixes 2021-07-10 20:25:05 +09:00
Leonard Hall 58b0853012 Copter: Guided: use default yaw mode for all gps based sub modes. 2021-07-10 20:25:05 +09:00
Leonard Hall 991cc19f85 Copter: Guided: make aircraft stop on accel time out 2021-07-10 20:25:05 +09:00
Leonard Hall 0132b30d27 Copter: Guided add terrain failsafe 2021-07-10 20:25:05 +09:00
Leonard Hall 8631c3c68f Copter: Guided: support terrain following 2021-07-10 20:25:05 +09:00
Leonard Hall 92099d83ca Copter: Guided: fix waypoint track reporting 2021-07-10 20:25:05 +09:00
Leonard Hall a1ad194abd Copter: seperate kinimatic shaping from pid limit setting 2021-07-10 20:25:05 +09:00
Leonard Hall 80e856af20 Copter: Guided: use common initialisation 2021-07-10 20:25:05 +09:00
Leonard Hall dfbd757f82 Copter: Guided prevent takeoff without takeoff command. 2021-07-10 20:25:05 +09:00
Randy Mackay ba1951a372 Copter: guided accepts terrain alt position targets 2021-07-10 20:25:05 +09:00
Leonard Hall 635d13a106 Copter: support for acceleration-based AttitudeControl 2021-07-10 20:25:05 +09:00
Andrew Tridgell bada2670a6 Copter: update for new double precision position APIs 2021-06-24 21:34:30 +10:00
Andrew Tridgell d89388c4cc Copter: use cleaned up APIs 2021-06-24 20:28:45 +10:00
Leonard Hall e294991b08 Copter: Fix before squash 2021-05-24 20:13:37 +10:00
Leonard Hall 4bae8f03a4 Copter: Use PosControl fixes 2021-05-24 20:13:37 +10:00
Leonard Hall 726074be91 Copter: Support Thrust Vector based navigation 2021-04-27 17:13:55 +09:00
Randy Mackay 5fcd2de4fa Copter: attitude target thrust-as-thrust bit moved from DEV_OPTIONS to GUID_OPTIONS 2021-04-20 09:56:38 +10:00
Peter Barker 5df8dd8c50 Copter: move guided submode enumeration into ModeGuided 2021-04-14 16:12:57 +09:00
Leonard Hall a29e2d8920 Copter: fix references to position error 2021-04-03 12:07:59 +09:00
Leonard Hall 328c0655e3 Copter: support for SCurves and position controller changes
wp_start provides next_dest_loc
send next_destination to wp_nav instead of setting fast_waypoint
fixup zigzag for S-curve changes
fixup guided
auto spline fixes
smart rtl rename of next_point to dest_NED
loc_from_cmd accepts default location
auto mode stops before starting land command
auto do_next_wp accepts default location
rename do_next_wp to set_next_wp
also rename get_spline_from_cmd argument
also improve failure to set next waypoint due to missing terrain data
also fixup comment in set_next_wp
also auto stops when moving from straight to spline segments
also auto mode spline fix
also auto mode calls AC_WPNav::set_spline_destination_next

Copter: AutoYaw provides rate from WPNav
2021-04-03 12:07:59 +09:00
Peter Barker d387ad9921 Copter: have allows_arming take a AP_Arming::Method rather than bool from_gcs
This API predates us having the arming methods being passed around.

This makes the calls look like Plane
2021-03-30 09:00:26 +09:00
Josh Henderson f65c4df358 ArduCopter: make Location(Vector3f) require ALTFRAME 2021-03-30 08:56:35 +09:00
Tatsuya Yamaguchi ed8384b45a Copter: add option to disable LANDING_GEAR 2021-03-17 10:41:11 +09:00
chobits b7c937592e Copter: send mission_item_reached in guided 2021-03-09 10:04:24 +09:00
James O'Shannessy d055d7a581 ArduCopter: Cleanup - removes autoenabling of fence with AC_Fence parameter 2021-03-05 14:52:46 +11:00
James O'Shannessy a88f2721a8 ArduCopter: Use auto enable and auto disable from AC_Fence 2021-03-05 14:52:46 +11:00
James O'Shannessy f228adfa75 ArduCopter: Improve auto-enable/disable of fence 2021-03-05 14:52:46 +11:00
Mathias Bos b3b7f2d3d2 Copter: Remove yaw rate wrapping in guided mode. 2021-03-03 08:09:08 +09:00
Rishabh bd37eab3af Copter: Support 3D Simple Avoidance 2021-02-01 14:34:13 +09:00
Tatsuya Yamaguchi eab913646e Copter: fix ignore pilot yaw option for guided 2021-01-07 20:40:34 +09:00
Michael du Breuil f9b4e81702 Copter: Add ignore pilot yaw to guided, auto and RTL options 2020-11-19 07:22:54 +09:00
Randy Mackay ea7f850738 Copter: guide mode fix for takeoff in attitude control submode
It was not possible to takeoff when thrust was provided instead of climb rate (which is used depends upon DEV_OPTIONS)
2020-10-20 23:04:45 +09:00
Randy Mackay 9104b4800f Copter: correct GuidedOptions enum after peer review
Co-authored-by: Peter Barker <pb-gh@barker.dropbear.id.au>
2020-10-20 23:04:45 +09:00
Randy Mackay 29fedff826 Copter: guided implementations moved to match declarations
this should be a non-functional change
2020-10-20 23:04:45 +09:00
Randy Mackay 5adf1d9596 Copter: guided mode angle controller sets auto-armed from run method 2020-10-20 23:04:45 +09:00
Randy Mackay ab42bbc43f Copter: guided mode velocity control can trigger takeoff 2020-10-20 23:04:45 +09:00
Randy Mackay eb3aca7acf Copter: add GUIDED_OPTIONS to allow arming from transmitter 2020-10-20 23:04:45 +09:00
Randy Mackay ab54f8805a Copter: guided mode checks dest before changing submode 2020-09-15 08:36:39 +09:00
Randy Mackay 30c8d7bf40 Copter: dev option so set-attitude-target thrust field used as thrust 2020-08-01 08:32:23 +09:00
Randy Mackay dcbbd047b4 Copter: simplify guided mode takeoff using rangefinder 2020-04-23 15:01:46 +09:00
Tatsuya Yamaguchi 29dcbd1398 Copter: use rangefinder to takeoff altitude in guided mode 2020-04-23 15:01:46 +09:00
Randy Mackay db2229f684 Copter: ModeGuided::do_user_takeoff_start arg rename
this makes it more consistent with the method it is overriding
2020-03-19 15:17:11 -07:00
Randy Mackay 8d99f204b0 Copter: integrate landing gear option and make edge based
also guided mode now retracts landing gear after takeoff
previously landing gear deployment was "level based" meaning the pilot could not override the gear's position
2020-02-26 08:01:00 +09:00
Sachchit Vekaria f6125b26e8 Copter: Allowing Terrain Following in Guided Mode
Uses frame type of MAVLINK_MSG_ID_SET_POSITION_TARGET_GLOBAL_INT message to decide the value of terrain_alt boolean.
2020-02-17 14:42:42 +09:00
Bogdan Grigoruta 5183703243 Copter: move Mode::auto_takeoff_run to takeoff.cpp 2019-11-18 09:14:08 +09:00
Randy Mackay de5945bea5 Copter: use const reference when retrieving wpnav destination 2019-11-12 08:50:05 +08:00
Randy Mackay 709c874d8b Copter: integrate AP_OAPathPlanner 2019-08-17 09:42:43 +09:00
Peter Barker 676d75c391 Copter: correct namespacing of Copter modes
This makes us look like Rover and Plane in terms of namespacing for the
Mode classes, and removes a wart where we #include mode.h in the middle
of the Mode class.

This was done mechanically for the most part.

I've had to remove the convenience reference for ap as part of this.
2019-06-11 09:18:22 +09:00
Dr.-Ing. Amilcar do Carmo Lucas 402b1cba3f Copter: replace 4 divisions with multiplications 2019-04-24 08:52:41 -07:00
Pierre Kancir caf925eda5 Copter: factorize arm or land check 2019-04-16 10:17:47 +09:00
Peter Barker 46a6f45e4a Copter: adjust for desired spool state and spool state renames 2019-04-14 12:18:03 +09:00
bnsgeyer 94738c3f86 Copter: change make_safe_shut_down to make_safe_spool_down 2019-04-08 09:42:21 +09:00
Randy Mackay a6bfafefb0 Copter: move loiter and wpnav init out of make_safe_shut_down
resolves autotest RTLSpeed test failure
2019-04-08 09:42:21 +09:00
Leonard Hall 38cc5a817f Copter: consolidate mode state decisions
bnsgeyer and rmackay9 contributed to these changes

make_safe_shut_down waits for spool down before disarming
remove use of attitude_control::set_throttle_out_unstabilized to consolidate logic between multicopters and tradhelis
2019-04-08 09:42:21 +09:00
bnsgeyer d949c80d54 Copter: tradheli replaces rotor_runup_complete with spool state 2019-04-08 09:42:21 +09:00
Peter Barker c7e21d95ef Copter: move Log_Write_Error into library 2019-03-27 12:36:40 +11:00
Peter Barker 366051c39f Copter: use enum class for AltFrame enumeration 2019-03-19 10:31:18 +11:00
Peter Barker 281dbfcef8 Copter: support send_extended_sys_state 2019-03-12 09:16:13 +09:00
Peter Barker 7c05364612 Copter: reindent mode init functions (NFC) 2019-03-01 13:43:20 +09:00
Peter Barker fab2d59a1c Copter: move check for position up 2019-03-01 13:43:20 +09:00
murata 8644f4d76e Copter: Disable option code
Copter: Revert change

Copter: Change mistakes
2019-02-26 10:00:00 +09:00
Randy Mackay 717fb4d823 Copter: integrate AC_WPNav::get_speed rename to get_default_speed 2019-01-31 19:34:32 +09:00
Peter Barker 845f015648 Copter: adjust for Location_Class and Location unification 2019-01-16 11:45:29 +11:00
Peter Barker 26ca75efae Copter: make libraries get EKF control limits themselves 2018-10-09 10:47:38 +11:00
Michael du Breuil 7e1ed948f5 Copter: Cope with AC_PosControl renaming 2018-09-20 15:15:45 -07:00
Pierre Kancir 84ff9c6928 Copter: switch to pos control when takeoff finish 2018-07-31 10:40:57 +10:00
Peter Barker 22f7f29045 Copter: move all of waypoint-takeoff into Mode namespace 2018-07-27 13:08:27 +10:00
Peter Barker 11aeec6dd1 Copter: factor out auto_takeoff_run from auto and guided
This code was identical.
2018-07-27 13:08:27 +10:00
liang.tang 57598e5b9f ArduCopter:mode_guided: yaw initialization already in pos_control_start() 2018-07-05 15:48:00 +01:00
Peter Barker 597e876953 Copter: clean up do_user_takeoff 2018-06-26 09:11:21 +09:00
Pierre Kancir 2d5cbd2cf8 ArduCopter: report crosstrack_error 2018-06-26 08:42:14 +09:00
Randy Mackay 0ba105f649 Copter: minor format fix to guided
no need to specify copter
non-functional change
2018-05-31 15:21:42 +09:00
Peter Barker 7c8583d51d Copter: implement sending of position_target_global_int 2018-05-18 20:26:37 +10:00
Peter Barker ba8b3e2415 Copter: create an AutoYaw helper object to hold auto-yaw state 2018-04-18 13:27:43 +09:00
Randy Mackay d7ea8f073f Copter: run guided velocity control at main loop rate 2018-03-16 13:50:57 +09:00
Randy Mackay 853d7ab573 Copter: remove setting of pos-con jerk 2018-03-16 13:50:57 +09:00
Leonard Hall f9acc8a666 Copter: guided removes xy mode in calls to pos-con
Also limit angle to hold altitude
2018-03-16 13:50:57 +09:00
Leonard Hall 9544b1763b Copter: replace smoothing gain with AC_AttitudeControl::set_input_tc 2018-03-16 13:50:57 +09:00
Peter Barker af56826107 Copter: follow mode fixups
add follow to FLTMODEx param descriptions
remove follow's set_velocity method
10hz logging of desired velocity in follow mode
follow mode uses pos error P gain
add send-debug-via-mavlink option
don't enter follow if follow lib is disabled
follow debug slowed to 1hz
disable follow on min-features builds
2018-03-05 15:08:08 +09:00
Andrew Tridgell 0ed75052f8 Copter: enable parameters inside mode objects
this adds FHLD_* parameters for FlowHold mode. It is a large patch as
it needs to disentagle the mode class to enable it to be used in
Parameters.h
2018-02-08 17:36:33 +11:00
Randy Mackay 8d6f8e4d9c Copter: move pos-control pids to pos-control library 2018-01-23 12:00:43 +09:00
Randy Mackay e85b1ac740 Copter: pass dt to avoidance calls 2018-01-16 12:13:48 +09:00
Peter Barker 114628afe4 Copter: use zero_throttle_and_relax_ac in stab, guided, acro and auto 2018-01-08 12:02:49 +00:00
Peter Barker 71ad1b5815 Copter: use zero_throttle_and_relax_ac function 2017-12-27 12:09:06 +00:00
Randy Mackay c3fbf2671c Copter: rename control_xx.cpp files to mode_xx.cpp 2017-12-12 10:39:26 +09:00