Commit Graph

6776 Commits

Author SHA1 Message Date
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
Randy Mackay 204c839ae0 Copter: mode_smart_rtl uses peek_point 2021-04-03 12:07:59 +09:00
Peter Barker ce9800e597 ArduCopter: return MAV_RESULT_FAILED from do_aux_function if invalid function 2021-03-31 11:36:09 +11:00
Peter Barker 5edfed0083 Copter: factor out a mode-change-failed method 2021-03-30 19:58:05 +11:00
Peter Barker 1e0f106ed4 Copter: make AutoTune object private state to ModeAutoTune 2021-03-30 11:23:10 +11: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
Randy Mackay 8a5b5897f0 Copter: remove unused ADSB_ENABLED from Config.h 2021-03-26 16:22:46 +09:00
Randy Mackay 91fa40aea6 Copter: HAL_PROXIMITY_ENABLED replaces PROXIMITY_ENABLED 2021-03-26 16:22:46 +09:00
Peter Barker 45d484c0ba ArduCopter: remove Log_Write_Performance which is not called anywhere 2021-03-26 16:35:08 +11:00
Peter Barker 3af006019b Copter: mark ModeSystemID as has_manual_throttle, no-arm and no-gps
This has implications for many things, like smoothing transition to auto
modes, and for arming
2021-03-26 10:26:34 +09:00
murata 31b0682246 Copter: Move the variable definition 2021-03-25 08:55:17 +09:00
Peter Barker a274697776 Copter: move LAND state variables to be members rather than static
Also rename one of them as we may be using (e.g.) OF to control position rather
than GPS.
2021-03-25 09:39:29 +11:00
Peter Barker dc793e916f Copter: move implementation of get_pilot_desired_yaw_rate into mode.cpp 2021-03-24 20:46:08 +11:00
Emre Saldiran d5715292a3 Copter: implement set_target_posvel_NED method for use in scripting 2021-03-24 08:55:48 +09:00
murata 0fe65fd6d3 Copter: Added new settings for flight mode channel 2021-03-24 08:50:59 +09:00
Tatsuya Yamaguchi 069b7142b7 Copter: add allows_flip function to Mode class 2021-03-23 22:48:20 +11:00
Tatsuya Yamaguchi f4eed612d7 Copter: add allows_autotune function to Mode class 2021-03-23 22:48:20 +11:00
Tatsuya Yamaguchi 2b89ac625f Copter: add allows_save_trim function to Mode class 2021-03-23 22:48:20 +11:00
Tatsuya Yamaguchi 0cce5699b2 Copter: change from control_mode to flightmode 2021-03-23 22:48:20 +11:00
Tatsuya Yamaguchi 1dccc0ceb3 Copter: add mode_number function to Mode class 2021-03-23 22:48:20 +11:00
Emre Saldiran 543c2bf55b Copter: change description of system id delay variable (NFC) 2021-03-23 20:09:38 +09:00
Randy Mackay 2d9c6867f4 Copter: accept MISSION_START commands when vehicle is disarmed 2021-03-23 10:12:08 +09:00
Randy Mackay 32fb3cb929 Copter: remove unused update_navigation and run_autopilot 2021-03-23 10:12:08 +09:00
Randy Mackay 1c350514ca Copter: auto mode starts or updates mission from run method 2021-03-23 10:12:08 +09:00
Rishabh 618282e996 Copter: Remove avoidance completly from poshold 2021-03-22 14:04:42 +09:00
Tatsuya Yamaguchi 941c5f8179 Copter: add EKF failsafe notify tones 2021-03-17 20:29:32 +09:00
Randy Mackay ef33ed5e36 Copter: landing gear enabled on all boards
Co-authored-by: Tatsuya Yamaguchi <susumu-336@hotmail.co.jp>
2021-03-17 10:41:11 +09:00
Tatsuya Yamaguchi ed8384b45a Copter: add option to disable LANDING_GEAR 2021-03-17 10:41:11 +09:00
Tatsuya Yamaguchi 52cd042d69 Copter: update filtered range finder altitude to AC_WPNav 2021-03-17 09:30:38 +09:00
Ryan Birmingham c2cdb00f85 Copter: constrain throttle before setting deadband 2021-03-17 09:10:08 +09:00
Randy Mackay e0a8baccfd Copter: pre-arm check of EKF pos and vel variances 2021-03-16 13:02:46 +09:00
Randy Mackay 49486b7cea Copter: ekf failsafe may trigger while disarmed but takes no action 2021-03-16 13:02:46 +09:00
Randy Mackay 5babe93201 Copter: ekf failsafe only triggers if it has ever passed 2021-03-16 13:02:46 +09:00
Randy Mackay be29b23195 Copter: do-mount-control ignored if no mount
Co-authored-by: srirajshukla <srirajshukla@gmail.com>
Co-authored-by: Yash Vadi <yvadi9274@yahoo.com>
2021-03-16 10:07:16 +09:00
Peter Barker 211a7f85b5 ArduCopter: remove separate calls to get delta-times for vel and ang 2021-03-13 11:29:29 +11:00
Siddharth Purohit da7d34224d Copter: do common gps arming checks first before moving on 2021-03-12 16:32:36 +09:00
Siddharth Purohit 0c42c56c36 Copter: move underscore one layer down for GPS 2021-03-12 16:32:36 +09:00
Rishabh e727d08266 Copter: Provide downward facing rangefinder readings to proximity lib 2021-03-09 11:02:26 +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 f14e1c2799 ArduCopter: Ensure fence has opportunity to auto disable for landing 2021-03-05 14:52:46 +11:00
James O'Shannessy 8ab1cf869d ArduCopter: Remove fence_checks in AP_Arming because they are common across all vehicles now 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 2a9affe517 ArduCopter: Remove unused fence floor enable function 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
Dr.-Ing. Amilcar do Carmo Lucas 92122e5133 Copter: automatically enable and disable floor fence on automated takeoff and landing 2021-03-05 14:52:46 +11:00
Tom Pittenger 38fd43ac2c Copter: change SRx_ docs value 1 50 2021-03-03 18:17:22 +11:00
Mathias Bos b3b7f2d3d2 Copter: Remove yaw rate wrapping in guided mode. 2021-03-03 08:09:08 +09:00
Randy Mackay 64289d436a Copter: reduce ANGLE_MAX default to 30deg 2021-03-03 08:03:39 +09:00
murata 17f285b68f Copter: Add Smart RTL or LAND to the fence action 2021-03-03 07:59:03 +09:00
Iampete1 2e9c11fbdf Copter: add FLIGHT_OPTIONS param and options bits to disable thrust loss and yaw imbalance warnings 2021-03-02 09:35:06 +09:00
Iampete1 447af29ef1 Copter: add yaw imbalance check 2021-03-02 09:35:06 +09:00
Hwurzburg 7d7a7a365d Copter: correct metadata for do_change_speed cmd 2021-02-24 16:06:41 +09:00
Dr.-Ing. Amilcar do Carmo Lucas bbb6bbedf4 Copter: 4.0.7 release notes 2021-02-23 08:03:21 +11:00
Rishabh fdd39ca3a8 Copter: Check for height before turning on proximity simple avoidance 2021-02-16 20:08:00 +09:00
Dr.-Ing. Amilcar do Carmo Lucas 2302f08f75 Copter: run the "point yaw to ROI" controller at full rate (400Hz) instead of 1/4 of full rate (100Hz)
- This should improve pointing at ROI and replaces #11172
 - Remove unused member variable as per review suggestion
 - declare Mode::AutoYaw::roi_yaw() as const
2021-02-16 09:30:21 +09:00
Randy Mackay 97c1445bce Copter: ensure send_position_target_global_int alt always absolute 2021-02-15 17:39:07 +11:00
Peter Barker ea0efd3a1a Copter: correct documentation of use of DO_CHANGE_SPEED parameter 2021-02-15 15:44:17 +11:00
Andy Piper 85a8536243 Copter: All men dream, but not equally.
Those who dream by night in the dusty recesses of their minds, wake in the day to find that it was vanity:
but the dreamers of the day are dangerous men, for they may act on their dreams with open eyes,
to make them possible.
2021-02-12 08:35:35 +09:00
Gone4Dirt 1e1be590e2 Copter: Add ignore pilot yaw option bit 2021-02-09 19:39:17 +09:00
Iampete1 a572820dbc Copter: system: use config_error loop don't panic 2021-02-09 12:43:54 +09:00
Iampete1 d6fa4d97e3 Copter: add 6DoF support 2021-02-09 12:43:54 +09:00
Patrick José Pereira ffe356d597 ArduCopter: Simplify boolean expression
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-09 11:04:18 +09:00
Mark Whitehorn f405454aba Copter: add nullptr checks for get_frame_string
fix rebase errors
2021-02-09 12:43:53 +11:00
Mark Whitehorn cb687a6fff Copter: move get_frame_string to Motors class 2021-02-09 12:43:53 +11:00
Arsh 3609a1b5fd Copter:PreArm Battery low voltage failsafe message repeated two times fix 2021-02-08 09:12:51 +09:00
Andrew Tridgell a70f9d54c0 Copter: update release notes for 4.0.7rc1 2021-02-06 19:16:10 +11:00
Patrick José Pereira ad82e01270 ArduCopter: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Peter Barker adc0514cf6 ArduCopter: move control_mode_reason up to AP_Vehicle 2021-02-03 18:24:52 +11:00
Peter Barker 7bbc699165 Copter: make terrain failure strings human-readable 2021-02-03 15:08:29 +11:00
Rishabh bd37eab3af Copter: Support 3D Simple Avoidance 2021-02-01 14:34:13 +09:00
Iampete1 643966fb3e Copter: add SCRIPTING_MATRIX frame class 2021-01-26 11:07:36 +09:00
Iampete1 0a23084d43 Copter: move get_frame_mav_type to motors 2021-01-26 11:07:36 +09:00
Randy Mackay dc515b87df Copter: ahrs only checks position in modes that require it 2021-01-26 10:46:49 +11:00
Bill Geyer d19dca37d5 Copter: 4.0.6 release notes 2021-01-25 18:39:39 -05:00
Peter Barker 9e7a0e6267 Copter: use iterators in parameter conversion 2021-01-22 11:25:32 +09:00
Leonard Hall 5efe94a771 Copter: use AP_Math control functions 2021-01-20 18:19:40 +11:00
Randy Mackay 0b83d45163 Copter: verify land and payload place record flow-of-control internal error 2021-01-20 09:12:02 +09:00
Bill Geyer 9791e52073 Copter: 4.0.6-rc2 release notes 2021-01-16 16:41:53 -05:00
Tatsuya Yamaguchi b7f5aa7eab Copter: fix compilation when rtl option is disabled 2021-01-13 17:19:19 +09:00
Tatsuya Yamaguchi 621fa857b7 Copter: disable RTL option 2021-01-13 17:19:19 +09:00
Peter Barker 65adf5b4a9 ArduCopter: add do_disarm_checks boolean to disarm call
this creates symmetry between arming and disarming, at least as far as
the top-level arm() and disarm() calls are concerned.
2021-01-12 08:48:44 +09:00
Josh Henderson 9daa3bbdaa ArudCopter: privatize AHRS logging 2021-01-12 10:13:22 +11:00
Pierre Kancir f53892a1fa Copter: don't report initial mode switch as failsafe mode change 2021-01-09 08:28:29 +09:00
Tatsuya Yamaguchi eab913646e Copter: fix ignore pilot yaw option for guided 2021-01-07 20:40:34 +09:00
Tatsuya Yamaguchi b6b39673d4 Copter: remove PHLD_BRAKE_* params when PosHold is disabled 2021-01-07 11:41:08 +09:00
murata 5ca7e03eeb Copter: tidy handling of DO_FLIGHT_TERMINATION 2021-01-05 16:48:15 +11:00
murata 44a622ea7f Copter: Set the gravitational acceleration value to the defined value 2021-01-05 09:11:14 +09:00
Tom Pittenger b80f003c98 Copter: extend Stream rates param count to match MAVLINK_COMM_NUM_BUFFER 2020-12-29 07:52:09 -07:00
bnsgeyer 230ca049c1 Copter: Update 4.0.6-rc1 release notes 2020-12-23 15:02:54 -05:00
bnsgeyer c75848435e Copter: fix heli land detector and incoporate reset_I_smoothly 2020-12-21 23:33:48 -05:00
bnsgeyer a845623dfb Copter: Tradheli - make new integrator scheme selectable 2020-12-21 23:33:48 -05:00
bnsgeyer 42b4fd6e0a Copter: change heli integrator management and add hover coll learning 2020-12-21 23:33:48 -05:00
Arsh 3c83eecf78 Copter: AP_Arming: Added check for EKF origin altitude 2020-12-21 20:26:30 +09:00
Pierre Kancir 1e5d9fb299 Copter: set initial mode on startup 2020-12-16 17:27:07 +09:00
Pierre Kancir be2e243916 Copter: add initial mode parameter 2020-12-16 17:27:07 +09:00
Dr.-Ing. Amilcar do Carmo Lucas ffa057d61e Copter: prepare 4.0.6-rc1 release notes 2020-12-15 11:21:00 +09:00
Andrew Tridgell abd3ae8f3b Copter: added mavlink reporting of airspeed and wind
when we have EKF3 estimation available
2020-12-11 15:21:41 +11:00
yaapu 497dbd1414 ArduCopter: added virtual getters for waypopint info 2020-12-10 12:39:44 +11:00
Randy Mackay dc3ded234b Copter: FS_GCS_ENABLE param desc replaces deprecated with removed
Also modified FS_THR_ENABLE param desc replaces deprecated with removed
2020-12-09 19:30:48 +09:00
Randy Mackay 98a41ab005 Copter: FS_OPTIONS defaults to continue pilot controlled modes on GCS failsafe 2020-12-09 19:30:48 +09:00
Randy Mackay e1aaea0834 Copter: pre-arm check of FS_GCS_ENABLE=2 2020-12-09 19:30:48 +09:00
Andrew Tridgell cd2f2f96eb rename barometer parameters to BARO prefix 2020-12-08 13:22:17 +11:00
Peter Barker f4cbc50ba4 Copter: use an enumeration for pre-throw motor state 2020-12-08 12:04:14 +11:00
Peter Barker bd0dff1b0e Copter: use enum-class and AP_Enum for ThrowType 2020-12-08 12:04:14 +11:00
murata dcda0c48ca Copter: Support for decacopters 2020-12-08 11:59:10 +11:00
Andrew Tridgell 0329a46b4a ArduCopter: moved init_safety to AP_Vehicle 2020-12-08 11:14:24 +11:00
Peter Barker dac5aca40e ArduCopter: move logging of LandingGear event into LandingGear
Less code and Plane will get the event logged too.
2020-12-05 20:45:20 +11:00
Randy Mackay b8c58bd900 Copter: payload place fixups 2020-12-05 08:35:03 +09:00
Hwurzburg e015956b6e Copter: move RETRACT_MOUNT option to common for all vehicles 2020-11-24 20:22:02 +11:00
Brent McLaughlin 04f817020f Copter: use glitch-protected range from rangefinder for precision landing
use glitch protected result from rangefinder so precision landing avoids aggressive maneuvers due to large range spikes
2020-11-24 13:00:41 +09:00
Gone4Dirt 434af4a4d4 Copter: Move AP_Generator to AP_Vehicle 2020-11-24 12:54:52 +11:00
Michael du Breuil f9b4e81702 Copter: Add ignore pilot yaw to guided, auto and RTL options 2020-11-19 07:22:54 +09:00
Michael du Breuil 5e2093b105 Copter: Allow the user to specify the GCS failsafe timeout 2020-11-17 09:24:07 +09:00
Andy Piper 304d05f918 Copter: allow OSD for TX-only screens 2020-11-11 18:13:11 +11:00
Randy Mackay 0f234583d6 Copter: poshold clears wind est when disarmed or landed 2020-11-10 08:56:36 +09:00
Randy Mackay ed7580e83c Copter: takeoff relaxes wpnav and pos control during spool up 2020-11-06 08:24:03 +09:00
Hwurzburg 83e1fe94d1 Copter: fix metadata in FS_GCS_ENABLE param 2020-11-06 08:23:31 +09:00
murata f18585c584 Copter: Matches the minimum value of failsafe_throttle_value to the operation 2020-11-03 10:42:29 +09:00
Paul Riseborough 379506b718 ArduCopter: Don't request EKF yaw reset unless innovations are large
This prevents unwanted resets if GPS fails.
2020-10-30 14:45:40 +09:00
Rishabh 6e19eac9aa ArduCopter: remove nomination of system ids 2020-10-27 17:15:04 +11:00
Randy Mackay 50d9dcce9b Copter: 4.0.5 release notes 2020-10-27 09:13:43 +09:00
Peter Barker 225de23950 Copter: cope with race conditioning popping points on SmartRTL return
There is a race with the cleanup thread.  While thin, it only has to
happen once.  After this patch the race would have to happen... a lot.

Co-authored-by: jasclarke308 <jasclarke308@gmail.com>
2020-10-24 08:59:26 +09:00
Randy Mackay 248d80eb37 Copter: integrate ahrs::get_variances change
offset is no longer returned
2020-10-21 08:58:45 +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 7a90ed4bb5 Copter: auto allows arming casts param to uint32_t 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 c1c9d87efe Copter: move auto allows_arming in mode_auto.cpp
this should be a non-functional change
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 3ebfe502d3 Copter: 4.0.5-rc2 release notes 2020-10-08 09:15:56 +09:00
Randy Mackay 49e1e8cc16 Copter: integrate ahrs.pre_arm_check 2020-10-07 11:53:07 +11:00
Randy Mackay eeaf135cca AP_Arming: integrate ahrs.pre_arm_check 2020-10-07 11:53:07 +11:00
Randy Mackay 1858fbe951 AP_Arming: correct proximity pre-arm check msg 2020-10-06 20:52:29 +11:00
Randy Mackay 5d31a443b6 Copter: update 4.0.5-rc1 release notes 2020-10-06 16:43:13 +09:00
Randy Mackay 8753d3cf8d Copter: 4.0.5-rc1 release notes 2020-10-06 16:43:10 +09:00
Randy Mackay e2d41a3e04 Copter: integrate parachute check_sink_rate
also move set_is_flying into check parachute to increase it's update rate
2020-10-06 16:14:59 +11:00
Andrew Tridgell dbf6f6f4b1 Copter: fixed parachute checks for sink rate
ensure is_flying is set, setup sink rate at the right position, force
disarm if chute releases
2020-10-06 16:14:59 +11:00
Peter Barker c86ee44264 Copter: correct compilation when AFS enabled 2020-10-06 11:25:09 +11:00
Peter Barker 4136397810 Copter: correct compilation when CIRCLE mode is disabled 2020-10-06 11:25:09 +11:00
Peter Barker af53f9ce64 Copter: correct compilation when AUTO/RTL are disabled 2020-10-06 11:25:09 +11:00
Peter Barker 56790625b8 Copter: stop passing unused inav into autorotate library 2020-10-01 21:13:20 +10:00
Randy Mackay 8b3cc0b255 Copter: fixup auto options 2020-10-01 08:48:06 +09:00
Michael du Breuil 50dfe3f197 Copter: Add AUTO_OPTIONS and support arming and throttle bypass
This allows you to arm the copter without any extra GCS commands while
in auto, and can be done from both the GCS, or the RC Tx. This is useful
for creating a simpler workflow.

This also allows you to set the auto_armed flag internally, which
bypasses the need to raise the throttle stick for the copter to start a
takeoff.

This exposed a problem where we would start running the controllers
before the EKF was at all initialized, if you switched into auto to
early. This now has a check that prevents us from running the mission
state machine until after the origin has been set. This was a suggestion
from @rmackay9.

When combined these options allow you to have the vehicle on the ground,
disarmed in auto with a takeoff waypoint loaded, then just arm the
aircraft and watch it takeoff. This is a feature we've had on quadplanes
for quite awhile now, and it has proven to be very nice for operators.
2020-10-01 08:46:29 +09:00
Peter Barker b03b3041e0 Copter: remove stale MAGNETOMETER config option from config files
This isn't used in the code any more
2020-09-29 11:17:08 +10:00
Andy Piper e22f7ed353 Copter: remove duplicate include 2020-09-24 08:22:16 -07:00
Patrick José Pereira ec153f59a2 ArduCopter: Use new AP_FWVersionDefine header
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2020-09-23 20:58:35 +10:00