Commit Graph

74 Commits

Author SHA1 Message Date
Peter Barker
903b2e381b Rover: GCS can report simple/supersimple input modes 2019-03-19 14:39:14 +11:00
Randy Mackay
5286b6fab6 Rover: re-order auto mode implementations 2019-03-16 13:26:08 +09:00
Randy Mackay
28ac2c2600 Rover: rename guided limits start_time_ms 2019-03-15 21:18:46 +09:00
Randy Mackay
95d68b0cf5 Rover: reached_destination becomes const 2019-03-15 14:51:35 +09:00
Randy Mackay
3f8adb4e7d Rover: guided-within-auto target moved to structure
also guided's limit_breached made const
also guided limit check uses is_positive
2019-03-15 14:51:35 +09:00
Randy Mackay
89f0418c0f Rover: support do-guided-limits mission command 2019-03-15 14:51:35 +09:00
Randy Mackay
721c200bcc Rover: support guided-within-auto
also adds support for sending position targets to offboard controller which is assumed to return velocity commands
2019-03-15 14:51:35 +09:00
Ebin
0f5041e873 Rover: added acro mode to MIS_DONE_BEHAVE 2019-02-16 13:55:17 +09:00
TsuyoshiKawamura
1e033e616f Rover: Loiter in AUTO mode for boat 2019-01-10 20:42:39 +09:00
Peter Barker
ca0374a7af Rover: do not permit copying of a Mode 2019-01-03 13:35:33 +09:00
TsuyoshiKawamura
a9781686b1 Rover: Vehicle will stop with loiter in Guided mode for boat. 2018-12-20 20:13:15 +09:00
Peter Barker
29782c3d2e Rover: move AP_Mission object into ModeAuto class
This mirrors what we did for Copter
2018-12-13 13:44:46 +09:00
Randy Mackay
452382ff76 Rover: loiter provides bearing to target 2018-12-13 09:30:19 +09:00
Randy Mackay
6b5ff939f2 Rover: follow provides distance and bearing to target 2018-12-13 09:30:19 +09:00
Randy Mackay
b405286262 Rover: nav-controller-output message sourced from flight mode
future change will allow overriding these values so each mode can provide the best value
2018-12-13 09:30:19 +09:00
Peter Barker
86168cd180 Rover: add override keyword where required, fix bad method override 2018-11-08 11:30:12 +11:00
IamPete1
0dddc2eafe Rover: add sailboat tacking 2018-11-01 18:04:19 +09:00
Randy Mackay
efdd3946fc Rover: simple mode fixes 2018-09-11 16:43:17 +09:00
Ammarf
6ba5942ece Rover: add simple mode 2018-09-11 16:43:17 +09:00
Randy Mackay
cd64ce45ac Rover: fix calc_steering_to_heading rate_max handling
units mix up led to deg/s parameter value being applies as rad/s
2018-09-11 14:39:50 +09:00
Randy Mackay
03e0437c19 Rover: fix RTL when AP_RALLY disabled 2018-08-30 10:33:37 +09:00
Raouf
90fd64cf3a Rover: add support for rally points 2018-08-30 09:54:51 +09:00
Raouf
df3b6202f5 Rover: support DO_SET_REVERSE commands in guided, RTL, SmartRTL 2018-08-22 13:36:44 +09:00
Raouf
ea62c24cef Rover: Move set_reverse method to Mode class 2018-08-22 13:36:38 +09:00
Randy Mackay
84bda4e893 Rover: follow mode fixes and improvements
fix follow endless loop on enter
pass mavlink messages to AP_Follow
separate follow from guided
follow slows based on yaw error
check follow is enabled before entering follow mode
fix order in switch statement when converting from mode number to mode object
remove unused last_log_ms from follow mode
2018-07-18 15:11:09 +09:00
Ammarf
c0082271e6 Rover: implement Follow mode 2018-07-18 15:11:09 +09:00
Randy Mackay
8464e82812 Rover: set_desired_speed range checks speed 2018-06-11 09:10:35 +09:00
Peter Barker
36705af8ff Rover: create an enumeration to hold vehicle mode constants
This gives us type-safety on the mode numbers.  This is advantageous as
some of these symbols exist with different values elsewhere in the code.
2018-06-08 08:41:16 +09:00
Ammarf
26c25daa36 Rover: add support for lateral control input 2018-05-31 13:48:17 +09:00
Peter Barker
12853f8912 Rover: correct compilation for transitive include fail 2018-05-29 14:42:02 +10:00
Ammarf
2d64a47f90 Rover: add pivot_turn_rate to g2 2018-05-21 09:48:43 +09:00
Randy Mackay
957458ca56 Rover: add get_pilot_desired_steering_and_speed
Also fix reversed steering response where throttle or acceleration limiting leads to throttle output being in the opposite direction from pilot's throttle input
2018-05-10 08:02:13 +09:00
Randy Mackay
6b6c0f04b6 Rover: get_pilot_desired_steering_and_throttle returns steering assuming positive is always clockwise 2018-05-10 08:02:13 +09:00
Randy Mackay
c6638f66de Rover: Loiter mode for boats 2018-05-06 16:58:00 +09:00
Randy Mackay
29e8866ea9 Rover: move avoidance into calc_throttle
also enable avoidance for steering and guided modes
2018-04-24 12:24:53 +09:00
Daniel Widmann
572d9ba43b Rover: Allow switching to ACRO mode for skid steer rovers without GPS 2018-04-13 09:12:03 +09:00
Randy Mackay
343d119726 Rover: wp nav uses stopping point or prev wp for origin 2018-03-14 12:40:04 +09:00
Peter Barker
89c830e949 Rover: make SmartRTL mode decide whether to save position or not
This changes things to work like the Copter equivalent
2018-02-12 15:39:26 +09:00
Randy Mackay
9cba1e2907 Rover: gps check replaced by requires-position, requires-velocity
requires_gps is replaced by requires_position and requires_velocity
enter_gps_checks method is removed and enter method directly checks ekf flags and ekf origin
2018-01-23 11:27:56 +09:00
Randy Mackay
e2824be250 Rover: add const and comments to calc_speed_max 2018-01-12 08:15:34 +09:00
Randy Mackay
5cd500847b Rover: rename auto_throttle to allows_arming_from_transmitter
This method is only used to determine whether we can arm from the transmitter so better to make its purpose more clear
Also minor comment fix to is_autopilot_mode method
2018-01-12 08:15:34 +09:00
Randy Mackay
5167ec7708 Rover: send PID to GCS regardless of mode
Also add some comments
2018-01-12 08:15:34 +09:00
Randy Mackay
916fe80000 Rover: remove mode class's desired-lat-accel
This was a duplicate of the value held in the attitude controller
2018-01-05 09:27:53 +09:00
Randy Mackay
49493fe6a2 Rover: add calc_steering_to_heading
removes some duplicate code in Guided and Auto
2018-01-05 09:27:53 +09:00
Randy Mackay
dc283e9c26 Rover: re-order calc_steering declarations to match .cpp file 2018-01-04 14:07:55 +09:00
Randy Mackay
4958298a75 Rover: fix auto mode distance_to_destination 2017-12-09 12:52:35 +09:00
Randy Mackay
b778546eda Rover: rename mode lateral acceleration and make private 2017-12-09 12:18:49 +09:00
Randy Mackay
8eb991b610 Rover: boats say active at destination in auto
previously the user would use the LOITER_UNLIMITED or LOITER_TIME mission commands to specify that the vehicle should remain active at the destination.  This was cumbersome and not the best way to specify this behaviour because these two commands are valid for regular rovers that should not try to remain active at the destination.
2017-12-08 08:48:05 +09:00
Randy Mackay
57067fb8bc Rover: add WP_SPEED and RTL_SPEED
This separates the default/maximum speed used in Auto, Guided, RTL and SmartRTL from the CRUISE_SPEED which is used as the base for the speed-to-throttle controller (along with CRUISE_THROTTLE)
2017-12-07 07:29:10 +09:00
Randy Mackay
22ef276484 Rover: add const to mode::speed_error 2017-12-07 07:29:10 +09:00